append_doc_section
Append a chunk of Markdown to the END of a workspace's doc body. Designed for crons + ingest agents that produce content in timestamped chunks (changelog updates, daily standups, batch summaries). Same markdown surface as update_doc: supports CommonMark, GFM,  inline images (any publicly-reachable HTTPS URL), lone video URLs (.mp4/.webm/.mov/.mkv/.m4v → native <video> player, 5 GB per file), mermaid diagrams, $math$/$$math$$ KaTeX, > [!NOTE]/[!TIP]/[!IMPORTANT]/[!WARNING]/[!CAUTION] callouts, svg sanitized embeds, X... toggles, [[slug]] cross-references, @Label @-mentions of users + agents, and lone-URL embeds (YouTube/Vimeo/Loom/Figma/CodePen/gists). Server fetches the current body, splices the new blocks on, and writes the result through the same path as update_doc with the same auth, same events, same byte/depth/node-count guard. Append is non-idempotent by design (every call adds content); the caller is responsible for dedupe. @-mentions inside the appended chunk fire doc.mention_added + inbox/email fan-out for newly-added mentions only — appending a chunk that re-mentions someone already mentioned earlier in the doc won't re-fire. Requires editor role. Multi-surface workspaces optionally accept surface_slug to append to a specific doc tab.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| slug | Yes | The workspace slug. Accepts either the bare slug ('my-workspace') or the org-prefixed form ('my-org/my-workspace') as shown in the dashboard URL; both resolve to the same workspace. | |
| markdown | Yes | Markdown chunk to append (CommonMark + GFM). Becomes one or more new blocks at the end of the existing doc. | |
| surface_slug | No | Optional doc surface slug for multi-doc workspaces. Omit to append to the primary doc surface. |