Jump to related tools in the same category or review the original source on GitHub.

Notes & PKM @tyler6204 Updated 1/17/2026

📝 Better Notion OpenClaw Plugin & Skill | ClawHub

Looking to integrate Better Notion into your AI workflows? This free OpenClaw plugin from ClawHub helps you automate notes & pkm tasks instantly, without having to write custom tools from scratch.

What this skill does

Full CRUD for Notion pages, databases, and blocks. Create, read, update, delete, search, and query.

Install

npx clawhub@latest install better-notion

Full SKILL.md

Open original
Metadata table.
namedescription
better-notionFull CRUD for Notion pages, databases, and blocks. Create, read, update, delete, search, and query.

SKILL.md content below is scrollable.

Notion

Use the Notion API for pages, data sources (databases), and blocks.

Setup

mkdir -p ~/.config/notion
echo "ntn_your_key_here" > ~/.config/notion/api_key

Share target pages/databases with your integration in Notion UI.

API Basics

NOTION_KEY=$(cat ~/.config/notion/api_key)
curl -X POST "https://api.notion.com/v1/..." \
  -H "Authorization: Bearer $NOTION_KEY" \
  -H "Notion-Version: 2025-09-03" \
  -H "Content-Type: application/json"

Common Operations

# Search
curl -X POST "https://api.notion.com/v1/search" -d '{"query": "title"}'

# Get page
curl "https://api.notion.com/v1/pages/{page_id}"

# Get page blocks
curl "https://api.notion.com/v1/blocks/{page_id}/children"

# Create page in database
curl -X POST "https://api.notion.com/v1/pages" -d '{
  "parent": {"data_source_id": "xxx"},
  "properties": {"Name": {"title": [{"text": {"content": "Item"}}]}}
}'

# Query database
curl -X POST "https://api.notion.com/v1/data_sources/{id}/query" -d '{
  "filter": {"property": "Status", "select": {"equals": "Active"}}
}'

# Update page
curl -X PATCH "https://api.notion.com/v1/pages/{page_id}" -d '{
  "properties": {"Status": {"select": {"name": "Done"}}}
}'

# Add blocks
curl -X PATCH "https://api.notion.com/v1/blocks/{page_id}/children" -d '{
  "children": [{"type": "paragraph", "paragraph": {"rich_text": [{"text": {"content": "Text"}}]}}]
}'

# Delete page or block (moves to trash)
curl -X DELETE "https://api.notion.com/v1/blocks/{block_id}"

# Restore from trash (set archived to false)
curl -X PATCH "https://api.notion.com/v1/blocks/{block_id}" -d '{"archived": false}'

Property Types

Type Format
Title {"title": [{"text": {"content": "..."}}]}
Text {"rich_text": [{"text": {"content": "..."}}]}
Select {"select": {"name": "Option"}}
Multi-select {"multi_select": [{"name": "A"}]}
Date {"date": {"start": "2024-01-15"}}
Checkbox {"checkbox": true}
Number {"number": 42}
URL {"url": "https://..."}

2025-09-03 API Notes

  • Databases = "data sources" in API
  • Use data_source_id for both creating pages and querying
  • Get data_source_id from search results (the id field)
  • Rate limit: ~3 req/sec
Original Repository URL: https://github.com/openclaw/skills/blob/main/skills/tyler6204/better-notion
Latest commit: https://github.com/openclaw/skills/commit/1855e2946a692c983da26a0fe4a94ac917c10c75

Related skills

If this matches your use case, these are close alternatives in the same category.