Skip to main content

Validation Results

Get per-field validation results with match type, similarity score, and LLM judge verdict for every expected-versus-extracted value in a validation run.

Validation results are the per-field comparison records of a completed validation run: for every document-field pair in the Ground Truth dataset, they show the expected value, the actual extracted value, a match type (exact, fuzzy, or no_match), a similarity score, and an optional LLM judge verdict for ambiguous cases. They are the benchmark evidence behind the run's overall accuracy score, not in-pipeline check outcomes.

Use the judged_only=true parameter to focus on results where the LLM judge was invoked. This is useful for reviewing cases where simple string comparison was insufficient and semantic judgment was required.

Fetch results only after the run reaches completed status (poll GET /v1/validation/runs/{id}). Rows where match_type is no_match are the fastest way to find systematically failing fields.
  • exact — The extracted value matches the expected value character-for-character.
  • fuzzy — The values are similar but not identical (e.g. different formatting, minor typos).
  • no_match — The extracted value does not match the expected value.
GET/v1/validation/runs/{id}/results

Query parameters

judged_onlystringSet to "true" to return only judged results.

Response

Response fields

dataarrayArray of per-field validation result objects.
data[].idstringResult UUID.
data[].validation_run_idstringParent validation run UUID.
data[].document_idstringDocument UUID.
data[].field_namestringField key that was compared.
data[].expected_valuestring | nullGround-truth expected value.
data[].actual_valuestring | nullExtracted value from the job run.
data[].match_typestring | nullMatch classification: exact, fuzzy, or no_match.
data[].similarity_scorenumber | nullSimilarity score between expected and actual values (0–1).
data[].confidencenumber | nullExtraction confidence for the actual value.
data[].judge_verdictstring | nullLLM judge verdict: correct, incorrect, or partial.
data[].created_atstringISO 8601 timestamp.

Response

{
  "data": [
    {
      "id": "e5f6a7b8-c9d0-1234-efab-345678901234",
      "validation_run_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
      "document_id": "d4e5f6a7-b8c9-0123-defa-234567890123",
      "field_name": "invoice_number",
      "expected_value": "INV-2024-0042",
      "actual_value": "INV-2024-0042",
      "match_type": "exact",
      "similarity_score": 1.0,
      "confidence": 0.97,
      "judge_verdict": "correct",
      "created_at": "2024-09-14T10:35:00.000Z"
    }
  ]
}

Errors

Error responses

401unauthorizedMissing or invalid API key.
404not_foundValidation run not found or does not belong to your organization.
429rate_limitedToo many requests. Retry after the period indicated in the Retry-After header.