GET
/Report/Status
When to Use
- Monitor the progress of long-running report generation processes
- Determine when report results are ready for retrieval
- Check for errors or failures in report processing
- Implement polling mechanisms for automated report management systems
Common Scenarios
- Status Polling: Use Reference GUID to check report processing status with 30-second intervals
- Automated Workflows: Implement status checks in batch processing systems
- Error Detection: Monitor for processing failures and implement retry logic
- Progress Tracking: Build user interfaces showing real-time report generation progress
- System Integration: Coordinate report generation with downstream processing systems
Prerequisites
- Valid Bearer token with report access permissions
- Reference GUID obtained from the POST /Report endpoint
- Understanding of the three possible status values: incomplete, complete, error
- Appropriate polling intervals to avoid excessive API calls
Considerations
- Implement reasonable polling intervals to avoid overwhelming the API
- Handle all three status states appropriately in your application logic
- Consider implementing exponential backoff for long-running reports
- Monitor for error states and implement appropriate retry mechanisms
- Status remains accessible even after report completion until deletion
Description
Checks the current processing status of a report request using the reference GUID. This endpoint returns one of three possible status values: "incomplete" (still processing), "complete" (ready for retrieval), or "error" (failed processing). The result property will be true only when the status is "complete". Use this endpoint to monitor report progress before attempting to retrieve results via the GET /Report endpoint.
Status Values
Report status indicates processing stage:
- incomplete: Report is queued or currently being generated
- complete: Report generation finished successfully, results available
- error: Report generation failed, check message for details
⚠️ Important: Polling Best Practices
Implement appropriate polling intervals (5-30 seconds) to avoid rate limiting. Complex reports may take several minutes to complete.
Required Headers - See Authentication
Header | Value | Description |
---|---|---|
Authorization | {accessToken} | Bearer token for API access |
Version | 2.0 | API version identifier |
Query Parameters
Parameter | Type | Required | Description |
---|---|---|---|
reference |
string | The GUID reference returned from the POST /Report endpoint to check the status of the specific report request. |
reference
The GUID reference returned from the POST /Report endpoint to check the status of the specific report request.
Example Requests
bash
# Check report status
curl -X GET "https://api.7g.com.au/Report/Status?reference=a1b2c3d4-e5f6-7890-abcd-ef1234567890" \
-H "Authorization: {accessToken}" \
-H "Version: 2.0"
# Polling script with timeout
#!/bin/bash
REFERENCE="a1b2c3d4-e5f6-7890-abcd-ef1234567890"
MAX_ATTEMPTS=60 # 5 minutes with 5-second intervals
for i in $(seq 1 $MAX_ATTEMPTS); do
STATUS=$(curl -s -X GET "https://api.7g.com.au/Report/Status?reference=$REFERENCE" \
-H "Authorization: {accessToken}" \
-H "Version: 2.0" | jq -r '.data')
echo "Attempt $i: Status = $STATUS"
if [ "$STATUS" = "complete" ]; then
echo "Report ready for download"
break
elif [ "$STATUS" = "error" ]; then
echo "Report generation failed"
break
fi
sleep 5
done
Response Examples
json
{
"result": true,
"message": "Report has been successfully completed!",
"data": "complete"
}