設定すること
- セルフホストn8nインスタンスにインストールされた
n8n-nodes-elidoコミュニティノード。 - 1つのワークスペースに紐づいたElido API認証情報。
- リンクの作成・取得・一覧表示、1本のリンクのクリックアナリティクスの取得を行うアクション、およびリンクイベント用のウェブフックトリガー。
n8nはセルフホストのワークフロー自動化ツールです。Elidoコミュニティノードにより、n8nのビジュアルエディター内でネイティブのアクションが使えるため、Elido APIに対してHTTP Requestノードを自前で組み立てる必要がありません。
要件
- コミュニティノードが有効なセルフホストn8n。クラウドのn8nプランではコミュニティノードが制限される場合があるため、プランを確認してください。
- ElidoワークスペースのAPIキー。
ステップ1: コミュニティノードをインストールする
- n8nで Settings → Community Nodes に移動します。
- Install a community node をクリックします。
- パッケージ名を貼り付けます。
n8n-nodes-elido - リスク通知に同意して Install をクリックします。
- ノードピッカーで「Elido」を検索してください。Linkリソースを持つ Elido ノードが表示されます。
ステップ2: Elido APIキーを作成する
- Elidoで Settings → API keys → New key に移動します。
- キーのロールを選びます。Editor はリンクの作成とアナリティクスの読み取りができ、Viewer はリンクとアナリティクスの読み取りのみできます。キーは作成したワークスペースに属し、他のワークスペースに対しては操作できません。
- キーをコピーします。
elido_で始まり、表示されるのは一度きりです。
スコープ単位のトークン(links:write、analytics:readなど)は計画中で、現時点ではロールによってキーができることが決まります。
ステップ3: n8nにElido認証情報を追加する
- n8nで Credentials → New Credential → Elido API に移動します。
- Base URL: Elido Cloudの場合は
https://api.elido.appのままにするか、セルフホストのAPIルートを入力します。 - API Token:
elido_から始まるキーを貼り付けます。 - Workspace ID: キーが属するワークスペースの数値ID(Settings → Workspace)。ノードはこれをアナリティクスに使用します。
- Save をクリックします。n8nはそのワークスペースを読み取ることで認証情報をテストするため、間違ったキー、間違ったBase URL、あるいは別のワークスペースのキーは、実行中のワークフローではなくここで失敗します。
Elidoワークスペースごとに1つ認証情報を作成し、各ノードで適切なものを選んでください。
利用可能なアクション
| アクション | 機能 |
|---|---|
| Create | 遷移先URLを短縮する。スラグ、タイトル、タグ、有効期限、リダイレクトステータス、ドメインIDは任意 |
| Get | IDを指定して1件のリンクを返す |
| List | 検索テキスト、タグ、ステータス(active/disabled)で絞り込み、最大100件のリンクを新しい順に返す |
| Get Analytics | 1本のリンクについて、時系列のクリック数、または国・リファラー・デバイス・ブラウザ別のクリック数を返す |
Domain ID を指定せずにCreateを実行すると、ワークスペースのデフォルトElidoドメインにリンクが作成されます。カスタムドメインを使うには、Settings → Domains からそのIDを渡してください。
ListとGet Analyticsは、行ごとに1つのn8nアイテムを返すため、次のノードはリンクごと、あるいは日・国・リファラーごとに1回ずつ実行されます。Get Analyticsのデフォルトは直近30日間です。期間を変えるには From と To (YYYY-MM-DD) を設定してください。
Update Linkとスラグによるルックアップは計画中のアクションです。提供されるまでは、同じ認証情報を使うHTTP Requestノードから PATCH /v1/links/{id} または GET /v1/links?q=<slug> を呼び出してください。
トリガー
専用の Elido Trigger ノードは計画中です。提供されるまでは、Elidoのウェブフックエンドポイントと組み合わせてn8n組み込みの Webhook トリガーを使ってください。
- Webhook ノード(メソッドPOST)を追加し、そのプロダクションURLをコピーします。
- Elidoで Settings → Webhooks → New endpoint に移動し、そのURLを貼り付けて、イベント
link.created、link.updated、link.deleted、link.expired、link.cap_reached、link.brokenのいずれかを選びます。 - 署名シークレットをコピーします。各配信には
X-Elido-Signature: v1=<hex>ヘッダーが付き、これはそのシークレットによる{timestamp}.{raw body}のHMAC-SHA256です。timestampはX-Webhook-Timestampに入っているUnix秒の値です。ペイロードを信頼する前に、Code ノードで検証してください。検証用のスニペットはウェブフックガイドにあります。
| トリガー | ステータス |
|---|---|
| リンクの作成、更新、削除、期限切れ、破損、クリック上限到達 | 現在Webhookノード経由で利用可能 |
| Link Clicked | 計画中。まだ発火しない click.created ウェブフックイベントが必要 |
| Conversion Recorded | コンバージョンAPIの提供後に計画中 |
| Threshold Exceeded | 計画中 |
サンプルワークフロー: 日次クリックレポートをスプレッドシートに送る
[Schedule Trigger: every day 08:00]
↓
[Elido: Get Analytics]
- Link ID: 4711
- Report: Clicks by Country
↓
[Google Sheets: Append Row]
- Country: {{ $json.key }}
- Clicks: {{ $json.count }}
サンプルワークフロー: ウェブフックからリンクを作成する
外部システムがURLをn8nにPOSTし、n8nがElidoでそれを短縮して短縮URLを返します。
[Webhook node: POST /shorten]
↓
[Elido: Create]
- Destination URL: {{ $json.body.url }}
- Tags: {{ $json.body.tag }}
↓
[Respond to Webhook]
- Body: { "short_url": "{{ $json.short_url }}" }
トラブルシューティング
インストール後にコミュニティノードが表示されない: エディターをリロードしてください。それでも表示されない場合はn8nを再起動してください。Dockerの場合は次の通りです。
docker restart n8n
認証情報のテストが404または403で失敗する: Workspace IDが、そのキーを作成したワークスペースと一致していないか、キーが失効しています。どちらもElidoの Settings → API keys で確認してください。
Createが「domain_id」で失敗する: Domain IDがこのワークスペースのドメインではありません。空欄のままにするとデフォルトドメインが使われます。
Get Analyticsが何も返さない: 指定した期間内にそのリンクのクリックがないか、Link IDが別のワークスペースに属しています。まず From と To を広げてください。
ElidoによってウェブフックURLが拒否される: n8nのウェブフックURLはインターネットから到達可能である必要があります。ローカルマシンやプライベートネットワークでn8nを実行している場合は、トンネル(Cloudflare Tunnelやngrokなど)を設定し、n8nの環境変数 WEBHOOK_URL をトンネルアドレスに向けてください。