リードのWebhookとGoogle Sheets連携

リード獲得

フリップブックの新しいリードをWebhookで自分のエンドポイントに届け、テストペイロードを送って動作を確認し、リードをGoogleシートに追加できます。

このディスカッションで使うAPI

このガイドに誤りや古い情報がありますか?

できること

フリップブックがリードを獲得するとき、新しいリードをFlipLinkから自分のシステムへ送り出せます。これら3つのエンドポイントでできることは次のとおりです。

  • 新規リードのWebhookを設定する — 新しいリードごとにJSONペイロードを受け取るURL。
  • Webhookをテストする — ダミーのペイロードを送って、実際のリードなしで配信と形式を確認する。
  • リードをGoogle Sheetsに連携する — 新しいリードごとに、指定したシートに追加する。

始める前に

  • APIキー — すべてのリクエストでX-Api-Keyヘッダー、またはAuthorization: Bearer YOUR_API_KEYとして送ります。
  • {flipbookId} — フリップブックの数値IDで、create-by-file/create-by-url(IDとして)や一覧から返されます。3つのエンドポイントすべてが、これをパスパラメーターとして取ります。
  • すべてのリクエストの送信先はベースURL https://go.fliplink.meです。
  • PUTエンドポイント(set-lead-webhookset-lead-google-sheets)は、ボディをform-urlencoded(JSONではありません)として送ります。test-webhookはボディを取りません。

新規リードのWebhookを設定する

新しいリードごとに受け取るWebhook URL(新規リードのWebhookとして保存)を設定します。動作を確認するには、下のテストエンドポイントを使ってください。

curl -X PUT 'https://go.fliplink.me/api/set-lead-webhook/96216' \
  -H 'X-Api-Key: YOUR_API_KEY' \
  --data-urlencode 'WebhookURL_NewLead=https://example.com/hooks/new-lead'

レスポンス:

{
  "Result": "OK",
  "Message": "Updated successfully"
}

Webhookをテストする

フリップブックに設定されたリードWebhookにTESTペイロードを送り、実際のリードなしで配信の形式を確認できるようにします。設定されていない場合はERROR "No lead webhook is configured for this flipbook."を返します。ペイロードの形は実際のリードと一致します(キー: pdf_idpdf_namelead_namelead_emaillead_phonelead_companylead_datelead_custom_1lead_custom_2)が、ダミーの値(pdf_id:"-1"pdf_name:"Test PDF"、…)を持ちます。実際のリードは保存されず、通知メールも送信されません。

curl -X POST 'https://go.fliplink.me/api/test-webhook/96216' \
  -H 'X-Api-Key: YOUR_API_KEY'

レスポンス:

{
  "Result": "OK",
  "Message": "Updated successfully"
}

リードをGoogle Sheetsに連携する

リード獲得をGoogleシートに接続します。新しいリードは、指定したシートに追加されます。リクエストは3つのフォームフィールドを送ります。

  • GoogleSheetURL — スプレッドシートの共有URL(Google Sheetsの共有ダイアログから取得するリンク)。
  • GoogleSheetIDKey — スプレッドシートのID(シートのURLの/d//editの間にある長い識別子)。
  • GoogleSheetName — 行を追加するワークシート(タブ)名(例: Sheet1)。
curl -X PUT 'https://go.fliplink.me/api/set-lead-google-sheets/96216' \
  -H 'X-Api-Key: YOUR_API_KEY' \
  --data-urlencode 'GoogleSheetURL=https://docs.google.com/spreadsheets/d/1A2B3C4D5E6F7G8H9I0J/edit?usp=sharing' \
  --data-urlencode 'GoogleSheetIDKey=1A2B3C4D5E6F7G8H9I0J' \
  --data-urlencode 'GoogleSheetName=Sheet1'

レスポンス:

{
  "Result": "OK",
  "Message": "Updated successfully"
}

起こりうるエラー

  • APIキーが欠けているか無効な場合 → HTTP 401。これはプレーンなUnauthorized HTMLページを返し、JSONボディはありませんX-Api-Keyヘッダー(またはAuthorization: Bearer)が存在し、正しいことを確認してください。
  • 不明な{flipbookId}(またはキーが所有していないもの) → HTTP 200{ "Result": "ERROR", "Message": "Item not found" }
  • 不明またはスペルミスのボディフィールド(2つのPUTエンドポイントで) → HTTP 200{ "Result": "ERROR", "Message": "Unknown field(s) '…'. Expected: …" }

目安として、Result: "OK"は変更が適用されたこと、Result: "ERROR"は適用されなかったことを意味します。理由はMessageを読んでください。

メモ

  • テストエンドポイントは、フリップブックにWebhookが設定されていない場合、ERROR "No lead webhook is configured for this flipbook."を返します。先にset-lead-webhookで設定してください。
  • テストペイロードは、実際のリードを保存することも、通知メールを送信することもありません。

関連ディスカッション