Integrate phishing detection into your apps, bots, or security pipelines. Free tier: 500 requests/day.
| Plan | Price | Daily Limit | Webhooks | Support |
|---|---|---|---|---|
| Free | ₹0 | 500 req/day | Up to 3 | Community |
| Pro | Coming soon | 50,000 req/day | Up to 20 | |
| Enterprise | Contact us | Unlimited | Unlimited | Priority |
API keys require a verified PhishGuard account — this keeps free-tier access from being handed out anonymously.
Analyze a URL (replace YOUR_KEY):
Python example:
Submit a URL and receive a phishing risk score along with the signals that contributed to it, in JSON.
Fetch the full result of a previously submitted scan using its report ID.
Retrieve a paginated list of your account's previous scan requests and their results.
All endpoints accept and return JSON. See the field reference below for request parameters and response shape.
Every response includes rate-limit headers showing your remaining quota and reset time, so you can build backoff logic into your integration.
Standard HTTP status codes are used throughout — 429 for rate limits, 401 for invalid API keys, 400 for malformed requests.
Webhook payloads are signed so you can verify they genuinely came from PhishGuard before acting on them.
POST/api/analyze-url
Analyze a URL for phishing. Returns risk level, score, and detailed breakdown.
POST/api/check-ssl
Check SSL certificate validity and details for a domain.
POST/api/dns-lookup
Get DNS records (A, AAAA, MX, NS, TXT, CNAME), SPF and DMARC presence.
POST/api/expand-link
Trace redirect chain of a shortened/redirect URL.
POST/api/ip-reputation
Get geolocation and proxy/hosting reputation for an IP or domain.
POST/api/website-age
Check domain registration age via WHOIS.
GET/api/developer/usage
Check your API key usage stats.
POST/api/webhooks
Register a webhook to receive alerts when HIGH or SUSPICIOUS URLs are detected.
DELETE/api/webhooks/{id}
Remove a webhook.
Register a webhook to get notified whenever PhishGuard detects a HIGH or SUSPICIOUS URL. We'll POST to your URL with a signed payload.
Verify webhook authenticity using the X-PhishGuard-Signature header:
Example webhook payload:
| Endpoint | Limit |
|---|---|
/api/analyze-url | 30 req/min |
/api/check-ssl | 20 req/min |
/api/dns-lookup | 20 req/min |
/api/expand-link | 30 req/min |
/api/ip-reputation | 20 req/min |
/api/website-age | 20 req/min |
| All endpoints | 200 req/hour global |
HTTP 429 is returned when limits are exceeded. Retry after the indicated time.