開発者は ページプロパティの取得 を使うことで、ページプロパティの値だけを取得することができるようになった。長い値、大量のページ参照、リレーション、ロールアップなどがあった場合には、ページネーションも可能になっている。詳細は documentation で確認すること。
property_id
を取得するためには、データベースの取得 を使う。私は「データベースプロパティオブジェクトにプロパティ名が含まれるようになった 」で property_id を取得できているので、これを使ってこのページの URL プロパティ(property_id
は o%3A~F
)を取得してみる。#!/bin/sh curl 'https://api.notion.com/v1/pages/84b32037457b474184ce4045feb7460e/properties/o%3A~F' \ -H 'Authorization: Bearer '"$NOTION_API_KEY"'' \ -H 'Notion-Version: 2021-08-16'
返ってきた JSON はこちら。プロパティ一つだけなので後処理が簡単そう。
{ "object": "property_item", "type": "url", "url": "https://developers.notion.com/changelog/retrieve-page-property-values" }
title
, rich_text
, relation
, people
の属性については、ページネーションされるとのこと。サンプルページにはそんな例がないので検証は省略。'Show Original', 'Show unique', 'Count unique', 'Median' のタイプのロールアップについては、フラット化されたリストが戻るとのこと。それ以外のロールアップについては、リレーションのリストとページネーション後の日付や数値型のプロパティタイプを返す。これもサンプルに例がないので検証は省略
Notion API Changelog まとめ