---
title: "Replace a Form tab's form whole (an agent's form write): `{ form, rev? }`. The tab takes the form's heading as its name, and the change reaches everyone with the document open. 409 form_changed (with `rev`) when the tab moved past the revision given, 409 form_locked while the form takes responses and the change is more than its settings, 400 not_a_form_tab. Edit access."
method: POST
path: "/documents/{id}/tabs/{tabId}/form"
tags: ["Documents"]
---

# Replace a Form tab's form whole (an agent's form write): \`{ form, rev? }\`. The tab takes the form's heading as its name, and the change reaches everyone with the document open. 409 form_changed (with \`rev\`) when the tab moved past the revision given, 409 form_locked while the form takes responses and the change is more than its settings, 400 not_a_form_tab. Edit access.

`POST /documents/{id}/tabs/{tabId}/form`

## Request

- Base URL: `https://www.livediagram.app/api`
- URL: `https://www.livediagram.app/api/documents/{id}/tabs/{tabId}/form`
- Auth: one of:
  - HTTP bearer
  - API key in header `X-Owner-Id`

## Path parameters

- `id` string, required
- `tabId` string, required

## Request body

- object
  - `form` object, required
  - `rev` integer

## Response `200`

Success.

## Other responses

- `400`: Error.
- `401`: Error.
- `403`: Error.
- `404`: Error.
- `409`: Error.
- `410`: Error.
- `413`: Error.
- `429`: Rate limited. Back off and retry.

---

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