Returns the current state of a previously-queued insight report, read entirely from our stored report record by id scoped to the store. This is a pure DB read — it never calls ReviewData and never consumes usage. The completed result is delivered out-of-band by the INSIGHT_REPORT_RESULT webhook; the UI polls this endpoint while status is pending/queued/processing until it becomes complete or failed.
Auth: Both — authentication; store_id validated by an ownership check (auth-company-tree walk), and the lookup further requires the report row's store_id to match. A Partner can poll any report under a store in its sub-tree; an Account only reports for its own stores. (report_id alone is not enough — it is filtered by the scoped store_id.)
Rate limit: No rate limit.
Request
- Body (all top-level, JSON):
| Field | Type | Required | Notes |
|---|---|---|---|
store_id | integer | yes | Must be an existing location inside your own account tree. |
report_id | integer | yes | Must be an existing insight report. Must belong to the given store_id or the call 404s (insight_report_not_found). |
Response — { data. } envelope, HTTP 200. Same present payload as the other endpoints (without the submit-only quota fields):
insight_report_id(integer)store_id(integer)review_site_id(integer|null)publisher(string)year(integer)month(integer|null)theme(string)status(string) —pending|queued|processing|complete|failed.task_id(string|null) — RD task id.review_count(integer|null)result_summary(object|null) — populated by the webhook on completion.failure_reason(string|null)failure_details(object|null)completed_at(string|null) — ISO-8601.
Returns 404 (insight_report_not_found) when the report does not exist for this store.
Errors: 422 on validation failure.
| Time | Status | User Agent | |
|---|---|---|---|
Retrieving recent requests… | |||
