v1.0.0
OpenAPI 3.1.0

Get transactional message deliveries

US region

Client Libraries

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.

Path Parameters
  • transactional_id
    Type: integer
    required

    The 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 - the transactional_id is 3.

Query Parameters
  • start
    Type: string

    The token for the page of results you want to return. Responses contain a next property. Use this property as the start value to return the next page of results.

  • limit
    Type: integer

    The maximum number of results you want to retrieve per page.

  • metric
    Type: stringenum

    Determines the metric(s) you want to return.

    values
    • attempted
    • sent
    • delivered
    • opened
    • clicked
  • state
    Type: stringenum

    The state of a broadcast.

    values
    • failed
    • sent
    • drafted
    • attempted
  • start_ts
    Type: integerFormat: unix timestamp

    The beginning timestamp for your query.

  • end_ts
    Type: integerFormat: unix timestamp

    The ending timestamp for your query.

  • get_tracked_responses
    Type: boolean

    If true, the response includes tracked_responses for each message—an object containing tracked response option names for in-app survey responses.

Responses
  • application/json
  • 404

    The transactional message you requested does not exist.

  • 429

    Your request is over the 10-per-second limit.

Request Example for get/v1/transactional/{transactional_id}/messages
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
    }
  ]
}