# Musculoskeletal X-ray (xr/msk) > Bone and joint radiograph read: fractures, dislocations, bone age, osteoarthritis and alignment. Upload an extremity, joint, hand or pelvis radiograph study with all its views, as DICOM or PNG/JPEG. One run routes every image by body part and projection, groups the views of each region and side into one exam, and looks for fractures on all of them together: each fracture is boxed on the view that shows it, placed by region and side, and every exam gets a positive or negative verdict. A child's left hand adds a Greulich & Pyle bone age with its z-score against chronological age. Fracture verdicts cover children's wrists (age under 18 from the DICOM or the clinical context) in this version; other regions and adults are reported as not assessed, never as negative, until the detector meets its accuracy bar there. Model page: https://medrun.ai/models/xr/msk Status: beta · version 1.0.0 · viewer: image ## Input One MSK radiograph study with every view (AP, lateral, oblique), as DICOM files, a folder, a CD export or a zip; PNG/JPEG exports work too. For bone age: the child's left hand PA, with age and sex in the DICOM or the clinical context. Accepted: DICOM files or folder, CD export (DICOMDIR), zip, PNG / JPEG radiographs. ## Pricing - `xr/msk/interpret`: $0.04 per request - Draft report (opt-in, `options.report`): +$0.02 per run ## Result sections - `#fractures` Fractures and dislocations (available): Fracture boxes on every view with region and side, and a positive or negative verdict per exam (region and side). Covered in 1.0: children's wrists. Other regions, adults, patients of unknown age and views the router cannot place with confidence are reported as not assessed. AO/OTA bone and segment codes and Salter–Harris typing join in a later version. - `#bone-age` Bone age (available): Greulich & Pyle-equivalent bone age in months from a child's left hand PA, with the z-score against chronological age (Brush Foundation SDs). - `#knee-oa` Knee osteoarthritis (planned): Kellgren–Lawrence grade per knee, OARSI joint-space narrowing and osteophyte grades. - `#ddh` Hip dysplasia (DDH) (planned): Hilgenreiner and Perkin lines, acetabular index and IHDI grade on an infant AP pelvis. - `#bone-tumors` Bone lesions (planned): Bone lesion box with benign versus malignant appearance. - `#report` Draft report (available): Opt-in draft report (findings, impression, limitations) written from the structured result; every number is validated against it. ## Endpoint `xr/msk/interpret` (run) The full read of the MSK study: every radiograph is routed, the views of each region and side are read together, and the result contains all sections the input supports. Docs: https://medrun.ai/models/xr/msk/api · OpenAPI: https://api.medrun.ai/v1/models/xr/msk/interpret/openapi.json ### Input schema - `files` (array; required): The MSK radiograph study: DICOM files, a folder, a CD export or a zip; PNG/JPEG radiographs are read too. `file_…` ids from /v1/uploads or https URLs. - `clinical_context` (object): Optional. Age and sex are used for bone age when the files do not carry them; never names, IDs or dates. - `age_years` (number): Age (years) - `sex` (string; one of female, male, other, unknown): Sex - `indication` (string): For example "fall on outstretched hand" or "short stature". - `options` (object): Options - `report` (boolean; default false): Adds a draft MSK radiograph report written from the structured result (English). +$0.02 per run. - `return` (array; default ["json","dicom-sr"]): JSON is always returned. DICOM objects reference your original UIDs. ### Example (cURL) ```bash response=$(curl --request POST \ --url https://api.medrun.ai/v1/run/xr/msk/interpret \ --header "Authorization: Bearer $MEDRUN_KEY" \ --header "Content-Type: application/json" \ --data '{ "input": { "files": [ "file_01K6R4X2Q9Y7T3V5W8Z0A1B2C3" ], "options": { "report": false } } }') REQUEST_ID=$(echo "$response" | jq -r .id) ``` ## Output The MedRun result envelope: https://medrun.ai/docs/result-envelope