Features
Everything needed to simulate a real REST backend.
GhostAPI is not a static mock server. It is a contract-driven workspace for generating endpoints, shaping responses, exercising frontend states, and debugging traffic.
Capability map
Feature surface
The product is organized around the flow from schema import to frontend testing.
- OpenAPI import
- Upload OpenAPI 3.x JSON or YAML and turn paths, methods, params, bodies, responses, tags, servers, and security metadata into a normalized project model.
- Runnable mock runtime
- Every generated endpoint is mounted under /mock/{projectId}, so your frontend can call real HTTP URLs instead of waiting for backend routes.
- Full request Playground
- Browse endpoints, set params, shared headers, media types, request bodies, auth simulation, and inspect response status, headers, body, and cURL.
- Editable responses
- Save response bodies per status and content type while keeping generated schema-aware responses as fallback.
- Activity logs
- Capture method, path, headers, request body, response body, status, duration, and endpoint match for debugging frontend traffic.
- Project settings
- Manage environments, shared headers, mock defaults, schema replacement, members, and destructive actions in one project scope.
Use cases
What it helps you do
These are the jobs GhostAPI should make faster for a frontend team.
- Build a frontend before the backend endpoint exists.
- Test loading, error, auth, empty, and edge-case states on demand.
- Share a stable mock API with teammates through project membership.
- Replace an updated schema without losing local mock edits unless override is enabled.
- Inspect exactly what the frontend sent when a request fails.
Example
Call a generated mock route
Generated routes are normal HTTP endpoints under the project runtime.
Mock request
curl -X POST "http://localhost:3001/mock/{projectId}/auth/login" \
-H "content-type: application/json" \
-H "authorization: Bearer your_token" \
--data '{"email":"user@example.com"}'