Skip to main content
Everything in ProdBreak is reachable over plain HTTP. The SDKs and test plugins are clients of this contract, and curl is the zero-dependency fallback. Two planes share one origin:
  • Vendor plane — the vendor’s real paths (/v1/...), called by your app’s SDK.
  • Control plane/__admin__/*, called by test code / the SDK / curl.
This contract carries a version string. Vendor specifics (resource names, the error envelope) are supplied by the pack; shapes here use Stripe/Deck-shaped examples.

Auth

Every request carries the instance-minted bearer key:
A wrong or missing key is a 401. The key authenticates you to the one world; it does not select among worlds. More →

Vendor plane

Your app’s calls arrive unchanged and are resolved in this order:
  1. Armed fault matches? → fire it.
  2. X-Mock-Scenario header present? → run that scenario.
  3. Magic value in the request? → run its outcome.
  4. Otherwise → normal stateful handling (out-of-control fields resolved inside this step).
Every response carries X-Mock-Resolution-Trace: <id> (see the trace endpoint below).

Control plane

Example: arm a fault

Example: read the resolution trace

Error envelope

ProdBreak returns a generic shape by default; each pack overrides it with the vendor’s real one.