---
title: "Export information about deliveries"
method: POST
path: "/v1/exports/deliveries"
tags: ["Exports"]
---

# Export information about deliveries

`POST /v1/exports/deliveries`

## Request

- Base URL: `https://api.customer.io`
- URL: `https://api.customer.io/v1/exports/deliveries`
- Auth: HTTP bearer

Provide filters for the one-time send, automation, or action you want to return delivery information from. This endpoint starts an export, but you cannot download your export from this endpoint. Use the `/exports/{export_id}` endpoint to download your export.

Use the `start` and `end` to find messages within a time range. If your request doesn't include `start` and `end` parameters, we'll return the most recent 6 months of messages. If your `start` and `end` 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.

## Request body

- union
  - object: Contains properties shared by export filters.
    - `newsletter_id` integer, required: The ID of a one-time send you want to export information from.
    - `start` integer: The unix timestamp representing the beginning of the export.
    - `end` integer: The unix timestamp representing the end of the export.
    - `attributes` string[]: Recipient attributes you want to include as extra columns in your export. You can't include event or trigger properties.
    - `metric` 'created' | 'attempted' | 'sent' | 'delivered' | 'opened' | 'clicked' | 'converted' | 'bounced' | 'spammed' | 'unsubscribed' | 'dropped' | 'failed' | 'undeliverable': Determines the metric(s) you want to return.
    - `drafts` boolean: If true, your request returns both drafts and active/sent messages.
    - `template_id` integer: Restrict the export to a specific message template (content) within the selected automation, one-time send, or transactional message.
  - object: Contains properties shared by export filters.
    - `campaign_id` integer, required: The ID of an automation you want to export information from.
    - `start` integer: The unix timestamp representing the beginning of the export.
    - `end` integer: The unix timestamp representing the end of the export.
    - `attributes` string[]: Recipient attributes you want to include as extra columns in your export. You can't include event or trigger properties.
    - `metric` 'created' | 'attempted' | 'sent' | 'delivered' | 'opened' | 'clicked' | 'converted' | 'bounced' | 'spammed' | 'unsubscribed' | 'dropped' | 'failed' | 'undeliverable': Determines the metric(s) you want to return.
    - `drafts` boolean: If true, your request returns both drafts and active/sent messages.
    - `template_id` integer: Restrict the export to a specific message template (content) within the selected automation, one-time send, or transactional message.
  - object: Contains properties shared by export filters.
    - `transactional_message_id` integer, required: The ID of the transactional message you want to export information for.
    - `start` integer: The unix timestamp representing the beginning of the export.
    - `end` integer: The unix timestamp representing the end of the export.
    - `attributes` string[]: Recipient attributes you want to include as extra columns in your export. You can't include event or trigger properties.
    - `metric` 'created' | 'attempted' | 'sent' | 'delivered' | 'opened' | 'clicked' | 'converted' | 'bounced' | 'spammed' | 'unsubscribed' | 'dropped' | 'failed' | 'undeliverable': Determines the metric(s) you want to return.
    - `drafts` boolean: If true, your request returns both drafts and active/sent messages.
    - `template_id` integer: Restrict the export to a specific message template (content) within the selected automation, one-time send, or transactional message.
  - object: Contains properties shared by export filters.
    - `action_id` integer, required: The ID of an action you want to export information from.
    - `start` integer: The unix timestamp representing the beginning of the export.
    - `end` integer: The unix timestamp representing the end of the export.
    - `attributes` string[]: Recipient attributes you want to include as extra columns in your export. You can't include event or trigger properties.
    - `metric` 'created' | 'attempted' | 'sent' | 'delivered' | 'opened' | 'clicked' | 'converted' | 'bounced' | 'spammed' | 'unsubscribed' | 'dropped' | 'failed' | 'undeliverable': Determines the metric(s) you want to return.
    - `drafts` boolean: If true, your request returns both drafts and active/sent messages.
    - `template_id` integer: Restrict the export to a specific message template (content) within the selected automation, one-time send, or transactional message.

## Response `200`

Returns an export.

- object
  - `export` ExportObject: Metadata about an export.
    - `id` integer: The identifier for the export.
    - `user_id` integer: The user who created the export.
    - `user_email` string: The email of the user who created the export.
    - `total` integer: The number of entries in the export. Exports report 0 until done.
    - `deduplicate_id` string: An identifier in the format `id:timestamp` where the id is for the object you're working with (Automations, Deliveries, Exports, Identities, One-time sends, Segments, and Templates), and the timestamp is the last time the object was updated.
    - `type` 'customers' | 'deliveries': The type of information contained in the export.
    - `failed` boolean: If true, the export was unsuccessful.
    - `description` string: A description of the export.
    - `downloads` integer: Counts the total number of times the export has been downloaded.
    - `created_at` integer: The date time when the referenced ID was created.
    - `updated_at` integer: The date time when the referenced ID was last updated.
    - `status` 'done' | 'pending' | 'failed': The state of your export where `done` indicates an export that you can download, `pending`, indicates that your export is not ready to download, and `failed` indicates an export that has failed and will not be downloadable.

## Other responses

- `400`: The request is malformed.
- `429`: Your request is over the 10-per-second limit. `Retry-After` tells you how many seconds you must wait before you send the next request.

## Changes

- **2026-09-02** `5da2740beeb5`: 1 info
  - added the media type `application/json` for the response with the status `429`

[Operation history](https://skmtc.dev/customer/apis/customer-io-journeys-api-reference/changes/v1/exports/deliveries/post.md)

---

[API](https://skmtc.dev/customer/apis/customer-io-journeys-api-reference.md) - [All operations](https://skmtc.dev/customer/apis/customer-io-journeys-api-reference/llms.txt) - [OpenAPI document](https://skmtc.dev/customer/apis/customer-io-journeys-api-reference/revisions/ac0b282053fe?raw)
