NAV Navbar
Logo

Introduction

Mapp Engage is a software as a service (SaaS) for multi-channel marketing.
This enables you to orchestrate fully automated, comprehensive multi-step customer campaigns
that successfully combine email, mobile and web.
Mapp gives you the ability to interact with your contacts with relevant information at the right time.
By taking advantage of our marketing software, you benefit from a comprehensive range of features
as well as current best practice advice from our digital marketing experts.

What is the Mapp Engage API?

An API is used by two or more platforms to share information and manage processes without the need for human intervention.
The Mapp Engage API makes it possible for you to connect any program or webpage to your marketing platform.
This lets you pull data into our system and extract information for reuse in other applications.

We employ a consistent scheme for our SOAP and REST API solutions. Feel free to decide which solution best fits your needs.
For an overview of the SOAP solution, see SOAP API. For an overview of the REST solution, see REST API.

Other API solutions and the previous REST and SOAP solutions are still available, however these will no longer be extended or updated.
If you wish to continue using an old application that is based on these interfaces, please contact your customer support representative.

Authorization & Permissions

Both SOAP and REST API use HTTP basic authentication method
that does not require cookies or session tokens.

For this reason, there are no explicit login and logout methods.
Instead authorization header must be included in each API request.

The example header for 'test@test.com' user and 'test' password is following

Authorization: Basic dGVzdEB0ZXN0LmNvbTp0ZXN0

You should use "API user" or "Hybrid User" user type for authentication.

To execute the API call successfully,
the API user account must also have required system permissions.

Versioning

We release new API versions on a half yearly basis.
Contact Mapp Technical Support to confirm if you have the latest version.
At the moment this is v10.

Tools

SoapUI is an open-source web service testing tool

Download and install soapui

To setup REST project

To setup SOAP project

To setup Control XML project

To setup SOAP 1.0 (deprecated)

Start testing

soapui

Other tools

Domains

API calls are grouped within functional test domains.

REST SOAP Description
async async Contains methods for processing data asynchronously and for requesting the result of the process.
automation automation Contains methods that let you interact with automations in Mapp Engage.
blacklist blacklist Contains methods that you use to manage system and group blacklists.
cms cms Contains methods that you use to manage messages stored in the Content Management System (CMS).
contact contact Contains methods for contact management.
user user Contains more methods for contact management.
content content Contains methods that are used to manage elements in the Content Store.
draftmessage draftmessage Contains methods for working with an email or SMS message that has been saved as a draft.
group group Contains all group-related methods.
landingpage landingpage Contains methods that can be used to manage landing pages.
membership membership Contains methods that are used to manage group memberships.
message message Contains methods that can be used to manage email and SMS messages.
meta meta Contains methods that define your system.
mobile n/a The mobile domain contains methods that can be used to manage appoxee properties
preparedmessage preparedmessage A prepared message is a saved message that you have assigned to a group.
process process Contains methods that let you interact with a process in Mapp Engage.
relatedData relatedData Contains methods to manage records stored in Related Data.
system system Contains methods that return information about the current version of the system in use.
systemuser systemuser Contains system user related methods such as editing, deleting, and creating a system user.

Types

Boolean

Example

false

Boolean data type: true (1) or false (0).

Integer

Example

1

A numeric value between -100000000000000000 and 1000000000000000000.

Long

Example

353576673

Typically an ID of an entity.

A numeric value between -100000000000000000 and 1000000000000000000.

String

Example

'Test'

Text strings. A string with a maximum of 2000 characters can be used.

Attachment

A message attachment.

Properties

Name Type Description Constraints
name String The name of the attachment. required
contentType String The attachment content type. required
content String The attachment content in Base64 encoding. required

Attribute

A name and value pair that can be assigned as an attribute to various objects in the system.

Properties

Name Type Description Constraints
name String The name of the attribute. required
value String The value of the attribute. Note that although provided here as a string, you may need to convert it into a specific type to work with a specific request. If the value is not sent with the expected data type, an error can occur. required

AutomationFilter

Available in version v7+

A filter type that determines which automation is returned by a query. Filters applied against properties with string data types are not case-sensitive.

Properties

Name Type Description Constraints
name String The name of the automation. The name is defined by the system user when the automation is created. The name identifies the automation in the system. The name does not have to be unique in the system. optional
automationType AutomationType An enumerated type that indicates whether the automation is time-based or event based. A list of possible values is available in the description for the AutomationType type. required
jobType String An enumerated type that indicates which job is executed by the automation. A list of possible values is available in the description for the AutomationJobType type. optional
eventType String An enumerated type that indicates which event initiates execution of the job. A list of possible values is available in the description for the EventType type. Use only for automations with the EVENT_BASED automationType property. optional
ownerName String The name of the system user who created the automation. Provided in the format LastName, FirstName. optional
nextExecutionDateFrom String The start date for a time frame in which queries for automations that are scheduled for next execution after the specified time. Specify Datetime format. optional
nextExecutionDateTo String The end date for a time frame in which queries for automations that are scheduled for next execution before the specified time. Specify using Datetime format. Must be later than nextExecutionDateFrom when both dates are specified. optional
endDateFrom String The start date for a time frame in which queries for the automations that are scheduled to finish after the specified time. Specify using Datetime format. optional
endDateTo String The end date for a time frame in which queries for automations that are scheduled to finish before the specified time. Specify using Datetime format. Must be later than endDateFrom when both dates are specified. optional
hasErrors Boolean True if the number of errors encountered during execution is greater than zero, otherwise false. An error does not mean that the execution failed. required
status AutomationStatus An enumerated type that indicates the current status of the automation. A list of possible values is available in the description for the AutomationStatus type. optional
archived Boolean True if the automation is currently archived, otherwise false. required

AutomationStatus

Available in version v7+

An enumerated type that represents the current status of an automation.

Enumeration Values

Value Description
ACTIVE_RUNNING The automation is active and has been executed at least once by the system. Only an automation with a scheduled repetition can have this status.
ACTIVE_SCHEDULED The automation is active and the start date is in the future. The automation will run according to the schedule defined in the system.
INACTIVE The automation is inactive. The automation is not executed by the system.
INACTIVE_DEACTIVATED The automation was manually deactivated before all executions were finished. The automation is not executed by the system. Only an automation with a scheduled repetition can have this status.
INACTIVE_DONE All scheduled executions are finished. The automation has been completed by the system for the last time.

AutomationType

Available in version v7+

Enumeration Values

Value Description
EVENT_BASED An automation that executes a job every time a defined event takes place.
TIME_BASED An automation that executes a job on a regular schedule. You can also send instructions to run a time-based automation once.

BlacklistEntry

Available in version v4+

A blacklist entry.

Properties

Name Type Description Constraints
type BlacklistEntryType Specifies the entry type. required
pattern String The pattern to be blacklisted. Depending on the type property, this may be an email address, an email domain, or a phone number. required

BlacklistEntryType

Available in version v4+

Specifies the type of a blacklist entry.

Enumeration Values

Value Description
EMAIL A single email address.

Contact_

Available in version v7+

An object that represents a contact in Mapp Engage, including any identifiers and attributes. You must specify at least one of the following identifiers* to store or retrieve a valid contact object: email address, mobile number, or mobile app alias.

Properties

Name Type Description Constraints
contactId Long The internal ID assigned to the contact profile. required
emailAddress String The contact email address. Must be unique in the system. required*
mobileNumber String The contact mobile number. Must be unique in the system. required*
applicationAlias String The contact mobile app alias. Must be unique in the system. required*
identifier String An identifier for the contact which was generated by an external system. required*
attributes Attribute A list of profile attributes.Can include both standard and custom attributes.

ContactIdentifier

Available in version v7+

An object that associates a contact identifier with a value.

Properties

Name Type Description Constraints
type ContactIdentifierType The type of identifier. required
value String The value of the contact identifier. requiredminLength:1

ContactIdentifierType

Available in version v7+

An enumerated type that indicates which identifer is used to reference the contact.

Enumeration Values

Value Description
EMAIL The identifier is an email address.
MOBILE The identifier is a mobile number.
APP_ALIAS The identifier is a mobile app alias.
EXTERNAL The identifier is a value generated by an external system.
ID Identifier.

Datetime type

Date in ISO_8601 format
Examples:

DraftMessage Type

Available in version v6+
An object that contains the definitions for a draft message.
A draft message has not been scheduled or sent and is not assigned to a group for sendout.
A draft can be saved and edited at a later date or used as a template for other messages.

Properties

Name Type Description Constraints
id Long The ID of the draft message. optional
name String The name of the draft message. required
externalId String The external message ID assigned to the draft message. The external message ID is inserted into message links through the use of link parameters. optionalmaxLength:250
messageCategoryId Long The message category ID. optional
message MessageBase An object that contains the message content and content-related properties. required

DraftMessageFilter

Available in version v7+

A filter object that determines which messages are included in the list of returned draft message summary objects.

Properties

Name Type Description Constraints
externalMessageId String The external message ID. optional
messageName String The name of the messsage. optional
subjectLine String The message subject line. optional
authorName String The name of the message author. Uses the format: lastname, firstname. optional
authorId Long The user ID of the message author. optional
messageCategoryId Long The message category ID. optional
creationDateFrom String Start date of time frame from which a draft message was created. Uses Datetime format. optional
creationDateTo String End date of time frame until which a draft message was created. Uses Datetime format. optional
lastUpdateDateFrom String Start date of time frame from which a draft message was last updated. Uses Datetime format. optional
lastUpdateDateTo String End date of time frame until which a draft message was last updated. Uses Datetime format. optional

DraftMessageSummary

Available in version v7+
An object that provides summary information for a draft message.

Properties

Name Type Description Constraints
authorId Long The user ID of the message author. optional
authorName String The name of the message author. Uses the format: lastname, firstname. optional
creationDate String The date the draft message was created. Uses Datetime format. optional
externalMessageId String The external message ID. optional
id Long The message ID. optional
isArchived Boolean Indicates whether the message is archived. required
lastUpdateDate String The date the draft message was last updated. Uses Datetime format. optional
messageCategoryId Long The message category ID. optional
messageName String The name of the message. optional
subjectLine String The message subject line. optional

Group Type

The object that describes the main properties of a group.

Properties

Name Type Description Constraints
id Long Internal ID of the group. required
name String Name of the group. The name must be unique in the system. required maxLength:150
description String A description of the group. optionalmaxLength:3,000
email String Email for the group clone. The email must be unique and valid. required maxLength:128 minLength:5

GroupCloneOptions

Object for description of how to clone a given group and mandatory fields for the cloned group.

Properties

Name Type Description Constraints
name String Name of the group clone. The name must be unique in the system. required maxLength:150
description String Description for the group clone. optionalmaxLength:3,000
email String Email for the group clone. The email must be unique and valid. required
includePreparedMessages Boolean If true, the group is cloned with all prepared messages, otherwise without. required
includeTestUsers Boolean If true, group is cloned with the test recipients, otherwise without. required
keepOwner Boolean If true, group owner from source group is added as member to the destination group and also keeps ownership of the group. required
withOwnerAsMember Boolean If true, member for the owner is created. required

GroupSettingsTemplate

A collection of group settings.

Properties

Name Type Description Constraints
id Long Every group settings template has a unique ID within the system. required
name String Name of the group settings template. required maxLength:100

HistoricalMessage

Available in version v8+

A (group) message that was sent. All personalization placeholders are resolved based upon the provided contact ID, with attribute values from the time of sendout. (Only possible if DataStore is connected.)

Properties

Name Type Description Constraints
contactId Long Unique ID of the contact for whom the message was generated required
messageId Long Unique ID of the (group) message required
name String Name of the message required
externalId String Optional external Id of the message (including resolved personalization if possible) optional
description String Optional description of the message optional
messageCategoryId Long Optional id of the message Category assigned to the message optional
processingDate String Timestamp in Datetime format with processing date for this message / the sendout of the whole group message (TBD how granular the information is that we have available on message level) required
type MessageBase Image and attachment references (content store). required

LandingpageFilter

Available in version v7+

A filter object that determines which landing pages are included in the list of returned landing page summary objects.

Properties

Name Type Description Constraints
status String The current status of the landing page. required
name String The name of the landing page. required
pageName String The page name used in the URL of the landing page. required
ownerId String The user ID of the landing page owner. required
URL String The URL of the landing page. required
publishedFrom String Start date of time frame during which a landing page was published. Uses Datetime format. required
publishedTo String End date of time frame during which a landing page was published. Uses Datetime format. required

LandingpageSummary

Available in version v7+

An object that provides summary information for a landing page.

Properties

Name Type Description Constraints
id Long The ID of the landing page. required
status String The current status of the landing page. required
name String The name of the landing page. required
pageName String The page name used in the URL of the landing page. required
ownerId String The user ID of the landing page owner. required
description String The description entered for the landing page. required
URL String The URL of the landing page. required
redirection String The URL of the alternative website to which the recipient is redirected when the landing page is deactivated. required
expirationDate String The date when the landing page is scheduled to be automatically deactivated by the system. Uses Datetime format. required
publishedDate String The publication date of the landing page. required
lastPublishedDate String The last publication date of the landing page. required

LinkCategory

An entity that represents a link category.

Properties

Name Type Description Constraints
id Long The ID assigned to the link category. optional
name String The name of the link category. required maxLength:200
description String A description of the link category. optional
pattern String The regular expression that defines the criteria used to determine when a link is assigned to a particular link category. For example, the regular expression .*hotel.* assigns a link category to any URL that contains the word hotel (case-sensitive). required maxLength:200

MergeResult

A result object for attributes changes.

Properties

Name Type Description Constraints
attributeName String The attribute name. required
result MergeResultType Action that was performed. required
error ErrorCode Error code the error produced (if any). required

MergeResultType

An enumerated type that defines which action was performed on an attribute during merge and its result.

Enumeration Values

Value Description
ACTIVATED The attribute was created or archived before.
ARCHIVED The attribute was active or archived before.
CREATED A new attribute was created.
ENUM_EXTENDED An enumeration value was added to an existing attribute.
ERROR An error occurred during operation. Error details are described in the corresponding error string.

Message Type

The definition of a complete message to be sent by Mapp Engage. The properties provided determine what type of message is sent. Message types include:

- - Simple MIME messages (text or HTML part). - Multipart alternative MIME messages (text and HTML). - Multipart-mixed MIME messages.

Message attachments are referenced from the Content Store.

Properties

Name Type Description Constraints
sendoutRef String An ID assigned to the sendout. Where possible, use a number. Only characters A-Z and 0-9 are allowed. This property is not available for API versions 6 and higher. required
recipientRef String An ID assigned to the message recipient. Where possible, use a number. Only characters A-Z and 0-9 are allowed. This property is not available for API versions 6 and higher. required
from String The From address of the email in RFC-822 format. For API versions 6 and higher, this property is restricted to the format "localpart@domain". required
fromName String The name displayed in the email client as the From address in the email. This property is not available for API versions 6 and higher. required
to String The To address of the email or comma-separated list of email addresses in RFC-822 format. For API versions lower than version 6, this property is restricted to a single email address with the format "localpart@domain". API versions 6 and higher can enter a comma-separated list of recipients. The To address is required for each recipient. A name is optional. Enter addresses in the correct format recognized by the email header. An email address with name is entered as: "Joe Sample" <joe.sample@email.com>. This property is required. required
cc String The CC address of the email or comma-separated list of email addresses in RFC-822 format. This property is only available for API versions 6 and higher. This property is optional. required
bcc String The BCC address of the email or comma-separated list of email addresses in RFC-822 format. This property is only available for API versions 6 and higher. This property is optional. required
toName String The name displayed in the email client for the To address. This property is not available for API versions 6 and higher. API versions 6 and higher enter this value as part of the "to" property. required
replyTo String The Reply-To email address in RFC-822 format. For API versions 6 and higher, this property is restricted to a single email address with the format "localpart@domain". required
replyToName String The name displayed in the email client for the Reply-To email address. This property is not available for API versions 6 and higher. required
headers Attribute[] Additional email headers that are added to the message. required
subject String The message subject. required
textBody String The text body part of the message. required
htmlBody String The HTML body part of the message. required
attachmentReferences AttachmentReference[] A list of references to images and attachments saved to the Content Store. required
attachments Attachment[] A list of attachments. required

MessageBase

Available in version v6+

An object that contains the message content and content-related properties. The MessageBase object does not contain information related to the message context, for example sendout status and group assignment. This object can be embedded in wrapper objects which provide the required context.

Properties

Name Type Description Constraints
subject String The message subject. required
emailBodyText String The text body part of the message. optional
emailBodyHtml String The HTML body part of the message. optional
smsText String The SMS text part of the message. optional
faxText String The fax text part of the message. optional
emailHeaders Attribute[] Additional email headers that are added to the message. required
attachments Attachment[] A list of attachments. required
attachmentReferences AttachmentReference[] A list of references to images and attachments saved to the Content Store. required
encoding String Specifies the encoding of the message. If not specified, the default encoding is used. optional
encodingSMS String Specifies the encoding used to transmit the message from Mapp Engage to the cellular network. The actual encoding used to send the SMS message is based on definitions used for cellular communication:

- - Messages transmitted with ISO-8859-1 are sent with GSM 7-bit encoding. - Messages transmitted with UTF-8 are sent with 16-bit encoding. If not specified, the default encoding is used. | optional | | imageHandlingMode | String | Defines how images are embedded in the message.

Possible options: - "none": Images are left untouched: This item leaves the tags (addresses) of the images unchanged. The images are loaded from the provided address. This setting is used when additional information is included in the link, for example, in the form of a tracking pixel. This is the default option. - "inline": Images are inlined into the message (Offline HTML): The images are included as inline attachments in the email. Mapp Engage accesses the pictures from the location where they are saved (HTTP or HTTPS address) and includes them in the email. Afterward, the addresses of the pictures in the message (HTML tags) are updated to refer to the inline attachments. The images included in the message do not have to be loaded from an external address. The message recipient does not have to be online to view the images in the message. - "host": Images are hosted on the Mapp Engage servers (Online HTML): The images are not provided from their original servers, they are uploaded to the Mapp Engage servers and linked from there. Flash movies (*.swf) in the HTML and Flash HTML fields in the message are treated as images. It is not possible to inline files with these formats. The flash movies are specified with a specially formatted <object> block. If not specified, the default option is applied. | optional |

MessageFilter

Available in version v7+

A filter object that determines which messages are included in the list of returned message summary objects.

Properties

Name Type Description Constraints
externalMessageId String The external message ID optional
messageName String The name of the message. optional
subjectLine String The message subject line. optional
authorName String The name of the message author. Uses the format: lastname, firstname. optional
authorId Long The user ID of the message author. optional
messageCategoryId Long The message category ID. optional
groupName String Name of the group assigned to the message. optional
groupId Long The group ID. optional
groupCategoryName String The name of the group category. optional
groupCategoryId Long The group category ID. optional
type MessageType The message type. optional
status MessageStatus The current status of the message. optional
sendoutDateFrom String Start date of time frame from which a message was sent. Uses Datetime format. optional
sendoutDateTo String End date of time frame until which a message was sent. Uses Datetime format. optional

MessageHistory

Available in version v6+

An object that contains details for a specific sent message.

Properties

Name Type Description Constraints
messageID Long The ID of the sent message. required
externalTransactionId String The transactional message ID assigned to the sent message, if defined. required
externalMessageID String The external message ID assigned to the sent message, if defined. required
messageName String The name of the message. required
messageSubject String The subject line of the message, excluding personalizations. required
groupId Long The ID of the group with which the message was sent. required
groupName String The name of the group with which the message was sent. required
groupEmail String The email address of the group with which the message was sent. required
sendDate Long Date and time the message was sent. required
messageType String The message type assigned to the sent message. required
status String The status of the message, either Sent or Skipped. required
clicked Boolean The Clicked status for the sent message. When true, the recipient clicked a link in the message. When false, the recipient has not yet clicked a link in the message. required
opened Boolean The Opened status for the sent message. When true, the recipient opened the message. When false, the recipient has not yet opened the message. required

MessageStatistics

Available in version v5+

An object that contains detailed information and statistical values that are related to a sent message.

Properties

Name Type Description Constraints
messageId Long ID of the message. required
messageName String Name of the message. required
messageSubject String Subject of the message. required
externalMessageId String External ID assigned to the message. required
groupId Long ID of the group with which the message was sent. required
groupName String Name of the group with which the message was sent. required
groupSize Long The number of members contained in the group with which the message was sent. required
sendoutStartDate Long Start date of the sendout. required
sendoutEndDate Long End date of the sendout. required
transferStartDate Long Date and time when the message transfer started. required
transferEndDate Long Date and time when the message transfer finished. required
selectionName String Name of the selection applied to the sendout, if used. required
statisticValues Attribute A list of attributes that contain the statistical values related to the sent message. required

MessageStatus

Available in version v7+

The current status of a message.

Enumeration Values

Value Description
CANCELLED
INTERUPTED
MODERATED
PROCESSED
PROCESSING
READY
SCHEDULED
SENT
TRANSPORTING

MessageSummary

Available in version v7+

An object that provides summary information for a message.

Properties

Name Type Description Constraints
authorId Long The user ID of the message author. optional
authorName String The name of the message author. Uses the format: lastname, firstname. optional
externalMessageId String The external message ID. optional
groupCategoryId Long The group category ID. optional
groupId Long The group ID. optional
id Long The message ID. optional
isArchived Boolean Indicates whether the message is archived. required
isSystemMessage Boolean Indicates whether the message was generated automatically by the system. required
messageCategoryId Long The message category ID. optional
messageName String The name of the message. optional
originalMessageId Long The ID of the prepared message from which a message sendout was generated. optional
sendoutDate String The date the message was sent. Uses Datetime format. optional
status MessageStatus The current status of the message. optional
subjectLine String The message subject line. optional
type MessageType The message type. optional

MessageTimeDistribution

Available in version v6+

An object that contains basic message properties and time distribution statsitics for recipient activity. This information can be retrieved for sent group and single messages.

Properties

Name Type Description Constraints
messageId Long The message ID. required
messageName String The name of the message. required
messageSubject String The message subject line. required
groupName String Name of the group to which the message was sent. required
sendout Long The date and time on which the sendout was started. required
confirmedOpens Long The total number of times a message was opened. required
confirmedOpeners Long The number of recipients who opened a message. required
totalClicks Long The total number of clicks on a link. required
clickers Long The number of recipients who have clicked on any link in the message. required
acceptedMessages Long The number of messages that were accepted by the email provider's Message Transfer Agent (MTA). required
messagesOpened Long The number of recipients who have opened a message. required
messagesClicked Long The number of recipients who have clicked on any link in the message. required
timeFrameStart Long The start of the time period for which statistics are reported. required
timeFrameEnd Long The end of the time period for which statistics are reported. required
interval TimeDistributionInterval An enumerated type object that determines the interval for which message statistics are aggregated. Available aggregations are daily or hourly. required
periods MessageTimeDistributionPeriod[] A list of MessageTimeDistributionPeriod objects that refer to statistical data points within the time frame. required

