Get report status
Poll the small status response while analysis is running, or reconcile a delayed webhook with the current attempt.
Before you call
Use the reportId returned by preparation or admission. Keep polling infrequent enough to respect your read limit.
Required scope: reports:read.
What happens next
queued and processing mean wait. completed means retrieve the result; requires_action means review in the app; failed means inspect code. attemptId is null before admission and can be null for legacy reports.
Recovery
Compare the event attemptId with the current one before updating your records. Worker retries keep the attempt ID; a newly admitted run changes it. Do not infer failure from elapsed time alone.
Follow the complete workflow · Errors and retries
ApiKeyAuthorizationBearer <token>id*stringResource ID returned by this resource's creation or list endpoint. See prerequisites for whether this is a report, interview, job, or batch ID.
1 <= length <= 100queued and processing mean wait. completed means retrieve the result; requires_action means review in the app; failed means inspect code. attemptId is null before admission and can be null for legacy reports.
application/json- response
data*# Set PROBB_URL and PROBB_API_KEY. Replace RESOURCE_ID if present.curl --fail-with-body -X GET "$PROBB_URL/api/v1/reports/RESOURCE_ID/status" \ -H "Authorization: Bearer $PROBB_API_KEY"{ "data": { "id": "report_example", "status": "completed", "attemptId": "attempt_example", "code": null, "reportSystemVersion": "assigned-report-version" }}