Documentation
Everything you need to know about creating and managing mock API endpoints on Simulyn.
Overview
Simulyn generates realistic mock REST API endpoints from JSON schemas or simple key-value templates. Each endpoint is accessible at a unique URL in this format:
https://simulyn.dev/api/mock/{namespace}/{your-path}Endpoints can be called directly from frontend code, Postman, cURL, or any HTTP client — no CORS headers or authentication required.
Quick Start
Create an account
Sign up at simulyn.dev/signup. Choose a namespace (e.g. "acme-corp") — this prefixes all your endpoints permanently.
Create an endpoint
From the Dashboard, click "New Endpoint". Choose a path (e.g. api/users), HTTP method, and data mode.
Define your schema or template
Use the built-in JSON editor to write your schema or template config. Hit save.
Call your endpoint
Copy the generated URL and call it from your browser, frontend app, or API client.
Template Mode
Template mode maps JSON keys directly to Faker.js generator strings. It's the fastest way to get started.
{
"id": "string.uuid",
"name": "person.fullName",
"email": "internet.email",
"avatar": "image.avatar",
"company": "company.name",
"city": "location.city",
"joinedAt": "date.past"
}The above template generates array items like { id: "7f9c...", name: "Jane Doe", ... } for every request.
Popular Generators
JSON Schema Mode
JSON Schema mode uses the full JSON Schema Draft-07 spec to generate data. Useful for nested objects, enum constraints, and typed values.
{
"type": "object",
"properties": {
"id": { "type": "string", "format": "uuid" },
"email": { "type": "string", "format": "email" },
"age": { "type": "integer", "minimum": 18, "maximum": 80 },
"plan": { "type": "string", "enum": ["free", "pro", "enterprise"] },
"address": {
"type": "object",
"properties": {
"city": { "type": "string" },
"country": { "type": "string" }
}
}
}
}Query Parameters
All endpoints support optional query parameters to modify the response dynamically — no endpoint reconfiguration required.
| Parameter | Type | Description |
|---|---|---|
| count | integer | Number of items to return in the array (default: 10, max: 1000). |
| seed | integer | Random seed for reproducible results. Same seed = same data. |
| delay | integer | Artificial latency in milliseconds before responding. |
| status | integer | Force a specific HTTP status code (e.g. 404, 500). |
# Get 25 users, with a fixed seed for reproducibility
GET /api/mock/acme/users?count=25&seed=42
# Simulate a slow network (800ms delay)
GET /api/mock/acme/users?delay=800
# Test your 404 error handler
GET /api/mock/acme/users?status=404Request Validation
Optionally define a JSON Schema that incoming request bodies must conform to. When enabled, Simulyn will return a 400 Bad Request with a validation error message for non-conforming payloads.
// Request body validation schema (POST /api/mock/acme/users)
{
"type": "object",
"required": ["email", "password"],
"properties": {
"email": { "type": "string", "format": "email" },
"password": { "type": "string", "minLength": 8 }
}
}Enable this in the endpoint editor under the "Request Validation" tab. Toggle "Enforce Schema" to activate.
Interactive Playground
Every endpoint has a "Preview" button in the dashboard that opens the interactive playground. Here you can:
- Set query parameters (count, seed, delay, status code) visually.
- Write and send a custom JSON request body.
- Edit the endpoint schema live and save without leaving.
- Inspect the JSON response in a syntax-highlighted Monaco editor.
FAQ
Is my endpoint publicly accessible?
Yes. Mock endpoints are publicly accessible by URL without authentication. Do not store sensitive data in your schemas.
Can I use Simulyn endpoints in production?
Simulyn is designed for development and testing. We do not recommend using it as a production data source.
Are there rate limits?
During beta, generous limits apply. We will announce formal rate limits before the platform exits beta.
Can I change my namespace?
No. Your namespace is assigned at signup and is permanent, as it forms part of all your endpoint URLs.
What HTTP methods are supported?
GET, POST, PUT, PATCH, DELETE, and ALL (wildcard). You can create separate endpoints for the same path with different methods.
Ready to start mocking?
Create your free account and have a live endpoint in under 60 seconds.
Get Started Free