MessageTimeDistributionPeriod

Available in version v6+

An object that represents the statistical data points pertaining to a specific time period.

Properties

Name Type Description Constraints
messageId Long The message ID. required
periodStart Long The start of the time period. required
periodEnd Long The end of the time period. required
statisticValues Attribute[] A list of Attribute objects that contain aggregated message statistics data for the time period. required

MessageType

Available in version v7+

Enumeration Values

Value Description
NORMAL A message that was sent as part of a group sendout, in other words, a group message. A group message is a message that is generated by a sendout to a group.
SINGLE A message that was sent as part of a single message sendout, in other words, a single message sent to a single recipient. A single message is always a prepared message.
SPLIT_MAIN The main message of a split sendout.
SPLIT_TEST A test variation sent as part of a split sendout.
SUB A message that was sent as part of a SuperMessage to a SuperGroup.

MethodResult

Available in version v1-2

An object that contains information that describes the result of a method for a given entity.

Properties

Name Type Description Constraints
entityId Long The ID of the entity (message ID, group ID). This property is not available for API versions 3 and higher. required
errorCode ErrorCode The error code. This property is not available for API versions 3 and higher. required
errorMessage String The error message. This property is not available for API versions 3 and higher. required

Object Already Exists Exception

Example

[{
   "success": false,
   "id": null,
   "errorActor": "CLIENT",
   "errorCode": "OBJECT_ALREADY_EXISTS",
   "errorMessage": "BlacklistEntry with pattern=444@yahoo.com does already exist."
}]

PreparedMessageFilter

Available in version v7+

A filter object that determines which prepared messages are included in the list of returned prepared message summary objects.

Properties

Name Type Description Constraints
externalMessageId String The external message ID required
limit Integer number of returned messages 1-500 optional
messageName String The name of the message. optional
subjectLine String The message subject line. optional
authorName String The name of the message author. Uses the format: lastname, firstname. optional
authorId Long The user ID of the message author. optional
messageCategoryId Long The message category ID. optional
groupName String Name of the group assigned to the message. optional
groupId Long The group ID. optional
groupCategoryName String The name of the group category. optional
groupCategoryId Long The group category ID. optional
creationDateFrom String Start date of time frame from which a prepared message was created. Uses Datetime format. optional
creationDateTo String End date of time frame until which a prepared message was created. Uses Datetime format. optional
lastUpdateDateFrom String Start date of time frame from which a prepared message was last updated. Uses Datetime format. optional
lastUpdateDateTo String End date of time frame until which a prepared message was last updated. Uses Datetime format. optional

PreparedMessageSummary

Available in version v7+

An object that provides summary information suitable for a prepared message.

Properties

Name Type Description Constraints
authorId Long The user ID of the message author. optional
authorName String The name of the message author. Uses the format: lastname, firstname. optional
creationDate String The date the prepared message was created. Uses Datetime format. optional
externalMessageId String The external message ID. optional
groupCategoryId Long The group category ID. optional
groupCategoryName String The name of the group category. optional
groupId Long The group ID. optional
groupName String Name of the group assigned to the message. optional
id Long The message ID. optional
isArchived Boolean Indicates whether the prepared message is archived. required
isSystemMessage Boolean Indicates whether the message was generated automatically by the system. required
lastUpdateDate String The date the prepared message was last updated. Uses Datetime format. optional
messageCategoryId Long The message category ID. optional
messageName String The name of the message. optional
subjectLine String The message subject line. optional

ProcessAction

Available in version v7+

An enumerated type that represents an action that can be applied to a running process.

Enumeration Values

Value Description
CANCEL Permanently stops work on a paused process. Can only be applied to a process with the status value PAUSED. Work cannot be resumed on a cancelled process.
PAUSE Temporarily halts work on a process. Can only be applied to a process with the status value PROCESSING. It is possible to resume work on a paused process.
RESUME Continues work on a process that is paused. Can only be applied to a process with the status value PAUSED.

ProcessDetails

Available in version v7+

An object that contains detailed information about a process.

Properties

Name Type Description Constraints
processId Long The ID of the process for which the information is returned. required
processName String The name of the entity that the process executes. A name is assigned to each entity by an individual system user or by the system when the entity is created. The name provides additional information about the task that is performed. required
entityType String The kind of entity the process executes. required
entityId String The unique identification number that the system automatically assigns to each entity. required
status ProcessStatus An enumerated type that represents the current status of a process. required
processedCount Long The number of chunks on which work is successfully completed. required
totalCount Long The entire number of chunks in the process (meaning, the number of chunks into which the work of the process is divided). required
startDate String The date and time the process began. required
estimatedEndDate String The date and time that a process is expected to be finished (if an estimate is available). required
endDate String The date and time that the process was completed. required
duration Long The length of time the process runs in hours, minutes, and seconds. required
executorName String The name of the system user who created the entity that is executed in the process. Provided in the format LastName, FirstName. required
executorEmail String The email address of the system user who created the entity that is executed in the process. required
error String If an error causes the execution of a process to fail, this property contains information about the kind of error that occurred. required

ProcessingType

Available in version v7+

An enumerated type that indicates how the process is executed.

Enumeration Values

Value Description
ASYNC The process is executed asynchronously.
SYNC The process is executed synchronously.

ProcessStatus

Available in version v7+

An enumerated type that represents the current status of a process.

Enumeration Values

Value Description
FAILED Work for this process has ended. This process could not be completed successfully.
FINISHED All work for this process is successfully completed.
PAUSED Work for this process is temporarily halted. Work on this process can be resumed.
PROCESSING The process is currently running.

RelatedDataFilter

Available in version v4+

Object for flitering the records to be selected by related data methods. If filter attributes are provided, only records with matching values for all column and value pairs are selected.

Properties

Name Type Description Constraints
datasetName String Name of the related data set. All related data records reside within a data set identified by a unique name. required
key String Key defining which record(s) to select from the data set. required
filter Attribute Optional list of Attribute objects used for filtering which records to select. Each Attribute object represents a column name and the desired value the records need to have in that column in order to be selected. All other records are filtered from the result set. Providing a filter prevents an operation from being carried out on all records with the same key in a dataset defined with non-unique keys, e.g. when updating a specific order when order history is stored with email address as keys. optional

RelatedDataRecord

Available in version v4+

Object that contains a Related Data record.

Properties

Name Type Description Constraints
datasetName String Name of the related data set. All related data records reside within a data set identified by a unique name. required
key String Key defining which record(s) to select from the related data set. required
data Attribute[] Data values to be written to one or more related data records by providing pairs of column names and values to be written into each column. The Attribute type is also used to transmit other name and value pairs, for example, profile attributes. required

RelatedDataRecordAndFilter

Available in version v4+

Object containing a related data record and a filter describing which records to select. Used to update rows in a related data set. If filter attributes are provided, only records with matching values for all column and value pairs are selected.

Properties

Name Type Description Constraints
datasetName String Name of the related data set in which records will be updated. All related data records reside within a data set identified by a unique name. required
key String Key defining which record(s) to select from the related data set. required
data Attribute[] A list of Attribute objects describing data values to be written to one or more related data records. Each Attribute object represents a column name and the desired value to be written into that column. Only the subset of columns to be updated needs to be provided. Columns for provided column names not exiting in the dataset will not be created on the fly. required
filter Attribute[] Optional list of Attribute objects used for filtering which related data records to select. Each Attribute object represents a column name and the desired value the records need to have in that column in order to be selected. All other records are filtered from the result set. Providing a filter is used to prevent an operation to be carried out on all records with the same key in a dataset defined with non-unique keys, e.g. when updating a specific order when order history is stored with email address as keys. optional

Available in version v7+

An object that contains the ID of the process initiated by the request and the processing type. The result of an time-based automation that was executed using the runOnce request. When there is no value for the processID property, there were no system processes involved in the execution.

Properties

Name Type Description Constraints
processId Long The ID of the process initiated by the request. optional
processingType ProcessingType The type of processing use to execute the process. required

SubscriptionMode

Available in version v2+

Defines the subscription method used to add a contact to a group.

Enumeration Values

Value Description
CONFIRMED_OPT_IN New contacts receive a welcome message via email when they are added to the group. Despite the label used for this value, the contact does not need to confirm the subscription. A single opt-in subscription.
DOUBLE_OPT_IN New contacts receive an invitation to join the group via email. The contact must accept the invitation before they are added to the group. A double opt-in subscription.
OPT_IN New contacts are added to the group without notification.

SystemUser Type

Available in version v8+

This object represents a system user who will be created/updated in system.

Properties

Name Type Description Constraints
id Long All system users have a unique ID within the system. Not used in create method. optional
type String Defines type of a system user. required
email String All system users in the system must have an email address. The email address must be unique in the system. required maxLength:128
firstName String FirstName of a system user. required maxLength:49
lastName String LastName of a system user. required maxLength:49
language String ISO-639 code for a language of a system user. required
timeZone String The time zone of the system user. required
messagingRole String Messaging role of a system user. required
expiryDate String Expiration date of a system user. required
externalId String External ID of a system user. The external ID must be unique in the system. required maxLength:99
lastLoginDate String Last login date to system of a system user. Not used in create/update method. optional

User Type

This object represents a single system user or contact. Accounts for system users and contacts were previously managed in the same data tables in Mapp Engage. You can still use this type definition to work with system user and contact records.

Properties

Name Type Description Constraints
id Long All system users and contacts have a unique ID within the system. required
email String All system users and contacts in the system must have an email address. The email address must be unique in the system. required maxLength:128 minLength:5
mobileNumber String A system user or contact can have a mobile number. The mobile number must be unique in the system. required
identifier String Optionally, a contact may have an identifier generated by an external system. required

REST API

REQUEST

URL

Headers

Body (POST method only)

Test control XML

RESPONSE

Code Message Action
HTTP 204 Success Not necessary. Everything went well.
HTTP 401 Unauthorized Add authorization header.
HTTP 403 Forbidden Validate user type, username and password.
HTTP 404 Page Not found Provide valid URL. Make sure no "\\" in URL.
HTTP 406 Not Acceptable Validate "Accept" header.
HTTP 415 Unsupported Media Type Validate "Content-Type" header.
HTTP 417 Account expired Try resetting password or Contact Support
HTTP 500 Database Access Limit Exceeded Reduce the load to ~10 tps or Contact Support
HTTP 500 Internal Server Error Contact Support

WADL

Web Application Description Language (WADL) is a machine-readable description of all REST calls

https://webdomain/api/rest/v7?wadl

/async

The async domain contains methods relevant to the Mapp Response Queue which allows you to stream events via the Mapp Engage API.

This requires some pre-configuration to be done by Mapp first.

If you would like to use this, please get in touch with your Mapp Account Representative.

Available from
v1

/submit

Description

Adds new element to the topic

Request path

POST [REST URL]/async/submit

Query Parameters

Parameter Type Description
topic String -

Request Body Type

list of Attribute arguments

/poll

Description

Retrieves a certain amount of results for a topic from the result queue. The result items that were retrieved are deleted from the server once they have been transmitted.

Request path

GET [REST URL]/async/poll

Query Parameters

Parameter Type Description
topic String -
limit Integer -

/pollByIndex

Description

Retrieves a specific number of results for a topic from the result queue, starting from the given offset.

Available from
v9

Request path

GET [REST URL]/async/pollByIndex

Query Parameters

Parameter Type Description
topic String Name of the topic.
index Long Number of the offset to start from.
limit Integer Number of result items to retrieve.

/getSubmitCount

Description

Returns the number of job results that were submitted for a certain topic.

Request path

GET [REST URL]/async/getSubmitCount

Query Parameters

Parameter Type Description
topic String -

/getPollCount

Description

Returns the number of result items that were retrieved/polled for a certain topic.

Request path

GET [REST URL]/async/getPollCount

Query Parameters

Parameter Type Description
topic String -

/getRemainingCapacity

Description

Returns the remaining capacity for a certain topic. Each result item is saved and assigned to a topic. Each topic has a limited amount of storage capacity. Submitting new results is blocked once the limit for the topic has been reached. Whenever the asyncPoll() call is executed, the transmitted data is deleted and new space is made available.

Request path

GET [REST URL]/async/getRemainingCapacity

Query Parameters

Parameter Type Description
topic String -

/getNextIndex

Description

Returns the next index for the given topic relative to the last call to "async/poll". This call is useful when switching from calling "async/poll" (with a managed index) to calling "async/pollByIndex" where the index is managed by the user. The result value can be used as value for parameter "index" in a follow up call to "async/pollByIndex".

Available from
v9

Request path

GET [REST URL]/async/getNextIndex

Query Parameters

Parameter Type Description
topic String -

/automation

/find

Description

Returns information about one or more time-based / event-based automations.

Available from
v7

Request path

POST [REST URL]/automation/find

Request Body Type

AutomationFilter

/getDetails

Description

Returns detailed information for an time-based / event-based automation.

Available from
v7

Request path

GET [REST URL]/automation/getDetails

Query Parameters

Parameter Type Description
automationId Long ID of the automation
automationType automationType ID of the automation

/runOnce

Description

Performs one execution of the specified time-based automation. Execution takes place immediately.
Run once does not change the status or schedule of the automation.
You can only use this method to run an existing time-based automation.

Available from
v7

Request path

GET [REST URL]/automation/runOnce

Query Parameters

Parameter Type Description
automationId Long ID of the automation

/blacklist

The blacklist domain contains methods that are used to manage system and group blacklists.
All methods return Object Already Exists Exception

Available from
v4

/createGroupEntries

Example body

[{
"type": "EMAIL",
 "pattern": "test@test.com"
}]

Example response

[{
    "success": true,
    "id": "test@test.com",
    "errorActor": null,
    "errorCode": null,
    "errorMessage": null
}]

Description

Adds new entries (email, emailDomain, mobileNumber, or faxNumber) to the group blacklist.

Request path

POST [REST URL]/blacklist/createGroupEntries

Query Parameters

Parameter Type Description
groupId Long ID of the group

Request Body Type

list of BlacklistEntries

/createGroupEntriesHashed

Example body

 [
    {
        "type": "EMAIL",
        "pattern":"6a4b6cb2045fd55f706eaebd6ab5d4f7"
    },
    {
        "type": "EMAIL",
        "pattern":"0dbfb46341bc3d195db23e4015b20847"
    }
]

Description

Adds new hashed email entries to the group blacklist. Entries can be hashed using md5hashgenerator

Available from
v9

Request path

POST [REST URL]/blacklist/createGroupEntriesHashed

Query Parameters

Parameter Type Description
groupId Long The group ID.
hashed String hashing algorithm used to hash given entries. Either 'clear-text' or 'md5'

/deleteGroupEntries

Example body

[{
"type": "EMAIL",
 "pattern": "test@test.com"
}]

Example response

[{
    "success": true,
    "id": "test@test.com",
    "errorActor": null,
    "errorCode": null,
    "errorMessage": null
}]

Description

Deletes entries (email, email domain, mobile number, or fax number) from the group blacklist.

Request path

POST [REST URL]/blacklist/deleteGroupEntries

Query Parameters

Parameter Type Description
groupId Long ID of the group

Request Body Type

list of BlacklistEntries

/createSystemEntries

Example body

[{
"type": "EMAIL",
 "pattern": "test@test.com"
}]

Example response

[{
    "success": true,
    "id": "test@test.com",
    "errorActor": null,
    "errorCode": null,
    "errorMessage": null
}]

Description

Adds new entries (email, email domain, mobile number, or fax number) to the system blacklist.

Request path

POST [REST URL]/blacklist/createSystemEntries

Query Parameters

Parameter Type Description
groupId Long ID of the group

Request Body Type

list of BlacklistEntries

/createSystemEntriesHashed

Example body

 [
    {
        "type": "EMAIL",
        "pattern":"6a4b6cb2045fd55f706eaebd6ab5d4f7"
    },
    {
        "type": "EMAIL",
        "pattern":"0dbfb46341bc3d195db23e4015b20847"
    }
]

Description

Adds new entries (email, email domain, mobile number or mobile app alias) to the system blacklist. Entries can be hashed using md5hashgenerator

Available from
v9

Request path

POST [REST URL]/blacklist/createSystemEntriesHashed

Query Parameters

Parameter Type Description
hashed String hashing algorithm used to hash given entries. Either 'clear-text' or 'md5'

/deleteSystemEntries

Example body

[{
"type": "EMAIL",
 "pattern": "test@test.com"
}]

Example response

[{
    "success": true,
    "id": "test@test.com",
    "errorActor": null,
    "errorCode": null,
    "errorMessage": null
}]

Description

Deletes entries (email, email domain, mobile number, or fax number) from the system blacklist.

Request path

POST [REST URL]/blacklist/deleteSystemEntries

Request Body Type

list of BlacklistEntries

/cms

The cms domain contains methods you use to manage messages stored in the Content Management System (CMS)

Available from
v3

/getMessageDefinitions

Description

Returns a list of all CMS messages that are saved in the system.
Every CMS message contains detailed information that identifies the message and the template that was used for creation.

Request path

GET [REST URL]/cms/getMessageDefinitions

Query Parameters

Parameter Type Description

/getMimeMessage

Description

Returns the specified CMS message in MIME message format.

Request path

GET [REST URL]/cms/getMimeMessage

Query Parameters

Parameter Type Description
cmsMessageId Long The ID of the CMS message to be returned.

/contact

The contact domain contains methods for working with contact profiles.

Available from
v7

/create

Example bodies

{
    "emailAddress" : "testuser@test.com"
}
{
    "emailAddress": "testuser6@test.com",
    "attributes": [{
        "name": "user.CustomAttribute.city",
        "value": "dublin"
    }]
}

Description

Creates a new contact using the information provided in the contact object.

Check Contact for possible identifiers in the body.

Request path

POST [REST URL]/contact/create

/get

Example bodies

{
    "type":"EMAIL",
    "value":"test@test.com"
}
{
    "type":"MOBILE",
    "value":"48505606707"
}

Description

Returns a contact object that matches the specified identifier.

Request path

POST [REST URL]/contact/get

Query Parameters

Parameter Type Description
identifier ContactIdentifier The contact identifier.

/update

Example bodies

{
    "emailAddress": "testuser5@test.com",
    "attributes": [{
        "name": "user.CustomAttribute.city",
        "value": "dublin"
    }]
}
{
  "emailAddress": "testuser@test.com",
  "mobileNumber": "48505606707"
}

Description

Updates the profile data of an existing contact.

Request path

POST [REST URL]/contact/update

Query Parameters

Parameter Type Description
identifierType ContactIdentifiertype The type of identifier to be used for the contact update.

/delete

Example body

{
    "type":"EMAIL",
    "value":"test@test.com"
}

Description

Deletes the contact identified by the specified identifier.

Request path

POST [REST URL]/contact/delete

Query Parameters

Parameter Type Description
recipientEmail String recipient email for receiving notification

/anonymize

Description

Anonymizes contact PII data based on GDPR regulations.

Available from
v9

Request path

GET [REST URL]/contact/anonymize

Query Parameters

Parameter Type Description
contactId Long The user ID of the contact to perform anonymization for.
notificationRecipient String Active system user witch is going to be used for permission checks, and will get system message .

/export

Description

Pushes asynchronyous GDPR contact export, which will send system message with the link in the end

Available from
v9

Request path

GET [REST URL]/contact/export

Query Parameters

Parameter Type Description
contactId Long The user ID of the contact to perform export for.
notificationRecipient String Active system user which is going to be used for permission checks, and will get system message.

/user

The user domain contains methods for contact management.

/create

Empty body (mandatory)

[]

Example body with attributes

[
{"name" : "user.lastname", "value" : "Smith"},
{"name" : "DateOfBirth", "value" : "1950-05-05"}
]

Example response

{
   "id": 17,
   "email": "test@test.com",
   "mobileNumber": null,
   "identifier": null
}

Description

Creates a new user. Requires either an email or a mobile number since these fields are used as the unique user identifier in the system.

Available from
v1

Request path

POST [REST URL]/user/create

Query Parameters

Parameter Type Description
email String Email for the user
mobileNumber String MobileNumber Mobile number of the user

Request Body Type

list of Attributes

/get

Example response

{
    "id": 18067305231,
    "email": "test@test.com",
    "mobileNumber": null,
    "identifier": null
}

Description

Returns the user identified by the specified user ID.

Available from
v1

Request path

GET [REST URL]/user/get

Query Parameters

Parameter Type Description
userId Long ID of the user

/getByEmail

Example response

{
    "id": 18067305231,
    "email": "test@test.com",
    "mobileNumber": null,
    "identifier": null
}

Description

Returns the user identified by the specified email address.

Available from
v1

Request path

GET [REST URL]/user/getByEmail

Query Parameters

Parameter Type Description
email String Email of the user

/getByIdentifier

Example response

{
    "id": 18067305231,
    "email": "test@test.com",
    "mobileNumber": null,
    "identifier": null
}

Description

Returns the user identified by the specified identifier. If there are more users with the same identifier, the response refers to the last user where this identifier has been assigned.

Available from
v4

Request path

GET [REST URL]/user/getByIdentifier

Query Parameters

Parameter Type Description
identifier String Identifier identifier of the user

/getByMobileNumber

Example response

{
    "id": 18067305231,
    "email": "test@test.com",
    "mobileNumber": null,
    "identifier": null
}

Description

Returns the user identified by the specified identifier. If there are more users with the same identifier, the response refers to the last user where this identifier has been assigned.

Available from
v7

Request path

GET [REST URL]/user/getByMobileNumber

Query Parameters

Parameter Type Description
mobileNumber String mobileNumber mobileNumber of the user

/getProfile

Example response

[{
    "name": "user.ISOLanguageCode",
    "value": "it" }, {
    "name": "user.Email",
    "value": "test@test.com" }, {
    "name": "user.EmailDomain",
    "value": "test.de" }, {
    "name": "user.LastName",
    "value": "Cloned" }, {
    "name": "user.FirstName",
    "value": "Test" }, {
    "name": "user.ISOCountryCode",
    "value": "IT" }
}]

Description

Returns the user's profile (only attributes with a value are shown). The profile consists of attributes that contain user data. All attributes can be accessed system-wide.

Available from
v1

Request path

GET [REST URL]/user/getProfile

Query Parameters

Parameter Type Description
userId String userId ID of the user

/getProfileByEmail

Example response

[{
    "name": "user.ISOLanguageCode",
    "value": "it" }, {
    "name": "user.Email",
    "value": "test@test.com" }, {
    "name": "user.EmailDomain",
    "value": "test.de" }, {
    "name": "user.LastName",
    "value": "Cloned" }, {
    "name": "user.FirstName",
    "value": "Test" }, {
    "name": "user.ISOCountryCode",
    "value": "IT" }
}]

Description

Returns the user's profile, this is identified by the email address.

Available from
v2

Request path

GET [REST URL]/user/getProfileByEmail

Query Parameters

Parameter Type Description
email String Email of the user

/getProfileByMobileNumber

Example response

