What’s logged
Every delivery attempt captures:- HTTP status code returned by your endpoint
- Response time in milliseconds
- Error message (for failed deliveries)
- Delivery timestamp and total duration
Log retention
The audit log API is subject to the standard rate limit of 100 requests/minute per account.
Get audit logs
GET /api/audit-logs
Retrieves webhook delivery logs for your account.
Filtering
Narrow results using query parameters:subscriptionId- return logs for a specific subscription onlystatus- filter by delivery outcome:- Successful deliveries
- Failed deliveries (retries pending or exhausted)
- Permanent failures (all retries exhausted, subscription disabled)
limit- maximum results per page (1–100, default 50)offset- number of results to skip, for paging through large result sets
Get audit log stats
GET /api/audit-logs/stats
Returns aggregated delivery statistics for your account, giving you a high-level view of overall webhook health without needing to page through individual log entries.
Interpreting delivery status
What to do when deliveries fail
1
Check your endpoint
Use the
subscriptionId filter on GET /api/audit-logs to pull logs for the affected subscription. Look at the HTTP status codes and error messages to identify whether the issue is a timeout, an application error, or a network problem.2
Fix the underlying issue
Resolve the problem on your endpoint - for example, fix the handler returning a non-
2xx status, increase the response timeout, or correct a signature verification bug.3
Reactivate the subscription
If the subscription was automatically disabled after exhausting retries, reactivate it by calling
PATCH /api/subscriptions/{id} with isActive: true. This clears the blockReason, resets the retry counter, and allows deliveries to resume.4
Send a test delivery
Call
POST /api/subscriptions/{id}/test to verify that your fixed endpoint handles the delivery correctly before waiting for the next real signal.