AIScan · Public API

Scan API

Programmatic endpoint for AI-readiness scans. Send a URL, get back the full report — score, grade, detected platform, and per-check remediation. Free, rate-limited to 5 requests/min per IP (add a Bearer API key to lift the limit).

GET POST https://aiscan.site/api/public/scan

Try it

Opens the JSON response in your browser.

Parameters

NameInTypeDescription
urlquery / bodystring (required)Full http(s):// URL of the site to scan.
Authorizationheaderstring (optional)Bearer ask_… API key. Bypasses the per-IP rate limit. Generate one at /profile.

Examples

GET

curl 'https://aiscan.site/api/public/scan?url=https://example.com'

POST (JSON)

curl -X POST https://aiscan.site/api/public/scan \
  -H 'Content-Type: application/json' \
  -d '{"url":"https://example.com"}'

With API key

curl 'https://aiscan.site/api/public/scan?url=https://example.com' \
  -H 'Authorization: Bearer ask_YOUR_KEY'

Response shape

{
  "url": "https://example.com",
  "overallScore": 78,
  "level": 4,
  "levelName": "Interactive",
  "platform": { "platform": "nextjs", "confidence": 0.92 },
  "checks": [
    {
      "id": "D1",
      "dimension": "discoverability",
      "title": "robots.txt present & sane",
      "status": "pass",
      "remediation": "...",
      "fixGuide": { "steps": [ /* ordered fix steps with code */ ] }
    }
    /* ...more checks */
  ],
  "shareId": "a4f2k9pz",
  "shareUrl": "https://aiscan.site/r/a4f2k9pz"
}

Grades: 90–100 A · 75–89 B · 60–74 C · 40–59 D · 0–39 F.

Rate limits & errors

200Success — full ScanResult JSON with shareId / shareUrl.
400Missing or invalid url parameter.
429Rate limit exceeded (5 req/min per IP). Includes Retry-After.
500Scan failed — error message in { "error": "..." }.

For AI agents

Plug AIScan into Claude, Cursor, or any MCP-aware agent: