REST API Tester
/install rest-api-test-cli
API Tester
Test, validate, and benchmark REST APIs with a single command. No external dependencies — uses only Python standard library.
Quick start
# Test a single endpoint
python3 skills/api-tester/scripts/api_tester.py --url https://api.github.com/repos/openclaw/openclaw
# POST with JSON body
python3 skills/api-tester/scripts/api_tester.py \
--url https://jsonplaceholder.typicode.com/posts \
--method POST \
--body '{"title":"test","body":"hello","userId":1}'
# Test with custom headers
python3 skills/api-tester/scripts/api_tester.py \
--url https://api.example.com/secure \
--headers '{"Authorization":"Bearer token123"}'
Common commands
| Command | Action |
|---|---|
--url URL |
Target API endpoint (required) |
--method GET|POST|PUT|DELETE|PATCH |
HTTP method |
--headers '{"K":"V"}' |
Custom headers as JSON |
--body '{"key":"value"}' |
Request JSON body |
--body-file path.json |
Read body from file |
--verbose |
Show response body |
--validate |
Validate status code + response time |
--expected-status 201 |
Expected HTTP status (default: 200) |
--validate-keys id name email |
Expected JSON keys in response |
--benchmark |
Run multiple iterations |
--iterations 10 |
Benchmark iterations (default: 5) |
--max-time 5000 |
Max acceptable time in ms (default: 3000) |
--timeout 60 |
Request timeout (default: 30) |
--report |
Generate HTML test report |
--output report.html |
Save report to path |
--spec openapi.json --test-all |
Test all endpoints from spec |
Validation
Validate API responses automatically:
python3 skills/api-tester/scripts/api_tester.py \
--url https://jsonplaceholder.typicode.com/posts/1 \
--validate --validate-keys userId id title body
Output:
Validation: ✅ PASS
3/3 checks passed
✅ status_code: expected=200, actual=200
✅ response_time: expected=\x3C3000ms, actual=234ms
✅ key_exists: userId: expected=present, actual=found
Benchmarking
Test endpoint performance over multiple iterations:
python3 skills/api-tester/scripts/api_tester.py \
--url https://jsonplaceholder.typicode.com/posts \
--benchmark --iterations 10
Output:
Benchmark: GET https://jsonplaceholder.typicode.com/posts
Iterations: 10
Min: 142ms
Max: 312ms
Avg: 198ms
Median: 189ms
Success: 10/10
HTML Reports
Generate a styled HTML report for sharing:
python3 skills/api-tester/scripts/api_tester.py \
--url https://jsonplaceholder.typicode.com/posts/1 \
--verbose --report
# Creates: api-test-report-20260510-133000.html
Testing from OpenAPI Spec
Test all endpoints defined in an OpenAPI/Swagger specification:
python3 skills/api-tester/scripts/api_tester.py \
--spec openapi.json \
--test-all
Requirements
- Python 3.6+ (no pip install needed)
- Uses only
urllibfrom standard library - Works on Linux, macOS, Windows
- No external API calls
- Make sure OpenClaw is installed (local or Docker)
- Run the install command in chat:
/install rest-api-test-cli - After installation, invoke the skill by name or use
/rest-api-test-cli - Provide required inputs per the skill's parameter spec and get structured output
What is REST API Tester?
REST API testing and validation toolkit. Send requests, validate responses, benchmark performance, generate HTML reports. Use when the user wants to: (1) Tes... It is an AI Agent Skill for Claude Code / OpenClaw, with 12 downloads so far.
How do I install REST API Tester?
Run "/install rest-api-test-cli" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.
Is REST API Tester free?
Yes, REST API Tester is completely free, licensed under MIT-0. You can download, install and use it at no cost.
Which platforms does REST API Tester support?
REST API Tester is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).
Who created REST API Tester?
It is built and maintained by ericlooi504 (@ericlooi504); the current version is v1.0.0.