Notion APIの基本の使い方とできること紹介

Knowledge Knowledge Knowledge

この記事では、「Notion APIって何?どうやって使うの?」 という初心者の方向けに、
Notion APIの基本と、どういったことができるようになるかを紹介します。

プログラミングの知識がなくても、Postmanというツールを使えばAPIを手軽に体験できます。

実際にNotion APIを使ってNotionにデータを登録・取得するところまでを解説しますのでまだ触ったことがなくて少しでも興味があれば参考にしてみてください。

Notion APIを使うと外部とアプリとの連携ができるようになってさらにNotionでの情報管理の幅が広がります。

ぜひお試しください。

この記事を読むメリット

  • Notion APIの基本の使い方が理解できて実際に動かせるようになる
  • Notion APIを使ってできることが分かる

APIとは

APIについて簡単に説明します。

APIとは「Application Programming Interface」の略で、アプリ同士のやり取り窓口のような役割です。

異なるアプリ同士でデータを取得したり、データ登録などができます。

アプリ内でできることの幅が広がるので最初の敷居が高いかもしれませんが、おすすめです。

Notion APIでできること

それでは、Notion APIではどんなことができるのか紹介します。

  • Notionのデータベースから情報を取得する
  • 新しいページを作成する
  • ページの内容を更新・削除する
  • タスク管理や情報整理を外部アプリと連携する

Notion APIを使うとこのようなことができます。

具体的には、Notionのデータベース情報をスプレッドシートにまとめたり、外部からNotionのページ追加や編集を行うことができるようになります。

そんなこと、Notion内で行ったら良いのでは?と思うかもしれません。

しかし、既存で使っているツールや資料にNotionのデータを入れたい場合やその逆を行いたい場合にNotion APIを使って情報を取得できたりすると便利です。

今日期限のタスクをLINE通知してみた

Notion APIを使って、今日期限のタスクがあったらLINE通知で知らせる仕組みを作りました。

Notion APIを使って、今日期限のタスクがあったらLINE通知で知らせる仕組み

実際のコードも載せているので気になる方はぜひ以下記事を参考にしてみてください。

Notion APIの使い方

それではここからNotion APIの使い方を紹介します。

ざっくりと流れはこんな感じになります。

  1. Notionでインテグレーションを作成する
  2. 操作対象のページとインテグレーションを共有する
  3. APIを使ってみる

Notionでインテグレーションを作成する

まずは前準備として、Notionでインテグレーションを作成します。

これはNotion APIを使う場合必須の作業になります。

Notion Developersにアクセスして、インテグレーションを新規追加します。

インテグレーション名を入力して、ワークスペースと種類を選択します。

インテグレーション追加

種類にはもう1つ「外部(Public)」があります。

これはワークスペース外の不特定多数の方にも利用可能になります。

一般に公開するWebアプリやSaaSサービス連携する場合には「外部(Public)」にする必要があります。

それ以外の自分のワークスペース内で利用する場合は「内部(Internal)」で大丈夫です。

保存ボタンをクリックして完了です。

内部インテグレーションシークレット」は後ほど使用します。

操作対象のページとインテグレーションを共有する

続いては、実際に対象のページでインテグレーションを共有します。

今回はデータベースを対象としたいので対象のデータベースのページに遷移します。

インラインデータベースの場合は、以下の「ビューのリンクをコピー」してデータベースページへ遷移します。

データベースページ遷移のためにビューのリンクをコピー

このデータベースはメモを管理するためのデータベースです。

データベースページに遷移したら、ページ左上「???」から「接続」にマウスを持っていき、外部の接続先から先ほど追加したインテグレーションを選択します。

インテグレーションの選択

これで準備は完了です。

PostmanでAPI通信やってみる

続いては実際にAPI通信を試してみます。

Postmanというツールを使います。

Postmanは、ブラウザやアプリ上でかんたんにAPIリクエストが送れるツールです。

まずは公式サイトに行き会員登録(無料)をします。

https://www.postman.com

会員登録が完了すると、このような画面に遷移するかと思います。

会員登録後トップページ

もしくは「Get Started」というボタンがあればそちらをクリックしてこの画面に遷移します。

ここでAPI通信を実行します。

Gettting started」横の「+」をクリックして新規のタブを表示させます。

Postmanリクエスト用新規タブ追加

新規追加タブが追加できたら実際にリクエストを送信します。

やることは以下になります。

  • NotionのデータベースIDを取得
  • リクエストURLの入力
  • リクエストヘッダーの入力(Notion-Version)
  • 認証のためのtokenを入力(インテグレーションシークレット)

NotionのデータベースIDを取得

まずはNotionのデータベースIDを取得します。

データベースIDはデータベースページを開いているURLに含まれています。

「https://www.notion.so/166bec0e62884958a3418eb5f4a42390?v=be2da62dc9344df196ed46ca4783ce98」の場合、「166bec0e62884958a3418eb5f4a42390」がデータベースIDになります。

「?v=~」の箇所は含まれないので注意が必要です。

リクエストURLの入力

続いては、PostmanでリクエストURLを入力していきます。

今回データベースの情報を取得するので以下のURLを使います。

「https://api.notion.com/v1/databases/<データベースID>/query」

<データベースID>の部分には、先ほどNotionで取得したデータベースIDを入れます。

PostmanにこのURLに入力します。

リクエストURLを入力

もう一点、リクエストタイプを「POST」に変更します。

デフォルトだとGETになっているかと思うので、それを「POST」にします。

リクエストヘッダーの入力(Notion-Version)

続いてはリクエストヘッダーを入力します。

Headersタブを選択し、以下のように入力します。

Headers入力

Keyに「Notion-Version」、Valueに「2022-06-28」を入力します。

認証のためのtokenを入力(インテグレーションシークレット)

最後は、Authorizationタブにインテグレーションシークレットを入力します。

Authorizationタグにインテグレーションシークレット入力

Auth Typeのセレクトボックスから「Bearer Token」を選択し、Tokenにインテグレーションシークレットを入力します。

インテグレーションシークレットは、「表示」をクリックすると、文字列が表示され、「コピー」ができるようになっています。

インテグレーションシークレットのコピー

これで準備は完了です。

「Send」ボタンをクリックすると、JSON形式のデータが返ってきました。

きちんとデータベースの内容が取得できていることが確認できました。

今日期限のタスクをLINE通知してみた

Notion APIを使って、今日期限のタスクがあったらLINE通知で知らせる仕組みを作りました。

Notion APIを使って、今日期限のタスクがあったらLINE通知で知らせる仕組み

実際のコードも載せているので気になる方はぜひ以下記事を参考にしてみてください。

Notion APIの基本

いかがだったでしょうか。

Notion APIを使って実際にデータ取得ができるようになりました。

活用方法については別の記事でまた紹介したいと思います。

少し抵抗がありましたが、やってみると割とスムーズに実行できました。

別のアプリとの連携などができるようになるとさらにNotionでのデータ管理が捗ると思います。

私も今、Notion APIで連携したアプリを構想中です。

形になったらまた紹介しようと思います。

お問い合わせ

業務効率化や業務フローにお悩みの方はぜひお気軽にご相談ください。
弊社ではどこに課題があるのかから一緒になって考え、解決策を提案いたします。

    お名前

    必須

    メールアドレス

    必須

    電話番号

    必須

    お問い合わせ内容

    必須