Enums and primitives
Age
| Field | Type | Description |
|---|---|---|
value | integer (≥ 0) | Numeric age. |
unit | "year" or "month" | Age unit. |
value may be 0 only when unit is "month". The maximum age is 130 years.
EvidenceState
| Value | Description |
|---|---|
present | Evidence is confirmed present. |
absent | Evidence is confirmed absent. |
unknown | The user does not know, or did not want to answer. |
EvidenceOrigin
How an evidence item entered the conversation.
| Value | Description |
|---|---|
seeded | Pre-seeded by the client on conversation creation. |
initial | Reported by the user at the beginning of the conversation. |
asked | Answered in response to a question from the assistant. |
spontaneous | Volunteered by the user without being asked. |
inferred | Inferred by the system from other evidence. |
EvidenceSeriousness
Ordered from least to most urgent.
| Value | Description |
|---|---|
normal | Routine. |
serious | Serious. |
emergency | Emergency-level. |
emergency_ambulance | Emergency-level, requires ambulance transport. |
MessageKind
Assistant message role within a turn. can_interrupt on an assistant message is derived from this value and nothing else.
| Value | Description | can_interrupt |
|---|---|---|
acknowledgement | Short acknowledgement of the user's input. | false |
bridge | Connector phrase that introduces what comes next. | false |
filler | Filler content emitted while work continues. | false |
intro | The stage's primary content: the actual question or information being presented to the user. | true |
follow_up | Response that steers the conversation toward payload extraction — answers user questions, clarifies, or re-asks. | true |
read_back | Confirmation of information the user volunteered without being asked. | true |
PatientRelationship
| Value | Description |
|---|---|
self | The user is the patient. |
child | The user is acting on behalf of a child. |
other | The user is acting on behalf of someone else. |
TriageLevel
Ordered from least to most urgent.
| Value | Description |
|---|---|
self_care | Manageable with self-care. |
consultation | Routine consultation recommended. |
consultation_24 | Consultation recommended within 24 hours. |
emergency | Emergency-level care recommended. |
emergency_ambulance | Emergency-level care requiring ambulance transport. |
RecommendationChannel
| Value | Description |
|---|---|
personal_visit | In-person visit. |
video_teleconsultation | Video teleconsultation. |
audio_teleconsultation | Audio teleconsultation. |
text_teleconsultation | Text-based teleconsultation. |
ConditionPrevalence
| Value | Description |
|---|---|
very_rare | Very rare. |
rare | Rare. |
moderate | Moderately prevalent. |
common | Common. |
likely | Highly prevalent. |
ConditionSeverity
| Value | Description |
|---|---|
mild | Mild. |
moderate | Moderate. |
severe | Severe. |
ConditionAcuteness
| Value | Description |
|---|---|
chronic | Long-running condition without acute episodes. |
chronic_with_exacerbations | Chronic with intermittent acute exacerbations. |
acute_potentially_chronic | Acute presentation that may become chronic. |
acute | Acute, time-limited condition. |
HandoffPolicy
Opt-in handoff detectors enabled per conversation via ConversationSettings.handoff_policies. An empty list disables handoff detection entirely.
| Value | Description |
|---|---|
stop_intent_handoff | Detect user requests to leave triage — asking for a human, declining AI triage. Active throughout the conversation. |
pre_triage_handoff | Detect non-triage workflow requests; only active before initial clinical findings have been collected. |
HandoffReason
Emitted on Handoff records and conversation.handoff.requested events.
| Value | Description |
|---|---|
stop_intent_detected | The user wants to stop the current conversation. |
non_triage_intent_detected | The user wants a different, non-triage workflow, before clinical findings were collected. |
PatientEducationSectionType
| Value | Description |
|---|---|
summary | Short summary of the condition. |
how_its_defined | Definition and clinical description. |
how_its_caused | Causes and risk factors. |
how_its_diagnosed | Diagnostic process. |
how_it_can_be_treated_at_home | Self-care and at-home management. |
how_its_prevented | Prevention guidance. |
when_to_see_professional | When to seek professional medical care. |
disclaimer | Medical disclaimer. |
sources | Citations and source references. |
RichTextNodeType
| Value | Description |
|---|---|
paragraph | Paragraph block. |
heading-1 | Top-level heading. |
heading-2 | Second-level heading. |
heading-3 | Third-level heading. |
link | Hyperlink; target carries the URL. |
text | Leaf text node; value carries the string. |
unordered-list | Bulleted list container. |
ordered-list | Numbered list container. |
list-item | Item inside an ordered or unordered list. |