Features

apisimulator-features

Feature-rich, API Simulator can be an indispensable tool in your development and testing toolbox. The Standalone API Simulator's features below are not roadmap items - they are available out-of-the-box, right now.

No Coding Required
Configuration-driven simulations modelled using simple constructs: name/value pairs, lists, and maps.
Extensible by Scripting

Script anything not built-in yet.
No source code compiling and packaging binaries!

Lightweight

Run API Simulator on local workstations or remote hosts. No need for an application server or external database.

Containerizable

Runs in Docker/OCI containers, including on Kubernetes and OpenShift. Ready-to-use Docker image is available.

Web APIs

ReST, SOAP, RPC style APIs... Using JSON, XML, or a different payload - anything based on HTTP.

TLS Support (HTTPS)

Support for TLS/SSL using X.509 certificate and private key in PEM format, run-time generated self-signed cert, or KeyStore in JKS format.

HTTP/2

API Simulator supports HTTP/2 with TLS ALPN, starting HTTP/2 with prior knowledge, and HTTP/2 upgrade from HTTP/1.1

HTTP or HTTPS (!) Proxy
Often times it's easier to configure the HTTP client of your application to use API Simulator as HTTP or HTTPS proxy instead of modifying the URLs of simulated API to point to API Simulator.
mTLS (mutual TLS, two-way TLS/SSL)
When client authentication is enabled, API Simulator will trust either all client certificates or only those signed by specific CAs.
Comprehensive Request Matching
Multi-value request matching by URI path (route), path pattern, query parameters, HTTP method, header fields, values from the payload, day of the week (no kidding!)...
Multi-response Simlets
Model multiple responses in the same simlet configuration without using any scripting.
Request Sampling
Additional request matching in multi-response simlets based on random selection, request sequence number, or fixed rate sampling.
Dynamic Responses
The power of responses changing even for the same request using date/time values, computations, parameters from the request, random values, external data stores...
Simula Template Engine

Simula - the flexible templating system developed for API Simulator - drives dynamic response rendering.

Static Stubs/Mocks

Returning static, fixed response for a given request - often times called API mock or stub - is easy with API Simulator.

Stateful API Simulations

API Simulator can maintain state between requests. It is completely dynamic and without a requirement to pre-configure response data.

Simulate Large Content Download

Simulations that stream large content, even bigger than 2GB (!), with only few MB of memory.

Flexible Simlet Organization
Your choice: single configuration file, a folder structure that suits your needs, or both.
Callbacks over HTTP/1.1 and HTTP/2
Built-in support for Request/Acknowledge/Callback message exchanges with async, optionally delayed, callbacks (webhooks).
Default Simulated Response
Designate a default response for unrecognized requests. For example, returning "404 Not Found" response with a static or dynamically constructed body.
Forwarding Unrecognized Requests

Unmatched requests can be forwarded to their actual destination and the live responses passed back to the client.

Randomly Generated Values
Test Data Management via randomly generated numbers, date/time values, tokens from a pattern, random selections from lists...
CSV Data Sources
CSV (comma-separated values) files or embedded in the configuration as source of data to include in dynamic responses.
SQL Data Sources
Relational databases as source of data to include in dynamic responses.
Rate Limiting Simulations
Allow calls at a predefined rate and return an error response (e.g. HTTP "429 Too Many Requests") for calls exceeding the rate.
Latency and Jitter Simulations
Add delay in sending responses to simulate latency, API slowness, and response time fluctuations for more realistic API simulations. Random, Fixed, Normal or LogNormal distributions.
Connection Dropping Simulations
Simulate unexpected connection closing for a subset of the responses to create chaos and inject faults.
Admin APIs

Admin APIs for remote management of API Simulations via calls over HTTP/S secured by a configurable API key.

Declarative Configuration
Declarative configuration for customizing and configuring API Simulator and global API Simulation settings.
Simulate Partial Responses
To create chaos, simulate partial responses for all or a subset of the requests. How will your API client handle them?
API Simlet Editor
Online API Simlet Editor with suggestions, auto-completion, and more. Now part of API Simulator Cloud. Free!
HTTP API Simulation Fidelity

Support for HTTP protocol-specific features like chunked transfer encoding, compressed output content (gzip, deflate), "keep alive" connections, custom HTTP header fields and methods (e.g. RESET)...

API Recorder
Capture raw HTTP traffic and save it into files with API Recorder. Use the recordings to model API simulations.

It gets even better - fully functional API Simulator is free!

There is more, and more is coming. We will gladly look into any suggestions what features to add or how to improve API Simulator.

We invite you to learn more about API Simulator, download it, and run the examples. Why not even create API simulations to help your own testing and development?

Let us know what you think at [feedback at APISimulator.com]. Many thanks for your interest and support!

Happy API Simulating!


All trademarks and registered trademarks are the property of their respective owners.