[{
    "name": "user.ISOLanguageCode",
    "value": "it" }, {
    "name": "user.Email",
    "value": "test@test.com" }, {
    "name": "user.EmailDomain",
    "value": "test.de" }, {
    "name": "user.LastName",
    "value": "Cloned" }, {
    "name": "user.FirstName",
    "value": "Test" }, {
    "name": "user.ISOCountryCode",
    "value": "IT" }
}]

Description

Returns the user's profile, identified by the mobile number

Available from
v2

Request path

GET [REST URL]/user/getProfileByMobileNumber

Query Parameters

Parameter Type Description
mobileNumber String mobileNumber mobile number of the user

/updateProfile

Example body

[{
"name" : "user.firstname",
"value" : "FirstName"
},
{
"name" : "user.lastname",
"value" : "LastName"
}]

Example response

HTTP 204

Description

Updates the user's profile (data stored in the attributes) with the information saved in the attribute list. This method only changes the information that is explicitly mentioned. Attributes that are not mentioned are not changed (there is also a replace method to change the entire profile of a user and to delete attribute values if the attribute is not mentioned for the user).

Available from
v1

Request path

POST [REST URL]/user/updateProfile

Query Parameters

Parameter Type Description
userId Long ID of the user

Request Body Type

list of Attributes

/updateProfileByEmail

Example body

[{
"name" : "user.firstname",
"value" : "FirstName"
},
{
"name" : "user.lastname",
"value" : "LastName"
}]

Example response

HTTP 204

Description

Updates a user identified via email. Updates all data stored in the attributes with the information saved in the attribute list. This method only changes the information that is explicitly mentioned. Attributes that are not mentioned are not changed (there is also a replace method to change the entire profile of a user and to delete attribute values if the attribute is not mentioned for the user).

Available from
v2

Request path

POST [REST URL]/user/updateProfileByEmail

Query Parameters

Parameter Type Description
email String Email of the user

Request Body Type

list of Attributes

/updateProfileByMobileNumber

Example body

[{
"name" : "user.firstname",
"value" : "FirstName"
},
{
"name" : "user.lastname",
"value" : "LastName"
}]

Example response

HTTP 204

Description

Updates a user identified via mobile number. Updates all data stored in the attributes with the information saved in the attribute list. This method only changes the information that is explicitly mentioned. Attributes that are not mentioned are not changed (there is also a replace method to change the entire profile of a user and to delete attribute values if the attribute is not mentioned for the user).

Available from
v7

Request path

POST [REST URL]/user/updateProfileByMobileNumber

Query Parameters

Parameter Type Description
mobileNumber String mobile number of the user

Request Body Type

list of Attributes

/replaceProfile

Example body

[{
"name" : "user.firstname",
"value" : "FirstName"
},
{
"name" : "user.lastname",
"value" : "LastName"
}]

Example response

HTTP 204

Description

Replaces all attribute values for a specific user. All attribute values that are transmitted with the method are added and replace any existing values. Any currently existing attribute values that are not found in the API call are deleted (except for Member attributes).

Available from
v2

Request path

POST [REST URL]/user/replaceProfile

Query Parameters

Parameter Type Description
userId Long ID of the user

Request Body Type

list of Attributes

/replaceProfileByEmail

Example body

[{
"name" : "user.firstname",
"value" : "FirstName"
},
{
"name" : "user.lastname",
"value" : "LastName"
}]

Example response

HTTP 204

Description

Replaces all attribute values for a user identified via email. All attribute values that are transmitted with the method are added and replace any existing values. Any currently existing attribute values that are not found in the API call are deleted (except for Member attributes).

Available from
v2

Request path

POST [REST URL]/user/replaceProfileByEmail

Query Parameters

Parameter Type Description
email String Email of the user

Request Body Type

list of Attributes

/replaceProfileByMobileNumber

Example body

[{
"name" : "user.firstname",
"value" : "FirstName"
},
{
"name" : "user.lastname",
"value" : "LastName"
}]

Example response

HTTP 204

Description

Replaces all attribute values for a user identified via mobile number. All attribute values that are transmitted with the method are added and replace any existing values. Any currently existing attribute values that are not found in the API call are deleted (except for Member attributes).

Available from
v2

Request path

POST [REST URL]/user/replaceProfileByMobileNumber

Query Parameters

Parameter Type Description
mobileNumber String mobile number of the user

Request Body Type

list of Attributes

/delete

Example response

HTTP 204

Description

Deletes the user identified by the specified ID.

Available from
v1

Request path

DELETE [REST URL]/user/delete

Query Parameters

Parameter Type Description
userId Long ID of the user
recipientEmail String recipient email for receiving notification

/deleteByEmail

Example response

HTTP 204

Description

Deletes the user identified by the email address.

Available from
v1

Request path

DELETE [REST URL]/user/deleteByEmail

Query Parameters

Parameter Type Description
email String Email of the user
recipientEmail String recipient email for receiving notification

/deleteByMobileNumber

Example response

HTTP 204

Description

Deletes the user identified by the mobile number.

Available from
v7

Request path

DELETE [REST URL]/user/deleteByMobileNumber

Query Parameters

Parameter Type Description
mobileNumber String mobile number of the user
recipientEmail String recipient email for receiving notification

/getMessageHistory

Example response

[
  {
    "messageID": [354476555],
    "externalTransactionId": {},
    "externalMessageID": {},
    "messageName": ["Test"],
    "messageSubject": ["Test"],
    "groupId": [353599854],
    "groupName": ["Test"],
    "groupEmail": ["test@test.com"],
    "sendDate": [1491216661590],
    "messageType": ["single"],
    "status": ["Sent"],
    "clicked": [true],
    "opened": [false]
  }
]

Description

Retrieves the message history for a recipient for a set time frame.
The maximum time frame is 31 days. The maximum number of messages returned is 5000. sendDate is presented as Datetime

Available from
v6

Request path

GET [REST URL]/user/getMessageHistory

Query Parameters

Parameter Type Description
userId Long Start date of time frame in ISO 8601 date time format.
fromDate String Start date of time frame in ISO 8601 date time format.
toDate String End date of time frame in ISO 8601 date time format.

/content

The content domain contains methods that are used to manage elements in the Content Store

Available from
v1

/store

Example body

{
  "name": "twitter_logo.png",
  "contentType": "image/png",
  "content": "iVBORw0KGgoAAAANSUhEUgAAABUAAAARCAYAAAAyhueAAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAASFJREFUeNqslM0NgkAQhRdiAdiAgQ6468EO1INntQOpwFABdqBe9aAdiIl3twS1AbECfJPMkhVZftSXjJPsDh87z2WsNE1Fb3d3z+POVVQIdQ5ShJhqywdEgEgQQ1qwutsbFT4QM4DXFcALwi3YJqDD2bPx4/PGCg/OSw46NwAFA0nU7d7ObUYAHxF+wYMDUU8jiz19aG9TihEbyuS3oSavNmoT5Sm1thA/CkCLsvJ0In5XdnsIKkv+gCaSGZQ8QF7+AXrST0peBH8Ar9+grKfuS1Mgd/wBjb/0lmChvmBr14GgMy5qoiA/N+zcPSNfPN2fCoVF86KlDQxqvc93tl8DaBxALcAi/qLqKuaWpalAffsOz8iB4ZRSzYIymNJLgAEAYsJkJOLW//gAAAAASUVORK5CYII="
}

Example response

{
    "contentId": "contentstore:/16598/CONTENTSTORE/660624976?contentStoreId=660624976",
    "reference": "660624976"
}

Error response

{
  "errorActor": "CLIENT",
  "errorCode": "MAXIMUM_SIZE_EXCEEDED",
  "message": "Selected image exceeds the allowed file size of 512000 bytes. Actual size (estimated): 519107 bytes. Please choose another image.",
  "parameterName": null,
  "propertyName": null,
  "value": null
}

Description

Stores a file in the Content Store. Enter name, contentType and base64-encoded content.
File can be encoded using base64encode.org
File size limit is 512kB

Request path

POST [REST URL]/content/store

Request Body Type

Attachment content

/delete

Example response

HTTP 204

Description

Deletes a content element in the Content Store.

Request path

DELETE [REST URL]/content/delete

Query Parameters

Parameter Type Description
contentId String -

/draftmessage

Available from
v6

/create

Example body

{
    "id": 18060600,
    "name": "Test Draft Message",
    "externalId": null,
    "messageCategoryId": null,
    "message":
    {
        "subject": "This is draft test",
        "emailBodyText": null,
        "emailBodyHtml": "Test",
        "smsText": null,
        "faxText": null,
        "emailHeaders":
        [
        ],
        "attachments":
        [
        ],
        "attachmentReferences": null,
        "encoding": "ISO-8859-1",
        "encodingSMS": "ISO-8859-1",
        "imageHandlingMode": "none"
    }
}

Example response

{
    "id": 18060677,
    "name": "Test Draft Message 002",
    "externalId": null,
    "messageCategoryId": null,
    "message": {
        "subject": "This is draft test 002",
        "emailBodyText": null,
        "emailBodyHtml": "Test 002",
        "smsText": null,
        "faxText": null,
        "emailHeaders": [],
        "attachments": [],
        "attachmentReferences": null,
        "encoding": "ISO-8859-1",
        "encodingSMS": "ISO-8859-1",
        "imageHandlingMode": "none"
    }
}

Description

Creates a new message as a draft.

Request path

POST [REST URL]/draftmessage/create

Request Body Type

DraftMessage

/get

Example response

{
    "id": 18060600,
    "name": "Test",
    "externalId": null,
    "messageCategoryId": null,
    "message": {
        "subject": "Test",
        "emailBodyText": null,
        "emailBodyHtml": "<html><body>Test</body></html>",
        "smsText": null,
        "faxText": null,
        "emailHeaders": [],
        "attachments": [],
        "attachmentReferences": null,
        "encoding": "ISO-8859-1",
        "encodingSMS": "ISO-8859-1",
        "imageHandlingMode": "none"
    }
}

Description

Returns a draft message identified by the specified draft message ID.

Request path

GET [REST URL]draftmessage/get

Query Parameters

Parameter Type Description
draftMessageId Long -

Response Body Type

Draftmessagesummary

/update

Example body

{
    "id": 18060600,
    "name": "Test Draft Message",
    "externalId": null,
    "messageCategoryId": null,
    "message":
    {
        "subject": "This is draft test",
        "emailBodyText": null,
        "emailBodyHtml": "Test",
        "smsText": null,
        "faxText": null,
        "emailHeaders":
        [
        ],
        "attachments":
        [
        ],
        "attachmentReferences": null,
        "encoding": "ISO-8859-1",
        "encodingSMS": "ISO-8859-1",
        "imageHandlingMode": "none"
    }
}

Example response

HTTP 204

Description

Updates a message draft.

Request path

POST [REST URL]/draftmessage/update

Request Body Type

DraftMessage

/delete

Example response

HTTP 204

Description

Deletes a draft message identified by the specified draft message ID.

Request path

DELETE [REST URL]draftmessage/delete

Query Parameters

Parameter Type Description
draftMessageId Long ID of the draft message

/find

Description

Finds draft messages specified by a draft message filter.

Available from
v7

Request path

POST [REST URL]draftmessage/find

Query Parameters

Parameter Type Description
None - -

Request Body Type

draftMessageFilter

/saveAsPreparedMessage

Description

Saves draft message as prepared message. The channel ID is available at "Information" panel for each channel, at "Administration > Channels".

Available from
v9

Request path

GET [REST URL]draftmessage/saveAsPreparedMessage

Query Parameters

Parameter Type Description
draftMessageId Long The draft message to be used in creating the prepared message
groupId Long The id of the group to perform sendout on
channelId Long The channel id associated with the message

/group

The group domain contains all group-related methods.

/create

Successful response - groupId

{
1900328197
}

Description

Create a new group. All data is passed through parameters. Body not required.
For domain, check Mapp Engage > Create > New Group
Returns Object Already Exists Exception

Available from
v1

Request path

POST [REST URL]/group/create

Query Parameters

Parameter Type Description Constraint Example value
name String The name of the group. required groupa
email String The email address of group. required, unique groupa@mydomain
description String The description of group. optional
groupCategoryId String The group category optional
isoCountryCode String The ISO country code required GB
isoLanguageCode String The ISO language code required en
isSuperGroup Boolean Should be a supergroup required false

/clone

Example body

{
"name" : "Group Name",
"description" : "Description of the group",
"email" : "group@test.com",
"includePreparedMessages" : "true",
"includeTestUsers" : "false"
}

Example response

{
  "id": 1800150437,
  "name": "Group Name",
  "description": "Description of the group",
  "email": "group@test.com"
}

Description

Creates a clone of a group that already exists in the system.
Most of the sendout options and delivery settings are identical for the original and the clone.
Group members are not copied.

Request path

POST [REST URL]/group/clone

Query Parameters

Parameter Type Description
groupId Long ID of the group to be cloned

Request Body Type

GroupCloneOptions options

/get

Example response

{
    "id": 1800150437,
    "name": "Group Name",
    "description": "Description of the group",
    "email": "group@test.com"
}

Description

Returns the group object of the specified group. The group is identified by group ID.

Request path

GET [REST URL]/group/get

Query Parameters

Parameter Type Description
groupId Long ID of the group to be requested

/findIdsByAttributes

Example body

[{
"name" : " GroupAttributeName ",
"value" : "12345"
}]

Example response

[1800123829]

Description

Returns a list of group IDs for all groups in the system that use the specified group attributes.
Group attributes are only available in the group context and consist of a unique name and a value.
Please note that attributes like Group Name or Email cannot be used here.

Request path

POST [REST URL]/group/findIdsByAttributes

Request Body Type

list of Attributes

/setAttributes

Example body

[{
"name" : "GroupAttributeName",
"value" : "12345"
}]

Example response

[{
    "name": "Test",
    "value": "12345" }, {
    "name": "TestRest",
    "value": "12345"
}]

Description

Creates and updates the group attributes. Existing attributes are overwritten.

Request path

POST [REST URL]/group/setAttributes

Request Body Type

list of Attributes

/getAttributes

Example response

[{
    "name": "Test",
    "value": "12345" }, {
    "name": "TestRest",
    "value": "12345"
}]

Description

Provides a list of all group attributes.

Request path

GET [REST URL]/group/getAttributes

Query Parameters

Parameter Type Description
groupId Long ID of the group for which we request the parameters

/overrideGroupSettings

Example response

HTTP 204

Description

Overwrites the existing group settings with a new template.
The list of templates can be requested with getallgroupsettingstemplates call
The mechanism for using GroupSettingTemplates is only available in a special configuration.

Content-Type

application/x-www-form-urlencoded

Request path

POST [REST URL]/group/overrideGroupSettings

Query Parameters

Parameter Type Description
groupId Long ID of the group for which we change the settings
settingsId Long ID of the configuration template

/getPreparedMessages

Example response

[1800197358]

Description

Returns all of the prepared messages for a specific group.

Request path

GET [REST URL]/group/getPreparedMessages

Query Parameters

Parameter Type Description
groupId Long ID of the group for which we request the messages

/getAllGroupSettingsTemplates

Example response

[
  {
    "id": [1002],
    "name": ["Group Template 1"]
  },
  {
    "id": [1003],
    "name": ["Group Template 2"]
  }
]

Description

Gets all GroupSettingsTemplates that are defined in the system.
GroupSettingTemplates predefine several settings in a template and can be applied using overridegroupsettings call.
The mechanism for using GroupSettingTemplates is only available in a special configuration.

Request path

GET [REST URL]/group/getAllGroupSettingsTemplates

/archive

Example body

["1800123820", "1800146953"]

Example response

[{
    "entityKey": "1800123820",
    "code": null,
    "message": null }, {
    "entityKey": "1800146953",
    "code": null,
    "message": null
}]

Description

Archive a list of groups and any dependent subgroups. Other dependent objects, such as triggers and scheduled tasks, are not archived.

Request path

POST [REST URL]/group/archive

Query Parameters

Parameter Type Description
None - -

Request Body Type

list of Long groupIds

/activate

Example body

["1800123820", "1800146953"]

Example response

[{
    "entityKey": "1800123820",
    "code": null,
    "message": null }, {
    "entityKey": "1800146953",
    "code": null,
    "message": null
}]

Description

Activates archived groups.

Request path

POST [REST URL]/group/activate

Query Parameters

Parameter Type Description
None - -

Request Body Type

list of Long groupIds

/landingpage

Available from
v2

The landingpage domain contains methods that can be used to manage landing pages

/find

Example body

Example response

HTTP 204

Description

Request path

POST [REST URL]/landingpage/find

Query Parameters

Parameter Type Description
None - -

Request Body Type

LandingpageFilter

/getStatus

Example response

PUBLISHED

Description

Returns the publishing status of a landing page. Because these pages are usually associated with the lifetime of a particular email campaign, they may have a differing publishing status. Previously published pages that have become inactive because they are no longer valid are sometimes redirected to another default page. Possible states are:

Request path

GET [REST URL]/landingpage/getStatus

Query Parameters

Parameter Type Description
landingpageId Long landingpageId ID of the landing page

/delete

Example response

HTTP 204

Description

Deletes the landing page with the specified landing page ID. It works only if the landing page is inactive.

Request path

DELETE [REST URL]/landingpage/delete

Query Parameters

Parameter Type Description
landingpageId Long landingpageId ID of the landing page

/deleteMany

Example body

["626","627"]

Example response

HTTP 204

Description

Deletes the landing pages with the specified landing page IDs. It works only if landing pages are inactive.

Request path

POST [REST URL]/landingpage/deleteMany

Query Parameters

Parameter Type Description
None - -

Request Body Type

list of Long landingpageIds

/membership

The membership domain contains methods that are used to manage group memberships.

/subscribe

Example response

HTTP 204

Description

Subscribes a user to a group. With this call, the subscription is handled as a self subscription. Depending on the subscription mode used, the user may have to confirm the subscription (opt in) and may be notified of the successful subscription.

Available from
v2

Request path

POST [REST URL]/membership/subscribe

Query Parameters

Parameter Type Description
userId Long ID of the user
groupId Long ID of the group
subscriptionMode SubscriptionMode
SubscriptionMode Description
CONFIRMED_OPT_IN New contacts receive a welcome message via email when they are added to the group. The contact does not need to confirm the subscription. A single opt-in subscription.
DOUBLE_OPT_IN New contacts receive an invitation to join the group via email. The contact must accept the invitation before they are added to the group. A double opt-in subscription.
OPT_IN New contacts are added to the group without notification. OPT_IN is creating self-subscribers.

/subscribeByEmail

Example response

HTTP 204

Description

Subscribes a recipient to a group.
Recipient must exist in the system.

Available from
v2

Request path

POST [REST URL]/membership/subscribeByEmail

Query Parameters

Parameter Type Description
email String Email of the user
groupId Long ID of the group
subscriptionMode SubscriptionMode
SubscriptionMode Description
CONFIRMED_OPT_IN New contacts receive a welcome message via email when they are added to the group. Despite the label used for this value, the contact does not need to confirm the subscription. A single opt-in subscription.
DOUBLE_OPT_IN New contacts receive an invitation to join the group via email. The contact must accept the invitation before they are added to the group. A double opt-in subscription.
OPT_IN New contacts are added to the group without notification.

/unsubscribe

Example response

HTTP 204

Description

Unsubscribes a user from a group. A notification is sent to the manager.

Available from
v2

Request path

POST [REST URL]/membership/unsubscribe

Query Parameters

Parameter Type Description
userId String ID of the user
groupId Long ID of the group

/unsubscribeFromMessage

Example response

HTTP 204

Description

Unsubscribes a user from a group. The unsubscription is associated with a specific message. Notification is sent to the group manager. Returns success only when the user is unsubscribed from the group and the unsubscription is associated with the specified message.

Available from
v5

Request path

POST [REST URL]/membership/unsubscribeFromMessage

Query Parameters

Parameter Type Description
userId String ID of the user
groupId Long ID of the group
messageId Long ID of the message

/unsubscribeByEmail

Example response

HTTP 204

Description

Unsubscribes a user from a group based on the email address. An unsubscribe confirmation email is sent to the user.

Available from
v5

Request path

POST [REST URL]/membership/unsubscribeByEmail

Query Parameters

Parameter Type Description
email String Email of the user
groupId Long ID of the group

/unsubscribeFromMessageByEmail

Example response

HTTP 204

Description

Unsubscribes a user from a group based on an email address. The unsubscription is associated with a specific message. An unsubscribe confirmation email is sent to the user. Returns success only when the user is unsubscribed from the group and the unsubscription is associated with the specified message.

Available from
v5

Request path

POST [REST URL]/membership/unsubscribeFromMessageByEmail

Query Parameters

Parameter Type Description
email String Email of the user
groupId Long ID of the group
messageId Long ID of the message

/create

Example response

{
    "userId": 18076325029,
    "groupId": 1800116178,
    "attributes": []
}

Description

Creates a new membership (meaning the user is subscribed to a group). This call differs from subscribe, in that notification is not sent.

Available from
v2

Request path

GET [REST URL]/membership/create

Query Parameters

Parameter Type Description
userId Long ID of the user
groupId Long ID of the group

/get

Example response

{
    "userId": 18223800009,
    "groupId": 1800190005,
    "attributes": [{
        "name": "member.bounceCounter",
        "value": "0"
    }, {
        "name": "member.type",
        "value": "normal"
    }, {
        "name": "member.readMode",
        "value": "mail"
    }, {
        "name": "member.creationDate",
        "value": "2015-07-21 16:10:30.0"
    }, {
        "name": "member.bounced",
        "value": "false"
    }, {
        "name": "member.role",
        "value": "member"
    }, {
        "name": "member.messageCounter",
        "value": "0"
    }, {
        "name": "member.systemWideDeactivated",
        "value": "false"
    }]
}

Description

Retrieves membership context of a user identified by the userId in a group identified by groupId.

Available from
v7

Request path

GET [REST URL]/membership/get

Query Parameters

Parameter Type Description
userId Long ID of the user
groupId Long ID of the group

/getByEmail

Example response

{
    "userId": 18223800009,
    "groupId": 1800190005,
    "attributes": [{
        "name": "member.bounceCounter",
        "value": "0"
    }, {
        "name": "member.type",
        "value": "normal"
    }, {
        "name": "member.readMode",
        "value": "mail"
    }, {
        "name": "member.creationDate",
        "value": "2015-07-21 16:10:30.0"
    }, {
        "name": "member.bounced",
        "value": "false"
    }, {
        "name": "member.role",
        "value": "member"
    }, {
        "name": "member.messageCounter",
        "value": "0"
    }, {
        "name": "member.systemWideDeactivated",
        "value": "false"
    }]
}

Description

Retrieves membership context of a user identified by email in a group identified by groupId.

Available from
v7

Request path

GET [REST URL]/membership/getByEmail

Query Parameters

Parameter Type Description
email String Email of the user
groupId Long ID of the group

/delete

Example response

{
    "userId": 18076325029,
    "groupId": 1800116178,
    "attributes": []
}

Description

Deletes an existing membership (meaning the user is unsubscribed from the group). This call differs from unsubscribe method in that the user is not notified about the unsubscription.

