> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cope.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Webhook deliveries and replay

> Inspect webhook delivery attempts, replay failed deliveries, and send test events.

# Webhook deliveries and replay

COPE delivers webhooks at least once. Your integration should treat every delivery as retryable and idempotent.

## Replay behavior

* Deduplicate by the CloudEvents `source` + `id` tuple before applying side effects.
* Keep COPE `idempotency_key` when present so producer-level retries collapse to one business action.
* Replay commands should be sent with an idempotency key when a replay API route is available.
* Bulk replay is represented as a replay job rather than a synchronous loop.
* Bulk replay returns `no_matching_deliveries` when the selected window has no failed deliveries to replay.

## Test events

Use test events to verify endpoint reachability, signature verification, and idempotent processing before subscribing to production event traffic. Test event payloads follow the same CloudEvents envelope as production deliveries.
