---
title: "Request one export from an owned schedule"
method: POST
path: "/v1/exports/schedules/{scheduleId}/run"
tags: ["Exports"]
---

# Request one export from an owned schedule

`POST /v1/exports/schedules/{scheduleId}/run`

## Request

- Base URL: `https://api.kawaa.com`
- URL: `https://api.kawaa.com/v1/exports/schedules/{scheduleId}/run`
- Auth: one of:
  - API key in header `X-Api-Key`
  - HTTP bearer
  - OAuth 2 (authorization code, authorization URL `https://api.kawaa.com/oauth/authorize`, token URL `https://api.kawaa.com/oauth/token`, scopes: `exports:write`)

Available only when the account reports manual_run_available: true. Queues one export for the private worker; acceptance does not mean processing or delivery has completed. A one-off request can use a paused schedule and does not advance its recurring calendar. Both the schedule credential and requester must remain authorized for the selected data. Use one printable ASCII Idempotency-Key without spaces or commas, and reuse it after any uncertain response. A retry returns the original request, including its recorded failed or completed status. It never applies later schedule edits to the accepted request. An active schedule request prevents a second request until its final result. The replay receipt stays while work is unresolved and, after completion, for at least 30 days or the accepted output retention period, whichever is longer. A retained receipt whose completed output has been removed, is being deleted, or has expired returns 410 without restarting it. After the receipt itself expires, a request may be new; keep retries within 30 days of submission or deliberately start a new request. No verification credits are spent by this request. Completed means accepted by the delivery provider, not confirmed receipt in a mailbox.

## Path parameters

- `scheduleId` string, required

## Headers

- `Idempotency-Key` string, required

## Response `200`

Accepted request or the result of the same earlier request.

- object
  - `success` boolean, required
  - `data` object, required
    - `export_id` string, required
    - `status` 'pending' | 'completed' | 'failed', required
    - `replayed` boolean, required
    - `message` string, required

## Other responses

- `400`: Invalid or missing request key, or saved schedule settings need correction.
- `401`: No credential, or one that is not accepted. `code` distinguishes `API_KEY_SUSPENDED` (subscription ended; restartable) from `API_KEY_REVOKED`, `SESSION_EXPIRED` and `OAUTH_TOKEN_EXPIRED` (a connected app's one-hour access token lapsed: refresh it and retry, or sign in again if no refresh token was issued or the refresh is refused).
- `403`: The requester or originating schedule credential lacks current permission.
- `404`: No owned schedule matches this identifier.
- `409`: The schedule or permission changed, a run is active, or this key belongs to another requester. Retry the same key after checking the schedule.
- `410`: IDEMPOTENT_EXPORT_EXPIRED: the accepted output is no longer retained; this retry did not start another export. Use a new key for a new request.
- `429`: Too many requests. When the server knows how long to wait, `Retry-After` says so and `error.retry_after_seconds` carries the same number; the `X-RateLimit-*` headers say where you stand.
- `503`: SERVICE_UNAVAILABLE with retryable: false. Scheduling or manual runs are not available to this account, or the schedule delivers to cloud storage on a provider that is not available yet (Google Cloud Storage or Azure Blob Storage).
- `default`: Any status this operation does not list. Kawaa's own errors carry the error envelope. The gateway in front of the API can answer any operation with its own bare body (`GatewayError`): a `503` after about 29 seconds, when the request may still have run and been charged, a `413` for a body over about 6 MB, or a `400` for a path with malformed percent-encoding.

---

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