{"name":"IrisTaxFiling sandbox","description":"Predefined responses for every output the API can produce. Nothing is processed or stored.","how_to":"curl -X POST \"https://sandbox.iristaxfiling.com/v1/filings?scenario=rejected\"","scenarios":"https://sandbox.iristaxfiling.com/v1/scenarios","endpoints":[{"method":"POST","path":"/v1/filings","summary":"Create a filing (add ?mode=validate for a dry run)","scenarios":["success","ready","valid","blocked","unauthorized","api_key_expired","rate_limited","invalid_json","invalid_request","not_found","payload_too_large","idempotency_conflict","request_in_progress","internal_error","service_unavailable"]},{"method":"GET","path":"/v1/filings/:id","summary":"Get a filing in any status","scenarios":["success","created","blocked","ready","submitted","accepted","accepted_with_errors","partially_accepted","rejected","failed","corrected","unauthorized","api_key_expired","rate_limited","invalid_json","invalid_request","not_found","payload_too_large","idempotency_conflict","request_in_progress","internal_error","service_unavailable"]},{"method":"POST","path":"/v1/filings/:id/submit","summary":"Submit a ready filing","scenarios":["success","submitted","accepted","accepted_with_errors","partially_accepted","rejected","invalid_state","submission_not_available","transmission_failed","unauthorized","api_key_expired","rate_limited","invalid_json","invalid_request","not_found","payload_too_large","idempotency_conflict","request_in_progress","internal_error","service_unavailable"]},{"method":"GET","path":"/v1/filings/:id/acknowledgements","summary":"Raw IRS acknowledgements","scenarios":["success","pending","accepted","accepted_with_errors","partially_accepted","rejected","unauthorized","api_key_expired","rate_limited","invalid_json","invalid_request","not_found","payload_too_large","idempotency_conflict","request_in_progress","internal_error","service_unavailable"]},{"method":"GET","path":"/v1/filings/:id/xml","summary":"Download the generated XML (provisional)","scenarios":["success","blocked","unauthorized","api_key_expired","rate_limited","invalid_json","invalid_request","not_found","payload_too_large","idempotency_conflict","request_in_progress","internal_error","service_unavailable"]},{"method":"POST","path":"/v1/filings/:id/corrections","summary":"Create a correction or replacement","scenarios":["success","ready","blocked","unauthorized","api_key_expired","rate_limited","invalid_json","invalid_request","not_found","payload_too_large","idempotency_conflict","request_in_progress","internal_error","service_unavailable"]},{"method":"GET","path":"/v1/forms","summary":"List the 37 IRIS forms (real catalogue)","scenarios":["success","unauthorized","api_key_expired","rate_limited","invalid_json","invalid_request","not_found","payload_too_large","idempotency_conflict","request_in_progress","internal_error","service_unavailable"]},{"method":"GET","path":"/v1/forms/:id","summary":"One form with its template columns (real catalogue)","scenarios":["success","unknown_form","unauthorized","api_key_expired","rate_limited","invalid_json","invalid_request","not_found","payload_too_large","idempotency_conflict","request_in_progress","internal_error","service_unavailable"]},{"method":"GET","path":"/v1/forms/:id/template","summary":"CSV template for a form (real)","scenarios":["success","unknown_form","unauthorized","api_key_expired","rate_limited","invalid_json","invalid_request","not_found","payload_too_large","idempotency_conflict","request_in_progress","internal_error","service_unavailable"]},{"method":"POST","path":"/v1/forms/:id/validate","summary":"Bulk readiness check (the body is ignored)","scenarios":["success","ready","blocked","unknown_form","unauthorized","api_key_expired","rate_limited","invalid_json","invalid_request","not_found","payload_too_large","idempotency_conflict","request_in_progress","internal_error","service_unavailable"]},{"method":"POST","path":"/v1/imports/fire","summary":"Convert a FIRE file (the body is ignored)","scenarios":["success","ready","blocked","unauthorized","api_key_expired","rate_limited","invalid_json","invalid_request","not_found","payload_too_large","idempotency_conflict","request_in_progress","internal_error","service_unavailable"]},{"method":"POST","path":"/v1/tin/check","summary":"Structural TIN check (the body is ignored)","scenarios":["success","tin_valid","tin_invalid","unauthorized","api_key_expired","rate_limited","invalid_json","invalid_request","not_found","payload_too_large","idempotency_conflict","request_in_progress","internal_error","service_unavailable"]},{"method":"POST","path":"/v1/webhooks","summary":"Register a webhook endpoint","scenarios":["success","unauthorized","api_key_expired","rate_limited","invalid_json","invalid_request","not_found","payload_too_large","idempotency_conflict","request_in_progress","internal_error","service_unavailable"]},{"method":"GET","path":"/v1/webhooks","summary":"List webhook endpoints","scenarios":["success","empty","unauthorized","api_key_expired","rate_limited","invalid_json","invalid_request","not_found","payload_too_large","idempotency_conflict","request_in_progress","internal_error","service_unavailable"]},{"method":"GET","path":"/v1/webhooks/deliveries","summary":"Delivery history: delivered, retrying and abandoned","scenarios":["success","empty","unauthorized","api_key_expired","rate_limited","invalid_json","invalid_request","not_found","payload_too_large","idempotency_conflict","request_in_progress","internal_error","service_unavailable"]},{"method":"GET","path":"/v1/audit","summary":"Audit trail","scenarios":["success","unauthorized","api_key_expired","rate_limited","invalid_json","invalid_request","not_found","payload_too_large","idempotency_conflict","request_in_progress","internal_error","service_unavailable"]},{"method":"GET","path":"/v1/usage","summary":"Usage for a month","scenarios":["success","unauthorized","api_key_expired","rate_limited","invalid_json","invalid_request","not_found","payload_too_large","idempotency_conflict","request_in_progress","internal_error","service_unavailable"]},{"method":"GET","path":"/v1/capabilities","summary":"Which modules are available","scenarios":["success","unauthorized","api_key_expired","rate_limited","invalid_json","invalid_request","not_found","payload_too_large","idempotency_conflict","request_in_progress","internal_error","service_unavailable"]},{"method":"GET","path":"/v1/webhook-events","summary":"Sandbox only: sample webhook payloads with a valid signature (all 9 events, or ?event=filing.rejected)","scenarios":["success","unauthorized","api_key_expired","rate_limited","invalid_json","invalid_request","not_found","payload_too_large","idempotency_conflict","request_in_progress","internal_error","service_unavailable"]}],"docs":"https://docs.iristaxfiling.com/#sandbox"}