Get transactional message deliveries
Returns information about the deliveries (instances of messages sent to individual people) from a transactional message. Provide query parameters to refine the metrics you want to return.
Use the start_ts and end_ts to find messages within a time range. If your request doesn't include start_ts and end_ts parameters, we'll return the most recent 6 months of messages. If your start_ts and end_ts range is more than 12 months, we'll return 12 months of data from the most recent timestamp in your request. Timestamps reflect when deliveries were created in our system, not when they were actually sent to recipients. There may be a delay between creation and sending.
- Type: integertransactional
_id requiredThe identifier of your transactional message. You'll find this in the UI or URL of your transactional message. For example, if this is the path of a transactional message URL -
/transactional/3/templates/139- thetransactional_idis 3.
- Type: stringstart
The token for the page of results you want to return. Responses contain a
nextproperty. Use this property as thestartvalue to return the next page of results. - Type: integerlimit
The maximum number of results you want to retrieve per page.
- Type: stringenummetric
Determines the metric(s) you want to return.
values- attempted
- sent
- delivered
- opened
- clicked
- Type: stringenumstate
The state of a broadcast.
values- failed
- sent
- drafted
- attempted
- Type: integerFormat: unix timestampstart
_ts The beginning timestamp for your query.
- Type: integerFormat: unix timestampend
_ts The ending timestamp for your query.
- Type: booleanget
_tracked _responses If true, the response includes
tracked_responsesfor each message—an object containing tracked response option names for in-app survey responses.
- application/json
- 404
The transactional message you requested does not exist.
- 429
Your request is over the 10-per-second limit.
curl 'https://api.customer.io/v1/transactional/1/messages?start=&limit=1&metric=attempted&state=failed&start_ts=1&end_ts=1&get_tracked_responses=false' \
--header 'Authorization: Bearer YOUR_SECRET_TOKEN'
{
"messages": [
{
"id": "dgOq6QWq6QUDAAF22PaOyFVqVxHY3rI5fsg=",
"deduplicate_id": "dgOq6QWq6QUDAAF22PaOyFVqVxHY3rI5fsg=:1609957872",
"msg_template_id": 589,
"action_id": null,
"customer_id": "1a55d8d1-b13d-4f1f-858f-a93ef21e3a7d",
"identifiers": {
"id": "1a55d8d1-b13d-4f1f-858f-a93ef21e3a7d",
"email": "person@example.com",
"cio_id": 3000001
},
"recipient": "person@example.com",
"subject": "Reset your password",
"metrics": {
"delivered": 1609957872,
"sent": 1609957832
},
"created": 1609957805,
"failure_message": null,
"newsletter_id": null,
"content_id": null,
"campaign_id": null,
"broadcast_id": null,
"type": "email|push",
"forgotten": false
}
]
}Returns an array of messages. Each object represents a different delivery originating from the transactional ID.
For transactional messages, the action, newsletter, campaign, content, and broadcast IDs are all null. All deliveries originate from the transactional ID in the path of your request.