API for clinics, labs, veterinary services and apps

LabReadAI API: add lab report and scan interpretation to your product

LabReadAI API is a medical neural network you can plug into your product: it recognises lab report forms, reads scans (including DICOM) and symptom descriptions, asks clarifying questions and explains the result in plain language for a patient or a pet owner. Returns structured JSON, works in Russian and English, answers in minutes.

Integration is one POST request and an access key: your interface, texts and flow stay yours, the reading arrives as ready JSON. We open a test environment on your real forms before any contract.

Formats

What you can send to the API

File type is detected by content, not by extension. One request — up to 10 files of mixed types. Limits below are defaults: everything is negotiable for your integration.

  • JPG, PNG, WebP

    Photo of a form, a screenshot from a lab portal, a photo of film, skin or a pet. We read handwriting, tables, charts and histograms.

    up to 10 MB per file

  • PDF

    Lab exports, reports, discharge summaries, referrals, scans. Multi-page documents; pages with images are turned into frames automatically.

    up to 15 pages

  • DICOM (.dcm)

    Originals from MRI, CT, X-ray, mammography and ultrasound discs. We build windows from the full 16 bits, compute densities (HU) in code and read projection, side, contrast and slice thickness from the header. Personal tags are never read.

    up to 50 MB per file, 150 MB per batch

  • Text

    Lab values, a study report, a discharge summary, a referral or a description of the situation in your own words — as a plain string, no file.

    up to 2,000 characters

  • Product composition

    Cosmetic INCI or supplement facts as text or a label photo — for a "does it suit me" reading.

    up to 4,000 characters

  • Other formats

    HEIC, TIFF, BMP, DOCX and other formats — enabled on request.

    on request

Capabilities

Three layers: recognise, explain, talk

Plug in the level you are ready to show your users. The layers are independent and stack.

  1. Layer 1 · for systems

    Recognise

    Any lab form becomes normalised JSON: marker, value, units, reference range, date, laboratory. No medical conclusions — for EHR systems, patient portals and storefronts. Disputed rows are re-read by a second model and an arbiter.

  2. Layer 2 · for the user

    Explain

    A full reading: key takeaway, what is off, what it may mean, trends, what to do and which doctor to see. Lab tests, scans, symptoms, pregnancy, children, metabolic health, veterinary. The model asks clarifying questions itself.

  3. Layer 3 · dialogue

    Talk

    Chat under the result: the user asks, the AI answers remembering everything it has read. Or a standalone medical AI assistant inside your interface — within our safety frame and reasoning layers.

What exactly it does

Eight readings on one access key

The reading type is a request parameter — the response structure stays the same.

  • Lab tests

    Blood, biochemistry, hormones, urine, vitamins, tumour markers — forms from any laboratory, including handwritten ones and screen photos.

  • Scans and reports

    MRI, CT, ultrasound, X-ray, mammography, ECG, endoscopy: a photo of film, a PDF report or the original DICOM.

  • Symptoms with photos

    A description in your own words plus photos: rash, eyes, skin, a wound, a pet's paw. The answer: what it may be and whom to see.

  • Clarifying questions

    The model asks 1 to 7 questions that cannot be inferred from the data, with example answers — and takes the answers into account.

  • Chat in the context of the result

    The user asks about their reading; the model answers remembering the note, the answers and the history.

  • Cosmetics and supplements

    Three levels: by composition; by composition and lab tests; by composition, lab tests and a photo. The result — a score, safety, a recommendation.

  • Which tests to take

    From a story — a list of tests with the "why" and preparation for each.

  • Trends and history

    Several dated forms in one upload — what went up, what went down. A combined view of the whole observation history — on request.

Whom we read

A neural network for doctors, clinics, labs — and for vets

People: any lab tests and scans

  • Pregnancy: hCG, screenings, ultrasound and CTG as text
  • Children: age-specific ranges
  • Diabetes and insulin resistance: HOMA-IR, HbA1c, lipids
  • Thyroid and hormones
  • Medication courses, TRT, PCT
  • Metabolic health and weight loss
  • Skin, hair, supplements, cosmetics
  • Military medical board documents
  • Symptoms, check-up, second opinion

The result always refers to a doctor and contains no prescriptions or dosages.

Animals: dedicated veterinary pipelines

  • Dogs and cats: blood, urine, biochemistry
  • Horses, rodents, birds, reptiles, exotics, livestock
  • Animal X-ray, ultrasound, CT, MRI — photo, PDF, DICOM
  • Pet symptoms and photos: rash, eyes, ears, lameness
  • Ranges by species, breed and age
  • A hint for the owner: see a vet urgently or keep watching

For vet clinics and vet labs: an explanation for the owner with every form — without night calls to the clinic.

For doctors and vets

AI for doctors and vets — works without the API too

