アルパカログ

📅  2021-05-17

Notion APIのPrivate Betaを使い始めよう


いよいよ待ちに待ったNotion APIのベータ提供が始まりました。

このブログは非公式APIを使ったNotion Blogなので、公式APIへの移行手順も追って紹介していきたいと思っています。

さて、このエントリではcURLコマンドでNotion APIを叩けるようになるまでの手順を紹介したいと思います。

1. インテグレーションを追加しよう

APIを使用するにはまず自分のワークスペースにインテグレーションを追加する必要があります。

すでにワークスペースをお持ちの方は下記のURLにアクセスして "Create new integration" からインテグレーションを追加しましょう。

image in the content

"Basic information" のフォームが表示されます。ここの "Name" はAPIを使用するためのBotユーザーの名前です。適当な名前を入れて "Submit" で追加しましょう。

2. 生成されたシークレットを保管しておく

インテグレーションを追加すると、APIを使用するためのシークレットが生成されるので、パスワード管理アプリなどに保管しておきましょう。

image in the content

ページ下部で "Internal integration" と "Public Integration" が選択できますが、今回は "Internal integration" のままにしておきます。

3. データベースを作成しBotユーザーにShareする

Notionからデータベースを作成し、先ほどインテグレーションと一緒に追加したBotユーザーにShareします。

データベースのページを開いた状態で、右上の "Share" からBotユーザーを追加しましょう。

これでBotユーザーを介してAPIであなたのワークスペースにアクセスするための準備が整いました。

4. データベースIDを取得する

作成したデータベースのページをWebブラウザ(アプリではなく)で開きます。

URLが https://www.notion.so/xxx/DATABASE_ID?v=xxxxxx のようになっている (?v=xxx が付いている) ことを確認し、 DATABASE_ID の部分をコピーします。

Notion Blog で BLOG_INDEX_ID を使っていた人は、 BLOG_INDEX_ID のページの1階層下のページになるので注意してください。

cURLでアクセスしてみよう

cURLコマンドを使ってデータベース情報を取得してみましょう。

利便性のためにデータベースIDを DATABASE_ID に、シークレットを NOTION_API_SECRET にセットしておきます。

また、 NOTION_VERSION には 2021-08-16 のように、下記ページで確認した最新の Notion API バージョンをセットします。

export NOTION_API_SECRET=xxxxx
export DATABASE_ID=xxxxx
export NOTION_VERSION=xxxxx

下記のようにcURLコマンドを実行してデータベース情報を取得します。

curl 'https://api.notion.com/v1/databases/'"$DATABASE_ID"'' -H 'Authorization: Bearer '"$NOTION_API_SECRET"'' -H 'Notion-Version: '"$NOTION_VERSION"

データベースオブジェクトを表すJSONが返ってきたら成功です。

APIリファレンスは下記にあるので、ぜひいろいろ遊んでみてくださいね。

以上です。

このエントリではcURLコマンドでNotion APIを叩けるようになるまでの手順を紹介しました。

同じカテゴリーの記事


おすすめ記事


最新記事


カテゴリー