Skip to content
ROAD RUNNER

WEBHOOKS

Test a webhook endpoint

POST roadrunnerzw.com/api/v1/webhooks/{id}/test

Sends a synthetic delivery.delivered event to the endpoint, signed exactly like a real one, and reports the status code, latency and the first 256 bytes of the response.

Use this to prove your handler and your signature verification work before real deliveries depend on them.

REQUEST
curl -X POST https://roadrunnerzw.com/api/v1/webhooks/{id}/test \
  -H 'Authorization: Bearer rr_live_your_key_id' \
  -H 'X-RR-Timestamp: $(date +%s)' \
  -H 'X-RR-Signature: $SIGNATURE'
RESPONSE 200
{
    "delivered": true,
    "status_code": 200,
    "duration_ms": 184,
    "body_preview": "ok",
    "body_truncated": false
}

Path

  • id string REQUIRED

Responses

200 OK

The result of calling your endpoint. delivered is true only for a 2xx.

401 Unauthenticated

The signature, key or timestamp did not check out. Also returned for a revoked key, and for a timestamp more than 300 seconds from ours.

403 Forbidden

The key is valid but was not issued the scope this endpoint requires. Scopes are fixed at issue, so this needs a new key rather than a retry.

404 Not found

No such delivery for this client. Deliveries are scoped to the key that created them, so another client's id reads as missing rather than forbidden.

429 Too many requests

Too many requests for this client. Back off and retry; the response carries Retry-After and X-RateLimit-* headers.