Request
Method:POSTPath:
/api/checkContent-Type:
application/json
Body parameters
The URL to analyze. Must be a string. The heuristics checker normalizes URLs, so the
http:// prefix is optional — bare hostnames and paths are accepted.Example requests
Response
On success the API returns200 OK with a ScanResult object.
Response fields
The original URL that was submitted for analysis.
Aggregate threat score from 0 to 100 (capped at 100). Higher values indicate greater risk.
Threat verdict based on the score:
"safe" if score < 40, "suspicious" if 40–69, "phishing" if ≥ 70.Array of human-readable explanations for the score. Empty for clean URLs.
Per-checker execution time in milliseconds. Keys correspond to checker names. See ScanResult schema for the full list of keys.
Example responses
- Safe
- Suspicious
- Phishing
Error responses
| Status | Condition | Response body |
|---|---|---|
400 Bad Request | url field is missing or not a string | {"error": "Missing 'url' in body"} |
429 Too Many Requests | Rate limit exceeded | {"error": "Too many requests from this IP, please try again later.", "limit": 100, "current": <number>} |
500 Internal Server Error | Unexpected error during analysis | {"error": "Server error", "detail": "<error string>"} |