# Colour Fundus Photography (eye/fundus) > Fundus photo read: DR grade, glaucoma suspicion, AMD stage, vessels and referral urgency per eye. Upload one visit's colour fundus photographs of one or both eyes (45° fields, macula- or disc-centred), as DICOM or PNG/JPEG. Every image is checked first: its type (fundus photograph or not), the field of view, the optic disc and fovea (which give the eye, the field and the disc-diameter unit) and an image-quality grade with the likely cause and retake advice when it is not good. Gradable images get a diabetic retinopathy grade (ICDR 0–4) with lesion masks and counts (microaneurysms, haemorrhages, hard exudates, cotton-wool spots), referable and vision-threatening flags, the maculopathy surrogate (hard exudate within one disc diameter of the fovea, NHS DESP M1), the DESP R/M grade and the referral or recall per eye; the worse eye sets the patient grade. An eye whose photographs are all ungradable is graded U with retake advice, unless referable retinopathy is visible on them, in which case it is referred. Ultra-widefield images are not graded in this version. Model page: https://medrun.ai/models/eye/fundus Status: beta · version 1.0.0 · viewer: image ## Input One visit's fundus photographs of both eyes (a macula-centred and, ideally, a disc-centred field per eye), as DICOM (Ophthalmic Photography, VL Photographic or Secondary Capture), a folder, a zip, or PNG/JPEG exports from the camera. Use the camera's full-resolution export; heavily compressed or small images hide the smallest lesions. Accepted: DICOM files or folder, zip, PNG / JPEG / TIFF fundus photographs. ## Pricing - `eye/fundus/interpret`: $0.02 per request - Draft report (opt-in, `options.report`): +$0.02 per run ## Result sections - `#quality` Image quality (available): Per photograph: fundus photograph or not, EyeQ quality grade (good / usable / reject), field (macula- or disc-centred) and, when it is not good, the likely cause (blur, dark or uneven lighting, haze, disc or fovea out of the field, dark periphery) with retake advice. Per eye: gradable, graded on reduced quality, or ungradable (DESP U). - `#dr-grading` Diabetic retinopathy (available): Per eye: ICDR grade 0–4 with referable and vision-threatening flags, lesion findings with counts and areas (microaneurysms, haemorrhages, hard exudates, cotton-wool spots) shown on an overlay, the maculopathy surrogate (hard exudate within one disc diameter of the fovea, with the nearest-exudate distance), the NHS DESP R/M grade and the referral or recall. Patient: the worse eye's grade and the most urgent referral. Macular oedema is seen on photographs only through exudates; its severity needs OCT. - `#segment-lesions` Retinopathy lesions (planned): Microaneurysm, haemorrhage, hard-exudate and cotton-wool-spot masks as DICOM SEG (the overlays and counts are part of the DR section now). - `#glaucoma` Glaucoma (optic disc) (planned): Optic disc and cup outlines, vertical cup-to-disc ratio, rim by sector (ISNT) and referable-glaucoma likelihood. - `#amd` Age-related macular degeneration (planned): Drusen, pigmentary abnormalities and late AMD per eye, AREDS simplified severity score. - `#vessels` Retinal vessels (planned): Artery and vein calibres (CRAE, CRVE, AV ratio), tortuosity and a hypertensive retinopathy grade. - `#triage` Other referable findings (planned): Normal versus referable, with other findings such as vein occlusion, pathologic myopia or optic atrophy. - `#papilledema` Papilloedema (planned): Papilloedema versus normal or pseudo-papilloedema with a Frisén grade. - `#segment-anatomy` Retinal anatomy (planned): Optic disc, cup, fovea and vessel masks. - `#cvd-risk` Retinal age and cardiovascular risk (planned): Retinal age gap and a cardiovascular-risk estimate. - `#report` Draft report (available): Opt-in draft report (findings, impression, limitations) written from the structured result; every number is validated against it. ## Endpoint `eye/fundus/interpret` (run) The full read of one visit's fundus photographs: every image is checked and graded, the images of each eye are read together, and the result contains all sections the input supports. Docs: https://medrun.ai/models/eye/fundus/api · OpenAPI: https://api.medrun.ai/v1/models/eye/fundus/interpret/openapi.json ### Input schema - `files` (array; required): The visit's fundus photographs of one or both eyes: DICOM files, a folder or a zip; PNG/JPEG/TIFF photographs are read too. `file_…` ids from /v1/uploads or https URLs. - `clinical_context` (object): Optional. Age and sex for the report; never names, IDs or dates. - `age_years` (number): Age (years) - `sex` (string; one of female, male, other, unknown): Sex - `indication` (string): For example "annual diabetic eye screening, type 2 diabetes". - `options` (object): Options - `operating_point` (string; default "standard"; one of standard, high_sensitivity): Standard refers from moderate non-proliferative DR (ICDR ≥ 2) or maculopathy. High sensitivity also refers eyes the grader places just below that (more referrals, fewer missed eyes). - `report` (boolean; default false): Adds a draft fundus photography report written from the structured result (English). +$0.02 per run. ### Example (cURL) ```bash response=$(curl --request POST \ --url https://api.medrun.ai/v1/run/eye/fundus/interpret \ --header "Authorization: Bearer $MEDRUN_KEY" \ --header "Content-Type: application/json" \ --data '{ "input": { "files": [ "file_01K6R4X2Q9Y7T3V5W8Z0A1B2C3", "file_01K6R4X2Q9Y7T3V5W8Z0A1B2C4" ], "options": { "report": false } } }') REQUEST_ID=$(echo "$response" | jq -r .id) ``` ## Output The MedRun result envelope: https://medrun.ai/docs/result-envelope