← Back to schema index

ValidationImportJob

JSON:API resource for a bulk validation import job and its execution state.

ExtendsJsonApiResourceBase

Properties

FieldTypeDescription
typestringJSON:API resource type. Always `validation_import`.
idstringNumeric job ID as a string (JSON:API convention).
attributesobjectImport job data.
statusstringCurrent state — `pending`: Received and awaiting parsing; `parsing`: Extracting and validating rows; `preview_ready`: Parsing complete and awaiting review; `committing`: Processing the approved rows; `completed`: All rows processed; `failed`: Unrecoverable error; `cancelled`: Job cancelled by the user.
upload_typestringInput mode: `text` for structured or free-form data; `images` for receipt images.
file_formatstringFormat of the uploaded file (`csv`, `xls`, `xlsx`, `txt`, `json`, `zip_text`, or `zip_images`).
parse_modestringFile reading mode — `template`: Follows the canonical headers; `free`: Free-form, the system infers the structure.
total_rowsintegerNumber of rows extracted from the file.
plan_capobjectThe plan's bulk-import cap (`bulk_validations_max`, per batch) compared against `total_rows`, to warn in the preview before confirming actually rejects the batch with `422` `plan_cap_exceeded`.
maxintegerThe active plan's rows-per-batch cap.
exceededboolean`true` when `total_rows` already exceeds `max`.
valid_countintegerNumber of rows without errors, ready to be committed.
correctable_countintegerNumber of rows with errors that can be corrected.
fatal_countintegerNumber of rows that cannot be processed with their current data.
duplicate_countintegerNumber of rows detected as duplicates within the job.
dispatched_countintegerRows submitted for validation after job confirmation.
completed_valid_countintegerRows whose validation ended in `valid`.
completed_not_found_countintegerRows whose validation ended in `not_found`.
completed_invalid_countintegerRows whose validation ended in `invalid`.
completed_cep_unavailable_countintegerRows whose validation ended in `cep_unavailable`.
completed_returned_countintegerRows whose validation ended in `returned` (the transfer was settled and later returned).
completed_error_countintegerRows whose validation ended in `error` or `failed`.
skipped_countintegerNumber of rows skipped while the job was running.
ocr_invokedboolean`true` when OCR was used during parsing. Only relevant when `upload_type` is `images`.
ocr_input_tokensintegerInput tokens accumulated by job OCR. It is `0` when `ocr_invoked` is `false`.
ocr_output_tokensintegerOutput tokens accumulated by job OCR. It is `0` when `ocr_invoked` is `false`.
error_codestring | nullStable code of the job failure. `null` when it did not end in `failed`.
error_summarystring | nullReadable summary of the job failure. `null` when it did not end in `failed`.
created_atstring (date-time)ISO 8601 timestamp in UTC with an explicit `Z` suffix; for example, `"2026-05-01T05:14:38Z"`. The `*_at`, `*_end`, `*_start`, and `*_date` fields follow this format. `meta.datetime` describes the same contract in the response.
parsed_atstring | nullDate and time when the file reading finished, in ISO 8601 UTC. `null` while it has not finished.
committed_atstring | nullDate and time when the commit started, in ISO 8601 UTC. `null` while it has not been committed.
completed_atstring | nullDate and time of completion, in ISO 8601 UTC. `null` while it has not finished.

Used in operations

  • GET /v1/validations/imports/{id}
  • GET /v1/validations/imports/{id}/preview