{"data":[{"name":"rate-limited","url":"/agent/v1/scenarios/rate-limited","status_code":429,"description":"Simulate rate-limit throttling - returns Retry-After and a quota-exhausted error body.","requires_paid_tier":false},{"name":"server-error","url":"/agent/v1/scenarios/server-error","status_code":500,"description":"Generic 5xx from the origin. Exercises your retry path.","requires_paid_tier":true},{"name":"bad-gateway","url":"/agent/v1/scenarios/bad-gateway","status_code":502,"description":"Upstream service returned garbage. Test fallback / retry-with-backoff.","requires_paid_tier":true},{"name":"timeout","url":"/agent/v1/scenarios/timeout","status_code":504,"description":"Gateway timeout. Returns immediately with X-Agent-Sandbox-Simulated-Delay: 30000 instead of holding the connection.","requires_paid_tier":true,"simulated_delay_ms":30000},{"name":"validation-error","url":"/agent/v1/scenarios/validation-error","status_code":422,"description":"Multi-field validation failure. Body contains a field_errors object with codes, messages, and constraints.","requires_paid_tier":false},{"name":"unauthorized","url":"/agent/v1/scenarios/unauthorized","status_code":401,"description":"Missing/invalid auth token. Sets WWW-Authenticate.","requires_paid_tier":true},{"name":"forbidden","url":"/agent/v1/scenarios/forbidden","status_code":403,"description":"Authenticated but lacks required scope. Body includes the missing required_scope.","requires_paid_tier":true},{"name":"not-found","url":"/agent/v1/scenarios/not-found","status_code":404,"description":"Resource not found, with a \"Did you mean…?\" hint.","requires_paid_tier":true},{"name":"conflict","url":"/agent/v1/scenarios/conflict","status_code":409,"description":"Optimistic-concurrency failure. Body includes current_version + your_version.","requires_paid_tier":true},{"name":"too-large","url":"/agent/v1/scenarios/too-large","status_code":413,"description":"Payload exceeds the max body size. Includes max_bytes.","requires_paid_tier":true},{"name":"slow","url":"/agent/v1/scenarios/slow","status_code":200,"description":"Returns 200 immediately but sets X-Agent-Sandbox-Simulated-Delay: 10000. Delay client-side to test slow responses without tying up the origin.","requires_paid_tier":true,"simulated_delay_ms":10000},{"name":"partial-content","url":"/agent/v1/scenarios/partial-content","status_code":206,"description":"Partial response with Content-Range. Exercises Range-request handling.","requires_paid_tier":true},{"name":"redirect-loop","url":"/agent/v1/scenarios/redirect-loop","status_code":302,"description":"3-hop redirect chain (?hop=0 → 1 → 2 → final JSON). Exercises follow-redirect caps.","requires_paid_tier":true},{"name":"malformed-json","url":"/agent/v1/scenarios/malformed-json","status_code":200,"description":"Returns Content-Type: application/json with a truncated/invalid body. Exercises JSON-parser error handling.","requires_paid_tier":false},{"name":"empty-response","url":"/agent/v1/scenarios/empty-response","status_code":200,"description":"Returns 200 with Content-Length: 0 and no body. Exercises \"is this success?\" branching.","requires_paid_tier":true}]}