curl -X 'GET' \
'https://prod.visionapi.unsiloed.ai/parse/04a7a6d8-5ef7-465a-b22a-8a98e7104dd9' \
-H 'accept: application/json' \
-H 'api-key: your-api-key'
{
"job_id": "04a7a6d8-5ef7-465a-b22a-8a98e7104dd9",
"status": "Starting",
"created_at": "2025-10-22T06:51:16.870302Z"
}
Check the status and retrieve results of parsing jobs
curl -X 'GET' \
'https://prod.visionapi.unsiloed.ai/parse/04a7a6d8-5ef7-465a-b22a-8a98e7104dd9' \
-H 'accept: application/json' \
-H 'api-key: your-api-key'
{
"job_id": "04a7a6d8-5ef7-465a-b22a-8a98e7104dd9",
"status": "Starting",
"created_at": "2025-10-22T06:51:16.870302Z"
}
curl -X 'GET' \
'https://prod.visionapi.unsiloed.ai/parse/04a7a6d8-5ef7-465a-b22a-8a98e7104dd9' \
-H 'accept: application/json' \
-H 'api-key: your-api-key'
{
"job_id": "04a7a6d8-5ef7-465a-b22a-8a98e7104dd9",
"status": "Starting",
"created_at": "2025-10-22T06:51:16.870302Z"
}
Starting
Processing
Succeeded
Failed
import requests
import time
def poll_parse_job(job_id, api_key, max_wait_time=300, poll_interval=5):
"""Poll a parsing job until completion or timeout"""
start_time = time.time()
headers = {"api-key": api_key}
while time.time() - start_time < max_wait_time:
response = requests.get(
f"https://prod.visionapi.unsiloed.ai/parse/{job_id}",
headers=headers
)
if response.status_code == 200:
job = response.json()
if job['status'] == 'Succeeded':
return job
elif job['status'] == 'Failed':
raise Exception(f"Job failed: {job.get('message', 'Unknown error')}")
elif job['status'] in ['Starting', 'Processing']:
print(f"Job status: {job['status']} - waiting...")
time.sleep(poll_interval)
else:
print(f"Unknown status: {job['status']}")
time.sleep(poll_interval)
else:
print(f"Error checking status: {response.status_code}")
time.sleep(poll_interval)
raise Exception("Job polling timed out")
# Usage
try:
result = poll_parse_job("04a7a6d8-5ef7-465a-b22a-8a98e7104dd9", "your-api-key")
print("Job completed successfully!")
print(f"Total chunks: {result['total_chunks']}")
except Exception as e:
print(f"Error: {e}")
The unique identifier of the parsing job to check
Job status retrieved successfully
Unique identifier for the parsing job
Current job status: Starting, Processing, Succeeded, or Failed
Timestamp when the job was created
Timestamp when processing started
Timestamp when processing completed
Number of chunks in the document
Array of document chunks with detailed analysis