Criar envios de mensagens programadas
Use esse ponto de extremidade para programar o envio de uma campanha, Canva ou outra mensagem em um horário designado e forneça um identificador para fazer referência a essa mensagem para atualizações.
Se estiver direcionando um segmento de mensagem, um registro da sua solicitação será armazenado no console de desenvolvedor depois que todas as mensagens programadas tiverem sido enviadas.
Pré-requisitos
Para usar esse endpoint, você precisará de uma chave de API com a permissão messages.schedule.create
.
Limite de taxa
We apply the default Braze rate limit of 250,000 requests per hour to this endpoint, as documented in API rate limits.
Braze endpoints support batching API requests. A single request to the messaging endpoints can reach any of the following:
- Up to 50 specific
external_ids
, each with individual message parameters - A segment of any size created in the Braze dashboard, specified by its
segment_id
- An audience segment of any size, defined in the request as a connected audience object
Corpo da solicitação
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
29
30
{
// You will need to include at least one of 'segment_id', 'external_user_ids', and 'audience'
// Including 'segment_id' will send to members of that segment
// Including 'external_user_ids' and/or 'user_aliases' will send to those users
// Including both a Segment and users will send to the provided users if they are in the segment
"broadcast": (optional, boolean) see broadcast -- defaults to false on 8/31/17, must be set to true if users are not specified,
"external_user_ids": (optional, array of strings) see external user identifier,
"user_aliases": (optional, array of user alias object) see user alias,
"audience": (optional, connected audience object) see connected audience,
"segment_id": (optional, string) see segment identifier,
"campaign_id": (optional, string) see campaign identifier,
"send_id": (optional, string) see send identifier,
"override_messaging_limits": (optional, bool) ignore frequency capping rules, defaults to false,
"recipient_subscription_state": (optional, string) use this to send messages to only users who have opted in ('opted_in'), only users who have subscribed or are opted in ('subscribed') or to all users, including unsubscribed users ('all'), the latter being useful for transactional email messaging. Defaults to 'subscribed',
"schedule": {
"time": (required, datetime as ISO 8601 string) time to send the message in UTC,
"in_local_time": (optional, bool),
"at_optimal_time": (optional, bool),
},
"messages": {
"apple_push": (optional, apple push object),
"android_push": (optional, android push object),
"kindle_push": (optional, kindle/fireOS push object),
"web_push": (optional, web push object),
"email": (optional, email object),
"webhook": (optional, webhook object),
"content_card": (optional, content card object),
"sms": (optional, SMS object)
}
}
Parâmetros de solicitação
Parâmetro | Obrigatória | Tipo de dados | Descrição |
---|---|---|---|
broadcast |
Opcional | Booleano | Você deve definir broadcast como true ao enviar uma mensagem para um segmento inteiro que uma campanha ou Canva direciona. O padrão desse parâmetro é false (a partir de 31 de agosto de 2017). Se broadcast estiver definido como true, uma lista recipients não poderá ser incluída. No entanto, tenha cuidado ao definir broadcast: true , pois a definição não intencional desse sinalizador pode fazer com que sua mensagem seja enviada a um público maior do que o esperado. |
external_user_ids |
Opcional | Matriz de strings | Consulte identificador de usuário externo. |
user_aliases |
Opcional | Vetor de objetos de alias de usuário | Consulte o objeto de alias de usuário. |
audience |
Opcional | Objeto do público conectado | Veja o público conectado. |
segment_id |
Opcional | String | Consulte identificador de segmento. |
campaign_id |
Opcional | String | Consulte identificador de campanha. |
recipients |
Opcional | Vetor de objetos de destinatários | Consulte objeto de destinatários. |
send_id |
Opcional | String | Consulte enviar identificador. |
override_messaging_limits |
Opcional | Booleano | Ignorar limites globais de frequência para campanhas; o padrão é false |
recipient_subscription_state |
Opcional | String | Use essa opção para enviar mensagens apenas para usuários que tenham aceitado receber mensagens (opted_in ), apenas para usuários que tenham feito a inscrição ou aceitado receber mensagens (subscribed ) ou para todos os usuários, inclusive os que cancelaram a inscrição (all ). O uso de usuários do all é útil para envio de mensagens por e-mail de transação. O padrão é subscribed . |
schedule |
Obrigatória | Objeto de programação | Ver objeto de programação |
messages |
Opcional | Objeto de envio de mensagens | Consulte os objetos de envio de mensagens disponíveis. |
Exemplo de solicitaçã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
71
72
73
74
75
curl --location --request POST 'https://rest.iad-01.braze.com/messages/schedule/create' \
--data-raw '{
"broadcast": "false",
"external_user_ids": "external_user_identifiers",
"user_aliases": {
"alias_name" : "example_name",
"alias_label" : "example_label"
},
"segment_id": "segment_identifiers",
"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"
}
}
]
},
"campaign_id": "campaign_identifier",
"send_id": "send_identifier",
"override_messaging_limits": false,
"recipient_subscription_state": "subscribed",
"schedule": {
"time": "",
"in_local_time": true,
"at_optimal_time": true
},
"messages": {
"apple_push": (optional, Apple Push Object),
"android_push": (optional, Android Push Object),
"kindle_push": (optional, Kindle/FireOS Push Object),
"web_push": (optional, Web Push Object),
"email": (optional, Email object)
"webhook": (optional, Webhook object)
"content_card": (optional, Content Card Object)
}
}'
Resposta
Exemplo de resposta bem-sucedida
1
2
3
4
5
{
"dispatch_id": (string) the dispatch identifier,
"schedule_id": (string) the schedule identifier,
"message": "success"
}
New Stuff!