Pipory
Node reference

Notion

Notion node reference - all 43 operations, the credential it needs, and a worked example.

Calls the Notion API with an internal integration token across 43 operations, grouped by resource: pages (create in a database, create a row from JSON, create under a page, get, get as markdown, get one property, update properties, set icon and cover, lock/unlock, move to a new parent, trash, restore), blocks (append a paragraph, append a heading/list/to-do/quote/callout/code/divider, append raw JSON blocks, get, list children, update text, trash, restore), databases (create, get with its data sources, update title and appearance, query rows, trash), data sources (query rows, get the property schema, add one to a database, change the schema), users (list, get, get the integration's own bot user), comments (add to a page or block or reply to a discussion, list, get, edit, delete), title search across pages and data sources, and the file-upload flow (start, upload contents, finish a multi-part upload, get status, list). Requests are sent with Notion-Version 2026-03-11, so database rows are read through data sources; every operation names the integration capability it needs, and every list returns Notion's cursor so a Loop node can walk all pages.

Credential: Notion integration token - see Credentials.

Capabilitys

Each operation below lists the capability it needs. Capabilitys are ticked on the integration at notion.so/my-integrations — and the page or database must ALSO be shared with the integration under ••• → Connections. If a run fails with a permission error, the node names the missing capability in the error - grant it and re-run; you do not need to rebuild the workflow.

Operations (43)

Pages

OperationWhat it doesCapability
createPageCreate page in a databaseInsert content
createDatabaseItemCreate database row from JSONInsert content
createChildPageCreate page under a pageInsert content
retrievePageGet pageRead content
retrievePageMarkdownGet page as markdownRead content
retrievePagePropertyGet one page propertyRead content
updatePagePropertiesUpdate page propertiesUpdate content
updatePageIconSet page icon and coverUpdate content
setPageLockLock or unlock page editingUpdate content
movePageMove page to a new parentUpdate content
archivePageMove page to trashUpdate content
restorePageRestore page from trashUpdate content

Blocks

OperationWhat it doesCapability
appendBlockAppend paragraphInsert content
appendRichBlockAppend heading, list, to-do or codeInsert content
appendBlocksJsonAppend blocks from JSONInsert content
retrieveBlockGet blockRead content
retrieveBlockChildrenList child blocksRead content
updateBlockUpdate block textUpdate content
deleteBlockMove block to trashUpdate content
restoreBlockRestore block from trashUpdate content

Databases

OperationWhat it doesCapability
createDatabaseCreate databaseInsert content
retrieveDatabaseGet database and its data sourcesRead content
updateDatabaseUpdate database title or appearanceUpdate content
queryDatabaseQuery database rowsRead content
archiveDatabaseMove database to trashUpdate content

Data sources

OperationWhat it doesCapability
queryDataSourceQuery data source rowsRead content
retrieveDataSourceGet data source schemaRead content
createDataSourceAdd data source to a databaseInsert content
updateDataSourceUpdate data source schemaUpdate content

Users

OperationWhat it doesCapability
listUsersList workspace usersRead user information
retrieveUserGet userRead user information
retrieveBotUserGet my integration userRead user information

Comments

OperationWhat it doesCapability
createCommentAdd commentInsert comments
listCommentsList commentsRead comments
retrieveCommentGet commentRead comments
updateCommentUpdate commentInsert comments
deleteCommentDelete commentInsert comments
OperationWhat it doesCapability
searchSearch pages and data sourcesRead content

Files

OperationWhat it doesCapability
createFileUploadStart a file uploadInsert content
sendFileUploadUpload file contentsInsert content
completeFileUploadFinish a multi-part uploadInsert content
retrieveFileUploadGet upload statusRead content
listFileUploadsList uploadsRead content

Example

File each inbound support email as a row in a Notion database

A Gmail trigger delivers a new support email. The node creates a page in the support database using the subject as the row title, and drops the body in as the page's first paragraph block so the whole ticket is readable without leaving Notion.

Set Operation to createPage, then fill in:

FieldValueNotes
databaseId1a2b3c4d5e6f7890abcdef1234567890The 32-character id from the database URL. Open it in Notion, ••• -> Connections, and add your integration or every call 404s
titlePropertyNameThe database's title column; defaults to Name when left empty
title{{trigger.subject}}The value written into that title column
iconEmoji📨Optional page icon

Sets {{ticket.id}} (the new page id), {{ticket.url}} (its Notion link), {{ticket.properties}} and the full page at {{ticket.page}}. Feed {{ticket.id}} into a second Notion node's blockId to append more blocks.