バックエンドとSDK

Webhook

アプリのイベントを、お使いのほかのツールや自社のサーバーに送ります。

ビルダーで設定 → Webhook(詳細設定内)を開き、送信先のURLを貼り付けて保存します(Starterプラン以上)。そのあとbuilder77は、イベントが起きるたびにJSON本文付きの POST を送ります。

イベント送られるタイミング
record.createdアプリがレコードを作成した
record.updatedレコードが更新された
record.deletedレコードが削除された
user.signed_up誰かがアプリに新規登録した
test.ping「テストイベントを送信」をクリックした
{
  "event": "record.created",
  "projectId": "abc123",
  "timestamp": "2026-10-01T10:00:00.000Z",
  "collection": "orders",
  "record": { "id": "…", "total": 42, "createdAt": "…" }
}

リクエストを検証する

各リクエストには X-M77-Signature ヘッダーが付いています。これは、署名用シークレット(設定に表示されます)を使って生の本文から計算したHMAC-SHA256の16進数の値です。

import crypto from 'node:crypto';
const expected = crypto.createHmac('sha256', process.env.M77_WEBHOOK_SECRET).update(rawBody).digest('hex');
if (expected !== req.headers['x-m77-signature']) return res.status(401).end();

Webhookは1回だけ送信され、タイムアウトは8秒です。URLは公開されたものである必要があります(プライベートネットワークのアドレスはブロックされます)。