openapi: 3.2.0
info:
title: Mapp Engage public Async API
version: '1'
description: 'Mapp Engage REST API (REST 2.0, incremental version v19). Assembled verbatim from the per-operation OpenAPI fragments Mapp publishes on each endpoint page of https://docs.mapp.com/apidocs/. The base URL is tenant-specific: take your Mapp Engage login host and append /api/rest/v19.'
contact:
name: Mapp Technical Support
url: https://mapp.com/tech-support/
servers:
- url: /api/rest/v19
security:
- basicAuth: []
tags:
- name: Async
paths:
/async/getNextIndex:
get:
tags:
- Async
summary: Get the next result index for a topic
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".
operationId: getNextIndex
parameters:
- name: topic
in: query
description: Name of the topic.
required: true
schema:
type: string
responses:
'200':
description: ''
content:
application/json:
schema:
type: integer
format: int64
application/xml:
schema:
type: integer
format: int64
'400':
description: ''
/async/getPollCount:
get:
tags:
- Async
summary: Get the polled result count for a topic
description: Returns the number of result items that were retrieved/polled for a certain topic.
operationId: getPollCount
parameters:
- name: topic
in: query
description: Name of the topic.
required: true
schema:
type: string
responses:
'200':
description: ''
content:
application/json:
schema:
type: integer
format: int64
application/xml:
schema:
type: integer
format: int64
'400':
description: Required parameters are missing or incorrect.
/async/getSubmitCount:
get:
tags:
- Async
summary: Get the submitted job count for a topic
description: Returns the number of job results that were submitted for a specific topic.
operationId: getSubmitCount
responses:
'200':
description: ''
content:
application/json:
schema:
type: integer
format: int64
application/xml:
schema:
type: integer
format: int64
'400':
description: ''
/async/pollByType:
get:
tags:
- Async
summary: Poll results for a topic by event type
description: Retrieves a specific number of results for a topic from the result queue.
Request body example:
{
"type":"linkClick ",
"limit":"10000"
}{
"type":"linkClick",
"from":"1683637275"
"to":"1683720075"
"limit":"86400"
}
operationId: pollByRange
parameters:
- name: type
in: query
description: Type of events customer would like to poll (e.g allMessages [This TYPE consolidates all types below except for sentToMta, therefore 2-10 below are included in allMessages], linkClick, mtaResponse, smsResponse, readTrack, forwardTrack, conversion, skipTracking, sendTransactional, unsubscribe, sentToMta [This type must be called separately. For any customer to get all available types their web-service must be able to make at least two separate calls. 1. To allMessages type, and 2. To sentToMta type])
required: true
schema:
type: string
- name: from
in: query
description: 'Opening timestamp from when the customer would like to get events (warning: timestamp is a time of inserting event to the database, not time of occurring of the event, so if the event happened at 31st of January at 23:59:59 but we had a delay in inserting and it was inserted of 1st of February then timestamp will be on February).'
required: true
schema:
type: integer
format: int64
- name: to
in: query
description: Closing timestamp.
required: true
schema:
type: integer
format: int64
- name: limit
in: query
description: A number of events to fetch.
required: true
schema:
type: integer
format: int64
responses:
'200':
description: ''
content:
application/json:
schema:
type: array
items:
type: object
application/xml:
schema:
type: array
items:
type: object
'400':
description: Required parameters are missing or incorrect.
/async/poll:
get:
tags:
- Async
summary: Poll results for a topic
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. {
"name": "twitter_logo.png",
"contentType": "image/png",
"content": "iVBORw0KGgoAAAANSUhEUgAAABUAAAARCAYAAAAyhueAAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAASFJREFUeNqslM0NgkAQhRdiAdiAgQ6468EO1INntQOpwFABdqBe9aAdiIl3twS1AbECfJPMkhVZftSXjJPsDh87z2WsNE1Fb3d3z+POVVQIdQ5ShJhqywdEgEgQQ1qwutsbFT4QM4DXFcALwi3YJqDD2bPx4/PGCg/OSw46NwAFA0nU7d7ObUYAHxF+wYMDUU8jiz19aG9TihEbyuS3oSavNmoT5Sm1thA/CkCLsvJ0In5XdnsIKkv+gCaSGZQ8QF7+AXrST0peBH8Ar9+grKfuS1Mgd/wBjb/0lmChvmBr14GgMy5qoiA/N+zcPSNfPN2fCoVF86KlDQxqvc93tl8DaBxALcAi/qLqKuaWpalAffsOz8iB4ZRSzYIymNJLgAEAYsJkJOLW//gAAAAASUVORK5CYII="
}'
operationId: poll
parameters:
- name: topic
in: query
description: Name of the topic.
required: true
schema:
type: string
- name: limit
in: query
description: A number of result items to retrieve.
required: true
schema:
type: integer
format: int32
responses:
'200':
description: ''
content:
application/json:
schema:
type: array
items:
type: object
application/xml:
schema:
type: array
items:
type: object
'400':
description: Required parameters are missing or incorrect.
/async/submit:
get:
tags:
- Async
summary: Submit an asynchronous job for a topic
description: Initiates an asynchronous job by providing a topic name (script name) and input data (arguments).