運用と乗り換え

n8nのWebhookが動かない?TestとProduction

Test URLで受信できても本番で動かないとき、Publish・送信先URL・Method・Executionsの順に原因を切り分けます。

公式一次資料に基づくLevel Aの情報整理です。実機を操作した体験談ではありません。

判断メモ運用と乗り換え
Owner→Failure→Recovery
止まった後までが、導入です。

編集部注:この記事はn8n公式の操作仕様を整理した情報解説です。実機でWebhookを構築・送信・障害再現したレビューではありません。画面・プラン・バージョンは変わり得ます。

結論:Webhookには「呼び先」と「公開状態」の2つの落とし穴がある

n8nのWebhook nodeは、外部のHTTPリクエストをWorkflow開始の合図にできます。しかしTest URLとProduction URLは別物です。テストが通ったことは、本番公開後に外部サービスが正しいURLへ送っている証拠にはなりません。まず、(1)送り先URL(2)WorkflowをPublish済みか(3)HTTP Method(4)実行履歴、の順に確認します。

「n8nが壊れた」と決めるのはその後でも間に合います。少なくとも、違う入口にノックしていないことは確かめましょう。

1. Test URLとProduction URLを取り違えない

公式Webhook nodeにはTest URL / Production URLの切替があり、Test URLは開発画面でListen for Test Eventまたは条件によりExecute workflowしているときに受信を待ちます。Production URLはWorkflowをPublishした後に登録されます。

比較Test URLProduction URL
主目的Editorで受信データを確認する公開Workflowの外部イベントを処理する
使える条件テスト受信待ち・実行中など、公式指定の開発状態Publish済みWorkflow
実行結果を見る場所Editor上のnode outputWorkflowのExecutionsタブ
外部サービスに登録する先試験用の一時設定安定運用のWebhook設定

ここでの表は製品の状態を整理したもので、URLの見た目だけから「Productionで認証なし」とは判断しません。Webhookの認証は別設定です。

チェック:外部サービス側のWebhook設定を開き、送信先が公開後もTest URLのままになっていないか確認してください。Editorの見える場所に出てこないだけで、Production側の実行が成功している場合もあります。

一次資料:n8n Webhook node / Save and publish workflows

2. 受信するHTTP MethodとPathを確認する

送信元がPOSTなのにnodeでGETを選んでいれば、同じPathでも意図した入口にはなりません。Webhook nodeの設定画面で、MethodとPathを送信元の仕様に照らして確認します。

  • HTTP Method:GET / POST / PUTなどの送信方式と一致しているか
  • Path:本番のWebhook URLと一致しているか。似た名前のWebhookを別Workflowにも作っていないか
  • Authentication:Basic、Header、JWTのいずれかが必要か。認証設定を送信側が満たしているか
  • IP allowlist:設定している場合、送信元が許可範囲か

n8nはWebhook認証方法としてBasic auth、Header auth、JWT auth、Noneを提示しています。公開URLだからといって、無条件に誰でも処理を起動できる状態にする必要はありません。逆に、テスト用URLの文字列を秘密鍵代わりにするのも避けます。

参照:公式Webhook node/HTTP Method・Authentication

2.xの補足(2026-10-15確認):n8nの現行公式仕様はdraftの自動保存と本番用Publishを別の状態として説明しています。新しい変更はPublish完了後に本番へ適用され、Publish処理は非同期です。「保存しただけ」「Publish処理中」「一部Triggerの有効化失敗」を分けて確認してください。 n8n Save and publish

3. 保存しただけではProduction URLが動くとは限らない

2026年10月確認の公式ドキュメントでは、編集内容の自動保存(draft)とPublishによる本番適用を明確に区別しています。編集画面で動いた後に、WorkflowがPublish済みであるか、変更を再Publishしているかを確認します。

新しいバージョンを編集中でも、Productionは以前にPublishしたバージョンで動く場合があります。したがって「今見ている画面の構成」と「Productionで処理された構成」が常に同じとは限りません。

テスト手順の例:

  1. Workflow内のWebhook nodeでTest URLとProduction URLを見比べる。
  2. 最小限のダミーデータをTest URLへ送れる状態にし、Editor上で想定の項目を確認する。
  3. WorkflowをPublishし、公開処理が完了したことを確認する。
  4. 外部サービスの送信先をProduction URLへ変更する。
  5. Production URLへテスト用イベントを送り、Executionsで該当実行とnode outputを確認する。
  6. 処理内容に秘密・個人情報がある場合、保存される実行データの管理ポリシーを別途確認する。

これは読者向けの再現可能な確認順序です。本記事執筆時に編集部がこの操作を実施したという意味ではありません。

参照:Save and publish workflows / Executions

4. 「動いていない」と「画面に表示されない」は別問題

Production URLからの実行データは、通常Editor上でTest URLと同じ形では表示されません。Executionsタブで対象時刻と実行ステータスを見ます。

症状最初に確認するものすぐ断定しないこと
Testは届くがProductionは反応しないPublish状態・送信先URL・MethodCloud/Self-hostの不具合と決めない
送信元は「成功」なのに処理が進まないWebhookの応答方式、途中nodeの実行結果HTTP応答だけで全処理成功と見なさない
Editorに新しい入力が現れないProduction Executionsの履歴ログがないと決めない
403や401相当の応答認証、IP allowlist、送信側ヘッダーURL末尾を勝手に変更しない
実行はあるが目的のデータがない入力JSON、式の参照先、nodeの出力送信元のデータ形式が必ず同じと考えない

HTTPレスポンスも重要です。Webhook nodeにはImmediately、When Last Node Finishes、Respond to Webhook Nodeなど、いつ何を応答するかの設定があります。受信時に即時応答できても、後段の処理成功を保証するわけではありません。

参照:n8n Webhook responses

5. Self-hostでのみ追加される確認点

CloudとSelf-hostの違いは「nodeがあるか」だけではありません。Self-hostでreverse proxy配下に置く場合は、公開URLとn8n内部のHost/Portが一致しない構成があります。公式ドキュメントは公開Webhook URLの設定とproxy forwarded headersの確認を案内しています。

リバースプロキシ、TLS終端、DNS、Firewallの管理責任がある環境では、Editorに表示されたWebhook URLが外部から実際にアクセスできるURLかを確認してください。

なお、環境変数名はn8nのバージョンで変化する可能性があります。値をコピーして一律に設定するのではなく、利用バージョンの公式手順へ進みます。

参照:公式 Configure webhook URLs with reverse proxy

6. どこまで自動化すべきか

1回のWebhook受信に大量の外部送信を直結させる前に、同じイベントが複数回届いたときの二重登録防止(idempotency)を検討します。送信元の再試行、認証情報漏えい、期限切れや通信失敗への備えも必要です。Webhookは「受け口」であって、データ重複や整合性を自動的に解決する保証ではありません。

編集判断としては、まず架空の少量テストデータ → 単一nodeの確認 → 全体テスト → Publish → Executionsで追跡の順を推奨します。成功率や処理速度について、本稿に独自の実測値はありません。

まだ調べますか?

判断の出口: webhookが届いたかではなく、目的の業務処理が正しく終わり、失敗も追跡できるかを確認しましょう。

一次資料とFACT区分

FACT:Test/Production URLの差、Publish動作、Executions、認証方式、Webhook応答方式。

EDITORIAL:症状別の確認順序、Idempotency等の導入時注意、業務設計の優先順位。