Skip to content

Fusionar usuarios

post

/users/merge

Utiliza este punto final para fusionar un usuario con otro usuario.

Se pueden especificar hasta 50 fusiones por solicitud. Este punto final es asíncrono.

Requisitos previos

Para utilizar este punto final, necesitarás una clave de API con el permiso users.merge.

Límite de velocidad

Cuerpo de la solicitud

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

Parámetros de la solicitud

Comportamiento de la fusión

El comportamiento que se documenta a continuación es válido para todas las características de Braze que no funcionan con Snowflake. Las fusiones de usuarios no se reflejarán en la pestaña Historial de mensajería, Extensiones de segmento, Generador de consultas y Currents.

Este punto final fusionará los siguientes campos si no se encuentran en el usuario de destino.

  • Nombre
  • Apellido
  • Correo electrónico
  • Género
  • Fecha de nacimiento
  • Número de teléfono
  • Zona horaria
  • Ciudad de origen
  • País
  • Idioma
  • Información del dispositivo
  • Recuento de sesiones (la suma de las sesiones de ambos perfiles)
  • Fecha de la primera sesión (Braze elegirá la fecha más temprana de las dos)
  • Fecha de la última sesión (Braze elegirá la fecha más tardía de las dos)
  • Atributos personalizados (los atributos personalizados existentes en el perfil de destino se conservan e incluirán atributos personalizados que no existían en el perfil de destino)
  • Datos personalizados de eventos y compras
  • Propiedades del evento personalizado y del evento de compra para la segmentación “X veces en Y días” (donde X<=50 e Y<=30)
  • Resumen segmentable de eventos personalizados
    • Recuento de eventos (la suma de ambos perfiles)
    • Fecha en que ocurrió el suceso (Braze elegirá la fecha más temprana de las dos)
    • Última vez que ocurrió el suceso (Braze elegirá la fecha más tardía de las dos)
  • Total de compras dentro de la aplicación en céntimos (la suma de ambos perfiles)
  • Número total de compras (la suma de ambos perfiles)
  • Fecha de la primera compra (Braze elegirá la fecha anterior de las dos)
  • Fecha de la última compra (Braze elegirá la fecha más tardía de las dos)
  • Resúmenes de la aplicación
  • Campos Last_X_at (Braze actualizará los campos si los campos huérfanos del perfil son más recientes)
  • Datos de interacción de la campaña (Braze elegirá los campos de fecha más recientes)
  • Resúmenes del flujo de trabajo (Braze elegirá los campos de fecha más recientes)
  • Historial de interacción de mensajes y mensajería
  • Los datos de la sesión solo se fusionarán si la aplicación existe en ambos perfiles de usuario.

Comportamiento personalizado de la fecha del evento y de la fecha del evento de compra

Estos campos fusionados actualizarán los filtros “para X eventos en Y días”. Para los eventos de compra, estos filtros incluyen “número de compras en Y días” y “dinero gastado en los últimos Y días”.

Fusionar usuarios por correo electrónico o número de teléfono

Si se especifica un email o phone como identificador, se requiere un valor prioritization adicional en el identificador. prioritization debe ser una matriz que especifique qué usuario fusionar si se encuentran varios usuarios. prioritization es una matriz ordenada, lo que significa que si más de un usuario coincide a partir de una priorización, no se producirá la fusión.

Los valores permitidos para la matriz son:

  • identified
  • unidentified
  • most_recently_updated (se refiere a dar prioridad al usuario actualizado más recientemente)
  • least_recently_updated (se refiere a dar prioridad al usuario que se haya actualizado menos recientemente)

En la matriz de priorización solo puede existir una de las siguientes opciones a la vez:

  • identified se refiere a dar prioridad a un usuario con un external_id
  • unidentified se refiere a dar prioridad a un usuario sin un external_id

Ejemplos de solicitudes

Petición básica

Se trata de un cuerpo de petición básico para mostrar el patrón de la petición.

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"
        }
      }
    }
  ]
}'

Fusionar usuario no identificado

La siguiente solicitud fusionaría el usuario no identificado actualizado más recientemente con dirección de correo electrónico “[email protected]” en el usuario con external_id “john”. Si utilizas most_recently_updated o least_recently_updated, filtrarás la consulta a un solo usuario no identificado. Así, si hubiera dos usuarios no identificados con esta dirección de correo electrónico, solo uno se fusionaría en el usuario con external_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"
      }
    }
  ]
}'

Fusionar usuario no identificado en usuario identificado

El siguiente ejemplo fusiona el usuario no identificado actualizado más recientemente con la dirección de correo electrónico “[email protected]” en el usuario identificado actualizado más recientemente con la dirección de correo electrónico “[email protected]”. Utilizar most_recently_updated o least_recently_updated filtra las consultas a un solo usuario (un usuario no identificado para identifier_to_merge, y un usuario identificado para identifier_to_keep).

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", "least_recently_updated"]
      },
      "identifier_to_keep": {
        "email": "[email protected]",
        "prioritization": ["identified", "most_recently_updated", "least_recently_updated"]
      }
    }
  ]
}'

Fusionar un usuario no identificado sin incluir la priorización más_recientemente_actualizada

Si hay dos usuarios no identificados con la dirección de correo electrónico “[email protected]”, este ejemplo de solicitud no fusiona a ningún usuario, ya que hay dos usuarios no identificados con esa dirección de correo electrónico. Esta solicitud solo funciona si solo hay un usuario no identificado con la dirección de correo electrónico “[email protected]”.

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"
      }
    }
  ]
}'

Respuesta

Hay dos respuestas de código de estado para este punto final: 202 y 400.

Ejemplo de respuesta satisfactoria

El código de estado 202 podría devolver el siguiente cuerpo de respuesta.

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

Ejemplo de respuesta de error

El código de estado 400 podría devolver el siguiente cuerpo de respuesta. Consulte la sección Solución de problemas para obtener más información sobre los errores que puede encontrar.

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

Solución de problemas

En la tabla siguiente se enumeran los posibles mensajes de error que pueden aparecer.

¿QUÉ TAN ÚTIL FUE ESTA PÁGINA?
New Stuff!