Objet webhook
L’objet
webhookvous permet de modifier ou de créer des messages webhook via nos endpoints de messagerie.
{
"url": (required, string),
"request_method": (required, string) one of "POST", "PUT", "DELETE", or "GET",
"request_headers": (optional, Hash) key-value pairs to use as request headers,
"body": (optional, string or JSON object) payload Braze sends in the webhook request. Pass a JSON object, or a string that contains your payload. If you pass a string that includes JSON, escape quotes and backslashes so the outer messaging request remains valid JSON,
"message_variation_id": (optional, string) used when providing a campaign_id to specify which message variation this message should be tracked under
}
L’une des bonnes pratiques recommandées par Braze est de fournir une valeur explicite pour Content-Type dans le champ request_headers afin de garantir un comportement cohérent et prévisible, car les expéditeurs et les serveurs peuvent changer au fil du temps. Si vous ne spécifiez pas de valeur pour l’en-tête Content-Type, le système déduit une valeur à partir du corps de la requête.
Exemple d’objet webhook avec un corps JSON
Le champ body contient le payload du webhook sortant. Lorsque ce payload est au format JSON, vous pouvez le transmettre sous forme d’objet JSON ou sous forme de chaîne de caractères contenant le même JSON.
Les deux objets webhook suivants envoient le même payload à https://example.com/hooks/braze :
Objet JSON dans body
Braze accepte un objet JSON pour body et le sérialise avant d’envoyer le webhook.
{
"url": "https://example.com/hooks/braze",
"request_method": "POST",
"request_headers": {
"Content-Type": "application/json"
},
"body": {
"user_id": "12345",
"event": "purchase",
"properties": {
"product": "sneakers",
"price": 99.99
}
}
}
Chaîne JSON dans body
Si vous fournissez body sous forme de chaîne de caractères, construisez d’abord le JSON interne, puis échappez les guillemets doubles et les barres obliques inversées afin que la requête de communication externe reste un JSON valide :
{
"user_id": "12345",
"event": "purchase",
"properties": {
"product": "sneakers",
"price": 99.99
}
}
Cet objet devient la valeur de chaîne échappée suivante pour body :
{
"url": "https://example.com/hooks/braze",
"request_method": "POST",
"request_headers": {
"Content-Type": "application/json"
},
"body": "{\"user_id\":\"12345\",\"event\":\"purchase\",\"properties\":{\"product\":\"sneakers\",\"price\":99.99}}"
}

Les tableaux et autres valeurs qui ne sont ni des objets ni des chaînes de caractères ne sont pas valides pour body. Transmettez un objet ou une chaîne de caractères.