Tool
Follow a quick decision tree for 3xx, 4xx, and 5xx issues with common checks and fixes.
Start with the status family and follow the checks. If the response is 2xx but behavior is wrong, check caching, data freshness, and client parsing.
3xx Redirects
Unexpected redirects, loops, or mixed cache behavior.
4xx Client Errors
Auth issues, invalid payloads, or missing routes.
5xx Server Errors
Unhandled exceptions, dependency failures, or timeouts.
Unexpected redirects, loops, or mixed cache behavior.
Checks
Fixes
Auth issues, invalid payloads, or missing routes.
Checks
Fixes
Unhandled exceptions, dependency failures, or timeouts.
Checks
Fixes
400
Bad RequestCause: Invalid JSON, missing fields, or bad query params.
Check: Compare request payload with schema; inspect validation logs.
Fix: Improve validation errors; update client payload or schema.
401
UnauthorizedCause: Missing or expired credentials.
Check: Validate auth header, token expiry, and issuer.
Fix: Refresh tokens, fix auth header formatting, rotate keys.
403
ForbiddenCause: Auth ok but insufficient permissions.
Check: Confirm roles/scopes on the token and policy rules.
Fix: Update policy mapping, roles, or scope list.
404
Not FoundCause: Missing route or resource.
Check: Check routing table, trailing slash behavior, or IDs.
Fix: Add route, provide alias, or sync data between services.
409
ConflictCause: Concurrent write or duplicate resource.
Check: Review uniqueness constraints and idempotency keys.
Fix: Add idempotency, retries, or conflict resolution.
422
Unprocessable EntityCause: Semantically invalid request data.
Check: Inspect validation rules and input normalization.
Fix: Adjust schema, add client-side validation, return hints.
429
Too Many RequestsCause: Rate limits or burst throttling.
Check: Review rate limit config, tokens, and edge policies.
Fix: Increase limits, implement backoff, cache responses.
500
Internal Server ErrorCause: Unhandled exception or unexpected state.
Check: Trace error IDs, stack traces, and recent deploys.
Fix: Fix crash path, add guardrails, and improve tests.
502
Bad GatewayCause: Upstream failed or misconfigured proxy.
Check: Inspect upstream health checks and proxy settings.
Fix: Fix upstream, increase retries, or adjust proxy routing.
503
Service UnavailableCause: Overloaded or in maintenance.
Check: Check autoscaling, queue depth, and maintenance flags.
Fix: Scale up, drain traffic, or disable maintenance mode.
504
Gateway TimeoutCause: Upstream response exceeded timeout.
Check: Review latency, timeouts, and dependency saturation.
Fix: Increase timeout, optimize query, or add caching.