The append endpoint converts Markdown text to Notion blocks and appends them directly to an existing Notion page. This combines the convert functionality with direct Notion integration.Full Markdown Support: The append endpoint uses the same conversion engine as the /api/convert endpoint, which means it supports all markdown features including:
HTML colors: <span style="color: red">colored text</span>
GFM alerts (callouts): > [!NOTE], > [!WARNING], etc.
Nested lists with unlimited depth
Tables with headers
All standard formatting (bold, italic, code, strikethrough)
If you already have Notion block JSON (for example from a previous /convert call or another system), use the /append-blocks endpoint to append without reconverting.
The Markdown content to convert and append. The API accepts both actual newlines and escaped sequences (\n, \r\n, \r), so you can use either format based on your tooling.
Use the lastBlockId from the response to chain multiple append operations:
Copy
// First appendconst firstAppend = await appendToNotion({ markdown: "# First section", // ... other params});// Second append after the firstconst secondAppend = await appendToNotion({ markdown: "# Second section", after: firstAppend.data.lastBlockId, // ... other params});
Handles unlimited nesting depth (5, 6, 7+ levels) by breaking into sub-requests while maintaining parent-child relationships
Large Document Support
Automatically splits documents with 1000+ blocks into manageable chunks without losing content order
Content Truncation Warnings
Provides clear warnings when URLs or equations are truncated, so you know exactly what was modified
Transparent Pricing
Every append request counts as exactly 1 API call, regardless of internal complexity
Perfect Coverage: Mark2Notion handles 100% of applicable Notion API limits automatically. You can send any markdown content without worrying about hitting Notion’s restrictions.