CyberDict API

CyberDict 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://cyberdict.yanivhaliwa.com

Endpoints

MethodPathReturns
GET/api/termsThe terms, with optional filters
GET/api/statsTotals and counts by category

GET /api/terms

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

ParameterMeaning
qFree-text search across term, short_description and full_description.
categoryExact category match, e.g. Attack, Concept, Protocol, Tool, Methodology.
skill_levelExact skill level match.
curl -s "https://cyberdict.yanivhaliwa.com/api/terms?q=nmap"
{"terms":[{"id":362,"term":"1337 (Leet)","short_description":"Alternative alphabet ...", ...}],"total":359}

GET /api/stats

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

curl -s https://cyberdict.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 CyberDict is appreciated. The data is provided as-is with no warranty; verify anything security-critical against primary sources.