CyberTools API

CyberTools exposes a small public JSON API so the dataset can be queried from a script, a terminal or an AI agent. No API key, no account, no signup. Base URL: https://cybertools.yanivhaliwa.com

Endpoints

MethodPathReturns
GET/api/toolsThe tools, with optional filters
GET/api/statsTotals and counts by category

GET /api/tools

Returns matching tools ordered by name. All parameters are optional and combine with AND.

ParameterMeaning
qFree-text search across name and descriptions.
categoryExact category match, e.g. Exploitation, Post-Exploitation, Recon.
tagExact action tag, e.g. scanner, bruteforce, enumeration.
osFilter by supported operating system.
limitMaximum number of records to return.
curl -s "https://cybertools.yanivhaliwa.com/api/tools?q=nmap"
{"tools":[{"id":103,"name":"1password2john","short_description":"1Password vault cracker", ...}],"total":594}

GET /api/stats

Totals and per-category counts. Useful for checking the dataset size before pulling it.

curl -s https://cybertools.yanivhaliwa.com/api/stats

Rate limits

20 requests per 10 minutes per IP address. Exceeding the limit returns HTTP 429 with a Retry-After: 600 header and a JSON body. Honour the header and back off; do not parallelise around the limit. Responses are cached for 5 minutes (Cache-Control: public, max-age=300), so repeating an identical query is cheap.

Errors

Errors are always JSON, never an HTML page:

{"error":"Too many requests. Please try again later."}

Unknown paths under /api/ return HTTP 404 with a JSON body listing the available endpoints.

Notes for agents

Terms

Free to use, including in AI systems and derived tools. Attribution to CyberTools is appreciated. The data is provided as-is with no warranty; verify anything security-critical against primary sources.