Notion API エンドポイント全て使ってみる「Pages」編
はじめに
Notion API エンドポイント全て使ってみる「Databases」編 に続き
Pages に関するエンドポイントをまとめた記事です。
対象
Notion API を普段から利用している方
Notion API の詳細が気になるけど調べるのが面倒な方
Notion API でどんな機能があるのか気になる方
概要
Notion API では様々なエンドポイントが用意されています。
その中でも今回は「Pages」に関する機能にフォーカスを当て
Todoリストを操作していきます。
※APIの実行はPostman経由で行います。
Notion API とは
今回は普段利用されている前提
詳細は下記公式ページを参照ください
Pagesで用意されているエンドポイント
以降はそれぞれのエンドポイントに関する概要と
実際のNotionイメージと共にまとめていきます。
Create a page
新しいページを作成できるAPIで
ページにはタイトル、親ページ、ページタイプ、プロパティ、コンテンツなどを含めることが可能です。
実行前のDatabase
リクエストの例
POST <https://api.notion.com/v1/pages>
Notion-Version: 2022-06-28
Content-Type: application/json
Authorization: Bearer <MY_SECRET_KEY>
{
"parent": {
"database_id": "DATABASE_ID"
},
"properties": {
"Title": {
"title": [
{
"text": {
"content": "Create a page の動作確認"
}
}
]
},
"Status": {
"select": {
"name": "In Progress"
}
},
"Description": {
"type": "rich_text",
"rich_text": [
{
"type": "text",
"text": {
"content": "新規ページを作成させる"
}
}
]
},
"Created at": {
"type": "date",
"date": {
"start": "2023-09-07"
}
}
},
"children": [
{
"object": "block",
"type": "paragraph",
"paragraph": {
"rich_text": [
{
"type": "text",
"text": {
"content": "This is a new page"
}
}
]
}
}
]
}
実行後のDatabase
Retrieve a page
指定したページの情報を取得するAPIです。
ページには、親ページ、ページタイプ、プロパティ、コンテンツなどの情報が含まれます。
リクエストの例
GET <https://api.notion.com/v1/pages/{PAGE_ID}>
Notion-Version: 2022-06-28
Authorization: Bearer <MY_SECRET_KEY>
Retrieve a page property item
指定したページのプロパティの値を取得するAPIです。
取得できる情報には、タイトル、テキスト、数値、日付、チェックボックスなどが含まれます。
リクエストの例
GET <https://api.notion.com/v1/pages/{PAGE_ID}/properties/{PROPERTY_NAME}>
Notion-Version: 2022-06-28
Authorization: Bearer <MY_SECRET_KEY>
Update page properties
指定したページのプロパティを更新するAPIです。
プロパティには、タイトル、テキスト、数値、日付、チェックボックスなどが含まれます。
実行前のDatabase
リクエストの例
PATCH <https://api.notion.com/v1/pages/{PAGE_ID}>
Notion-Version: 2022-06-28
Content-Type: application/json
Authorization: Bearer <MY_SECRET_KEY>
{
"properties": {
"Status": {
"select": {
"name": "In Progress"
}
},
"Description": {
"type": "rich_text",
"rich_text": [
{
"type": "text",
"text": {
"content": "ページのプロパティを更新させる"
}
}
]
},
"Created at": {
"type": "date",
"date": {
"start": "2023-09-08"
}
}
}
}
実行後のDatabase
Archive a page
指定したページをアーカイブするAPIです。
アーカイブされたページはデータベースから非表示になりますが、後で再度表示することも可能です。
実行前のDatabase
リクエストの例
PATCH <https://api.notion.com/v1/pages/{PAGE_ID}>
Notion-Version: 2022-06-28
Content-Type: application/json
Authorization: Bearer <MY_SECRET_KEY>
{
"archived": true
}
実行後のDatabase
ちなみにarchived
をfalse
にすることで削除したNotionページの復元が可能です。
さいごに
この記事では、Notion APIにおけるPagesに関するエンドポイント解説してきました。
Pagesには、新しいページの作成やページ情報の取得、プロパティの値の取得や更新、ページのアーカイブなどの機能が含まれており、これらの機能を活用することで、Notion上のタスクを自動化したり、プロジェクトの進捗状況を追跡するといったことが可能だなと改めて感じました。
また直感的に値を設定できたりと実装する時に組み込みやすいのも嬉しいポイントですね。
それぞれのエンドポイントのリクエストの例も載せているので少しでも参考になれば何よりです。
Discussion