Get an audit run's report
Fetch summarized report data for a completed run
/ v1 / agent-runs / {id} / report Fetch the summarized report data for a completed run. **Polling pattern:** this endpoint returns `404` both when the run/report does not exist AND while a valid run's report is not generated yet. To distinguish the two, poll `GET /v1/agent-runs/{id}` and wait for `status: "completed"` before fetching the report — that is the canonical way to track progress. As a convenience, the "not ready yet" 404 additionally carries the run's current status under `error.runStatus` (e.g. `{ "error": { "code": "NOT_FOUND", "message": "Report not available yet", "runStatus": "running" } }`), so a client can keep polling this endpoint alone if it prefers. **Footgun:** only keep polling while `error.runStatus` is a non-terminal state (`pending`/`running`); a `404` with `error.runStatus: "completed"` (or `"failed"`/`"cancelled"`, or a `404` with NO `error.runStatus` at all) means the report is genuinely missing/unavailable — stop polling.
Path parameters
id string required Audit run id.
Responses
Report summary + scored issues for the run.
report object required curl --request GET \
--url "https://api.squirrelscan.com/v1/agent-runs/ID/report"{
"report": {
"id": "<string>",
"url": "<url>",
"visibility": "public",
"siteKey": "<string>",
"baseUrl": "<url>",
"timestamp": "2023-11-07T05:31:56Z",
"totalPages": 123,
"failed": 123,
"warnings": 123,
"passed": 123,
"healthScore": {},
"categories": [],
"topIssues": [],
"history": []
}
}