All integrationsGet an API key
Notion
Search, read and update Notion pages and databases.
Productivity
Docs and knowledge
How an agent reaches it
MCPREST APICLI
How you authenticate
OAuth
API key
- Create an internal integration at notion.so/my-integrations and copy its secret.
- In Notion, open each page or database you want reachable, then Connections, then add your integration.
- Notion returns empty results rather than an error for pages the integration was never connected to, so a working token can still look broken.
Connection details
- Base URL
- https://api.notion.com/v1
- Pagination
- cursor
- MCP server
- https://mcp.notion.com/mcp
Common endpoints
| who am I | GET /users/me |
| search everything shared with me | POST /search |
| read a page | GET /pages/{page_id} |
| read page content | GET /blocks/{block_id}/children |
| query a database | POST /databases/{database_id}/query |
| create a page | POST /pages |
Worth knowing
- The Notion-Version header is REQUIRED. Without it every call 400s.
- An integration only sees pages explicitly shared with it. Empty results usually mean unshared, not missing.
- Page ids in URLs are unhyphenated; the API returns hyphenated UUIDs. Both are accepted on input.