---
title: "Health patterns in a patient's record (beta)"
method: GET
path: "/v1/patients/{patient_id}/patterns"
tags: ["REST v1"]
---

# Health patterns in a patient's record (beta)

`GET /v1/patients/{patient_id}/patterns`

## Request

- Base URL: `https://platform.anpheros.com`
- URL: `https://platform.anpheros.com/v1/patients/{patient_id}/patterns`
- Auth: one of:
  - HTTP bearer
  - API key in header `X-Api-Key`
  - OAuth 2 (authorization code, authorization URL `https://platform.anpheros.com/oauth/authorize`, token URL `https://platform.anpheros.com/oauth/token`; client credentials, token URL `https://platform.anpheros.com/oauth/token`, scopes: `patient/*.rs`, `patient/Observation.rs`, `patient/Observation.rs?category=laboratory`, `patient/Condition.rs`, `patient/MedicationStatement.rs`, `patient/DocumentReference.rs`, `patient/AllergyIntolerance.rs`, `offline_access`, `openid`, `fhirUser`, `anpheros/patterns`)

Trends, deviations from the person's usual level and symptom recurrence, each with its period, supporting
resources, method version and limitations. Derived by fixed statistical rules: not diagnoses, not causes.

## Path parameters

- `patient_id` string, required

## Query parameters

- `end` string, date, nullable: Last day of the window (UTC, ISO date); default today
- `window_days` integer: Days in the analysis window, ending on `end`
- `types` string, nullable: Comma-separated: trend, baseline_deviation, recurrence
- `min_strength` 'not_tested' | 'weak' | 'moderate' | 'strong'

## Headers

- `authorization` string, nullable
- `X-Api-Key` string, nullable
- `X-Anpheros-Acting-As` string, nullable
- `X-Anpheros-On-Behalf-Of` string, nullable

## Response `200`

Successful Response

- PatternRun
  - `patient` string, required
  - `window` object, required
  - `engine_version` string, required
  - `time_basis` object, required
  - `tests_in_run` integer, required
  - `family_fingerprint` string, nullable
  - `findings` PatternFinding[], required
    - `id` string, required
    - `patient` string, required
    - `type` 'trend' | 'baseline_deviation' | 'recurrence' | 'association' | 'convergence', required
    - `subtype` string, nullable
    - `epistemic_status` 'descriptive_observation' | 'statistical_association' | 'validated_prediction', required
    - `strength` 'strong' | 'moderate' | 'weak' | 'not_tested', required
    - `statistically_supported` boolean, required
    - `summary_code` string, required
    - `summary_text` string, required
    - `variables` object[], required
    - `window` object, required
    - `comparison_window` object, nullable
    - `result` object, required
    - `statistics` object, nullable
    - `threshold` object, nullable
    - `evidence` object[], required
    - `evidence_total` integer, required
    - `limitations` object[], required
    - `method` object, required
    - `engine_version` string, required
    - `input_fingerprint` string, required
    - `config_fingerprint` string, required
    - `safety` object, required
    - `review` object, required
  - `not_computed` PatternNotComputed[], required
    - `type` string, required
    - `variables` object[], required
    - `window` object, required
    - `reason` string, required
    - `detail` string
  - `omitted` string[], required
  - `interpretation_guidance` string, required

## Other responses

- `401`: Missing, invalid, expired or revoked credential (`WWW-Authenticate: Bearer`).
- `403`: Production credentials, or not allowed by consent
- `422`: Validation Error
- `429`: Rate limit exceeded; wait `Retry-After` seconds.

---

[API](https://skmtc.dev/anpheros/apis/anpheros-platform.md) · [All operations](https://skmtc.dev/anpheros/apis/anpheros-platform/llms.txt) · [OpenAPI document](https://skmtc.dev/anpheros/apis/anpheros-platform/revisions/ff567b232dc3?raw)
