网淘吧来吧,欢迎您!

Notion CLI – Command Line Interface based access to Notion for your agent

2026-03-30 新闻来源:网淘吧 围观:3
电脑广告
手机广告

notion-cli 通过notion-cli与您的Notion工作空间进行交互。

一个适用于Notion API的生产级CLI工具,支持搜索、创建和管理页面、数据库、块、用户和评论,并提供多种输出格式(JSON、表格、CSV)。

Notion CLI – Command Line Interface based access to Notion for your agent

安装 克隆并安装CLI:

git clone https://github.com/FroeMic/notion-cli
cd notion-cli
npm install
npm run build
npm link

设置NOTION_API_KEY环境变量:

  1. https://www.notion.so/profile/integrations
  2. 创建一个集成复制内部集成密钥(以ntn_secret_
  3. 开头)
  • 将您想要访问的任何页面/数据库与该集成共享推荐:添加到~/.claude/.env
  • 以供Claude Code使用备选方案:添加到~/.bashrc~/.zshrcexport NOTION_API_KEY="your-api-key"

可选:设置NOTION_DEBUG=true以启用详细的请求/响应日志记录。

代码仓库:https://github.com/FroeMic/notion-cli

命令 跨工作区搜索:

notion search [query]                                  # Search pages, databases, and data sources
notion search [query] --filter page                    # Search only pages
notion search [query] --filter database                # Search only databases
notion search [query] --sort ascending                 # Sort by last edited time

处理页面:

notion pages get <page-id>                             # Get page details
notion pages create --parent <id> --title <text>       # Create a new page
notion pages update <page-id> --properties <json>      # Update page properties
notion pages archive <page-id>                         # Archive a page
notion pages restore <page-id>                         # Restore an archived page
notion pages property <page-id> <property-id>          # Get a specific property value

处理数据库:

notion databases get <database-id>                     # Get database schema
notion databases create --parent <id> --title <text>   # Create a database
notion databases update <database-id> --title <text>   # Update database metadata
notion databases query <data-source-id>                # Query records in a data source
notion databases query <id> --filter <json>            # Query with filters
notion databases query <id> --sort <json>              # Query with sorting

处理区块(页面内容):

notion blocks get <block-id>                           # Get a block
notion blocks children <block-id>                      # List child blocks
notion blocks append <block-id> --content <json>       # Append new blocks
notion blocks update <block-id> --content <json>       # Update a block
notion blocks delete <block-id>                        # Delete a block

处理用户:

notion users list                                      # List workspace members
notion users get <user-id>                             # Get user details
notion users me                                        # Get the authenticated bot user

处理评论:

notion comments list --block <block-id>                # List comments on a block
notion comments create --page <page-id> --content <text>  # Add a comment to a page

全局选项(所有命令均可用):

--api-key <key>                                        # Override NOTION_API_KEY env var
-f, --format <fmt>                                     # Output format: json (default), table, csv
--limit <n>                                            # Max results to return
--cursor <cursor>                                      # Pagination cursor

核心概念

概念用途示例
页面独立的Notion页面会议记录、项目简报
数据库结构化的页面集合任务追踪器、CRM表格
数据源数据库中的单个表数据库中的特定视图/表
页面内的内容元素段落、标题、列表、代码块
属性数据库页面上具有类型的字段标题、状态、日期、选择、关联
用户工作空间成员和集成团队成员、机器人集成
评论页面/块上的讨论线程反馈、审阅备注

API 参考

  • 基础 URL:https://api.notion.com/v1
  • API 版本:2022-06-28
  • 认证:Authorization: Bearer $NOTION_API_KEY
  • 速率限制:采用指数退避算法自动重试(最多重试3次)

常见API操作 搜索页面:

curl -X POST https://api.notion.com/v1/search \
  -H "Authorization: Bearer $NOTION_API_KEY" \
  -H "Notion-Version: 2022-06-28" \
  -H "Content-Type: application/json" \
  -d '{"query": "Meeting Notes", "filter": {"value": "page", "property": "object"}}'

使用筛选条件查询数据库:

curl -X POST https://api.notion.com/v1/databases/<database-id>/query \
  -H "Authorization: Bearer $NOTION_API_KEY" \
  -H "Notion-Version: 2022-06-28" \
  -H "Content-Type: application/json" \
  -d '{"filter": {"property": "Status", "status": {"equals": "In Progress"}}}'

在数据库中创建页面:

curl -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": "<database-id>"}, "properties": {"Name": {"title": [{"text": {"content": "New Task"}}]}}}'

向页面追加内容:

curl -X PATCH https://api.notion.com/v1/blocks/<block-id>/children \
  -H "Authorization: Bearer $NOTION_API_KEY" \
  -H "Notion-Version: 2022-06-28" \
  -H "Content-Type: application/json" \
  -d '{"children": [{"object": "block", "type": "paragraph", "paragraph": {"rich_text": [{"type": "text", "text": {"content": "Hello world"}}]}}]}'

注意事项

  • 必须通过Notion界面明确将集成应用分享至每个需要访问的页面或数据库(操作路径:...菜单 > 连接 > 添加您的集成应用)。
  • 页面可接受UUID或Notion链接格式的ID——命令行工具将自动解析这两种格式。
  • 所有列表接口均支持通过--limit--cursor参数实现基于游标的分页。
  • 输出格式可通过-f标志设置为json(默认)、表格csv格式。
  • 属性类型包括:标题、富文本、数字、选择、多选、状态、日期、人员、文件、复选框、网址、电子邮件、电话号码、关联、汇总、公式和时间戳字段。

文件 共1个

  • SKILL.md(此文件)

免责申明
部分文章来自各大搜索引擎,如有侵权,请与我联系删除。
打赏
文章底部电脑广告
手机广告位-内容正文底部

相关文章

您是本站第349244名访客 今日有175篇新文章/评论