アクティブなWebhook APIドキュメントジェネレータ - n8n ワークフロー

このn8nワークフローを使用して、n8nインスタンス全体のアクティブなWebhookすべてに対するリアルタイムのSwagger APIドキュメントを自動生成し、可視性とインテグレーション作業を強化します。このn8nテンプレートはカスタムスクリプトを使用します。

ワークフロープレビュー

自動化の準備はいいですか?

このn8nワークフローテンプレートをダウンロードして、今すぐ使い始めましょう。

使用されているn8nノード

こんな方におすすめ


  • n8nを介した複数のAPIインテグレーションを管理する開発者。

  • n8nのWebhookエンドポイントを一元管理し、自動更新されるディレクトリを必要としているチーム。

  • n8nワークフロー設計のAPI仕様共有を簡素化したいユーザー。

  • n8nノードのイントロスペクション(自己検査)に関する高度な使用例を探しているオートメーションスペシャリスト。

概要

多数のn8nワークフローのWebhookを管理するのは複雑になりがちです。この強力なn8nワークフローは、n8nインスタンス全体を自動的にイントロスペクト(自己検査)することで、可視性の問題を解決します。内部のn8n APIを利用して、すべてのアクティブなワークフローとその組み込みWebhookノードの詳細を収集し、このデータを標準的なSwagger 2.0仕様に変換します。

生成されたドキュメントは、n8nトリガーWebhookが呼び出された際にブラウザに直接レンダリングされるインタラクティブなSwagger UIを介して提供されます。これにより、新しいn8nワークフローやエンドポイントがデプロイされるたびにドキュメントを手動で更新する必要がなくなり、DevOpsチームやインテグレーションチームにとって大きな価値を提供します。さらに、Webhookのノート内のカスタムアノテーションをサポートしており、クエリパラメータやボディパラメータを正しく文書化できるため、堅牢なAPIレイヤーを構築する上でこのn8nテンプレートは非常に役立ちます。

仕組み


  1. プロセスは、下流のノードを使用して応答するように設定されたHTTP WebhookであるGet Swagger n8nトリガーから始まります。

  2. 次に、n8n n8nノードが内部n8n APIに対してリクエストを実行し、インスタンス内の現在アクティブなすべてのn8nワークフロー設定の詳細を取得します。

  3. 中核となるロジックはCode n8nノードにあります。このノードは生のワークフローJSONデータを処理します。すべてのWebhookノードとその対応するWebhookに応答ノードを識別し、接続を分析して応答タイプ(JSON、テキスト、またはリダイレクト)を決定します。

  4. 重要な点として、CodeノードはSwagger 2.0のYAML文字列を構築し、パス、メソッド、応答コードを抽出し、元のWebhook n8nノードのノートに(例:@query@bodyのような)関連するアノテーションがある場合、パラメータドキュメントを動的に追加します。

  5. 最後に、Respond to Webhook n8nノードは生成されたSwagger YAMLテキストを取得し、Swagger UIバンドルを初期化するHTMLテンプレート内に埋め込みます。これにより、リクエスト元に直接インタラクティブなドキュメントページが提供され、n8nワークフロー自体によって生成された完全で動的なドキュメントソースが利用可能になります。

インストールガイド


  1. 提供されたn8nワークフローJSONをn8nインスタンスにインポートします。

  2. 認証情報の設定: このn8nワークフローは、n8nノード(ステップ2)の認証情報を必要とします。通常、n8nの設定内で個人アクセストークン(PAT)を生成することにより、「n8n API」認証情報を設定する必要があります。

  3. アノテーションの設定(任意ですが推奨): APIドキュメントにパラメータを含めるには、アクティブなワークフローのいずれかでWebhook n8nノードを開き、「ノート」フィールドを使用して、ワークフローの付箋に記載されている構文(例:// @query my_id string The resource identifier)に従ってパラメータ定義を追加します。

  4. 有効化: 新しいn8nワークフローを保存して有効化します。

  5. アクセス: 定義されたWebhook URL(例:https://your-n8n-instance/webhook/swagger)にアクセスして、ライブドキュメントにアクセスします。

ノード詳細

Get Swagger (Webhookトリガー): 開始となるn8nトリガーです。/swaggerパスでリッスンし、最終的な出力を待機するためにresponseNode設定を使用します。
n8n (n8nノード): 内部n8n APIを使用して、すべてのアクティブなn8nワークフローデータを取得します。これにより、ドキュメントが現在デプロイされているエンドポイントと常に最新の状態に保たれます。
Code (カスタムコードノード): これがこのn8nテンプレートの自動化エンジンです。ワークフロー構造を解析し、Webhook-応答の接続を判断し、オプションのパラメータノートを抽出し、データを細心の注意を払って有効なSwagger 2.0 YAML文字列に整形します。Webhook n8nノードとWebhookに応答ノード間の接続を追跡するための複雑なロジック(findValidTargets)が含まれています。
Respond to Webhook (最終アクションノード): 生成されたSwagger YAMLデータをHTMLラッパーにパッケージ化する最終的なn8nノードです。このラッパーはSwagger UIフロントエンドアセットをロードし、n8nワークフローによって生成されたライブデータに基づいてインタラクティブなAPIドキュメントプレビューをレンダリングします。

関連するn8nワークフロー

無料

ノード: 5 ノード
更新済み: 12月 26 2025
すべて表示
作成者
Danger
Danger

he/him 🎲 Boardgames and role-play addicted 📸 Love snapping pictures 🪴 Plant dad 👨‍💻 Software Engineer made in Italy

特徴*