# X_WEBHOOK_DELIVERY_THROTTLED

## Means

the endpoint asked for the delivery later, and said when

## Typical cause

a receiver that answered a **retryable** status AND a delay — a 403 carrying a `Retry-After` is still `X_WEBHOOK_DELIVERY_REJECTED`, because the status is what says a retry can change something. Its own code because the answer is different work: classified `retry-after`, so `statedDelayMs` reads `meta.retryAfterSeconds` and the nack waits exactly that long — clamped by the policy's `maxDelay` — instead of spending a curve against a number it was already given

## Fix

no edit here — the next attempt waits the delay the receiver named; an endpoint that throttles constantly wants a higher `retry.maxDelay` or fewer events fanned out to it

[Outbound webhooks](/error-codes#outbound-webhooks)
