Skip to content

セグメント

Segment は、顧客データの収集、クリーンアップ、およびアクティブ化を支援する顧客データプラットフォームです。

Braze と Segment の統合により、ユーザーを追跡し、さまざまなユーザー分析プロバイダーにデータを転送できます。Segment では次の操作を行うことができます。

前提条件

統合

BrazeとSegmentを統合するには、選択した統合タイプ(接続モード)に従って、Brazeを接続先に設定する必要がある。Brazeの新規顧客であれば、セグメントリプレイを使って過去のデータをBrazeにリレーすることができる。次に、Braze と Segment 間のスムーズなデータフローを確保するために、マッピングを設定し、統合をテストする必要があります。

ステップ1:Braze 宛先を作成する

ソースの設定が完了したら、各ソース (iOS、Android、Web など) の宛先として Braze を設定する必要があります。接続設定を使用して、BrazeとSegment間のデータフローをカスタマイズする多くのオプションがある。

ステップ2:宛先フレームワークと接続タイプを選択する

Segment で、[送信先] > [Braze] > [Braze 設定] > [ソースを選択] > [設定] と移動します。

ソースの設定ページ。このページでは、宛先フレームワークを [Actions] または [Classic] のいずれかに設定し、接続モードを [Cloud mode] または [Device mode] のいずれかに設定します。

Segment のWeb ソース (Analytics.js) およびネイティブクライアントサイドライブラリは、サイドバイサイド (デバイスモード) 統合またはサーバー間 (クラウドモード) 統合のいずれかを使用して、Braze と統合できます。

選択する接続モードは、宛先が設定されているソースのタイプによって決まります。

サイドバイサイドの SDK 統合

デバイスモードとも呼ばれるこの統合では、Segment の SDK とメソッドが Braze SDK にマッピングされます。これにより、Braze の SDK が提供するすべての機能 (プッシュ、アプリ内メッセージング、その他の Braze ネイティブのメソッドなど) にアクセスできるようになります。

デバイスモード接続を使用する場合、Braze SDK をネイティブに統合する場合と同様に、Braze SDK はすべてのユーザーに device_id とバックエンド識別子 braze_id を割り当てます。これにより Braze は、userId の代わりにこれらの識別子を照合することで、デバイスからの匿名アクティビティを取得できます。

Braze を Android ソースのデバイスモード送信先として設定するには、送信先フレームワークとして [アクション] を選択してから、[保存] を選択します。

サイドバイサイドの統合を完了するには、Android アプリに Braze のデスティネーション依存性を追加するための Segment の詳細な手順を参照します。

Androidデバイスモード統合のソースコードは、Brazeによって保守されており、新しいBraze SDKのリリースを反映して定期的に更新される。

Braze を iOS ソースのデバイスモード送信先として設定するには、送信先フレームワークとして [アクション] を選択してから、[保存] を選択します。

サイドバイサイドの統合を完了するには、iOSアプリにBraze Segmentポッドを追加するためのSegmentの詳細な手順を参照する。

iOSデバイスモード統合のソースコードは、Brazeによって保守されており、新しいBraze SDKのリリースを反映して定期的に更新される。

Web ソースのデバイスモード送信先として Braze を設定する場合は、Segment の Braze Web モード (アクション) フレームワークが推奨されます。

Segment で、送信先フレームワークとして [アクション] を選択し、接続モードとして [デバイスモード] を選択します。

React Native Braze プラグインのソースコードは Segment によって管理されており、新しい Braze SDK リリースを反映するために定期的に更新されます。

React Native Segment ソースを Braze に接続する場合は、オペレーティングシステムごとにソースと宛先を設定する必要があります。たとえば、iOS の宛先と Android の宛先を設定します。

アプリのコードベース内で、各アプリに関連付けられたそれぞれのソース書き込みキーを使用して、デバイスタイプ別にSegment SDKを条件付きで初期化する。

デバイスからプッシュトークンが登録され、Brazeに送信されると、SDKの初期化時に使用されたアプリ識別子に関連付けられる。デバイスタイプの条件付き初期化は、Brazeに送信されるプッシュトークンが関連アプリに関連付けられていることを確認するのに役立つ。

