Class: LoopsSdk::Contacts
Class Method Summary collapse
- .check_suppression(email: nil, user_id: nil) ⇒ Object
- .create(email:, properties: {}, mailing_lists: {}) ⇒ Object
- .delete(email: nil, user_id: nil) ⇒ Object
- .find(email: nil, user_id: nil) ⇒ Object
- .remove_suppression(email: nil, user_id: nil) ⇒ Object
- .update(email: nil, user_id: nil, properties: {}, mailing_lists: {}) ⇒ Object
Class Method Details
.check_suppression(email: nil, user_id: nil) ⇒ Object
41 42 43 44 45 46 47 |
# File 'lib/loops_sdk/contacts.rb', line 41 def check_suppression(email: nil, user_id: nil) raise ArgumentError, "Only one parameter is permitted." if email && user_id raise ArgumentError, "You must provide an email or user_id value." if email.nil? && user_id.nil? params = email ? { email: email } : { userId: user_id } make_request(method: :get, path: "v1/contacts/suppression", params: params) end |
.create(email:, properties: {}, mailing_lists: {}) ⇒ Object
6 7 8 9 10 11 12 |
# File 'lib/loops_sdk/contacts.rb', line 6 def create(email:, properties: {}, mailing_lists: {}) contact_data = { email: email, mailingLists: mailing_lists }.merge(properties) make_request(method: :post, path: "v1/contacts/create", body: contact_data) end |
.delete(email: nil, user_id: nil) ⇒ Object
33 34 35 36 37 38 39 |
# File 'lib/loops_sdk/contacts.rb', line 33 def delete(email: nil, user_id: nil) raise ArgumentError, "Only one parameter is permitted." if email && user_id raise ArgumentError, "You must provide an email or user_id value." if email.nil? && user_id.nil? body = email ? { email: email } : { userId: user_id } make_request(method: :post, path: "v1/contacts/delete", body: body) end |
.find(email: nil, user_id: nil) ⇒ Object
25 26 27 28 29 30 31 |
# File 'lib/loops_sdk/contacts.rb', line 25 def find(email: nil, user_id: nil) raise ArgumentError, "Only one parameter is permitted." if email && user_id raise ArgumentError, "You must provide an email or user_id value." if email.nil? && user_id.nil? params = email ? { email: email } : { userId: user_id } make_request(method: :get, path: "v1/contacts/find", params: params) end |
.remove_suppression(email: nil, user_id: nil) ⇒ Object
49 50 51 52 53 54 55 |
# File 'lib/loops_sdk/contacts.rb', line 49 def remove_suppression(email: nil, user_id: nil) raise ArgumentError, "Only one parameter is permitted." if email && user_id raise ArgumentError, "You must provide an email or user_id value." if email.nil? && user_id.nil? params = email ? { email: email } : { userId: user_id } make_request(method: :delete, path: "v1/contacts/suppression", params: params) end |
.update(email: nil, user_id: nil, properties: {}, mailing_lists: {}) ⇒ Object
14 15 16 17 18 19 20 21 22 23 |
# File 'lib/loops_sdk/contacts.rb', line 14 def update(email: nil, user_id: nil, properties: {}, mailing_lists: {}) raise ArgumentError, "You must provide an email or user_id value." if email.nil? && user_id.nil? contact_data = { email: email, userId: user_id, mailingLists: mailing_lists }.merge(properties) make_request(method: :put, path: "v1/contacts/update", body: contact_data) end |