Skip to content

Exportar perfil de usuario por Grupo de control global

post

/users/export/global_control_group

Utiliza este punto de conexión para exportar todos los usuarios de un Grupo de control global.

Los datos de usuario se exportan como varios archivos de objetos JSON de usuario separados por nuevas líneas (como un objeto JSON por línea). Todos los usuarios de un Grupo de control global se incluyen cada vez que se generan los archivos. Braze no almacena un historial de cuándo se añaden y eliminan usuarios de un Grupo de control global.

Para localizar el identificador de segmento de tu Grupo de control global, consulta los tipos de identificadores de API.

Requisitos previos

Para utilizar este punto de conexión, necesitarás una clave de API con el permiso users.export.global_control_group.

Límite de velocidad

Aplicamos el límite de velocidad predeterminado de Braze de 250 000 solicitudes por hora a este punto de conexión, como se documenta en Límites de velocidad de la API.

Detalles de la respuesta basados en credenciales

Si has añadido tus credenciales de S3 o Azure a Braze a través de la página correspondiente de Socios tecnológicos, cada archivo se cargará en tu contenedor como un archivo ZIP con un formato de clave similar a segment-export/SEGMENT_ID/YYYY-MM-dd/RANDOM_UUID-TIMESTAMP_WHEN_EXPORT_STARTED/filename.zip. Si utilizas Azure, asegúrate de que tienes marcada la casilla Make this the default data export destination en la página de resumen del socio de Azure en Braze.

Por lo general, creamos un archivo por cada 5000 usuarios para optimizar el procesamiento. Exportar segmentos más pequeños dentro de un espacio de trabajo grande puede dar lugar a varios archivos. A continuación, puedes extraer los archivos y concatenar todos los archivos json en un único archivo si es necesario. Si especificas un output_format de gzip, entonces la extensión del archivo será .gz en lugar de .zip.

Desglose de la ruta de exportación para ZIP

Formato ZIP: bucket-name/segment-export/SEGMENT_ID/YYYY-MM-dd/RANDOM_UUID-TIMESTAMP_WHEN_EXPORT_STARTED/filename.zip

Ejemplo ZIP: braze.docs.bucket/segment-export/abc56c0c-rd4a-pb0a-870pdf4db07q/2019-04-25/d9696570-dfb7-45ae-baa2-25e302r2da27-1556044807/114f0226319130e1a4770f2602b5639a.zip

Propiedad Detalles Se muestra en el ejemplo como
bucket-name Fijo en función del nombre de tu contenedor. braze.docs.bucket
segment-export Fijo. segment-export
SEGMENT_ID Incluido en la solicitud de exportación. abc56c0c-rd4a-pb0a-870pdf4db07q
YYYY-MM-dd La fecha en que se recibe la devolución de llamada con éxito. 2019-04-25
RANDOM_UUID Un UUID aleatorio generado por Braze en el momento de la solicitud. d9696570-dfb7-45ae-baa2-25e302r2da27
TIMESTAMP_WHEN_EXPORT_STARTED Hora Unix (segundos desde 2017-01-01:00:00:00Z) en que se solicitó la exportación en UTC. 1556044807
filename Aleatorio por archivo. 114f0226319130e1a4770f2602b5639a

Te recomendamos encarecidamente que configures tus propias credenciales de S3 o Azure (en Integraciones de socios > Socios tecnológicos > página del socio) cuando utilices este punto de conexión para aplicar tus propias políticas de contenedor en la exportación.

La página de Socios tecnológicos de Azure, con una pestaña para Amazon S3.

Si no proporcionas tus credenciales de almacenamiento en la nube, la respuesta a la solicitud proporciona la URL donde se puede descargar un ZIP que contiene todos los archivos del usuario. La URL solo será una ubicación válida una vez que la exportación esté lista.

