Powerful Features
Everything you need to mock, test, and develop APIs efficiently
No Server Restart
Update endpoints and configurations in real-time without disrupting your workflow
- Live configuration updates while server is running
- Change responses, headers, delays instantly
- Add or remove endpoints on the fly
- WebSocket connections stay alive during updates
Auto-Save
Never worry about losing your work again
- Automatic save every 500ms with smart debouncing
- No save buttons, no manual actions needed
- Persistent storage in ~/.mocklantis directory
- Instant recovery on application restart
Privacy First
Your data never leaves your machine
- Localhost-only operation (127.0.0.1)
- No cloud dependency or internet required
- No telemetry, analytics, or tracking
- All data stored locally in ~/.mocklantis
State Machine
Build complex multi-step API flows with stateful scenarios and visual transitions
- Visual Flow Editor: Drag and connect states visually
- Flexible Binding: Multiple endpoints per state, or vice versa
- Advance Control: Choose which endpoints advance the state
- One-Click Reset: Reset scenario to initial state instantly
Chaos Engineering
Test your application resilience with controlled failures and edge cases
- Response Corruption: Drop fields, nullify values, or return malformed JSON
- Latency Injection: Add random or fixed delays to responses
- Error Simulation: Return configurable error responses
- Rate Limiting: Simulate API rate limits and 429 responses
Multiple Responses
Return different responses for the same endpoint to test polling, retries, and transitions
- Sequential Mode: Cycle through responses in order, then repeat
- Random Mode: Pick a random response each time
- Repeat Last: Stick on final response after cycling through
- Request Count & Expire Time: Control usage limits and response expiration
WebSocket Mastery
Full-featured WebSocket mocking with 3 powerful modes
- Conversational: Pattern-based request/response
- Streaming: Continuous data with configurable intervals
- Triggered Streaming: Complex scenarios with stopAfter/stopCount
- Lifecycle events: onConnect with delay simulation
Advanced Matching for WebSockets
4 powerful matching modes for WebSocket messages
- EXACT: Strict string matching
- CONTAINS: Substring matching
- REGEX: Full regular expression support
- JSON_PATH: Query JSON with path expressions ($.user.id)
SSE Streaming
Server-Sent Events for real-time server-to-client communication
- Perfect for AI/LLM streaming responses (ChatGPT-style)
- Event types, IDs, and Last-Event-ID reconnection support
- Per-message delays and configurable intervals
- On-connect messages for initial state delivery
Random Variables
Generate realistic fake data on every request/response body
- 14 built-in types: UUID, email, name, phone, date, IP, URL, etc.
- Parameterized generation: {{random.string(20)}}, {{random.number(1,100)}}
- Custom regex patterns: {{random.custom([A-Z]{3}-\d{4})}}
- Perfect for testing with dynamic, realistic data
Typed Path Variables
Advanced path parameter validation with type checking
- Built-in types: {id:number}, {uuid:uuid}, {slug:slug}, {email:email}
- Custom regex patterns: {code:[A-Z]{2}\d{4}}
- Automatic type validation on incoming requests
- 9 predefined types + unlimited custom patterns
Query Parameter Matching
Smart query parameter validation with intelligent scoring
- Type validation (number, string, email, etc.) or exact values
- Each exact valued param can have max 10 exact values
- Required/optional parameters with 400 Bad Request on failure
- Scoring system: Exact values (10 pts) beat type patterns (1 pt)
Request/Response Validation
Comprehensive validation for headers, body, and query parameters
- Header matching with exact value validation
- JSON body validation with random variable support
- Query parameter type checking (number, string, boolean, etc.)
- Automatic 400 Bad Request on validation failure
Response Templating
Dynamically reference request data in your responses
- Path params: {{request.path.id}}, query: {{request.query.name}}
- Headers: {{request.header.X-Request-Id}}, body: {{request.body.user.name}}
- Auto-detects Content-Type for JSON (JSONPath) or XML (XPath)
- Works in HTTP/REST and WebSocket responses
Webhooks (Callbacks)
Trigger HTTP requests to external services when mock endpoints are called
- Fire-and-forget async execution, never blocks response
- Flexible binding: Link one webhook to multiple endpoints, or trigger multiple webhooks from one endpoint
- 4 auth types: None, Basic, Bearer, API Key
- Configurable retry logic, delays, and SSL options
Import & Export
Seamless integration with existing tools and workflows
- Import from cURL commands with one click
- OpenAPI/Swagger URL import
- OpenAPI/Swagger local JSON/YAML file import
- OpenAPI/Swagger paste JSON/YAML
Live Request Logs
Real-time monitoring with Server-Sent Events streaming
- See every request/response as it happens
- Detailed timing information (duration in ms)
- Full headers and body inspection
- Expandable accordion UI with search
Response Delays
Simulate network latency and test timeout handling
- Per-endpoint delay configuration (in milliseconds)
- Test slow network conditions
- Validate loading states and spinners
- Verify timeout and retry logic
Proxy Mode
Forward unmatched requests to real APIs for hybrid testing
- Mix mocked and real endpoints seamlessly
- Perfect for gradual API migration
- Test new features against production data
- Configurable per server
API Recording
Capture real API responses and auto-create mock endpoints
- Point to any API, make requests, build your mock library instantly
- Unmatched requests forwarded to real API and captured
- Smart request matching: method, path, headers, body
- 3 auth types: Basic, Bearer, API Key
Native Desktop
Cross-platform desktop app built with Tauri
- macOS, Windows, and Linux support
- Fast native performance
- Portable single executable, works out of the box
- Self-contained, no configuration or setup needed
- No browser required, no web dependencies
Smart Error Responses
Intelligent HTTP status codes when request validation fails
- Auth header mismatch (Authorization, X-API-Key) β 401 Unauthorized
- Content-Type/Accept mismatch β 415 Unsupported Media Type
- Body or query param mismatch β 400 Bad Request
- Simulates real API behavior for testing error handling
Content-Type Auto-Detection
Automatically detect and set Content-Type from response body
- JSON objects/arrays β application/json
- XML content β application/xml
- HTML documents β text/html
- Smart scoring algorithm for accurate detection
HTTP Status Codes
Full control over response status codes
- 70+ predefined HTTP status codes
- Success (200, 201, 204), Client errors (400, 401, 404)
- Server errors (500, 502, 503)
- Test error handling and edge cases