The Notion API allows external integrations to read and write Notion content. Query and filter database entries (rows), create and update pages, manipulate block content (text, code, embeds, images), manage page properties, search across workspaces, and handle comments. Used to build CMS integrations, project tracking tools, content pipelines, and data sync applications. Requires a Notion integration with appropriate workspace permissions.
https://api.notion.com/v1
Auth type
Bearer Token
Auth header
Authorization: Bearer secret_...
Notion-Version: 2022-06-28
Rate limit
3 requests/sec per integration
Pricing
Free tier available
Free quota
Unlimited personal pages
Documentation
https://developers.notion.com
Endpoint status
Server online — HTTP 400 — server is online but path returned an error (may require auth)1.02s
(checked Mar 29, 2026)
Builder score
B
70%
builder-friendly
Create an internal integration at notion.so/my-integrations. Share your Notion pages/databases with the integration. Pass the Integration Token as a Bearer token.
Authorization: Bearer secret_... Notion-Version: 2022-06-28
| Plan | Price/mo | Included |
|---|---|---|
| Free | Free | Unlimited personal pages |
| Plus | $10 | Per user/mo, unlimited uploads |
| Business | $15 | Per user/mo, SAML SSO |
| Enterprise | $0 | Custom pricing, advanced security |
Free: unlimited personal pages, limited collaboration. Plus: $10/user/mo. Business: $15/user/mo. Enterprise: custom.
| Method | Path | Description |
|---|---|---|
| POST | /databases/{database_id}/query |
Query and filter database entries |
| POST | /pages |
Create a new page in a database or as a subpage |
| PATCH | /pages/{page_id} |
Update page properties |
| GET | /blocks/{block_id}/children |
Get child blocks (content) of a page or block |
| POST | /search |
Search across all accessible pages and databases |
| GET | /databases/{database_id} |
Get database schema and properties |
curl "https://api.notion.com/v1/databases/$NOTION_DB_ID/query" \
-H "Authorization: Bearer $NOTION_TOKEN" \
-H "Notion-Version: 2022-06-28" \
-H "Content-Type: application/json" \
-X POST \
-d '{"filter":{"property":"Status","select":{"equals":"In Progress"}},"sorts":[{"property":"Created","direction":"descending"}]}'
{
"results": [{
"id": "page-uuid-here",
"properties": {
"Name": { "title": [{ "plain_text": "Launch API Map" }] },
"Status": { "select": { "name": "In Progress" } },
"Priority": { "select": { "name": "High" } }
}
}]
}
Data sourced from API Map. Always verify pricing and rate limits against the official Notion documentation.