Skip to content

Configuración de tablas de Ingesta de datos de Cloud

Usa esta página para separar dos requisitos relacionados pero diferentes de la Ingesta de datos de Cloud (CDI): la configuración de la tabla de origen y el formato de la carga útil.

Comprender la configuración de tablas en comparación con el formato de la carga útil

Para las sincronizaciones de datos de usuario de CDI, configura ambos:

Braze lee las filas de tu tabla de origen primero y luego valida el campo PAYLOAD en función del tipo de datos seleccionado.

Configurar tu tabla de origen

Para las sincronizaciones de datos de usuario del almacén de datos, tu tabla o vista de origen debe incluir:

  • UPDATED_AT
  • PAYLOAD
  • Una o más columnas de identificador de usuario compatibles:
    • EXTERNAL_ID
    • ALIAS_NAME y ALIAS_LABEL
    • BRAZE_ID
    • EMAIL
    • PHONE

Cada fila debe incluir un tipo de identificador a la vez, incluso si tu tabla contiene múltiples columnas de identificador.

Requisitos de UPDATED_AT

  • Almacena los valores de UPDATED_AT en UTC para evitar problemas con el horario de verano.
  • Braze sincroniza las filas en las que UPDATED_AT es posterior al último valor sincronizado.
  • Las filas en la marca de tiempo exacta del límite pueden volver a sincronizarse si nuevas filas comparten esa marca de tiempo.

Para orientación sobre marcas de tiempo duplicadas y actualizaciones incrementales, consulta Mejores prácticas de Ingesta de datos de Cloud.

Configurar la columna PAYLOAD

El valor de PAYLOAD sigue los mismos formatos de objeto utilizados por el punto de conexión /users/track de Braze para el tipo de datos seleccionado.

Para atributos anidados, incluye las fechas utilizando el formato en Capturar fechas como propiedades de objeto.

Ejemplos de carga útil

Puedes incluir atributos personalizados anidados en la columna de carga útil para una sincronización de atributos personalizados.

1
2
3
4
5
6
7
8
9
10
11
12
{
      "most_played_song": {
        "song_name": "Solea",
        "artist_name": "Miles Davis",
        "album_name": "Sketches of Spain",
        "genre": "Jazz",
        "play_analytics": {
            "count": 1000,
            "top_10_listeners": true
        }
      }
}

Para sincronizar eventos, se requiere un nombre de evento. Formatea el campo time como una cadena ISO 8601 o en formato yyyy-MM-dd'T'HH:mm:ss:SSSZ. Si el campo time no está presente, Braze utiliza el valor de la columna UPDATED_AT como la hora del evento. Otros campos, incluidos app_id y properties, son opcionales.

Puedes sincronizar un evento por fila.

1
2
3
4
5
6
7
8
9
{
    "app_id" : "your-app-id",
    "name" : "rented_movie",
    "time" : "2013-07-16T19:20:45+01:00",
    "properties": {
        "movie": "The Sad Egg",
        "director": "Dan Alexander"
    }
}

Para sincronizar eventos de compra, se requieren product_id, currency y price. Formatea el campo opcional time como una cadena ISO 8601 o en formato yyyy-MM-dd'T'HH:mm:ss:SSSZ. Si el campo time no está presente, Braze utiliza el valor de la columna UPDATED_AT como la hora del evento. Otros campos, incluidos app_id, quantity y properties, son opcionales.

Puedes sincronizar un evento de compra por fila.

1
2
3
4
5
6
7
8
9
10
11
12
{
    "app_id" : "11ae5b4b-2445-4440-a04f-bf537764c9ad",
    "product_id" : "Completed Order",
    "currency" : "USD",
    "price" : 219.98,
    "time" : "2013-07-16T19:20:30+01:00",
    "properties" : {
        "products" : [ { "name": "Monitor", "category": "Gaming", "product_amount": 19.99 },
        { "name": "Gaming Keyboard", "category": "Gaming ", "product_amount": 199.99 }
        ]
    }
}

Para sincronizar estados de grupos de suscripción, incluye uno o más pares de subscription_group_id y subscription_state en cada fila.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
{
    "subscription_groups" : [
        {
            "subscription_group_id": "subscription_group_identifier_1",
            "subscription_state": "unsubscribed"
        },
        {
            "subscription_group_id": "subscription_group_identifier_2",
            "subscription_state": "subscribed"
        },
        {
            "subscription_group_id": "subscription_group_identifier_3",
            "subscription_state": "subscribed"
        }
      ]
}
New Stuff!