- 5 Minutes to read
- Print
- DarkLight
API Endpoints
- 5 Minutes to read
- Print
- DarkLight
Available API Methods
Mapp Connect is a simple async API with methods to:
GET | List Mapp Engage groups, prepared emails, push and SMS messages, and mobile App ID. |
POST | Add or update data for:
|
GET
Connect |
|
Groups |
|
List of Email prepared Messages |
|
List of Mobile Apps |
|
List of Push prepared Messages |
|
List of SMS prepared Messages |
|
POST
Call Template
POST /integration/<INTEGRATION ID>/event{?subtype=<subtypeName>}
The request body can contain any JSON object.
Response: HTTP status code
Examples
Please note that the names used in calls need to be the same as the names used in your mapping.
Add a user and subscribe to the group
POST /integration/<INTEGRATION ID>/event?subtype=user
Example of sent event:
{
"email":"user@mapp.com",
"group":"2324333335",
"first":"firstval",
"second":"secondval"
}
Response: HTTP status code
Remove a user
POST /integration/<INTEGRATION ID>/event?subtype=user
FLAG: 'delete'
Example of sent event:
{
"email":"user@mapp.com",
"group":"2324333335",
"delete":"true"
}
Response: HTTP status code
Send a prepared SMS message to a user with parameters
POST /integration/<INTEGRATION ID>/event?subtype=sms
MessageId is the ID of the prepared message. You can use 'email', 'recipientMobileNumber' or 'recipientId' as an identifier.
Example of sent event:
{
"recipientMobileNumber":"+48666777888",
"messageId":"2324333335"
}
Response: HTTP status code
Send prepared Push message to a user with parameters
POST /integration/<INTEGRATION ID>/event?subtype=push
'pushMessageId' is the ID of the push message template (not the campaign), 'mobileAppId' refers to the app that should be used, and 'email' is used as a user identifier.
Example of sent event:
{
"email":"john.smith@xx.xx",
"pushMessageId":"1234",
"mobileAppId":"5678",
"param1":"param 1 value"
}
Response: HTTP status code
Send a single message with parameters
POST /integration/<INTEGRATION ID>/event?subtype=email
MessageId is the ID of the prepared message.
Example of sent event:
{
"email":"user@mapp.com",
"messageId":"2324333335",
"first":"firstval",
"second":"secondval"
}
Response: HTTP status code
Send a single message to a user with "externalTransactionFormula"
POST /integration/<INTEGRATION ID>/event?subtype=email
Request body can contain any JSON object.
MessageId it's an ID of the prepared message.
Example of sent event:
{
"email":"user@mapp.com",
"messageId":"2324333335",
"externalTransactionFormula":"myUniqueValue......"
}
Response: HTTP status code
For more information, see:
Send a group message
POST /integration/<INTEGRATION ID>/event?subtype=email
MessageId it's an ID of the prepared message.
Example of sent event:
{
"group":"12",
"messageId":"2324333335",
}
Save transaction details in the Transactions eCommerce table
This call stores transaction (order) details in the Transactions eCommerce table and, optionally, sends a transactional email.
POST /integration/<INTEGRATION ID>/event?subtype=transaction
MessageId is the ID of the prepared message.
Example of sent event:
{
"email": "test.example@mapp.com",
"messageId": "9634",
"items": [
{
"sku": "JB-129",
"name": "George-H",
"price": "15",
"qty_ordered": "1"
}
],
"group": "8262",
"orderId": "06032023",
"transaction_date": "2020-04-28T12:30:08.537Z",
"currency": "GBP"
}
The "messageId" parameter is optional
If provided, the transaction is saved/updated, and a message with the provided messageId is sent to the given email address.
If not provided, only the transaction is saved/updated.
Remove a transaction from the Transactions eCommerce table
This call removes the transaction from the eCommerce table.
{
"orderId": "12345",
"email": "test@test.com",
"delete": "true"
}
Product Catalog
This call adds/deletes a new product to/from the Product Catalog.
POST /integration/<INTEGRATION ID>/event?subtype=product
Example of sent event:
Add
{
"productSKU": "aaa-bbb-ccc",
"productName": "someName",
"productPrice": "123",
"productURL": "http://somedomain.com"
}
Delete
{
"productSKU": "aaa-bbb-ccc",
"delete": "true"
}
Abandoned Cart / Wishlist
Example "default" JSON payloads for "Generic" integration type:
Add
{
"email": "test.example@mapp.com",
"sku": "0602-2023-123",
"createdAt": "2022-05-14T17:25:43.511Z",
"price": "25",
"size": "M"
}
If the contact doesn't exist in Mapp Engage, the data will not be saved.
Delete
{
"sku": "0602-2023-123",
"email": "test@mapp.com",
"delete": "true"
}
Add a single coupon code
POST /integration/<INTEGRATION ID>/event?subtype=coupon
Example of sent event:
{
"listName":"campaing1", //if list does not exist, it will be created
"value":"summer1jaosajsoas"
}
Batch import: send multiple requests at once
POST /integration/<integrationID>/event/batch?subtype=<subtype>
The maximum payload of a batch request is 1000 events. If the payload exceeds 1000, the entire payload is discarded and throws an exception (400).
The body needs to be sent as an array, for example:
[
{
"email":john@mapp.com,
"group":"10144",
"nosto_segments":"High Value Customers area New York"
},
{
"email":mary@gmail.com,
"group":"10144",
"nosto_segments":"High Value Customers area New York"
}
]
Recommended product
Add
{
"email": "test.example@mapp.com",
"sku": "0602-2023-123",
"accuracy": "12",
"model": "25"
}
Delete
{ "sku": "0602-2023-123", "email": "test@mapp.com", "delete": "true"}
Related Data: Add
Mandatory parameters: datasetName / key / importMode / attributes
Add
Example of sent event:{ "datasetName": "testrdlistname", "key" : "123", "importMode":"add", "attributes" : { "description" : "some description", "price" : "567" } }
Bulk add
Example of sent event:"datasetName","key","importMode","attributes" "testrdlistname","123","add","{'description':'some description','price':'567'}"
Related Data: Update
Mandatory parameters: datasetName / key / importMode / attributes
Optional parameter: filter
Update
Example of sent event:{ "datasetName": "testrdlistname", "key" : "123", "importMode":"update", "attributes" : { "description" : "change description", "price" : "890" }, "filter" : { "description" : "lorem ipsum" } }
Bulk update
Example of sent event:"datasetName","key","importMode","attributes","filter" "testrdlistname","123","update","{'description':'change description','price':'890'}","{'description':'lorem ipsum'}"
Related Data: Delete
Mandatory parameters: datasetName / key / importMode
Optional parameter: filter
Delete
Example of sent event:{ "datasetName": "testrdlistname", "key" : "123", "importMode":"delete", "filter" : { "description" : "lorem ipsum" } }
Bulk delete
Example of sent event:"datasetName","key","importMode","filter" "testrdlistname","123","delete","{'description':'lorem ipsum'}"
Postman Sandbox
This Postman collection can be used to test your authentication credentials and all endpoints. To use it, create a free Postman account online or in their free app and upload the collection.