---
title: "Explain lab results against reviewed reference ranges"
method: POST
path: "/api/agent/interpret_results"
tags: ["reference"]
---

# Explain lab results against reviewed reference ranges

`POST /api/agent/interpret_results`

## Request

- Base URL: `https://www.test-well.com`
- URL: `https://www.test-well.com/api/agent/interpret_results`
- Auth: none declared

Flag each pasted lab value as low / normal / high against TestWell's physician-reviewed reference catalog (130+ markers; sex- and age-specific bands where they exist), with the reviewed 'what high/low suggests' copy, retest guidance, cited sources and links to the marker's page and, where one…

## Request body

- object
  - `values` object[], required: Results to explain, e.g. [{marker:'TSH', value:5.2, unit:'mIU/L'}, {marker:'ferritin', value:12}]
    - `marker` string, required
    - `value` number, required
    - `unit` string
  - `sex` 'male' | 'female'
  - `age` integer
  - `pregnancy` boolean
  - `postmenopausal` boolean

## Response `200`

Tool result

- object
  - `tool` 'interpret_results', required
  - `result` object, required
    - `results` object[]
      - `input` object
        - `marker` string
        - `value` number
        - `unit` string, nullable
      - `found` boolean
      - `marker` string, nullable
      - `slug` string, nullable
      - `flag` 'low' | 'normal' | 'high' | 'unknown'
      - `range` object, nullable
        - `qualifier` string
        - `min` number
        - `max` number
        - `unit` string
        - `text` string
      - `deviationPct` number, nullable: Distance outside the band as % of band width
      - `unitMismatch` boolean
      - `suggests` string, nullable: Reviewed copy for this direction
      - `retest` string, nullable
      - `citations` object[]
        - `label` string
        - `url` string
      - `links` object
        - `biomarker` string, nullable
        - `interpretation` string, nullable
        - `orderTest` string, nullable
      - `suggestions` string[]
    - `summary` object
      - `total` number
      - `matched` number
      - `high` number
      - `low` number
      - `normal` number
      - `unknown` number
    - `disclaimer` string
    - `reviewed` object
      - `catalog` string, nullable
      - `reviewer` string

## Other responses

- `400`: Invalid input
- `429`: Rate limited

---

[API](https://skmtc.dev/test-well/apis/testwell-agent-api.md) · [All operations](https://skmtc.dev/test-well/apis/testwell-agent-api/llms.txt) · [OpenAPI document](https://skmtc.dev/test-well/apis/testwell-agent-api/revisions/6e260731dfa4?raw)