Available from
v2

Request path

DELETE [REST URL]/membership/delete

Query Parameters

Parameter Type Description
userId Long ID of the user
groupId Long ID of the group

/findAll

Example response

[{
    "userId": 18061450504,
    "groupId": 1800116178,
    "attributes": [] }, {
    "userId": 18061450504,
    "groupId": 1800138927,
    "attributes": []
}]

Description

Returns a list of membership objects, one membership object for each group in which the user is a member.

Available from
v2

Request path

GET [REST URL]/membership/findAll

Query Parameters

Parameter Type Description
userId Long ID of the user

/findAllByEmail

Example response

[{
    "userId": 18061450504,
    "groupId": 1800116178,
    "attributes": [] }, {
    "userId": 18061450504,
    "groupId": 1800138927,
    "attributes": []
}]

Description

Returns a list of membership objects for the user. One membership object for each group in which the user is a member. The user is identified by the email.

Available from
v2

Request path

GET [REST URL]/membership/findAllByEmail

Query Parameters

Parameter Type Description
email String Email of the user

/getAttributes

Example response

[{
    "name": "attribute1",
    "value": "0001" }, {
    "name": "attribute2",
    "value": "0002"
}]

Description

Returns a collection of member attributes for a user within the specified group.
Member attributes are used to save information for an individual user, but in the context of a specific group.
A member attribute contains a specific value for each recipient.

Available from
v2

Request path

GET [REST URL]/membership/getAttributes

Query Parameters

Parameter Type Description
userId Long ID of the user
groupId Long ID of the group

/getAttributesByEmail

Example response

[{
    "name": "attribute1",
    "value": "0001" }, {
    "name": "attribute2",
    "value": "0002"
}]

Description

Returns a collection of member attributes for a user within the specified group.
Member attributes are used to save information for an individual user, but in the context of a specific group.
A member attribute contains a specific value for each recipient. The user is identified by the email.

Available from
v2

Request path

GET [REST URL]/membership/getAttributesByEmail

Query Parameters

Parameter Type Description
email String Email of the user
groupId Long ID of the group

/updateAttributes

Example body

[{
"name" : "attribute1",
"value" : "0001"
}]

Example response

HTTP 204

Description

Updates the member attributes for a user within a group if the user is a member of the group.
* If an attribute already exists, the value will be updated
* If not, a new attribute will be created.

Available from
v2

Request path

POST [REST URL]/membership/updateAttributes

Query Parameters

Parameter Type Description
userId Long ID of the user
groupId Long ID of the group

Request Body Type

list of Attributes

/replaceAttributes

Example body

[{
"name" : "attribute1",
"value" : "0001"
},
{
"name" : "attribute2",
"value" : "0002"
}]

Example response

HTTP 204

Description

Replaces the member attributes for a contact within a group where the contact is a member

Available from
v2

Request path

POST [REST URL]/membership/replaceAttributes

Query Parameters

Parameter Type Description
userId Long ID of the user
groupId Long ID of the group

Request Body Type

list of Attributes

/message

The message domain contains methods that can be used to manage email and SMS messages

/getHistorical

Description

Make sure "datastore_rmo" feature switch is on. In case of trouble contact Support.

Fetch a specific (group) message as it was sent to a defined contact, including resolved personalizations.

Available from
v8

Request path

GET [REST URL]/message/getHistorical

Query Parameters

Parameter Type Description
messageId Long ID of the (sent) message to fetch.
contactId Long ID of the contact for whom the message shall be personalized.

/sendSingle

Example bodies

{}
{
"parameters":
    [{"name" : "Parameter Name 1","value" : "Parameter Value 1"
    }, {"name" : "Parameter Name 2","value": "Parameter Value 2"
    }], "attachments": [{"name" : "image.png","contentType" : "application/png","content" : "BASE64ENCODING"}]
}

Example response

HTTP 204

Description

Sends a prepared message as a single message to a specific user. Prepared messages are saved copies of a message to which a group has been assigned. They are used to automatically send messages to single users (e.g. for birthday messages). Because sendouts are always managed via a group, this method automatically adds the user who receives the email to the group of the prepared message. Be aware that there are legal issues associated with contacting users. The system usually provides automated opt-in settings to satisfy these requirements. However, this particular method does not include an opt-in process. The method changes memberships without any additional processes. You may avoid legal complications if the user is already part of the group that is sending the single message (and has successfully completed an opt-in process) or if the group is only used for sending single messages.

Available from
v1

Request path

POST [REST URL]/message/sendSingle

Query Parameters

Parameter Type Description
recipientId Long ID of the user
messageId Long ID of the message

Request Body Type

MessageContent additionalContent

/sendTransactional

Example body

{
"parameters":
    [{"name" : "Parameter Name 1","value" : "Parameter Value 1"
    }, {"name" : "Parameter Name 2","value": "Parameter Value 2"
    }], "attachments": [{"name" : "twitter_logo.png","contentType" : "image/png",
  "content": "iVBORw0KGgoAAAANSUhEUgAAABUAAAARCAYAAAAyhueAAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAASFJREFUeNqslM0NgkAQhRdiAdiAgQ6468EO1INntQOpwFABdqBe9aAdiIl3twS1AbECfJPMkhVZftSXjJPsDh87z2WsNE1Fb3d3z+POVVQIdQ5ShJhqywdEgEgQQ1qwutsbFT4QM4DXFcALwi3YJqDD2bPx4/PGCg/OSw46NwAFA0nU7d7ObUYAHxF+wYMDUU8jiz19aG9TihEbyuS3oSavNmoT5Sm1thA/CkCLsvJ0In5XdnsIKkv+gCaSGZQ8QF7+AXrST0peBH8Ar9+grKfuS1Mgd/wBjb/0lmChvmBr14GgMy5qoiA/N+zcPSNfPN2fCoVF86KlDQxqvc93tl8DaBxALcAi/qLqKuaWpalAffsOz8iB4ZRSzYIymNJLgAEAYsJkJOLW//gAAAAASUVORK5CYII="}]
}

Successful response

HTTP 204

Description

Sends a prepared message as transactional message.
Attachments can be encoded using base64encode.org

Available from
v1

Request path

POST [REST URL]/message/sendTransactional

Query Parameters

Parameter Type Description
recipientId Long ID of the user
messageId Long ID of the message or prepared message
externalTransactionFormula String External transactional identifier

Request Body Type

MessageContent additionalContent

/sendTransactionalWithEventDetails

Example body

{
"parameters":
   [
       {"name" : "Parameter Name 1","value" : "Parameter Value 1"},
       {"name" : "Parameter Name 2","value": "Parameter Value 2"}
   ],
  "attachments": [
    {
      "name": "twitter_logo.png",
      "contentType": "image/png",
      "content": "iVBORw0KGgoAAAANSUhEUgAAABUAAAARCAYAAAAyhueAAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAASFJREFUeNqslM0NgkAQhRdiAdiAgQ6468EO1INntQOpwFABdqBe9aAdiIl3twS1AbECfJPMkhVZftSXjJPsDh87z2WsNE1Fb3d3z+POVVQIdQ5ShJhqywdEgEgQQ1qwutsbFT4QM4DXFcALwi3YJqDD2bPx4/PGCg/OSw46NwAFA0nU7d7ObUYAHxF+wYMDUU8jiz19aG9TihEbyuS3oSavNmoT5Sm1thA/CkCLsvJ0In5XdnsIKkv+gCaSGZQ8QF7+AXrST0peBH8Ar9+grKfuS1Mgd/wBjb/0lmChvmBr14GgMy5qoiA/N+zcPSNfPN2fCoVF86KlDQxqvc93tl8DaBxALcAi/qLqKuaWpalAffsOz8iB4ZRSzYIymNJLgAEAYsJkJOLW//gAAAAASUVORK5CYII="
    }
  ],
"eventDetails":
   [
      {
          "itemDetails":[
                {"name":"productName","value":"Chair C1"},
                {"name":"brandName", "value":"aaa aaa"}
              ]
      },
      {
          "itemDetails":[
                {"name":"productName","value":"Sofa S1"},
                {"name":"brandName", "value":"bbb bbb"}
              ]

      },
      {
          "itemDetails":[
               {"name":"productName","value":"Bed B1"},
                {"name":"brandName", "value":"cccc cccc"}
              ]

      }
   ]
}

Successful response

HTTP 204

Description

Sends a prepared message with additional attributes as transactional message.
Attachments can be encoded using base64encode.org

Available from
v12

Request path

POST [REST URL]/message/sendTransactionalWithEventDetails

Query Parameters

Parameter Type Description
recipientId Long ID of the user
messageId Long ID of the message or prepared message
externalTransactionFormula String External transactional identifier

Request Body Type

MessageContent additionalContent

/getUsedPersonalizations

Example response

["user.FirstName"]

Description

Returns the names of all user and group attributes that are referenced within the header and content area of a prepared message. The reference to the attributes is a personalization placeholder in the body of the message. All of these placeholders are replaced with individual user or message information during sendout. Be aware that this method does not return member attributes.

Available from
v1

Request path

GET [REST URL]/message/getUsedPersonalizations

Query Parameters

Parameter Type Description
messageId Long ID of the message

/getManyUsedPersonalizations

Example body

["1800249553","1800202306"]

Example response

[{
    "entityKey": "1800249553",
    "code": null,
    "message": "user.FirstName"
}, {
    "entityKey": "1800202306",
    "code": null,
    "message": ""
}]

Description

Returns the names of all user and group attributes that are referenced within the header and content area of a prepared message. The reference to the attributes is a personalization placeholder in the body of the message. All of these placeholders are replaced with individual user or message information during sendout. Be aware that this method does not return member attributes.

Available from
v1

Request path

GET [REST URL]/message/getUsedPersonalizations

Query Parameters

Parameter Type Description
None - -

Request Body Type

list of String messageIds

/validate

Example response

{
    "entityKey": "1800249570",
    "code": "ARCHIVED_ATTRIBUTE",
    "message": "Message contains archived attribute(s) user.CustomAttribute.Attribute1."
}

Description

Validates a prepared message for following functionality: check that message is valid (InvalidObjectError -> objecttype message), check that message does not contain invalid content store items, check that message does not use archived Attributes (InvalidObjectError -> objecttype attribute).

Available from
v1

Request path

GET [REST URL]/message/validate

Query Parameters

Parameter Type Description
messageId Long ID of the message

/validateMany

Example body

["1800249570","1800202306"]

Example response

[{
    "entityId": 1800249570,
    "errorCode": "ARCHIVED_ATTRIBUTE",
    "errorMessage": "Message contains archived attribute(s) user.CustomAttribute.Attribute1"
}, {
    "entityId": 1800202306,
    "errorCode": null,
    "errorMessage": null
}]

Description

Validates a list of messages for following functionality: checks that the message is valid (InvalidObjectError -> objecttype message), checks that the message does not contain any invalid content store items, checks that the message does not use archived Attributes (InvalidObjectError -> objecttype attribute).

Available from
v1

Request path

POST [REST URL]/message/validateMany

Query Parameters

Parameter Type Description
None - -

Request Body Type

list of Long messageIds

/getStatistics

Example response

{
    "messageId": 1800228386,
    "messageName": "[Test_Export] Campaign Winter Bottom March 2014",
    "messageSubject": "Winter Bottom",
    "externalMessageId": "ExternalWinter",
    "groupId": 1800138893,
    "groupName": "Test_Export",
    "groupSize": 20,
    "sendoutStartDate": 1404721300908,
    "sendoutEndDate": 1404721301837,
    "selectionName": null,
    "statisticValues": [{
        "name": "sentsPerFormat",
        "value": "email-html-multipart=16" }, {
        "name": "uniqueClicker",
        "value": "5" }, {
        "name": "uniqueConfirmedOpener",
        "value": "16" }, {
        "name": "openingRate",
        "value": "100.0" }, {
        "name": "hardBounces",
        "value": "0" }, {
        "name": "category",
        "value": "Winter Bottom" }, {
        "name": "durationMs",
        "value": "929" }, {
        "name": "majorSent",
        "value": "16" }, {
        "name": "skipped",
        "value": "4"     }, {
        "name": "accepted",
        "value": "16" }, {
        "name": "converter",
        "value": "0" }, {
        "name": "fromAddress",
        "value": "test@test.com"  }, {
        "name": "groupSize",
        "value": "20" }, {
        "name": "attachments",
        "value": "" }, {
        "name": "messageSize",
        "value": "7789" }, {
        "name": "clickRate",
        "value": "31.25" }]
}

Description

Retrieves statistical data for a sent message.

Available from
v5

Request path

GET [REST URL]/message/getStatistics

Query Parameters

Parameter Type Description
messageId Long ID of the message

/getStatisticsByExternalMessageId

Example response

{
    "messageId": 1800228386,
    "messageName": "[Test_Export] Campaign Winter Bottom March 2014",
    "messageSubject": "Winter Bottom",
    "externalMessageId": "ExternalWinter",
    "groupId": 1800138893,
    "groupName": "Test_Export",
    "groupSize": 20,
    "sendoutStartDate": 1404721300908,
    "sendoutEndDate": 1404721301837,
    "selectionName": null,
    "statisticValues": [{
        "name": "sentsPerFormat",
        "value": "email-html-multipart=16" }, {
        "name": "uniqueClicker",
        "value": "5" }, {
        "name": "uniqueConfirmedOpener",
        "value": "16" }, {
        "name": "openingRate",
        "value": "100.0" }, {
        "name": "hardBounces",
        "value": "0" }, {
        "name": "category",
        "value": "Winter Bottom" }, {
        "name": "durationMs",
        "value": "929" }, {
        "name": "majorSent",
        "value": "16" }, {
        "name": "skipped",
        "value": "4"     }, {
        "name": "accepted",
        "value": "16" }, {
        "name": "converter",
        "value": "0" }, {
        "name": "fromAddress",
        "value": "test@test.com"  }, {
        "name": "groupSize",
        "value": "20" }, {
        "name": "attachments",
        "value": "" }, {
        "name": "messageSize",
        "value": "7789" }, {
        "name": "clickRate",
        "value": "31.25" }]
}

Description

Retrieves statistical data for a sent message that is identified by the external message ID.

Available from
v5

Request path

GET [REST URL]/message/getStatisticsByExternalMessageId

Query Parameters

Parameter Type Description
externalMessageId String extenralMessageId External ID of the message

/find

Example body

{
  "groupId": 650557972,
  "sendoutDateFrom": "2018-09-01T00:00:00",
  "sendoutDateTo": "2018-10-01T00:00:00"
}

Example response

[
      {
      "authorId": 279975,
      "authorName": "Smith, John",
      "externalMessageId": null,
      "groupCategoryId": null,
      "groupId": 378,
      "id": 677,
      "isArchived": false,
      "isSystemMessage": false,
      "messageCategoryId": null,
      "messageName": "John SMS 20180807",
      "originalMessageId": null,
      "sendoutDate": "2018-08-07T10:53:14Z",
      "status": "SENT",
      "subjectLine": null,
      "type": "NORMAL",
      "sendoutStartDate": null,
      "sendoutEndDate": null,
      "transferDate": null,
      "transferStartDate": null,
      "transferEndDate": null
   }
]

Description

Returns a list of message summary objects that contain information about the messages that match the filter criteria. You can use this method to retrieve information about a message that has been sent or saved as a prepared message.

Available from
v7

Request path

POST [REST URL]/message/find

Query Parameters

Parameter Type Description
filter MessageFilter A filter object that determines which messages are included in the list of returned message summary objects.

/getTimeDistribution

Description

Retrieves statistical time distribution information for a specific sent message.

Available from
v7

Request path

GET [REST URL]/message/getTimeDistribution

Query Parameters

Parameter Type Description
messageId Long ID of the message
interval

/getTimeDistributionByExternalId

Description

Retrieves statistical time distribution information for a specific sent message.

Available from
v7

Request path

GET [REST URL]/message/getTimeDistributionByExternalId

Query Parameters

Parameter Type Description
externalMessageId String extenralMessageId External ID of the message

/meta

The meta domain contains methods that define your system.

/createAttributeDefinitions

Example body

[{
"name": "attributename",
"type": "STRING",
"enumerationValues":
[
"value1",
"value2",
"value3"
],
"active": "true"
}]

Description

Creates a new data field (custom user attribute) where information about users can be stored. With the standard setup, you are permitted to create a limited number of custom attributes with different data types. Each custom user attribute has a unique name. If an attribute is no longer needed, it may be archived. Please contact your customer support representative if you need to delete an attribute.

Available from
v1

Request path

POST [REST URL]/meta/createAttributeDefinitions

Query Parameters

Parameter Type Description
None - -

Request Body Type

list of AttributeDefinition

/getAttributeDefinitions

Example response

[{
    "name": "NumberName",
    "type": "NUMBER",
    "enumerationValues": null,
    "active": null },{
    "name": "StringName",
    "type": "STRING",
    "enumerationValues": ["1"],
    "active": null
}]

Description

Returns a list of all active custom attributes that are defined for the users. Attributes with the status 'archived' or 'system' are not included in the list.

Available from
v1

Request path

GET [REST URL]/meta/getAttributeDefinitions

Query Parameters

Parameter Type Description
None - -

/archiveAttributeDefinitions

Example body

["attributename"]

Description

Archives custom attributes. An archived attribute is still stored in the system. The attributes can still be in use for existing messages and sendouts, but they are not available in the GUI message creation process (i.e. personalization builder).

Available from
v1

Request path

POST [REST URL]/meta/archiveAttributeDefinitions

Query Parameters

Parameter Type Description
None - -

Request Body Type

list of String attributeNames

/activateAttributeDefinitions

Example body

["attributename"]

Description

Reactivates archived custom attributes that are named in the parameter list. After activation, they can be used in personalization during message composition process.

Available from
v1

Request path

POST [REST URL]/meta/activateAttributeDefinitions

Query Parameters

Parameter Type Description
None - -

Request Body Type

list of String attributeNames

/mergeAttributeDefinitions

Example body

[{
"name": "attributename",
"type": "STRING",
"enumerationValues":
[
"value1",
"value2",
"value3"
],
"active": "true"
}]

Description

Updates the list of custom attributes that are available on the interface. It is used to archive, activate, and create custom attributes. This call affects every custom attribute that is available in your system. It updates all of the attributes that are available for saving user data and reusing it in a different context. If an attribute is not mentioned, it is automatically deactivated. Errors and changes are delivered at the end of the process when all attributes are processed. The update cannot be used in an interactional way. Errors do not stop the update process. The attribute with the error is skipped and the process continues with the next attribute. It is not possible to change the attribute name, type, or enumeration with this method. The results of the merge method are as follows: * New attributes are created if the attribute is listed and did not exist before. * Custom attributes that are not listed are archived. * Custom attributes that are listed and are identical to the ones that already exist have no state change. * Custom attributes that are archived and not listed remain archived. * Custom attributes that have a state other than archived/active generate an error and remain unchanged.

Available from
v1

Request path

POST [REST URL]/meta/mergeAttributeDefinitions

Query Parameters

Parameter Type Description
None - -

Request Body Type

list of AttributeDefinition

/createLinkCategories

Example body

[{
"id": "",
"name": "TestApi",
"description" : "Rest Api Call",
"pattern": "TestAp[i]"
}]

Description

Creates new link categories. Link categories are automatically assigned to a link via a regex pattern.
The link categories group together different links for statistical purposes and can be used to trigger automated processes when a link of a certain category is clicked.
The name and pattern are mandatory inputs for the category. The ID is automatically assigned by the system.

Available from
v1

Request path

POST [REST URL]/meta/createLinkCategories

Request Body Type

list of LinkCategory categories

/getLinkCategories

Example body

[{
    "id": 1800000093,
    "name": "Winter Bottom Game",
    "description": null,
    "pattern": "winterbottomgame"
}]

Description

Returns a list of all currently defined active link categories.

Available from
v1

Request path

POST [REST URL]/meta/getLinkCategories

Request Body Type

list of LinkCategory categories

/updateLinkCategories

Example body

{
"id": "1800000190",
"name": "TestApiUpdate",
"description" : "A test update from Rest Api Call",
"pattern": "TestUpdateAp[i]"
}

Description

Updates an existing link category identified by the parameter category.

Available from
v1

Request path

POST [REST URL]/meta/updateLinkCategory

Request Body Type

LinkCategory category

/deleteLinkCategories

Example body

["CategoryName"]

Description

Updates an existing link category identified by the parameter category.

Available from
v1

Request path

POST [REST URL]/meta/deleteLinkCategories

Request Body Type

list of String categoryNames

/attachTags

Example body

Description

Adds tags to the entity specified by the entity type and entity ID.

Available from
v6

Request path

POST [REST URL]/meta/attachTags

Query Parameters

Parameter Type Description
entityId Long The entity ID.
entityType String The entity type. A list of available entity types is found in the description of the TaggedEntity type object.
tags String A list of tags to add to the entity.

/detachTags

Example body

Description

Removes tags from the entity specified by the entity type and entity ID.

Available from
v6

Request path

POST [REST URL]/meta/detachTags

Query Parameters

Parameter Type Description
entityId Long The entity ID.
entityType String The entity type. A list of available entity types is found in the description of the TaggedEntity type object.
tags String A list of tags to add to the entity.

/findByTags

Example body

Description

Locates entities that are tagged with a specific label or combination of labels.

Available from
v6

Request path

POST [REST URL]/meta/findByTags

Query Parameters

Parameter Type Description
tags String A list of search terms for locating entities with matching tags. When more than one search term is entered in the parameter, only entities with labels that match all search terms are returned.
entityType String Reference to an entity type. When used, only entities of the given type are considered for the search.

/getTags

Example body

Description

Returns a list of tags assigned to an entity.

Available from
v6

Request path

POST [REST URL]/meta/getTags

Query Parameters

Parameter Type Description
entityId Long The entity ID.
entityType String The entity type. A list of available entity types is found in the description of the TaggedEntity type object.

/mobile

The mobile domain contains methods that can be used to manage appoxee properties

/registerAppEvents

Example body

[
{ "label": "Open App", "triggerName":"app_open" },
{ "label": "Scan Reward", "triggerName":"app_scanreward" },
{ "label": "Open Cart", "triggerName":"app_cartopen" }
]

Successful response

HTTP 204

Description

Creates given list of mobile app events. Events must be handled at sdk (mobile app) to take effect.

Available from
v10

Request path

POST [REST URL]/mobile/registerAppEvents

Query Parameters

Parameter Type Description
appId Long appId

/preparedmessage

/find

Description

Returns list of prepared messages.
externalMessageId is required parameter.
To get result faster, use limit (1-500).

Available from
v7

Request path

POST [REST URL]/preparedmessage/find

Query Parameters

Parameter Type Description
filter PreparedMessageFilter A filter object that determines which messages are included in the list of returned prepared message summary objects.

/send

Description

Send prepared messages based on a given send datetime

Available from
v9

Request path

GET [REST URL]/preparedmessage/send

Query Parameters

