---
title: "Export Campaigns"
method: POST
path: "/v2/exports/campaigns"
---

# Export Campaigns

`POST /v2/exports/campaigns`

## Request

- Base URL: `https://pub-api.conversion.ai/api`
- URL: `https://pub-api.conversion.ai/api/v2/exports/campaigns`
- Auth: one of:
  - API key in header `X-API-Key`
  - API key in query parameter `api_key`

Export of every campaign: custom and blast campaigns, webinars, and field events. Each call returns one page; follow `pagination.nextCursor` until it is `null` to read the full set. Ad campaigns are not exported.

> **Request access.** This endpoint is not enabled by default, contact the Conversion team to request access. Calls from accounts without it return `403 export_not_enabled`.

## Request body

- object
  - `categories` string[]: Only campaigns of these categories.
  - `campaignTypeIds` string[]: Only campaigns of these campaign types. At most 100.
  - `includeArchived` boolean: Include archived rows. Defaults to `true`.
  - `cursor` string: The opaque cursor returned as `pagination.nextCursor` by a previous call. Omit it on the first page. Send it without filters, because the cursor carries them; sending both returns `invalid_filter`.
  - `limit` integer: The maximum number of rows per page. Defaults to 50. Values are clamped to [1, 100].

## Response `200`

A page of campaigns retrieved successfully.

- object
  - `data` object
    - `campaigns` object[], required: The current page of campaigns.
      - `id` string, uuid, required: The Conversion campaign ID.
      - `name` string, required: The campaign's name.
      - `description` string, nullable: The campaign's description.
      - `category` 'CUSTOM' | 'BLAST' | 'WEBINAR' | 'FIELD_EVENT', required: The campaign's category.
      - `campaignTypeId` string, uuid, required: The campaign's type.
      - `archived` boolean, required: Whether the campaign is archived.
      - `salesforceCampaignId` string, nullable: The linked Salesforce campaign.
      - `createdAt` string, date-time, required: When the campaign was created.
      - `updatedAt` string, date-time, required: When the campaign was last updated.
  - `pagination` object
    - `nextCursor` string, nullable, required: Opaque cursor for the next page, or `null` when there are no more results. A page can be short or empty while the cursor is non-null.

## Other responses

- `400`: The request was malformed or contained invalid data.
- `401`: Authentication failed.
- `403`: The export API is not enabled for this account.
- `500`: An unexpected server error occurred.

---

[API](https://skmtc.dev/conversion/apis/conversion-api.md) - [All operations](https://skmtc.dev/conversion/apis/conversion-api/llms.txt) - [OpenAPI document](https://skmtc.dev/conversion/apis/conversion-api/revisions/8422f815402a?raw)
