Contents

Account Administration

Administrators
Creating an Administrator Account POST /api/v2/administrator Creates an admin user.
Creating a Key for the Keyring POST api/v2/settings/keyrings Adds a new key to the keyring.
Creating a Session for an Administrator Account POST /api/v2/administrator/<admin_id>/session Creates a session for an administrator to login.
Listing Administrators GET /api/v2/administrator Returns a list of admin users.
Querying an Administrator by ID GET /api/v2/administrator/query/<id> Returns an administrator user by its ID.
Querying Interface Languages GET /api/v2/administrator/getinterfacelanguages Returns a list of available interface languages.
Querying Access Levels GET /api/v2/administrator/getaccesslevels Returns a list of available admin access levels.
Querying Customer Settings GET /api/v2/settings Gets the settings of the customer.
Querying Start Pages GET /api/v2/administrator/getstartpages Returns the start pages that can be set for the admin.
Listing Keys on the Keyring POST api/v2/keyring/keys Lists all available keys on the keyring.
Querying a Key on the Keyring by ID POST api/v2/settings/keyrings/keys Queries a key from the keyring based on its ID.
Updating an Administrator POST /api/v2/administrator/<admin_id>/patch Updates an admin user.
Deleting an Administrator Account POST /api/v2/administrator/<admin_id> Deletes an admin user.
Deleting a Key from the Keyring POST api/v2/keyring/keys/id/delete Deletes a single key from the keyring.

Contact Management

