A file job's status, progress, counts per step and, once it has finished, the links to its result.
The job a submission created, read by the id it answered with,
job_ and 24 letters and digits. status is queued, running, succeeded or failed;
only the last two are final. progress counts the rows processed out of total_rows, and
partial_rows the rows among them written without a conclusive answer: a search or a read
still cut short by its time budget after the job tried it again. Each is also counted under
its status in counts, and marked true in the result's firmus_partial column, so a
not_found there may only mean "not found in time": submit those rows again.
counts holds, per step, the statuses answered so far: resolve (matched, ambiguous,
not_found, invalid) and enrich (enriched, ambiguous, not_found, invalid,
not_processed), with null for a step the job does not run. agent_rows is what the job
has counted against the month's allowance so far, per step.
A segment export is a job too, of operationsegment_export: its counts.segment_export holds exported, withheld and not_found,
exported_rows what it has counted against the month's exported rows, and segment the
segment it was admitted from. On every other job both are null.
result_url and download_url are null until the job has finished, succeeded or
failed. result_url needs your key; download_url needs none and expires with the job, at
expires_at. A failed job's result holds the rows it answered before it stopped, its first
progress.processed_rows lines, and error says so: submit the lines after them again. All timestamps are UTC; started_at and finished_at are null until they happen.
A job of another organization, a job past expires_at, an id that never existed and one
that is not a job id at all are each 404 not_found, and cannot be told apart. Reading a job is not counted as a call, but the plan's
requests per second apply: leave a few seconds between reads. On Free, it is refused with
402 quota_exceeded once the month's 1 000 lookups are spent.
A job's status (`queued`, `running`, `succeeded`, `failed`), its progress in rows, the statuses each step has answered so far, the agent rows counted, and, once it has finished, `result_url` (the result, with a key) and `download_url` (the same CSV behind a signed link that needs no key, valid until `expires_at`). Not counted as a call. A job of another organization, or past its retention, is 404.