Overview
The Notion connection lets deployed agents work with your Notion workspace — search, read and write pages (including reading and writing page content as markdown), query and manage databases and data sources, add comments, and look up users.- Base URL:
https://api.agntdata.dev/v1/connections/notion - Notion auth: OAuth 2.0 — connect your Notion workspace once from the dashboard. agntdata attaches a fresh access token and the required
Notion-Versionheader to every call, so you never pass anAuthorizationorNotion-Versionheader yourself. - MCP tools: agents call
connection_notion_*tools, e.g.connection_notion_search,connection_notion_get_page_markdown,connection_notion_update_page_markdown,connection_notion_create_page,connection_notion_query_data_source.
Databases vs. data sources. In Notion’s current model a database is a container whose schema (properties) and rows live in one or more data sources. Retrieve a database to get its
data_sources, read a data source to see its schema, then query rows with .../v1/data_sources/{id}/query.Setup
Connect with Notion
In the agntdata dashboard open Integrations, pick Notion, and click Connect with Notion. You’ll be redirected to Notion to authorize the workspace and choose which pages and databases the connection can access.
Share pages with the connection
Notion only exposes content you explicitly share. During authorization (or later, from a page’s ••• → Connections menu) grant access to the pages and databases your agent should reach.
Examples
Search for a page
Read a page as markdown
Create a page and set its content
Query rows in a database
Notes
- Access is share-scoped. The connection can only see pages and databases that have been shared with it — a search or query that returns nothing usually means the content hasn’t been shared yet.
- Rate limits. Notion allows roughly 3 requests/second on average; agntdata surfaces Notion’s
429responses so agents can back off. - Trashing is destructive. To move a page to Notion’s trash, call
connection_notion_update_pagewithin_trash: true(orarchived: true). It’s recoverable for a while from the Notion UI, but treat it as a delete.