NotionのAPIでできることとは?PythonやJavaScriptからの操作や他サービスとの連携

この記事の要点

  • Notionは、タスク管理やプロジェクト管理、メモの作成・共有など、業務に必要な機能がまとまっている万能なアプリである
  • APIを使えば他のソフトウェアとの連携やNotion内のワークフローの自動化が可能
  • 業務効率化や生産性アップにも繋がる

以前、Webブラウザで使えるおすすめのブラウザメモ帳7選の中の1つとして、Notionをご紹介していました。

【最新版】Webブラウザで使えるおすすめのブラウザメモ帳7選

ビジネス・プライベートの両方で利用可能な万能アプリのNotionは、日本国内・海外の両方で人気を集めています。

Notionは、ワークフローを効率よく一元管理できるのが魅力ですが、NotionのAPIを利用することで、Notionと他のソフトウェアを連携させたり、ワークフローを自動化させたり、さらに便利に使えます。

本記事では、NotionのAPIでできること、PythonやJavaScriptからの操作や他サービスとの連携について解説します。

Notionとは

Notionとは、タスク管理やプロジェクト管理、メモの作成・共有など、業務に必要な機能を一括して搭載しているアプリのことです。

Notion
https://www.notion.so/ja-jp

以前、Notionの特徴と便利な使い方について詳しくご紹介していました。

【初心者必見】Notionの使い方と特徴・活用例|日本語対応でさらに便利に

近年、世界各国で人気を集めており、動作や同期のスピード、シンプルなUI設計など、誰もが使いやすいのが特徴だと言えるでしょう。

Notionは無料のパーソナルプランでもブロックやページ数に制限がありません。

パソコン・スマートフォン・タブレットなど、対応しているデバイスも豊富です。

NotionのAPIでできること

NotionのAPIでできることは下記のとおりです。

データベースの操作

データベースの取得やページの追加、データベースの要素をフィルター or ソートした結果を取得することが可能です。

ページの操作

ページの取得や新規追加、ページの更新や削除などが可能です。

ブロック操作

ブロックの取得やブロック要素の追加が可能です。

ユーザーの操作

ユーザー情報やユーザーリストの取得やページ/データベースの検索、クエリによる検索などが可能です。

APIを使ってNotion内のワークフローの自動化や他のソフトウェアと連携させることによって、業務を効率化できるようになります

例えば、SalesforceとNotionを連携させてSalesforce上での契約が締結される度にNotionのデータベースで自動的に追加される仕組みを作ることが可能です。

NotionのAPIをPythonから操作する方法

ここではNotionのAPIをPythonから操作する方法・ポイントを解説していきます。

基本的には下記の流れで行っていきます。

シークレットキーを取得する

下記のデベロッパーサイトからAPIシークレットキーを入手しましょう。

https://www.notion.so/my-integrations

NotionのAPIでできることとは?PythonやJavaScriptからの操作や他サービスとの連携_APIシークレットキーを入手する

手続きを進めていき、シークレットキーが発行出来たらメモ帳などに保存しておきましょう。

Notion上で適当なデータベースを作る

  1. サイドバーから「Add a page」をクリックする。
  2. 「DATABASE」から「Table」を選択する。
  3. 「Name」に適当に名前を入力して「OPEN」をクリックする。NotionのAPIでできることとは?PythonやJavaScriptからの操作や他サービスとの連携_データベースを作成する
  4. プロパティの編集を行う

データベースとアカウントを紐づける

  1. ページ右上の「Share」をクリックする。
  2. 先程追加した「API integration」を選択して「Invite」するNotionのAPIでできることとは?PythonやJavaScriptからの操作や他サービスとの連携_招待する
  3. 右上の「・・・」をクリックして「Copy link」をクリックする。NotionのAPIでできることとは?PythonやJavaScriptからの操作や他サービスとの連携_リンクをコピー

以上の操作で、データベースの取得やページの追加、火付け・状態を指定した上での追加ができるようになります。

NotionのAPIをJavaScriptから操作する方法

NotionのAPIはJavaScriptからでも操作が可能です。

ポイントについて簡潔に解説していきます。

JavaScript ライブラリの「JavaScript SDK」がOSSとして公開されており、API Referenceの右列に載っているサンプルコードを利用していきましょう。

また、下記のとおり様々な制約があるので注意が必要です。

  • 更新系の処理ができない
  • テキスト以外のブロックがとれない
  • レートに秒間3回までの制限がある
  • ブロックにサイズ制限がある
  • Retrieveは100要素までの上限がある
  • データベースの要素は基本的にcreated_time順で返ってくる

NotionのAPIとSlack,GASとの連携

NotionとSlackはどちらもテレワークの人気ツールとして多くの人が使っています。

NotionのAPIとSlackを連携させることで、より快適に利用することが可能です。

連携させることで、下記のようなメリットがあります。

  • ツールをわざわざ切り替える手間を削減できる
  • Notionを更新した時にSlackで通知できる
  • Slack内のやり取りをNotionでナレッジ化できる
  • テレワーク業務全般の効率化が可能
  • 社内の情報共有がスムーズになる

NotionとSlackの連携手順は下記のとおりです。

  1. Slackのワークスペースにアクセスする。
  2. 左のサイドバーにある「App」をクリックする。
  3. アプリの追加画面に移行したら「notion」と入力する。
  4. 「利用可能なアプリ」に「Notion Platform」が表示されたら「追加」をクリックする。
  5. Slack app directoryに移る
  6. 「Notion Platform」があることを確認して「slackに追加」をクリックする。
  7. Notionにアクセスしたらログインする。
  8. 「設定」をクリックして「接続済みアプリ」の項目から「slack」を見つけて「接続」をクリックする。次の画面で「許可する」をクリックする。

連携手順については、下記の動画も参考にしてみてください。

https://www.youtube.com/watch?v=pLwIXjQfO9g

他にもGAS経由でNotionにアクセスしたり、スプレッドシートと連携させたり、多彩な使い方や連携が可能です。

下記の動画も参考にしてみてください。

まとめ

今回は、NotionのAPIでできること、PythonやJavaScriptからの操作や他サービスとの連携について解説しました。

NotionのAPIを使えばNotion内の作業を自動化したり、他のソフトウェアと連携したり、様々なことが可能になります。

業務効率化にも繋がるので、ぜひ本記事で紹介したやり方を試してみてください。