Alpha: Document API is currently alpha and subject to breaking changes.
Summary
Insert a new table of contents at the target position.- Operation ID:
create.tableOfContents - API member path:
editor.doc.create.tableOfContents(...) - Mutates document:
yes - Idempotency:
non-idempotent - Supports tracked mode:
no - Supports dry run:
yes - Deterministic target resolution:
yes
Expected result
Returns a CreateTableOfContentsResult with the new TOC block address.Input fields
| Field | Type | Required | Description | |||
|---|---|---|---|---|---|---|
at | object(kind=“documentStart”) \ | object(kind=“documentEnd”) \ | object(kind=“before”) \ | object(kind=“after”) | no | One of: object(kind=“documentStart”), object(kind=“documentEnd”), object(kind=“before”), object(kind=“after”) |
config | object | no | ||||
config.hideInWebView | boolean | no | ||||
config.hyperlinks | boolean | no | ||||
config.includePageNumbers | boolean | no | ||||
config.omitPageNumberLevels | object | no | ||||
config.omitPageNumberLevels.from | integer | no | ||||
config.omitPageNumberLevels.to | integer | no | ||||
config.outlineLevels | object | no | ||||
config.outlineLevels.from | integer | no | ||||
config.outlineLevels.to | integer | no | ||||
config.rightAlignPageNumbers | boolean | no | ||||
config.separator | string | no | ||||
config.tabLeader | enum | no | "none", "dot", "hyphen", "underscore", "middleDot" | |||
config.tcFieldIdentifier | string | no | ||||
config.tcFieldLevels | object | no | ||||
config.tcFieldLevels.from | integer | no | ||||
config.tcFieldLevels.to | integer | no | ||||
config.useAppliedOutlineLevel | boolean | no |
Example request
Output fields
Variant 1 (toc.kind=“block”)
| Field | Type | Required | Description |
|---|---|---|---|
success | true | yes | Constant: true |
toc | object(kind=“block”) | yes | |
toc.kind | "block" | yes | Constant: "block" |
toc.nodeId | string | yes | |
toc.nodeType | "tableOfContents" | yes | Constant: "tableOfContents" |
Variant 2 (success=false)
| Field | Type | Required | Description |
|---|---|---|---|
failure | object | yes | |
failure.code | enum | yes | "NO_OP", "INVALID_TARGET", "TARGET_NOT_FOUND", "CAPABILITY_UNAVAILABLE", "INVALID_INSERTION_CONTEXT", "PAGE_NUMBERS_NOT_MATERIALIZED" |
failure.details | any | no | |
failure.message | string | yes | |
success | false | yes | Constant: false |
Example response
Pre-apply throws
INVALID_TARGETTARGET_NOT_FOUNDINVALID_INPUTCAPABILITY_UNAVAILABLE
Non-applied failure codes
NO_OPINVALID_INSERTION_CONTEXT
Raw schemas
Raw input schema
Raw input schema
Raw output schema
Raw output schema
Raw success schema
Raw success schema
Raw failure schema
Raw failure schema

