アルパカログ

📅  2021-05-17

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


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

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

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

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

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

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

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

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

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

ページ下部で "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_TOKEN にセットしておきます。

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

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

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

以上です。

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