SessionMロイヤルティプラットフォーム
SessionMはカスタマーエンゲージメントとロイヤルティのプラットフォームで、キャンペーン管理機能とロイヤルティ管理ソリューションを提供し、マーケターがターゲットを絞ったアウトリーチを推進してエンゲージメントと収益性を向上させるのを支援する。
前提条件
ソース | 必要条件 | 説明 |
---|---|---|
Braze | Braze REST API キー | trigger_send 権限を持つ Braze REST API キー。これは、Brazeダッシュボードの「設定」>「APIキー」から作成できる。 |
Braze | Braze RESTエンドポイント | RESTエンドポイントのURL。エンドポイントは、インスタンスのBraze URLによって異なります。 |
BrazeとSessionM | 一致する識別子 | 統合を使用するには、SessionMとBrazeの両方が、それぞれのプラットフォームで使用されている識別子の記録を持っていることを確認する。user_id への参照は、SessionMでのプロファイル生成時に生成されたSessionMのユーザー識別子に対応する。 |
セッションM | セッションMアカウント | このパートナーシップを利用するには、SessionMのアカウントが必要である。 |
セッションM | SessionM Core RESTエンドポイント | エンドポイントは、インスタンスのSessionM URLに依存する。これは、デジタルプロパティからSessionMダッシュボードで作成できる。 |
セッションM | SessionM Core REST API キー | インスタンスとBraze統合に関連付けられたSessionM APIキー。このキーは、タグを含むすべてのコアベースのコールに使用できる。これは、デジタルプロパティからSessionMダッシュボードで作成できる。 |
セッションM | SessionM Core REST APIのシークレット | インスタンスとBraze統合に関連付けられたSessionM APIシークレット。このキーは、タグを含むすべてのコアベースのコールに使用できる。これは、デジタルプロパティからSessionMダッシュボードで作成できる。 |
セッションM | SessionM Connect RESTエンドポイント | エンドポイントは、インスタンスのSessionM URLに依存する。SessionMテクニカルアカウントマネージャーまたはデリバリーチームまでご連絡ください。 |
セッションM | SessionM Connect REST認可文字列 | インスタンスに関連付けられたSessionM Connect Basic Authorization文字列。この認証文字列は、get_user_offersを含む、すべてのconnectベースのコールで使用できる。SessionMテクニカルアカウントマネージャーまたはデリバリーチームまでご連絡ください。 |
セッションM | SessionM Connect RESTの小売(店)ID。 | インスタンスに関連付けられた特定の顧客に対する一意のguid識別。SessionMテクニカルアカウントマネージャーまたはデリバリーチームに連絡する。 |
古いナビゲーションを使用している場合は、デベロッパコンソール> API設定でAPI キーを作成できます。
ユースケース
以下のユースケースは、SessionMとBrazeの統合を活用するいくつかの方法を示している。
- ロイヤルティ、顧客データ管理、メッセージングの各プラットフォームのデータを統合したセグメンテーションを作成する。
- 強力なセグメンテーションを使用して、オファーやプロモーションで特定のユーザーをターゲットにする。
- メッセージングの際には、最新のユーザー、オファー、ロイヤルティ情報を活用しよう。
- プロモーションやロイヤルティ活動の進捗や完了について、顧客に詳細な通知を行う。
- 新しいオファーが獲得されたら顧客に通知し、オファーの詳細を提供する。
SessionMとBrazeの統合
ステップ 1: Brazeでセグメンテーションを作成する
Brazeで、SessionMのプロモーションやオファーでターゲットとするユーザーのセグメンテーションを作成する。
ステップ 2: BrazeのセグメンテーションをSessionMにインポートする。
オプション 1: SessionM Tagエンドポイントにエクスポートする(推奨)。
まず、BrazeでWebhookキャンペーンを作成し、Webhook URLを{{endpoint_core}}/priv/v1/apps/{{appkey_core}}/users/{{${user_id}}}/tags
に設定する。Liquidを使って、URL内部でuser_id
。
生テキストのリクエストボディを使用して、SessionMのユーザープロファイルに追加される希望 のタグと、希望するライブ時間を含むように、Webhookボディを構成する。例は次のとおりです。
1
2
3
4
5
6
{
"tags":[
"braze_test"
],
"ttl":2592000
}
設定]タブで、各リクエストヘッダーフィールドのキーと値のペアを追加する:
- 対応する値を持つキーContent-Type
を作成する。 application/json
- 対応する値Basic YOUR-ENCODED-STRING-KEY
を持つキーAuthorization
を作成する。エンドポイントのエンコードされた文字列キーについては、SessionM チームに問い合わせること。
配信スケジュールを立て、ターゲットオーディエンスを 前回作成したセグメンテーションに設定し、キャンペーンを開始する。
このプロセスは、PostmanなどのAPIクライアントを介して、顧客、タグ名、コール内の各ユーザーの生存時間(コールごとに1ユーザー)を指定して、SessionMタグエンドポイントに直接リクエストを行うことでも実行できる。
以下のリクエスト例はcURLを使用している。
1
2
3
4
5
6
7
8
9
10
curl --location -g --request POST '{{endpoint_core}}/priv/v1/apps/{{apikey_core}}/users/{{user_id}}/tags' \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic {{base64_encoded_string}}' \
--data-raw '{
"tags":[
"tagname1",
"tagname2"
],
"ttl":20000
}'
オプション 2: CSV インポート
Braze segmenterを使用してBrazeセグメントをエクスポートし、タグ付けする顧客、タグ名、ファイル内の各ユーザーの生存期間を含むCSVファイルをSessionMに提供する。
Brazeでリアルタイムのオファーウォレットを検索する
SessionMとBrazeを統合することで、コネクテッドコンテンツを使用して、メッセージ送信時にSessionMのユーザーデータをリアルタイムで取り込むことができ、顧客に古い、有効期限が切れた、または既に償還されたロイヤルティオファーを伝えるリスクを排除することができる。
次の例では、コネクテッドコンテンツを使用して、オファーウォレットのデータをメッセージにテンプレート化している。しかし、コネクテッドコンテンツは、SessionMのコネクトエンドポイントのどれでも使用できる。
ステップ1:セッションMでオファーを出す
セッションMは、設定可能ないくつかの異なる内部レバーから顧客にオファーを発行する。発行後、オファーはSessionMが「オファーウォレット」と呼ぶ状態に移される。
顧客は必要なアクションを完了するか、ターゲティングを満たす必要があり、SessionM内でオファーが発行される。
次にSessionMは、発行された状態の顧客のウォレットにオファーを追加する。
ステップ2:SessionMオファーウォレットAPIを呼び出す
SessionMオファーのあるキャンペーンまたはキャンバスステップで、コネクテッドコンテンツを使用して、SessionMget_user_offers
エンドポイントにAPIコールを行う。
コネクテッドコンテンツリクエストで、ユーザーのSessionMuser_id
と、顧客がウォレットに持っているアクティブオファーの全リストを取得するためのあなたのretailer_id
を指定する。このエンドポイントへの各リクエストは、1人のユーザーを含むことができる。コネクテッドコンテンツ呼の基本認証ヘッダー用のエンコードされた文字列キーについては、SessionMチームに問い合わせること。
リクエストボディの中で、culture
はデフォルトでen-US
。しかし、多言語のSessionMオファーのために、ユーザーの言語をテンプレート化するために、Liquidを使うことができる(例えば、"culture":"{{${language}}}"
)。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
{% capture postbody %}
{"retailer_id":"YOUR-RETAIL-ID","user_id":"{{${user_id}}}","skip":0,"take":1000,"include_pending_extended_data":false,"culture":"en-US"}
{% endcapture %}
{% connected_content
{{endpoint_connect}}/offers/api/2.0/offers/get_user_offers
:method post
:headers {
"Content-Type": "application/json",
"Authorization": "Basic YOUR-BASE64-ENCODED-KEY"
}
:body {{postbody}}
:save wallet
%}
ステップ 3:Brazeメッセージングにオファーウォレットを入力する
リクエストがエンドポイントに行われた後、SessionMは各オファーの完全な詳細とともに、発行された状態のオファーの完全なリストを返す。これは返されたレスポンシブの例である:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
{
"status": "ok",
"payload": {
"user": {
"opted_in": false,
"activated": false,
...
},
"user_id": "00000000-0000-0000-0000-000000000000",
"user_offers": [
{
"offer_id": "1a2b3324-1da6-4e49-b921-afc386dabb60",
"offer_group_id": "00000000-0000-0000-0000-000000000000",
"offer_type": "manual_fulfillment",
...
}
],
"total_records": 1,
"offer_groups": [
{
"id": "00000000-0000-0000-0000-000000000000",
"name": "All Offers",
"sort_order": 0
}
],
"offer_categories": [
{
"id": "9a82f973-aae6-4e10-839b-7117a852cf9e",
"name": "All Offers",
"sort_order": 0
}
],
"total_points": 1000,
"available_points": 100
}
}
Liquidドット記法を使えば、これをメッセージに入力することができる。例えば、offer_id
の結果でメッセージをパーソナライズさせるために、{{wallet.payload.available_points}
を使って、100
を返すペイロードを活用することができる。
これは個別のAPIである。500ユーザー以上のバッチを送信する場合は、SessionMアカウントチームに連絡して、統合にバルクデータを組み込む方法について問い合わせること。
トリガーメッセージの設定
SessionMとBrazeの統合により、ユーザープロファイルのデータ、オファーの詳細、ポイント残高がメッセージングにダイナミックな形で入力され、アクションの時点で顧客にリアルタイムで送信される。
ステップ1:SessionMデリバリーチームがテンプレートを設定する
SessionMデリバリーチームと協力して、トリガーメッセージで使用するテンプレートを開発する。SessionMは、ユーザープロファイルのデータ、オファーの詳細、ポイント残高をメッセージングに挿入し、Brazeでトリガーすることで、リアルタイムでの顧客メッセージングを実現する。
SessionMのすべてのテンプレートにある標準フィールドには、以下が含まれる:
canvas_id
campaign_id
broadcast flag
customer identifier
email address
broadcast flag
をtrue
に設定すると、Brazeのキャンペーンまたはキャンバスがターゲットとするセグメンテーション全体にメッセージが送信される。
特定のニーズに応じてフィールドを追加設定することもできる:
- データを提供する:
offer_id
offer title
, , , , , 、user offer id
description
terms and conditions
logo
pos discount id
expiration date
- ポイント賞データ:
point award amount
,point account name
- イベントのトリガーデータ:トリガー/送信Webhookの結果を利用するトリガーイベント内のすべてのデータ。
- キャンペーン専用データ:
campaign runtime
campaign_id
campaign name
、campaign custom data
追加フィールドは、メッセージをパーソナライズするためのtrigger_properties
としてBrazeに送信される。
ステップ2:Brazeキャンペーンまたはキャンバスを作成する
SessionMをトリガーとするAPIトリガーキャンペーンまたはキャンバスをBrazeで作成する。offer_id
やoffer title
などの追加フィールドが設定されている場合、パーソナライズされたフィールドをメッセージングに追加するには、Liquid ({{api_trigger_properties.${offer_id}}}
など) を使用する。
スケジュール配信タブで、キャンペーンまたはキャンバスIDをメモする。
キャンペーンまたはキャンバスの詳細を確定し、「Launch」を選択する。
ステップ 3:SessionMのプロモーションやメッセージングキャンペーンを行う
次に、SessionMでキャンペーンを作成する。
SessionMキャンペーンの詳細設定を更新して、braze_campaign_id
またはbraze_canvas_id
を含む以下のJSONペイロードを含めること。
1
2
3
4
{
"braze_campaign_id": "{{CAMPAIGN ID}}",
"braze_canvas_id": "{{CANVAS ID}}",
}
![] (/docs/ja/assets/img/sessionm/SessionMAdvancedSettings.png?8ea4e8a83d7d8d7a886beed3260fff4c )。{: style=”max-width:85%;”}
スケジュールやビヘイビアに関するメッセージトリガーを作成する。次に、外部メッセージメニューのメッセージングバリアントとして Braze Messaging Variantを選択し、テンプレートを使用する。
このテンプレートは、関連するスタティック属性とダイナミックな属性を引き出し、Brazeエンドポイントにコールアウトする。