notion
Notion CLI/API for pages, Markdown content, data sources, files, comments, search, Workers, and raw API calls.
- License 许可
- MIT
- 最近更新
- 2026-11-11
- Stars
- ★ 39w
- Forks
- 8.3w
01 前言 Front Matter
- name
- notion
- homepage
- https://developers.notion.com/cli/get-started/overview
- metadata
- { "openclaw": { "emoji": "?", "install": [ { "id": "node", "bins": [ "ntn" ], "kind": "node", "label": "Install official Notion CLI (npm)", "package": "ntn" } ], "requires": { "anyBins": [ "ntn", "curl" ] }, "primaryEnv": "NOTION_API_TOKEN" } }
- description
- Notion CLI/API for pages, Markdown content, data sources, files, comments, search, Workers, and raw API calls.
03 SKILL.md 正文
Notion
Prefer official ntn CLI. Use curl only when ntn is unavailable or a raw request is clearer.
Setup
npm install -g ntn
ntn --version
ntn login
Script/headless auth:
export NOTION_API_TOKEN=secret_or_ntn_token
export NOTION_API_VERSION=2026-03-11
ntn api sets Authorization and Notion-Version automatically. It uses CLI login by default, or NOTION_API_TOKEN when set.
Inspect
ntn doctor
ntn api ls
ntn api ls --json
ntn api v1/comments --help
ntn api v1/comments --spec -X POST
ntn api v1/comments --docs -X POST
Pages
Markdown-first helpers:
ntn pages get <page-id>
ntn pages get <page-id> --json
ntn pages create --parent page:<page-id> --content '# Title\n\nBody'
ntn pages create --parent data-source:<data-source-id> < page.md
ntn pages update <page-id> --content '# Updated'
ntn pages update <page-id> < page.md
ntn pages trash <page-id> --yes
Notes:
pages getprints Markdown with page properties as frontmatter.- Content input:
--content, stdin, or editor in a TTY. - Parent refs:
page:<id>,database:<id>,data-source:<id>. - For properties/templates/full Pages API, use
ntn api v1/pages.
Data sources
ntn datasources resolve <database-id>
ntn datasources resolve <database-id> --json
ntn datasources query <data-source-id>
ntn datasources query <data-source-id> --limit 50 --json
ntn datasources query <data-source-id> --sort 'Date desc'
ntn datasources query <data-source-id> --filter '{"property":"Done","checkbox":{"equals":true}}'
Use resolve when you have a database ID. Query needs a data source ID.
Raw API
ntn api v1/users/me
ntn api v1/search query=roadmap page_size:=10
ntn api v1/pages 'parent[data_source_id]='"$DS_ID" 'properties[Name][title][0][text][content]=New item'
ntn api "v1/pages/$PAGE_ID" -X PATCH in_trash:=true
ntn api "v1/blocks/$PAGE_ID/children" -X PATCH \
'children[0][type]=paragraph' \
'children[0][paragraph][rich_text][0][text][content]=Hello'
Input syntax:
path=value: string body field.path:=json: typed JSON body field.name==value: query parameter.Header:Value: request header.--data '<json>'or stdin JSON for larger bodies.- Only one body source per request.
Files
ntn files create < image.png
ntn files create --filename photo.png --content-type image/png < /tmp/photo
ntn files create --external-url https://example.com/photo.png
ntn files get <upload-id>
ntn files list
Workers
ntn workers new
ntn workers deploy
ntn workers list --json
ntn workers runs list --json
ntn workers runs logs <run-id>
Workers may require Business/Enterprise plan and workspace enablement.
Curl fallback
curl -sS "https://api.notion.com/v1/users/me" \
-H "Authorization: Bearer $NOTION_API_TOKEN" \
-H "Notion-Version: 2026-03-11" \
-H "Content-Type: application/json"
Version notes
- Current latest API version:
2026-03-11. - Use
in_trash, notarchived. - Append block positioning uses
position, not flatafter. transcriptionblock renamed tomeeting_notes.- Databases can contain multiple data sources; page parents generally use
data_source_id.
04 同仓库更多 Skills
lobster
暂无简介
xurl
xurl CLI for authenticated X posts, replies, reads/search, DMs, media upload, followers, auth status, or raw v2 API calls.
weather
Current weather and forecasts with web_fetch, falling back to wttr.in curl for locations, rain, temperature, travel planning.
visualize
Create inline visuals for code and explanations, or author persistent OpenClaw dashboard widgets with show_widget.
trello
Manage Trello boards, lists, and cards via the Trello REST API.
tmux
Control tmux sessions/panes for interactive CLIs: list, capture output, send keys, paste text, monitor prompts.