対象プランOFFLINEBUSINESSPRO
実装にかかる想定時間:約30分
イベント毎に設定する作業:My TokenにeventKeyとticketIdを設定する
本ページでは、APIを活用してMarketoの登録フォームから収集した登録者を、EventHubへ自動登録する方法をご紹介します。
1. EventHubでチケット・フォームを作成する
まず、EventHubでチケット・フォームを作成します。
Marketoで作成したフォームから登録したユーザーは、チケット・フォームを通してEventHubへユーザー登録がされます。
以下のページを参考にチケット・フォームを作成しましょう。
登録期限や上限数、ユーザータイプ[来場者/出展者]、コンテンツグループの設定なども反映されます。
また、Marketoの登録フォームでカスタムフィールドを作成した場合は、EventHubでも同様にプロフィール項目(カスタム項目)を作成する必要があります。以下のページを参考にカスタム項目を作成してください。
<attention>
- イベントの閉鎖日時を過ぎると登録ができません。
- チケット・フォームの登録期限や上限数を超えると登録ができません。
- ステータスが販売中・非公開の場合は登録が可能ですが、準備中の場合は登録ができません。
- API連携では有料チケットの作成ができません。
上記のいずれかが該当した場合、「Ticket cost must be free and status on sale or private to register a user」というエラーが出現し、ユーザー登録ができません。EventHubのチケット設定を変更してください。</attention>
2. Marketoでカスタムフィールドを作成する
<attention>カスタムフィールドを作成するためには、管理者権限必要です。</attention>
登録フォームを作成する前に、登録フォームで収集する項目を格納するためのフィールドを作成しましょう。
[管理] > [フィールド管理]より[新規カスタムフィールド]をクリックします。
[ウェビナーモード]で、開催日程が複数設定されているイベントへ連携する場合
ユーザーが選択した日程を登録連携する必要があるため、以下フィールドの作成が必須です。開催日程が1つの場合は指定は不要ですので、本設定はしなくても構いません。
| 項目 | 設定値 |
| オブジェクト | プログラムメンバー |
| タイプ | 文字列 |
| 名前 | 判別しやすいようにお好きな名称を自由に設定してください |
| API名 | eventScheduleId |
3. Marketoで登録フォーム を作成する
次に、Marketoで登録フォームを作成しましょう。
<attention>Marketoでフォームを作成した場合、EventHubの利用規約及びプライバシーポリシーに同意した上で登録が行われるようにしてください。詳細は参加者からEventHub利用規約・プライバシーポリシーの同意を取得するをご覧ください。</attention>
[ウェビナーモード]で、開催日程が複数設定されているイベントへ連携する場合
Marketoで日程を個別に管理する必要があり、運用の手間が発生します。そのため、EventHubフォームからMarketoへの登録連携をご利用いただくことを推奨しています。
詳細は、ワークフロー:EventHubのチケットフォームから登録されたユーザーをMarketoに自動登録するをご覧ください。
① ユーザーが参加日程を選択するフォームが必要です。 [① フィールドの詳細]から用意してください。
| 設定する値 | |
| ラベル | 登録フォームに表示するお好きな名称を設定してください。 |
| フィールド | 2. Marketoでカスタムフィールドを作成するで作成したPMCF「eventScheduleId」を設定します。 |
| フィールドのタイプ | 選択 |
② [編集]をクリックして、値を設定します。
| 設定する値 | |
| 値の表示 | 登録フォームに表示する開催日程を設定してください。 |
| 保存済みの値 | eventScheduleIdを設定します。 詳しくは、eventScheduleIdをご覧ください。 |
<attention>誤登録防止のために開催終了した日程は削除してください。ユーザーが過去日の開催日程を指定して登録をしても、EventHubへの登録は可能です。
</attention>
パスワード設定[あり]のイベントの場合
登録後に遷移するサンクスページには、以下のように仮登録中であることを示すとパスワード設定率が向上します。パスワード設定率が向上すると、ログイン率も高まりますのでご参考ください。
4. MarketoでMy Tokenを作成する
Marketo公式ヘルプページ「マイトークンの管理」を参考に、以下のTokenを作成します。
| Token名 | データ型 | 説明 |
| eventKey | テキスト | ベント毎に発行されるKeyが代入されるTokenです |
| ticketId | テキスト | チケットフォーム毎に発行されるIdが代入されるTokenです |
<tips>My Tokenとは?
様々な値を代入することができる変数です。{{my.eventKey}}を利用すると、プログラム内で指定したeventKeyが代入されます。
参考:プログラム内のマイトークンの理解</tips>
5. Marketoでウェブフックを作成する
Marketoでウェブフックを作成します。
① [管理]>[ウェブフック]>[新規ウェブフック]から以下の情報を入力します。
| 項目名 | 入力内容 |
| ウェブフック名 | 適当な名称 (例:EventHub連携用Webhook) |
| 詳細 | ウェブフックの詳細説明 ※ 任意 |
| URL | https://api.eventhub.jp/v1/users/create/{{my.eventKey}}?lang=ja |
| リクエストタイプ | POST |
| テンプレート |
ペイロードのサンプルをご紹介します。
|
| リクエストトークンのエンコード | なし |
| 応答タイプ | なし |
<attention>[ウェビナーモード]で、開催日程が複数設定されているイベントへ連携する場合は、"eventScheduleId"の設定が必要です。通常モードのイベント、および[ウェビナーモード]でも開催日程が1日程の場合は、設定しなくても構いません。</attention>
② カスタムヘッダの[編集]をクリックし、[Content-Type]に[application/json]を、[X-API-KEY]に発行したAPIキーを入力します。※ APIキーの取得はAPIキーの発行方法をご覧ください。
③ これでウェブフックの作成は完了です。
イベント毎に作成するキャンペーンで、本ウェブフックを[フロー]に設定しましょう。
6. イベント毎にMy Tokenの値を設定する
イベント毎に作成したプログラムのマイトークンのページから、eventKeyとticketIdを入力します。手順4で作成したWebhookのペイロードに、こちらで設定したeventKeyが{{my.eventKey}}へ、ticketIdが{{my.ticketId}}へ代入されます。イベント毎に異なるeventKeyとticketIdが発行されるため、プログラムを作成する度に入力してください。
これでEventHubとの連携設定は完了です。登録フォームからテスト登録を行い、動作を確認してください。問題なく動作した場合は、EventHubの[ユーザーリスト]にチケットフォーム経由で登録されます。
<tips> - Marketoの実行結果の詳細ログはAPI:参加登録連携のエラー詳細の確認方法からご確認いただけます。
技術者向けAPIドキュメントに記載のエラーレスポンスを参照しながらエラーを解消してください</tips>
7. 登録からログインまでの導線
APIでMarketoとEventHubを連携した場合、以下の導線で参加者はイベントページにログインすることになります。
① Marketoで作成した登録フォームから参加登録をする
② EventHubからパスワード設定案内のメールを受信する
③ パスワードを設定する
④ パスワード設定完了メールを受信する
⑤ イベントページへログイン
<tips>パスワード設定[なし]でイベントを作成した場合は、パスワードの設定手順③④がありません。</tips>
この時、②で配信されるメールは[メール]>[システムメール]の[埋め込みフォーム・MAフォーム(API連携)のパスワード設定]から編集してください。「申し込みありがとうございました」という文言を記載するとパスワード設定をせずに離脱するケースがあるため、"良い例"を参考にパスワード設定を促すシンプルな文章にしましょう。
④で配信されるメールは[メール]>[システムメール]の[EXCELアップロード・埋め込みフォーム・MAフォーム(API連携)・同僚招待の登録完了]から編集してください。
8. 注意・補足
- こちらでご紹介する方法は、提供する情報の継続や正確性を完全に保証するものではありません。実装方法に関するご不明な点はMarketoカスタマーサポート、もしくは社内エンジニアへお問い合わせください。
- UIやボタンの名称等が変更になっている場合がございます。ご了承ください。
- お問い合わせの際は、以下3点を添えて、画面右下の吹き出しよりカスタマーサポートまでご連絡いただきますようお願いいたします🙇♀️
● 画面に表示されるメッセージもしくはメッセージの内容がわかるスクリーンショット
● 該当のイベント名
● 該当ユーザーのメールアドレス
</tips>
[ウェビナーモード]開催日程が複数設定されているイベントへ連携する場合に注意すべきこと
ユーザーが選択した日程をEventHubへ登録連携するために、必ず以下の設定が必要です。
- PMCF(プログラムメンバーカスタムフィールド)に、ユーザーの参加日程を格納するフィールドを新規作成する
- 詳しくは、2. Marketoでカスタムフィールドを作成するをご確認ください。
- 登録フォームに、ユーザーが参加日程を選択できる項目を追加する
- 詳しくは、3. Marketoで登録フォーム を作成するをご確認ください。
- Marketoのウェブフックのペイロードに参加日程を追加する
- 詳しくは、5. Marketoでウェブフックを作成するをご確認ください。