Add or update one or more subscribers to a preexisting mailing list. Set subscriber details email address, confirmation status and optional custom fields. You can specify whether to add that subscriber to autoresponders, whether they will receive HTML or text-based mailings, or if they should be tagged.
User can also use this call to create a journey via the "send_newsletter" parameter.
Note: The functionality provided by this API call can also be achieved using the AddSubscribersToList call if user sets the "update_if_exits" element to `true`.
Note: This API call can also be found under the requesttype of "Lists".
JSON Request Example:
"json_request" element
Field Name | Description |
username | Username used to login to Pinpointe |
usertoken | Unique token assigned to Pinpointe account |
requesttype | Subscribers |
requestmethod | AddOrUpdateSubscribers |
Please note: ALL OPTIONAL elements that are not used should be deleted from submitted call. For example, if no IP address will be supplied as part of the call, "ipaddress": "{*ip_address*}", should be deleted.
"details" element
Note: this section is to apply element values globally to all contacts for the API call. Corresponding element values entered as part of a contact-specific entry as described below will override these global values.
Field Name | Description |
list (Required globally or per contact) | Add all contacts to this global database mailing list with this ID number who do NOT have a contact-specific list-ID assign to them. See "list" description below under "contacts" section. |
tag (optional global tag assignment) | Use one or more elements to assign global tag_id(s) to all subscribers who do NOT have a contact-specific tag_id assigned to them. Values can be the tag's numeric ID or the tag name. See "tag" description below under "contacts" section. |
format (optional) | Use html to send user HTML emails or text for plain-text. html is the default. |
confirmed (optional) | Use true, 1 or yes to mark user as confirmed or false, 0 or no for unconfirmed. true is default |
timezone (optional) | Will accept US / Canadian time zones as local-specified (e.g. America/Los_Angeles) OR any of the US or Canadian short codes: EST, EDT, CST, CDT, MST, MDT, PST, PDT, etc. OR an offset from GMT/UTC. |
add_to_autoresponders (optional) | Globally adds all contacts to autoresponders, if they exist using true, 1 or yes. If you do not wish to add contacts to autoresponders, enter a value of false, 0 or no. false is default. Individual contacts may also be added to autoresponders. See "add_to_autoresponders" description below under "contacts" section. |
send_confirmation (optional) | Use true, 1 or yes to send contact(s) a confirmation email or false, 0 or no to not do so. false is default. |
send_newsletter (optional) | newsletter_id or newsletter_name to be sent. NOTE: Including this parameter will create a journey. |
"details"
"contact" element
Field Name | Description |
email (required) | email address of contact to be added |
mobilephone (optional) | Mobile phone number of contact. Required for SMS messaging through Pinpointe. |
tag (optional) | Use one or more elements to assign tag_id(s) to this specific contact. Values can be the tag's numeric ID or the tag name. NOTE: contact-specific tag_ids or tag_names will take precedence over the global tag_id or tag_name specified under the global "details" section noted above. |
format (optional) | Use html to send user HTML emails or text for plain-text. html is the default. |
ipaddress (optional) | Can add optional IP address. |
confirmed (optional) | Use true, 1 or yes to mark user as confirmed or false, 0 or no for unconfirmed. true is default |
timezone (optional) | Will accept US / Canadian time zones as local-specified (e.g. America/Los_Angeles) OR any of the US or Canadian short codes: EST, EDT, CST, CDT, MST, MDT, PST, PDT, etc. OR an offset from GMT/UTC. |
add_to_autoresponders (optional) | Adds this specific contact to autoresponders, if they exist using true, 1 or yes If you do not wish to add contact to autoresponders, enter a value of false, 0 or no. false is default. NOTE: This contact-specific value will take precedence over the global value if set above. |
send_confirmation (optional) | Use true, 1 or yes to send contact(s) a confirmation email or false, 0 or no to not do so. false is default. |
send_newsletter (optional) | newsletter_id or newsletter_name to be sent. NOTE: Including this parameter will create a journey. |
"customfield" OPTIONAL
"fieldid", "value" elements - add values for a subscriber's custom fields. Use one "fieldid" and "value" pair per custom field.
NOTE: you may insert multiple "customfield" elements to add/update multiple custom fields.
Field Name | Description |
fieldid | ID of custom field to be added. |
value | Value of this custom field |
Please note: If no custom field data is to be sent, please delete the "customfield" tags and all inner tags to avoid a submission error. |
"return_data" and "include_membership" elements
return_data | Setting this element's value to true, 1 or yes results in the API call returning an expanded body of subscriber data required by some applications. |
include_membership | PieSync requirement: Setting this element's value to true, 1 or yes results in the API call adding a list of all tags that a subscriber is in as part of the returned information for that subscriber. |
Successful Response:
"response" element
Field Name | Description |
status | Will return SUCCESS if contact(s) was / were successfully added |
"Response" => "data" element
add_count | Number of contacts added to database by this call |
update_count | Number of contacts updated in database by this call |
journey_id | Journey ID of created journey IF send_newsletter parameter included |
subscribers | ID of subscribers enrolled in journey IF send_newsletter parameter included |
added | Number of contacts added to journey IF send_newsletter parameter included |
Unsuccessful Response:
"response> element
Field Name | Description |
status | Will return FAILED if unsuccessful |
errormessage | Text explaining why request failed |