Notion
Source: https://runstack.engineer/docs/toolkits/notion
Search, databases, pages, and blocks.
Tools (57):
| Tool | Description |
|---|---|
notionSearch | Search for pages or databases in Notion. Use this to find content by title. |
notionListDatabases | List all databases the integration has access to. Note: This uses the search API filtered to databases. |
notionQueryDatabase | Query a Notion database for pages. Allows filtering and sorting. |
notionQueryDatabaseWithFilter | Query a database with server-side property filters, sorts, and pagination. |
notionQueryDataSource | Query a data source (2025-09-03 API) with filters, sorts, filter_properties, and pagination. |
notionFetchData | Browse workspace items: search pages, databases, or both by title (empty query lists everything). Thin wrapper over search. |
notionGetPage | Get detailed information about a specific Notion page, including properties and its content (blocks). |
notionFetchRow | Retrieve a database row (page) with its properties and metadata by page ID. |
notionGetPageMarkdown | Render a full page (title + all nested blocks) as Notion-flavored markdown. Fetches the block tree via the API and converts locally. |
notionGetPageProperty | Retrieve a single property value from a page by property ID or name, with pagination support. |
notionCreatePage | Create a new page in Notion. Can be created in a database or as a child of another page. |
notionCreateNotionPage | Create a page under a parent page or database with a title, optional emoji icon/cover, and markdown content converted to blocks. |
notionInsertRowFromNL | Create a database row from a natural-language description. Fetches the schema, maps "Key: value" pairs (or comma-separated values) to properties, and uses the remainder as the title. |
notionUpdatePage | Update properties of an existing Notion page. |
notionArchivePage | Archive (trash) or restore a Notion page. Set archive false to unarchive. |
notionMovePage | Move a page to a new parent page or into a database (via its data_source_id). Uses the official move endpoint. |
notionDuplicatePage | Duplicate a page with its properties and content under a parent page (or as a row in a database). Copies nested blocks. |
notionAppendBlockChildren | Append content blocks as children of a parent block or page. |
notionAddMultiplePageContent | Bulk-add content blocks to a page/block (max 100 per call). Accepts simplified {content, block_property} items or full Notion block objects. Supports after for positioning. |
notionAppendTextBlocks | Append text blocks (paragraph, heading_1/2/3, bulleted_list_item, numbered_list_item) to a page or block. |
notionAppendCodeBlocks | Append code, quote, or equation blocks (snippets, citations, LaTeX formulas) to a page or block. |
notionAppendTaskBlocks | Append task blocks (to_do with checked state, toggleable headings, callout with icon) to a page or block. |
notionAppendMediaBlocks | Append media blocks (image, video, audio, file, pdf, embed, bookmark) with external URLs to a page or block. |
notionAppendLayoutBlocks | Append layout blocks (divider, table_of_contents, breadcrumb, column_list with columns) to a page or block. |
notionAppendTableBlocks | Append tables to a page: pass table_width, has_column_header, and rows of rich-text cells. Creates the table block plus its table_row children. |
notionReplacePageContent | Rebuild a page: list current children, optionally back them up to a new page, delete existing children, then append new blocks in batches. Supports dryRun preview. |
notionDeleteBlock | Delete (archive) a Notion block, page, or database by ID. Archived items can be restored later. |
notionUpdateBlock | Update the text content of an existing Notion block. Auto-detects the block type unless blockType is given. Max 2000 chars. |
notionFetchBlockContents | List direct child blocks of a Notion page or block with pagination. Use child IDs for deeper traversal. |
notionFetchAllBlockContents | Fetch all child blocks of a page/block, following pagination. Set recursive to also expand nested children (bounded by maxDepth/maxBlocks). Accepts a block ID or page URL. |
notionFetchBlockMetadata | Retrieve metadata (type, properties, timestamps) for a single Notion block or page. No child content. |
notionGetDatabase | Retrieve the definition of a specific Notion database, including its properties/schema. |
notionCreateDatabase | Create a new database under a parent page with a title and property schema. |
notionUpdateDatabaseSchema | Update a database title, description, or columns (rename, change type, remove). At least one change required. |
notionInsertDatabaseRow | Insert a row (page) into a database. Properties use simplified {name, type, value} entries converted to Notion format. |
notionUpdateDatabaseRow | Update a database row (page) properties, icon, or cover by row ID. Set deleteRow to archive it. |
notionUpsertDatabaseRows | Sync rows without duplicates: for each item, query the database with the match filter, update the first match or create a new row. |
notionRetrieveDatabaseProperty | Retrieve a single database column schema by property ID or name (resolved against the live database schema). |
notionListDataSourceTemplates | List page templates of a data source (used as New-dropdown templates for page creation). |
notionCreateComment | Add a comment to a page or to an existing discussion thread (discussionId). One of parentPageId or discussionId is required. |
notionFetchComments | List unresolved comments on a page or block (pages are blocks; pass either ID). |
notionRetrieveComment | Retrieve a single comment by its comment ID. |
notionListUsers | List users in the Notion workspace (bots and members; guests excluded) with pagination. |
notionGetAboutUser | Retrieve details (name, type, avatar, person/bot info) for a specific Notion user by ID. |
notionWhoAmI | Return the identity of the connected integration (bot user, workspace owner). Takes no parameters. |
notionCreateFileUpload | Initiate a file upload: single_part (direct, default), multi_part (chunked, paid workspaces), or external_url (import from public URL). |
notionListFileUploads | List file uploads for this integration, most recent first, with pagination. |
notionRetrieveFileUpload | Retrieve a file upload object (status, URL, expiry) by its ID. |
notionSendFileUpload | Send file bytes (base64) to a created file upload via multipart form data. For multi_part include partNumber; completion is attempted automatically. |
notionCreateView | Create a view (table, board, list, calendar, timeline, gallery, form, chart, map, dashboard) over a data source. Provide exactly one of databaseId, viewId (dashboard widget), or createDatabase (linked view). |
notionListViews | List view references for a database or data source (minimal id objects; retrieve each for full config). |
notionRetrieveView | Retrieve a view with full configuration (filters, sorts, layout settings) by ID. |
notionUpdateView | Update a view name, filter, sorts, quick filters, or configuration. Only provided fields change. |
notionDeleteView | Permanently delete a view by ID. A database must keep at least one view. |
notionCreateViewQuery | Execute a view query (applies the view filter/sorts) and return the first page of page references plus a query ID for paging. |
notionGetViewQueryResults | Get a page of results from a cached view query using its query ID. |
notionDeleteViewQuery | Delete a cached view query by view ID and query ID. |