A tools listicle is only useful if the author actually uses the tools. This is the short list of API security tools I have spent real engagement hours with in 2026, ranked by how often I reach for each one, with honest notes on where each fits and where each falls short.
If you want the underlying mechanics first, the API security attacks deep dive covers the OWASP API Top 10 variants and the web application security vulnerabilities taxonomy covers the broader map. This article is for the choice of which tool to run.
The decision matrix
| Tool | Licence | Language | Maintained | Best for | Interface | Stars (May 2026) |
|---|---|---|---|---|---|---|
| Burp Suite (Pro) | Commercial | Java | Active | The default. Manual API testing, request shaping, scanner | GUI + CLI | n/a |
| mitmproxy | MIT | Python | Active | Terminal workflow, high-volume traffic, mobile capture | CLI + Web | 43k+ |
| OWASP ZAP | Apache 2.0 | Java | Active | Open-source baseline, CI/CD, OpenAPI-driven scans | GUI + CLI | 15k+ |
| kiterunner | AGPL-3.0 | Go | Lightly maintained | Route discovery against APIs with no public schema | CLI | 3k+ |
| Postman / Hoppscotch | Freemium / MIT | Electron / Web | Active | Authoring the request corpus that everything else replays | GUI | n/a / 70k+ |
| jwt_tool | GPLv3 | Python | Active | JWT-specific attacks (alg=none, kid traversal, brute force) | CLI | 6k+ |
| graphql-cop | MIT | Python | Active | GraphQL audit (introspection, batching, field suggestions) | CLI | 600+ |
| clairvoyance | Apache 2.0 | Python | Active | GraphQL schema discovery when introspection is disabled | CLI | 1k+ |
| 42Crunch / APIsec | Commercial | SaaS | Active | Enterprise governance, OpenAPI contract testing at scale | SaaS | n/a |
A quick read of the table: Burp is the default. mitmproxy is the terminal-native alternative when Burp is too heavy. ZAP is the open-source baseline. Everything else fills a specific niche.
1. Burp Suite (with Param Miner, Hackvertor, GraphQL Raider)
Site: portswigger.net/burp
The default. If you only learn one platform, learn this one.
Burp Suite is the intercepting proxy and request manipulator. For API testing it plays four roles: capture (proxy + browser), shaping (Repeater), brute-force (Intruder), and a built-in scanner (Pro). The extension ecosystem is what makes it API-grade rather than just a web proxy.
Three extensions I install on every engagement:
- Param Miner. Discovers hidden parameters, headers, and JSON keys via guessing. Catches mass-assignment surface that does not appear in any spec.
- Hackvertor. Inline payload transformations (base64, JWT re-signing, custom encoders). Critical when the API wraps payloads in odd encodings.
- GraphQL Raider. Parses GraphQL operations, surfaces queries and mutations cleanly in Repeater, and helps build introspection probes.
What I like:
- The manual workflow is unmatched. Drop a request to Repeater, change one character, see the diff, repeat. For BOLA and broken object level authorization testing this is the entire game.
- Match-and-replace rules let you swap auth tokens, headers, or path segments across every request in the project. Excellent for two-account horizontal-privilege testing.
- The Pro scanner is genuinely useful on REST. Less useful on GraphQL, where you need GraphQL Raider plus manual work.
- Collaborator (Pro) is the only realistic out-of-band listener for blind SSRF and out-of-band injection in most environments.
What I do not like:
- Pro licence is around 500 USD per user per year. Worth it; do not pretend it is not money.
- Community is hobbled enough that for real engagements you need Pro.
- The UI is Java-heavy and slow on long sessions. Project files can balloon past a gigabyte during a multi-day API engagement.
- Scripting via the Montoya API works but is verbose compared to mitmproxy's Python addons.
When to use it. Always running in the background. Capture there, then export to other tools or stay in Repeater for the manual cases.
2. mitmproxy
Site: mitmproxy.org
Terminal-friendly intercepting proxy. Better than Burp for high-volume traffic and for mobile capture.
mitmproxy is an MIT-licensed intercepting HTTPS proxy with three front-ends: the terminal UI (mitmproxy), a web UI (mitmweb), and a headless scriptable mode (mitmdump). The killer feature for API work is the Python addon system: a fifty-line Python file can rewrite, log, fuzz, or replay traffic at full line-rate.
What I like:
- Handles thousands of requests per second without breaking a sweat. Burp slows visibly past a few hundred requests in a project; mitmproxy does not care.
- Python addons.
addons/auth-rewrite.pyto swap a JWT,addons/log-graphql.pyto extract every operation name,addons/fuzz-idor.pyto walk an integer parameter. Tight feedback loop with the rest of the Python tooling. - Mobile capture is straightforward. Install the mitmproxy CA on the device, point at the proxy, capture an entire app's API surface in minutes. Burp can do this; mitmproxy makes it pleasant.
- The flow file format (
.flow) is portable. Capture in mitmproxy, replay in mitmdump for fuzzing, export to Burp for manual.
What I do not like:
- No built-in scanner. mitmproxy is plumbing; the testing logic is your addon code or another tool downstream.
- The terminal UI has a learning curve. The web UI is a fine compromise.
- TLS interception requires installing the CA on the target device or trust store. Same as every other intercepting proxy, but worth saying.
When to use it. Mobile API engagements. High-volume traffic captures. Anywhere a scripted rewrite or replay is more useful than clicking. I run mitmproxy and Burp side by side: mitmproxy upstream for volume and scripting, Burp downstream for manual.
Typical addon skeleton:
from mitmproxy import http
def request(flow: http.HTTPFlow) -> None:
if "/api/" in flow.request.path:
flow.request.headers["Authorization"] = "Bearer " + new_token()3. OWASP ZAP
Site: zaproxy.org
The open-source alternative to Burp. First-class OpenAPI import, designed for CI/CD.
ZAP is OWASP's intercepting proxy and active scanner, Apache-licensed, Java-based. The API-specific path is the OpenAPI add-on plus the zap-api-scan.py baseline script: feed it a swagger.json or openapi.yaml and it imports every operation, populates parameters with seed values, and runs the active scan against the surface.
What I like:
- Free, open source. No licence procurement for a quick API check.
- OpenAPI import is the cleanest of any tool here. ZAP understands path parameters, request bodies, and security schemes from the spec.
zap-api-scan.pyis designed to run in CI. Exit codes, JSON reports, baseline diffing. Drops into a pipeline cleanly.- The Automation Framework (YAML-driven scan plans) is genuinely good for repeatable engagements.
What I do not like:
- The active scanner has more false positives than Burp Pro, especially on JSON APIs. Tune the policies or you will drown in noise.
- The UI is less polished than Burp. Workflows take more clicks.
- Slower than Burp Pro on equivalent active scans, in my measurements.
- Community plug-ins are thinner than Burp's. The good ones (OpenAPI, GraphQL) are first-party and solid.
When to use it. When the budget will not stretch to Burp Pro, or when the engagement requires open-source tooling, or when you have a clean OpenAPI spec and want a fast spec-driven scan. Excellent in CI.
4. kiterunner
Repo: github.com/assetnote/kiterunner
Content discovery, but specifically for APIs. Bruteforces routes from a giant Swagger/OpenAPI-derived wordlist.
Where ffuf and gobuster bruteforce URL paths with a generic wordlist, kiterunner ships a wordlist (routes.kite) built from millions of real-world Swagger and OpenAPI specs. It also sends the correct HTTP method, content-type, and a small body for each route, so endpoints that only respond to POST with a JSON body actually return signal instead of 405.
What I like:
- The
routes.kitewordlist is the differentiator. Hits routes a generic wordlist misses. - Per-route method and content-type. No more 404-on-everything because the endpoint expects POST.
- Output is greppable. Drops cleanly into a wider toolchain.
- Fast. Go runtime, sensible concurrency defaults.
What I do not like:
- Maintenance from Assetnote has been quiet for stretches. The wordlist is the value; the binary updates rarely.
- Configuration for auth-required APIs is awkward. You will end up with a static bearer token in a config file.
- High noise on shared infrastructure. Easy to trip rate limits and WAFs if you do not tune
--max-connection-per-host.
When to use it. Black-box API engagement with no spec, no Postman collection, and a domain you suspect has an undocumented surface. First thing I run after subdomain enumeration.
Typical command:
kr scan https://api.target.tld -w routes.kite --kitebuilder-list routes.kite -x 10 -j 1005. Postman and Hoppscotch
Sites: postman.com · hoppscotch.io