Braze を各ソースのデバイスモード送信先として設定するには、送信先フレームワークとして [アクション] を選択してから、[保存] を選択します。

サーバー間統合

クラウドモードとも呼ばれるこの統合は、Segment から Braze の REST API にデータを転送します。Segment の Braze クラウドモード (アクション) フレームワークを使用して、任意のソースにクラウドモードの送信先を設定します。

サイドバイサイドの統合とは異なり、サーバー間の統合では、アプリ内メッセージング、コンテンツカード、自動プッシュトークン登録などの Braze UI 機能はサポートされません。また、クラウドモードでは利用できない自動取得データ (匿名ユーザーやデバイスレベルのフィールドなど) も存在します。

このデータとこれらの機能を使用したい場合は、サイド・バイ・サイド(デバイスモード)SDK統合の使用を検討すること。

Braze Cloud Mode (Actions) destination のソースコードは Segment によって管理されています。

ステップ3:設定

宛先の設定を定義します。すべての設定がすべての宛先タイプに適用されるわけではありません。

ステップ4:メソッドをマッピングする

Brazeは、Pageメソッド、Identifyメソッド、TrackSegmentメソッドをサポートしている。これらのメソッドで使用される識別子の種類は、データがサーバー間統合 (cloud-mode) で送信されるのか、サイドバイサイド (device-mode) で送信されるのかによって異なります。Braze Web Mode Actions 宛先と Cloud Mode Actions 宛先では、Segment エイリアス呼び出しのマッピングを設定することもできます。

Cloud Mode (Actions) 宛先にある Create Alias アクションを使用して、エイリアスのみのユーザーを作成したり、既存の external_id プロファイルにエイリアスを追加したりできます。ユーザーの識別(Identify User)アクションは、エイリアスの作成(Create Alias)アクションと並行して使用することができ、そのユーザーが使用可能になった後、エイリアスのみのユーザーをexternal_id

回避策を考案しbraze_id を使用して cloud-mode で匿名ユーザーのデータを送信することもできます。そのため、すべてのSegment APIコールにユーザーのbraze_id を手動で含める必要がある。この回避策の設定方法については、Segmentのドキュメントを参照されたい。

Braze に送信される宛先データは、Cloud Mode Actions 内でバッチ処理できます。バッチサイズの上限は75イベントであり、これらのバッチはフラッシュされる前に30秒間蓄積される。リクエストのバッチ処理はアクションごとに実行されます。たとえば、Identify Calls (属性) が1つのリクエストでバッチ処理され、Track Calls (カスタムイベント) が2番目のリクエストでバッチ処理されます。SegmentからBrazeに送信されるリクエストの数を減らすことができるため、Brazeはこの機能を有効にすることを推奨している。その結果、宛先が Braze のレート制限に達してリクエストを再試行するリスクが減少します。

[Braze Destination] > [Mappings] に移動して、アクションのバッチ処理をオンにできます。そこから、マッピングの右側にある3つのドットのアイコンをクリックし、[Edit Mapping] を選択します。Select mappingsセクションの一番下までスクロールし、Batch Data to Brazeが Yesに設定されていることを確認する。

特定する

Identifyコールは、ユーザーをその行動に結びつけ、そのユーザーに関する属性を記録することができる。

特定のセグメント特殊特性は、Brazeの標準的な属性プロファイルフィールドにマッピングされる:

email_subscribepush_subscribe などのその他の予約済み Braze プロファイルフィールドを送信するには、これらのフィールドに Braze 命名規則を使用して、identify 呼び出しでこれらを特性として渡します。

サブスクリプショングループにユーザーを追加する

traits パラメータの以下のフィールドを使用して、指定されたサブスクリプショングループからユーザーをサブスクライブまたはアンサブスクライブすることもできる。

