誰よりも早く NotionAPI 入門してみた
我らが Notion.待ちわびた API.
翻訳ではないですが,自分が触った感じで,触り方と感想を書いていきます.
公式はこちら
※現在は Beta 版
公式から入門する
なによりも胸躍るGet Started
最初にcurlコマンドが使えるようにと,Integrationを作るようにと言ってます.
Integrationはこちらから作成
New integration
を押します
- Name を決める
- Logo がアップデート可能
- 紐付ける自分の Workspace を選択
Submit
すると Secrets にInternal Integration Token
が表示される
Show
を押すとコピーできる
Integration type を選択
Public はレビューが必要となることがあるそうです.いろいろと情報を入力する必要もあり,面倒なので,今回は Internal にします.
Save changes
を押す
卍 超 ★ 絶 ★ 簡 ★ 単 卍
Integration と Notion のデータベースを紐付ける
今回は API を使用するページを新しく作成します.既存の Database でも OK ですが,いろいろ試してみてからのほうがいいかも.
Notion アプリでさっき Integration と紐付けた Workspace 内で新しくページを作成し,右上のShare
からInvite
を押すと先程のIntegrationが表示れされています.
クリックしてしっかりと招待してあげます.
次に,このページにデータベースのテーブルを inline で作っておきます.(FullScreen でも OK)
そして,この Database のブロックの Copy link を取得して,この URL をブラウザで表示し,このDatabaseのID
を取得しておきます.
例えば,https://www.notion.so/nob-space/882c1faffcda4sfa650889c0f4dcf3a98?v=19a9778da7870adadb21dafaed7793d5b29
という URL だったとした,?v=
の前の882c1faffcda4sfa650889c0f4dcf3a98
の部分がこのDatabaseのID
になります.
API を叩いて Database にデータを追加する
そんで,以下の curl コマンドを叩くとこのページにコンテンツが追加されるようです.
curl -X POST https://api.notion.com/v1/pages \
-H "Authorization: Bearer {MY_NOTION_TOKEN}" \
-H "Content-Type: application/json" \
-H "Notion-Version: 2021-05-13" \
--data '{
"parent": { "database_id": "{DATABASE_ID}" },
"properties": {
"Name": {
"title": [
{
"text": {
"content": "これであなたもNotion API"
}
}
]
}
}
}'
{MY_NOTION_TOKEN}
と{DATABASE_ID}
は上記で取得したInternal Integration Token
とDatabaseのID
にすり替える. ※{}
ごと
今回は Database にタイトルのみのデータが追加されているかと思います.
ようは,Integrationを招待した箇所のDatabase の IDであればなんでもできるかと思います.
ここまでが,入門の内容です!
その他の操作に関してはこれから学習して,React のアプリで,Notion の Database に投稿するものを作ってみたいと思います!
めっちゃ楽しみ!
感動のあまり,動画貼る
Discussion
現在ReactやNext.jsなどのフロントではnotion-sdkが使用できないようです.バックエンドの処理にAPIを書いて試してます.ReactやNext.jsでできたよって人いましたら報告していただけると嬉しいです!
Next.jsのAPIでできた.