---
title: "Poll a Deep Site Audit"
method: GET
path: "/site-audit/{job_id}"
tags: ["Deep Site Audit"]
---

# Poll a Deep Site Audit

`GET /site-audit/{job_id}`

## Request

- Base URL: `https://seoscoreapi.com` (the document declares no server; this is the origin it was published from)
- URL: `https://seoscoreapi.com/site-audit/{job_id}`
- Auth: none declared. Required headers: `X-API-Key`

Status of a Deep Site Audit: `queued` (with `queue_position` and
`eta_seconds`), `running` (with `progress` 0-100 and `stage`), `completed`
(with `result`) or `failed` (with `error`). Poll every 5-10 seconds. Only the
key that started a job can read it.

## Path parameters

- `job_id` string, required

## Headers

- `X-API-Key` string, required

## Response `200`

Job state. `result` is present once `status` is `completed`.

- unknown

## Other responses

- `401`: Missing or invalid API key.
- `404`: Unknown job, or a job started by a different key.
- `422`: Validation Error
- `429`: Rate limit, monthly quota, or queue backpressure. Honour `Retry-After`.
- `503`: Engine temporarily unavailable. Retry after `Retry-After` seconds.

---

[API](https://skmtc.dev/seoscoreapi/apis/seo-score-api.md) · [All operations](https://skmtc.dev/seoscoreapi/apis/seo-score-api/llms.txt) · [OpenAPI document](https://skmtc.dev/seoscoreapi/apis/seo-score-api/revisions/877a3044b5be?raw)
