Alpha: Document API is currently alpha and subject to breaking changes.
Summary
Insert a TC (table of contents entry) field at the target paragraph.- Operation ID:
toc.markEntry - API member path:
editor.doc.toc.markEntry(...) - Mutates document:
yes - Idempotency:
non-idempotent - Supports tracked mode:
no - Supports dry run:
yes - Deterministic target resolution:
yes
Expected result
Returns a TocEntryMutationResult with the created entry address on success.Input fields
| Field | Type | Required | Description |
|---|---|---|---|
level | integer | no | |
omitPageNumber | boolean | no | |
tableIdentifier | string | no | |
target | object(kind=“inline-insert”) | yes | |
target.anchor | object(nodeType=“paragraph”) | yes | |
target.anchor.nodeId | string | yes | |
target.anchor.nodeType | "paragraph" | yes | Constant: "paragraph" |
target.kind | "inline-insert" | yes | Constant: "inline-insert" |
target.position | enum | no | "start", "end" |
text | string | yes |
Example request
{
"level": 1,
"tableIdentifier": "example",
"target": {
"anchor": {
"nodeId": "node-def456",
"nodeType": "paragraph"
},
"kind": "inline-insert",
"position": "start"
},
"text": "Hello, world."
}
Output fields
Variant 1 (entry.kind=“inline”)
| Field | Type | Required | Description |
|---|---|---|---|
entry | object(kind=“inline”) | yes | |
entry.kind | "inline" | yes | Constant: "inline" |
entry.nodeId | string | yes | |
entry.nodeType | "tableOfContentsEntry" | yes | Constant: "tableOfContentsEntry" |
success | true | yes | Constant: true |
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", "INVALID_INPUT" |
failure.details | any | no | |
failure.message | string | yes | |
success | false | yes | Constant: false |
Example response
{
"entry": {
"kind": "inline",
"nodeId": "node-def456",
"nodeType": "tableOfContentsEntry"
},
"success": true
}
Pre-apply throws
TARGET_NOT_FOUNDINVALID_TARGETINVALID_INPUTCAPABILITY_UNAVAILABLE
Non-applied failure codes
NO_OPINVALID_INSERTION_CONTEXT
Raw schemas
Raw input schema
Raw input schema
{
"additionalProperties": false,
"properties": {
"level": {
"maximum": 9,
"minimum": 1,
"type": "integer"
},
"omitPageNumber": {
"type": "boolean"
},
"tableIdentifier": {
"type": "string"
},
"target": {
"additionalProperties": false,
"properties": {
"anchor": {
"additionalProperties": false,
"properties": {
"nodeId": {
"type": "string"
},
"nodeType": {
"const": "paragraph"
}
},
"required": [
"nodeType",
"nodeId"
],
"type": "object"
},
"kind": {
"const": "inline-insert"
},
"position": {
"enum": [
"start",
"end"
]
}
},
"required": [
"kind",
"anchor"
],
"type": "object"
},
"text": {
"type": "string"
}
},
"required": [
"target",
"text"
],
"type": "object"
}
Raw output schema
Raw output schema
{
"oneOf": [
{
"additionalProperties": false,
"properties": {
"entry": {
"additionalProperties": false,
"properties": {
"kind": {
"const": "inline"
},
"nodeId": {
"type": "string"
},
"nodeType": {
"const": "tableOfContentsEntry"
}
},
"required": [
"kind",
"nodeType",
"nodeId"
],
"type": "object"
},
"success": {
"const": true
}
},
"required": [
"success",
"entry"
],
"type": "object"
},
{
"additionalProperties": false,
"properties": {
"failure": {
"additionalProperties": false,
"properties": {
"code": {
"enum": [
"NO_OP",
"INVALID_TARGET",
"TARGET_NOT_FOUND",
"CAPABILITY_UNAVAILABLE",
"INVALID_INSERTION_CONTEXT",
"INVALID_INPUT"
]
},
"details": {},
"message": {
"type": "string"
}
},
"required": [
"code",
"message"
],
"type": "object"
},
"success": {
"const": false
}
},
"required": [
"success",
"failure"
],
"type": "object"
}
]
}
Raw success schema
Raw success schema
{
"additionalProperties": false,
"properties": {
"entry": {
"additionalProperties": false,
"properties": {
"kind": {
"const": "inline"
},
"nodeId": {
"type": "string"
},
"nodeType": {
"const": "tableOfContentsEntry"
}
},
"required": [
"kind",
"nodeType",
"nodeId"
],
"type": "object"
},
"success": {
"const": true
}
},
"required": [
"success",
"entry"
],
"type": "object"
}
Raw failure schema
Raw failure schema
{
"additionalProperties": false,
"properties": {
"failure": {
"additionalProperties": false,
"properties": {
"code": {
"enum": [
"NO_OP",
"INVALID_TARGET",
"TARGET_NOT_FOUND",
"CAPABILITY_UNAVAILABLE",
"INVALID_INSERTION_CONTEXT",
"INVALID_INPUT"
]
},
"details": {},
"message": {
"type": "string"
}
},
"required": [
"code",
"message"
],
"type": "object"
},
"success": {
"const": false
}
},
"required": [
"success",
"failure"
],
"type": "object"
}

