Freedom251 › API Mocking Tools
Imposter

What Imposter is
Imposter is an open-source tool for creating interactive mock systems for development and QA. It can turn OpenAPI files, WSDL files, or REST endpoints into mock APIs. Its documented mock types include REST, OpenAPI/Swagger, SOAP/WSDL, HBase, Salesforce, and WireMock mappings. Responses can come from static files or change according to requests, using JavaScript, Groovy, or Java scripts and custom plugins written in JVM languages.
The OpenAPI plugin can check incoming parameters, headers, and bodies against a specification. Imposter can capture request data for later retrieval or use in templated responses, and proxy an existing endpoint to replay its responses as a mock. It runs as a standalone server in Docker, Kubernetes, AWS Lambda, or on the JVM, and can also be embedded in JVM and Node.js tests. Documented CI/CD options include GitHub Actions, GitLab CI, CircleCI, Jenkins, and Azure Pipelines. HTTPS with TLS and request authentication through headers, query parameters, or form parameters are configurable. The core Docker image includes OpenAPI, REST, and SOAP plugins; an all image contains all plugins and has more dependencies. The linked Gatehill site identifies Pete Cornish as the person who builds tools under that name.
Who it suits
Imposter suits developers and QA teams that need mock APIs or interactive systems during development and testing. It is particularly relevant for teams that want to decouple integration tests from cloud or backend systems.
What it does well
- Creates mock APIs from OpenAPI files, WSDL files, or REST endpoints.
- Supports request-dependent responses and scripting in JavaScript, Groovy, or Java.
- Validates requests against an OpenAPI specification.
- Can capture request data or proxy an existing endpoint.
- Runs standalone or embedded in JVM and Node.js tests.
What to know first
- The core Docker image includes only OpenAPI, REST, and SOAP plugins.
- The all Docker image includes every plugin but has the most dependencies.
Limits
The core Docker image includes OpenAPI, REST, and SOAP plugins. The all image includes all plugins and has the most dependencies.
Getting started
- Visit the Imposter website and follow the project’s download or installation instructions.
- Install the CLI using the shell-script option on macOS or Linux, or use a native binary or Docker engine.
- Choose a standalone run mode such as Docker, Kubernetes, AWS Lambda, or the JVM.
- Alternatively, embed Imposter in a JVM or Node.js test.
- Create mocks from OpenAPI files, WSDL files, or REST endpoints.
Verdict
Choose Imposter if your development or QA workflow needs configurable API mocks, request validation, data capture, or endpoint proxying. Its open-source format and multiple run modes fit several test setups. Consider the Docker image contents when choosing between the core image and the all image.
Questions
Is Imposter free and open source?
Yes. Imposter is open source and is described as free.
Which mock types does it support?
Documented support includes REST, OpenAPI/Swagger, SOAP/WSDL, HBase, Salesforce, and WireMock mappings.
Where can Imposter run?
Standalone options include Docker, Kubernetes, AWS Lambda, and the JVM. It can also be embedded in JVM and Node.js tests.
Can it validate API requests?
Yes. The OpenAPI plugin can validate incoming parameters, headers, and bodies against the specification.
What is included in the Docker images?
The core image includes OpenAPI, REST, and SOAP plugins. The all image includes all plugins and has the most dependencies.
Who builds Imposter?
The linked Gatehill site identifies Pete Cornish as the person who builds tools under the Gatehill name.
Facts from Imposter's own pages
- API validation and proxying
- It can validate requests against an OpenAPI specification and proxy an existing endpoint to replay its responses as a mock. · docs.imposter.sh, 4 Oct 2026
- Audience
- The maker presents Imposter for developers, including API developers, and highlights development and QA use cases. · imposter.sh, 3 Oct 2026
- CI/CD
- The getting started guide describes using Imposter in GitHub Actions and other CI/CD platforms, including GitLab CI, CircleCI, Jenkins, and Azure Pipelines. · docs.imposter.sh, 3 Oct 2026
- Data capture and proxying
- Imposter can capture request data for later retrieval or templated responses, and proxy an existing endpoint to replay its responses as a mock. · docs.imposter.sh, 3 Oct 2026
- Distribution limit
- The Docker documentation says the core image includes OpenAPI, REST, and SOAP plugins, while the all image contains all plugins and has the most dependencies. · docs.imposter.sh, 4 Oct 2026
- Dynamic responses
- Responses can use static files or be scripted with JavaScript, Groovy, or Java; advanced users can write plugins in JVM languages. · docs.imposter.sh, 4 Oct 2026
- Integrations
- The CLI documentation describes embedding Imposter in JVM and Node.js tests, and using GitHub Actions or other CI/CD platforms including GitLab, CircleCI, Jenkins, Azure Pipelines, and Bitbucket. · docs.imposter.sh, 4 Oct 2026
- Intended users
- The maker describes Imposter as a tool for developers and QA, including teams that want to decouple integration tests from cloud or backend systems. · docs.imposter.sh, 4 Oct 2026
- Maker
- The linked Gatehill site identifies Pete Cornish as the person who builds tools under the Gatehill name. · gatehill.io, 4 Oct 2026
- Platform support
- The CLI install page says its shell-script installation is for macOS and Linux; the CLI also supports native binary and Docker engines. · docs.imposter.sh, 4 Oct 2026
- Pricing
- The opened maker pages describe the project and its downloads but do not state a price or subscription plan. · imposter.sh, 3 Oct 2026
- Purpose
- Imposter runs interactive mock systems for development and QA, including before a real API is available. · imposter.sh, 4 Oct 2026
- Request data
- Imposter can capture request data for later retrieval or use it in templates to create conditional responses. · docs.imposter.sh, 4 Oct 2026
- Request validation
- The OpenAPI plugin can validate incoming request parameters, headers, and bodies against the specification. · docs.imposter.sh, 3 Oct 2026
- Run modes
- Imposter can run as a standalone server in Docker, Kubernetes, AWS Lambda, or on the JVM, or be embedded in JVM and Node.js tests. · docs.imposter.sh, 3 Oct 2026
- Security
- Imposter supports HTTPS through TLS configuration and can authenticate incoming HTTP requests using configured request conditions such as header values. · docs.imposter.sh, 4 Oct 2026
- Supported APIs
- The documentation lists mock support for REST, OpenAPI/Swagger, SOAP/WSDL, HBase, Salesforce, and WireMock mappings. · docs.imposter.sh, 3 Oct 2026
- Supported mocks
- It supports REST, OpenAPI/Swagger, SOAP/WSDL, HBase, Salesforce, and WireMock mappings. · docs.imposter.sh, 4 Oct 2026
- Telemetry
- The feature documentation lists metrics collection and persistent or semi-persistent stores as configurable features. · docs.imposter.sh, 3 Oct 2026
- Ways to run
- You can run standalone mocks in Docker, Kubernetes, AWS Lambda, or on the JVM, or embed them in JVM and Node.js tests. · docs.imposter.sh, 4 Oct 2026
Where Imposter stands on Freedom251
- API Mocking Tools#5 of 26