Contacts
Creating a New Contact POST /api/v2/contact Creates a new contact.
Creating Multiple Contacts POST /api/v2/contact Creates multiple new contacts.
Listing Contacts GET /api/v2/contact/query Returns the value of the requested field for all contacts
Querying Contact Data POST /api/v2/contact/getdata Returns the values of specified fields for contacts.
Querying Contact Email History POST [api/v2/contact/getcontacthistory Returns a list of emails sent to the specified contacts.
Fetching Contact Internal ID GET /api/v2/contact/<key_field_id>=<key_field_value> Returns the internal ID of a contact.
Checking Contact Internal IDs POST /api/v2/contact/checkids Validates the internal IDs of contacts.
Updating a Contact PUT /api/v2/contact Updates a contact.
Updating Multiple Contacts PUT /api/v2/contact Updates multiple contacts.
Deleting a Contact POST /api/v2/contact/delete Deletes a contact.
Contact Fields
Creating a Field POST /api/v2/field Creates a new field.
Listing Available Fields GET /api/v2/field Returns a list of all fields available for personalization.
Listing Available Field Choices GET /api/v2/field/<list_id>/choice Returns the available values for a specified single-or multi-choice field.
Querying a Contact Field Change GET https://api.emarsys.net/api/v2/contact/last_change Returns the date and time, the old and the current value of the latest change of a given contact field.
Querying Multiple Contact Field Changes POST https://api.emarsys.net/api/v2/contact/last_change Returns the date and time, the old value and the current value of the latest change of a given contact field for multiple contacts.
Contact Lists
Creating a Contact List POST /api/v2/contactlist Creates a list form the specified contacts.
Adding Contacts to a Contact List POST /api/v2/contactlist/<list_id>/add Adds the specified contacts to an existing list.
Renaming a Contact List POST /api/v2/contactlist/<list_id>/rename Renames an existing list.
Counting Contacts in a Contact List GET /api/v2/contactlist/<675738479>/count Counts the number of contacts in a contact list.
Replacing a Contact List POST /api/v2/contactlist/<list_id>/replace Overwrites an existing list with new contacts.
Listing Available Contact Lists GET /api/v2/contactlist Returns all available contact lists.
Listing Contacts in a Contact List GET /api/v2/contactlist/<list_id>/contacts Returns the contacts in the list.
Querying Contact Data from a Contact List GET /api/v2/contactlist/<675738479>/contacts/data Queries the data of selected contacts from a contact list.
Checking a Contact in a Contact List GET /api/v2/contactlist/<list_id>/contacts/<contact_id> Checks whether a specific contact is included in the defined contact list.
Removing Contacts from a Contact List POST /api/v2/contactlist/<list_id>/delete Removes the specified contacts from an existing list.
Deleting a Contact List POST /api/v2/contactlist/<list_id>/deletelist Deletes a list.
Segments
Creating a Segment PUT /api/v2/filter Creates a contact segment.
Creating a Combined Segment POST /api/v2/combinedsegments Creates a combined segment out of existing segments.
Counting Contacts in a Segment GET /api/v2/filter/<segment_id>/contacts/count Counts the number of the contacts in a segment.
Listing Segments GET /api/v2/filter Returns a list of segments.
Listing Combined Segments GET /api/v2/combinedsegments Returns a list of all combined segments.
Listing Contacts in a Segment GET /api/v2/filter/<segment_id>/contacts Returns a list of the contacts in a segment.
Querying Combined Segment Data GET /api/v2/combinedsegments/<combined_segment_id> Returns the details of a combined segment.
Querying Contact Criteria in a Segment GET /api/v2/filter/<segment_id>/contact_criteria
Checking a Contact in a Segment GET /api/v2/filter/<segment_id>/contacts/<contact_id> Checks whether a specific contact is included in the defined segment.
Updating a Combined Segment POST /api/v2/combinedsegments/<combined_segment_id> Updates the parameters of a combined segment.
Updating Contact Criteria in a Segment PUT /api/v2/filter/<segment_id>/contact_criteria Updates contact criteria for a specific segment.
Deleting a Segment GET /api/v2/filter/<segment_id>/delete Deletes a contact segment.
Contact Sources
Creating an Additional Contact Source POST /api/v2/source/create Creates a new source for adding contacts to your database.
Listing Contact Sources GET [/api/v2/source] Returns a list of available contact sources.
Deleting a Contact Source DELETE /api/v2/source/<source_id> Deletes an existing source.
Blacklist
Adding Blacklist Entries PUT https://api.emarsys.net/api/v2/blacklist Adds emails and domains to the internal blacklist.
Forms
Querying Customer Forms GET /api/v2/form Returns a list of all available forms.

Email Campaign management

Email Campaigns
Creating an Email Campaign POST /api/v2/email Creates an email campaign with the specified parameters.
Listing Email Campaigns GET /api/v2/email Lists all campaigns within the defined parameters.
Querying Email Campaign Data GET /api/v2/email/<email_id> Returns all details of a campaign.
Querying Available Email Campaign Languages GET /api/v2/language Returns a list of all available campaign languages.
Querying Email Campaign Categories GET /api/v2/emailcategory Returns an alphabetical list of all available campaign categories.
Versioning an Email Campaign POST /api/v2/email/<email_id>/version Creates a new A/B testing version for a campaign.
Finalizing a Multilanguage Email Campaign POST /api/v2/email/<email_id>/finalize Finalizes A/B testing of a multilanguage campaign.
Copying an Email Campaign POST /api/v2/email/<email_id>/copy Copies the specified campaign.
Updating Email Campaigns POST /api/v2/email/email/<email_id>/patch Updates an email campaign with the specified parameters.
Updating an Email Campaign Recipient Source POST /api/v2/email/<email_id>/updatesource Assigns a target list or segment to a campaign.
Deleting an Email Campaign POST /api/v2/email/delete Deletes the specified campaign.
Sections
Creating a Section in a Template-based Email Campaign POST /api/v2/email/sections Adds a section to an email.
Listing Sections in a Template-based Email Campaign GET /api/v2/email/<email_id>/sections Returns a list of all available sections in an email.
Querying a Section of a Template-based Email Campaign GET /api/v2/email/<email_id>/sections/<section_id> Returns the details of the specified section.
Updating a Section of a Template-based Email Campaign POST /api/v2/email/sections Updates the details of a section in an email.
Deleting a Section from a Template-based Email Campaign POST /api/v2/email/<email_id>/sections/<section_id>/delete Deletes a section from an email.
Media Database
Creating a Folder POST /api/v2/folder Creates a sub-folder in the Media Database.
Uploading a File POST /api/v2/file Uploads a file to the Media Database.
Listing Folders GET /api/v2/folder Returns a list of all available folders in the Media Database.
Listing Files GET /api/v2/file Returns a list of all available media files.
Querying a File GET /api/v2/file/<id> Returns an individual file from the Media Database.
Deleting a File POST /api/v2/file/<id>/delete Deletes an individual file from the Media Database.
Conditions
Querying Conditions GET /api/v2/condition Returns a list of all available rules for conditional text.
Templates
Listing Email Templates GET /api/v2/email/templates Returns a list of all available templates
Querying an Email Template GET /api/v2/email/templates/<template_id> Returns the details of the specified template.
Tracked Links
Creating a Tracked Link in an Email Campaign POST /api/v2/email/<email_id>/trackedlinks Creates a tracked link in an email campaign.
Querying Tracked Links in an Email Campaign GET /api/v2/email/<email_id>/trackedlinks Returns a list of all tracked links in a campaign.
Querying a Tracked Link in an Email Campaign GET /api/v2/email/<email_id>/trackedlinks/<link_id> Returns the details of a tracked link.
Listing Link Categories GET /api/v2/settings/linkcategories Returns the link categories used in emails.
Updating a Tracked Link in an Email Campaign POST /api/v2/email/<email_id>/trackedlinks/<link_id> Updates the URL of a tracked link.
Deleting a Tracked Link in an Email Campaign POST /api/v2/email/<email_id>/deletetrackedlinks/<link_id> Deletes the specified tracked link.
Deleting all Tracked Links in an Email Campaign POST /api/v2/email/<email_id>/deletetrackedlinks Deletes all tracked links in a campaign.
Launches
Previewing Email Campaign Contents POST /api/v2/email/<email_id>/preview Returns a preview of the email.
Sending a Test Email POST /api/v2/email/<email_id>/sendtestmail Sends a test mail of the specified email.
Launching an Email Campaign POST /api/v2/email/<email_id>/launch Initiates the launch of a campaign.
Querying Delivery Status POST /api/v2/email/getdeliverystatus Returns the delivery status of a campaign.
Querying Responses GET /api/v2/email/responses Returns a list of all contacts who responsed a certain way during the specified time frame.
Querying Responses Result POST /api/v2/email/responses/<query_id> Lists the campaign IDs of the campaigns returned by Querying Responses
Querying a Response Summary GET /api/v2/email/<email_id>/responsesummary Returns all responses of the specified campaign.
Listing Email Campaign Launches POST /api/v2/email/getlaunchesofemail Lists all launches of a specified campaign.
Listing Personalization Alternate Texts GET https://api.emarsys.net/api/v2/email/<campaign_id>/personalization Returns the list of email personalization fields with alternative values.
Querying the URL of Launched Email Campaign Content POST /api/v2/email/<email_id>/url Returns the online version of an email for the specified contact.
Unsubscribing a Contact from an Email Campaign POST /api/v2/email/unsubscribe Marks the specified contacts as unsubscribed in the campaign summary.
Automation Center
Starting Programs POST /api/v2/ac/programs/entrypoints/<node_type>/resources/<resource_id>/runs Starts Automation Center programs which start with the specified API node.
Querying Used Program Resources GET /api/v2/programresource/service_id={service_id} Returns a list of all external services available for use in the Automation Center.
RTM Mail Streams
Appending to Mail Stream POST /api/rtm/mail_streams/<stream_id> Appends recipient data to a mail stream for real-time messaging.
Querying Mail Events POST /api/rtm/mail_events/<event_type> Queries event data related to sent mails.

External Events

External Events
Creating an External Event POST /api/v2/event Updates an external event with a new name.
Querying Available External Events GET /api/v2/event Lists all available external event names and IDs.
Querying an External Event GET /api/v2/event/<event_id> Returns the details of an external event.
Listing All Usages of an External Event GET /api/v2/event/<id>/usages Lists the programs to be started and the emails to be sent by triggering an external event.
Triggering External Events POST /api/v2/event/<event_id>/trigger Triggers an external event.
Triggering Multiple External Events POST /api/v2/event/<event_id>/trigger Triggers multiple external events.
Updating an External Event POST /api/v2/event/<event_id> Updates an external event.
Deleting an External Event POST /api/v2/event/<event_id>/delete Deletes an external event.

Data Management

Exports
Exporting Changes POST /api/v2/contact/getchanges Exports selected fields for all contacts changed within the selected time period.
Exporting a Contact List POST /api/v2/email/getcontacts Exports selected fields for all contacts in a list.
Exporting a Segment POST /api/v2/export/filter Exports selected fields for all contacts in a segment.
Exporting Contact Registrations POST /api/v2/contact/getregistrations Exports selected fields for all contacts who registered within the selected time period.
Exporting Responses POST /api/v2/email/getresponses Exports selected fields for all contacts who responded to emails within the specified time period.
Querying Export Status GET /api/v2/export/<export_id> Returns the status of an export.
Downloading Export Data GET /api/v2/export/<export_id>/data Returns export data already in CSV format.
Behavioral Events
Unified Behavior Data POST /api/hds/events/customers/<customer_id>/events/providers/<provider>/channels/<channel>/campaign_types/<campaign_type>/event_types/<event_type> Stores different behavior events in the Emarsys database.
Relational Data Service
Inserting Records POST /api/rds/tables/<table_name>/records Inserts records into a table in the Relational Data Service.
Replacing Records PUT /api/rds/tables/<table_name>/records Replaces records in a table in the Relational Data Service.
Updating Records PATCH /api/rds/tables/<table_name>/records Updates records in a table in the Relational Data Service.
Deleting Records POST /api/rds/tables/<table_name>/records/remove Deletes records from a table in the Relational Data Service.

Sales Data Upload API

We also have the following endpoint for synchronizing sales data not tracked by our data collection scripts:

https://admin.scarabresearch.com/hapi/merchant/<merchant-id>/sales-data/api

See Uploading Your Sales Data for more details.