Urlyze API
Submit URLs for full forensic scanning, poll the verdict, pivot-search fingerprints across scans, and export IOC feeds — everything the Urlyze platform does, over a simple JSON API.
Base URL: https://api.urlyze.io · Authentication:
X-Api-Key header (details).
Quickstart
1. Submit a URL
curl -X POST https://api.urlyze.io/UrlCheck \
-H "Content-Type: application/json" \
-H "X-Api-Key: YOUR_API_KEY" \
-d '{"url": "https://example.com"}'
If the URL was scanned recently you get an instant 200 with the completed
result (a cache hit costs no quota). Otherwise you get a 202:
{ "analyzeId": "3f6c0f2e-…", "scanState": "queued" }
2. Poll the result
curl https://api.urlyze.io/UrlCheck/3f6c0f2e-… \
-H "X-Api-Key: YOUR_API_KEY"
scanState moves through queued → running →
completed (or failed). Poll every few seconds; most scans
finish well under a minute. On completion the result object carries the
verdict, per-engine details, explanation and guidance:
{
"analyzeId": "3f6c0f2e-…",
"scanState": "completed",
"result": {
"verdict": "Clean",
"explanation": "…",
"verdictGuidance": {
"headline": "…",
"whatThisMeans": "…",
"recommendedAction": "…"
}
}
}
3. Read the verdict
| Verdict | Meaning |
|---|---|
| Clean | No malicious or suspicious signals found. |
| Suspicious | Signals that warrant caution, below the malicious threshold. |
| Malicious | Confirmed malicious signals (phishing, malware delivery, scams). |
| Unknown | The page could not be assessed. |
| AntiBotChallenged | The site presented an anti-bot challenge; content behind it was not fully assessed. |
What else is in the API
Pivot search
Search scans by domain, IP, ASN, favicon hash, script hash, JARM, certificate and ~25 more pivots.
Screenshots
Fetch the rendered page screenshot captured during a scan.
IOC feeds
Tenant IOC exports as JSON, STIX 2.1, or firewall-ready EDL text lists.
Usage
Live quota and rate-limit status for your workspace.
The complete endpoint catalogue with schemas and try-it-out lives in the API Reference.