Parameter Type Description
preparedMessageId Long The id of the prepared message you want to send.
sendDateTime Datetime Sendout time as timestamp.
processingDateTime String The preprocessing date time (optional)
selectionId Long A selection id to associate with the sendout (optional).

/process

The process domain contains methods that let you interact with a process in Mapp Engage.

/getDetails

Example response

Description

Returns information for the process identified by the specified process ID.

Available from
v7

Request path

GET [REST URL]/process/getDetails

Query Parameters

Parameter Type Description
ProcessId Long -

/applyAction

Example response

Description

Changes the status of an existing process.

Available from
v7

Request path

GET [REST URL]/process/applyAction

Query Parameters

Parameter Type Description
ProcessId Long -
action processaction -

/relatedData

The relatedData domain contains methods that are used to manage records stored in Related Data.

Available from
v4

/createRecord

Example body

{
  "datasetName": "workflow",
  "key": "testuser@domain.com",
  "data": [
    {
      "name": "ID",
      "value": "90900"
    },
    {
      "name": "Category",
      "value": "Email Marketing"
    }
  ]
}

Successful response

HTTP 204

Error response

{
   "errorActor": "CLIENT",
   "errorCode": "NO_SUCH_OBJECT",
   "message": "RelatedDataList with dataSetName=workflow does not exist.",
   "objectType": "RelatedDataList",
   "propertyName": "dataSetName",
   "propertyValue": "myproducts"
}

Error response

{
   "errorActor": "CLIENT",
   "errorCode": "UNEXPECTED_ERROR",
   "message": "com.ecircle.das.DASSystemException: 
   No columns to insert in dataset workflow",
   "errorId": null
}

Description

Adds a record to a data set. The data set is defined in the RelatedDataRecord.
Dataset has to be created in "Mapp Engage > Attributes > Related Data".
Make sure dataset has at least one column.

Request path

POST [REST URL]/relatedData/createRecord

/updateRecords

Example body

{
    "datasetName": "workflow",
    "key": "testuser@domain.com",
    "data": [{
        "name": "ID",
        "value": "90900"
    },
    {
        "name": "Category",
        "value": "Email Marketing"
    }],
    "filter": []
}

Description

Updates all or specific records for a key in a related data set. Dataset has to be created in "Attributes > Related Data". Please make sure dataset has at least one column.

Request path

POST [REST URL]/relatedData/updateRecords

Request Body Type

RelatedDataRecordAndFilter

/deleteRecords

Example body

{"datasetName": "workflow",
 "key": "testuser@domain.com",
 "filter":
    [{
        "name": "ID",
        "value": "90900"
    }]
}

Description

Delete a records in a related data set.

Request path

POST [REST URL]/relatedData/deleteRecords

Request Body Type

RelatedDataFilter

/system

The system domain contains methods that return information about the current version of the system in use.

/getApiVersion

Example response

0.95

Description

Returns information about the API version currently in use.

Available from
v1

Request path

GET [REST URL]/system/getApiVersion

Query Parameters

Parameter Type Description
None - -

/getEcmVersion

Example response

Build 6.90.554.7

Description

Returns information about the API version currently in use.

Available from
v1

Request path

GET [REST URL]/system/getEcmVersion

/systemuser

SystemUser contains all of the system user-related methods such as editing, deleting, and creating a system user.

/create

Description

Creates the new system user in system.

Available from
v8

Request path

POST [REST URL]/systemuser/create

Query Parameters

Parameter Type Description
createContact Boolean create contact for the user
suppressSystemMessage Boolean send/not send the system message to the user

Request Body Type

SystemUser

/get

Description

Retrieves the system user identified by the specified system user ID, external ID, or email address.

Available from
v8

Request path

GET [REST URL]/systemuser/get

Query Parameters

Parameter Type Description
systemuserId Long ID of the user
email String Email of the user
externalId String External ID of the user

/update

Description

Updates the existing system user in the system.

Available from
v8

Request path

POST [REST URL]/systemuser/update

Request Body Type

SystemUser

/delete

Description

Deletes the system user identified by the specified system user ID, external ID, or email address.

Available from
v8

Request path

DELETE [REST URL]/systemuser/delete

Query Parameters

Parameter Type Description
systemuserId Long ID of the user
email String Email of the user
externalId String External ID of the user

/updatePassword

Example body

{
    "systemUserId":1234,
    "password":"abcd1234"
}

Description

Updates the system user password identified by the specified system user ID

Available from
v9

Request path

POST [REST URL]/systemuser/updatePassword

Query Parameters

Parameter Type Description

SOAP API

REQUEST

URL

https://webdomain/api/soap/v10/

Body

Is a XML file with starting with <soapenv:Envelope> and ending with </soapenv:Envelope>

See below for examples

RESPONSE

Code Message Action
HTTP 200 Success Not necessary. Everything went well.
HTTP 401 Unauthorized Add authorization header.
HTTP 403 Forbidden Validate user type, username and password.
HTTP 404 Page Not found Provide valid URL. Make sure no "\" in URL.
HTTP 500 Internal Server Error Contact Support. Server error or load too high.

WSDL

Web Service Description Language (WSDL) is a machine-readable description of all SOAP calls

https://webdomain/api/soap/v7/?wsdl

'async

The async domain contains methods relevant to the Mapp Response Queue which allows you to stream events via the Mapp Engage API.
This requires some pre-configuration to be done by Mapp first.

If you would like to use this, please get in touch with your Mapp Account Representative.

Available from
v1

asyncPoll

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:asyncPoll>
            <topic>queue</topic>
            <limit>10</limit>
        </ecm:asyncPoll>
    </soapenv:Body>
</soapenv:Envelope>

Description

Retrieves a certain amount of results for a topic from the result queue.
The result items that were retrieved are deleted from the server once they have been transmitted.

asyncGetNextIndex

Example body

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:asyncGetNextIndex>
            <topic>queue</topic>
        </ecm:asyncGetNextIndex>
    </soapenv:Body>
</soapenv:Envelope>

Description

Returns the next index for the given topic relative to the last call to "async/poll".
This call is useful when switching from calling "async/poll" (with a managed index) to calling "async/pollByIndex" where the index is managed by the user.
The result value can be used as value for parameter "index" in a follow up call to "async/pollByIndex".

Available from
v9

asyncGetPollCount

Example body

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:asyncGetPollCount>
            <topic>queue</topic>
        </ecm:asyncGetPollCount>
    </soapenv:Body>
</soapenv:Envelope>

Description

Returns the number of result items that were retrieved/polled for a certain topic.

Available from
v9

asyncGetSubmitCount

Example body

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:asyncGetSubmitCount>
            <topic>queue</topic>
        </ecm:asyncGetSubmitCount>
    </soapenv:Body>
</soapenv:Envelope>

Description

Returns the number of job results that were submitted for a certain topic.

Available from
v9

asyncPollByIndex

Example body

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:asyncPollByIndex>
            <topic>queue</topic>
            <index>1</index>
            <limit>10</limit>
        </ecm:asyncPollByIndex>
    </soapenv:Body>
</soapenv:Envelope>

Description

Retrieves a specific number of results for a topic from the result queue, starting from the given offset.

Available from
v9

asyncSubmit

Example body

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:asyncSubmit>
            <topic>queue</topic>
            <!--Zero or more repetitions:-->
            <arguments>
                <name>element</name>
                <value>2</value>
            </arguments>
        </ecm:asyncSubmit>
    </soapenv:Body>
</soapenv:Envelope>

Description

Adds new element to the topic

Available from
v9

'automation

automationFind

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:automationFind>
            <automationFilter>
                <automationType>TIME_BASED</automationType>
            </automationFilter>
        </ecm:automationFind>
    </soapenv:Body>
</soapenv:Envelope>

Description

Returns information about one or more time-based / event-based automations.

Available from
v7

automationGetDetails

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:automationGetDetails>
            <automationType>TIME_BASED</automationType>
            <automationId>91</automationId>
        </ecm:automationGetDetails>
    </soapenv:Body>
</soapenv:Envelope>

Description

Returns detailed information for an time-based / event-based automation.

Available from
v7

automationRunOnce

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:automationRunOnce>
            <automationId>91</automationId>
        </ecm:automationRunOnce>
    </soapenv:Body>
</soapenv:Envelope>

Description

Performs one execution of the specified time-based automation. Execution takes place immediately.
Run once does not change the status or schedule of the automation.
You can only use this method to run an existing time-based automation.

Available from
v7

'blacklist

The blacklist domain contains methods that are used to manage system and group blacklists.
All methods return Object Already Exists Exception

Available from
v4

blacklistCreateGroupEntries

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:blacklistCreateGroupEntries>
            <entries>
                <!--Zero or more repetitions:-->
                <type>EMAIL_DOMAIN</type>
                <pattern>al.com</pattern>
            </entries>
            <groupId>30</groupId>
        </ecm:blacklistCreateGroupEntries>
    </soapenv:Body>
</soapenv:Envelope>

Description

Adds new entries (email, emailDomain, mobileNumber, or faxNumber) to the group blacklist.

blacklistDeleteGroupEntries

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:blacklistDeleteGroupEntries>
            <!--Zero or more repetitions:-->
            <entries>
                <type>EMAIL</type>
                <pattern>test@bl.com</pattern>
            </entries>
            <groupId>30</groupId>
        </ecm:blacklistDeleteGroupEntries>
    </soapenv:Body>
</soapenv:Envelope>

Description

Deletes entries (email, email domain, mobile number, or fax number) from the group blacklist.

blacklistCreateSystemEntries

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:blacklistCreateSystemEntries>
            <!--Zero or more repetitions:-->
            <entries>
                <type>EMAIL</type>
                <pattern>blacklistuser4@test.com</pattern>
            </entries>
        </ecm:blacklistCreateSystemEntries>
    </soapenv:Body>
</soapenv:Envelope>

Description

Adds new entries (email, email domain, mobile number, or fax number) to the system blacklist.

blacklistDeleteSystemEntries

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:blacklistDeleteSystemEntries>
            <!--Zero or more repetitions:-->
            <entries>
                <type>EMAIL</type>
                <pattern>mypartner1@test.com</pattern>
            </entries>
        </ecm:blacklistDeleteSystemEntries>
    </soapenv:Body>
</soapenv:Envelope>

Description

Deletes entries (email, email domain, mobile number, or fax number) from the system blacklist.

blacklistCreateGroupEntriesHashed

Example body

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:blacklistCreateGroupEntriesHashed>
            <!--Zero or more repetitions:-->
            <entries>
                <type>EMAIL_DOMAIN</type>
                <pattern>al.com</pattern>
            </entries>
            <groupId>30</groupId>
            <hashed>true</hashed>
        </ecm:blacklistCreateGroupEntriesHashed>
    </soapenv:Body>
</soapenv:Envelope>

Description

Adds new hashed email entries to the group blacklist. Entries can be hashed using md5hashgenerator

Available from
v9

blacklistCreateSystemEntriesHashed

Example body

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:blacklistCreateSystemEntriesHashed>
            <!--Zero or more repetitions:-->
            <entries>
                <type>EMAIL</type>
                <pattern>blacklistuser4@test.com</pattern>
            </entries>
            <hashed>?</hashed>
        </ecm:blacklistCreateSystemEntriesHashed>
    </soapenv:Body>
</soapenv:Envelope>

Description

Adds new entries (email, email domain, mobile number or mobile app alias) to the system blacklist. Entries can be hashed using md5hashgenerator

Available from
v9

'cms

Available from
v3

cmsGetMessageDefinitions

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:cmsGetMessageDefinitions/>
    </soapenv:Body>
</soapenv:Envelope>

Description

Returns a list of all CMS messages that are saved in the system. Every CMS message contains detailed information that identifies the message and the template that was used for creation.

cmsGetMimeMessage

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:cmsGetMimeMessage>
            <cmsMessageId>32</cmsMessageId>
        </ecm:cmsGetMimeMessage>
    </soapenv:Body>
</soapenv:Envelope>

Description

Returns the specified CMS message in MIME message format.

'contact

The contact domain contains methods for working with contact profiles.

Available from
v7

contactCreate

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:contactCreate>
            <contact>
                <contactId>1</contactId>
                <emailAddress>test@test.com</emailAddress>
                <mobileNumber>48505606707</mobileNumber>
                <applicationAlias>?</applicationAlias>
                <identifier>?</identifier>
                <!--Zero or more repetitions:-->
                <attributes>
                    <name>test</name>
                    <value>test</value>
                </attributes>
            </contact>
        </ecm:contactCreate>
    </soapenv:Body>
</soapenv:Envelope>

Description

Creates a new contact using the information provided in the contact object.

contactGet

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:contactGet>
            <identifier>
                <type>EMAIL</type>
                <value>test1@test.com</value>
            </identifier>
        </ecm:contactGet>
    </soapenv:Body>
</soapenv:Envelope>

Description

Returns a contact object that matches the specified identifier.

contactUpdate

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:contactUpdate>
            <identifierType>EMAIL</identifierType>
            <contact>
                <contactId></contactId>
                <emailAddress>test@test.com</emailAddress>
                <mobileNumber>48606707808</mobileNumber>
                <applicationAlias>?</applicationAlias>
                <identifier>?</identifier>
                <!--Zero or more repetitions:-->
                <attributes>
                    <name>?</name>
                    <value>?</value>
                </attributes>
            </contact>
        </ecm:contactUpdate>
    </soapenv:Body>
</soapenv:Envelope>

Description

Updates the profile data of an existing contact.

contactDelete

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:contactDelete>
            <identifier>
                <type>EMAIL</type>
                <value>test@test.com</value>
            </identifier>
            <!--Optional:-->
            <recipientEmail>notifyuser@test.com</recipientEmail>
        </ecm:contactDelete>
    </soapenv:Body>
</soapenv:Envelope>

Description

Deletes the contact identified by the specified identifier.

contactAnonymize

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:contactAnonymize>
            <contactId>3769711</contactId>
            <notificationRecipient>john.smith@mapp.com</notificationRecipient>
        </ecm:contactAnonymize>
    </soapenv:Body>
</soapenv:Envelope>

Description

Anonymizes contact PII data based on GDPR regulations.

Available from
v9

contactExport

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:contactExport>
            <contactId>3769711</contactId>
            <notificationRecipient>john.smith@mapp.com</notificationRecipient>
        </ecm:contactExport>
    </soapenv:Body>
</soapenv:Envelope>

Description

Pushes asynchronyous GDPR contact export, which will send system message with the link in the end

Available from
v9

'user

The user domain contains methods for contact management.

userCreate

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:userCreate>
            <email>testuser1@test.com</email>
            <!--Optional:-->
            <mobileNumber>47505606707</mobileNumber>
            <!--Zero or more repetitions:-->
            <attributes>
                <name>isocountrycode</name>
                <value>DK</value>
            </attributes>
        </ecm:userCreate>
    </soapenv:Body>
</soapenv:Envelope>

Description

Creates a new user. Requires either an email or a mobile number since these fields are used as the unique user identifier in the system

Available from
v1

userGet

Example request

<soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:userGet>
         <userId>498332</userId>
      </ecm:userGet>
   </soapenv:Body>
</soapenv:Envelope>

Description

Returns the user identified by the specified user ID.

Available from
v1

userGetByEmail

Example request

<soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:userGetByEmail>
         <email>test1@test.com</email>
      </ecm:userGetByEmail>
   </soapenv:Body>
</soapenv:Envelope>

Description

Returns the user identified by the specified email address.

Available from
v1

userGetByIdentifier

Example request

<soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:userGetByIdentifier>
         <identifier>8888</identifier>
      </ecm:userGetByIdentifier>
   </soapenv:Body>
</soapenv:Envelope>

Description

Returns the user identified by the specified identifier. If there are more users with the same identifier, the response refers to the last user where this identifier has been assigned.

Available from
v4

userGetProfile

Example request

<soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:userGetProfile>
         <userId>498332</userId>
      </ecm:userGetProfile>
   </soapenv:Body>
</soapenv:Envelope>

Description

Returns the user's profile (only attributes with a value are shown). The profile consists of attributes that contain user data. All attributes can be accessed system-wide

Available from
v1

userGetProfileByEmail

Example request

<soapenv:Envelope 
   xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
   xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:userGetProfileByEmail>
         <email>newuser@test.com</email>
      </ecm:userGetProfileByEmail>
   </soapenv:Body>
</soapenv:Envelope>

Description

Returns the user's profile, this is identified by the email address.

Available from
v2

userGetProfileByMobileNumber

Example request

<soapenv:Envelope 
   xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
   xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:userGetProfileByMobileNumber>
         <mobileNumber>48505606707</mobileNumber>
      </ecm:userGetProfileByMobileNumber>
   </soapenv:Body>
</soapenv:Envelope>

Description

Returns the user's profile, identified by the mobile number

Available from
v2

userGetByMobileNumber

Example request

<soapenv:Envelope 
   xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
   xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:userGetByMobileNumber>
         <mobileNumber>48505606707</mobileNumber>
      </ecm:userGetByMobileNumber>
   </soapenv:Body>
</soapenv:Envelope>

Description

Returns the user identified by the specified identifier. If there are more users with the same identifier, the response refers to the last user where this identifier has been assigned.

Available from
v2

userUpdateProfile

Example request

<soapenv:Envelope 
   xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
   xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:userUpdateProfile>
         <userId>498332</userId>
        <attributes>
                    <name>user.firstname</name>
                    <value>Ambrozy</value>
                 </attributes>
                 <attributes>
                    <name>user.lastname</name>
                    <value>Krzakiewicz</value>
                 </attributes>
                 <attributes>
                    <name>user.nickname</name>
                    <value></value>
                 </attributes>
                 <attributes>
                    <name>user.identifier</name>
                    <value>7777</value>
                 </attributes>
             <attributes>
                    <name>user.title</name>
                    <value>1</value>
                 </attributes>
              <attributes>
                    <name>user.dateofbirth</name>
                    <value>1985-09-22</value>
                 </attributes>
                 <attributes>
                    <name>user.zipcode</name>
                    <value>31422</value>
                 </attributes>
              <attributes>
                    <name>user.isolanguagecode</name>
                    <value>pl</value>
                 </attributes>
                 <attributes>
                    <name>user.isocountrycode</name>
                 <value>PL</value> 
                 </attributes>
      </ecm:userUpdateProfile>
   </soapenv:Body>
</soapenv:Envelope>

Description

Updates the user's profile (data stored in the attributes) with the information saved in the attribute list. This method only changes the information that is explicitly mentioned. Attributes that are not mentioned are not changed (there is also a replace method to change the entire profile of a user and to delete attribute values if the attribute is not mentioned for the user).

Available from
v1

userUpdateProfileByEmail

Example request

<soapenv:Envelope 
   xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
   xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:userUpdateProfileByEmail>
         <email>testprofile2@test.com</email>
         <attributes>
            <name>user.firstname</name>
            <value>John Adam</value>
         </attributes>
      </ecm:userUpdateProfileByEmail>
   </soapenv:Body>
</soapenv:Envelope>

Description

Updates a user identified via email. Updates all data stored in the attributes with the information saved in the attribute list. This method only changes the information that is explicitly mentioned. Attributes that are not mentioned are not changed (there is also a replace method to change the entire profile of a user and to delete attribute values if the attribute is not mentioned for the user).

Available from
v2

userUpdateProfileByMobileNumber

Example request

<soapenv:Envelope 
   xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
   xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:userUpdateProfileByMobileNumber>
         <mobileNumber>48505606707</mobileNumber>
         <!--Zero or more repetitions:-->
         <attributes>
               <name>user.lastname</name>
               <value>Krzakiewicz</value>
         </attributes>
      </ecm:userUpdateProfileByMobileNumber>
   </soapenv:Body>
</soapenv:Envelope>

Description

Updates a user identified via mobile number. Updates all data stored in the attributes with the information saved in the attribute list. This method only changes the information that is explicitly mentioned. Attributes that are not mentioned are not changed (there is also a replace method to change the entire profile of a user and to delete attribute values if the attribute is not mentioned for the user).

Available from
v7

userReplaceProfile

Example request

<soapenv:Envelope 
   xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
   xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:userReplaceProfile>
         <userId>8888</userId>
         <!--Zero or more repetitions:-->
         <attributes>
                 <name>user.dateofbirth</name>
                 <value>1985-09-22</value>
         </attributes>
      </ecm:userReplaceProfile>
   </soapenv:Body>
</soapenv:Envelope>

Description

Replaces all attribute values for a specific user. All attribute values that are transmitted with the method are added and replace any existing values. Any currently existing attribute values that are not found in the API call are deleted (except for Member attributes).

Available from
v2

userReplaceProfileByEmail

Example request

<soapenv:Envelope
   xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
   xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:userReplaceProfileByEmail>
         <email>test@test.com</email>
         <!--Zero or more repetitions:-->
         <attributes>
                <name>user.dateofbirth</name>
                <value>1985-09-22</value>
         </attributes>
      </ecm:userReplaceProfileByEmail>
   </soapenv:Body>
</soapenv:Envelope>

Description

Replaces all attribute values for a user identified via email. All attribute values that are transmitted with the method are added and replace any existing values. Any currently existing attribute values that are not found in the API call are deleted (except for Member attributes).

Available from
v2

userReplaceProfileByMobileNumber

Example request

<soapenv:Envelope 
   xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
   xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:userReplaceProfileByMobileNumber>
         <mobileNumber>48505606808</mobileNumber>
         <!--Zero or more repetitions:-->
         <attributes>
                <name>user.dateofbirth</name>
                <value>1985-09-22</value>
         </attributes>
      </ecm:userReplaceProfileByMobileNumber>
   </soapenv:Body>
</soapenv:Envelope>

Description

Replaces all attribute values for a user identified via mobile number. All attribute values that are transmitted with the method are added and replace any existing values. Any currently existing attribute values that are not found in the API call are deleted (except for Member attributes).

Available from
v2

userDelete

Example request

<soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:userDelete>
         <userId>498332</userId>
          <!--Optional:-->
         <recipientEmail>notifyuser@test.com</recipientEmail>
      </ecm:userDelete>
   </soapenv:Body>
</soapenv:Envelope>

Description

Deletes the user identified by the specified ID.

Available from
v1

userDeleteByEmail

Example request

<soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:userDeleteByEmail>
         <email>test@test.com</email>
          <!--Optional:-->
         <recipientEmail>notifyuser@test.com</recipientEmail>        
      </ecm:userDeleteByEmail>
   </soapenv:Body>
</soapenv:Envelope>

Description

Deletes the user identified by the email address.

Available from
v1

userDeleteByMobileNumber

Example request

<soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:userDeleteByMobileNumber>
         <mobileNumber>4505606707</mobileNumber>
          <!--Optional:-->
         <recipientEmail>notifyuser@test.com</recipientEmail>        
      </ecm:userDeleteByMobileNumber>
   </soapenv:Body>
</soapenv:Envelope>

Description

Deletes the user identified by the mobile number.

Available from
v7

userGetMessageHistory

Example request

<soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:userGetMessageHistory>
         <userId>12508646772</userId>
         <fromDate>2018-07-01T14:00:00</fromDate>
         <toDate>2018-07-01T23:59:59</toDate>
      </ecm:userGetMessageHistory>
   </soapenv:Body>