Not a security tool; the front-end that produces the request corpus your security tools replay.
Postman (proprietary, freemium) and Hoppscotch (MIT, web-first) are general-purpose API clients. On a security engagement their job is to give the client team a familiar way to hand over the working request corpus, which the security tooling then mutates and replays. A Postman collection plus a working environment is the cleanest possible engagement handoff.
What I like:
- Universal. Every backend team has a Postman collection somewhere.
- Environment variables make swapping accounts trivial. Two-account BOLA testing starts here.
- Postman collections export cleanly to Burp (Logger++ or the Postman extension), to mitmproxy (
mitmdump --rfile), and to ZAP via the OpenAPI export. - Hoppscotch is a credible open-source alternative when the org cannot install Postman.
What I do not like:
- Postman cloud sync is on by default. For sensitive engagements you must explicitly switch to local-only collections, or use Hoppscotch self-hosted.
- The "Newman" CLI is fine, but for security work
mitmdumpreplays are more flexible. - Postman is a security testing harness only if you wire it up that way; out of the box it is just a client.
When to use it. Engagement intake. Convert the client's Postman collection into your working request set, then run everything else against it.
6. jwt_tool
Repo: github.com/ticarpi/jwt_tool
The JWT-specific attack toolkit. Covers every documented JWT misuse in one binary.
Most API auth in 2026 is a JWT in an Authorization: Bearer header. jwt_tool covers the entire attack surface against JWTs: alg=none confusion, algorithm substitution (RS256 to HS256 with the public key as the HMAC secret), kid parameter path traversal, JKU/X5U injection, weak HMAC brute force, and timestamp manipulation.
What I like:
- One tool, every JWT attack. Saves writing the same Python helper for the tenth time.
- The tampering mode is interactive and forgiving. Easy to walk a client through what the token allows.
- The
-Cbrute-force mode is reasonable against weak HMAC secrets when you have a candidate wordlist. - Recognises common claim shapes (
sub,role,tenant_id) and prompts useful tampers.
What I do not like:
- The CLI is feature-dense and the flag set takes a session to get comfortable with.
- Brute-force mode is single-threaded Python. Slow against long secrets; reach for
hashcat -m 16500if you actually expect to crack. - Reporting is minimal. You will write the engagement note yourself.
When to use it. Any time the target API uses JWTs. First thing I run against a captured token is python3 jwt_tool.py <token> to fingerprint the algorithm and claims, then the specific attack modes for each.
7. graphql-cop and clairvoyance
Repos: github.com/dolevf/graphql-cop · github.com/nikitastupin/clairvoyance

