Analytics
Query delivery metrics, success rates, latency distributions, and per-endpoint health. All analytics endpoints return data for a configurable time window.
GET
/v1/analytics/delivery-volumeReturns hourly delivery counts broken down by outcome.
Query parameters
ParameterType
hoursinteger
Lookback window in hours (default 24).
200 ResponseJSON
[
{
"hour": "2024-01-01T00:00:00Z",
"total": 100,
"delivered": 90,
"failed": 10
},
{
"hour": "2024-01-01T01:00:00Z",
"total": 85,
"delivered": 82,
"failed": 3
}
]GET
/v1/analytics/success-rateReturns hourly success rate as a percentage.
Query parameters
ParameterType
hoursinteger
Lookback window in hours (default 24).
200 ResponseJSON
[
{
"hour": "2024-01-01T00:00:00Z",
"rate": 90.0,
"total": 100
},
{
"hour": "2024-01-01T01:00:00Z",
"rate": 96.5,
"total": 85
}
]GET
/v1/analytics/latency-distributionReturns the distribution of attempt latencies over the last 24 hours, bucketed by response time.
200 ResponseJSON
[
{ "bucket": "<100ms", "count": 50 },
{ "bucket": "100-300ms", "count": 30 },
{ "bucket": "300-1000ms", "count": 15 },
{ "bucket": "1-5s", "count": 4 },
{ "bucket": ">5s", "count": 1 }
]GET
/v1/analytics/endpoint-healthReturns per-endpoint delivery statistics including success rates and average latency.
200 ResponseJSON
[
{
"endpoint_id": "ep_550e8400-e29b-41d4-a716-446655440000",
"name": "my-webhook",
"status": "ACTIVE",
"total": 100,
"delivered": 90,
"success_rate": 90.0,
"avg_latency_ms": 150
},
{
"endpoint_id": "ep_f47ac10b-58cc-4372-a567-0e02b2c3d479",
"name": "payment-processor",
"status": "ACTIVE",
"total": 250,
"delivered": 248,
"success_rate": 99.2,
"avg_latency_ms": 89
}
]