Healthcare pack

10 templates, one canonical shape each.

FHIR-aware templates for clinical data — patient demographics, lab results, drug formularies, claims.

pack · healthcare
GET /v1/templates

{
  "packs": [
    {
      "id": "healthcare",
      "name": "Healthcare",
      "template_count": 10
    }
  ],
  "templates": [
    { "id": "employee_roster_v1", "risk": "low", "field_count": 7, "pack": "healthcare" },
    { "id": "patient_demographics_v1", "risk": "medium", "field_count": 7, "pack": "healthcare" },
    { "id": "lab_result_catalog_v1", "risk": "low", "field_count": 5, "pack": "healthcare" },
    …
  ]
}
→ 10 templates · 4 flagged for review

The templates

Every template in this pack, printed as it ships.

Canonical column names, field counts, validator ids and risk level — read straight from the shipped template definition. Paste the header row from your own export and the deterministic layers will show you, column by column, which of these 10 it lands on.

Paste your header row
Or try:

Nothing is uploaded. The match runs in this tab against the shipped template vocabulary, using the same normaliser and fuzzy scorer the Worker runs on layers 2 and 3.

Risk

Employee roster

low

Names, AHV/GLN, contract type, address.

7 fields27 hintsregexgln

first_name · last_name · ahv_number · gln · iban · +2

employee_roster_v1View

Patient demographics

medium

Patient identity. Emits FHIR Patient.

FHIR · Patient7 fields35 hintsdate_rangeregex

first_name · last_name · date_of_birth · gender · ahv_number · +2

patient_demographics_v1View

Lab result catalog

low

LOINC-coded test definitions and reference ranges.

FHIR · Observation5 fields14 hintsloinc_code

loinc_code · name · unit · ref_low · ref_high

lab_result_catalog_v1View

Drug formulary

medium

ATC/GTIN-coded drug catalog. Emits FHIR Medication.

FHIR · Medication6 fields16 hintsatc_codegtin

atc_code · gtin · pharmacode · name · dosage_form · +1

drug_formulary_v1View

Claims line items

medium

CPT/ICD-10-coded claim line items.

FHIR · Claim.item4 fields12 hintscpt_codeicd10_code

cpt_code · icd10_code · amount · service_date

claims_line_items_v1View

Appointment log

low

Past appointments. Emits FHIR Appointment.

FHIR · Appointment4 fields9 hints

patient_id · start_at · duration_min · status

appointment_log_v1View

Insurance contracts

low

Payer / contract metadata.

FHIR · Coverage4 fields6 hints

payer · contract_type · valid_from · valid_until

insurance_contracts_v1View

Supplier inventory

low

Supplier catalogue with GTIN/IBAN/GLN.

5 fields8 hintsgtingln

sku · name · gtin · gln · iban

supplier_inventory_v1View

Provider directory

low

Providers with NPI/GLN/license metadata.

FHIR · Practitioner6 fields9 hintsnpigln

first_name · last_name · npi · gln · license_state · +1

provider_directory_v1View

Lab results

medium

Patient-linked lab results. Emits FHIR Observation.

FHIR · Observation5 fields13 hintsloinc_code

patient_id · loinc_code · value · unit · taken_at

lab_results_v1View
  • 10 templates
  • 13 validators in this pack
  • 125 header hints across 5 languages
  • 53 canonical fields
  • 8 FHIR resource mappings

Side by side

The whole pack as counted facts.

Same information the cards carry, in one scannable block — for the moment you are choosing between two templates that both look plausible. Every number is derived from the shipped definition at build time.

TemplateFieldsRequiredValidatedHintsRiskFHIR
Employee rosteremployee_roster_v172327low
Patient demographicspatient_demographics_v173435mediumPatient
Lab result cataloglab_result_catalog_v152114lowObservation
Drug formularydrug_formulary_v162316mediumMedication
Claims line itemsclaims_line_items_v142212mediumClaim.item
Appointment logappointment_log_v14209lowAppointment
Insurance contractsinsurance_contracts_v14106lowCoverage
Supplier inventorysupplier_inventory_v15238low
Provider directoryprovider_directory_v16229lowPractitioner
Lab resultslab_results_v154113mediumObservation

