---
title: "List document drafts"
method: GET
path: "/v1/documents/{documentId}/drafts"
tags: ["Documents"]
---

# List document drafts

`GET /v1/documents/{documentId}/drafts`

<Note>
  This endpoint requires **Viewer** permissions or higher on the specified document.
</Note>

List all drafts attached to a published document. A document in Omni can have up to one draft per branch plus one draft not attached to a branch.

By default, returns active drafts only. Pass `?include=archived` to include soft-deleted drafts retained for approximately 7 days.

## Path parameters

- `identifier` string, required

## Query parameters

- `include` 'archived'

## Response `200`

List of drafts retrieved successfully. Results are sorted in descending order using the draft's `updatedAt`.

- object[]
  - `identifier` string — The identifier of the draft.
  - `publishedIdentifier` string — The identifier of the published document this draft is attached to.
  - `workbookModelId` string, uuid — The UUID of the workbook model.
  - `branch` object, nullable — The branch this draft is attached to, or `null` for draft not attached to a branch. A document can only have one draft not attached to a branch.
    - `id` string, uuid — The UUID of the branch.
    - `name` string, nullable — The name of the branch. Can be `null` if the branch is unnamed.
  - `status` 'active' | 'archived' — The status of the draft.
  - `draftOutOfDate` boolean — Indicates whether the draft is [out of date](/content/develop/branch-mode#working-with-out-of-date-drafts) compared to the published document.
  - `createdAt` string, date-time — Timestamp when the draft was created.
  - `updatedAt` string, date-time — Timestamp when the draft was last updated.
  - `createdBy` object — User who created the draft.
    - `name` string — Display name of the user who created the draft.
  - `lastEditedBy` object — User who last edited the draft.
    - `name` string — Display name of the user who last edited the draft.

## Other responses

- `400` — Bad Request Possible error messages: - `Invalid include parameter value`
- `401` — Unauthorized - Invalid or missing API key
- `403` — Forbidden Possible error messages: - `You do not have permission to view this document.` - Authenticating user must have **Viewer** permissions or higher on the document
- `404` — Not Found Possible error messages: - `Document with identifier <identifier> not found` - `Published document with id <identifier> does not exist` - Document exists but has not been published
- `429` — Too Many Requests - Rate limit exceeded (60 requests/minute)

---

[API](https://skmtc.net/omni/apis/omni-api.md) · [All operations](https://skmtc.net/omni/apis/omni-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/omni/omni-api/revisions/6b02f7349d0e/schema)
