2 Check Validation Status
▶Step 2: Check Validation Status
Poll the ingestion task summary to track validation progress.
Continue polling until overall_status is staged (validation complete).
▶What this step does
It reads a compact roll-up of the task: the overall_status, per-status
entity counts (by_status), and the confidence breakdown
(by_confidence_level). It does not return the entities themselves —
just enough to answer "is validation done yet, and how did it go?" You
call it repeatedly (every 5–10s) until overall_status reaches staged.
▶Why it's needed
Validation is asynchronous — the upload in Step 1 returns immediately with
the task in pending, and the file is parsed, normalised, and scored in
the background. You cannot fetch validated assets or run metrics until
that finishes, so this poll is the gate: it tells you when the task has
moved pending → staging → staged and is ready for Step 3. Reading the
summary rather than the full asset list keeps the poll cheap on every
iteration.
▶Why the /summary endpoint (vs the full asset read)
The summary is deliberately lightweight — counts and status only — so it
is the right call to hammer in a poll loop. Use the full
GET /ingestions/assets/:id read (Step 3) once, after staged, when you
actually want the entity rows and their assessment values.
▶Request
GET /ingestions/:id/summary
▶Frontend Usage
- Progress bar: Use
by_statusto show validation progress- Progress % =
staged / total× 100
- Progress % =
- Status badge: Show
overall_status(pending, staging, staged) - Poll interval: Every 5–10 seconds until
overall_status === "staged" - Confidence breakdown: Show a summary table or chart of high/medium/low counts
▶Summary Table
| Status | Count |
|---|---|
| Pending | by_status.pending |
| Staged | by_status.staged |
| Confidence | Count |
|---|---|
| High | by_confidence_level.high |
| Medium | by_confidence_level.medium |
| Low | by_confidence_level.low |
▶Task Status Progression
pending → staging → staged
▶Next Step (when staged)
→ Step 3: Get Validated Assets (GET /ingestions/assets/:id)