Developers
API reference · v1
JSON over HTTPS. Errors return {error: {code, message, request_id}} with stable codes such as invalid_input, private_target and rate_limited. Anonymous scans are rate-limited per client.
/api/v1/scansCreate a scan. Body: {"input": "example.com"}. Returns 202 with a scan id; the scan runs asynchronously.
/api/v1/scans/{id}Scan status, component progress and summary. Add ?full=1 for the full report.
/api/v1/scans/{id}/findingsPaginated checks. Filters: status, category, severity, page, per_page.
/api/v1/scans/{id}/reportComplete immutable report snapshot as a JSON download.
/api/v1/websites/{domain}/historyCompleted scans for a domain, newest first.
/api/v1/scans/compare?before=&after=New, resolved and persistent issues plus score changes.
/api/v1/domains/verifyGet ({domain}) or check ({domain, check: true}) the DNS TXT ownership proof.
/api/v1/requestsSubmit a repair, rebuild or Voice-First request.
/api/v1/healthService health and versions.
curl -X POST https://www.zapweb.ai/api/v1/scans \
-H "content-type: application/json" \
-d '{"input":"example.com"}'
# → {"id":"…","status":"running","links":{"self":"/api/v1/scans/…"}}