【第61回】 REST API を使って API イベントまで待機アクティビティを試す
今回は Journey Builder の「API イベントまで待機」アクティビティを説明してみたいと思います。この特別なアクティビティに待機している人に REST API で合図を送って、その人だけを先に進ませることができます。
それでは Journey Builder で API イベントまで待機のアクティビティを使用する手順を見て行きます。
まずは、顧客 ID を格納できるデータエクステンションを作成します。このデータエクステンションは「送信可能データエクステンション」で作成してください。また、このとき、プライマリーキーは設定せずに、重複を受け入れるように設定して下さい。
次に Journey Builder に移動して、API イベントまで待機のアクティビティをキャンバスに配置して、アクティビティをクリックします。
「新規作成」のボタンをクリックします。
API 名を適当に決めて、イベント定義キーをメモしてください。リクエストする時に使用します。「APIEvent-」の部分から必要です。
続いて、データエクステンションの選択画面より、先ほど作成した送信可能データエクステンションを選択します。
選択後、最大待機期間を設定します。この「API イベントまで待機」で待機できる最大待機期間は、次の中から選択できます。この期間までに REST API により合図が無い場合は、分岐の下のパスに進みます。
今回は 7 日間で設定しました。設定後、このアクティビティを完了してください。
メールアクティビティなど、すべての設定が完了していることを確認して、ジャーニーをアクティブ化してください。
アクティブ化されましたら、下記の通り、API イベントまで待機のアクティビティに、連絡先が流れて待機し始めたことを確認します。
続いて、Talend API Tester に移動します。新規リクエストを立ち上げてください。新規リクエストの画面を立ち上げたら、以下の情報を入力して、入力後に送信ボタンを押します。
--- メソッド
POST
--- エンドポイント
[REST ベース URL].rest.marketingcloudapis.com/interaction/v1/events
--- ヘッダー
Content-Type:application/json
Authorization:Bearer [アクセストークン]
--- ボディ(サンプル)
{
"ContactKey": "待機を終了させたい顧客 ID",
"EventDefinitionKey": "APIEvent-先ほどメモしたジャーニーのイベント定義キー",
"Data": {"id": "待機を終了させたい顧客 ID"}
}
※待機を終了させたい顧客 ID は同じもので OK です。
ここで 201 Created でレスポンスがあれば、リクエストは成功です。
ここで入力した、アクセストークン以外は、今後も Talend API Tester で使い回しができるので、必要に応じて保存してください。
最後に Journey Builder に戻って、待機していたうちの 1 名が、右側のパスに流れたことが確認できました。成功です。
■ 追記:複数連絡先の一括待機解除について
Summer '24 の新リリースで、この API イベントまで待機アクティビティに複数の連絡先に対する一括待機解除機能が備わりました。
これは、2 つ前のリリースとなる Winter '24 の方で、最大 100 件の連絡先を同時にジャーニーにエントリーさせる Batch Event API というものができたということで記事にしましたが、その応用になります。
一応、サンプルコードを書いておきます。
--- メソッド
POST
--- エンドポイント
[REST ベース URL].rest.marketingcloudapis.com/interaction/v1/async/events
--- ヘッダー
Content-Type:application/json
Authorization:Bearer [アクセストークン]
--- ボディ(サンプル)
{
"eventDefinitionKey": "APIEvent-xxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
"members": [
{
"contactKey": "待機を終了させたい顧客 ID 1",
"data": {"id": "待機を終了させたい顧客 ID 1"}
},
{
"contactKey": "待機を終了させたい顧客 ID 2",
"data": {"id": "待機を終了させたい顧客 ID 2"}
}
]
}
※待機を終了させたい顧客 ID は同じもので OK です。
いかがでしたでしょうか。
API イベントまで待機アクティビティのイメージは掴めましたでしょうか。
Salesforce MVP のズザンナ・ヤルチンスカさんの記事によると、API イベントまで待機のアクティビティを、ジャーニー内でエンゲージメント分岐の代わりに使用するというアイデアが発表されています。
これを使用すると、エンゲージメント分岐を使用する場合は、連絡先がメール内のリンクをクリックしたかどうかをジャーニーが確認するまでの特定の待機時間を設定する必要がありますが、API イベントまで待機のアクティビティを使用すると、事前定義された時間が経過するまで待つことなく、誰かがリンクをクリックした直後にアクションを実行できます。
活用できると思いますので、ご確認ください。
今回は以上です。