Controls retry behaviour for transient failures (rate limiting and 5xx
server errors). Retries use exponential backoff with jitter, and honour
the Retry-After header when Mercury returns one on a 429.
Pass a custom policy via Mercury.Client.new/2's :retry option:
Mercury.Client.new(api_key, retry: %Mercury.Retry{max_retries: 5})Set max_retries: 0 to disable retries entirely.
Summary
Types
@type t() :: %Mercury.Retry{ initial_delay: non_neg_integer(), jitter_factor: float(), max_delay: non_neg_integer(), max_retries: non_neg_integer() }
Functions
@spec default() :: t()
The default retry policy: 3 retries, 500ms base delay, 30s cap, ±25% jitter.