将页面添加到 multi-column 概念数据库有时会完美无缺,有时会针对相同的输入给出验证错误

Adding pages to a multi-column notion database works flawlessly sometimes and gives a validation error sometimes for the same input

基本上,我使用 Postman 将 POST 请求发送到

https://api.notion.com/v1/pages

它在 70% 的时间都有效,其余时间有时会出现以下错误。也就是说,对于相同的输入。

{
    "object": "error",
    "status": 400,
    "code": "validation_error",
    "message": "body failed validation. Fix one: body.parent.type should be not present, instead was `\"database_id\"`. body.parent.page_id should be defined, instead was `undefined`."
}

这是我的 body 的开始方式

{
    "parent": {
        "type": "database_id",
        "database_id": "a94c42320ef04b6a9c1a7e5e73455557"
    },
    "properties": {
        "Title": {
..................

我不会发布整个 body 因为它有时会完美运行。

请帮帮我。有没有办法检查进入我的页面的请求日志?

首先,我发现父类中不需要类型:database_id。

我还发现负载中的语法错误 returns 400 错误:

body failed validation. Fix one: body.parent.type should be not present, instead was `\"database_id\"`. body.parent.page_id should be defined, instead was `undefined`.

在我的例子中,我错误地添加了一个与父属性相同级别的值。像这样:

{
    "parent": {
        "database_id": "<database_id>"
    },
    "properties": {
        ...
    },
    "wrong_value": {}
}

由于错误不是那么具体,请检查您是否犯了与我相同的错误,并请仔细检查您尝试 post 的父级是否实际上是数据库,而不是页面。

问题出在请求数据的“parent”中有“type: database_id”。

{
    "parent": {
        "type": "database_id",(REMOVE THIS LINE)
        "database_id": "a94c42320ef04b6a9c1a7e5e73455557"
    },
    "properties": {
        "Title": {
..................

删除“类型”后它工作正常。 Notion 需要更新他们的文档。