class Mailersend::Domains

Domains endpoint from MailerSend API

Attributes

client[RW]
domain_id[RW]
limit[RW]
page[RW]
verified[RW]

Public Class Methods

new(client = Mailersend::Client.new) click to toggle source
# File lib/mailersend/domains/domains.rb, line 12
def initialize(client = Mailersend::Client.new)
  @client = client
  @domain_id = domain_id
  @page = page
  @limit = limit
  @verified = verified
end

Public Instance Methods

delete(domain_id:) click to toggle source
# File lib/mailersend/domains/domains.rb, line 42
def delete(domain_id:)
  response = client.http.delete(URI::HTTPS.build(host: API_BASE_HOST, path: "/v1/domains/#{domain_id}"))
  puts response
end
list(page: nil, limit: nil, verified: nil) click to toggle source
# File lib/mailersend/domains/domains.rb, line 20
def list(page: nil, limit: nil, verified: nil)
  hash = {
    'page' => page,
    'limit' => limit,
    'verified' => verified
  }
  response = client.http.get(URI::HTTPS.build(host: API_BASE_HOST, path: '/v1/domains',
                                              query: URI.encode_www_form(hash.compact)))
  puts response
end
recipients(domain_id:) click to toggle source
# File lib/mailersend/domains/domains.rb, line 47
def recipients(domain_id:)
  hash = {
    'page' => page,
    'limit' => limit
  }
  response = client.http.get(URI::HTTPS.build(host: API_BASE_HOST, path: "/v1/domains/#{domain_id}/recipients",
                                              query: URI.encode_www_form(hash.compact)))
  puts response
end
settings(domain_id:, send_paused: nil, track_clicks: nil, track_opens: nil, track_unsubscribe: nil, track_unsubscribe_html: nil, track_unsubscribe_plain: nil, track_content: nil, custom_tracking_enabled: nil, custom_tracking_subdomain: nil) click to toggle source
# File lib/mailersend/domains/domains.rb, line 57
def settings(domain_id:, send_paused: nil, track_clicks: nil, track_opens: nil, track_unsubscribe: nil, track_unsubscribe_html: nil, track_unsubscribe_plain: nil, track_content: nil, custom_tracking_enabled: nil, custom_tracking_subdomain: nil)
  hash = {
    'send_paused' => send_paused,
    'track_clicks' => track_clicks,
    'track_opens' => track_opens,
    'track_unsubscribe' => track_unsubscribe,
    'track_unsubscribe_html' => track_unsubscribe_html,
    'track_unsubscribe_plain' => track_unsubscribe_plain,
    'track_content' => track_content,
    'custom_tracking_enabled' => custom_tracking_enabled,
    'custom_tracking_subdomain' => custom_tracking_subdomain
  }
  response = client.http.put("#{API_URL}/domains/#{domain_id}/settings", json: hash.compact)
  puts response
end
single(domain_id:, page: nil, limit: nil, verified: nil) click to toggle source
# File lib/mailersend/domains/domains.rb, line 31
def single(domain_id:, page: nil, limit: nil, verified: nil)
  hash = {
    'page' => page,
    'limit' => limit,
    'verified' => verified
  }
  response = client.http.get(URI::HTTPS.build(host: API_BASE_HOST, path: "/v1/domains/#{domain_id}",
                                              query: URI.encode_www_form(hash.compact)))
  puts response
end