Documents

Add a tab to an in-house Space document, optionally with Markdown and blocks as in createSpaceDocument

The tab lands last. name holds at most 255 characters and no "/". markdown and blocks follow createSpaceDocument (<?claude block key?> tokens).

POST
/v1/space/documents/{document_id}/tabs
curl -X POST "https://api.orchestor.io/v1/space/documents/%3Cdocument_id%3E/tabs" \  -H "Authorization: Bearer $API_KEY" \  -H "X-Workspace-ID: wks_abc123" \  -H "Content-Type: application/json" \  -d '{  "blocks": {},  "markdown": "",  "name": "string"}'
{  "data": {    "document_id": "<string>",    "id": "<string>",    "name": "<string>",    "position": 0,    "updated_at": "2026-01-01T00:00:00Z"  }}

Get your Orchestor API key

Create an API key in your workspace settings.

Authorizations

Satisfy one of these options:

  • Session cookie
  • API key

Authentication details

cookie
wos-session

Browser session established by signing in to the web app. The server checks your workspace membership and permissions. Supply X-Workspace-ID for workspace-scoped operations. For server-to-server requests, use an API key when the operation supports it.

Path Parameters

document_idstringpathrequired
Pattern
^doc_[a-f0-9]{24}$

Headers

X-Workspace-IDstringheader

Workspace to access. With a workspace-scoped API key, the server derives this value from the key, so the header is optional. If supplied, it must match the credential workspace or the request returns 403 workspace_mismatch. For interactive session requests, supply this header to select a workspace where you are a member. A project ID cannot be used as a workspace ID.

Example"wks_abc123"

Bodyapplication/jsonrequired

Additional properties
Not allowed
blocksobjectbody
blocks.*object | object | object | object | object | object | objectbody

Match at least one of the following

Variant 1: object

blocks.*.intentstringbodyrequired
String length
≤ 2000
blocks.*.typestringenum<string>bodyrequired
Allowed
pending

Variant 2: object

blocks.*.typestringenum<string>bodyrequired
Allowed
paragraph

Variant 3: object

blocks.*.captionstringbody
blocks.*.rowsobject[]bodyrequired

The rows the chart draws, as measured (≤ 2000 rows, 256 KiB).

Item count
≤ 2000
blocks.*.rows[]objectbody
blocks.*.rows[].*string | number | boolean | nullbody

Match at least one of the following

Variant 1: string

blocks.*.rows[].*stringbody

Variant 2: number

blocks.*.rows[].*numberbody

Variant 3: boolean

blocks.*.rows[].*booleanbody

Variant 4: null

blocks.*.rows[].*nullbody
blocks.*.specobjectbodyrequired
blocks.*.spec.kindstringenum<string>bodyrequired
Allowed
linebarpie
blocks.*.spec.seriesstringbody

A column whose VALUES name the series: one row per series and period.

blocks.*.spec.titlestringbodyrequired

The finding, with its number, not the topic.

String length
≥ 1
blocks.*.spec.unitstringbody
blocks.*.spec.xstringbodyrequired

The column along the axis (or the pie slices).

String length
≥ 1
blocks.*.spec.ystringbodyrequired

The measured column (numbers).

String length
≥ 1
blocks.*.typestringenum<string>bodyrequired
Allowed
chart

Variant 4: object

blocks.*.captionstringbody
blocks.*.specobjectbodyrequired
blocks.*.spec.directionstringenum<string>bodyrequired
Allowed
rightdown
blocks.*.spec.edgesobject[]bodyrequired
Item count
≤ 120
blocks.*.spec.edges[]objectbody
blocks.*.spec.edges[].fromstringbodyrequired
blocks.*.spec.edges[].labelstringbody
blocks.*.spec.edges[].tostringbodyrequired
blocks.*.spec.nodesobject[]bodyrequired
Item count
≥ 1, ≤ 60
blocks.*.spec.nodes[]objectbody
blocks.*.spec.nodes[].detailstringbody
blocks.*.spec.nodes[].idstringbodyrequired
Pattern
^[\w-]{1,64}$
blocks.*.spec.nodes[].labelstringbodyrequired
String length
≥ 1
blocks.*.spec.titlestringbodyrequired
String length
≥ 1
blocks.*.typestringenum<string>bodyrequired
Allowed
diagram

Variant 5: object

blocks.*.typestringenum<string>bodyrequired
Allowed
mention
blocks.*.userstringbodyrequired
String length
≥ 1, ≤ 320

Variant 6: object

blocks.*.refstringbodyrequired
Pattern
^project\/doc_[a-f0-9]{24}$
blocks.*.typestringenum<string>bodyrequired
Allowed
mention

Variant 7: object

blocks.*.typestringenum<string>bodyrequired
Allowed
date
blocks.*.valuestringbodyrequired
Pattern
^\d{4}-\d{2}-\d{2}$
markdownstringbodydefault:

Markdown body. CLI: UTF-8 file path or - for stdin.

String length
≤ 1000000
namestringbodyrequired
String length
≥ 1, ≤ 255

Response

application/json

Created tab

dataSpaceDocumentTabrequired
data.document_idstringrequired
data.idstringrequired
data.namestringrequired
data.positionintegerrequired
data.updated_atstringrequiredformat:date-time