---
title: "POST /v2/customers/exports"
method: POST
path: "/v2/customers/exports"
tags: ["customerExports"]
---

# POST /v2/customers/exports

`POST /v2/customers/exports`

## Request

- Base URL: `https://api.loyaltylion.com`
- URL: `https://api.loyaltylion.com/v2/customers/exports`
- Auth: HTTP bearer

## Request body

- CustomerExportsCreateCustomerExportRequestBody
  - `created_at_min` string: Return only customers created on or after the specified `ISO 8601` datetime string
  - `created_at_max` string: Return only customers created before the specified `ISO 8601` datetime string
  - `updated_at_min` string: Return only customers updated on or after the specified `ISO 8601` datetime string
  - `updated_at_max` string: Return only customers updated before the specified `ISO 8601` datetime string

## Response `202`

202

- CustomerExportsCreateCustomerExportResponseBody
  - `export` union, required: An export moves from `pending` to `processing` to `completed`, and to `expired` once its file is deleted seven days later; a run that cannot finish ends `failed`. Which fields are present depends on its `status`
    - object
      - `id` number, required
      - `filters` object, required: The filters this export was requested with
        - `created_at_min` string: Return only customers created on or after the specified `ISO 8601` datetime string
        - `created_at_max` string: Return only customers created before the specified `ISO 8601` datetime string
        - `updated_at_min` string: Return only customers updated on or after the specified `ISO 8601` datetime string
        - `updated_at_max` string: Return only customers updated before the specified `ISO 8601` datetime string
      - `created_at` string, required: When the export was requested, as an ISO 8601 timestamp
      - `status` 'pending', required: The export is queued and has not started
    - object
      - `id` number, required
      - `filters` object, required: The filters this export was requested with
        - `created_at_min` string: Return only customers created on or after the specified `ISO 8601` datetime string
        - `created_at_max` string: Return only customers created before the specified `ISO 8601` datetime string
        - `updated_at_min` string: Return only customers updated on or after the specified `ISO 8601` datetime string
        - `updated_at_max` string: Return only customers updated before the specified `ISO 8601` datetime string
      - `created_at` string, required: When the export was requested, as an ISO 8601 timestamp
      - `status` 'processing', required: The export is running
      - `started_at` string, required: When processing began, as an ISO 8601 timestamp
      - `progress` object, required
        - `rows_processed` number, required: How many customers have been written so far
        - `rows_total` number, nullable, required: Roughly how many customers the export will write, for showing progress against. An approximation, re-estimated whenever processing starts or resumes, so it can change or become null while the export runs; `rows_processed` is the truth. Null when no estimate was available
    - object
      - `id` number, required
      - `filters` object, required: The filters this export was requested with
        - `created_at_min` string: Return only customers created on or after the specified `ISO 8601` datetime string
        - `created_at_max` string: Return only customers created before the specified `ISO 8601` datetime string
        - `updated_at_min` string: Return only customers updated on or after the specified `ISO 8601` datetime string
        - `updated_at_max` string: Return only customers updated before the specified `ISO 8601` datetime string
      - `created_at` string, required: When the export was requested, as an ISO 8601 timestamp
      - `started_at` string, required: When processing began, as an ISO 8601 timestamp
      - `completed_at` string, required: When the file was written, as an ISO 8601 timestamp
      - `row_count` number, required: How many customers the file holds, one per line
      - `file_size` number, required: Size of the file in bytes
      - `status` 'completed', required: The export finished and its file is available for download
      - `expires_at` string, required: When the file is deleted, seven days after the export completed, as an ISO 8601 timestamp. The export is `expired` from then on
      - `download_url` string, required: A signed link to the file, minted for this response and valid for six hours. Read the export again for a fresh link
      - `download_url_expires_at` string, required: When the link in `download_url` stops working, as an ISO 8601 timestamp
    - object
      - `id` number, required
      - `filters` object, required: The filters this export was requested with
        - `created_at_min` string: Return only customers created on or after the specified `ISO 8601` datetime string
        - `created_at_max` string: Return only customers created before the specified `ISO 8601` datetime string
        - `updated_at_min` string: Return only customers updated on or after the specified `ISO 8601` datetime string
        - `updated_at_max` string: Return only customers updated before the specified `ISO 8601` datetime string
      - `created_at` string, required: When the export was requested, as an ISO 8601 timestamp
      - `started_at` string, required: When processing began, as an ISO 8601 timestamp
      - `completed_at` string, required: When the file was written, as an ISO 8601 timestamp
      - `row_count` number, required: How many customers the file holds, one per line
      - `file_size` number, required: Size of the file in bytes
      - `status` 'expired', required: The file was deleted, seven days after the export completed. Request another export for a fresh file
      - `expired_at` string, required: When the file was deleted, as an ISO 8601 timestamp
    - object
      - `id` number, required
      - `filters` object, required: The filters this export was requested with
        - `created_at_min` string: Return only customers created on or after the specified `ISO 8601` datetime string
        - `created_at_max` string: Return only customers created before the specified `ISO 8601` datetime string
        - `updated_at_min` string: Return only customers updated on or after the specified `ISO 8601` datetime string
        - `updated_at_max` string: Return only customers updated before the specified `ISO 8601` datetime string
      - `created_at` string, required: When the export was requested, as an ISO 8601 timestamp
      - `status` 'failed', required: The export failed. It produced no file and will not be retried; request another one
      - `started_at` string, nullable, required: When processing began, as an ISO 8601 timestamp. Null if the export failed before it started
      - `failed_at` string, required: When the export failed, as an ISO 8601 timestamp

## Other responses

- `400`: Bad Request
- `401`: 401
- `403`: 403
- `409`: 409

## Changes

- **2026-11-03** `69cbd7bf7128`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/loyaltylion/apis/loyaltylion-admin-api/changes/v2/customers/exports/post.md)

---

[API](https://skmtc.dev/loyaltylion/apis/loyaltylion-admin-api.md) - [All operations](https://skmtc.dev/loyaltylion/apis/loyaltylion-admin-api/llms.txt) - [OpenAPI document](https://skmtc.dev/loyaltylion/apis/loyaltylion-admin-api/revisions/69cbd7bf7128?raw)