Ten en cuenta que si no proporcionas tus credenciales de almacenamiento en la nube, existe una limitación en la cantidad de datos que puedes exportar desde este punto de conexión. Dependiendo de los campos que estés exportando y del número de usuarios, la transferencia del archivo puede fallar si es demasiado grande. Una práctica recomendada es especificar qué campos quieres exportar utilizando fields_to_export y especificando solo los campos que necesitas para que el tamaño de la transferencia sea menor. Si obtienes errores al generar el archivo, considera la posibilidad de dividir tu base de usuarios en más segmentos basándote en un número de contenedor aleatorio (por ejemplo, crea un segmento en el que el número de contenedor aleatorio sea inferior a 1000 o esté comprendido entre 1000 y 2000).

En cualquiera de los dos casos, puedes proporcionar opcionalmente un callback_endpoint para que se te notifique cuando la exportación esté lista. Si se proporciona el callback_endpoint, realizamos una solicitud POST a la dirección proporcionada cuando la descarga esté lista. El cuerpo de la publicación es "success":true. Si no has añadido tus credenciales de almacenamiento en la nube a Braze, el cuerpo de la publicación tiene además el atributo url con la URL de descarga como valor.

Las bases de usuarios más grandes darán lugar a tiempos de exportación más largos. Por ejemplo, una aplicación con 20 millones de usuarios podría tardar una hora o más.

Cuerpo de la solicitud

1
2
Content-Type: application/json
Authorization: Bearer YOUR-REST-API-KEY
1
2
3
4
5
{
  "callback_endpoint" : (optional, string) endpoint to post a download URL to when the export is available,
  "fields_to_export" : (required, array of string) name of user data fields to export, for example, ['first_name', 'email', 'purchases'],
  "output_format" : (optional, string) When using your own S3 bucket, allows to specify file format as 'zip' or 'gzip'. Defaults to zip file format
}

Parámetros de la solicitud

Parámetro Obligatorio Tipo de datos Descripción
callback_endpoint Opcional Cadena Punto de conexión en el que publicar una URL de descarga cuando la exportación esté disponible.
fields_to_export Obligatorio* Matriz de cadenas Nombre de los campos de datos de usuario a exportar; también puedes exportar atributos personalizados.

*A partir de abril de 2021, en las cuentas nuevas se deben especificar los campos concretos que se exportarán.
output_format Opcional Cadena Cuando utilices tu propio contenedor de S3, permite especificar el formato de archivo como zip o gzip. De forma predeterminada se usa el formato de archivo ZIP.

Ejemplo de solicitud

1
2
3
4
5
6
7
8
curl --location --request POST 'https://rest.iad-01.braze.com/users/export/global_control_group' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR-REST-API-KEY' \
--data-raw '{
  "callback_endpoint" : "",
  "fields_to_export" : ["email", "braze_id"],
  "output_format" : "zip"
}'

Campos a exportar

La siguiente es una lista de valores fields_to_export válidos. Usar fields_to_export para minimizar los datos devueltos puede mejorar el tiempo de respuesta de este punto de conexión de la API:

Campo a exportar Tipo de datos Descripción
apps Matriz Aplicaciones para las que este usuario ha registrado sesiones, que incluyen los campos:

- name: nombre de la aplicación
- platform: plataforma de la aplicación, como iOS, Android o Web
- version: número o nombre de la versión de la aplicación
- sessions: número total de sesiones de esta aplicación
- first_used: fecha de la primera sesión
- last_used: fecha de la última sesión

