Documentation-based proposal; not a hands-on test
Classify before retrying
A retry is useful when the next attempt could reasonably succeed without changing the request: a brief network interruption, rate limit, or temporary server failure. It is wasteful when the input is invalid, a required account is missing, or permission has been denied. AWS Well-Architected guidance says retries should be limited, use backoff and jitter, and run only where the operation is idempotent. Its Builders' Library also warns that a timeout can leave the caller unsure whether the side effect happened.
| Class | Examples | Default route |
|---|---|---|
| Transient | Timeout, temporary service error, throttling | Bounded retry with delay |
| Permanent input | Missing required field, invalid format | Exception queue for correction |
| Authorization | Expired credential, permission denied | Pause affected path and alert owner |
| Ambiguous side effect | Timeout after create or send | Reconcile by idempotency key before retry |
Build the classification from the destination's documented error responses. Do not infer that every 4xx or 5xx code has the same meaning across services. If the connector hides the response, preserve whatever error text and run identifier it provides.
Put a ceiling on automatic effort
Use a maximum attempt count or maximum elapsed time. Increase delays between attempts and add jitter so many failed jobs do not return at the same instant. The exact schedule depends on the service and urgency; the durable rule is that attempts end. Keep one retry layer in charge. If the platform, connector, and custom step all retry independently, a small limit can multiply into a large burst.
Before retrying a write, verify the destination supports idempotency or add your own duplicate protection. See the duplicate-prevention guide. A successful request followed by a lost response is not safe to repeat merely because it looked like a failure.
Design the exception queue as a work surface
An exception queue is not a log dump. Each item needs the source record, intended action, error class, attempt count, first and last failure times, safe replay control, and an owner. Include a plain-language next step. Group repeated failures by likely root cause so one expired credential does not create hundreds of separate mysteries.
A hypothetical intake workflow might retry a temporary destination timeout three times over fifteen minutes. An invalid postal code goes directly to “needs source correction.” An expired credential pauses all records for that connection and raises one owner alert while preserving affected source IDs. These are illustrative rules; the service's documentation and the cost of delay should set the real policy.
Close the loop deliberately
- Correct the source, permission, or workflow before replay.
- Check whether the destination side effect already exists.
- Replay one item and inspect its destination result.
- Release the remaining group in a controlled batch.
- Record the resolution and update classification if the error recurs.
Monitor queue age as well as count. A queue of two high-impact items can matter more than fifty low-priority formatting errors. Give old items an escalation path and a final disposition such as corrected, safely skipped, or requires workflow change. Link the runbook to the stop-switch note; if exception volume rises sharply, pausing may be safer than continuing to produce cleanup work.
Before you hand it over
Use this as a working check, not certification. Checks stay in this page only and reset on reload.
0 of 5 checked
Sources & verification
Product details are based on the linked documentation. The proposed workflow and worked examples are editorial guidance, not measured test results.
- REL05-BP03 Control and limit retry callsSource date: not stated · Retrieved: 2026-09-19T19:39:00Z
Bounded retries, exponential backoff, jitter, idempotency checks, and avoiding retry amplification during overload.
- Making retries safe with idempotent APIsSource date: not stated · Retrieved: 2026-09-19T19:39:00Z
Retries can resolve transient faults but ambiguous responses and side effects require idempotent design and reconciliation.
Continue the workflow
- Prevent duplicate records before an automation goes live
Stop retries, webhook repeats, and double clicks from creating duplicate business records or actions.
- Design approval gates that reviewers can actually use
Add human review to a consequential workflow without creating blind approvals or permanently stuck runs.
- Release an automation change like a small software change
Change a live automation without discovering mapping or logic errors across the entire workload at once.
- Design the stop switch before the automation
A workflow that can fail quietly needs a recovery plan on the same page as the trigger.