</soapenv:Envelope>

Description

Retrieves the message history for a recipient for a set time frame. The maximum time frame is 31 days. The maximum number of messages returned is 5000. sendDate is presented as Datetime

Available from
v6

'content

Available from
v1

contentStore

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:contentStore>
            <content>
                <name>twitter_logo.png</name>
                <contentType>image/png</contentType>                
                <content>iVBORw0KGgoAAAANSUhEUgAAABUAAAARCAYAAAAyhueAAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAASFJREFUeNqslM0NgkAQhRdiAdiAgQ6468EO1INntQOpwFABdqBe9aAdiIl3twS1AbECfJPMkhVZftSXjJPsDh87z2WsNE1Fb3d3z+POVVQIdQ5ShJhqywdEgEgQQ1qwutsbFT4QM4DXFcALwi3YJqDD2bPx4/PGCg/OSw46NwAFA0nU7d7ObUYAHxF+wYMDUU8jiz19aG9TihEbyuS3oSavNmoT5Sm1thA/CkCLsvJ0In5XdnsIKkv+gCaSGZQ8QF7+AXrST0peBH8Ar9+grKfuS1Mgd/wBjb/0lmChvmBr14GgMy5qoiA/N+zcPSNfPN2fCoVF86KlDQxqvc93tl8DaBxALcAi/qLqKuaWpalAffsOz8iB4ZRSzYIymNJLgAEAYsJkJOLW//gAAAAASUVORK5CYII=</content>
            </content>
        </ecm:contentStore>
    </soapenv:Body>
</soapenv:Envelope>

Description

Stores a file in the Content Store. Enter name, contentType and base64-encoded content.
File can be encoded using base64encode.org
File size limit is 512kB

contentDelete

Example request

<soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:contentDelete>
         <contentId>1</contentId>
      </ecm:contentDelete>
   </soapenv:Body>
</soapenv:Envelope>

Description

Deletes a content element in the Content Store.

'draftmessage

Available from
v6

draftmessageCreate

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:draftmessageCreate>
            <draftMessage>
                <id></id>
                <name>Test Draft Message</name>
                <externalId>111</externalId>
                <message>
                    <subject>This is subject</subject>
                    <emailBodyText>This is message body.</emailBodyText>
                    <attachments>
                        <name>twitter_logo.png</name>
                        <contentType>image/png</contentType>
                        <content>iVBORw0KGgoAAAANSUhEUgAAABUAAAARCAYAAAAyhueAAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAASFJREFUeNqslM0NgkAQhRdiAdiAgQ6468EO1INntQOpwFABdqBe9aAdiIl3twS1AbECfJPMkhVZftSXjJPsDh87z2WsNE1Fb3d3z+POVVQIdQ5ShJhqywdEgEgQQ1qwutsbFT4QM4DXFcALwi3YJqDD2bPx4/PGCg/OSw46NwAFA0nU7d7ObUYAHxF+wYMDUU8jiz19aG9TihEbyuS3oSavNmoT5Sm1thA/CkCLsvJ0In5XdnsIKkv+gCaSGZQ8QF7+AXrST0peBH8Ar9+grKfuS1Mgd/wBjb/0lmChvmBr14GgMy5qoiA/N+zcPSNfPN2fCoVF86KlDQxqvc93tl8DaBxALcAi/qLqKuaWpalAffsOz8iB4ZRSzYIymNJLgAEAYsJkJOLW//gAAAAASUVORK5CYII=</content>
                    </attachments>
                    <encoding></encoding>
                    <imageHandlingMode>inline</imageHandlingMode>
                </message>
            </draftMessage>
        </ecm:draftmessageCreate>
    </soapenv:Body>
</soapenv:Envelope>

Description

Creates a new message as a draft.

draftmessageDelete

Example request

<soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:draftmessageDelete>
         <draftMessageId>16</draftMessageId>
      </ecm:draftmessageDelete>
   </soapenv:Body>
</soapenv:Envelope>

Description

Deletes a draft message identified by the specified draft message ID.

draftmessageGet

Example request

<soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:draftmessageGet>
         <draftMessageId>16</draftMessageId>
      </ecm:draftmessageGet>
   </soapenv:Body>
</soapenv:Envelope>

Description

Returns a draft message identified by the specified draft message ID.

draftmessageUpdate

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:draftmessageUpdate>
            <draftMessage>
                <id>16</id>
                <name>draft message update</name>
                <externalId>111</externalId>
                <message>
                    <subject>subject update</subject>
                    <emailBodyText>some text</emailBodyText>
                    <encoding></encoding>
                    <attachments>
                        <name>twitter_logo.png</name>
                        <contentType>image/png</contentType>
                        <content>iVBORw0KGgoAAAANSUhEUgAAABUAAAARCAYAAAAyhueAAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAASFJREFUeNqslM0NgkAQhRdiAdiAgQ6468EO1INntQOpwFABdqBe9aAdiIl3twS1AbECfJPMkhVZftSXjJPsDh87z2WsNE1Fb3d3z+POVVQIdQ5ShJhqywdEgEgQQ1qwutsbFT4QM4DXFcALwi3YJqDD2bPx4/PGCg/OSw46NwAFA0nU7d7ObUYAHxF+wYMDUU8jiz19aG9TihEbyuS3oSavNmoT5Sm1thA/CkCLsvJ0In5XdnsIKkv+gCaSGZQ8QF7+AXrST0peBH8Ar9+grKfuS1Mgd/wBjb/0lmChvmBr14GgMy5qoiA/N+zcPSNfPN2fCoVF86KlDQxqvc93tl8DaBxALcAi/qLqKuaWpalAffsOz8iB4ZRSzYIymNJLgAEAYsJkJOLW//gAAAAASUVORK5CYII=</content>
                    </attachments>
                    <imageHandlingMode>inline</imageHandlingMode>
                </message>
            </draftMessage>
        </ecm:draftmessageUpdate>
    </soapenv:Body>
</soapenv:Envelope>

Description

Updates a message draft.

draftmessageFind

Example request

<soapenv:Envelope   
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:draftmessageFind>
         <filter>
            <externalMessageId>?</externalMessageId>
            <messageName>Test Draft Message</messageName>
            <subjectLine>?</subjectLine>
            <authorName>?</authorName>
            <authorId>?</authorId>
            <messageCategoryId>?</messageCategoryId>
            <creationDateFrom>2018-07-10</creationDateFrom>
            <creationDateTo>2018-08-10</creationDateTo>
            <lastUpdateDateFrom>2018-07-10</lastUpdateDateFrom>
            <lastUpdateDateTo>2018-08-10</lastUpdateDateTo>
         </filter>
      </ecm:draftmessageFind>
   </soapenv:Body>
</soapenv:Envelope>

Description

Finds draft messages specified by a draft message filter.

Available from
v7

draftmessageSaveAsPreparedMessage

Example request

<soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:draftmessageSaveAsPreparedMessage>
         <draftMessageId>19</draftMessageId>
         <groupId>385</groupId>
         <channelId>1</channelId>
      </ecm:draftmessageSaveAsPreparedMessage>
   </soapenv:Body>
</soapenv:Envelope>

Description

Saves draft message as prepared message. The channel ID is available at "Information" panel for each channel, at "Administration > Channels".

Available from
v9

'group

Available from
v1

groupCreate

Example request

<soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:groupCreate>
         <name>groupa</name>
         <email>groupb@centralsupport.cust-mta.com</email>
         <!--Optional:--><description>?</description>
         <!--Optional:--><groupCategoryId></groupCategoryId>
         <isoCountryCode>US</isoCountryCode>
         <isoLanguageCode>en</isoLanguageCode>
         <isSuperGroup>false</isSuperGroup>
      </ecm:groupCreate>
   </soapenv:Body>
</soapenv:Envelope>

Example response

<groupId>1900328471</groupId>

Error response

<errorCode>OBJECT_ALREADY_EXISTS</errorCode>
<errorCode>INVALID_PARAMETER</errorCode>
<errorCode>UNEXPECTED_ERROR</errorCode>

Description

Create a new group. All data is passed through parameters. Body is not required,

For domain, check Mapp Engage > Create > New Group

groupGet

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:groupGet>
            <groupId>52</groupId>
        </ecm:groupGet>
    </soapenv:Body>
</soapenv:Envelope>

Description

Returns the group object of the specified group. The group is identified by group ID.

groupSetAttributes

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:groupSetAttributes>
            <groupId>64</groupId>
            <attributes>
                <name>country</name>
                <value>FR</value>
            </attributes>
        </ecm:groupSetAttributes>
    </soapenv:Body>
</soapenv:Envelope>

Description

Creates and updates the group attributes. Existing attributes are overwritten.

groupClone

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:groupClone>
            <groupId>6</groupId>
            <options>
                <name>API GROUP2</name>
                <email>clone@ecircle.com</email>
                <includePreparedMessages>true</includePreparedMessages>
                <includeTestUsers>true</includeTestUsers>
                <keepOwner>true</keepOwner>
                <withOwnerAsMember>true</withOwnerAsMember>
            </options>
        </ecm:groupClone>
    </soapenv:Body>
</soapenv:Envelope>

Description

Creates a clone of a group that already exists in the system.
Most of the sendout options and delivery settings are identical for the original and the clone.
Group members are not copied.

groupFindIdsByAttributes

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:groupFindIdsByAttributes>
            <attributes>
                <name>country</name>
                <value>croatia</value>
            </attributes>
        </ecm:groupFindIdsByAttributes>
    </soapenv:Body>
</soapenv:Envelope>

Description

Returns a list of group IDs for all groups in the system that use the specified group attributes. Group attributes are only available in the group context and consist of a unique name and a value. Please note that attributes like Group Name or Email cannot be used here.

groupArchive

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:groupArchive>
            <groupIds>52</groupIds>
        </ecm:groupArchive>
    </soapenv:Body>
</soapenv:Envelope>

Description

Archive a list of groups and any dependent subgroups. Other dependent objects, such as triggers and scheduled tasks, are not archived.

groupGetPreparedMessages

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:groupGetPreparedMessages>
            <groupId>503</groupId>
        </ecm:groupGetPreparedMessages>
    </soapenv:Body>
</soapenv:Envelope>

Description

Returns all of the prepared messages for a specific group.

groupActivate

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:groupActivate>
            <groupIds>52</groupIds>
        </ecm:groupActivate>
    </soapenv:Body>
</soapenv:Envelope>

Description

Activates archived groups.

'landingpage

Available from
v2

landingpageFind

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:landingpageFind>
            <landingpageFilter>
                <status>PUBLISHED</status>
                <ownerId>279975</ownerId>
                <publishedFrom>2016-07-15</publishedFrom>
                <publishedTo>2018-07-15</publishedTo>
                <name>?</name>
                <pageName>?</pageName>
                <URL>?</URL>
            </landingpageFilter>
        </ecm:landingpageFind>
    </soapenv:Body>
</soapenv:Envelope>

Description

landingpageGetStatus

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:landingpageGetStatus>
            <landingpageId>271000010</landingpageId>
        </ecm:landingpageGetStatus>
    </soapenv:Body>
</soapenv:Envelope>

Description

Returns the publishing status of a landing page. Because these pages are usually associated with the lifetime of a particular email campaign, they may have a differing publishing status. Previously published pages that have become inactive because they are no longer valid are sometimes redirected to another default page. Possible states are:

landingpageDelete

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:landingpageDelete>
            <landingpageId>271000014</landingpageId>
        </ecm:landingpageDelete>
    </soapenv:Body>
</soapenv:Envelope>

Description

Deletes the landing page with the specified landing page ID. It works only if the landing page is inactive.

landingpageDeleteMany

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:landingpageDeleteMany>
            <landingpageIds>271000009</landingpageIds>
            <landingpageIds>271000010</landingpageIds>
        </ecm:landingpageDeleteMany>
    </soapenv:Body>
</soapenv:Envelope>

Description

Deletes the landing pages with the specified landing page IDs. It works only if landing pages are inactive.

'membership

The membership domain contains methods that are used to manage group memberships.

membershipSubscribe

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:membershipSubscribe>
            <userId>3769713</userId>
            <groupId>385</groupId>
            <subscriptionMode>OPT_IN</subscriptionMode>
        </ecm:membershipSubscribe>
    </soapenv:Body>
</soapenv:Envelope>

Description

Subscribes a user to a group. With this call, the subscription is handled as a self subscription. Depending on the subscription mode used, the user may have to confirm the subscription (opt in) and may be notified of the successful subscription.

SubscriptionMode Description
CONFIRMED_OPT_IN New contacts receive a welcome message via email when they are added to the group. Despite the label used for this value, the contact does not need to confirm the subscription. A single opt-in subscription.
DOUBLE_OPT_IN New contacts receive an invitation to join the group via email. The contact must accept the invitation before they are added to the group. A double opt-in subscription.
OPT_IN New contacts are added to the group without notification.
Available from
v2

membershipSubscribeByEmail

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:membershipSubscribeByEmail>
            <email>one@test.com</email>
            <groupId>385</groupId>
            <subscriptionMode>CONFIRMED_OPT_IN</subscriptionMode>
        </ecm:membershipSubscribeByEmail>
    </soapenv:Body>
</soapenv:Envelope>

Description

Subscribes a recipient to a group.
Recipient must exist in the system.

SubscriptionMode Description
CONFIRMED_OPT_IN New contacts receive a welcome message via email when they are added to the group. The contact does not need to confirm the subscription. A single opt-in subscription.
DOUBLE_OPT_IN New contacts receive an invitation to join the group via email. The contact must accept the invitation before they are added to the group. A double opt-in subscription.
OPT_IN New contacts are added to the group without notification. OPT_IN is creating self-subscribers.
Available from
v2

membershipUnsubscribe

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:membershipUnsubscribe>
            <userId>3769713</userId>
            <groupId>21</groupId>
        </ecm:membershipUnsubscribe>
    </soapenv:Body>
</soapenv:Envelope>

Description

Unsubscribes a user from a group. A notification is sent to the manager.

Available from
v2

membershipUnsubscribeFromMessage

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:membershipUnsubscribeFromMessage>
            <userId>3769713</userId>
            <groupId>385</groupId>
            <messageId>12</messageId>
        </ecm:membershipUnsubscribeFromMessage>
    </soapenv:Body>
</soapenv:Envelope>

Description

Unsubscribes a user from a group. The unsubscription is associated with a specific message. Notification is sent to the group manager. Returns success only when the user is unsubscribed from the group and the unsubscription is associated with the specified message.

Available from
v5

membershipUnsubscribeByEmail

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:membershipUnsubscribeByEmail>
            <email>one@test.com</email>
            <groupId>385</groupId>
        </ecm:membershipUnsubscribeByEmail>
    </soapenv:Body>
</soapenv:Envelope>

Description

Unsubscribes a user from a group based on the email address. An unsubscribe confirmation email is sent to the user.

Available from
v5

membershipCreate

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:membershipCreate>
            <userId>3769713</userId>
            <groupId>385</groupId>
        </ecm:membershipCreate>
    </soapenv:Body>
</soapenv:Envelope>

Description

Creates a new membership (meaning the user is subscribed to a group). This call differs from subscribe, in that notification is not sent.

Available from
v2

membershipGet

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:membershipGet>
            <userId>3769713</userId>
            <groupId>385</groupId>
        </ecm:membershipGet>
    </soapenv:Body>
</soapenv:Envelope>

Description

Retrieves membership context of a user identified by the userId in a group identified by groupId.

Available from
v7

membershipGetByEmail

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:membershipGetByEmail>
            <email>one@test.com</email>
            <groupId>385</groupId>
        </ecm:membershipGetByEmail>
    </soapenv:Body>
</soapenv:Envelope>

Description

Retrieves membership context of a user identified by email in a group identified by groupId.

Available from
v7

membershipDelete

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:membershipDelete>
            <userId>3769713</userId>
            <groupId>385</groupId>
        </ecm:membershipDelete>
    </soapenv:Body>
</soapenv:Envelope>

Description

Deletes an existing membership (meaning the user is unsubscribed from the group). This call differs from unsubscribe method in that the user is not notified about the unsubscription.

Available from
v2

membershipFindAll

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:membershipFindAll>
            <userId>3769713</userId>
        </ecm:membershipFindAll>
    </soapenv:Body>
</soapenv:Envelope>

Description

Returns a list of membership objects, one membership object for each group in which the user is a member.

Available from
v2

membershipFindAllByEmail

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:membershipFindAllByEmail>
            <email>test@test.com</email>
        </ecm:membershipFindAllByEmail>
    </soapenv:Body>
</soapenv:Envelope>

Description

Returns a list of membership objects for the user. One membership object for each group in which the user is a member. The user is identified by the email.

Available from
v2

membershipGetAttributes

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:membershipGetAttributes>
            <userId>5</userId>
            <groupId>1</groupId>
        </ecm:membershipGetAttributes>
    </soapenv:Body>
</soapenv:Envelope>

Description

Returns a collection of member attributes for a user within the specified group. Member attributes are used to save information for an individual user, but in the context of a specific group. A member attribute contains a specific value for each recipient.

Available from
v2

membershipGetAttributesByEmail

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:membershipGetAttributesByEmail>
            <email>one@test.com</email>
            <groupId>385</groupId>
        </ecm:membershipGetAttributesByEmail>
    </soapenv:Body>
</soapenv:Envelope>

Description

Returns a collection of member attributes for a user within the specified group. Member attributes are used to save information for an individual user, but in the context of a specific group. A member attribute contains a specific value for each recipient.

Available from
v2

membershipUpdateAttributes

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:membershipUpdateAttributes>
            <userId>3769713</userId>
            <groupId>385</groupId>
            <attributes>
                <name>hobby</name>
                <value>sport</value>
            </attributes>
        </ecm:membershipUpdateAttributes>
    </soapenv:Body>
</soapenv:Envelope>

Description

Updates the member attributes for a user within a group if the user is a member of the group.
* If an attribute already exists, the value will be updated
* If not, a new attribute will be created.

Available from
v2

membershipReplaceAttributes

Example request

<soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
  <soapenv:Header/>
  <soapenv:Body>
     <ecm:membershipReplaceAttributes>
        <userId>5</userId>
        <groupId>1</groupId>
        <!--Zero or more repetitions:-->
        <attributes>
           <name>likesfootball</name>
           <value>yes</value>
        </attributes>
     </ecm:membershipReplaceAttributes>
  </soapenv:Body>
</soapenv:Envelope>

Description

Replaces the member attributes for a contact within a group where the contact is a member

Available from
v2

'message

The message domain contains methods that can be used to manage email and SMS messages

messageGetHistorical

Example request

<soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:messageGetHistorical>
         <messageId>669</messageId>
         <contactId>3769713</contactId>
      </ecm:messageGetHistorical>
   </soapenv:Body>
</soapenv:Envelope>

Description

Make sure "datastore_rmo" feature switch is on. In case of trouble contact Support.

Fetch a specific message as it was sent to a defined contact, including resolved personalizations.

Available from
v8

messageSendSingle

Example request

<soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:messageSendSingle>
         <messageId>2</messageId>
         <recipientId>7</recipientId>
        <additionalContent>
            <!--Zero or more repetitions:-->
            <parameters>
               <name>subject</name>
               <value>This is a subject</value>
            </parameters> 
         </additionalContent> 
      </ecm:messageSendSingle>
   </soapenv:Body>
</soapenv:Envelope>

Description

Sends a prepared message as a single message to a specific user.

Available from
v1

messageSendTransactional

Example request

<soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:messageSendTransactional>
         <messageId>2</messageId>
         <externalTransactionFormula>transactionalID</externalTransactionFormula>
         <recipientId>7</recipientId>
         <additionalContent><!--Zero or more repetitions:-->
           <parameters>
               <name>subject</name>
               <value>This is subject</value>
             </parameters>
         </additionalContent>
      </ecm:messageSendTransactional>
   </soapenv:Body>
</soapenv:Envelope>

Description

Sends a previously prepared message as transactional message.

Available from
v1

messageGetUsedPersonalizations

Example request

<soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:messageGetUsedPersonalizations>
         <messageId>669</messageId>
      </ecm:messageGetUsedPersonalizations>
   </soapenv:Body>
</soapenv:Envelope>

Description

Returns the names of all user and group attributes that are referenced within the header and content area of a prepared message. The reference to the attributes is a personalization placeholder in the body of the message. All of these placeholders are replaced with individual user or message information during sendout. Be aware that this method does not return member attributes.

Available from
v1

messageValidate

Example request

<soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:messageValidate>
         <messageId>669</messageId>
      </ecm:messageValidate>
   </soapenv:Body>
</soapenv:Envelope>

Description

Validates a prepared message for following functionality: check that message is valid (InvalidObjectError -> objecttype message), check that message does not contain invalid content store items, check that message does not use archived Attributes (InvalidObjectError -> objecttype attribute).

Available from
v1

messageValidateMany

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:messageValidateMany>
            <messageIds>668</messageIds>
            <messageIds>669</messageIds>
        </ecm:messageValidateMany>
    </soapenv:Body>
</soapenv:Envelope>

Description

Validates a list of messages for following functionality: checks that the message is valid (InvalidObjectError -> objecttype message), checks that the message does not contain any invalid content store items, checks that the message does not use archived Attributes (InvalidObjectError -> objecttype attribute).

Available from
v1

messageGetStatistics

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:messageGetStatistics>
            <messageId>669</messageId>
        </ecm:messageGetStatistics>
    </soapenv:Body>
</soapenv:Envelope>

Description

Retrieves statistical data for a sent message.

Available from
v5

messageGetStatisticsByExternalMessageId

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:messageGetStatisticsByExternalMessageId>
            <externalMessageId>888</externalMessageId>
        </ecm:messageGetStatisticsByExternalMessageId>
    </soapenv:Body>
</soapenv:Envelope>

Description

Retrieves statistical data for a sent message.

Available from
v5

messageFind

Example body

<soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:messageFind>
         <filter>
            <externalMessageId>test1</externalMessageId>
            <groupName>GroupA</groupName>
            <sendoutDateFrom>2018-06-20</sendoutDateFrom>
            <sendoutDateTo>2018-06-20</sendoutDateTo>
            <messageName></messageName>
            <subjectLine></subjectLine>
            <authorName></authorName>
            <authorId></authorId>
            <messageCategoryId></messageCategoryId>
            <groupId></groupId>
            <groupCategoryName></groupCategoryName>
            <groupCategoryId></groupCategoryId>
            <type></type>
            <status></status>
         </filter>
      </ecm:messageFind>
   </soapenv:Body>
</soapenv:Envelope>

Description

Returns a list of message summary objects that contain information about the messages that match the filter criteria. You can use this method to retrieve information about a message that has been sent or saved as a prepared message.

Available from
v7

messageGetTimeDistribution

Example body

<soapenv:Envelope   
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:messageGetTimeDistribution>
         <messageId>669</messageId>
         <interval>HOURLY</interval>
      </ecm:messageGetTimeDistribution>
   </soapenv:Body>
