Module: Emma::API::Members
- Included in:
- Client
- Defined in:
- lib/emma/api/members.rb
Instance Method Summary collapse
-
#add_member(params = {}) ⇒ Object
Adds or updates a single audience member.
-
#add_member_signup(params = {}) ⇒ Object
Adds member and triggers the opt-out workflow.
-
#add_member_to_groups(id, params) ⇒ Object
Add a single member to one or more groups.
-
#add_members(params = {}) ⇒ Object
Add new members or update existing members in bulk.
-
#change_members_status(params = {}) ⇒ Object
Change the status for an array of members.
-
#copy_members_to_group(group_id, params = {}) ⇒ Object
Copy all account members of one or more statuses into a group.
-
#delete_import ⇒ Object
Update an import record to be marked as ‘deleted’.
-
#get_mailing_history_for_member(id) ⇒ Object
Get the entire mailing history for a member.
-
#get_member_by_email(email, params = {}) ⇒ Object
Get detailed information on a particular member, including all custom fields, by email address instead of ID.
-
#get_member_by_id(id, params = {}) ⇒ Object
Get detailed information on a particular member, including all custom fields.
-
#get_members_groups(id) ⇒ Object
Get the groups to which a member belongs.
-
#get_optout_member(id) ⇒ Object
If a member has been opted out, returns the details of their optout, specifically date and mailing_id.
-
#import_stats(import_id) ⇒ Object
Get information and statistics about this import.
-
#imported_members(import_id) ⇒ Object
Get a list of members affected by this import.
-
#my_imports ⇒ Object
Get information about all imports for this account.
-
#my_members(params = {}) ⇒ Object
Get a basic listing of all members in an account.
-
#optout(email) ⇒ Object
Update a member’s status to optout keyed on email address instead of an ID.
-
#remove_all_members ⇒ Object
Delete all members.
-
#remove_member(id) ⇒ Object
Delete the specified member.
-
#remove_member_from_all_groups(id) ⇒ Object
Remove the specified member from all groups.
-
#remove_member_from_groups(id, params) ⇒ Object
Remove a single member from one or more groups.
-
#remove_members(params = {}) ⇒ Object
Delete an array of members.
-
#remove_multiple_members_from_groups(params = {}) ⇒ Object
Remove multiple members from groups.
-
#update_group_members_status(status_from, status_to, group_id = nil) ⇒ Object
Update the status for a group of members, based on their current status.
-
#update_member(id, params = {}) ⇒ Object
Update a single member’s information.
Instance Method Details
#add_member(params = {}) ⇒ Object
Adds or updates a single audience member. If you are performing actions on bulk members please use the add_members() call above.
37 38 39 |
# File 'lib/emma/api/members.rb', line 37 def add_member(params = {}) post("/members/add", params) end |
#add_member_signup(params = {}) ⇒ Object
Adds member and triggers the opt-out workflow. Use when you want to send a confirmation email.
42 43 44 |
# File 'lib/emma/api/members.rb', line 42 def add_member_signup(params = {}) post("/members/signup", params) end |
#add_member_to_groups(id, params) ⇒ Object
Add a single member to one or more groups.
72 73 74 |
# File 'lib/emma/api/members.rb', line 72 def add_member_to_groups(id, params) put("/members/#{id}/groups", params) end |
#add_members(params = {}) ⇒ Object
Add new members or update existing members in bulk. If you are doing actions for a single member please see the add_member() call below.
32 33 34 |
# File 'lib/emma/api/members.rb', line 32 def add_members(params = {}) post("/members", params) end |
#change_members_status(params = {}) ⇒ Object
Change the status for an array of members.
52 53 54 |
# File 'lib/emma/api/members.rb', line 52 def change_members_status(params = {}) put("/members/status", params) end |
#copy_members_to_group(group_id, params = {}) ⇒ Object
Copy all account members of one or more statuses into a group.
122 123 124 |
# File 'lib/emma/api/members.rb', line 122 def copy_members_to_group(group_id, params = {}) put("/members/#{group_id}/copy", params) end |
#delete_import ⇒ Object
Update an import record to be marked as ‘deleted’.
117 118 119 |
# File 'lib/emma/api/members.rb', line 117 def delete_import delete("/members/imports/delete") end |
#get_mailing_history_for_member(id) ⇒ Object
Get the entire mailing history for a member.
97 98 99 |
# File 'lib/emma/api/members.rb', line 97 def get_mailing_history_for_member(id) get("/members/#{id}/mailings") end |
#get_member_by_email(email, params = {}) ⇒ Object
Get detailed information on a particular member, including all custom fields, by email address instead of ID.
17 18 19 |
# File 'lib/emma/api/members.rb', line 17 def get_member_by_email(email, params = {}) get("/members/email/#{email}", params) end |
#get_member_by_id(id, params = {}) ⇒ Object
Get detailed information on a particular member, including all custom fields.
7 8 9 |
# File 'lib/emma/api/members.rb', line 7 def get_member_by_id(id, params = {}) get("/members/#{id}", params) end |
#get_members_groups(id) ⇒ Object
Get the groups to which a member belongs.
67 68 69 |
# File 'lib/emma/api/members.rb', line 67 def get_members_groups(id) get("/members/#{id}/groups") end |
#get_optout_member(id) ⇒ Object
If a member has been opted out, returns the details of their optout, specifically date and mailing_id.
22 23 24 |
# File 'lib/emma/api/members.rb', line 22 def get_optout_member(id) get("/members/#{id}/optout") end |
#import_stats(import_id) ⇒ Object
Get information and statistics about this import.
107 108 109 |
# File 'lib/emma/api/members.rb', line 107 def import_stats(import_id) get("/members/imports/#{import_id}") end |
#imported_members(import_id) ⇒ Object
Get a list of members affected by this import.
102 103 104 |
# File 'lib/emma/api/members.rb', line 102 def imported_members(import_id) get("/members/imports/#{import_id}/members") end |
#my_imports ⇒ Object
Get information about all imports for this account.
112 113 114 |
# File 'lib/emma/api/members.rb', line 112 def my_imports get("/members/imports") end |
#my_members(params = {}) ⇒ Object
Get a basic listing of all members in an account.
12 13 14 |
# File 'lib/emma/api/members.rb', line 12 def my_members(params = {}) get("/members", params) end |
#optout(email) ⇒ Object
Update a member’s status to optout keyed on email address instead of an ID.
27 28 29 |
# File 'lib/emma/api/members.rb', line 27 def optout(email) put("/members/email/optout/#{email}") end |
#remove_all_members ⇒ Object
Delete all members.
82 83 84 |
# File 'lib/emma/api/members.rb', line 82 def remove_all_members delete("/members") end |
#remove_member(id) ⇒ Object
Delete the specified member.
62 63 64 |
# File 'lib/emma/api/members.rb', line 62 def remove_member(id) delete("/members/#{id}") end |
#remove_member_from_all_groups(id) ⇒ Object
Remove the specified member from all groups.
87 88 89 |
# File 'lib/emma/api/members.rb', line 87 def remove_member_from_all_groups(id) delete("/members/#{id}/groups") end |
#remove_member_from_groups(id, params) ⇒ Object
Remove a single member from one or more groups.
77 78 79 |
# File 'lib/emma/api/members.rb', line 77 def remove_member_from_groups(id, params) put("/members/#{id}/groups/remove", params) end |
#remove_members(params = {}) ⇒ Object
Delete an array of members.
47 48 49 |
# File 'lib/emma/api/members.rb', line 47 def remove_members(params = {}) put("/members/delete", params) end |
#remove_multiple_members_from_groups(params = {}) ⇒ Object
Remove multiple members from groups.
92 93 94 |
# File 'lib/emma/api/members.rb', line 92 def remove_multiple_members_from_groups(params = {}) put("/members/groups/remove", params) end |
#update_group_members_status(status_from, status_to, group_id = nil) ⇒ Object
Update the status for a group of members, based on their current status. Valid statuses id are (‘a’,’e’, ‘f’, ‘o’) active, error, forwarded, optout.
128 129 130 131 132 |
# File 'lib/emma/api/members.rb', line 128 def update_group_members_status(status_from, status_to, group_id = nil) params = {} params[:group_id] = group_id unless group_id.nil? put("/members/status/#{status_from}/to/#{status_to}", params) end |
#update_member(id, params = {}) ⇒ Object
Update a single member’s information.
57 58 59 |
# File 'lib/emma/api/members.rb', line 57 def update_member(id, params = {}) put("/members/#{id}", params) end |