API docs
Scan any URL programmatically
A tiny REST API for queueing scans and reading results. Free tier: 3 scans per hour per IP. Authenticated tier with higher limits — contact support.
Base URL
https://agentfix.proAll endpoints return JSON. Errors include an error string and a meaningful HTTP status.
Queue a scan
POST
/api/scanRequest body:
{
"url": "https://example.com"
}Response (202 Accepted):
{
"scan_id": "94f1dbdd-666d-44c9-b5f1-a215e81d1512",
"status": "queued"
}Use the returned scan_id with the next endpoint. Rate limit applies per IP.
Fetch scan result
GET
/api/scan/{scan_id}Response (when complete):
{
"scan_id": "94f1dbdd-...",
"status": "done",
"grade": "A",
"pass_count": 32,
"total_count": 34,
"domain": "example.com",
"results": [
{
"id": "llms_txt_exists",
"category": "discoverability",
"status": "pass",
"title": "llms.txt file present",
"description": "...",
"fix_summary": "..."
}
],
"share_url": "https://agentfix.pro/r/94f1dbdd-..."
}Statuses progress: queued → running → done or failed. Poll every 2–3 seconds. Most scans finish under 60 seconds.
OpenAPI spec
Machine-readable spec for the public endpoints lives at /openapi.json. Pipe it into any OpenAPI client (Stainless, Speakeasy, Postman) to generate language-specific SDKs.
cURL example
# 1. Queue
curl -s -X POST https://agentfix.pro/api/scan \
-H "Content-Type: application/json" \
-d '{"url":"https://example.com"}'
# → {"scan_id":"...","status":"queued"}
# 2. Poll
curl -s https://agentfix.pro/api/scan/<scan_id>
# → {"status":"done","grade":"A", ...}Limits & errors
429— rate limit hit (3/hour/IP free tier). Wait or request a paid key.400— invalid URL (must behttps://and resolvable).404— scan_id unknown.500— scanner crashed; auto-retried. If persistent, email support.