v71

latestOpenAPI 3.1.0raw.githubusercontent.com2026-08-032076961.5 MB
lab_report

Create Lab Report Parser Job

Creates a parse job, uploads the file(s) to provider, persists the job row, and starts the ParseLabReport. Returns a generated job_id.

post/lab_report/v1/parser/job

Response

Successful Response

idstring uuid required
status'upload_pending' | 'started' | 'completed' | 'failed' required

ℹ️ This enum is non-exhaustive.

failure_reason'invalid_input' | 'low_quality' | 'not_english' | 'too_many_pages' | 'processing_error'

Machine-readable failure reasons for parsing jobs. ℹ️ This enum is non-exhaustive.

needs_human_reviewboolean required
is_reviewedboolean required

Example response

{
  "data": {
    "metadata": {
      "date_collected": "2024-12-30",
      "date_reported": "2025-01-01",
      "dob": "1990-01-01",
      "lab_name": "Acme Labs",
      "patient_first_name": "Jane",
      "patient_last_name": "Doe",
      "specimen_number": "ABC123"
    },
    "results": [
      {
        "interpretation": "normal",
        "is_above_max_range": false,
        "is_below_min_range": false,
        "loinc_matches": [
          {
            "aliases": [],
            "confidence_score": 0.99,
            "display_name": "Glucose",
            "loinc_code": "2345-7",
            "loinc_name": "Glucose [Mass/volume] in Serum or Plasma"
          }
        ],
        "max_reference_range": 99,
        "measurement_kind": "direct",
        "min_reference_range": 70,
        "sample_type": "serum_plasma_blood",
        "sensitivity": "unknown",
        "source_panel_name": "CMP",
        "test_name": "Glucose",
        "type": "numeric",
        "units": "mg/dL",
        "value": "90"
      }
    ]
  },
  "id": "8eb0217f-4683-4a3c-adca-faf95ac65739",
  "is_reviewed": false,
  "needs_human_review": false,
  "status": "completed"
}