Format
Well-formed bodies in every supported format — the conformant counterparts to the format-chaos endpoints.
/activitystreamsReturns a well-formed ActivityStreams 2.0 / ActivityPub object: @context present, `type` from the AS2 vocabulary, `actor` a dereferenceable URI, `object` consistent with the activity type. Served as application/activity+json. Counterpart to /activitystreams, which ships one of four violations.
/atomReturns a well-formed Atom 1.0 feed: every entry has an id, updated uses RFC 3339, author is present at feed level, and rel=self points to this feed's own URL. Counterpart to /atom, which ships one of four violations.
/cloudeventsReturns a well-formed CloudEvents 1.0 envelope: `specversion` is "1.0", `type` is a non-empty string, `datacontenttype` matches the `data` shape, only `data` present (no `data_base64`). Served as application/cloudevents+json. Counterpart to the chaos /cloudevents endpoint.
/csvRFC 4180 compliant CSV control. Header + 3 rows, all 3 columns, no BOM, fields containing commas are quoted, CRLF line endings throughout. Build a client against this baseline; flip hostname to chaos.catastrophic.io to exercise the four failure modes.
/geojsonReturns a well-formed GeoJSON Feature: Polygon ring closed (first and last positions identical), coordinates in [longitude, latitude] order, `type` consistent with `coordinates` shape, `properties` member present. Served as application/geo+json. Counterpart to the chaos /geojson endpoint.
/htmlWell-formed HTML control. Tags nest correctly, declared charset matches body bytes, doctype matches the markup version, no tag is left open. Use this as the parser-passes baseline; flip hostname to chaos.catastrophic.io to exercise the four failure modes.
/imageReturns a real 1×1 PNG whose magic bytes, Content-Type, Content-Length, and IHDR dimensions all agree. Counterpart to the chaos /image endpoint, which deliberately ships images whose metadata contradicts the bytes.
/jsonReturns syntactically valid JSON with a Content-Type of application/json. Counterpart to the chaos /json endpoint, which deliberately ships invalid JSON.
/json-feedReturns a spec-compliant JSON Feed 1.1 document: `version` is the full URL, item `id` values are unique, item `url` values are absolute, and `feed_url` matches this feed's own URL. Counterpart to /json-feed, which ships one of four violations.
/jsonapiReturns a well-formed JSON:API response: single resource object with `type`, `id`, `attributes`, and `relationships`; all `included` resources referenced by a relationship. Served as application/vnd.api+json. Counterpart to the chaos /jsonapi endpoint.
/jsonlConformant NDJSON control. One valid JSON object per line, consistent schema across all records, LF line endings, trailing newline, no BOM. Build a client against this baseline; flip hostname to chaos.catastrophic.io to exercise the four failure modes.
/jsonrpcReturns a well-formed JSON-RPC 2.0 response: `jsonrpc` version present, `id` matching the implied request, `result` present without `error`. Counterpart to the chaos /jsonrpc endpoint.
/jwt-payloadReturns a well-formed JWT payload (claim set): `iss` is a URI, `sub` is a string principal identifier, `aud` is a homogeneous array of StringOrURI values, `exp` and `iat` are NumericDate integers. Counterpart to /jwt-payload, which ships one of four RFC 7519 violations.
/multipartReturns a well-formed multipart/form-data response: declared boundary matches body delimiter, every part has a single Content-Disposition `name=` parameter, closing boundary has the trailing CRLF, no nested multipart. Two parts: a text field and a file field. Counterpart to /multipart.
/oauth-tokenReturns a well-formed RFC 6749 §5.1 token response: `expires_in` as integer, `scope` space-delimited, `token_type` as "Bearer", `refresh_token` present. Cache-Control: no-store. Counterpart to the chaos /oauth-token endpoint.
/ooxmlReturns a well-formed Office Open XML package (DOCX, XLSX, or PPTX) where [Content_Types].xml, every relationship, and every referenced part are present and self-consistent. Counterpart to the chaos /ooxml endpoint, which deliberately ships packages where one structural field lies.
/pdfReturns a well-formed PDF: five-object document (Catalog, Pages node, Page, content stream with Helvetica text, and a link annotation to catastrophic.io). xref offsets accurate, page count honest, no encryption reference, no JavaScript actions. Counterpart to the chaos /pdf endpoint.
/problem-detailsReturns a well-formed RFC 9457 Problem Details object: `type` URI present, `status` as integer 404, `detail` string, `instance` as a URI reference. Counterpart to the chaos /problem-details endpoint.
/rssReturns a well-formed RSS 2.0 feed: channel title present, pubDate in RFC 822 format, guid is a valid permalink URL, no enclosure type lies. Counterpart to /rss, which ships one of four violations.
/schema-orgReturns a well-formed Schema.org / JSON-LD document: @context is https://schema.org, @type is in the vocabulary, all required properties for the type are present, no context-array shadowing. Served as application/ld+json. Counterpart to /schema-org, which ships one of four violations.
/sseReturns a well-formed Server-Sent Events stream: `data:`, `event:`, `id:`, and `retry:` fields all correctly framed, blank-line event separators, four events then close. Served as text/event-stream. Counterpart to /sse, which ships one of four WHATWG EventSource violations.
/svgConformant SVG control. Declared SVG namespace, correctly nested tags, no external references, no <use> cycles. Renders identically in every browser and SVG processor. Build a client against this baseline; flip hostname to chaos.catastrophic.io to exercise the failure modes.
/tomlReturns a well-formed TOML 1.0 document: top-level scalars, sub-table, arrays of tables, RFC 3339 datetime, homogeneous arrays. Served as application/toml. Counterpart to /toml, which ships one of seven TOML 1.0 violations.
/web-annotationReturns a spec-compliant W3C Web Annotation object: `id` present, `body` is a TextualBody object, `motivation` is from the standard vocabulary, `target` is a URI string. Counterpart to /web-annotation, which ships one of four violations.
/xmlWell-formed XML control. Declaration is honest, tags nest correctly, no entity declarations, no external references, body bytes match the declared encoding. Build a client against this baseline; flip hostname to chaos.catastrophic.io to exercise the failure modes.
/yamlReturns a well-formed YAML 1.2 document: scalars, mapping, sequence, and a sane anchor + merge-key. No Norway-problem scalars, no cycles, no duplicate keys, no tag lies. Served as application/yaml. Counterpart to /yaml.
/zipReturns a well-formed STORED ZIP archive: single entry hello.txt, correct CRC32, declared sizes match the body, central directory entries agree with the local file header, EOCD present. Counterpart to the chaos /zip endpoint, which deliberately ships archives where one structural field lies.
Real-format bodies (HTML, JSON, XML, CSV, SVG, NDJSON, PNG/JPEG, ZIP, OOXML)
where every structural field is honest and every parser succeeds. Build your
client against these, then flip the hostname to chaos.catastrophic.io to
exercise the chaos counterparts.