---
title: "Upgrade dashboard layout"
method: POST
path: "/api/v1/documents/{identifier}/upgrade"
tags: ["Documents"]
---

# Upgrade dashboard layout

`POST /api/v1/documents/{identifier}/upgrade`

Upgrades a document to the advanced dashboard layout (the "File > Upgrade layout" UI action). No-ops when the document already has advanced layout. For published documents the upgrade goes through a draft/publish workflow automatically; if a draft already exists, the request returns 409 unless `clearExistingDraft` is set to `true`.

## Path parameters

- `identifier` string, required — Document identifier (either document ID or identifier slug)

## Request body

- DocumentsUpgradeLayoutBody
  - `clearExistingDraft` boolean — When upgrading a published document, discard any existing draft instead of failing with a conflict.

## Response `200`

Layout upgraded, or no-op if the document already had advanced layout

- DocumentsUpgradeLayoutResponse
  - `identifier` string, required — Document identifier
  - `upgraded` boolean, required — True when the layout was upgraded, false when the document already had advanced layout (no-op).

## Other responses

- `400` — Document does not have a dashboard to upgrade
- `401` — Authentication required
- `403` — Permission denied
- `404` — Document not found
- `409` — A draft already exists for the published document; set clearExistingDraft to override

---

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