53 canonical columns and 125 distinct header hints across the pack. "Validated" counts columns carrying at least one field-level validator; "hints" counts the distinct multilingual header names the deterministic layers resolve for free.

Validators

The checks that fire before you commit.

13 validators run on this pack. They are pure functions — the same code runs in the Worker, in the browser widget and in the MCP validate_row tool, so a dry run and a commit cannot disagree.

ValidatorWhat it checksTemplates in this pack
atc_codeATC code format, with ontology resolution from free text.drug_formulary_v1
cpt_codeCPT procedure code format.claims_line_items_v1
date_rangeParses the date (ISO / US / EU / epoch) and bounds it.patient_demographics_v1
emailRFC-style address shape.patient_demographics_v1
gln13-digit GS1 location number with a GTIN-style checksum.employee_roster_v1 · supplier_inventory_v1 · provider_directory_v1
gtin8, 12, 13 or 14 digits with the GS1 trailing checksum.drug_formulary_v1 · supplier_inventory_v1
ibanmod-97 checksum on the reordered value, with per-country length from the SWIFT IBAN Registry.employee_roster_v1 · supplier_inventory_v1
icd10_codeICD-10 code format, with ontology resolution from free text.claims_line_items_v1
loinc_codeLOINC code format, with ontology resolution from free text.lab_result_catalog_v1 · lab_results_v1
npi10 digits with the Luhn check on the "80840"-prefixed string.provider_directory_v1
pharmacodeSwiss 4–7 digit local drug identifier.drug_formulary_v1
phonelibphonenumber-js in strict mode, with an optional country allowlist.patient_demographics_v1
regexPattern match against the template-supplied expression.employee_roster_v1 · patient_demographics_v1

Empty values bypass a validator — required-ness is checked separately. LOINC / ICD-10 / ATC additionally try to resolve a free-text value to a canonical code before failing.

Review gating

4 of 10 come back flagged for review.

A template's risk level is the only input to the flag. Medium and high templates make PATCH /uploads/:id/mappings return requires_hitl so your own workflow can hold the commit — it is a flag, not a queue. Native AgentGate HITL integration is on the roadmap for Q3 2026 and is not wired in v1.

low6

Commits straight through. No review flag on the mappings response.

employee_roster_v1 · lab_result_catalog_v1 · appointment_log_v1 · insurance_contracts_v1 · supplier_inventory_v1 · provider_directory_v1

medium4

Flagged `requires_hitl: true` with `hitl_status: "pending_review"` so you can gate your own commit workflow.

patient_demographics_v1 · drug_formulary_v1 · claims_line_items_v1 · lab_results_v1

high0

Flagged `requires_hitl: true` with `hitl_status: "pending_review"`. Regulated identifiers — card data, IBANs, payroll, KYC.

Try it

One call maps a file onto any of them.

Name the template and POST the file. The cascade resolves what it can on the deterministic layers — statistics, heuristic, fuzzy — and only the leftovers reach the metered LLM.

bash
curl -X POST https://api.adaptivmapr.com/v1/uploads \
  -H "Authorization: Bearer $ADAPTIVMAPR_API_KEY" \
  -F "template=employee_roster_v1" \
  -F "file=@your_export.csv"
→ upload created · mappings ready · confirm before commit

Schema-only mode sends column headers plus at most three sample rows, each clamped to 80 characters — a data-minimization mode enforced at the HTTP edge. Full-data mode routes the metered layer-5 call in-region under a BAA and costs 20% more, and stays locked until the workspace accepts the BAA/NDA in Settings → Security & Data.

Read the quickstart

Ready when you are

Put the healthcare pack to work — without shipping raw records.

Schema-only mode leaves only headers and up to three clamped sample rows. Full-data adds row-level AI, routed in-region under a BAA.

No free tier · $10 prepaid wallet to start · every map draws a small flat fee
Healthcare templates — AdaptivMapr — AdaptivMapr