API Spec

Contacts

Description:

Used to access Contacts and their related Interactions

Method URL Description
GET contacts/{contactId}

Get the details for a specific contact

GET contacts/{contactId}/journeys

Get a list of a Contact's Journeys

GET contacts/{contactId}/communications

Get all Communications a Contact has had with the Platform

GET contacts/{contactId}/journeyactivities/{journeyId}

Get all interactions a Contact has in a given Journey

GET contacts/{contactId}/summary

Get the last 10 Emails, Texts, LandingPages, WebForms, RSVPEvents and Competitions interactions this Contact has had with the Platform

GET contacts/{contactId}/emails

Get a list of a Contact's Email Interactions

GET contacts/{contactId}/textmessages

Get a list of a Contact's TextMessage Interactions

GET contacts/{contactId}/landingpages

Get a list of a Contact's Landing Page Interactions

GET contacts/{contactId}/webforms

Get a list of a Contact's WebForm Interactions

ContactLists

Description:

Used to View ContactList Contacts, Schemas/Fields, as well as insert/update contacts

Method URL Description
GET contactLists

Gets a list of ContactLists

GET contactLists/{contactListId}

Get a specific ContactList

GET contactLists/{contactListId}/fields

Get a specific ContactList's fields

GET contactLists/{contactListId}/fields/{fieldId}

Get the details of a specific ContactList's Field

GET contactLists/{contactListId}/journeys

Get a list of Journeys that use a specific ContactList

GET contactLists/{contactListId}/contacts

Get a list of Contacts for a specific ContactList

PATCH contactLists/{contactListId}/contact

Find all contacts within a given contactlist that match a set of values, then update their properties to given values E.G. Find all contacts with an ReferanceAccountID of 123456 and set their address to "123 Red Street, D1".

POST contactLists/{contactListId}/contact

Create/Update a contact in a specific ContactList

POST contactLists/contactForm

Create/Update a contact in a specific ContactList. Directly replaces the old api/Contact.aspx Form endpoint

POST contactLists/{contactListId}/import

Create an Import job for a specific ContactList

GET contactLists/{contactListId}/import/{importJobId}

Check the status of an Import Job belonging to a specific ContactList

POST contactLists/{contactListId}/import/{importJobId}

Insert/Update a batch of Contacts in a specific Import Job belonging to a specific Contact List

POST contactLists/{contactListId}/import/{importJobId}/run

Run an ImportJob for a specific ContactList, to start the batch Insert/Update process

GET contactLists/{contactListId}/linkeddata

Get a list of Linked Data for a specific contact list

GET contactLists/{contactListId}/linkeddata/{linkedDataId}

Get a specific Linked Data from a specific contact list

GET contactLists/{contactListId}/linkeddata/{linkedDataId}/fields

Get a specific Linked Data schema's fields from a specific ContactList

GET contactLists/{contactListid}/linkeddata/{linkedDataId}/fields/{fieldId}

Get the details of a specific Linked Data schema's Field

GET contactLists/{listId}/linkeddata/{linkedDataId}/records

Get a specific set of Linked Data's records from a specific ContactList

POST contactLists/{contactListId}/registerDevice

Create/Update a contact in a specific ContactList, and store their DeviceID in the ContactDevice table

GET contactLists/serverTime

Returns the current Server Time

Files

Description:

Used to manage files in the FTP folder

Method URL Description
GET files?filePath={filePath}

Gets and returns a file as specified by the filePath parameter

POST files?subFolder={subFolder}

Upload a file to the specified subFolder. The file must be attached as a Form-data value

DELETE files?filePath={filePath}&download={download}

Deletes the file as specified by the filePath parameter.

Journeys

Description:

Used to access Journeys and related Reports/Activities

Method URL Description
GET journeys

Get a List of Journeys

GET journeys/{journeyid}

Get the details of a specific Journey

GET journeys/{journeyid}/contacts

Get a list of Contacts for a specific Journey

GET journeys/{journeyid}/reports

Get channel reports for a specific Journey

GET journeys/{journeyId}/reports/emails

Get an Emails Report for a specific Journey

GET journeys/{journeyId}/reports/emails/{emailId}/contacts

Get all Contacts from a given Journey who where sent a specific Email.

GET journeys/{journeyId}/reports/emails/{emailId}/contacts/{state}

Get all Contacts from a given Journey who where sent a given email which is at a specified State

GET journeys/{journeyId}/reports/textmessages

Get a TextMessages Report for a specific Journey

GET journeys/{journeyId}/reports/textmessages/{textMessageId}/contacts

Get all Contacts from a given Journey who where sent a specific TextMessage.

GET journeys/{journeyId}/reports/textmessages/{textMessageId}/contacts/{state}

Get all Contacts from a given Journey who where sent a given TextMessage - which is at a specified State

GET journeys/{journeyId}/reports/landingpages

Get a LandingPages Report for a specific Journey

GET journeys/{journeyId}/reports/landingpages/{landingpageId}/contacts

Get all Contacts from a given Journey who visited a specific Landing Page

GET journeys/{journeyId}/reports/landingpages/{landingpageId}/contacts/{state}

Get all Contacts from a given Journey who visited a specific Landing Page by their state in it's workflow

GET journeys/{journeyId}/activities

Get a list of Activities for a given Journey

GET journeys/{journeyId}/activities/{activityId}

Get a specific Activity for a given Journey

GET journeys/{JourneyId}/activities/{activityId}/contacts

Get a list of Contacts who participated in a specific Journey Activity

POST journeys/{JourneyId}/landingpages/{landingpageId}/generatePDF

Create/Update a contact in a specific ContactList

POST journeys/sendEmail

Create/Update a contact in a specific ContactList and send an email to the contact.

PATCH journeys/sendEmail

Create/Update a contact in a specific ContactList and send an email to the contact.

PUT journeys/sendEmail

Create/Update a contact in a specific ContactList and send an email to the contact.

POST journeys/sendTextMessage

Create/Update a contact in a specific ContactList and send an email to the contact.

PATCH journeys/sendTextMessage

Create/Update a contact in a specific ContactList and send an email to the contact.

PUT journeys/sendTextMessage

Create/Update a contact in a specific ContactList and send an email to the contact.