Todos los campos son cadenas.
attributed_campaign Cadena Datos de las integraciones de atribución, si están configuradas. Identificador de una campaña publicitaria concreta.
attributed_source Cadena Datos de las integraciones de atribución, si están configuradas. Identificador de la plataforma en la que estaba el anuncio.
attributed_adgroup Cadena Datos de las integraciones de atribución, si están configuradas. Identificador de una subagrupación opcional debajo de la campaña.
attributed_ad Cadena Datos de las integraciones de atribución, si están configuradas. Identificador de una subagrupación opcional debajo de la campaña y del grupo de anuncios.
braze_id Cadena Identificador único de usuario específico del dispositivo establecido por Braze para este usuario.
country Cadena País del usuario utilizando el estándar ISO 3166-1 alfa-2.
created_at Cadena Fecha y hora de creación del perfil de usuario, en formato ISO 8601.
custom_attributes Objeto Pares clave-valor de atributos personalizados para este usuario.
custom_events Matriz Eventos personalizados atribuidos a este usuario en los últimos 90 días.
devices Matriz Información sobre el dispositivo del usuario, que podría incluir lo siguiente dependiendo de la plataforma:

- model: nombre del modelo del dispositivo
- os: sistema operativo del dispositivo
- carrier: operador de servicio del dispositivo, si está disponible
- idfv: (iOS) identificador de dispositivo de Braze, el identificador de Apple para el proveedor, si existe
- idfa: (iOS) identificador de publicidad, si existe
- device_id: (Android) identificador de dispositivo de Braze
- google_ad_id: (Android) identificador de publicidad de Google Play, si existe
- roku_ad_id: (Roku) identificador de publicidad de Roku
- ad_tracking_enabled: si el seguimiento de anuncios está habilitado en el dispositivo, puede ser verdadero o falso
dob Cadena Fecha de nacimiento del usuario en el formato YYYY-MM-DD.
email Cadena Dirección de correo electrónico del usuario.
external_id Cadena Identificador único de usuario para usuarios identificados.
first_name Cadena Nombre del usuario.
gender Cadena Sexo del usuario. Los valores posibles son:

- M: masculino
- F: femenino
- O: otro
- N: no aplicable
- P: prefiero no decirlo
- nil: desconocido
home_city Cadena Ciudad de residencia del usuario.
language Cadena Idioma del usuario en el estándar ISO-639-1.
last_coordinates Matriz de flotantes Ubicación más reciente del dispositivo del usuario, formateada como [longitude, latitude].
last_name Cadena Apellido del usuario.
phone Cadena Número de teléfono del usuario en formato E.164.
purchases Matriz Compras que este usuario ha realizado en los últimos 90 días.
random_bucket Entero Número de contenedor aleatorio del usuario, utilizado para crear segmentos uniformemente distribuidos de usuarios aleatorios.
time_zone Cadena Zona horaria del usuario en el mismo formato que la base de datos de zonas horarias de IANA.
total_revenue Flotante Total de ingresos atribuidos a este usuario. Los ingresos totales se calculan en función de las compras que el usuario realizó durante las ventanas de conversión de las Campaigns y los Canvas que recibió.
uninstalled_at Marca de tiempo Fecha y hora en que el usuario desinstala la aplicación. Se omite si no se ha desinstalado la aplicación.
user_aliases Objeto Objeto de alias de usuario que contiene alias_name y alias_label, si existe.

Respuesta

1
2
3
4
5
{
    "message": (required, string) the status of the export, returns 'success' when completed without errors,
    "object_prefix": (required, string) the filename prefix that is used for the JSON file produced by this export, for example,'bb8e2a91-c4aa-478b-b3f2-a4ee91731ad1-1464728599',
    "url" : (optional, string) the URL where the segment export data can be downloaded if you do not have your own S3 credentials
}

Una vez que la URL está disponible, solo es válida durante unas pocas horas. Por ello, te recomendamos encarecidamente que añadas tus propias credenciales de S3 a Braze.

Ejemplo de archivo de salida de exportación de usuario

