# VitalsRecordRequest

Model ID: `VitalsRecordRequest`

Request body for POST /patients/{patient_id}/vitals. All fields are
optional; only the vitals actually supplied are recorded, each as its
own FHIR Observation. systolic/diastolic must be supplied together or
neither is recorded. Note: systolic_bp/diastolic_bp/spo2/weight/height
are accepted by this schema but are not currently read by the handler —
use systolic/diastolic/oxygen_saturation/weight_kg/height_cm instead.

Type: `object`

## Fields

| Field | Type | Required | Format | Allowed values | Default | Nullable | Description |
|---|---|---:|---|---|---|---:|---|
| `blood_glucose` | `number|null` | No |  |  |  | Yes | Blood glucose in mg/dL, optional. FHIR-only -- Athena has no glucose vitals element to sync to. |
| `diastolic` | `number|null` | No |  |  |  | Yes | Diastolic blood pressure in mmHg; requires systolic to be recorded. |
| `diastolic_bp` | `number|null` | No |  |  |  | Yes | Not read by the handler; use diastolic. |
| `encounter_id` | `string|null` | No |  |  |  | Yes | FHIR Encounter ID these vitals were captured during, optional. |
| `heart_rate` | `number|null` | No |  |  |  | Yes | Heart rate in beats/min, optional. |
| `height` | `number|null` | No |  |  |  | Yes | Not read by the handler; use height_cm. |
| `height_cm` | `number|null` | No |  |  |  | Yes | Body height in centimeters, optional. |
| `oxygen_saturation` | `number|null` | No |  |  |  | Yes | SpO2 percentage, optional. |
| `pain_score` | `number|null` | No |  |  |  | Yes | Pain intensity on the numeric 0-10 scale, optional. |
| `respiratory_rate` | `number|null` | No |  |  |  | Yes | Respiratory rate in breaths/min, optional. |
| `spo2` | `number|null` | No |  |  |  | Yes | Not read by the handler; use oxygen_saturation. |
| `systolic` | `number|null` | No |  |  |  | Yes | Systolic blood pressure in mmHg; requires diastolic to be recorded. |
| `systolic_bp` | `number|null` | No |  |  |  | Yes | Not read by the handler; use systolic. |
| `temperature` | `number|null` | No |  |  |  | Yes | Body temperature in Celsius, optional. |
| `weight` | `number|null` | No |  |  |  | Yes | Not read by the handler; use weight_kg. |
| `weight_kg` | `number|null` | No |  |  |  | Yes | Body weight in kilograms, optional. |

## Example

None declared in canonical OpenAPI.
