Notion

io.notion Storage v0.1.0

Works with Notion: create a page (in a database or under a page), get or update a page's properties, query a database (filter/sorts, cursor pagination), or append blocks to a page. Uses a Notion OAuth2 credential or a pasted internal-integration token.

Ports

DirectionPortLabel
InputinputPayload
OutputoutputResult

Properties

PropertyTypeDefaultDescription
Credential
credentialId
credential "" Use a stored credential for this connection — its fields are filled in at run start. Pick "None" to enter the connection details manually.
accepts credential templates: notion-oauth2notion-token
Access token
accessToken
string "" Notion access token — a connected OAuth2 credential or a pasted internal-integration token (secret_…). Empty is allowed here; it must resolve by run time.
Operation
operation
select "queryDatabase" Create a page, get or update a page's properties, query a database, or append blocks to a page.
createPagegetPageupdatePagequeryDatabaseappendBlocks
Parent type
parentType
select "database" Create the page inside a database (row) or under another page (subpage).
databasepage
Shown when (operation ?? "queryDatabase") === "createPage"
Parent ID
parentId
string "" The database or page ID the new page is created in — the 32-char token in its URL.
Shown when (operation ?? "queryDatabase") === "createPage"
Properties
properties
json {} Notion page properties as JSON, e.g. { "Name": { "title": [{ "text": { "content": "Task" } }] } }.
Shown when ["createPage", "updatePage"].includes(operation ?? "queryDatabase")
Children blocks
children
json [] JSON array of Notion block objects — initial content for Create page, the appended blocks for Append blocks.
Shown when ["createPage", "appendBlocks"].includes(operation ?? "queryDatabase")
Page ID
pageId
string "" The page to get or update.
Shown when ["getPage", "updatePage"].includes(operation ?? "queryDatabase")
Block ID
blockId
string "" The block (a page ID works) the children are appended to.
Shown when (operation ?? "queryDatabase") === "appendBlocks"
Database ID
databaseId
string "" The database to query.
Shown when (operation ?? "queryDatabase") === "queryDatabase"
Filter
filter
json {} Notion filter object as JSON, e.g. { "property": "Status", "select": { "equals": "Open" } }. Empty = no filter.
Shown when (operation ?? "queryDatabase") === "queryDatabase"
Sorts
sorts
json [] JSON array of Notion sort objects, e.g. [{ "property": "Due", "direction": "ascending" }]. Empty = database order.
Shown when (operation ?? "queryDatabase") === "queryDatabase"
Return all
returnAll
boolean false Follow the page cursor until every match is returned.
Shown when (operation ?? "queryDatabase") === "queryDatabase"
Limit
limit
int 100 Without Return all, stop after this many results (page size is capped at Notion's 100).
Shown when (operation ?? "queryDatabase") === "queryDatabase"
Notion version
notionVersion
string "2022-06-28" The Notion-Version header sent with every call.
Base URL
baseUrl
string "" Notion API base URL (override for testing; also NINER_NOTION_API_BASE). Blank = https://api.notion.com.
Timeout (ms)
timeoutMs
int 30000 Abort each API request after this many milliseconds.

This page is generated from the node registry by gen-node-docs.mjs on every site build — ports, properties, defaults and visibility rules cannot drift from the code.