Ir para o conteúdo

Objeto de webhook

O objeto webhook permite que você modifique ou crie mensagens de webhook por meio dos nossos endpoints de envio de mensagens.

{
  "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
}

Como prática recomendada, a Braze recomenda fornecer um valor explícito para Content-Type no campo request_headers para um comportamento consistente e previsível, já que os remetentes e servidores podem mudar com o tempo. Se você não especificar um valor para o cabeçalho Content-Type, o sistema inferirá um valor a partir do corpo da solicitação.

Exemplo de objeto webhook com corpo JSON

O campo body contém a carga útil do webhook de saída. Quando essa carga útil é JSON, você pode passá-la como um objeto JSON ou como uma string que contém o mesmo JSON.

Os dois objetos webhook a seguir enviam a mesma carga útil para https://example.com/hooks/braze:

Objeto JSON em body

A Braze aceita um objeto JSON para body e o serializa antes de enviar o 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
    }
  }
}

String JSON em body

Se você fornecer body como uma string, monte o JSON interno primeiro e, em seguida, escape as aspas duplas e as barras invertidas para que a solicitação de envio de mensagens externa continue sendo um JSON válido:

{
  "user_id": "12345",
  "event": "purchase",
  "properties": {
    "product": "sneakers",
    "price": 99.99
  }
}

Esse objeto se torna o seguinte valor da string com escape para 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}}"
}
New Stuff!