Skip to main content
GET
https://api.enviaai.app
/
v1
/
webhooks
/
{webhookId}
/
logs
Logs do Webhook
curl --request GET \
  --url https://api.enviaai.app/v1/webhooks/{webhookId}/logs \
  --header 'Authorization: Bearer <token>'
{
  "success": true,
  "data": [
    {
      "id": "log_001",
      "event": "message.received",
      "status": "success",
      "statusCode": 200,
      "responseTime": 145,
      "timestamp": "2026-02-03T12:00:00.000Z"
    },
    {
      "id": "log_002",
      "event": "message.sent",
      "status": "success",
      "statusCode": 200,
      "responseTime": 89,
      "timestamp": "2026-02-03T11:55:00.000Z"
    },
    {
      "id": "log_003",
      "event": "message.received",
      "status": "failed",
      "statusCode": 500,
      "responseTime": 2000,
      "error": "Internal Server Error",
      "timestamp": "2026-02-03T11:50:00.000Z",
      "retryCount": 3
    }
  ]
}

Path Parameters

webhookId
string
required
ID do webhook

Query Parameters

limit
number
default:"50"
Máximo de logs (1-100)
status
string
Filtrar: success, failed

Response

data[].id
string
ID do log
data[].event
string
Tipo do evento
data[].status
string
Status: success ou failed
data[].statusCode
number
Código HTTP da resposta
data[].responseTime
number
Tempo de resposta em ms
data[].timestamp
string
Data/hora da entrega

Exemplo

const logs = await client.webhooks.getLogs('wh_xyz789', {
  limit: 50
});

logs.data.forEach(log => {
  const icon = log.status === 'success' ? '✓' : '✗';
  console.log(`${icon} ${log.event} - ${log.statusCode} (${log.responseTime}ms)`);
});
{
  "success": true,
  "data": [
    {
      "id": "log_001",
      "event": "message.received",
      "status": "success",
      "statusCode": 200,
      "responseTime": 145,
      "timestamp": "2026-02-03T12:00:00.000Z"
    },
    {
      "id": "log_002",
      "event": "message.sent",
      "status": "success",
      "statusCode": 200,
      "responseTime": 89,
      "timestamp": "2026-02-03T11:55:00.000Z"
    },
    {
      "id": "log_003",
      "event": "message.received",
      "status": "failed",
      "statusCode": 500,
      "responseTime": 2000,
      "error": "Internal Server Error",
      "timestamp": "2026-02-03T11:50:00.000Z",
      "retryCount": 3
    }
  ]
}

Analisando Falhas

Logs com status: failed incluem informações adicionais:
{
  "status": "failed",
  "statusCode": 500,
  "error": "Internal Server Error",
  "retryCount": 3,
  "nextRetryAt": "2026-02-03T12:10:00.000Z"
}