Everything Understudy gives you
Understudy is a fully working simulation of any REST API, with a full UI to drive it. Here is everything it does, one feature at a time.
Import your OpenAPI file
Bring an OpenAPI 3.0 or 3.1 document and Understudy turns it into a working simulation, keeping your document exactly as written.
A data model from your contract
Understudy reads your contract and proposes resources with typed fields and links, not just a list of routes.
A real, stateful API
POST creates a record, GET reads it back, and the data persists. A live stand-in, not a recording.
Rich field types
Text, number, boolean, date, enum, references, generated ids, and nested objects and arrays, each self-validating.
Links between records
Foreign keys become real links. Pick a related record by searching, and return linked records inline.
Build an API without a spec
Define resources and fields in the UI and get a working, stateful CRUD API. No spec, no code, no YAML.
List responses and pagination
Understudy serves the list shape your contract describes, with real paging, without hardcoding vendor field names.
Realistic sample data
Fill a record with believable values in one click, or seed dozens at once.
Checked both ways
Bad requests are rejected with the right error, and a response that would break your contract is never sent.
Fake auth and token endpoints
Answer a token handshake with a credibly shaped token, so your client proceeds. No real security needed.
Admin login and multiple users
A built-in login with no configuration. Create an admin on first run, then sign in normally.
Export and import
Export a simulation to a single file, commit it, share it, and import it again to get an identical setup.
The editor
The whole product is driven through a clean, fast, accessible web editor. No YAML, no scripting.
The request scratch pad
One click turns any resource into a ready-to-paste HTTP request, with a real route, headers and body.
Run it anywhere
One npm install and one function call. No build step, no Docker, no admin rights.
Make it misbehave on purpose
Return 429s, 500s and 503s, or respond slowly, so your retry, back-off and timeout handling gets a workout.
Callbacks and webhooks
When a record changes, Understudy fires a signed POST to a URL you choose, so your event handling has something to react to.