> ## Documentation Index
> Fetch the complete documentation index at: https://api.idunox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Outcomes model

> How Health Yourself wellbeing outcomes, scores, bands, and notices appear in GET /v1/results.

In partner API responses, scored wellbeing areas are called **outcomes** (`outcomeId`, `outcomes[]`). In Health Yourself product language the same concepts are often called **assessments** — this page uses both terms where helpful.

## What wellbeing means

Wellbeing describes how supportive a subject's submitted profile is for day-to-day functioning and comfort over roughly the next 10 years. It focuses on everyday capacity: steady energy, comfort during activity, clear thinking for daily tasks, and normal recovery after typical effort.

Wellbeing is forward-looking, practical, changeable over time, separate from disease diagnosis, and informational — not a diagnosis or treatment recommendation.

## Wellbeing outcome ids

Request these in `options.requestedOutcomes` on submission. The same ids appear on `GET /v1/results/{resultId}`.

| `outcomeId`                | Focus area                                          |
| -------------------------- | --------------------------------------------------- |
| `wellbeing.cardiovascular` | Heart and circulation                               |
| `wellbeing.cognitive`      | Brain — clarity, attention, memory for daily tasks  |
| `wellbeing.renal`          | Kidneys — fluid balance and related energy patterns |
| `wellbeing.respiratory`    | Lungs — breathing comfort during daily activity     |

Synonyms such as `wellbeing.kidney` or `renal.wellbeing` normalize to `wellbeing.renal`.

## Requesting outcomes on submit

```json theme={null}
"options": {
  "requestedOutputs": ["inference_score_v1", "json", "html"],
  "requestedOutcomes": [
    "wellbeing.cardiovascular",
    "wellbeing.cognitive",
    "wellbeing.renal",
    "wellbeing.respiratory"
  ]
}
```

`requestedOutputs` is **required** and controls pipeline artefacts (scores, JSON report, HTML report, PDF).

## Outcome fields in `GET /v1/results`

Each outcome summary uses partner-safe vocabulary only (no model codes or internal warning ids).

| Field                     | Description                                                                  |
| ------------------------- | ---------------------------------------------------------------------------- |
| `outcomeId`               | Public id, e.g. `wellbeing.cardiovascular`                                   |
| `focus`                   | Human-readable title, e.g. "Cardiovascular Wellbeing"                        |
| `score`                   | Scalar **0–1** (higher = more supportive vs reference threshold)             |
| `referencePlacement`      | `below_reference`, `above_reference`, or `indeterminate`                     |
| `referencePlacementLabel` | Display string for placement                                                 |
| `outcomeStatus`           | `completed`, `failed`, or `partial`                                          |
| `outcomeStatusLabel`      | Human-readable status                                                        |
| `band`                    | Optional `{ tier, label }` — `tier` is `low`, `medium`, `high`, or `unknown` |
| `notices[]`               | Optional `{ message }` lines — partner-safe only                             |

Example single outcome:

```json theme={null}
{
  "outcomeId": "wellbeing.cardiovascular",
  "focus": "Cardiovascular Wellbeing",
  "score": 0.72,
  "referencePlacement": "above_reference",
  "referencePlacementLabel": "Above reference threshold",
  "outcomeStatus": "completed",
  "outcomeStatusLabel": "Completed",
  "band": {
    "tier": "high",
    "label": "Upper third · reference cohort"
  },
  "notices": []
}
```

When multiple areas were requested, the response may include **`outcomes[]`** (array) in addition to **`outcome`** (primary / first).

<Note>
  Older integration drafts described `assessments[]` with 0–100 `scores.globalPopulation` fields. The live partner API uses **`outcomes[]`**, a single **`score`** in **0–1**, and **`band.tier`** instead of `group: optimal | suboptimal`.
</Note>

## Marker contributions and reports

Detailed per-marker explanations and reference-range display appear in generated **HTML/JSON report artefacts** (when requested in `options.requestedOutputs`), not as a separate structured contribution array on `GET /v1/results`.

The structured `GET` response is intentionally minimal: correlation ids, outcome summaries, notices, and signed artifact URLs.

## Artifacts

When `json`, `html`, or `pdf` is in `requestedOutputs`, `artifacts.items[]` may include:

| Field                | Description                                  |
| -------------------- | -------------------------------------------- |
| `type`               | `json`, `html`, `pdf`, or `unknown`          |
| `availability`       | `available`, `pending`, or `unavailable`     |
| `access.downloadUrl` | Time-limited signed HTTPS URL when available |
| `access.expiresAt`   | URL expiry (ISO-8601)                        |

See [Get result](/api-reference/endpoint/results) for a full response example.
