Skip to content

Latest commit

 

History

History
348 lines (322 loc) · 7.73 KB

File metadata and controls

348 lines (322 loc) · 7.73 KB
title create.paragraph
sidebarTitle create.paragraph
description Create a standalone paragraph at the target position. To add a list item, use lists.insert instead.

{/* GENERATED FILE: DO NOT EDIT. Regenerate via pnpm run docapi:sync. */}

Summary

Create a standalone paragraph at the target position. To add a list item, use lists.insert instead.

  • Operation ID: create.paragraph
  • API member path: editor.doc.create.paragraph(...)
  • Mutates document: yes
  • Idempotency: non-idempotent
  • Supports tracked mode: yes
  • Supports dry run: yes
  • Deterministic target resolution: yes

Expected result

Returns a CreateParagraphResult with the new paragraph block ID and 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")
in StoryLocator no StoryLocator
text string no

Example request

{
  "at": {
    "kind": "documentStart"
  },
  "in": {
    "kind": "story",
    "storyType": "body"
  }
}

Output fields

Variant 1 (success=true)

Field Type Required Description
insertionPoint TextAddress yes TextAddress
insertionPoint.blockId string yes
insertionPoint.kind "text" yes Constant: "text"
insertionPoint.range Range yes Range
insertionPoint.range.end integer yes
insertionPoint.range.start integer yes
paragraph ParagraphAddress yes ParagraphAddress
paragraph.kind "block" yes Constant: "block"
paragraph.nodeId string yes
paragraph.nodeType "paragraph" yes Constant: "paragraph"
ref string no
success true yes Constant: true
trackedChangeRefs TrackedChangeAddress[] no

Variant 2 (success=false)

Field Type Required Description
failure object yes
failure.code enum yes "INVALID_TARGET"
failure.details any no
failure.message string yes
success false yes Constant: false

Example response

{
  "insertionPoint": {
    "blockId": "block-abc123",
    "kind": "text",
    "range": {
      "end": 10,
      "start": 0
    }
  },
  "paragraph": {
    "kind": "block",
    "nodeId": "node-def456",
    "nodeType": "paragraph"
  },
  "ref": "handle:abc123",
  "success": true,
  "trackedChangeRefs": [
    {
      "entityId": "entity-789",
      "entityType": "trackedChange",
      "kind": "entity",
      "story": {
        "kind": "story",
        "storyType": "body"
      }
    }
  ]
}

Pre-apply throws

  • TARGET_NOT_FOUND
  • CAPABILITY_UNAVAILABLE
  • INVALID_TARGET
  • AMBIGUOUS_TARGET
  • STORY_NOT_FOUND
  • STORY_MISMATCH
  • STORY_NOT_SUPPORTED
  • CROSS_STORY_PLAN
  • MATERIALIZATION_FAILED

Non-applied failure codes

  • INVALID_TARGET

Raw schemas

```json { "additionalProperties": false, "properties": { "at": { "description": "Position: {kind:'documentEnd'} to append, {kind:'documentStart'} to prepend, or {kind:'before'|'after', target:{kind:'block', nodeType:'...', nodeId:'...'}} for relative placement.", "oneOf": [ { "additionalProperties": false, "properties": { "kind": { "const": "documentStart" } }, "required": [ "kind" ], "type": "object" }, { "additionalProperties": false, "properties": { "kind": { "const": "documentEnd" } }, "required": [ "kind" ], "type": "object" }, { "additionalProperties": false, "properties": { "kind": { "const": "before" }, "target": { "$ref": "#/$defs/BlockNodeAddress" } }, "required": [ "kind", "target" ], "type": "object" }, { "additionalProperties": false, "properties": { "kind": { "const": "after" }, "target": { "$ref": "#/$defs/BlockNodeAddress" } }, "required": [ "kind", "target" ], "type": "object" } ] }, "in": { "$ref": "#/$defs/StoryLocator" }, "text": { "description": "Paragraph text content. Each call creates ONE paragraph. For multiple items (e.g. list items), call superdoc_create separately for each item — do NOT use newlines to put multiple items in one paragraph.", "type": "string" } }, "type": "object" } ``` ```json { "oneOf": [ { "additionalProperties": false, "properties": { "insertionPoint": { "$ref": "#/$defs/TextAddress" }, "paragraph": { "$ref": "#/$defs/ParagraphAddress" }, "ref": { "description": "Ref handle for the created block. Pass directly to superdoc_format or superdoc_edit ref param without searching.", "type": "string" }, "success": { "const": true }, "trackedChangeRefs": { "items": { "$ref": "#/$defs/TrackedChangeAddress" }, "type": "array" } }, "required": [ "success", "paragraph", "insertionPoint" ], "type": "object" }, { "additionalProperties": false, "properties": { "failure": { "additionalProperties": false, "properties": { "code": { "enum": [ "INVALID_TARGET" ] }, "details": {}, "message": { "type": "string" } }, "required": [ "code", "message" ], "type": "object" }, "success": { "const": false } }, "required": [ "success", "failure" ], "type": "object" } ] } ``` ```json { "additionalProperties": false, "properties": { "insertionPoint": { "$ref": "#/$defs/TextAddress" }, "paragraph": { "$ref": "#/$defs/ParagraphAddress" }, "ref": { "description": "Ref handle for the created block. Pass directly to superdoc_format or superdoc_edit ref param without searching.", "type": "string" }, "success": { "const": true }, "trackedChangeRefs": { "items": { "$ref": "#/$defs/TrackedChangeAddress" }, "type": "array" } }, "required": [ "success", "paragraph", "insertionPoint" ], "type": "object" } ``` ```json { "additionalProperties": false, "properties": { "failure": { "additionalProperties": false, "properties": { "code": { "enum": [ "INVALID_TARGET" ] }, "details": {}, "message": { "type": "string" } }, "required": [ "code", "message" ], "type": "object" }, "success": { "const": false } }, "required": [ "success", "failure" ], "type": "object" } ```