Notion - Append Content
↩ Part of the Notion integration.
Description
Section titled “Description”This module appends content to the body of a page — or to any block that accepts children — with PATCH /blocks/{id}/children.
It has two modes. If you fill children with a JSON array of blocks, that array is sent as it is, so you can add headings, lists, callouts, code blocks and anything else Notion supports. If you leave children empty and fill text, the node wraps your text in a simple paragraph block for you.
Configuration
Section titled “Configuration”| Field | Type | Required | Description |
|---|---|---|---|
credentials_id | credentials | Yes | Notion credential |
block_id | text | Yes | Parent page or block id |
text | textarea | Conditional | Plain text. Creates a paragraph. Ignored if children is set |
children | json | Conditional | Content blocks (JSON array, Notion format) |
You must fill children or text. If children is a valid array it always wins over text.
Credentials
Section titled “Credentials”This module requires a Notion credential.
| Field | Description |
|---|---|
token | Internal Integration Secret from notion.so/my-integrations |
notion_version | Optional. Value for the Notion-Version header (default 2022-06-28) |
Output
Section titled “Output”{ "nextModule": null, "data": { "object": "list", "results": [ { "object": "block", "id": "0d1e2f3a-4b5c-6d7e-8f9a-0b1c2d3e4f5a", "type": "paragraph", "paragraph": { "rich_text": [ { "plain_text": "Order 4471 shipped" } ] } } ] }, "_meta": { "moduleVersion": "1.0.0", "success": true, "id": "8b9c0d1e-2f3a-4b5c-6d7e-8f9a0b1c2d3e", "added": 1, "totalMs": 253 }}Usage Example
Section titled “Usage Example”Log a line on a page
Section titled “Log a line on a page”{ "credentials_id": 12, "block_id": "8b9c0d1e-2f3a-4b5c-6d7e-8f9a0b1c2d3e", "text": "Order {{data.order_id}} shipped on {{data.shipped_at}}."}Heading plus bullet list
Section titled “Heading plus bullet list”{ "credentials_id": 12, "block_id": "8b9c0d1e-2f3a-4b5c-6d7e-8f9a0b1c2d3e", "children": [ { "object": "block", "type": "heading_3", "heading_3": { "rich_text": [ { "type": "text", "text": { "content": "Incidents today" } } ] } }, { "object": "block", "type": "bulleted_list_item", "bulleted_list_item": { "rich_text": [ { "type": "text", "text": { "content": "{{data.incident_1}}" } } ] } }, { "object": "block", "type": "bulleted_list_item", "bulleted_list_item": { "rich_text": [ { "type": "text", "text": { "content": "{{data.incident_2}}" } } ] } } ]}- New blocks are always appended at the end of the parent. There is no insert-at-position option.
block_idcan be a page id (the most common case) or the id of a block that accepts children, such as a toggle or a column._meta.addedtells you how many blocks Notion actually created, which is a cheap way to assert the result in the next node.- Notion limits a single call to 100 blocks. Split larger bodies across several calls.
- This node writes the body of the page. To change the database columns use Update Page.
Related Nodes
Section titled “Related Nodes”- Notion - Create Page — creates the page and can send its first blocks in
children. - Notion - Update Page — update the properties instead of the body.
- Notion - Add Comment — leave a note without touching the content.