この連載では「Notionに画像を置くだけで、自動で加工→保存→記録」まで進むワークフローを作ります。第2回はその土台づくり。Notionとn8nを安全に接続し、データベースを読み取って一覧取得できるところまで完成させます。ここができれば、第3回以降のSlack通知や画像加工がスムーズに進みます。今回やることと全体の流れ本記事のゴールは、n8nからNotionデータベースを読み取れるようにすることです。ここができると、次の Slack通知 や 画像加工 といった自動化の処理を組み立てるための“土台(ベース)” がしっかり整います。今回やることは、次の3ステップだけ👇NotionでIntegrationを作る対象データベースにIntegrationを共有するn8nでCredentialsを設定し、Notionノードでデータ取得テストを行う前提条件今回のゴールは「n8nからNotionデータベースを読み取ること」。そのために、次の4つが準備できていればOKです① Notion側の準備Integrationを作成できる権限があること(管理者または作成権限が必要)読み取りたいデータベース(例:作品管理DB)が用意されていること → まだない場合は、前回の記事を参考にしてください。② n8n側の準備n8nが動く環境があること(クラウド版 or ローカル版どちらでもOK)n8nの基本操作(ワークフロー作成/ノード追加)がわかるレベルでOKです。③ データ構造の確認前回作成した「写真管理データベース」をそのまま使います。 プロパティ名型役割 季節セレクト春・夏・秋・冬などを選択(後で条件分岐に使用)元画像ファイル&メディア加工前の画像ファイルをアップロード加工済画像URLURLn8nが加工後に出力するGoogle DriveのURLを格納処理済チェックボックス自動処理が完了したかどうかを記録用語解説Integration(Notion):Notionと外部サービスをつなぐための接続設定。作成すると「シークレットキー(APIトークン)」が発行され、このキーを使ってn8nなどの外部ツールがNotionのデータを読み書きできるようになります。ただし、Integrationを対象のデータベースに共有(Share)しないとアクセス権がないため、必ず招待しておきましょう。Credentials(n8n):サービスごとの認証情報をまとめて管理するn8nの設定。NotionのIntegrationシークレットをここへ保存し、各ノードから参照します。プロジェクトが増えても再利用できるのが利点。手順手順1|NotionでIntegrationを作成最初にNotionを開いたら、左下の設定をクリック接続をクリックインテグレーションを作成または管理するをクリック新しいインテグレーションを作成します仮の名称でインテグレーション名「N8N接続」にしておきます。名称はあとでも使用するので、分かりやすいものをつけておきましょう。新しいインテグレーションが作成が完了すると下記のように追加されてるので、クリックして開きます。内部のインテグレーションシークレットをコピーしておきましょう※このシークレットを知っている人は Notion にアクセスできるため、 絶対に外部に公開しないようにしましょう手順2|Notionのデータベースに n8n Integration を共有する接続したいデータベースを開く右上の 「…(三点リーダー)」 をクリックメニューの下のほうにある 「接続」 を押す「コネクトを探す…」の検索欄に、 → 作成した Integration 名(例:「N8N接続」)を入力一覧に出てきた Integration をクリックすると、 → データベースに共有(許可)が完了共有が成功すると、接続欄に Integration 名が表示 されるようになります手順3|n8nで新しいワークフローを作成n8nのダッシュボードを開く右上の 「+New Workflow」 をクリックワークフロー名を分かりやすくつける → 例:「Notion DB接続テスト」画面中央左の 「Add first step…」 をクリックして最初のノードを追加する。手順4|最初に Manual Trigger を追加する「Add first step…」をクリックすると、ワークフローを “どのタイミングで開始するか” を選べるノード検索画面が表示されます👇今回は、まずテストしやすい Manual Trigger(手動実行) を使います。💡 補足:n8nは「いつ動かすか」を色々選べるここで出てくるノードは、n8nが “どのタイミングで” 実行されるかを決める「開始(トリガー)」です。Manual Trigger 以外にも、たとえば:On app event: Notion・Airtable・Telegram などのアプリで何か起きた時に実行On a schedule: 毎日・毎週・毎時など、決まった時間で自動実行On webhook call: 外部サービス(LINE、Bubble、Webhookなど)から呼び出されたら実行On form submission: n8n内で作ったフォームが送信された時に実行On chat message: AIチャットやメッセージ受信時に実行 (例:チャットボットやAIアシスタント)When executed by another workflow: 別のワークフローから呼び出された時に実行 (複雑な処理を分割するときに便利)今回は まず動きを確認することが目的 のため、何度でも実行しやすい Manual Trigger を使っています。手順5|Notion ノードを追加するまずはプラスボタンをクリック検索バーに 「Notion」 と入力表示された Notion ノードをクリック今回は “Notionからデータがきちんと取得できるか” を確認するのがゴールなので、Notionノードでは『Get many database pages』を選択します。これが、写真データベースの中身をまとめて取得できる最もシンプルなアクションです。手順6|n8nで Notion の Credential を設定しようNotionノードを追加したら、n8nがNotion APIにアクセスできるよう Integration Secret を登録します。Credentials to connect with の右にある編集ボタンをクリックInternal Integration Secretに、Notionで発行した Integration Secret(APIキー) を入力し右上にあるSaveボタンをクリック。※ 第1回で Notion の Integration を作成したときに発行したキー 👉 この状態になっていれば、n8n と Notion の接続は正常に完了です!Connection tested successfullyと記載の緑色のボックスが表示される「Retry(再テスト)」ボタンが表示されるエラー文が一切出ていない手順7|Notion データベースを選択するここでは どのデータベースを読み取るか を n8n に教えてあげます。 ① Resource は「Database Page」を選ぶResource(リソース) は「何を対象に操作するか?」を指定する部分。今回の目的はデータベースの“中にあるページ一覧(レコード)”を読みたいので、" Resource = Database Page"に設定します。② Database に「写真管理DB」を指定する次に、Notion 内のどのデータベースを使うのか選びます。「From list → Select a Database…」の部分をクリックすると、Notion側で共有済み(Share済み) のデータベースが一覧で表示されます。✔第1回で作った「写真管理データベース」 を選択すればOK!⚠️ 注意(ここが一番つまずくポイント)Database のリストが 空欄になる場合→ Notion側で Integration をデータベースにShareしていない のが原因(この説明はブログで強調しておくとめっちゃ親切)Integration Secret が正しくても、 Share されていないとデータベースは表示されない③ 選択後の状態のイメージResource:Database PageOperation:Get Many(変更不要)Database:写真管理データベースこの3つがそろったら、右上の「Execute step」で実行できます。手順8|Execute して、Notion からデータが取得できるか確認する設定が整ったら、画面右上の Execute step をクリックしてNotion のデータが正しく取得できるかテストします。実行に成功すると、右側の OUTPUT に Notion のデータが一覧表示されます。今回の例では、Notion の「写真」データベースに入っている8件分のレコード(id・name・url など)が確認できます。確認ポイントname に「春の写真1」「夏の写真2」などのタイトルが表示されているurl に Notion ページへのリンクが入っている件数が実際のレコード数と一致しているエラーが出ていないどれかが欠けていたり、データが 0 件の場合はIntegration の共有設定や Database ID を見直してください。表示形式の切り替えについて右上の Schema / Table / JSON を切り替えるとTable:表形式で見やすいJSON:後の自動処理に使うプロパティを確認しやすいという使い分けができます。今回の完成形最終的にワークフローはこのような形になります。Manual Trigger(手動実行)から Notion のデータベースを読み取り、データベースの件数分(例では8件)のデータが取得できていれば今回のゴール達成です!ここまで来れば、次回の Slack 通知や画像加工の工程へスムーズに進めます。取得している Notion の元データでは、今回 n8n が読み取っている Notion 側のデータはどうなっているのか?実際の Notion データベースは次のように管理されています👇この 8 件の写真データが、「Get many database pages」で読み取った内容と一致しています。まとめ第1回は「Notionとn8nをつなぐ」下準備を完了。Integration作成、DB共有、n8n認証登録、データ取得テストまで到達しました。ここが安定すると、第2回のSlack通知、第3回の画像加工&再アップロード、第4回の条件分岐へ滑らかに進めます。JSONの構造(特に画像フィールド)は今のうちに確認し、後続回でのマッピングを楽にしましょう。次回は「Notion → Slack へ自動通知を送るワークフローを作る」をやっていきます!前回【Notion×n8nで自動化しよう】第1回 Notionで写真を整理しよう