This section documents the available endpoints for managing, monitoring, and re-pushing webhooks. These tools are useful for diagnosing webhook delivery issues and manually retrying failed requests.

Re-push is especially useful when your webhook endpoint was temporarily unreachable or rejected the payload. This ensures no events are lost during transmission failures.

Workflow

  1. Start by using Get Webhook Delivery Logs to find failed requests.

  2. Retrieve the hooksRequestId from those logs returned when you query Get Webhook Delivery Logs endpoint.

  3. Use Re-push for single retries or Bulk Re-push for multiple retries.

  4. Use Get Customer Events to confirm webhook setup.

Get Webhook Delivery Logs

Fetch webhook delivery logs for a specific customer. These logs show attempts, response codes, payloads, and more.

curl https://api.nomba.com/v1/webhooks/event-logs
-H "Authorization: Bearer YOUR_SECRET_KEY"
-H "Content-Type: application/json"
-X POST
-d {
        "coreUserId": "01a10aeb-d989-460a-bbde-XXXXXXXXX",
        "limit": 3,
        "eventType": "payment_success",
        "startDateTime": "2025-03-03",
        "endDateTime": "2025-03-12"
   }

Re-push

Re-send a previously attempted webhook using the hooksRequestId.

curl https://api.nomba.com/v1/webhooks/re-push \
  -H "Authorization: Bearer YOUR_SECRET_KEY" \
  -H "Content-Type: application/json" \
  -X POST \
  -d '{
    "hooksRequestId": "02517904-fe58-47eb-83b8-677372f564bf"
  }'

Bulk Re-push

Retry multiple webhooks by passing an array of hooksRequestIds.

curl https://api.nomba.com/v1/webhooks/bulk-re-push \
  -H "Authorization: Bearer YOUR_SECRET_KEY" \
  -H "Content-Type: application/json" \
  -X POST \
  -d '{
    "hooksRequestIds": [
      "02517904-fe58-47eb-83b8-677372f564bf",
      "1cf4099d-8e3b-4d17-8354-b984df3a9e53"
    ]
  }'

Get Customer Webhook Events

Fetch the list of webhook event subscriptions registered for a specific customer.

curl https://api.nomba.com/v1/webhooks/events \
  -H "Authorization: Bearer YOUR_SECRET_KEY" \
  -H "Content-Type: application/json" \
  -X POST \
  -d '{
    "coreUserId": "01a10aeb-d989-460a-bbde-984XXXXXXXX",
    "limit": 20
  }'

To learn about the various webhook event types we have and how to set them up, please check webhook introduction here