NotionのテーブルにNotion APIを使ってリレーションを一括追加するGoogle Colabファイルを公開しました
gist のリンク
Colab のリンク
使い方
以下の 5 ステップで進めていきます。
- NOTION_TOKEN の取得
- Notion でインテグレーションを追加する
- database_id の取得
- プロパティの編集
- 実行
1. NOTION_TOKEN の取得
https://notion.so/my-integrations から取得してください。
secret
から始まる文字列です。これをコピーして、colab のNOTION_TOKEN
に貼り付けてください。
2. Notion でインテグレーションを追加する
作成したインテグレーションを以下のように追加します。
3. database_id の取得
notion.so で、リレーションを追加したいデータベースを開きます。
URL のdatabase/
の後ろの文字列がdatabase_id
です。
ここではリレーション元がMAIN_DATABASE_ID
、リレーション先がSUB_DATABASE_ID
とします。
これらをコピーして、colab のMAIN_DATABASE_ID
とSUB_DATABASE_ID
に貼り付けてください。
4. プロパティの編集
以下の 3 つのプロパティを編集していきます。
-
SUB_DATABASE_relation_property_name
- リレーションを追加したいプロパティ名を入力してください。
-
SUB_DATABASE_property_name_searching_by
- メインデータベースを検索するのに使用するプロパティ名を入力してください。
-
MAIN_DATABASE_property_name_to_find
- 検索したいメインデータベースのプロパティ名を入力してください。
例を示しておきます。
以下の Sub Database のRelationToMain
を追加したいとします。
-
SUB_DATABASE_relation_property_name
は、以下でいうところのRelationToMain
です。 - そして、検索元のプロパティ名である
SUB_DATABASE_property_name_searching_by
は、Name
です。 - 検索したいメインデータベースのプロパティ名である
MAIN_DATABASE_property_name_to_find
は、MAIN_NAME
です。
これらを入力したらこうなります。
5. 実行
こちらで準備は完了ですので、実行してみましょう。
② の検索する方をやってみます。先ほどのデータベースのままだと1件しかなくてつまらないので、以下のように、それぞれのデータベースのNameプロパティに、同じ文字列のタイトルのアイテムを追加しておきます。
これらを一括でリレーションさせてみましょう。
実行すると、、、
無事追加されました!
同じテキストなので、無意味に思われるかもしれませんが、ここでリレーションのパワーを発揮します。
一度リレーションが追加されたら、Excel でいうVLOOKUP
のように、ロールアップの機能により、リレーション先のプロパティを取得できるのです。
以下は、MAIN_DATABASE
にステータスというプロパティを追加し、SUB_DATABASE
にロールアップでMAIN_DATABASE
のステータスを取得した例です。
まとめ
ここでは以下の 5 手順を紹介しました。
- NOTION_TOKEN の取得
- Notion でインテグレーションを追加する
- database_id の取得
- プロパティの編集
- 実行
ここでは Name というプロパティで取得しましたが、少し手直しすれば、アイデア次第で色々発展させられるのではないかと思います。
ぜひ活用してみてください。
gist のリンク
Colab のリンク
Discussion