---
title: "Export Document Asynchronously"
method: POST
path: "/v1/documents/{id}/export/jobs"
tags: ["Document Access"]
---

# Export Document Asynchronously

`POST /v1/documents/{id}/export/jobs`

## Request

- Base URL: `https://api.lucid.co`
- URL: `https://api.lucid.co/v1/documents/{id}/export/jobs`
- Auth: one of:
  - HTTP bearer
  - OAuth 2
    - Authorization code: `https://lucid.app/oauth2/authorize`
    - Token URL: `https://api.lucid.co/oauth2/token` scopes: `lucidchart.document.content:readonly`, `lucidchart.document.content:admin.readonly`, `lucidchart.document.app.picker:readonly`, `lucidchart.document.app.folder`, `lucidscale.document.content:readonly`, `lucidscale.document.content:admin.readonly`, `lucidscale.document.app.picker:readonly`, `lucidscale.document.app.folder`, `lucidspark.document.content:readonly`, `lucidspark.document.content:admin.readonly`, `lucidspark.document.app.picker:readonly`, `lucidspark.document.app.folder`

Starts an asynchronous export of one or more document pages. Use the returned job ID with the Get Document Export Job Status endpoint to check progress and obtain a download URL after the export succeeds.

The `Accept` header selects the export format. The `Idempotency-Key` header marks a job as unique: using a different idempotency key will trigger a new job request, even if the request is identical to a previous one

**Admin flow:** Account owners and document admins can export any document in their account by setting `Lucid-Request-As: admin` and authenticating with an admin scope or `DocumentAdmin` API key grant.

Synchronous and asynchronous exports share a per-account rate limit.

## Path parameters

- `id` string, uuid, required

## Query parameters

- `pageId` string[]
- `page` integer[]
- `crop` string
- `dpi` integer
- `width` integer
- `aspectRatio` 'inherit' | '1:1'

## Headers

- `Lucid-Request-As` 'admin'
- `Accept` string
- `Idempotency-Key` string

## Response `200`

OK. Returns the identifier of the queued or existing export job.

- JobReferenceIdResponse
  - `jobId` string, required: Unique identifier for an asynchronous job

## Other responses

- `400`: Bad Request. A parameter is invalid, or `page` and `pageId` were both provided.
- `403`: Forbidden. The caller does not have permission to export the document.
- `404`: Not Found. The document or a requested page does not exist.
- `406`: Not Acceptable. The requested export format is not supported.
- `429`: Too Many Requests. The account exceeded the shared export limit of 75 requests per 5 seconds.

## Changes

- **2026-11-03** `9c2c917ec59c`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/lucid/apis/lucid-rest-api/changes/v1/documents/:id/export/jobs/post.md)

---

[API](https://skmtc.dev/lucid/apis/lucid-rest-api.md) - [All operations](https://skmtc.dev/lucid/apis/lucid-rest-api/llms.txt) - [OpenAPI document](https://skmtc.dev/lucid/apis/lucid-rest-api/revisions/9c2c917ec59c?raw)
