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

# Webhook retries and replay

> How Get2Dial retries a failed webhook delivery on a fixed schedule, and how to manually replay a past one.

A webhook delivery that doesn't get a `2xx` response is retried automatically, on a fixed
schedule, before Get2Dial gives up.

## How it works

Get2Dial attempts a delivery up to 6 times total (1 initial attempt plus 5 retries), waiting
1 minute, 5 minutes, 30 minutes, 2 hours, then 12 hours between attempts. Each attempt times
out after 10 seconds if your endpoint doesn't respond. See [Limits and
quotas](/reference/limits-and-quotas) for these numbers.

After the 6th failed attempt, the delivery is marked **Exhausted** and Get2Dial stops trying
it — it doesn't retry forever.

## When to use it

Design your endpoint to be safe to receive the same event more than once — a delivery can
retry after your endpoint successfully processed it but the response was lost in transit
(a timeout on a slow network, for example). Key your own processing off the event's own ID,
not "did I get a request," to stay correct under retries.

## What it affects

Every delivery attempt — success or failure, with its response code and error — is visible in
the delivery log at **Settings > Integrations > Webhooks**. From there you can manually
**Replay** any delivery, including an exhausted one, once you've fixed whatever was wrong with
your endpoint.

## Next steps

<CardGroup cols={2}>
  <Card title="Webhook delivery failures" href="/troubleshooting/webhook-delivery-failures" />

  <Card title="Verify webhook signatures" href="/developers/webhooks/verify-signatures" />
</CardGroup>
