外部画像やファイルへの URL をリンクするためのサポートを開始した。また、image、embed 、ファイルブロックなどの新しいブロックタイプのサポートを追加した。
以下の作業が API を通じて利用可能になった。
- ファイルページプロパティ の URL 取得
- fileファイルページプロパティ の更新
API を通じてファイルをアップロードすることはできないが、すでにアップロード済みのファイルは設定できる。何がサポートされているかは ここで確認できる。
ページアイコンとカバー画像
ページオブジェクト や データベースオブジェクト を取得すると、 cover や icon the response will now include 今は
icon
と cover
プロパティが含まれる。さらに、ページの作成、 ページの更新、 データベースの作成、 データベースの更新 などにおいて、アイコンやカバーイメージを扱うことができる。せっかくなのでデータベースにアイコンを付けてみた。データベースなので、右のようなアイコンを URL で設定してみた。

#!/bin/sh curl --location --request PATCH 'https://api.notion.com/v1/databases/c63c00ad-201d-4bed-82b0-18dfca9b6ba0' \ --header 'Authorization: Bearer '"$NOTION_API_KEY"'' \ --header 'Content-Type: application/json' \ --header 'Notion-Version: 2021-08-16' \ --data '{ "icon": { "type": "external", "external": { "url": "https://img.icons8.com/ios/250/000000/database.png" } } }'
返却された JSON はこちら。icon プロパティに外部画像の URL が設定されている。カバーは設定していないので、null が入っている。データベースのページを見ると、ちゃんと上記のアイコンが設定されていることがわかる。
{ "object": "database", "id": "c63c00ad-201d-4bed-82b0-18dfca9b6ba0", "cover": null, "icon": { "type": "external", "external": { "url": "https://img.icons8.com/ios/250/000000/database.png" } }, "created_time": "2021-11-08T21:41:00.000Z", "last_edited_time": "2021-11-10T12:46:00.000Z", "title": [ { "type": "text", "text": { "content": "Changelogs", "link": null }, "annotations": { "bold": false, "italic": false, "strikethrough": false, "underline": false, "code": false, "color": "default" }, "plain_text": "Changelogs", "href": null } ], "properties": { "開示?": { "id": "%3BfBx", "name": "開示?", "type": "checkbox", "checkbox": {} }, "日付": { "id": "%3CWbe", "name": "日付", "type": "date", "date": {} }, "原題": { "id": "%3FMR%7D", "name": "原題", "type": "rich_text", "rich_text": {} }, "URL": { "id": "o%3A~F", "name": "URL", "type": "url", "url": {} }, "タグ": { "id": "tUJV", "name": "タグ", "type": "multi_select", "multi_select": { "options": [ { "id": "fcb7bc23-a43d-4ff1-967f-db59a6125492", "name": "ADDED", "color": "green" }, { "id": "05f3b6b1-b6f1-49a2-bbdb-955cfb4d36f4", "name": "IMPROVED", "color": "gray" } ] } }, "経過日数": { "id": "~Xof", "name": "経過日数", "type": "formula", "formula": { "expression": "dateBetween(now(), prop(\"日付\"), \"days\")" } }, "名前": { "id": "title", "name": "名前", "type": "title", "title": {} } }, "parent": { "type": "page_id", "page_id": "6a8efd66-5f69-4b39-96c3-089f680003e0" }, "url": "https://www.notion.so/c63c00ad201d4bed82b018dfca9b6ba0" }
新しいブロックタイプ
埋め込みオブジェクト、画像、ビデオ、ファイル、PDF、ブックマークブロックが取得・作成できるようになった。→ 子ブロック要素を追加 、 子ブロック要素を取得
ここでは特に使っていないので、使用例は省略
その他にもサードパーティのウェブアプリケーション(Typeform, Figma など) も追加できるとのこと。こちらも使用例は省略。
Notion API Changelog まとめ