Class: Mailersend::Recipients

Inherits:
Object
  • Object
show all
Defined in:
lib/mailersend/recipients/recipients.rb

Overview

Recipients endpoint from MailerSend API.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(client = Mailersend::Client.new) ⇒ Recipients

Returns a new instance of Recipients.



11
12
13
14
15
16
# File 'lib/mailersend/recipients/recipients.rb', line 11

def initialize(client = Mailersend::Client.new)
  @client = client
  @page = page
  @limit = limit
  @recipient_id = recipient_id
end

Instance Attribute Details

#clientObject

Returns the value of attribute client.



6
7
8
# File 'lib/mailersend/recipients/recipients.rb', line 6

def client
  @client
end

#limitObject

Returns the value of attribute limit.



6
7
8
# File 'lib/mailersend/recipients/recipients.rb', line 6

def limit
  @limit
end

#pageObject

Returns the value of attribute page.



6
7
8
# File 'lib/mailersend/recipients/recipients.rb', line 6

def page
  @page
end

#recipient_idObject

Returns the value of attribute recipient_id.



6
7
8
# File 'lib/mailersend/recipients/recipients.rb', line 6

def recipient_id
  @recipient_id
end

Instance Method Details

#delete(recipient_id:) ⇒ Object



32
33
34
# File 'lib/mailersend/recipients/recipients.rb', line 32

def delete(recipient_id:)
  client.http.delete("#{MAILERSEND_API_URL}/recipients/#{recipient_id}")
end

#list(page: nil, limit: nil) ⇒ Object



18
19
20
21
22
23
24
25
26
# File 'lib/mailersend/recipients/recipients.rb', line 18

def list(page: nil, limit: nil)
  hash = {
    'page' => page,
    'limit' => limit
  }

  client.http.get(URI::HTTPS.build(host: MAILERSEND_API_BASE_HOST, path: '/v1/recipients',
                                   query: URI.encode_www_form(hash)))
end

#single(recipient_id:) ⇒ Object



28
29
30
# File 'lib/mailersend/recipients/recipients.rb', line 28

def single(recipient_id:)
  client.http.get("#{MAILERSEND_API_URL}/recipients/#{recipient_id}")
end