If you are a doctor, a vet or a student and did not come for an integration: the same neural network already works on the site. Upload a form or a scan — a second reading arrives in 5–7 minutes.

  • Human lab tests

    CBC, biochemistry, hormones, vitamins — double-check your own reading of a form before the visit.

    Decode lab tests
  • Scans and ECG

    MRI, CT, ultrasound, X-ray, ECG — a photo of film, a PDF report or the original DICOM from a disc.

    Decode scans
  • Animal lab tests

    Ranges by species, breed and age: dogs, cats, horses, rodents, birds, exotics.

    Decode pet tests
  • Animal scans

    A pet's X-ray, ultrasound, CT, MRI — in minutes, with a hint for the owner on what to do next.

    Decode pet scans

Integration

How it works and what comes back

Four steps from upload to ready JSON — the same for lab tests, scans, symptoms and veterinary.

  • Send the data

    A POST request with files and/or text, the reading type and the response language. Access key in the header.

  • Gate and questions

    Irrelevant uploads are rejected at once — you do not pay for junk. If the data lacks context, the model forms clarifying questions dynamically for that upload. Questions can be switched off.

  • Reading

    Several independent readings, an arbiter and code checks where it is critical. Usually 5–7 minutes.

  • Get JSON

    The same structure for all types. Synchronously, by webhook or by polling.

Example

Request and response

Press "Send request" — you will see how the pipeline runs and what the JSON looks like.

  1. Sent
  2. Gate and questions
  3. Reading
  4. JSON ready
POST /v1/decode
Authorization: Bearer <api-key>
Content-Type: multipart/form-data

mode=lab            # lab | scans | vet | vet-scans | symptoms | pregnancy | ...
lang=en
note="Female, 34. Fatigue, hair loss."
files[]=@labs-2026-08-12.pdf
files[]=@ferritin.jpg
{
  "id": "6f1c…",
  "status": "done",
  "subject": { "kind": "human", "sex": "f", "age": 34 },
  "recognized": [
    { "marker": "Ferritin", "value": 9, "unit": "ng/mL", "ref": "13–150", "flag": "low" },
    { "marker": "Hemoglobin", "value": 118, "unit": "g/L", "ref": "120–150", "flag": "low" }
  ],
  "result": {
    "conclusion": "…",
    "findings": [ … ],
    "dynamics": [ … ],
    "actions": [ … ],
    "recommendation": { "specialist": "GP / hematologist", "urgency": "planned" }
  },
  "questions": [],
  "chat": { "available": true, "remaining": 5 }
}

The example is illustrative: field names are agreed for your integration. Documentation and the OpenAPI spec — on request.

Reading quality

Why this reading can be shown to a user

The same material is read several times independently, disputed rows go to an arbiter, and numbers are recomputed in code where a mistake is critical.

  • Several readings

    The material is read independently several times. Disagreements are not smoothed over: they are the signal that a row must be re-read.

  • An arbiter over disputes

    A disputed marker goes to a second reading, the arbiter decides — the response gets the agreed value.

  • Code does the math

    Where a mistake is unacceptable, values, units and densities (HU) are recomputed by code, not by the model.

  • A gate at the entrance

    An irrelevant upload is rejected before the reading: the user gets a clear refusal, you do not pay for junk.

  • Response blocks are toggled per request

    The key takeaway always comes. "What exactly is off", "What to do", "Freshness of tests" and "What was analysed" are switched on and off in the request itself — separately for each reading.

  • Ranges by profile

    Reference ranges follow sex and age for people, and species, breed and age for animals.

What changes

How it looks in your product

The same form, the same lab, the same scan — only what the person on the other side of the screen sees changes.

As usual
  • A patient gets a form full of numbers and calls to ask what it means.
  • A pet owner waits for the morning and still calls the clinic at night.
  • Only a doctor opens the disc with the scan; the person sees one PDF.
  • Markers stay as a picture in the archive, not as fields in the record.
With LabReadAI API
  • Next to the result — an explanation in plain words and the next step.
  • The answer arrives in minutes inside your interface, no call needed.
  • DICOM is read directly: no need to open or convert the original.
  • Markers arrive as fields: value, units, reference range, date.

Build or plug in

Build it yourself on an LLM or plug in the LabReadAI API

A bare model reads text. Everything between a form and an answer you can show a person has to be built — or taken ready-made.

A bare model in-house
  • Form recognition: handwriting, tables, screen photos — your own labelling and accuracy checks.
  • DICOM: windows from 16 bits, HU densities, machine header fields — a separate engine.
  • Reference ranges by sex and age for people, by species, breed and age for animals — your own database and its upkeep.
  • The safety frame, junk rejection and responsibility for wording — on your side.
  • Protection from a single model's hallucinations: several readings, an arbiter, number checks — your own orchestration.
LabReadAI API
  • Recognition is already tuned on real lab and vet clinic forms, handwriting included.
  • DICOM is read directly: windows, densities and header fields come in the response.
  • Ranges are picked automatically: sex and age for people, species, breed and age for animals.
  • The informational frame, the entrance gate and clear refusals are part of the response.
  • A panel of independent readings, an arbiter and code checks are already inside — you get agreed JSON.

