Skip to content

Envoyer des messages immédiatement via l’API uniquement

post

/messages/send

Utilisez cet endpoint pour envoyer des messages immédiats aux utilisateurs désignés à l’aide de l’API de Braze.

Si vous ciblez un segment, un enregistrement de votre requête sera stocké dans la console de développement.

Création de nouveaux utilisateurs via l’API

Si vous devez créer un utilisateur dans le cadre d’un envoi via l’API, deux options s’offrent à vous :

Option 1 : Utiliser /users/track puis envoyer

Commencez par créer l’utilisateur à l’aide de l’endpoint /users/track, puis attendez que les données se propagent (quelques minutes sont généralement recommandées) avant de lancer l’envoi via l’API uniquement. Notez que Braze ne garantit pas les délais de traitement des données sur /users/track, de sorte que des conditions de concurrence peuvent survenir si vous ne laissez pas suffisamment de temps entre ces appels.

Option 2 : Utiliser une campagne déclenchée par API ou un Canvas

Utilisez une campagne déclenchée par API ou un workflow Canvas. Ces options vous permettent de créer un destinataire s’il n’existe pas déjà. Cette approche simplifie vos processus backend, mais nécessite la configuration d’une campagne ou d’un Canvas dans le tableau de bord de Braze.

Conditions préalables

Pour utiliser cet endpoint, vous devrez générer une clé API avec l’autorisation messages.send.

Limite de débit

Lorsque vous utilisez des filtres d’audience connectée dans votre requête, nous appliquons une limite de débit de 250 requêtes par minute à cet endpoint. Sinon, si vous spécifiez un external_id, cet endpoint présente une limite de débit par défaut de 250 000 requêtes par heure, partagée entre /messages/send, /campaigns/trigger/send et /canvas/trigger/send, comme documenté dans Limites de débit de l’API.

Les endpoints Braze prennent en charge le traitement par lots des requêtes API. Une seule requête aux endpoints d’envoi de messages peut atteindre n’importe lequel des éléments suivants :

  • Jusqu’à 50 external_ids spécifiques, chacun avec des paramètres de message individuels
  • Un segment d’audience de toute taille, défini dans la requête comme un objet Connected Audience

Les endpoints Braze prennent en charge les requêtes d’API en lots. Une seule requête aux endpoints d’envoi de messages peut atteindre n’importe lequel des éléments suivants :

  • Jusqu’à 50 external_ids spécifiques
  • Un segment de toute taille créé dans le tableau de bord de Braze, spécifié par son segment_id
  • Un segment d’audience de toute taille, défini dans la requête en tant qu’objet audience connectée

Corps de la requête

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
{
   // 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 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 no external_user_ids or aliases are provided,
   "external_user_ids": (optional, array of strings) see external user identifier,
   "user_aliases": (optional, array of user alias object) see user alias,
   "segment_id": (optional, string) see segment identifier,
   "audience": (optional, connected audience object) see connected audience,
   "campaign_id": (optional*, string) *required if you wish to track campaign stats (for example, sends, clicks, bounces, etc). see campaign identifier,
   "send_id": (optional, string) see send identifier,
   "override_frequency_capping": (optional, bool) ignore frequency_capping for campaigns, 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',
   "messages": {
     "android_push": (optional, android push object),
     "apple_push": (optional, apple push object),
     "content_card": (optional, content card object),
     "email": (optional, email object),
     "kindle_push": (optional, kindle/fireOS push object),
     "web_push": (optional, web push object),
     "webhook": (optional, webhook object),
     "whats_app": (optional, WhatsApp object),
     "sms": (optional, SMS object)
   }
 }

Paramètres de requête

Exemple de requête

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
curl --location --request POST 'https://rest.iad-01.braze.com/messages/send' \
--data-raw '{
  "broadcast": "false",
  "external_user_ids": "external_user_identifiers",
  "user_aliases": {
    "alias_name": "example_name",
    "alias_label": "example_label"
  },
  "segment_id": "segment_identifier",
  "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_frequency_capping": "false",
  "recipient_subscription_state": "all",
  "messages": {
    "android_push": "(optional, Android Push Object)",
    "apple_push": "(optional, Apple Push Object)",
    "content_card": "(optional, Content Card Object)",
    "email": "(optional, Email Object)",
    "kindle_push": "(optional, Kindle/FireOS Push Object)",
    "web_push": "(optional, Web Push Object)"
  }
}'

Détails de la réponse

Les réponses des endpoints d’envoi de messages incluent le dispatch_id du message, qui permet de référencer la transmission du message. Le dispatch_id est l’identifiant de la transmission du message, c’est-à-dire un ID unique pour chaque « transmission » envoyée depuis Braze. Pour plus d’informations, consultez Comportement du Dispatch ID.

New Stuff!