Programar Canvas desencadenados por la API
Utiliza este punto de conexión para programar mensajes de Canvas a través de la entrega desencadenada por la API, lo que te permite decidir qué acción debe desencadenar el envío del mensaje.
Puedes pasar context que se aplicará como plantilla en los mensajes enviados por los primeros pasos del Canvas.

Las propiedades de entrada de Canvas forman parte de las variables de contexto de Canvas. Esto significa que canvas_entry_properties se referencia como context. Cada variable context incluye un nombre, un tipo de datos y un valor que puede incluir Liquid. Actualmente, canvas_entry_properties es compatible con versiones anteriores. Para más detalles, consulta Contexto y Objeto de contexto de Canvas.
Ten en cuenta que para enviar mensajes con este punto de conexión, debes tener un ID de Canvas, creado cuando construyes un Canvas.
Requisitos previos
Para utilizar este punto de conexión, necesitarás una clave de API con el permiso canvas.trigger.schedule.create.
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 de conexión. De lo contrario, si se especifica un external_id, este punto de conexión tiene un límite de velocidad predeterminado de 250 000 solicitudes por hora compartido entre los puntos finales documentados 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 alcanzar 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
{
"canvas_id": (required, string) see Canvas identifier,
// Including 'recipients' will send only to the provided user ids if they are in the campaign's segment
"recipients": (optional, array of recipients object),
// for any keys that conflict between these trigger properties and those in a Recipients Object, the value from the
// Recipients Object will be used
"audience": (optional, connected audience object) see connected audience,
// Including 'audience' will only send to users in the audience
// If 'recipients' and 'audience' are not provided and broadcast is not set to 'false',
// the message will send to entire segment targeted by the Canvas
"broadcast": (optional, boolean) see broadcast -- defaults to false on 8/31/17, must be set to true if "recipients" object is omitted,
"context": (optional, object) personalization key-value pairs for the first step for all users in this send; see trigger properties,
"schedule": {
"time": (required, datetime as ISO 8601 string) time to send the message,
"in_local_time": (optional, bool),
"at_optimal_time": (optional, bool),
}
}
Parámetros de la solicitud
| Parámetro | Obligatorio | Tipo de datos | Descripción |
|---|---|---|---|
canvas_id |
Obligatorio | Cadena | Ver identificador de Canvas. |
recipients |
Opcional | Matriz de objetos destinatarios | Ver objeto de destinatarios. |
audience |
Opcional | Objeto de audiencia conectada | Ver audiencia conectada. |
broadcast |
Opcional | Booleano | Debes establecer broadcast en true cuando envíes un mensaje a un segmento completo al que se dirige una campaña o Canvas. Este parámetro está predeterminado como false (a partir del 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. |
context |
Opcional | Objeto | Pares clave-valor de personalización para todos los usuarios de este envío. Ver objeto de contexto de Canvas. |
schedule |
Obligatorio | Objeto de planificación | Ver objeto de planificación. |
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
curl --location --request POST 'https://rest.iad-01.braze.com/canvas/trigger/schedule/create' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer YOUR-REST-API-KEY' \
--data-raw '{
"canvas_id": "canvas_identifier",
"recipients": [
{
"user_alias": "example_alias",
"external_user_id": "external_user_identifier",
"context": {}
}
],
"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"
}
}
]
},
"broadcast": false,
"context": {},
"schedule": {
"time": "",
"in_local_time": false,
"at_optimal_time": false
}
}'
Respuesta
Ejemplo de respuesta correcta
1
2
3
4
5
6
7
8
Content-Type: application/json
Authorization: Bearer YOUR-API-KEY-HERE
{
{
"dispatch_id": "dispatch_identifier",
"schedule_id": "schedule_identifier",
"message": "success"
}