2分で読めます
Make.com webhook モジュール
Zenovay イベントを Make.com(旧 Integromat)シナリオに接続します。Google スプレッドシート、Airtable、HubSpot、Microsoft 365、Salesforce など 1,500 以上のアプリと連携できます。
Make.com の Webhooks → Custom webhook モジュールが Zenovay イベントを受け取ります。
アウトバウンド webhook は Zenovay の Pro+ 機能です。Make.com のカスタム Webhook は Make.com の Free プランでも利用できます。
1. Make.com webhook を作成する
- Make.com で新しいシナリオを作成します。
- + ボタンをクリック → 「Webhooks」を検索 → Webhooks → Custom webhook を選択します。
- Add をクリックして新しい webhook フックを作成します。
- Webhook name:
Zenovay events(または覚えやすい名前) - IP restrictions:Zenovay の IP を制限したい場合を除いて空欄のままにします(安定した IP リストは公開していません。署名で検証してください)
- JSON pass-through:オフのままにします(Make.com がボディを自動的にパースします)
- Webhook name:
- Save をクリックし、Copy address to clipboard をクリックします。URL は
https://hook.eu2.make.com/abcdef123456のような形式です。
2. Zenovay に webhook を追加する
app.zenovay.comで Settings → Webhooks に移動します。- イベントを送信するウェブサイトを選択します。
- Add webhook をクリックします。
- 以下を入力します。
- Name:
Make.com — <シナリオ名>(例:Make.com — Google スプレッドシートに同期) - URL:ステップ 1 の Make.com webhook アドレスを貼り付けます
- Events:シナリオが反応すべきイベントを選択します
- Name:
- Create webhook をクリックします。
- テストイベントを送信(紙飛行機アイコン)をクリックします。
3. Make.com でサンプルデータを受け取る
- Make.com の webhook モジュールに戻り、下部の Run once をクリックします。
- Make.com が次の受信イベントを待ちます。Zenovay でもう一度テストイベントを送信をクリックします。
- Make.com がペイロードを取得し、利用可能なフィールドを表示します。Save をクリックします。
- 次のモジュールを追加します。例えば Google スプレッドシート → 行を追加 などで、Zenovay ペイロードのフィールドをマッピングします。
4. Zenovay の署名を検証する(推奨)
Make.com はネイティブで HMAC 署名を検証しません。署名の整合性が重要なシナリオでは、webhook とアクションモジュールの間に Tools → Set Variables モジュールをフィルターとして追加します。
// In a "Filter" between the webhook and your action modules
{{contains(headers["x-zenovay-signature"]; "sha256=")}}
完全な HMAC 検証には、以下のいずれかが必要です。
- カスタムコードモジュール(Make.com Premium / Pro プラン)にアップグレードする、または
- Make.com の前に検証して転送する Cloudflare Worker を配置する
import { createHmac } from 'crypto';
export default {
async fetch(req) {
const rawBody = await req.text();
const signature = req.headers.get('x-zenovay-signature') || '';
const provided = signature.replace(/^sha256=/, '');
const expected = createHmac('sha256', YOUR_WEBHOOK_SECRET)
.update(rawBody)
.digest('hex');
if (provided !== expected) return new Response('invalid signature', { status: 401 });
await fetch(MAKE_WEBHOOK_URL, {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: rawBody,
});
return new Response('ok');
},
};
webhook シークレットは Settings → Webhooks → webhook カードの目のアイコンをクリックすると確認できます。
5. よくあるシナリオのレシピ
| この Zenovay イベントが発生したとき… | …Make.com のシナリオ |
|---|---|
goal_completed | Google スプレッドシートの conversions タブに行を追加する |
traffic_spike | #marketing に Microsoft Teams 通知を送信する |
website_down | Salesforce ケースを開く + カスタマーサクセスにメールを送る |
error_spike | エラー数とページ URL を Notion DB の行に更新する |
トラブルシューティング
- webhook がデータを受信したがシナリオが実行されない:シナリオがアクティブである必要があります(シナリオエディタの左下のトグル)。
- フィールドの型が正しくない(例:数値がテキストとして届く):webhook モジュールで JSON pass-through を OFF にすることで Make.com が型を自動的にパースします。
- オペレーション上限に達した:Make.com はシナリオの各ステップを 1 オペレーションとしてカウントします。Free プランは月 1,000 回。Zenovay の webhook 設定で
traffic_spikeなどの頻繁なイベントをフィルタリングして上限内に収めてください。
関連記事
このページは役に立ちましたか?