Ortho Coding
Coding & Risk AdjustmentAsync jobs requiredOrthopedic CPT + ICD coding, LCD coverage verdicts, and critique-mode chart audit.
About
Specialty coding for orthopedic and MSK operative reports. The CPT coder reads the operation title and technique narrative to emit procedure codes with modifiers, NCCI-bundled for the chosen setting (practitioner vs facility selects the NCCI/MUE edition), each citing the technique text that supports it. The ICD coder walks the ICD-10-CM tabular tree (section → parent → leaf → 7th character → companion rules) for diagnosis codes.
Two higher-order endpoints build on the coders: coverage reconciles the ICD and CPT sets into a claim and checks, per CPT line, whether an emitted diagnosis justifies medical necessity under the payer/state LCD; audit runs a coder in critique mode against codes a human already assigned, applying the deterministic CMS-edit floor (NCCI, MUE, MPFS, LCD) plus LLM grounding judges, and answers a free-text question from the note.
Uniquely, these endpoints accept multiple files as one job: an op-note split across several PDFs is OCR'd and coded as a single concatenated note with continuous line IDs, preserving cross-file context.
How it works
- 1File(s) or pasted text → OCR (text input skips OCR and runs synchronously)
- 2/cpt: procedure extraction → modifier assignment → NCCI bundling (setting-aware) → supporting ICD diagnoses included
- 3/icd: tabular-tree walk for cited diagnoses
- 4/coverage: both coders → per-CPT-line LCD medical-necessity check (payer/state → MAC)
- 5/audit: deterministic CMS-edit floor + LLM judges → free-text critique { audit_text, findings }
Intended use
- •Orthopedic / MSK coding apps from operative reports — routed to for orthopedic coding, surgical bundling, and coverage-check requests
- •Multi-file surgical cases (op note + addenda) coded as one note via uploadManyAndProcess
- •Auditor tooling: "is 29881 supported? what's missing?" answered from the chart
Key outputs
- ▸/cpt → result.cpt_codes[] (with modifiers + citations) and result.icd_codes[] in one call
- ▸/coverage → per-CPT-line medical-necessity verdicts under the selected payer/state LCD
- ▸/audit → audit_text (free-text critique) + structured findings
Model comparison
F1 on Gwen's healthcare benchmark for this task — the Gwen pipeline vs the prompt-optimized model alone, with the uplift the pipeline adds, per model.
| # | Model | Gwen pipeline | Model only | Uplift |
|---|---|---|---|---|
| 1 | Claude Opus 4.8Best | 0.891 | 0.844 | +0.047 |
| 2 | GPT-5.5 | 0.871 | 0.780 | +0.091 |
| 3 | Gemini 3.5 Flash | 0.857 | 0.795 | +0.061 |
Endpoints
Try each endpoint with your signed-in session — usage counts toward your monthly budget.
Use synthetic data only. Do not submit real patient records or PHI when testing endpoints.
Limitations & caveats
- –Provide a file OR text per endpoint — text input must stay short (runs synchronously, ≤300s); real multi-file cases must use the async /jobs flow
- –/audit requires the original chart file(s) or text — calls without a note return 422
- –payer/state affect coverage verdicts only, never code selection
- –Specialty scope is orthopedic/MSK; general diagnosis coding belongs to ICD Coding