Esc

API reference

Retrieve a scan

GET/v1/scans/{id}

Returns a scan’s status and, once it has completed, its result with the checks that were asked for.

Read the scan at its links.self, which includes those checks. complete becomes true when the scan has failed, or has completed with every slow source in. Until then, the Retry-After header says when to read it again.

Credits

Free.

Request

cURL
curl "https://api.checkanysite.com/v1/scans/0b5a7a6e-1f7e-4d7c-9a4e-2f0d8b1c6a11?checks=ai" \
  -H "Authorization: Bearer $CHECKANYSITE_API_KEY"
Python
from checkanysite import CheckAnySite

client = CheckAnySite()  # Reads the key from CHECKANYSITE_API_KEY.

scan = client.scans.retrieve(
    "0b5a7a6e-1f7e-4d7c-9a4e-2f0d8b1c6a11", checks=["ai"]
)
JavaScript
const url = 'https://api.checkanysite.com/v1/scans/0b5a7a6e-1f7e-4d7c-9a4e-2f0d8b1c6a11?checks=ai';
const response = await fetch(url, {
  headers: {
    Authorization: `Bearer ${process.env.CHECKANYSITE_API_KEY}`,
  },
});
const scan = await response.json();

Parameters

  • idstringrequiredpath

    The scan’s id, returned by POST /scans.

  • checksstringquery

    The checks the scan was asked for; links.self includes them.

    One of: ai, readiness, popularity, tech, dns, trust, summary, history.

Response

StatusBodyWhen
200 OKScanThe scan as it is now.
Response 200: A completed scan
{
  "id": "0b5a7a6e-1f7e-4d7c-9a4e-2f0d8b1c6a11",
  "domain": "wikipedia.org",
  "checks": [
    "ai"
  ],
  "status": "completed",
  "createdAt": "2026-11-10T09:30:00.000Z",
  "finishedAt": "2026-11-10T09:30:06.000Z",
  "complete": true,
  "failure": null,
  "result": {
    "domain": "wikipedia.org",
    "checks": [
      "ai"
    ],
    "scanId": "0b5a7a6e-1f7e-4d7c-9a4e-2f0d8b1c6a11",
    "scannedAt": "2026-11-10T09:30:06.000Z",
    "complete": true,
    "pending": [],
    "limited": null,
    "finalUrl": "https://www.wikipedia.org/",
    "resultUrl": "https://checkanysite.com/site/wikipedia.org?focus=ai",
    "versions": {
      "signatures": "0.6.1",
      "score": "1.1"
    },
    "ai": {
      "level": "none",
      "builders": [],
      "patterns": []
    },
    "readiness": null,
    "popularity": null,
    "tech": null,
    "dns": null,
    "trust": null,
    "score": null,
    "summary": null,
    "history": null,
    "notes": []
  },
  "links": {
    "self": "https://api.checkanysite.com/v1/scans/0b5a7a6e-1f7e-4d7c-9a4e-2f0d8b1c6a11?checks=ai",
    "result": "https://checkanysite.com/site/wikipedia.org?focus=ai"
  }
}
  • idstring

    The scan’s id.

  • domainstring

    The domain scanned.

  • checksarray of one of: ai, readiness, popularity, tech, dns, trust, summary, history

    The checks its result holds: those asked that the scan answers.

  • statusstring

    Where it is: queued, running, completed or failed.

    One of: queued, running, completed, failed.

  • createdAtdate-time

    When it was asked for.

  • finishedAtdate-time or null

    When it finished; null while it runs.

  • completeboolean

    True once the scan failed, or completed with every slow source in.

  • failureobject or null

    Why the scan couldn’t finish; null unless status is failed.

  • resultobject or null

    The result once status is completed.

  • linksobject

    Where to poll the scan, and where its result is shown.

Once completed, result holds the site’s result, as on the result object.

Errors

StatusCodeWhat happened
404scan_not_foundScan not found
410scan_expiredScan expired
400invalid_parameterInvalid parameter
401missing_api_keyNo API key
401invalid_api_keyUnknown API key
401revoked_api_keyRevoked API key
401expired_api_keyExpired API key
429rate_limitedToo many requests
500internal_errorInternal error