Enrichment Status
After submitting an enrichment job via /api/v1/enrichment/submit/, use the Status endpoint to track the job through the pipeline. Status responses are scoped to the authenticated user — only jobs the requesting user owns are visible.
Overview
Base URL
| Environment | URL |
|---|---|
| Production | https://<host>/api/v1/enrichment/status/... |
| Staging | https://test.ecoreservice.com/backend/api/v1/enrichment/status/... |
Authentication
Bearer API token in the Authorization header — same as Submit.
Authorization: Bearer <your_token>
Status Endpoints
Get Status For a Single Job
Endpoint: /api/v1/enrichment/status/<job_id>/
Method: GET
Description: Returns the current status of a single job by its job_id.
Example cURL Request
curl --location --request GET 'https://test.ecoreservice.com/backend/api/v1/enrichment/status/9f3e7a2b-7c1d-4f12-8c9a-1b2c3d4e5f60/' \
--header 'Authorization: Bearer YOUR_API_TOKEN'
Successful Response
{
"job_id": "9f3e7a2b-7c1d-4f12-8c9a-1b2c3d4e5f60",
"status": "in-progress",
"submitted_at": "2026-05-06T14:23:11Z",
"updated_at": "2026-05-06T14:25:42Z"
}
List All Jobs for the Current User
Endpoint: /api/v1/enrichment/status/
Method: GET
Description: Returns the authenticated user's enrichment jobs, newest first.
Example cURL Request
curl --location --request GET 'https://test.ecoreservice.com/backend/api/v1/enrichment/status/' \
--header 'Authorization: Bearer YOUR_API_TOKEN'
Status States & API Mapping
Internal status values are mapped to a stable, user-facing vocabulary on the status endpoint:
| Internal Status | API Status |
|---|---|
| Uploading | queued |
| Draft | queued |
| Enrichment Started | in-progress |
| Enrichment Completed | completed |
| Enhancement Completed | completed |
| Failure | failed |
| Upload Failed | failed |
| Paused | paused |
Polling Guidance
- Poll every few seconds for small jobs.
- Poll every 15–30 seconds for large jobs.
- Stop polling when status is
completed,failed, orpaused. - Once
completedorpaused, fetch enriched data from the Results endpoint. - A
pausedstatus can be resumed via/api/v1/enrichment-control/.
Error Responses
| HTTP | When | Body |
|---|---|---|
| 401 | Missing or invalid Bearer token | { "message": "Invalid or expired token" } |
| 404 | job_id not found for the caller | Standard DRF error envelope |
| 500 | Unexpected server-side failure | Standard DRF/Django error envelope |
Try It Out
Explore the Status endpoint in the API Playground (password: EluuEz0J).