You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

调用Notion API创建数据库页面时出现page_id验证错误如何解决

报错原因

你代码里动态添加Professor属性的逻辑存在位置错误,直接将该属性写到了请求体data的根节点,而非properties子节点下,非法的根节点字段触发了Notion API校验逻辑的异常,最终误报了page_id相关的校验错误。
如果你确认parent变量确实是正确的字符串类型数据库ID,那大概率就是这个赋值位置错误导致的校验异常。不排除你在代码其他位置意外给data['parent']对象添加了值为null的page_id字段的可能性。

解决方法

  1. 修正Professor属性的赋值路径,将其写入properties节点下:
if prof:
    # 原错误写法:data['Professor'] = ...
    data['properties']['Professor'] = {
        "rich_text": [
            {
                "text": {
                    "content": prof
                }
            }
        ]
    }
  1. 增加调试打印逻辑,确认parent是纯字符串类型,且data['parent']中仅包含database_id一个键:
# 打印parent变量的类型和值,确认是字符串类型的数据库ID
print(type(parent), parent)
# 打印parent字段的完整内容
print(data['parent'])
# 如果发现存在多余的page_id字段,手动删除
if 'page_id' in data['parent']:
    del data['parent']['page_id']
  1. 确认请求头中添加了正确的Notion版本标识,示例如下:
headers = {
    "Authorization": "Bearer 你的token",
    "Notion-Version": "2022-06-28",
    "Content-Type": "application/json"
}

内容的提问来源于stack exchange,提问作者lovefaithswing

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.04 06:57:01