braze_subscription_groups という予約済みの Braze プロファイルフィールドを使用します。このフィールドは、オブジェクト配列に関連付けることができます。配列の各オブジェクトに2つの予約キーが含まれている必要があります。

  1. subscription_group_state:特定のサブスクリプショングループに対してユーザーが "subscribed" または"unsubscribed" のいずれであるかを示します。
  2. subscription_group_id:サブスクリプショングループの一意の ID を表す。この ID は、Braze ダッシュボードの [サブスクリプショングループ管理] で確認できます。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
analytics.identify(
  userId: "{your-user}",
  traits: [
    "braze_subscription_groups": [
      [
        "subscription_group_id": "{your-group-id}",
        "subscription_group_state": "subscribed"
      ],
      [
        "subscription_group_id", "{your-group-id}",
        "subscription_group_state": "unsubscribed"
      ]
    ]
  ]
)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
analytics.identify(
  "{your-user}",
  buildJsonObject {
    put("braze_subscription_groups", buildJsonArray {
        add(
          buildJsonObject {
            put("subscription_group_id", "{your-group-id}")
            put("subscription_group_state", "subscribed")
          }
        )
        add(
          buildJsonObject {
            put("subscription_group_id", "{your-group-id}")
            put("subscription_group_state", "unsubscribed")
          }
        )
      }
    )
  }
)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
analytics.identify(
  "{your-user}",
  {
    braze_subscription_groups: [
      {
        subscription_group_id: "{your-group-id}",
        subscription_group_state: "subscribed"
      },
      {
        subscription_group_id: "{your-group-id}",
        subscription_group_state: "unsubscribed"
      }
    ]
  }
)
カスタム属性

その他の特徴はすべてカスタム属性として記録される。

Web Mode Actions 宛先と Cloud Mode Actions 宛先では、Update User Profile Action を使用して前述のマッピングを設定できます。

追跡

あなたがイベントを追跡するとき、私たちは提供された名前を使用してカスタムイベントとしてそのイベントを記録する。

トラックコールのプロパティオブジェクト内で送信されたメタデータは、関連イベントのカスタムイベントプロパティとしてBrazeに記録される。すべてのカスタムイベントプロパティデータタイプがサポートされている。

Web Mode Actions 宛先と Cloud Mode Actions 宛先では、Track Event Action を使用して前述のマッピングを設定できます。

注文完了

Segment の eCommerce API で記述されているフォーマットを使用して、Order Completed という名前のイベントを追跡すると、購入としてリストアップされた商品が記録されます。

Web Mode Actions 宛先と Cloud Mode Actions 宛先では、Track Purchase Action でデフォルトのマッピングをカスタマイズできます。

ページ

Pageコールは、ユーザーがあなたのウェブサイトのページを見るたびに、ページに関するオプションのプロパティとともに記録することができる。

このイベントタイプを、Web Mode Actions 宛先と Cloud Actions 宛先でトリガーとして使用して、カスタムイベントを Braze に記録することができます。

ステップ 5: 連携のテスト

サイドバイサイド(デバイスモード)統合を使用する場合、概要メトリクス(ライフタイムセッション、MAU、DAU、スティッキネス、デイリーセッション、MAUあたりのデイリーセッション)を使用して、BrazeがSegmentからデータを受信していることを確認できる。

カスタムイベントページまたは収益ページでデータを確認するか、またはセグメントを作成することでデータを確認できます。ダッシュボードのカスタム・イベント・ページでは、カスタム・イベントのカウントを時系列で見ることができる。サーバー間(クラウドモード)統合を使用している場合、MAUとDAU統計を含む計算式を使用することはできないことに注意。

Braze に購入データを送信する場合 (ステップ3 の「Track」タブの「Order Completed」を参照)、収益ページで特定の期間の収益や購入に関するデータ、またはアプリの総収益を確認できます。

セグメントを作成することで、カスタムイベントと属性データに基づいてユーザーをフィルタリングすることができる。

ユーザーの削除と抑制

ユーザーを削除または抑制する必要がある場合は、Segment のユーザー削除機能 Braze /users/delete エンドポイントにマッピングされていることに注意してください。これらの削除の検証には最大30日かかる可能性があることに注意してほしい。

