Features

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.