Developer API
V2

创建页面

创建页面或数据库记录,并可附带首批 block children。

POST /v2/pages

创建页面

适用场景

当你要新建普通页面,或在数据库下创建一条记录时使用这个接口。它也支持在创建时一次性写入首批 block children,减少后续追加请求。

接口信息

项目内容
方法POST
路径/v2/pages
请求体page 创建参数
返回page
Scopepages.write

权限要求

需要 pages.write

请求参数

请求头

参数类型必填说明
AuthorizationstringBearer <token>
Idempotency-Keystring幂等键。相同键配合同一请求体会返回相同结果。

请求头示例:

Idempotency-Key: 3f6e6cb0-5f6a-4f31-8f7a-0f4b5f7f7f1a

请求体

参数类型必填说明
parentobject父级对象。page_id / database_id 二选一,且只能出现一个;不传时创建到当前工作区根目录。
iconobject | null页面图标。
coverobject | null页面封面。
propertiesobject页面属性。创建数据库记录时通常需要包含标题属性。
childrenblock input[]首批子块,结构与追加子块接口一致。

请求体示例:

{
  "parent": {
    "page_id": "55555555-5555-4555-8555-555555555555"
  },
  "icon": {
    "type": "emoji",
    "emoji": "📝"
  },
  "properties": {
    "title": {
      "type": "title",
      "title": [
        {
          "type": "text",
          "text": {
            "content": "发布计划"
          }
        }
      ]
    }
  },
  "children": [
    {
      "object": "block",
      "type": "paragraph",
      "paragraph": {
        "rich_text": [
          {
            "type": "text",
            "text": {
              "content": "第一版发布范围与时间安排。"
            }
          }
        ]
      }
    }
  ]
}

响应结果

{
  "object": "page",
  "id": "11111111-1111-4111-8111-111111111111",
  "page_type": "page",
  "parent": {
    "type": "page_id",
    "page_id": "55555555-5555-4555-8555-555555555555"
  },
  "in_trash": false,
  "icon": {
    "type": "emoji",
    "emoji": "📝"
  },
  "cover": null,
  "properties": {
    "title": {
      "id": "title",
      "type": "title",
      "title": [
        {
          "type": "text",
          "text": {
            "content": "发布计划",
            "link": null
          },
          "plain_text": "发布计划",
          "href": null
        }
      ]
    }
  }
}

行为说明或限制

  • parent 支持 page_iddatabase_id,二者互斥。
  • 不传 parent 时,会在当前 token 所属工作区的根目录下创建普通页面。
  • 如果你要在数据库下创建记录,请使用 parent.database_id
  • children 采用 block input 结构,字段格式与“追加块子块”接口一致。
  • children 最多 100 个顶层 block,支持有限层级嵌套。
  • 当请求使用同一个 Idempotency-Key 且请求体一致时,会返回相同结果。
  • 当相同 Idempotency-Key 对应不同请求体时,会返回幂等冲突。

错误提示

  • 400 validation_errorchildren 格式不正确,或在数据库父级下创建时缺少标题属性。
  • 401 unauthorized:token 无效或已过期。
  • 403 forbidden:缺少 pages.write 或无权访问父级。
  • 404 not_found:父级不存在。
  • 409 idempotency_conflictIdempotency-Key 已被其他请求体占用。

相关文档

前置阅读

下一步

相关参考