Skip to main content
GET
/
v1
/
webhooks
/
events
/
{eventId}
/
logs
Get Event Delivery Logs
curl --request GET \
  --url https://api.example.com/v1/webhooks/events/{eventId}/logs \
  --header 'Authorization: <authorization>'
{
  "event": {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "eventId": "660e8400-e29b-41d4-a716-446655440001",
    "tenant": "partner-name",
    "eventType": "kyc.status.changed",
    "payload": {
      "userId": "user-123",
      "status": "approved"
    },
    "userId": "user-123",
    "sourceService": "kyc-service",
    "status": "completed",
    "createdAt": "2025-12-29T10:00:00.000Z",
    "processedAt": "2025-12-29T10:00:05.000Z",
    "queuedAt": "2025-12-29T10:00:01.000Z"
  },
  "logs": [
    {
      "id": "aaa00000-e29b-41d4-a716-446655440000",
      "eventId": "660e8400-e29b-41d4-a716-446655440001",
      "webhookId": "770e8400-e29b-41d4-a716-446655440002",
      "attemptNumber": 1,
      "requestUrl": "https://api.partner.com/webhooks/kyc",
      "requestHeaders": {
        "Content-Type": "application/json",
        "X-Timestamp": "1704067205",
        "X-Signature": "abc123def456..."
      },
      "requestBody": {
        "eventType": "kyc.status.changed",
        "userId": "user-123",
        "status": "approved"
      },
      "responseStatus": 200,
      "responseBody": "{\"received\": true}",
      "errorMessage": null,
      "deliveryStatus": "success",
      "durationMs": 145,
      "createdAt": "2025-12-29T10:00:05.000Z",
      "nextRetryAt": null
    }
  ]
}

Get Event Delivery Logs

GET https://api.baanx.com/v1/webhooks/events/{eventId}/logs Retrieves delivery logs for a specific event across all webhook endpoints.

Overview

Returns the event details alongside all webhook delivery attempts for that event. Use this to debug why an event wasn’t delivered, check which webhooks received it, and verify delivery timing and responses.

Authentication

This endpoint requires authentication via Bearer token:
Authorization: Bearer YOUR_ACCESS_TOKEN

Request

Headers

Authorization
string
required
Bearer token for authentication

Path Parameters

eventId
string (UUID)
required
Unique identifier of the event

Request Example

curl -X GET https://api.baanx.com/v1/webhooks/events/550e8400-e29b-41d4-a716-446655440000/logs \
  -H "Authorization: Bearer YOUR_ACCESS_TOKEN"

Response

200 Success

event
object
The event that triggered deliveries. See List Events for field descriptions.
logs
array
Array of delivery log entries, one per delivery attempt per webhook endpoint
logs[].id
string (UUID)
Unique identifier for this log entry
logs[].eventId
string (UUID)
ID of this event
logs[].webhookId
string (UUID)
ID of the webhook endpoint this delivery was attempted to
logs[].attemptNumber
integer
Delivery attempt number (1–6)
logs[].requestUrl
string
The URL the webhook was delivered to
logs[].requestHeaders
object
HTTP headers sent with the delivery, including X-Timestamp and X-Signature
logs[].requestBody
object
The webhook payload that was sent
logs[].responseStatus
integer | null
HTTP status code returned by your endpoint (null if the request failed to connect)
logs[].responseBody
string | null
Response body returned by your endpoint
logs[].errorMessage
string | null
Error message if delivery failed
logs[].deliveryStatus
string
Delivery status: pending, processing, success, or failed
logs[].durationMs
integer | null
Response time in milliseconds
logs[].createdAt
string (ISO 8601)
Timestamp of this delivery attempt
logs[].nextRetryAt
string (ISO 8601) | null
Scheduled time for next retry attempt, if applicable
{
  "event": {
    "id": "550e8400-e29b-41d4-a716-446655440000",
    "eventId": "660e8400-e29b-41d4-a716-446655440001",
    "tenant": "partner-name",
    "eventType": "kyc.status.changed",
    "payload": {
      "userId": "user-123",
      "status": "approved"
    },
    "userId": "user-123",
    "sourceService": "kyc-service",
    "status": "completed",
    "createdAt": "2025-12-29T10:00:00.000Z",
    "processedAt": "2025-12-29T10:00:05.000Z",
    "queuedAt": "2025-12-29T10:00:01.000Z"
  },
  "logs": [
    {
      "id": "aaa00000-e29b-41d4-a716-446655440000",
      "eventId": "660e8400-e29b-41d4-a716-446655440001",
      "webhookId": "770e8400-e29b-41d4-a716-446655440002",
      "attemptNumber": 1,
      "requestUrl": "https://api.partner.com/webhooks/kyc",
      "requestHeaders": {
        "Content-Type": "application/json",
        "X-Timestamp": "1704067205",
        "X-Signature": "abc123def456..."
      },
      "requestBody": {
        "eventType": "kyc.status.changed",
        "userId": "user-123",
        "status": "approved"
      },
      "responseStatus": 200,
      "responseBody": "{\"received\": true}",
      "errorMessage": null,
      "deliveryStatus": "success",
      "durationMs": 145,
      "createdAt": "2025-12-29T10:00:05.000Z",
      "nextRetryAt": null
    }
  ]
}

Error Responses

{
  "message": "Not authenticated"
}
  • GET /v1/webhooks/events/{eventId}/status - Lightweight status check for this event
  • POST /v1/webhooks/events/{eventId}/retry - Retry delivery for this event
  • GET /v1/webhooks/{id}/logs - View all delivery logs for a specific webhook endpoint