(external_id と同様に) Braze と Segment の間で共通のユーザー識別子を選択する必要があります。Segment で削除リクエストを開始した後は、Segment ダッシュボードの削除リクエストのタブでステータスを確認できます。

Segment のリプレイ機能

Segment は、新しいテクノロジーパートナーに対してすべての履歴データを「再生」するサービスをクライアントに提供しています。関連するすべての履歴データをインポートすることを望む Braze の新しいお客様は、Segment を介してインポートできます。この機能に興味がある場合は Segment の担当者にお問い合わせください。

Segmentが当社の/users/track エンドポイントに接続し、ユーザーに代わってBrazeにユーザーデータをインポートする。

ベストプラクティス

Review use cases to avoid data overages.

Segment では、クライアントが送信できるデータエレメントの数は制限されていません。セグメントを使えば、すべてのイベントをBrazeに送ることも、どのイベントを送るかを決めることもできる。Segmentを使ってすべてのイベントを送信するのではなく、マーケティングチームや編集チームとユースケースを検討し、データオーバーを避けるためにBrazeに送信するイベントを決定することをお勧めする。

Understand the difference between the custom API endpoint and the custom REST API endpoint in the Mobile Device Mode destination settings.

Braze API エンドポイント (Segment では「Custom API Ednpoint」と呼ばれます) は、SDK のために Braze により設定される SDK エンドポイントです (例: sdk.iad-03.braze.com)。Braze REST API エンドポイント (Segment では「Custom REST API Endpoint」と呼ばれます) は、REST API エンドポイントです (例: https://rest.iad-03.braze.com)。

Ensure your custom API endpoint is correctly input into the mobile device mode destination settings.

Braze SDK のエンドポイントを正しく入力するには、適切な形式に従う必要があります。Braze SDK エンドポイントには https:// を含めないでください (例: sdk.iad-03.braze.com)。このようにしないと、Braze 統合が機能しなくなります。これは、Segment によりエンドポイントの先頭に https:// が自動的に付加され、その結果、Braze は無効なエンドポイント https://https://sdk.iad-03.braze.com で初期化されことになるためです。

Data mapping nuances.

データが期待通りに通過しないシナリオ:

  1. 階層化カスタム属性
    • ネストされたカスタム属性は、技術的にはSegmentを通してBrazeに送信できるが、ペイロード全体が毎回送信される。これにより、ペイロードが送信されるたびに、ネストされたオブジェクトに渡されたキーごとにデータポイントが発生する。

      ペイロードの送信時にデータポイントのサブセットのみを使用するには、Segment のカスタム宛先関数機能を使用できます。Segment プラットフォームのこの機能により、ダウンストリームの宛先へのデータの送信方法をカスタマイズできます。

2.サーバー間で匿名データを受け渡す。

  • 顧客は、Segment のサーバー間ライブラリを使用して、匿名データを他のシステムに渡すことができます。サーバー間 (cloud-mode) 統合を介して external_id を持たないユーザーを Braze に送信する方法については、「メソッドをマッピングする」セクションを参照してください。
Customization of Braze initialization.

Brazeのカスタマイズには、プッシュ、アプリ内メッセージ、コンテンツカード、初期化など、いくつかの方法がある。サイドバイサイド統合では、Braze の直接統合と同様に、プッシュ、アプリ内メッセージ、コンテンツカードをカスタマイズできます。

ただし Braze SDK の統合時にカスタマイズを行うこと、または初期化設定を指定することは難しく、場合によっては不可能なことがあります。これは、Segment の初期化時に Segment により Braze SDK が初期化されるためです。

Sending deltas to Braze.

ユーザー属性データを渡すときは、前回の更新以降に変更された属性の値のみを渡すようにする。これにより、不要なデータポイントのロギングを防ぐことができる。クライアントサイドのソースについては、Segment のオープンソース Middleware ツール使用して統合を最適化し、Segment からの重複した identify() 呼び出しをデバウンスすることで、データポイント使用量を制限します。

New Stuff!