※本記事にはアフィリエイトリンクが含まれます。
n8n Notion 連携を設定するのに合計2時間かかった。 と の接続自体は難しくない。ただ、「インテグレーションをデータベースに接続する」という手順を飛ばしていたせいで、ずっと「object not found」エラーが出続けた。
そのステップは公式ドキュメントにも書かれているが、地味な一行で目立たない。ここをハマった人はかなり多いはずだ。
この記事では、n8nとNotionをAPIで繋ぐ手順と、実際に詰まったポイントを正直に書く。特に「インテグレーション接続忘れ」「Selectプロパティの型ミス」という2つのハマりポイントは、競合記事のほとんどが触れていない。
この記事でわかること:
- Notion APIインテグレーションの作成とトークン取得
- データベースへのインテグレーション接続(最も忘れがちなステップ)
- n8n Notionノードでのページ追加・更新の設定
- プロパティのマッピング(Select・Date型の注意点)

n8n Notion 連携の前に必要な準備
n8nからNotionにアクセスするには、Notion APIのインテグレーションを作成してトークンを取得する必要がある。この作業はNotion側で行う。
Notion API インテグレーションの作成とトークン取得
設定手順は以下の通り。
- ブラウザで
https://www.notion.so/my-integrationsを開く - 「+ New integration」をクリック
- 名前を入力(例:n8n integration)→ Submit
- 「Secrets」タブをクリック → Internal Integration Tokenをコピー
このトークンがn8n側に入力する認証情報になる。
n8n側の設定:
- Notionノードを追加 → Credentialsで「Notion API」を選択
- 「Access Token」にコピーしたトークンを貼り付けて保存
ここまでは順調に進む人が多い。問題は次だ。
データベースをインテグレーションに接続する(忘れがちなステップ)
APIトークンを設定しただけでは、n8nはNotionのデータベースにアクセスできない。データベース側で「このインテグレーションを許可する」という設定が別途必要だ。
- アクセスしたいNotionのデータベースページを開く
- 右上の「…」(その他のオプション)をクリック
- 「Add connections」(または「Connections」)を選択
- 先ほど作成したインテグレーション名を検索して選択
この設定をしないと、n8nからAPIリクエストを送っても「Could not find database with ID…」エラーが返ってくる。設定してから20分後にこれに気づいたときの脱力感はそれなりにあった。
接続したいデータベースが複数ある場合は、それぞれに同じ手順でインテグレーションを接続する必要がある。ページを作るたびに接続し直す必要はなく、データベース単位で一度設定すれば大丈夫だ。
n8n の Notion ノードでできること
Notionノードでできる主な操作は以下の通り(2026年4月時点):
| 操作 | 内容 |
|---|---|
| Database Page – Create | データベースに新しいページ(レコード)を追加 |
| Database Page – Update | 既存のページのプロパティを更新 |
| Database Page – Get | 特定のページの内容を取得 |
| Database Page – Get Many | 複数ページをまとめて取得 |
| Database – Get | データベース自体の情報を取得 |
| Database – Search | データベースを検索 |
タスク管理に使うなら、「Database Page – Create」でタスクを登録、「Database Page – Update」でステータスを変更、という流れが基本になる。
データベースIDの確認方法
n8nのNotionノードでデータベースを指定するとき、「Database ID」の入力が必要になる場合がある。
確認方法:NotionのデータベースページのURLを見ると、https://www.notion.so/xxxxxxxxxx?v=... という形式になっている。?v= より前の英数字の部分がデータベースIDだ。
ただし、n8nのNotionノードはアクセス可能なデータベースをドロップダウンで選択できる場合も多い。ID直打ちよりドロップダウン選択の方が間違いがない。

実践例:フォーム送信でNotionタスクを自動作成する
僕が実際に使っているのは、Googleフォームから送信された依頼を、Notionのタスクデータベースに自動登録するフローだ。
ワークフローの全体像
- Webhookトリガー — フォーム送信を受け取る(またはScheduleで定期チェック)
- Notionノード — データベースに新しいページを作成
フォームからWebhookに直接送らずにGoogleフォームを使う場合は、Sheets連携でフォームの回答をトリガーにする方法もある。今回はシンプルにWebhookからの入力を前提に説明する。
Notionノードの設定(プロパティのマッピング)
- Notionノードを追加
- Resource:Database Page
- Operation:Create
- Database:対象のデータベースをドロップダウンで選択
- Properties:データベースのプロパティを設定する
「Properties」の設定が少し独特なので、注意が必要だ。プロパティの設定欄に「+ Add Property」で追加していくが、プロパティのタイプ(Text、Select、Dateなど)によって設定方法が変わる。
日付・セレクト型プロパティの扱い
ここが詰まりやすい場所だ。
Textプロパティ: 前のノードの値をそのまま渡せる。{{ $json.body.task_name }} のように書けばいい。
Selectプロパティ: 「Option」として文字列を渡す。存在しないオプション値を渡すとエラーになる。Notionのデータベースに設定されているオプションの選択肢の文字列と一致させる必要がある。
Dateプロパティ: ISO 8601形式(例:2026-04-05)の文字列を渡す。{{ $now.toISOString() }} のように現在時刻をISOフォーマットで渡すのが楽だ。日本語の日付文字列(「2026年4月5日」など)はエラーになる。
「Selectに文字列を渡したらエラーになった」というのは30分かかった。型の問題だと気づいてからは一瞬で解決した。
実際に詰まった3つのポイント
① インテグレーション接続忘れ(一番多い)
上述の通り。「object not found」が出たらまずここを確認する。
② Selectプロパティの型ミス
プロパティタイプに合わせた形式で値を渡す必要がある。Notionノードの設定画面でプロパティタイプを選ぶ項目があるので、データベースのプロパティ設定と揃えること。
③ Notionへの書き込みが遅い
1件のデータを書き込むのに1〜2秒かかる。50件を一括で処理しようとしたら2分近くかかった。大量データには向いていない。少量・頻度低い用途に絞って使うのが現実的だ。
合わせて読みたい

まとめ:n8n Notion 連携はどんな用途に向いているか
設定が済めば、n8n × Notion は思ったより使いやすい。フォームの回答を自動でタスクに登録したり、外部サービスのデータをNotionデータベースに集約したりという用途なら十分実用に耐える。
向いているのは:
- 少量のデータをNotionに定期的に書き込みたい
- 外部サービスとNotionをつなぐ「データ橋渡し」として使いたい
- NotionをハブにしてSlackやメールへの通知を出したい
向いていないのは:
- 100件以上のデータを一括で処理したい(遅い)
- リアルタイムで高頻度の更新が必要(NotionのAPI制限に当たりやすい)
初期設定でインテグレーション接続を忘れると無駄に時間を溶かすので、最初の接続確認だけ慎重にやれば、あとはすんなり動くはずだ。
n8nとNotionの連携についての日本語解説として、株式会社ピースフラットシステムのn8n × Notion記事も参考になる。また、n8nと連携する際に必要なNotionのAPI認証設定についてはNotionのヘルプセンター(日本語)にも概要が載っている。
※本記事の情報は2026年4月時点のものです。NotionのUI・APIは更新されることがあります。


コメント