RESTest
RESTest is a free, open-source black-box tool that generates requests from OpenAPI documents, exercises REST APIs, checks responses, and reports faults.
What RESTest is
RESTest is a free, open-source black-box tool that generates requests from OpenAPI documents, exercises REST APIs, checks responses, and reports faults. It reads OpenAPI 2.0, 3.0, and 3.1 without inspecting the API’s source code, so the API can be implemented in any language and run anywhere. Generated requests can use valid and invalid inputs, mutate accepted requests, and make short sequences involving created resources. RESTest flags HTTP 500 responses and response bodies that do not match the documented schema. Every reported fault includes a curl command for repeating the request. Users can provide value dictionaries, adjust campaign plans, and configure settings through files, command-line options, or environment variables. API keys, bearer tokens, and session cookies are accepted, with credentials redacted from reports and saved output. A machine-readable report.json records faults, operations, untestable operations, and run settings. Continuous integration use is documented, including exit codes that fail builds when faults are found. Building requires Java 21 or later and git; Windows use is documented through Git Bash.
Good
- Supports OpenAPI 2.0, 3.0, and 3.1
- Tests APIs without reading source code
- Provides curl commands for fault reproduction
- Redacts credentials in reports and saved output
- Supports continuous integration workflows
Watch out
- Building requires Java 21 or later and git
- Windows use requires Git Bash
- Version 2.0 cannot use RESTest 1.x files or reports
Who it suits
It suits developers and QA teams testing REST services from OpenAPI descriptions without source access. CI users can use its reports and exit codes to detect faults during builds.
Verdict
RESTest offers configurable black-box API testing with reproducible faults and machine-readable reporting. Its Java and Git requirements, plus the 2.0 compatibility break, should be considered before adoption.
Plans and prices
From RESTest's own pricing page, checked 11 Oct 2026.
| Plan | Price | What it gives you |
|---|---|---|
| RESTest | Free | Apache License 2.0 · Java 21 or later and git required |
The facts
Each one read from RESTest's own pages, with the date it was checked.
What it does
- Authentication
- The --auth option accepts API keys, bearer tokens, and session cookies, and redacts credentials from displayed output and saved reports.checked 11 Oct 2026
- CI use
- RESTest uses exit code 1 when it finds a fault, allowing build servers to fail a run on nonzero status.checked 11 Oct 2026
- Configuration
- Users can customize test data with dictionaries, change a campaign plan, and configure settings through files, command-line options, or environment variables.checked 5 Oct 2026
- Customization
- Users can provide dictionaries of known values and customize request plans and settings.checked 11 Oct 2026
- Fault checks
- It reports HTTP 500 responses and response bodies that do not match the specification's schema.checked 11 Oct 2026
- Fault reproduction
- Each reported fault includes a curl command that sends the same request again.checked 11 Oct 2026
- Implementation independent
- RESTest does not inspect the API's code, so the API can be written in any language and run anywhere.checked 11 Oct 2026
- License
- The project is distributed under the Apache License, Version 2.0.checked 11 Oct 2026
- No source access required
- Testing uses the API description and its responses without inspecting the API's source code.checked 5 Oct 2026
- Notable limitation
- Operations requiring a file upload are listed as operations RESTest cannot test, with the reason given.checked 11 Oct 2026
- OpenAPI support
- It reads OpenAPI 2.0, 3.0, and 3.1 specifications.checked 11 Oct 2026
- Purpose
- RESTest is a black-box testing tool that generates requests from an OpenAPI document, sends them to a REST API, and reports faults.checked 11 Oct 2026
- Reporting
- RESTest writes a machine-readable report containing faults, operations, and run settings.checked 5 Oct 2026
- Reports
- RESTest writes a machine-readable report.json containing faults, operations, untestable operations, and run settings.checked 11 Oct 2026
- Reproducible requests
- Each reported fault includes a curl command to send the same request again.checked 5 Oct 2026
- Request strategies
- Its generated requests include valid inputs, invalid inputs, mutations of accepted requests, and short sequences involving created resources.checked 11 Oct 2026
- Requirement
- Building RESTest requires Java 21 or later and git; running it requires a plain Java runtime.checked 11 Oct 2026
- Requirements
- Building RESTest requires Java 21 or later and git; running it requires a Java runtime.checked 5 Oct 2026
- Response checks
- RESTest reports HTTP 500 responses and response bodies that do not match the documented schema.checked 5 Oct 2026
The company
- Headquarters
- Seville, Spainchecked 28 Sep 2026
Where it runs
- Windows support
- The installation instructions say to run RESTest on Windows from Git Bash.checked 5 Oct 2026
- Windows usage
- The README says to run RESTest on Windows from Git Bash.checked 11 Oct 2026
Alternatives to RESTest
- 1
HTTPie
Free planOpen sourceWebLinuxmacOSWindows8.3From $10 a month - 2

Karate
Free planOpen sourceAPIExtensionLinuxmacOS8.2From $100 a year - 3

SoapUI
Free planOpen sourceAPILinuxmacOSSelf-hosted8.2From $1,069 a year - 4

Bruno
Free planOpen sourceAPIExtensionLinuxmacOS8.1From $6 a month - 5

Apidog
Free planWebAPIExtensionLinux8.0From $9 a month - 6

PactFlow
Free planWebAPILinuxSelf-hosted7.6From $115.42 a month