</soapenv:Envelope>

Description

Retrieves statistical time distribution information for a specific sent message.

Available from
v7

messageGetTimeDistributionByExternalMessageId

Example body

<soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:messageGetTimeDistributionByExternalMessageId>
         <externalMessageId>123</externalMessageId>
         <interval>HOURLY</interval>
      </ecm:messageGetTimeDistributionByExternalMessageId>
   </soapenv:Body>
</soapenv:Envelope>

Description

Retrieves statistical time distribution information for a specific sent message.

Available from
v7

'preparedmessage

preparedmessageFind

Example request

<soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:preparedmessageFind>
         <filter>
            <externalMessageId>?</externalMessageId>
            <limit>?</limit>            
            <messageName>?</messageName>
            <subjectLine>?</subjectLine>
            <authorName>?</authorName>
            <authorId>?</authorId>
            <messageCategoryId>?</messageCategoryId>
            <groupName>?</groupName>
            <groupId>?</groupId>
            <groupCategoryName>?</groupCategoryName>
            <groupCategoryId>?</groupCategoryId>
            <creationDateFrom>2018-07-01</creationDateFrom>
            <creationDateTo>2018-07-31</creationDateTo>
            <lastUpdateDateFrom>2018-07-01</lastUpdateDateFrom>
            <lastUpdateDateTo>2018-07-31</lastUpdateDateTo>
         </filter>
      </ecm:preparedmessageFind>
   </soapenv:Body>
</soapenv:Envelope>
Available from
v7

Description

Returns list of prepared messages.
externalMessageId is required parameter.
To get result faster, use limit (1-500).

preparedmessageSend

Example request

<soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:preparedmessageSend>
         <preparedMessageId>667</preparedMessageId>
         <sendDateTime>1564146875000</sendDateTime>
         <!--Optional:-->
         <processingDateTime>1564146875000</processingDateTime>
         <!--Optional:-->
         <selectionId>231</selectionId>
      </ecm:preparedmessageSend>
   </soapenv:Body>
</soapenv:Envelope>

Description

Send prepared messages based on a given send datetime as Datetime

Available from
v9

'meta

The meta domain contains methods that define your system.

metaGetAttributeDefinitions

Example Body

<soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:metaGetAttributeDefinitions/>
   </soapenv:Body>
</soapenv:Envelope>

Description

Returns a list of all active custom attributes that are defined for the users. Attributes with the status 'archived' or 'system' are not included in the list.

Available from
v1

metaCreateAttributeDefinitions

Example Body

<soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:metaCreateAttributeDefinitions>
         <attributeDefinitions>
            <name>VehicleNames1</name>
            <type>STRING</type>
            <enumerationValues>Ford</enumerationValues>
            <enumerationValues>Mercedes</enumerationValues>
         </attributeDefinitions>                         
      </ecm:metaCreateAttributeDefinitions> 
   </soapenv:Body>
</soapenv:Envelope>

Description

Creates a new data field (custom user attribute) where information about users can be stored. With the standard setup, you are permitted to create a limited number of custom attributes with different data types. Each custom user attribute has a unique name. If an attribute is no longer needed, it may be archived. Please contact your customer support representative if you need to delete an attribute.

Available from
v1

metaArchiveAttributeDefinitions

Example Body

<soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:metaArchiveAttributeDefinitions>
            <attributeNames>VehicleNames</attributeNames>                 
      </ecm:metaArchiveAttributeDefinitions>
   </soapenv:Body>
</soapenv:Envelope>

Description

Archives custom attributes. An archived attribute is still stored in the system. The attributes can still be in use for existing messages and sendouts, but they are not available in the GUI message creation process (i.e. personalization builder).

Available from
v1

'process

processGetDetails

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:processGetDetails>
            <processId>1534</processId>
        </ecm:processGetDetails>
    </soapenv:Body>
</soapenv:Envelope>

Description

Returns information for the process identified by the specified process ID.

Available from
v7

processApplyAction

Example request

<soapenv:Envelope
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
    <soapenv:Header/>
    <soapenv:Body>
        <ecm:processApplyAction>
            <processId>1534</processId>
            <action>PAUSE</action>
        </ecm:processApplyAction>
    </soapenv:Body>
</soapenv:Envelope>

Description

Changes the status of an existing process.

Available from
v7

'relateddata

The relatedData domain contains methods that are used to manage records stored in Related Data.

Available from
v4

relatedDataCreateRecord

Example request

<soapenv:Envelope 
   xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
   xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:relatedDataCreateRecord>
         <record>
            <datasetName>myproducts</datasetName>
            <key>3</key>
            <!--Zero or more repetitions:-->
            <data>
               <name>id</name>
               <value>3</value>
            </data>
            <data>
               <name>product</name>
               <value>drums</value>
            </data>            
         </record>
      </ecm:relatedDataCreateRecord>
   </soapenv:Body>
</soapenv:Envelope>

Description

Adds a record to a data set. The data set is defined in the RelatedDataRecord.
Dataset has to be created in "Mapp Engage > Attributes > Related Data".
Make sure dataset has at least one column.

relatedDataUpdateRecords

Example request

<soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:relatedDataUpdateRecords>
         <recordAndFilter>
            <datasetName>myproducts</datasetName>
            <key>1</key>
            <!--Zero or more repetitions:-->
            <data>
               <name>id</name>
               <value>1</value>
            </data>
            <data>
               <name>product</name>
               <value>suitcase</value>
            </data>        
            <!--Zero or more repetitions:-->
            <filter>
               <name>id</name>
               <value>1</value>
            </filter>
         </recordAndFilter>
      </ecm:relatedDataUpdateRecords>
   </soapenv:Body>
</soapenv:Envelope>

Description

Updates all or specific records for a key in a related data set. Dataset has to be created in "Attributes > Related Data". Please make sure dataset has at least one column.

relatedDataDeleteRecords

Example request

<soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:relatedDataDeleteRecords>
         <filter>
            <datasetName>myproducts</datasetName>
            <key>3</key>
            <filter>
                <name></name>
                <value></value>
            </filter>
         </filter>
      </ecm:relatedDataDeleteRecords>
   </soapenv:Body>
</soapenv:Envelope>

Description

Delete a records in a related data set.

'system

systemGetApiVersion

Example Body

<soapenv:Envelope   
   xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
   xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:systemGetApiVersion/>
   </soapenv:Body>
</soapenv:Envelope>

Description

Returns information about the API version currently in use.

Available from
v1

systemGetEcmVersion

Example Body

<soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:systemGetEcmVersion/>
   </soapenv:Body>
</soapenv:Envelope>

Description

Returns information about the API version currently in use.

Available from
v1

'systemuser

SystemUser contains all of the system user-related methods such as editing, deleting, and creating a system user. Administrator priviledge may be required for some operations.

Available from
v8

systemuserCreate

Example request

<soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:systemuserCreate>
         <systemUser>
            <type>API</type>
            <email>test@test.com</email>
            <firstName>?</firstName>
            <lastName>?</lastName>
            <language>en_US</language>
            <timeZone>Europe/Berlin</timeZone>
            <messagingRole>project_manager</messagingRole>
            <expiryDate>2018-09-01</expiryDate>
            <lastLoginDate>?</lastLoginDate>
         </systemUser>
         <createContact>?</createContact>
         <suppressSystemMessage>?</suppressSystemMessage>
      </ecm:systemuserCreate>
   </soapenv:Body>
</soapenv:Envelope>

Description

Creates the new system user in system.

systemuserGet

Example request

<soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:systemuserGet>
         <systemUserId>3769698</systemUserId>
         <email></email>
         <externalId>?</externalId>
      </ecm:systemuserGet>
   </soapenv:Body>
</soapenv:Envelope>

Description

Retrieves the system user identified by the specified system user ID, external ID, or email address.

systemuserUpdate

Example request

<soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:systemuserUpdate>
         <systemUser>
            <id>3769700</id>
            <type>UI</type>
            <firstName>?</firstName>
            <lastName>?</lastName>
            <language>en_US</language>
            <timeZone>Europe/London</timeZone>
            <messagingRole>client_admin</messagingRole>
            <expiryDate>2018-09-01</expiryDate>
         </systemUser>
      </ecm:systemuserUpdate>
   </soapenv:Body>
</soapenv:Envelope>

Description

Updates the existing system user in the system.

systemuserDelete

Example request

<soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:systemuserDelete>
         <systemUserId>3769698</systemUserId>
         <email>test@test.com</email>
      </ecm:systemuserDelete>
   </soapenv:Body>
</soapenv:Envelope>

Description

Deletes the system user identified by the specified system user ID, external ID, or email address.

systemuserUpdatePassword

Example request

<soapenv:Envelope 
    xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" 
    xmlns:ecm="http://ecircle.com/developer/ecmapi">
   <soapenv:Header/>
   <soapenv:Body>
      <ecm:systemuserUpdatePassword>
         <credentials>
            <systemUserId>3769698</systemUserId>
            <password>password</password>
         </credentials>
      </ecm:systemuserUpdatePassword>
   </soapenv:Body>
</soapenv:Envelope>

Description

Updates the system user password identified by the specified system user ID

Available from
v9

CONTROL XML

Control XML is an alternative to the SOAP and REST interfaces for transferring large volumes of data.
It is a SOAP document with authentication header and comprehensive body.
In addition to the XML, large attachments with recipient lists can be uploaded.

The following goals could be achieved with control XML

GROUP DEFINITION

MESSAGE SPECIFICATION

REPORT DEFINITION

See also examples of specific tags

REQUEST

AUTHENTICATION - SOAP HEADER

<SOAP-ENV:Envelope xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/">
<SOAP-ENV:Header>
<authenticate xmlns="http://webservices.ecircle-ag.com/ws">
<realm>my_system_name</realm>
<email>myemail@mapp.com</email>
<password>mypassword</password>
</authenticate>
</SOAP-ENV:Header>

ACCESS

BODY

<SOAP-ENV:Body>
<postGroupRequest xmlns="http://webservices.ecircle-ag.com/ws">
here comes <control> ... </control> as in examples
</postGroupRequest>
</SOAP-ENV:Body>
</SOAP-ENV:Envelope>

LIMITS

Limit Number
Document size 2,048,000 bytes ~ 2Mb
Inline users 1000

RESPONSE

After control XML is processed, a controlResultMessage is sent to the specified email address.

The message contains one of the following states:

STATUS Description Result sent to address defined ...
COMPLETE All processing steps finished without any error indication. ... in the success-report-address node.
PARTIAL Initial processing was successful, but one or more of processing steps encountered errors. ... in the failure-report-address node.
FAILURE Processing failed in an early stage and did not continue. ... in the failure-report-address node.

ERROR MESSAGES - AUTHENTICATION

Message Cause Action
AXIS error, No service is available at this URL Correct message in browser for https://webdomain/eCMessageService Use one of tools to send request
<faultstring>Authentication failed, no valid user or password.</faultstring> Wrong user, password or expired account. Verify your credentials at Mapp Engage login
<faultstring>Domain not found</faultstring> Wrong systemname Verify your <realm>my_system_name</realm> from soap header

ERROR MESSAGES - GENERAL

