Public API
Create an API key from your dashboard, then run scans programmatically.
Authentication
Pass your key as a bearer token on every request:
Authorization: Bearer vsk_...
POST /api/v1/scans
Enqueues a scan for the given URL. Returns immediately with a scan id.
curl -X POST https://visiscan.app/api/v1/scans \
-H "Authorization: Bearer vsk_..." \
-H "content-type: application/json" \
-d '{"url":"https://example.com"}'
# 202 Accepted
{"scanId":"cxyz123...","deduped":false}GET /api/v1/scans/:id
Polls a scan's status and returns the report once complete.
curl https://visiscan.app/api/v1/scans/cxyz123... \
-H "Authorization: Bearer vsk_..."
# while running
{"scanId":"cxyz123...","status":"QUESTIONING","emailRequired":false}
# once complete
{"scanId":"cxyz123...","status":"COMPLETE","emailRequired":false,"report":{...}}Quota
Each key has a monthly scan quota (visible on your dashboard). Requests past quota return429.