GraphQL-specific. graphql-cop audits configuration; clairvoyance reconstructs schemas when introspection is disabled.
GraphQL endpoints have their own failure modes: introspection left enabled in production, field suggestions leaking schema shape, batching enabling brute force, queries accepted via GET, deeply-nested queries exhausting the resolver. graphql-cop runs a fast battery of these checks and reports findings cleanly.
Clairvoyance solves the other problem: when introspection is disabled, can the schema still be recovered? The answer is usually yes, because GraphQL error messages leak field-name suggestions ("Did you mean userName?"). Clairvoyance walks that suggestion oracle and rebuilds the schema, often near-completely.
What I like:
- graphql-cop is the fastest GraphQL triage tool. Thirty seconds gives you the configuration findings.
- Clairvoyance turns a "blackbox GraphQL endpoint with introspection disabled" engagement into a normal grey-box one.
- Both run cleanly in containers. Drop into a pipeline easily.
What I do not like:
- graphql-cop is configuration-only. It will not find application-layer GraphQL bugs (auth, BOLA, injection); that is the manual Burp/Repeater path with GraphQL Raider.
- Clairvoyance has a wordlist dependency; the result quality is proportional to the wordlist quality. The default is fine for common schemas.
When to use it. Every GraphQL engagement starts with graphql-cop. If introspection is disabled, clairvoyance comes next. Then manual testing in Burp.
8. 42Crunch and APIsec (commercial enterprise platforms)
Sites: 42crunch.com · apisec.ai
Commercial enterprise API security platforms. Honest framing: powerful, but the price tag is real and the value is non-obvious for small teams.
42Crunch is the OpenAPI-first contract enforcement play: lint the spec, score it for security posture, then run conformance and active scans against the deployed surface. APIsec leans further into autonomous testing, generating test cases from the API surface and running them continuously.
What I like:
- For organisations with hundreds of APIs and a real governance mandate, the OpenAPI contract enforcement is the only credible scalable answer. ZAP plus a Python wrapper does not scale to a thousand specs.
- Both integrate with CI/CD, IDE plugins, and API gateways. The shift-left story is real.
- The reporting is enterprise-grade. Useful for satisfying auditors and regulators.
What I do not like:
- Pricing is opaque and lands in the tens of thousands of dollars per year, climbing fast with API count. Not a hobby purchase.
- For a single product or a small surface, the same coverage falls out of Burp Pro plus ZAP plus a half-day of scripting at a fraction of the cost.
- Lock-in is real. The findings format, dashboards, and policies are platform-specific.
- Some of the active scan coverage is shallower than experienced manual testing in Burp. The platforms are wide, not deep.
When to use them. Mid-to-large organisations with an OpenAPI-first contract, a real API governance team, and a budget line item for API security. For everyone else, the open and Pro tooling above gives you 90 percent of the coverage at one percent of the price.
What I do not recommend
"All-in-one" API scanners that promise zero-config coverage
Several commercial scanners advertise zero-configuration API security: point at a hostname, get a full report. In practice the configuration is exactly where the value lives: auth tokens, environment variables, account separation for BOLA testing, spec import. A scanner that hides all of that produces shallow reports that miss everything specific to your application. Skip them.
Browser-extension "API testers" that sit between the page and the network
Useful for casual debugging, not for security work. They cannot intercept mobile traffic, they cannot replay at volume, they cannot script transformations, and they ship telemetry to the vendor by default. Burp, mitmproxy, and ZAP exist for a reason.
Tools I dropped from this year's list
- Astra. Open-source REST API scanner. The project went quiet years ago. ZAP plus the OpenAPI add-on covers the same surface, better maintained.
- NoSQLMap (for APIs). Useful for direct database injection, narrow for general API security. Covered in the SQL injection tools roundup instead.
- APIKit (Bishop Fox). Useful in its day; effectively superseded by kiterunner for route discovery.
Which tool should I use? (Decision tree)
A short flow for the common cases:
- Do you have an OpenAPI spec, Postman collection, or other inventory?
- Yes. ZAP for a fast spec-driven baseline scan, then Burp for manual depth.
- No. kiterunner for route discovery, then proxy a real client through Burp to capture the working corpus.
- Is the API behind a mobile or thick client?
- Yes. mitmproxy with the CA installed on the device, capture the entire surface, then route through Burp for manual work.
- Is the API GraphQL?
- Yes. graphql-cop for configuration. clairvoyance if introspection is disabled. Then Burp with GraphQL Raider for the manual auth and BOLA work.
- Does the API use JWTs?
- Yes. jwt_tool against a captured token, every time. Five minutes, often a finding.
- Is the engagement enterprise with hundreds of APIs and OpenAPI-first governance?
- Yes. 42Crunch or APIsec is in scope. Otherwise, the open and Pro tooling above is better value.
- Are you teaching someone the underlying mechanics?
- Manual first. Burp Repeater plus a deliberately vulnerable target (crAPI, VAmPI, OWASP Juice Shop's API surface). Tooling after they understand the API attack variants.
A note on the year stamp
I will refresh this list every twelve months. The slug stays stable (best-api-security-tools-2026 is a redirect target you can rely on; future years update the H1 and title). Tools added, dropped, and re-ranked here will appear in the next refresh with a short changelog at the top.
Where to go next
- API security attacks: variants, exploitation, and defence for the underlying mechanics
- Web application security vulnerabilities taxonomy for the broader map
- Server-side request forgery for the SSRF surface that often lives behind an API
- Best SQL injection tools in 2026 for the database-layer companion list
Sources
Authoritative references this article was fact-checked against.
- Burp Suite, PortSwiggerportswigger.net
- mitmproxy, official sitemitmproxy.org
- OWASP ZAP, official sitezaproxy.org
- kiterunner, Assetnotegithub.com
- jwt_tool, official repositorygithub.com
- graphql-cop, official repositorygithub.com










