Skip to main content
POST
/
api
/
webhook-endpoints
/
{id}
/
trigger
Disparar webhook manualmente
curl --request POST \
  --url https://garu.com.br/api/webhook-endpoints/{id}/trigger \
  --header 'Authorization: Bearer <token>'

Documentation Index

Fetch the complete documentation index at: https://docs.garu.com.br/llms.txt

Use this file to discover all available pages before exploring further.

Disponível a partir da v0.8.1. Permite disparar um payload de exemplo de qualquer evento Garu para um endpoint específico — útil para validar sua integração ponta-a-ponta antes de tráfego real.

Pré-condições

  • O endpoint precisa estar inscrito no evento que você quer disparar (configure em Dashboard → Configurações → Webhooks).
  • O event precisa pertencer à whitelist (qualquer evento que a Garu emita, exceto webhook.test — esse continua atendido pelo endpoint legado /test).

Body

{
  "event": "transaction.payment.failed",
  "payloadOverrides": {
    "failureCode": "card_expired"
  }
}
CampoTipoDescrição
eventstringTipo do evento (ex: transaction.payment.failed, scheduled_charge.cycle_failed)
payloadOverridesobject(opcional) Mesclado raso no data.object do payload de exemplo

Resposta

Retorna o OutgoingWebhookEvent já entregue, com status, número de tentativas e código HTTP da resposta do seu endpoint.
{
  "id": 12345,
  "endpointId": 7,
  "eventType": "transaction.payment.failed",
  "payload": {
    "id": "evt_test_1730000000_abc",
    "type": "transaction.payment.failed",
    "data": {
      "object": {
        "id": 999,
        "value": 49.9,
        "failureCode": "card_expired",
        "failureReason": "Cartão vencido",
        "gatewayFailureCode": "54"
      }
    },
    "metadata": { "test": true },
    "seller_id": 42
  },
  "status": "delivered",
  "attempts": 1
}
Todo payload disparado por essa rota carrega metadata.test: true para que seu receiver possa diferenciar evento real de teste.

Erros

StatusCaso
400event fora da whitelist
404Endpoint não existe ou não pertence ao seller chamando
404Endpoint não inscrito no evento informado

Exemplo: validar handler de cycle_failed

curl -X POST https://garu.com.br/api/webhook-endpoints/7/trigger \
  -H "Authorization: Bearer $GARU_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "event": "scheduled_charge.cycle_failed",
    "payloadOverrides": {
      "failureCode": "card_expired",
      "failureReason": "Cartão vencido"
    }
  }'