Skip to content

ユーザーをマージする

post

/users/merge

このエンドポイントを使用して、あるユーザーを別のユーザーにマージする。

マージはリクエストごとに50個まで指定できます。このエンドポイントは非同期である。

前提条件

このエンドポイントを使用するには、API キーusers.mergeの権限が必要です。

レート制限

このエンドポイントには、毎分20,000リクエストの共有レート制限を適用する。このレート制限は、API レート制限に記載されているように、/users/alias/new/users/identify/users/alias/update、および /users/alias/update エンドポイントと共有されます。

要求本文:

1
2
Content-Type: application/json
Authorization: Bearer YOUR_REST_API_KEY
1
2
3
{
  "merge_updates" : (required, array of objects)
}

リクエストパラメーター

マージ動作

以下に説明する動作は、Snowflakeを使用していないBrazeの全機能に当てはまる。メッセージング履歴]タブ、[セグメント拡張]、[クエリビルダー]、および[カレント]では、ユーザーのマージが反映されない。

このエンドポイントは、次のフィールドが対象ユーザーで見つからない場合にマージします。

  • メールアドレス(encrypted 以外)
  • 性別
  • 生年月日
  • 電話番号
  • タイムゾーン
  • 市区町村
  • 言語
  • デバイス情報
  • セッション数 (両方のプロファイルのセッションの合計)
  • 最初のセッション日(Brazeは、2つの日付の前の日付を選択します)
  • 最後のセッション日(Braze は2 つの日付の後の日付を選択します)
  • カスタム属性 s (Braze は、ターゲットプロファイル上に存在するカスタム属性を保持し、ターゲットプロファイル上に存在しないカスタム属性を含みます)
  • カスタム・イベントと購入イベントのデータ
  • &quot のカスタムイベントおよび購入イベントプロパティ;Y 日数とクォートのX 回; セグメンテーション (ここでX<=50) および Y<=30)
  • セグメント可能なカスタム・イベントのサマリー
    • イベント数(両プロファイルの合計)
    • 最初に発生した事象(Braze は2 つの日付の前の日付を選択します)
    • 最後に発生した事象(Braze は2 つの日付の後の日付を選択します)
  • アプリ内購入の合計(セント単位)(両方のプロファイルの合計)
  • 購入総数 (両方のプロファイルの合計)
  • 最初の購入日(Brazeは2つの日付の前の日付を選択します)
  • 最終購入日(Brazeは2つの日付の後の日付を選択します)
  • アプリの概要
  • Last_X_at フィールド s (Braze 更新 s フィールド s (孤立したプロファイル フィールドs がより新しい場合)
  • キャンペーンのアクション間データ(Brazeは最新の日付フィールドを選択します)
  • ワークフローの概要(Brazeは最新の日付フィールドを選択します)
  • メッセージとメッセージのエンゲージメント履歴
  • Brazeは、両方のユーザープロファイルsにアプリが存在する場合にのみセッションをマージします。

カスタムイベント日と購入イベント日の動作

これらのマージされたフィールドs 更新 “ X イベントのY days” フィルター s。購入イベントの場合、これらのフィルターには、「Y日間の購入回数」と「過去Y日間の使用金額」が含まれる。

電子メールまたは電話番号でユーザーをマージする

emailまたはphoneが識別子として指定されている場合は、追加のprioritization値を識別子に含める必要があります。prioritization は、複数のユーザーs が見つかった場合にマージするユーザーを指定する順序付けされた配列である必要があります。つまり、優先順位付けから複数のユーザーが一致した場合、マージは行われません。

配列に指定できる値は次のとおりです。

  • identified
  • unidentified
  • most_recently_updated (最近更新されたユーザーを優先することを意味します)
  • least_recently_updated (最も最近更新されていないユーザーを優先することを意味します)

優先配列には、一度に以下のオプションのうち1つしか存在できません。

  • identified を持つユーザーを優先することである。 external_id
  • unidentified のないユーザーを優先することである。 external_id

例のリクエスト

基本リクエスト

これはリクエストのパターンを示す基本的なリクエストボディである。

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
37
38
39
40
curl --location --request POST 'https://rest.iad-01.braze.com/users/merge' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR_REST_API_KEY' \
--data-raw '{
{
  "merge_updates": [
    {
      "identifier_to_merge": {
        "external_id": "old-user1"
      },
      "identifier_to_keep": {
        "external_id": "current-user1"
      }
    },
    {
      "identifier_to_merge": {
        "email": "[email protected]",
        "prioritization": ["unidentified", "most_recently_updated"]
      },
      "identifier_to_keep":  {
        "email": "[email protected]",
        "prioritization": ["identified", "most_recently_updated"]
      }
    },
    {
      "identifier_to_merge": {
        "user_alias": {
          "alias_name": "[email protected]",
          "alias_label": "email"
        }
      },
      "identifier_to_keep": {
        "user_alias": {
          "alias_name": "[email protected]",
          "alias_label": "email"
        }
      }
    }
  ]
}'

未確認ユーザーをマージする

次のリクエストは、直近に更新された識別されていないユーザーを、外部ID john を持つユーザーにメールアドレス[email protected] でマージします。この例題では、most_recently_updated フィルターを使用して、クエリーを1 つの不明なユーザーにします。そのため、2 つの未確認ユーザーがこのメールアドレスを持つ場合、1 つだけが外部ID john を持つユーザーにマージされます。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
curl --location --request POST 'https://rest.iad-01.braze.com/users/merge' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR_REST_API_KEY' \
--data-raw '{
{
  "merge_updates": [
    {
      "identifier_to_merge": {
        "email": "[email protected]",
        "prioritization": ["unidentified", "most_recently_updated"]
      },
      "identifier_to_keep": {
        "external_id": "john"
      }
    }
  ]
}'

未確認ユーザーを識別されたユーザーにマージする

次に、直近の更新不明ユーザーとメールアドレス[email protected] を、メールアドレス[email protected] の識別されたユーザーにマージします。

most_recently_updated フィルターを使用すると、クエリーは1 つのユーザーに(identifier_to_merge には1 つの識別されないユーザー、identifier_to_keep には1 つの識別されたユーザー) になります。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
curl --location --request POST 'https://rest.iad-01.braze.com/users/merge' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR_REST_API_KEY' \
--data-raw '{
{
  "merge_updates": [
    {
      "identifier_to_merge": {
        "email": "[email protected]",
        "prioritization": ["unidentified", "most_recently_updated"]
      },
      "identifier_to_keep": {
        "email": "[email protected]",
        "prioritization": ["identified", "most_recently_updated"]
      }
    }
  ]
}'

most_recently_updated 優先順位を指定せずに、識別されていないユーザーをマージする

メールアドレス[email protected]を持つ2つの不明なユーザーsがある場合、このリクエストは、そのメールアドレスを持つ2つの不明なユーザーsがあるため、ユーザーsをマージしません。このリクエストは、メール address [email protected] を持つ識別できないユーザーが1 つしかない場合にのみ機能します。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
curl --location --request POST 'https://rest.iad-01.braze.com/users/merge' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR_REST_API_KEY' \
--data-raw '{
{
  "merge_updates": [
    {
      "identifier_to_merge": {
        "email": "[email protected]",
        "prioritization": ["unidentified"]
      },
      "identifier_to_keep": {
        "external_id": "john"
      }
    }
  ]
}'

応答

このエンドポイントには2つのステータスコード応答があります: 202400

成功応答の例

ステータスコード 202 は、次の応答本文を返す可能性があります。

1
2
3
{
  "message": "success"
}

エラー応答例

ステータスコード 400 は、次の応答本文を返す可能性があります。遭遇する可能性のあるエラーの詳細については、「トラブルシューティング」を参照のこと。

1
2
3
{
  "message": "'merge_updates' must be an array of objects"
}

トラブルシューティング

以下の表は、起こりうるエラーメッセージの一覧である。

New Stuff!