iPhoneやMacで利用できる「ショートカット」アプリを使ってNotion APIからデータベースにレコードを追加する方法をまとめました。TODOやメモの追加など、パッとNotionに追加したい場合にとても便利です。
iPhoneショートカット×Notionは最強だった
私はTODOリストをNotionで管理しているのですが、TODOを追加したい時にいちいちNotionのアプリを開いて新規作成する手間がめんどくさくなってしまい、「もっと早く追加する方法はないのか…」と悩んでいた所、iPhoneやMacから使えるショートカットを使ってNotionに追加する方法にたどり着きました。
初期設定こそ少し面倒なものの、一度作成してしまえば追加自体は一瞬で完了してしまうので、今では毎日ショートカットからNotionにTODOを追加する毎日を送っています。
Notionアプリ上から新規追加するよりも、UX的にかなり優れていると思うので、iPhoneユーザーでNotionを使いこなしたいと考えている人はぜひ挑戦することを
ショートカットからNotionにレコードを追加するための準備
ショートカットを実行するためには、まずNotion上でいくつかの設定が必要になります。
1. インテグレーションの作成
ワークスペースの設定>コネクト>「インテグレーションを作成または管理する」と進むと、インテグレーションの管理画面が表示されます。新しいインテグレーションを作成から、インテグレーションを作成を行います。
インテグレーション名は「iPhoneショートカット」などと登録しておけば、後で見た時に分かりやすいと思います。種類は「内部」を選択します。
インテグレーションの作成が完了したら、「内部インテグレーションシークレット」の値をメモしておきます。後ほどショートカットで登録する時に利用するので、一旦どこかに貼り付けておきましょう。
2. データベースにインテグレーションの権限を付与
インテグレーションを作成しただけではデータベースにアクセスすることができないので、Notion上のデータベースのページを開き、画面右上の三点リーダーから「接続」または「コネクト」の項目を見つけて、先ほど追加したインテグレーションを追加してください。
もしショートカット作成後にデータベースにアクセスできないというエラーが発生した場合は、ここの接続が上手くいっていない可能性があるので、確認してみましょう。
3. データベースのidをメモ
データベースのidはURLから確認することができます。Notionアプリからリンクをコピーするか、ブラウザからアクセスしてデータベースのページのURLを確認してください。
https://www.notion.so/{id}?v=xxxxxx
のようなURLになっているので、id部分だけをコピーしてメモしておきます。これも後ほどショートカット作成時に使用するのでどこかに残しておいてください。
ショートカットからNotionにTODOリストを追加する方法
ショートカットの作成はMacとiPhoneのどちらも持っていれば、Macから追加することができます。説明上でもMacのスクリーンショットを使って説明していますが、iPhone上でも同様に操作すれば問題なく設定することができるので、iPhoneのみ持っている人でも設定できます。
Notionデータベースにレコードを追加するためのショートカットアプリで行う内容をステップに分けると下記の通りです。今回はTODOリストの追加をゴールとしていますが、TODOリストに限らずデータベースへのレコード追加であれば同様に追加することが可能です。
おおまかな流れは下記の通りです。
- TODOのタイトルを入力:「入力を要求」を使ってテキストを入力する
- Notion APIからデータベースにレコードを追加:「URLの内容を取得」を使ってPOSTする
- 追加されたレコードのidを取得:「辞書の値を取得」でレスポンスからidを取得する
- idのハイフンを削除:idに含まれるハイフンがURLでは不要のため、「テキストを置き換え」でハイフンを消す
- 追加されたページを表示:「URLを開く」でNotionアプリ上で追加されたページを表示する
下記に、それぞれのステップについて詳しく説明します。
1. TODOのタイトルを入力
「入力を要求」からテキスト入力を追加します。「プロンプト」という所をクリックすると、テキストボックス上部に表示されるテキストを変更することができるので、「TODOのタイトルを入力」などと書いておくと分かりやすいです。Notionページに改行は無いので、複数行を許可はオフにしておきましょう。
2. データベースにレコードを追加
「URLの内容を取得」アクションから、POSTメソッドを使ってNotion APIからデータベースにレコードを追加します。ヘッダとボディ(本文)に分かれており、それぞれ設定内容について解説します。
まずヘッダについては下記の通りに設定します。Authorizationの所はショートカットアプリの仕様上、文字列が長すぎてBearer以降が見切れてしまいますが、きちんと登録されていることを確認してください。
- Content-Type:
application/json
- Notion-Version:
2022-06-28
- Authorization:
Bearer {Token}
(Bearer ntn_123abc...
のような文字列になります)
次にボディ(本文)については、上記の画像の通りに登録すればOKです。種類でJSONを選択してキーと種類、値の3つがそれぞれ上記の画像と同じように登録してください。ただし、いくつか注意点があるので説明します。
- Title:ここは、Notion上で登録したプロパティ名を入力します。自分で設定していない場合、「Name」や「名前」になっていると思うので、それぞれデータベース上でどのようなプロパティ名になっているかを確認して設定しましょう。小文字のtitleの方は、プロパティ名によらず「title」と入力しておけば大丈夫です。
- database_id:上記の画像では隠していますが、それぞれデータベースのidを平文で入力してください。
- content:contentについては、値の箇所で右クリック>変数を挿入>入力を要求と進むことで、ショートカットで自分が入力したテキストを設定することができます。
3. レコードのidを取得
【注意】レコードの追加自体はステップ②までで完了しているので、TODOの追加後にNotionアプリで追加されたページを表示しなくても良ければ、ステップ③以降は設定しなくて大丈夫です。
ステップ②のPOSTリクエストを投げると、レスポンスでページのidなど登録内容が返ってくるため、idを取得します。「辞書の値を取得」というアクションを追加して、 id
の値を取得します。
4. ハイフンの削除
レスポンスで返ってくるidにはハイフンが含まれていますが、URLでアクセスする際にはハイフンが不要なので、置換を実行してハイフンを消します。「テキストを置き換え」アクションで -
を空欄に置き換えます。「世界」と表示されているのは、ショートカットアプリの仕様で空欄の場合には「世界」と表示されるようになっているだけで、実際には何も設定していません。
5. ページを開く
「URLを開く」アクションから、 https://www.notion.so/
と入力してから右クリック>変数を挿入>アップデートされたテキストを選択すると、ステップ④でハイフンを消したidを追加することができ、正しく追加が完了していればNotionアプリが起動してそのページが表示されます。
エラーが発生している場合は正しく動作しないので、レスポンスからエラーの内容を確認してみてください。
おわりに
ショートカットを追加したら、ホーム画面に追加やアクションボタンへのショートカット登録ですぐに呼び出してNotionに追加することが可能です。
また、使い方によっては下記のような応用も可能なので、自分に合った便利な使い方を見つけてみてください。
- 特定の場所に到着したら自動で時間をショートカットからNotionに記録する
- 音声入力を使ってショートカットからNotionに追加する
- 背面タップ機能を使ってショートカットを実行してNotionに追加する
iPhoneのショートカット活用法やNotionの便利な使い方など、気になる情報を見つけたらまた記事としてまとめたいと思うので、気になる方はチェックしてみてください。