Use cases

Who the LabReadAI API is for

  • Vet clinics and vet labs

    The owner gets the form and a clear explanation with it. Scans are read in minutes, DICOM from the machine — directly.

  • Laboratories

    The "recognise" layer for the patient portal and the "explain" layer next to the result: fewer "what does this mean" calls.

  • Clinics and EHR systems

    A clear summary for the patient before the visit; structured markers — into the record. Clinical decisions stay with the doctor.

  • Telemedicine and health apps

    The patient uploads tests before the consultation; the app shows the reading, chat and trends in its own interface.

  • Cosmetics, supplements, pharmacies

    "Does it suit me" on the product card: by composition, by composition and tests, by composition, tests and a photo.

  • Insurers and check-up platforms

    Check-up explanations, a "what to test" list, clarifying questions — as one JSON.

How we start

From your form to a production key

The order is the same for a clinic, a lab and an app — only the volume and the set of layers change.

  • Step 1 · Material

    Show your data

    Send your real forms, reports or scans and describe what your user should see.

  • Step 2 · Pilot

    Run the test environment

    We open a test environment: you run your flow and compare the answers with what you expected.

  • Step 3 · Integration

    Go to production

    We agree on response fields, volume, delivery and retention, sign the documents and issue a production key.

Onboarding

Terms of integration

Everything below is tuned to your setup: the set of layers, volume, response delivery and retention.

  • Test environment

    A key for your real forms: check accuracy and response format before a contract.

  • Volume-based pricing

    Per request, in packs or by subscription. The "recognise" layer is cheaper than "explain"; terms are agreed individually.

  • Layers separately

    Take only recognition, only explanation or everything together — the set changes without rewriting the integration.

  • Response delivery

    Synchronously, by webhook or by polling — whatever fits your backend.

  • Integration support

    Examples in Python, JavaScript and PHP, documentation and a walkthrough of the first responses with your team.

  • Documents and retention

    A contract, a data processing agreement and a retention and deletion policy — to your rules.

FAQ

LabReadAI API questions and answers

  • Recognise lab forms into structured JSON, interpret lab tests and scans (MRI, CT, ultrasound, X-ray, DICOM), analyse symptoms with photos, ask clarifying questions, run a chat in the context of the result and match cosmetics and supplements by composition and lab tests. For people and animals, in Russian and English.

  • JPG, PNG, WebP, PDF up to 15 pages and DICOM (.dcm) up to 50 MB. Text can be sent as a string without a file. Other formats are enabled on request.

  • Yes: marker values, a study report, a discharge summary or a description of the situation can be sent as text. Scans need a file or the original DICOM.

  • Yes, these are dedicated veterinary pipelines: dogs, cats, horses, rodents, birds, reptiles, livestock. Lab tests, X-ray, ultrasound, CT, MRI and symptoms with photos.

  • If the conclusion lacks context, the model asks one to seven questions with example answers. The answers are sent in a second request and taken into account; without answers the reading still completes.

  • After the reading the user can ask questions; the model answers remembering the result, the note and the answers to the questions. There is also a standalone health AI assistant for your interface.

  • JSON with the same structure for all types: key takeaway, findings, trends, what to do, which specialist and how urgently. For the "recognise" layer — a list of markers with values, units and reference ranges.

  • No. The result is informational, is not a diagnosis and contains no prescriptions. The API is not intended for emergencies or for clinical decisions without a specialist.

  • Files and results are used only for your reading: they are not passed to third parties for advertising. Retention is limited, and for an integration you set the retention and deletion terms in the contract. Processing complies with Russian personal data law (152-FZ).

  • The price depends on volume and layers. Press "Discuss API integration", describe your product and integration needs — we will reply by email within one or two business days, give test access and propose terms. The price depends on the set of layers, monthly volume and how you collect the response.

  • Russian or English — the language is set in the request. The input can be in either: an English form can be read in Russian and vice versa.

  • Such an upload is rejected by the gate before the reading: a clear response says what could not be read and what to send instead. The request is not billed.

  • A full reading usually takes 5–7 minutes; the "recognise" layer is faster. The response can be collected synchronously, by webhook or by polling — whatever suits your backend.

  • The key takeaway always comes. The other blocks — "what exactly is off", "what to do", "freshness of tests", "what was analysed" — are switched on and off right in the request, separately for each reading.

  • The response comes as text blocks and fields with values — you lay them out in your own design. There are no logos, ads or links to LabReadAI in the response.

  • The test environment is opened before a contract. Then — a contract and a data processing agreement, a tariff for your volume, payment by invoice; retention and deletion terms are fixed in the contract.

Onboarding

Connect the API to your product

Tell us about your clinic, app or project and its integration needs — we will discuss test access and terms.

or write to info@labreadai.com

Readings are informational, are not a diagnosis and do not replace a consultation with a doctor or a veterinarian. The service is not intended for emergencies.