Envía mensajes de campaña utilizando la entrega desencadenada por API
/campaigns/trigger/send
Utiliza este punto final para enviar mensajes inmediatos y puntuales a usuarios designados utilizando la entrega desencadenada por la API.
La entrega desencadenada por API te permite alojar el contenido de los mensajes dentro del panel Braze, al tiempo que dictas cuándo se envía un mensaje y a quién mediante tu API.
Si te diriges a un segmento, se almacena un registro de tu solicitud en la consola para desarrolladores. Para enviar mensajes con este punto final, debes tener un ID de campaña creado al crear una campaña desencadenada por la API.
Requisitos previos
Para utilizar este punto final, deberás generar una clave de API con el permiso campaigns.trigger.send.
Límite de velocidad
Cuando utilizas filtros de audiencia conectada en tu solicitud, aplicamos un límite de velocidad de 250 solicitudes por minuto a este punto final. De lo contrario, si se especifica un external_id, este punto final tiene un límite de velocidad predeterminado de 250 000 solicitudes por hora compartido entre /messages/send, /campaigns/trigger/send y /canvas/trigger/send, como se documenta en Límites de velocidad de la API.
Los puntos finales de Braze admiten solicitudes de API por lotes. Una única solicitud a los puntos finales de mensajería puede llegar a cualquiera de los siguientes:
- Hasta 50
external_idsespecíficos, cada uno con parámetros de mensaje individuales - Un segmento de audiencia de cualquier tamaño, definido en la solicitud como un objeto de audiencia conectada
Los puntos finales de Braze admiten solicitudes de API por lotes. Una única solicitud a los puntos finales de mensajería puede llegar a cualquiera de los siguientes:
- Hasta 50
external_idsespecíficos, cada uno con parámetros de mensaje individuales - Un segmento de audiencia de cualquier tamaño, definido en la solicitud como un objeto de audiencia conectada
Cuerpo de la solicitud
1
2
Content-Type: application/json
Authorization: Bearer YOUR-REST-API-KEY
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
{
"campaign_id": (required, string) see campaign identifier,
"send_id": (optional, string) see send identifier,
"trigger_properties": (optional, object) personalization key-value pairs that apply to all users in this request,
"broadcast": (optional, boolean) see broadcast -- defaults to false on 8/31/17, must be set to true if "recipients" is omitted,
"audience": (optional, connected audience object) see connected audience,
// Including 'audience' sends to only users in the audience
"recipients": (optional, array; if not provided and broadcast is not set to `false`, message sends to the entire segment targeted by the campaign)
[
{
// Either "external_user_id" or "user_alias" or "email" is required. Requests must specify only one.
"user_alias": (optional, user alias object) user alias of user to receive message,
"external_user_id": (optional, string) external identifier of user to receive message,
"email": (optional, string) email address of user to receive message,
"prioritization": (optional, array) prioritization array; required when using email,
"trigger_properties": (optional, object) personalization key-value pairs that apply to this user (these key-value pairs override any keys that conflict with the parent trigger_properties),
"send_to_existing_only": (optional, boolean) defaults to true, can't be used with user aliases; if set to `false`, an attributes object must also be included,
"attributes": (optional, object) fields in the attributes object create or update an attribute of that name with the given value on the specified user profile before the message is sent and existing values are overwritten
}
],
"attachments": (optional, array) array of JSON objects that define the files you need attached, defined by "file_name" and "url",
[
{
"file_name": (required, string) the name of the file you want to attach to your email, excluding the extension (for example, ".pdf"). Attach files up to 2 MB. This is required if you use "attachments",
"url": (required, string) the corresponding URL of the file you want to attach to your email. The file name's extension is detected automatically from the URL defined, which should return the appropriate "Content-Type" as a response header. This is required if you use "attachments",
}
]
}
Parámetros de la solicitud
| Parámetro | Obligatoria | Tipo de datos | Descripción |
|---|---|---|---|
campaign_id |
Obligatoria | Cadena | Ver identificador de campaña. |
send_id |
Opcional | Cadena | Ver identificador de envío. |
trigger_properties |
Opcional | Objeto | Ver propiedades del desencadenante. Los pares clave-valor de personalización se aplican a todos los usuarios de esta solicitud. |
broadcast |
Opcional | Booleano | Debes establecerbroadcast en verdadero cuando envíes un mensaje a todo el segmento configurado como audiencia objetivo de la campaña en el panel de Braze. Este parámetro está predeterminado como falso (a 31 de agosto de 2017). Si broadcast tiene el valor true, no se puede incluir una lista recipients. Sin embargo, ten cuidado al configurar broadcast: true, ya que si lo haces involuntariamente puede que envíes tu mensaje a una audiencia mayor de la esperada. |
audience |
Opcional | Objeto de audiencia conectado | Ver audiencia conectada. Cuando incluyes audience, el mensaje solo se envía a los usuarios que coinciden con los filtros definidos, como los atributos personalizados y los estados de suscripción. |
recipients |
Opcional | Matriz | Ver objeto de destinatarios. Si send_to_existing_only es false, debe incluirse un objeto de atributo.Si no recipients se proporciona ybroadcastse establece en verdadero, el mensaje se envía a todo el segmento configurado como audiencia objetivo de la campaña en el panel de Braze. Si email es el identificador, debes incluirprioritization en el objeto destinatarios. |
attachments |
Opcional | Matriz | Si broadcast está configurado como verdadero, no se puede incluir la lista attachments. |
- La matriz de destinatarios puede contener hasta 50 objetos, cada uno de ellos con una única cadena
external_user_idy un objetotrigger_properties. - Cuando
send_to_existing_onlyestrue(el valor predeterminado), Braze envía el mensaje solo a los usuarios existentes. Si elexternal_user_idno coincide con ningún usuario existente, la API sigue devolviendo una respuesta201de éxito, pero el envío se cancela internamente con un resultado deUnknown External User IDy no se genera ningún evento Currents. Cuando se configura enfalsey se proporciona un objeto de atributos, Braze crea un nuevo usuario si no existe ninguno. Ten en cuenta que la configuraciónsend_to_existing_onlya nofalsees compatible con los alias de usuario; no se pueden crear nuevos usuarios solo con alias a través de este punto final. Para enviar a un usuario que solo tiene un alias de usuario, este debe existir ya en Braze.
El estado del grupo de suscripción de un usuario puede actualizarse mediante la inclusión de un parámetro subscription_groups dentro del objeto attributes. Para más detalles, consulta Objeto de atributos de usuario.
Elsegment_idparámetro no es compatible con este punto final. Para dirigirte a un segmento, configúralo en la configuración de audiencia objetivo de la campaña en el panel de Braze y utiliza "broadcast": true, o bien utiliza elaudienceparámetro con los filtros de audiencia de Connected Audience.
Ejemplo de solicitud
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
74
75
76
curl --location --request POST 'https://rest.iad-01.braze.com/campaigns/trigger/send' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR-REST-API-KEY' \
--data-raw '{
"campaign_id": "campaign_identifier",
"send_id": "send_identifier",
"trigger_properties": "",
"broadcast": false,
"audience": {
"AND": [
{
"custom_attribute": {
"custom_attribute_name": "eye_color",
"comparison": "equals",
"value": "blue"
}
},
{
"custom_attribute": {
"custom_attribute_name": "favorite_foods",
"comparison": "includes_value",
"value": "pizza"
}
},
{
"OR": [
{
"custom_attribute": {
"custom_attribute_name": "last_purchase_time",
"comparison": "less_than_x_days_ago",
"value": 2
}
},
{
"push_subscription_status": {
"comparison": "is",
"value": "opted_in"
}
}
]
},
{
"email_subscription_status": {
"comparison": "is_not",
"value": "subscribed"
}
},
{
"last_used_app": {
"comparison": "after",
"value": "2019-07-22T13:17:55+0000"
}
}
]
},
"recipients": [
{
"user_alias": {
"alias_name" : "example_name",
"alias_label" : "example_label"
},
"external_user_id": "external_user_identifier",
"trigger_properties": "",
"send_to_existing_only": true,
"attributes": {
"first_name" : "Alex"
}
}
],
"attachments": [
{
"file_name" : "YourFileName",
"url" : "https://exampleurl.com/YourFileName.pdf"
}
]
}'
Detalles de la respuesta
Las respuestas de los puntos finales de envío de mensajes incluyen el mensajedispatch_idpara poder hacer referencia al envío del mensaje. El dispatch_id es el ID del envío del mensaje, un ID único para cada transmisión enviada desde Braze. Al utilizar este punto final, recibes un único dispatch_id para todo un conjunto de usuarios por lotes. Para más información sobre dispatch_id, consulta nuestra documentación sobre el comportamiento de Dispatch ID.
Si tu solicitud encuentra un error fatal, consulta Errores y respuestas para ver el código de error y la descripción.
Objeto de atribución para campañas
Braze tiene un objeto de mensajería llamadoattributes que te permite añadir, crear o actualizar atributos y valores para un usuario antes de enviarle una campaña activada por API. Utiliza elcampaign/trigger/send punto final, ya que esta llamada a la API procesa el objeto de atributos de usuario antes de procesar y enviar la campaña. Esto ayuda a minimizar el riesgo de que se produzcan problemas causados por condiciones de carrera.
¿Buscas la versión Canvas de este punto final? Echa un vistazo a Enviar mensajes Canvas utilizando la entrega desencadenada por API.
Editar esta página en GitHub