---
title: "Create Dataset Export"
method: POST
path: "/datasets/{dataset}/exports"
tags: ["data"]
---

# Create Dataset Export

`POST /datasets/{dataset}/exports`

Queue a private CSV or Parquet export using the structured-query contract.

Export generation is asynchronous. Files are capped at 2 GB and expire
after 24 hours; at most two exports may be queued or running per user.

## Path parameters

- `dataset` string, required

## Request body

- DatasetExportRequest
  - `columns` string[] — Columns to export. Empty means every customer-visible column.
  - `filters` DatasetFilter[] — Structured filters combined with AND.
    - `column` string, required — Customer-visible dataset column.
    - `operator` 'eq' | 'ne' | 'gt' | 'gte' | 'lt' | 'lte' | 'in' | 'contains' | 'is_null', required — Structured comparison operator.
    - `value` unknown
  - `order_by` DatasetSort[] — Optional sort keys. Exports are unordered when omitted.
    - `column` string, required — Customer-visible dataset column.
    - `direction` 'asc' | 'desc' — Sort direction.
  - `format` 'csv' | 'parquet' — Generated file format.

## Response `202`

Successful Response

- DatasetExportStatus
  - `id` string, required
  - `dataset` string, required
  - `format` 'csv' | 'parquet', required
  - `status` 'queued' | 'running' | 'ready' | 'failed' | 'expired', required
  - `row_count` integer, nullable
  - `size_bytes` integer, nullable
  - `created_at` string, date-time, required
  - `completed_at` string, date-time, nullable
  - `expires_at` string, date-time, nullable
  - `status_url` string, required
  - `download_url` string, nullable
  - `error` string, nullable

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.dev/soriaanalytics/apis/soria-data-api.md) · [All operations](https://skmtc.dev/soriaanalytics/apis/soria-data-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/soriaanalytics/soria-data-api/revisions/e97615ca569b/schema)
