← Back to schema index

ValidationQueued

202 response for the asynchronous validation flow (`POST /v1/validate?async=1` and `POST /v1/validate-ocr?async=1`). Indicates the validation was queued; poll `GET /v1/validations/{id}` for the final result.

Properties

Field Type Description
data object JSON:API wrapper for the queued resource.
type string JSON:API resource type (always `validation`).
id string (uuid) UUID of the created validation, usable in `GET /v1/validations/{id}`.
attributes object Fields of the queued resource.
validation_id string (uuid) UUID of the validation (identical to `data.id`).
status string Immediate status after queuing (always `queued`).
etag_version integer Initial resource version for conditional polling with `If-None-Match`. Passing this as an ETag avoids unnecessary responses when the status has not changed.
enqueued_at string (date-time) ISO 8601 timestamp in UTC with explicit `Z` suffix. Example: `"2026-05-01T05:14:38Z"`. Every datetime field uses this shape. The descriptor at `meta.datetime` makes the contract runtime-assertable.
expires_at string (date-time) ISO 8601 timestamp in UTC with explicit `Z` suffix. Example: `"2026-05-01T05:14:38Z"`. Every datetime field uses this shape. The descriptor at `meta.datetime` makes the contract runtime-assertable.
retry_state object Automatic retry cycle state at queue time. Always present; if neither a body `retry_policy` nor a user default policy was provided, `enabled=false` and policy fields are `null`.
enabled boolean Whether the retry cycle is active for this validation.
max_retries integer | null Configured maximum number of retries. The upper bound depends on the plan (`retry_max_retries`) or the global default `max_retries_cap` (typically 5–10). `null` if `enabled=false`.
interval_seconds integer | null Interval between retries in seconds (300–86400). `null` if `enabled=false`.
outcomes array | null Validation outcomes that trigger a retry (`not_found`, `cep_unavailable`, `error`). `null` if `enabled=false`.
attempts_completed integer Number of retries completed so far.
next_attempt_at union Timestamp of the next scheduled retry. `null` if the cycle is in a terminal state or if no retries are active.
resolved_at union Timestamp when a retry resolved the validation to `valid`. `null` if the cycle has not ended by resolution.
exhausted_at union Timestamp when retries were exhausted without resolution. `null` if the cycle has not ended by exhaustion.
cancelled_at union Timestamp when the cycle was explicitly cancelled. `null` if not cancelled.
terminal_state string | null Terminal state of the cycle: `pending` — active, no final result yet; `resolved` — a retry obtained `valid`; `exhausted` — all attempts used; `cancelled` — cancelled by the user.
meta object Control metadata for the polling flow.
next_poll_after_seconds integer Recommended seconds to wait before the first poll to `GET /v1/validations/{id}`. Clients should respect this value to avoid rate-limiting on the polling endpoint.
playground boolean Whether the validation was queued in playground mode. The execution still queries Banxico like normal validations but does not consume quota, emit webhooks, or fire notifications.