Objeto de exportación de usuario (incluimos la menor cantidad de datos posible; si falta un campo en el objeto, se debe suponer que es nulo o está vacío):

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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
{
    "created_at" : (string),
    "external_id" : (string),
    "user_aliases" : [
      {
        "alias_name" : (string),
        "alias_label" : (string)
      }
    ],
    "braze_id": (string),
    "first_name" : (string),
    "last_name" : (string),
    "email" : (string),
    "dob" : (string) date for the user's date of birth,
    "home_city" : (string),
    "country" : (string) ISO-3166-1 alpha-2 standard,
    "phone" : (string),
    "language" : (string) ISO-639-1 standard,
    "time_zone" : (string),
    "last_coordinates" : (array of float) [lon, lat],
    "gender" : (string) "M" | "F",
    "total_revenue" : (float),
    "attributed_campaign" : (string),
    "attributed_source" : (string),
    "attributed_adgroup" : (string),
    "attributed_ad" : (string),
    "custom_attributes" : (object) custom attribute key-value pairs,
    "custom_events" : [
      {
        "name" : (string),
        "first" : (string) date,
        "last" : (string) date,
        "count" : (int)
      },
      ...
    ],
    "purchases" : [
      {
        "name" : (string),
        "first" : (string) date,
        "last" : (string) date,
         "count" : (int)
      },
      ...
    ],
    "devices" : [
      {
        "model" : (string),
        "os" : (string),
        "carrier" : (string),
        "idfv" : (string) only included for iOS devices when IDFV collection is enabled,
        "idfa" : (string) only included for iOS devices when IDFA collection is enabled,
        "google_ad_id" : (string) only included for Android devices when Google Play Advertising Identifier collection is enabled,
        "roku_ad_id" : (string) only included for Roku devices,
        "ad_tracking_enabled" : (bool)
      },
      ...
    ],
    "apps" : [
      {
        "name" : (string),
        "platform" : (string),
        "version" : (string),
        "sessions" : (string),
        "first_used" : (string) date,
        "last_used" : (string) date
      },
      ...
    ]
}
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
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
{
    "created_at" : "2020-07-10 15:00:00.000 UTC",
    "external_id" : "A8i3mkd99",
    "user_aliases" : [
      {
        "alias_name" : "user_123",
        "alias_label" : "amplitude_id"
      }
    ],
    "braze_id": "5fbd99bac125ca40511f2cb1",
    "random_bucket" : 2365,
    "first_name" : "Jane",
    "last_name" : "Doe",
    "email" : "[email protected]",
    "dob" : "1980-12-21",
    "home_city" : "Chicago",
    "country" : "US",
    "phone" : "+442071838750",
    "language" : "en",
    "time_zone" : "Eastern Time (US & Canada)",
    "last_coordinates" : [41.84157636433568, -87.83520818508256],
    "gender" : "F",
    "total_revenue" : 65,
    "attributed_campaign" : "braze_test_campaign_072219",
    "attributed_source" : "braze_test_source_072219",
    "attributed_adgroup" : "braze_test_adgroup_072219",
    "attributed_ad" : "braze_test_ad_072219",
    "custom_attributes":
      {
        "loyaltyId": "37c98b9d-9a7f-4b2f-a125-d873c5152856",
        "loyaltyPoints": "321",
        "loyaltyPointsNumber": 107
      },
    "custom_events": [
      {
          "name": "Loyalty Acknowledgement",
          "first": "2021-06-28T17:02:43.032Z",
          "last": "2021-06-28T17:02:43.032Z",
          "count": 1
      },
      ...
    ],
    "purchases": [
      {
        "name": "item_40834",
        "first": "2021-09-05T03:45:50.540Z",
        "last": "2022-06-03T17:30:41.201Z",
        "count": 10
      },
      ...
    ],
    "devices": [
      {
        "model": "Pixel XL",
        "os": "Android (Q)",
        "carrier": null,
        "device_id": "312ef2c1-83db-4789-967-554545a1bf7a",
        "ad_tracking_enabled": true
      },
      ...
    ],
    "apps": [
      {
        "name": "MovieCannon",
        "platform": "Android",
        "version": "3.29.0",
        "sessions": 1129,
        "first_used": "2020-02-02T19:56:19.142Z",
        "last_used": "2021-11-11T00:25:19.201Z"
      },
      ...
    ]
}
New Stuff!