Notion
Notion API for creating and managing pages, databases, and blocks. Full CRUD via REST API.
Tags: notion, productivity, database, api
Category: Productivity
Use Cases
- Project tracking: create and update tasks in Notion databases from chat
- Meeting notes: AI creates structured pages after discussions
- CRM management: add contacts, update deal stages, log activities
- Content pipeline: draft articles, track publishing status
- Knowledge base maintenance: add documentation, update FAQs
- Automated reporting: cron job that updates dashboards with fresh data
- Tweet thread drafting: create threads in Notion for review before posting
Tips
- Always use Notion-Version: 2022-06-28 in your API calls for reliable property handling
- Share databases with the integration explicitly — the AI can only access what's been shared
- Use database queries with filters instead of searching — much faster and more precise
- For long content, split into multiple paragraph blocks (2000 char limit per rich_text element)
- Create a 'template' page manually, then use the API to duplicate its structure
- Combine with OpenClaw cron for automated database updates (daily reports, status tracking)
- Use the database as a two-way communication channel: human updates status → webhook → OpenClaw acts
- Keep your integration token in NOTION_API_KEY env var for automatic injection
Known Issues & Gotchas
- Must use Notion-Version: 2022-06-28 header — newer versions have property format issues
- Integration must be explicitly shared with each page/database it needs to access
- Notion API has rate limits: 3 requests/second per integration — avoid tight loops
- Block content has a 2000-character limit per rich_text array element
- Database queries return max 100 results per page — pagination required for large datasets
- Page content must be added as blocks after creating the page — can't include full body in create call
- Nested blocks (toggles, columns) require separate API calls to add children
- Property types are strict — sending wrong format silently fails or returns cryptic errors
Alternatives
- Notion MCP Server (Composio)
- Apple Notes (memo)
- Obsidian
- Airtable API
- Linear API
Community Feedback
6 days with OpenClaw & Notion — actually worth it? Treat it like hiring, not installing. I gave my AI a name (Ezra), a job title (chief of staff), and a Notion account. Sounds silly. Turned out to be the single most useful framing decision I made.
— Reddit r/Notion
In OpenClaw, a skill is not a tool — it's instructions the agent reads. The bundled Notion skill teaches the agent how to use curl with the Notion API to create pages, query databases, and manage blocks.
— AnswerOverflow (OpenClaw Discord)
Building OpenClaw integrations with Notion and Slack — a custom skill so the agent can create/update deals, move pipeline stages, log activities, and schedule follow-ups.
— LinkedIn
Through Notion API integration, OpenClaw enables AI agents to directly operate your Notion workspace — creating pages, updating databases, managing blocks — all through natural language.
— Meta Intelligence
Configuration Examples
Set up Notion integration
# 1. Go to notion.so/my-integrations
# 2. Create a new internal integration
# 3. Copy the token
export NOTION_API_KEY="ntn_your_token_here"
# 4. Share target pages/databases with the integration
# (Click '...' on a page → 'Add connections' → select your integration)Query a database
curl -s -X POST 'https://api.notion.com/v1/databases/YOUR_DB_ID/query' \
-H 'Authorization: Bearer '"$NOTION_API_KEY" \
-H 'Notion-Version: 2022-06-28' \
-H 'Content-Type: application/json' \
-d '{"filter": {"property": "Status", "select": {"equals": "In Progress"}}}' | jqCreate a page with content
curl -s -X POST 'https://api.notion.com/v1/pages' \
-H 'Authorization: Bearer '"$NOTION_API_KEY" \
-H 'Notion-Version: 2022-06-28' \
-H 'Content-Type: application/json' \
-d '{
"parent": {"database_id": "YOUR_DB_ID"},
"properties": {
"Name": {"title": [{"text": {"content": "New Task"}}]},
"Status": {"select": {"name": "To Do"}}
}
}' | jq '.id'Installation
# Requires NOTION_API_KEY env varHomepage: https://developers.notion.com
Source: bundled