
この記事の要点
- Notionは、タスク管理やプロジェクト管理、メモの作成・共有など、業務に必要な機能がまとまっている万能なアプリである
- APIを使えば他のソフトウェアとの連携やNotion内のワークフローの自動化が可能
- 業務効率化や生産性アップにも繋がる
以前、Webブラウザで使えるおすすめのブラウザメモ帳7選の中の1つとして、Notionをご紹介していました。
ビジネス・プライベートの両方で利用可能な万能アプリのNotionは、日本国内・海外の両方で人気を集めています。
Notionは、ワークフローを効率よく一元管理できるのが魅力ですが、NotionのAPIを利用することで、Notionと他のソフトウェアを連携させたり、ワークフローを自動化させたり、さらに便利に使えます。
本記事では、NotionのAPIでできること、PythonやJavaScriptからの操作や他サービスとの連携について解説します。
目次
Notionとは
Notionとは、タスク管理やプロジェクト管理、メモの作成・共有など、業務に必要な機能を一括して搭載しているアプリのことです。
Notion
https://www.notion.so/ja-jp
以前、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上で適当なデータベースを作る
- サイドバーから「Add a page」をクリックする。
- 「DATABASE」から「Table」を選択する。
- 「Name」に適当に名前を入力して「OPEN」をクリックする。

- プロパティの編集を行う
データベースとアカウントを紐づける
- ページ右上の「Share」をクリックする。
- 先程追加した「API integration」を選択して「Invite」する。

- 右上の「・・・」をクリックして「Copy link」をクリックする。

以上の操作で、データベースの取得やページの追加、火付け・状態を指定した上での追加ができるようになります。
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の連携手順は下記のとおりです。
- Slackのワークスペースにアクセスする。
- 左のサイドバーにある「App」をクリックする。
- アプリの追加画面に移行したら「notion」と入力する。
- 「利用可能なアプリ」に「Notion Platform」が表示されたら「追加」をクリックする。
- Slack app directoryに移る
- 「Notion Platform」があることを確認して「slackに追加」をクリックする。
- Notionにアクセスしたらログインする。
- 「設定」をクリックして「接続済みアプリ」の項目から「slack」を見つけて「接続」をクリックする。次の画面で「許可する」をクリックする。
連携手順については、下記の動画も参考にしてみてください。
https://www.youtube.com/watch?v=pLwIXjQfO9g
他にもGAS経由でNotionにアクセスしたり、スプレッドシートと連携させたり、多彩な使い方や連携が可能です。
下記の動画も参考にしてみてください。
まとめ
今回は、NotionのAPIでできること、PythonやJavaScriptからの操作や他サービスとの連携について解説しました。
NotionのAPIを使えばNotion内の作業を自動化したり、他のソフトウェアと連携したり、様々なことが可能になります。
業務効率化にも繋がるので、ぜひ本記事で紹介したやり方を試してみてください。