Message Cause Action
Error parsing document. Document not well-formed or not valid Check if XML is valid. Check examples or WSDL for available tags
Error parsing document. Message: "no such member-list" Attachment invalid or missing Please check <uri-reference> tag and attachment name
Group email domain 'my_system_name.cust-mta.com' invalid for customer.. Domain not correct for particular customer In Mapp Engage create new group an check domain
Email '740f224' already exists.. Error ID 'TestGroup1'` Group email already exists Check <email> tag
<import-fatal-error>Content is not allowed in prolog.</import-fatal-error> Problem with attachment format Check <uri-reference> and <member-list> tags
No CDATA for HTML/TXT part OR Encoding for group or message content or recipient file is wrong. use CDATA to avoid this.
Zip file cannot be found File zipped with directory structure Pack zip file without directory (1 level compression)

Other problems

WSDL

WSDL includes all tags and attributes used in control xml request.

TEST CONTROL XML

Control XML should be tested at Mapp Engage, before being sent to URL.

How to open test tool window ?

Test control XML picture

Available Actions
Validate only Validate Control XML entered, when "Process" button is clicked
Process Validate and process Control XML entered
Use Template Insert sample Control XML
Browse Select a file from a local directory.
Add Files Upload selected file

GROUP DEFINITION

create a group

Example request 1

<control xmlns="http://webservices.ecircle-ag.com/ecm" request-id="newgroup123" group-id="new">
    <group-definition group-category-name="category">
        <name>New Group</name>
        <description>New Group</description>
        <isocountry>GB</isocountry>
        <isolanguage>en</isolanguage>
        <email-channel>
            <email>newgroup@qatest.staging11.shortest-route.com</email>
            <from-handling>
                <special>
                    <email>clonecontact@qatest.staging11.shortest-route.com</email>
                    <name>Clone Master</name>
                </special>
            </from-handling>
            <reply-to-handling>
                <special>
                    <email>reply-test@qatest.staging11.shortest-route.com</email>
                    <name>Contact</name>
                </special>
            </reply-to-handling>
        </email-channel>
        <io-control>
            <sendout-speed>50000</sendout-speed>
        </io-control>
    </group-definition>
</control>

Example request 2

<control
    xmlns="http://webservices.ecircle-ag.com/ecm" request-id="newgroup123" group-id="new">
    <group-definition preferred-channel="email">
        <name>{GROUP NAME}</name>
        <description>{GROUP DESCRIPTION}</description>
        <isocountry>{GROUP COUNTRY CODE}</isocountry>
        <isolanguage>{GROUP LANGUAGE CODE}</isolanguage>
        <redirection-link>{REDIRECTION LINK}</redirection-link>
        <redirection-timeout>7</redirection-timeout>
        <email-channel>
            <email>{GROUP EMAIL - should end with the domain name of the eC-m system}</email>
            <from-handling>
                <special>
                    <email>{GROUP FROM ADDRESS}</email>
                    <name>
                        <![CDATA[{GROUP FROM NAME}]]>
                    </name>
                </special>
            </from-handling>
            <reply-to-handling>
                <special>
                    <email>{REPLY ADDRESS}</email>
                    <name>{REPLY NAME}</name>
                </special>
            </reply-to-handling>
        </email-channel>
        <tracking>
            <text link="true"/>
            <html reader="true" pixel-position="top" link="true" individual-link="true"/>
        </tracking>
        <io-control>
            <requires-password />
            <sendout-speed>250000</sendout-speed>
            <bounce count="1" hours="168" />
            <!--Configure bounce settings for the group-->
            <!--OR-->
            <!--
        <bounce count="3" category="transient" hours="336" /><bounce count="2" category="blocked" hours="336" /><bounce count="1" category="rejected" hours="24" /><bounce count="2" category="unknown" hours="336" />
        -->
        </io-control>
    </group-definition>
</control>

clone a group

Example request 1

<control xmlns="http://webservices.ecircle-ag.com/ecm" 
request-id="Unique-String" group-id="new" clone-from-id="1">
</control>

Example request 2

<control
    xmlns="http://webservices.ecircle-ag.com/ecm" 
    request-id="Unique-String" group-id="new" clone-from-id="1">
    <delete-date>
        <date>2019-07-03T05:00:00.084Z</date>
    </delete-date>
</control>

Description

  1. Clone a group with id=1

  2. Clone a group with id=1, then delete it at future date

The cloned group name is "Copy of " + old name
The cloned group email is "copy-randomnumer" + old email

import recipients

Example request

<control xmlns="http://webservices.ecircle-ag.com/ecm" request-id="1" group-id="1">
    <member-list sync-mode="update_mode" add-mode="add_no_message" use-identifier="true">
        <user>
            <email>test11@test.com</email>
            <identifier>4444</identifier>
        </user>
        <user>
            <mobilenumber>48505606709</mobilenumber>
            <identifier>5555</identifier>
        </user>
    </member-list>
</control>  

Description

import recipients to a group with id=1

import recipients - gzipped file

Example request xml.gz

<control request-id="TestGroup1" group-id="new"
    xmlns="http://webservices.ecircle-ag.com/ecm">
    <group-definition preferred-channel="email">
        <name>TestGroup2</name>
        <email-channel>
            <email>TestGroup1@centralsupport.cust-mta.com</email>
        </email-channel>
    </group-definition>
    <member-list add-mode="add_no_message" sync-mode="add_update_mode">
        <uri-reference>2000members.xml.gz</uri-reference>
    </member-list>
</control>

Example request csv.gz

<control request-id="TestGroup3" group-id="new"
    xmlns="http://webservices.ecircle-ag.com/ecm">
    <group-definition preferred-channel="email">
        <name>TestGroup3</name>
        <email-channel>
            <email>TestGroup3@qatest.staging11.shortest-route.com</email>
        </email-channel>
    </group-definition>
    <member-list add-mode="add_no_message" data-format="csv">
        <uri-reference>recipients120.csv.gz</uri-reference>
    </member-list>
</control>

Description

  1. Create a new group. Import members from gzipped XML file file
  2. Create a new group. Import members from gzipped CSV file file

ftp example

Main.xml

<control xmlns="http://webservices.ecircle-ag.com/ecm" 
 request-id="1" group-id="new" clone-from-id="639">
    <group-definition preferred-channel="email">
        <name>Import Contacts</name>
        <description>Import Contacts</description>
        <isocountry>US</isocountry>
        <isolanguage>en</isolanguage>
    </group-definition>
    <member-list add-mode="add" sync-mode="add" data-format= "csv">
        <uri-reference gzip-compressed="false">recipients.csv</uri-reference>
    </member-list>
</control>

Description

Control XML automation picture

MESSAGE SPECIFICATION

send message

Example request 1

<control
    xmlns="http://webservices.ecircle-ag.com/ecm" 
           request-id="Unique-String" group-id="1">
    <message message-id="new" clone-from-id="1">
        <send-date>
            <immediately/>
        </send-date>
    </message>
</control>

Example request 2

<control
    xmlns="http://webservices.ecircle-ag.com/ecm" 
           request-id="Unique-String" group-id="1">
    <message message-id="new" clone-from-id="1">
        <send-date>
            <immediately/>
        </send-date>
    </message>
    <message message-id="new" clone-from-id="1">
        <send-date>
            <immediately/>
        </send-date>
    </message>
</control>

Description

  1. send a copy of a prepared message with id=1
  2. send two (max is 100) copies of a prepared message with id=1

send embedded message

Example request

<control
    xmlns="http://webservices.ecircle-ag.com/ecm" 
           request-id="Unique-String" group-id="1">
    <message message-id="new">
        <send-date>
            <immediately/>
        </send-date>
        <content target-content-encoding="ISO-8859-1">
            <subject>Campaign subject</subject>
            <text target-content-encoding="ISO-8859-1">
                <![CDATA[TXT version]]>
            </text>
            <html target-content-encoding="ISO-8859-1">
                <![CDATA[HTML version]]>
            </html>
        </content>
    </message>
</control>

Description

send embedded message

send message with picture

Example request

<control
    xmlns="http://webservices.ecircle-ag.com/ecm" request-id="1" group-id="1">
    <message message-id="new">
        <send-date>
            <immediately/>
        </send-date>
        <content>
            <subject>message with pic from content store</subject>
            <html target-content-encoding="UTF-8">
                <![CDATA[                                                                       
                <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
                <html>
                    <body><%InsertCSE id="220"%>
                    </body></html>]]>
                </html>
            </content>
        </message>
    </control>

Description

send message with picture from content store

send message to a selection

Example request

<control 
    xmlns="http://webservices.ecircle-ag.com/ecm" 
           request-id="Unique-String" group-id="1900327827">
    <message message-id="new" clone-from-id="1901030205" selection-id="1901036027">
        <send-date>
            <immediately/>
        </send-date>
    </message>
</control>

Description

send a copy of a prepared message to a selection

split sendout

Example request

<control
    xmlns="http://webservices.ecircle-ag.com/ecm" request-id="1" group-id="new" clone-from-id="3">
    <member-list add-mode="add_no_message" sync-mode="add_update_mode">
        <user>
            <email>test1@test.com</email>
        </user>
        <user>
            <email>test2@test.com</email>
        </user>
        <user>
            <email>test3@test.com</email>
        </user>
        <user>
            <email>test4@test.com</email>
        </user>
    </member-list>
    <split-message criterion="opening-rate"
        xmlns="http://webservices.ecircle-ag.com/ecm">
        <test-message message-id="13">
            <percentage>50</percentage>
        </test-message>
        <test-message message-id="14">
            <percentage>50</percentage>
        </test-message>
        <split-schedule-date>
            <date>2019-05-23T13:38:00Z</date>
        </split-schedule-date>
        <schedule-date>
            <date>2019-05-23T14:39:00Z</date>
        </schedule-date>
    </split-message>
</control>

Description

Sends a split message to draft messages 13 and 14 and group cloned from id 3.

split sendout embedded

Example request

<control
    xmlns="http://webservices.ecircle-ag.com/ecm" request-id="1" group-id="new" clone-from-id="3">
    <member-list add-mode="add_no_message" sync-mode="add_update_mode">
        <user>
            <email>test1@test.com</email>
        </user>
        <user>
            <email>test2@test.com</email>
        </user>
        <user>
            <email>test3@test.com</email>
        </user>
        <user>
            <email>test4@test.com</email>
        </user>
    </member-list>

    <message message-id="new" type="draft">
        <content target-content-encoding="ISO-8859-1">
            <subject>Campaign subject l11111</subject>
            <text target-content-encoding="ISO-8859-1">
                text 11111
            </text>
            <html target-content-encoding="ISO-8859-1">
                htm l11111
            </html>
        </content>
    </message>
    <message message-id="new" type="draft">
        <content target-content-encoding="ISO-8859-1">
            <subject>Campaign subject 2222</subject>
            <text target-content-encoding="ISO-8859-1">
                text 2222
            </text>
            <html target-content-encoding="ISO-8859-1">
                htm 2222
            </html>
        </content>
    </message>

    <split-message criterion="opening-rate"
        xmlns="http://webservices.ecircle-ag.com/ecm">
        <test-message message-id="new">
            <percentage>80</percentage>
        </test-message>
        <test-message message-id="new">
            <percentage>20</percentage>
        </test-message>
        <split-schedule-date>
            <date>2019-05-23T14:54:00Z</date>
        </split-schedule-date>
        <schedule-date>
            <date>2019-05-23T15:55:00Z</date>
        </schedule-date>
    </split-message>
</control>

Description

Creates embedded messages and makes a split sendout to a group cloned from id 3.

send push message

Example request 1

<control
    xmlns="http://webservices.ecircle-ag.com/ecm"  
    request-id="Unique-String" group-id="1200533401">
    <message message-id="new" delete="false">
        <send-date>
            <immediately/>
        </send-date>
        <name>Message Name</name>
        <content target-content-encoding="UTF-8">
            <subject target-encoding="UTF-8">Another control XML test</subject>
            <additional-msg-headers>
                <header>
                    <name>X-eC-messenger-appid</name>
                    <value>36</value>
                </header>
                <header>
                    <name>X-eC-messenger-schedule_type</name>
                    <value>DEFAULT</value>
                </header>
                <header>
                    <name>X-eC-messenger-overdue</name>
                    <value>NEXT_DAY</value>
                </header>
            </additional-msg-headers>
            <fax target-content-encoding="UTF-8">hello</fax>
        </content>
    </message>
</control>

Example request 2

<control
    xmlns="http://webservices.ecircle-ag.com/ecm" 
    request-id="Unique-String" group-id="82">
    <message message-id="new" clone-from-id="348">
        <send-date>
            <immediately/>
        </send-date>
    </message>
</control>

Description

Sends a push message

send SMS message

Example request

<control request-id="Test Mp XML 1" group-id="new" clone-from-id="777"
    xmlns="http://webservices.ecircle-ag.com/ecm">
    <group-definition preferred-channel="email">
        <name>XMLcontroltest_070520193</name>
        <description>XMLcontroltest_070520193</description>
        <email-channel>
            <email>sms4@qatest.staging11.shortest-route.com </email>
        </email-channel>
    </group-definition>
    <member-list sync-mode="add_update_mode" >
        <user>
            <mobilenumber>49505606707</mobilenumber>
        </user>
    </member-list>
    <message message-id="new" channel-id="87">
        <send-date>
            <immediately/>
        </send-date>
        <content target-content-encoding="UTF-8">
            <subject>MPtest new msg</subject>
            <sms>test sms message 07052019 - new message content xml</sms>
        </content>
    </message>
    <success-report-address>
        <email>alex.mustermann@mapp.com</email>
    </success-report-address>
    <failure-report-address>
        <email>alex.mustermann@mapp.com</email>
    </failure-report-address>
</control>

Description

Sends a SMS message to a mobile contact 49505606707,
which is added to a group cloned from id=777.
Message content is defined within XML.

REPORT DEFINITION

send success/failure report

Example request

<control
    xmlns="http://webservices.ecircle-ag.com/ecm" 
           request-id="Unique-String" group-id="new" clone-from-id="1">
    <success-report-address
        xmlns="http://webservices.ecircle-ag.com/ecm">
        <email>happyuser@mapp.com</email>
    </success-report-address>
    <failure-report-address
        xmlns="http://webservices.ecircle-ag.com/ecm">
        <email>saduser@mapp.com</email>
    </failure-report-address>
</control>

TAGS

sync-mode

Example

<member-list sync-mode="replace_keep_bounces">

Description

Possible values

Xpath

/control/member-list[@sync-mode]

sync-qualifiers

Example

<member-list sync-qualifiers="sync_update_attributes">

Description

Possible values

Xpath

/control/member-list[@sync-qualifiers]

deactivation-settings

<deactivation-settings>
    <response name="complaint"                  quantity="1" deactivation-time-frame="1"/>
    <response name="transient"                  quantity="5" deactivation-time-frame="4" follow-up-action="reactivate_systemwide" reactivation-time-frame="4" />
    <response name="blocked"                    quantity="5" deactivation-time-frame="4" follow-up-action="delete" reactivation-time-frame="3" />
    <response name="rejected"                   quantity="5" deactivation-time-frame="4" follow-up-action="reactivate" reactivation-time-frame="3"/>
    <response name="unknown"                    quantity="5" deactivation-time-frame="4" />
    <response name="invalid_address"            quantity="5" deactivation-time-frame="4" />
    <response name="temp_communication_failure" quantity="5" deactivation-time-frame="4" />
    <response name="autoresponder"              quantity="5" deactivation-time-frame="4" />
    <send-system-wide-deactivated>true</send-system-wide-deactivated>
</deactivation-settings>

Description

Group setttings from "Group > Change Settings > Responses"

Xpath

/control/group-definition/deactivation-settings

send-date

15 mins after campaign is loaded on Mapp Engage

<send-date> <in>PT15M</in> </send-date>

Specific date

<send-date> 
   <date>2018-06-30T18:00:00+02:00</date> 
</send-date>

Immediately

<send-date> <immediately></immediately> </send-date>

Send date with max delay parameter:

<send-date> 
  <date max-delay-minutes="90">2018-06-30T18:00:00+02:00</date> 
</send-date>

Xpath

/control/message/send-date

Example request

<control xmlns="http://webservices.ecircle-ag.com/ecm" 
 request-id="Unique-String" group-id="1200735989">
    <message message-id="new" clone-from-id="1202515907">
        <send-date>
            <immediately/>
        </send-date>
        <preserve-link-category>true</preserve-link-category>
    </message>
</control>

Xpath

/control/message/preserve-link-category

message-tag

Example request

<control
    xmlns="http://webservices.ecircle-ag.com/ecm" request-id="Unique-String" group-id="1200735989">
    <message message-id="new" clone-from-id="1202515907">
        <send-date>
            <immediately/>
        </send-date>
        <message-tag>2017_campaign</message-tag>
    </message>
</control>

Xpath

/control/message/message-tag

keep owner

Example request

<control request-id="1234" group-id="new"
    xmlns="http://webservices.ecircle-ag.com/ecm" clone-from-id="1">
    <group-definition preferred-channel="email" keep-owner="true" with-owner-as-member="true">
        <name>ClonedGroup</name>
        <description>This is a XML Interface testing group</description>
        <email-channel>
            <email>clonedgroup@postgres-pages-de.in</email>
        </email-channel>
    </group-definition>
</control>

Description

Keep owner : defines if original object owner (true) or executor (false) instead will be owner of new object.
WithOwnerAsMember : defines if owner of new group should be added as member to group (true) or not (false).

Xpath

/control/group-definition[@keep-owner]
/control/group-definition[@with-owner-as-member]

RELEASE NOTES

6.90.4017

Change Requests:
DMCP-7628 - More visible alerting for "Inbox Rendering" and "Inbox Monitoring"

Bugfixes:
DMCP-7554 - group message stats takes long time to open
DMCP-7632 - {contact profile} Client not able to view profile only 1st time
DMCP-7633 - Whiteboard issue with RD selection
DMCP-7640 - Coupon reservation is not removed when sendout is being cancelled

6.90.4012

Change Requests:
DMCP-7570 - Adapt sendout to Unified Model Channel Addresses

Bugfixes:
DMCP-7630 - system task for ok250 incorrectly setup
DMCP-7629 - Unable to send SMS: No channel type 'MOBILE_MESSAGE'
DMCP-7610 - Hide default system users on the list in DMC
DMCP-7634 - NullPointerException - resolveChannelPKPerMessageParts
DMCP-7485 - No access to NL paragraphs

6.90.4000

Change Requests:
DMCP-6885 - Add support for defining new draft messages directly in Control XML body when split testing
DMCP-7587 - Import events marker
DMCP-7591 - Send correct case attribute names to datastore
DMCP-7570 - Adapt sendout to Unified Model Channel Addresses

Bugfixes:
DMCP-7593 - SysMsgContactDeletionConfirmation stoping sendout
DMCP-7586 - Sendout with Selection/SB – Number of Recipients is showing zero
DMCP-7592 - A fix for 16 digit number type attribute

6.90.3983

Change Requests:
DMCP-6885 - Add support for defining new draft messages directly in Control XML body when split testing
DMCP-6921 - Control XML notification enhancements

Bugfixes:
DMCP-7005 - A fix for daily failed sendouts (FatalMessagingException)
DMCP-7555 - A fix for 'Could not get msg sendout stats' error for customers with feature datastore.MessageStatistics enabled
DMCP-7572 - A fix for not available Intelligence endpoint

6.90.3975

Change Requests:
DMCP-7531 - Unified Model Import in Control XML
DMCP-6502 - Add a "Recieve emergency notifications" yes/no option to system users
DMCP-6921 - Control XML notification enhancements

Bugfixes:
DMCP-6818 - A fix for processes showing as running on CEP when they have finished
DMCP-7530 - A fix for unexpected error while Previewing Draft Messages
DMCP-7369 - Selection and SB (FC) calculation does not match
DMCP-7474 - Dimension information for images missing in Content Store
DMCP-7522 - A fix: read online link intermittently fails
DMCP-7541 - MessageStatisticsReaderProvider fails with status: 500
DMCP-7551 - Make "Event-Based" look like "Time-Based"

6.90.3968

Change Requests:
DMCP-6948 - Store annual volume and Inbox Rendering usage counter
DMCP-7448 - Fixes for ResponseQueueV3
DMCP-7531 - Unified Model Import in Control XML
DMCP-6639 - Notify system users via system message when a contact/contacts is/are deleted
DMCP-6921 - Control XML notification enhancements

Bugfixes:
DMCP-7369 - Selection and SB (FC) calculation does not match
DMCP-7395 - Whiteboard is not working efficiently
DMCP-7399 - personalisation is not working after sending out
DMCP-7463 - Issue with Number type attributes
DMCP-7490 - Whiteboard Counters not adding up
DMCP-7491 - {API 1.0 SOAP} Support Request : API failing as user getting blocked
DMCP-7493 - Group editing/creation slowdown with large number of calls
DMCP-7500 - Whiteboard displaying inconsistent numbers
DMCP-7501 - A fix for Inbox Rendering / Inbox Monitoring missing label
DMCP-7502 - Whiteboard showing inconsistent numbers
DMCP-7529 - Whiteboard new: Statistics not accurate
DMCP-7541 - A fix fir MessageStatisticsReaderProvider: Response failed with status: 500

6.90.3944

Bugfixes:
DMCP-7412 - Whiteboard NEW: Not all jobs firing
DMCP-7369 - Selection and Selection Builder calculation does not match
DMCP-7375 - Link Categories are no longer assigned to Submessages
DMCP-7396 - Change list unsubscription header removed for specific Groups
DMCP-7404 - Segmentation builder date range doesn't match timezones
DMCP-7430 - ServiceClientException when sending text email for preview
DMCP-7431 - Wrong exported file name in Time based Automation after specifying it with ecx:fmtDate
DMCP-7438 - Group (Override) settings for 906 Inbox Monitoring View are being ignored
DMCP-7439 - HTML preview/source and is not being generated in Message Statistics
DMCP-7440 - {API 2.0} /blacklist/createSystemEntries(Hashed) not allow duplicates
DMCP-7441 - (Inbox Monitoring) Radio button not saved for prepared message
DMCP-7443 - (Inbox Rendering) (Permissions) button active without 2316
DMCP-7444 - {Inbox Rendering) icon change
DMCP-7449 - GDPR not exporting timestamp as date
DMCP-7453 - A fix for inability to D=deactivate Inbox Monitoring / Rendering
DMCP-7454 - A for for RDE 2.0 Datastore Job Error
DMCP-7415 - A fix for Error 500 - Illegal html body within Prepared Message
DMCP-7452 - Do not block "Message Compose" when Mapp-Connect is not responsible
DMCP-7451 - Remove Interaction Plan step orphans

Change Requests:
DMCP-6999 - Implementation of Inbox Monitoring Test Report
DMCP-7461 - Update Contact profile to angular 6+
DMCP-7445 - Add handling for recoverable actions that cannot be written into db

6.90.3919

Bugfixes:
DMCP-7083 - a fix for MTAQ incompatibility (newline in first name/last name)
DMCP-7363 - A fix for CMS2 error message "null"
DMCP-7183 - Optimised listed pages for faster page loading
DMCP-7383 - A link fix for Mapp Engage > Help > Our story

Change Requests:
DMCP-6639 - Notify system users via system message when a contact/contacts is/are deleted.

6.90.3904

Bugfixes:
DMCP-7120 - Website refresh during Related Data import triggers another import of data
DMCP-7341 - A fix for specific trigger returning a proxy error
DMCP-7357 - Blacklists on datastore - extend DataStoreReadClient
DMCP-7257 - A fix for Notification Center components not being loaded
DMCP-7347 - Pupop during send-out always shows 0 matched members in case of datastore send-out

Change Requests:
DMCP-7346 - Increase number of elements in import file chunk

6.90.3889

Bugfixes:
DMCP-7245 - Import fails on blacklist check when "memberImportBlacklistCheck" is enabled
DMCP-7301 - Time Format in a custom attribute
DMCP-7321 - Test Recipient displayed multiple times in a group
DMCP-7334 - CMS 2.0 stuck on "loading" - Not possible to create new templates
DMCP-7344 - A fix for error during processing UserGDPRDataExportJob
DMCP-7368 - DBObject does not populate alias for rest call to CEP

Change Requests:
DMCP-7315 - New Engage function to allow transformation of string numbers to numbers

6.90.3873

Bugfixes:
DMCP-6633 - Support Request : ... content-store1 No such file or directory
DMCP-7113 - A fix for Push Message not being received by the user
DMCP-7192 - "Percent of Members" should pick random users
DMCP-7228 - A fix for error during processing UserGDPRDataExportJob
DMCP-7266 - A fix for system task DeletePendingUsers

Change Requests:
DMCP-7297 - Event based-execute sendout on "best possible time"
DMCP-7300 - Clean up FS "relatedData.locking" for locking service for Datastore

6.90.3856

Bugfixes:
DMCP-7270 - No progress bar for new message sendout approach
DMCP-7289 - a fix for Push Sendout fail (InvalidJobException)

Change Requests:
DMCP-7274 - Generate monthly billing export for Finance (minimum information)
DMCP-7286 - authenticationService add AS to async soap/control messages
DMCP-6902 - improved/new transactional message API call and message template population
DMCP-7242 - Advanced Deactivation settings in Control XML

6.90.3835

Bugfixes:
DMCP-7239 - Better error handling for duplicated emails
DMCP-7258 - URL rewrite changes for Mapp Connect
IP-2464 - When selecting a group in an event via the browse modal, the system queries all groups, even the archived ones

Change Requests:
IP-2360 - Transfer Whiteboard to new selections
IP-2376 - New all types Job: "Related Data: Add/Update Record"
IP-2401 - Add action on goal event in Whiteboard
P-2448 - Trigger events "Enters Group" on changes done by import contact job
SB-1441 - Create a mechanism to compare old and new selections

6.90.3821

Bugfixes:
DMCP-7091 - Incorrect System Message being Triggered
DMCP-7166 - A fix for HTML Encoding Problem for "&" in XML Data Transfer
DMCP-7172 - Member attributes not showing
DMCP-7228 - A fix for User GDPR Data Export job processing
DMCP-7235 - A fix for attribute names translation

Change Requests:
DMCP-6593 - Permissive CORS Policy

6.90.3810

Bugfixes:
DMCP-7127 - Manually assigned Link Categories do not remain assigned on a sendout
DMCP-7128 - Specific system user unable to view groups
DMCP-7130 - Searching and marking a Group in CEP as an archived issue
DMCP-7142 - No stats or listing of SuperMessage under Processed Messages
DMCP-7153 - API 2.0: Improved error handling for /group/create
DMCP-7166 - A fix for HTML Encoding Problem for "&" in XML Data Transfer
DMCP-7167 - API 2.0: App is throwing the wrong error message
DMCP-7176 - A fix for inability to delete system users
DMCP-7191 - A fix for the possibility to change enumerated attribute to an invalid value
DMCP-7202 - A fix for Active Export Process is not shown under Processes while Status is set to All

Change Requests:
DMCP-5677 - Change list unsubscription header to a POST oneClick functionality
DMCP-6889 - Make default Group Landing Pages more responsive cross-devices
DMCP-7169 - Create new User assignment permissions for Content Management

6.90.3775

Bugfixes:
DMCP-7089 - A fix for {API 2.0} /message/find nullPointer for v10
DMCP-7072 - A fix for not working Fast SMS Dialogue
DMCP-7087 - Export editing lose export type DMCP-7107 - Connection loss to locking service mishandled
DMCP-7114 - Landing page error
DMCP-7115 - Html Encoding Problem for "&"
DMCP-7131 - setAlias call with same old and new alias
DMCP-7124 - Scheduled and recurring whiteboard not respecting selection with related data expression
DMCP-7092 - A fix for CM Subject line not being updated with new RSS feed title
DMCP-7079 - PoC sendout to selection: a fix for a Split Sendout logic break

Change Requests:
DMCP-6816 - Add new security headers and adjust existing ones to all Mapp Cloud applications and microservices
DMCP-6855 - {API 2.0} Create a "groupCreate" method
DMCP-6889 - Make default Group Landing Pages more responsive cross-devices
DMCP-7121 - Create DMC API endpoint to list all system users for a specific customer
DMCP-7037 - PoC for new sendout to selection
DMCP-7076 - Introduce EXPIRED status in CEP for async selection engine API

6.90.3740

Bugfixes:
DMCP-6954 - Improve error message for HTTP 500 error when API load to high
DMCP-7031 - Fix for Whiteboard Issue: Prepared Message isn’t sent after a successful import of Related Data
DMCP-7043 - Fix error.jsp exceptions
DMCP-6841 - Sendout by control XML does not work when DataStore Sendout feature is switched ON
DMCP-7035 - A fix for Automation skipping a 7 day waiting period step
DMCP-7085 - Fix for failing Related Data import in certain conditions
DMCP-7080 - Fix for processing UserGDPRDataExportJob error
DMCP-7073 - Fix for inability to view or edit customer profile in certain conditions
DMCP-7071 - Fix for not working Message Check

Change Requests:
DMCP-5677 - Change list unsubscription header to a POST oneClick functionality
DMCP-6926 - Small change request for API preparedmessage/find call
DMCP-6930 - Retirement Phase 1: old features not available in the new systems
DMCP-6979 - Refactor SFTP handling logic in Mapp Engage
DMCP-6937 - Group Permission: Inbox Monitoring - Create
DMCP-6940 - System Permission: Inbox Rendering - Create
DMCP-6944 - Create Inbox Rendering Test Object
DMCP-6950 - Create Inbox Monitoring Test to messageId relationship
DMCP-6965 - Create Inbox Rendering Test
DMCP-6966 - Browse Inbox Rendering Test
DMCP-6983 - Create & update Inbox Monitoring Test
DMCP-6973 - Add related data views to CEP to use them in Selection Builder
DMCP-6976 - Step Engine improvements
DMCP-7002 - Update list of holidays
DMCP-7039 - Transport should remove Date: that is unnecessary for preprocessed messages
DMCP-7044 - MDS configuration changes
DMCP-7046 - Creating Related Data View should allow only 3 instead of 4 Related Data Lists
DMCP-7052 - Add option to remove user from DMP audience
DMCP-7054 - RQS V3 config node changes

6.90.3700

Bugfixes:
DMCP-6929 - Event "Single Sendout Finished" not taking in count the message category
DMCP-6996 - A fix for view message preview
DMCP-7035 - A fix for Automation skipping a 7 day waiting period step
DMCP-7047 - Introduction of multiple dynamically updated, different RSS URL blocks in one email

Change Requests:
* DMCP-6979 - Refactor SFTP handling logic in Mapp Engage

6.90.3699

Bugfixes:
DMCP-6743 - Bugfix for Preview sendout over CIM
DMCP-6849 - API 2.0 access through jsp does not use correct executor id
DMCP-6901 - Group Attribute Improvements
DMCP-6911 - Import job improvements
DMCP-6929 - Event "Single Sendout Finished" not taking in count the message category
DMCP-6938 - A fix for wrong SMS counting

Change Requests:
DMCP-6959 - Add expiration date for images uploaded within CM email & CMS Message load in Content Store
DMCP-6923 - Add support for different Mobile Operators
DMCP-6925 - Add CEP mobile statistic in DataStore configuration
DMCP-6943 - Show page "System Transaction" when "Billing Credits Enabled" feature is set to False

6.90.3688

Bugfixes:
DMCP-6874 - Bugfix for Message speed throttle issues
DMCP-6898 - Archive option is not available when automationBuilderViewOnly functionality is enabled

Change Requests:
DMCP-6922 - Implement backend to support new SMS providers
DMCP-6252 - Introduce new Translation Keys
DMCP-6900 - Adjustments to Credential Store
DMCP-6910 - Change auto increment logic for Push badges
DMCP-6912 - Adding functionality for multiple RSS blocks
DMCP-6724 - Control Addresses are not deactivated anymore
DMCOP-8316 - Improvements for large GDPR Exports

6.90.3677

Bugfixes:
DMCP-6849 - API 2.0 access through jsp does not use correct executor id
DMCP-6871 - A fix for long channel names in contact edit

Change Requests:
DMCP-6864 - Allow login via JWT to CEP systems from Mapp Admin
DMCP-323 - Transport date information in aggregated reports
DMCP-6507 - Current password should be required when changing the password
DMCP-6862 - Analysis of DB scripts involved with group selection page during message creation
DMCP-6867 - GDPR export improvements
DMCP-6883 - Configuration for video content cache
RQS-316 - ETL logging improvements

MOBILE SDK

DOWNLOADS

The Mapp Mobile SDK is available for Mapp Engage mobile integrated customers.
The SDKs enable you to integrate mobile push and in-app messaging into your campaign orchestration.
The mobile SDKs currently support Android and iOS mobile applications.
SDK documentation is available at Mapp Cloud Mobile Integration

As of April 10th, 2019, Google has deprecated support for GCM.
To upgrade or install using FCM, download the Android FCM SDKs and Example Apps below.

Select the SDKs for your region.

EU Region

iOS SDK Downloads
iOS SDK v5.0.5 Support for mobile push notifications Download File
iOS In-App SDK v5.0.3 Support for mobile in-app messages Download File
iOS Example App Example app for testing features in the iOS SDKs Download File
Xamarin iOS Plugin v5.0.6 beta1 Support for mobile push notifications and in-app messages with APN token for iOS xamarin Download File
Android SDK Downloads
Android FCM SDK v5.0.8 Support for mobile push notifications and in-app messages with FCM token Download File
Android FCM SDK v5.0.6 Support for mobile push notifications and in-app messages with FCM token Download File
Android FCM Example v5.0.7 Android example application for FCM Download File
Android Test App Example apk to be tested on phone Download File
Xamarin Android FCM Plugin v5.0.6 beta1 Support for mobile push notifications and in-app messages with FCM token for android xamarin Download File
Cross platform plugins
Cordova Plugin beta1 Support for mobile push notifications and in-app messages for Android and iOS Download File
Xamarin Forms Plugin v5.0.6 beta1 Support for mobile push notifications and in-app messages for xamarin forms Download File

US and Non-EU Regions

iOS SDK Downloads
iOS SDK v5.0.5 Support for mobile push notifications Download File
iOS In-App SDK v5.0.3 Support for mobile in-app messages Download File
iOS Example App Example app for testing features in the iOS SDKs Download File
Xamarin iOS Plugin v5.0.6 beta1 Support for mobile push notifications and in-app messages with APN token for iOS xamarin Download File
Android SDK Downloads
Android FCM SDK v5.0.8 Support for mobile push notifications and in-app messages with FCM token Download File
Android FCM SDK v5.0.6 Support for mobile push notifications and in-app messages with FCM token Download File
Android FCM Example v5.0.7 Android example application for FCM Download File
Android Test App Example apk to be tested on phone Download File
Cross platform plugins
Cordova Plugin beta1 Support for mobile push notifications and in-app messages for Android and iOS Download File