Skip to main content
Stable patient facts: demographics, conditions, care team, insurance, allergies, and related records. Submit these via POST /v1/logs/batch or the Python SDK; see How logs work for submission fields and the difference between lifecycle-tracked and point-in-time log types.

Demographics

Type: demographics · Source: Python SDK / REST, Integration · Extensible Reserved for patient identity and contact (stable profile): name, dob, sex, marital_status, address, phone, email, language, ethnicity; patch style. Payload
name
string
Full name of the patient.
dob
string
Date of birth in ISO 8601 date format (YYYY-MM-DD).
sex
string
Biological sex or sex assigned at birth.
marital_status
string
Patient’s marital status (e.g. single, married, widowed).
address
object
phone
string
Contact phone number (legacy scalar; superseded by telecom). Still accepted via computed back-read.
email
string
Contact email address (legacy scalar; superseded by telecom). Still accepted via computed back-read.
telecom
object[]
ContactPoint list (phone/email/…); supersedes scalar phone/email.
addresses
object[]
Address list; supersedes scalar address.
identifiers
object[]
External identifiers (e.g. MRN).
language
string
Preferred language as BCP 47 tag (e.g. en-US, es-MX).
ethnicity
string
Patient’s self-reported ethnicity.
extensions
object
Open key/value bag for client/source-specific fields that lack a typed slot; merged into the entry’s extensions (leaf-level, last-writer-wins by event timestamp).
source
string | object
Who asserted this fact. Legacy string or structured Source object.
Example
import olira
from olira import OliraLogType

olira.log(
    log_type=OliraLogType.DEMOGRAPHICS,
    patient_id="your-patient-id",
    payload={},
)
Related types: Use care_team for care team providers, emergency_contact for emergency contact. Not intended for clinical or event data.

Condition

Type: condition · Source: Python SDK / REST, Integration · Lifecycle-tracked · Extensible Reserved for documenting any condition in the patient’s medical history, covering both currently active and past/resolved conditions: disease_type = diagnosis or condition name (e.g. breast cancer, COPD, diabetes, UTI); stage = disease stage or grade; clinical_status = active|resolved|remission|inactive|entered_in_error; snomed_code for coded interoperability; icd10_codes[]; conditions[] for multi-condition payloads. Payload
disease_type
string
Primary/legacy condition name (e.g. breast cancer, COPD, type 2 diabetes).
stage
string
Disease stage or grade (e.g. Stage III, T2N1M0, Grade 2).
diagnosis_date
string
ISO 8601 datetime of diagnosis.
icd10_codes
string[]
ICD-10-CM codes for the condition.
clinical_status
string
Current clinical status of the condition.. One of: active, resolved, remission, inactive, entered_in_error
snomed_code
string
SNOMED CT concept code for coded interoperability.
onset_date
string
Date of symptom onset (may predate formal diagnosis).
recorded_at
string
Date the condition was recorded in the source system.
is_primary
boolean
True when this is the patient’s primary/index condition.
conditions
object[]
Multi-condition payload; each entry maps to ConditionEntry.
source
string | object
Who asserted this fact. Legacy string or structured Source object.
Example
import olira
from olira import OliraLogType

olira.log(
    log_type=OliraLogType.CONDITION,
    patient_id="your-patient-id",
    payload={},
)
Related types: Use treatment_phase for treatment phase transitions, procedure for procedure outcomes. Not intended for transient symptoms (symptom_reported). Supersedes condition_updated with expanded coverage of all clinical statuses.

Preferences

Type: preferences · Source: Python SDK / REST · Extensible Reserved for communication and lifestyle preferences (stable profile): reading_level, tone, dietary_preferences, comfort_with_technology, energy_level, symptoms_need_help_managing, things_to_track, notification_preferences; patch style. Payload
reading_level
string
Patient’s preferred reading or health literacy level (e.g. basic, intermediate, advanced).
tone
string
Preferred communication tone (e.g. formal, conversational, supportive).
dietary_preferences
string[]
Dietary restrictions or preferences (e.g. vegetarian, low-sodium, gluten-free).
comfort_with_technology
string
Self-reported comfort with digital tools (e.g. low, moderate, high).
energy_level
string
Self-reported typical energy level.
symptoms_need_help_managing
string[]
Symptoms the patient wants help tracking or managing.
things_to_track
string[]
Health metrics or topics the patient wants to monitor.
notification_preferences
object
extensions
object
Open key/value bag for client/source-specific fields that lack a typed slot; merged into the entry’s extensions (leaf-level, last-writer-wins by event timestamp).
source
string | object
Who asserted this fact. Legacy string or structured Source object.
Example
import olira
from olira import OliraLogType

olira.log(
    log_type=OliraLogType.PREFERENCES,
    patient_id="your-patient-id",
    payload={},
)
Not intended for clinical data; care plan or medications.

Emergency contact

Type: emergency_contact · Source: Python SDK / REST · Extensible Reserved for healthcare proxy or emergency contact (stable profile): name, relationship, phone, email; patch style. Payload
name
string
Full name of the emergency contact or healthcare proxy.
relationship
string
Relationship to the patient (e.g. spouse, parent, sibling, friend).
phone
string
Contact phone number.
email
string
Contact email address.
extensions
object
Open key/value bag for client/source-specific fields that lack a typed slot; merged into the entry’s extensions (leaf-level, last-writer-wins by event timestamp).
action
string
Incremental action for this entry. Defaults to add; ‘remove’ deletes the matching entry.. One of: add, update, remove
source
string | object
Who asserted this fact. Legacy string or structured Source object.
Example
import olira
from olira import OliraLogType

olira.log(
    log_type=OliraLogType.EMERGENCY_CONTACT,
    patient_id="your-patient-id",
    payload={},
)
Related types: Use care_team for care team providers, demographics for demographics.

Care team

Type: care_team · Source: Python SDK / REST, Integration · Extensible Reserved for care team providers (stable profile): members[] with action (add/update/remove), role, name, npi, organization. Payload
members
object[]
required
source
string | object
Who asserted this fact. Legacy string or structured Source object.
Example
import olira
from olira import OliraLogType

olira.log(
    log_type=OliraLogType.CARE_TEAM,
    patient_id="your-patient-id",
    payload={
        "members": [...]
    },
)
Related types: Use care_encounter for care encounters or visits, emergency_contact for emergency contact, clinical_plan_item for plan items or referrals.

Insurance

Type: insurance · Source: Python SDK / REST · Extensible Reserved for payer and plan (stable profile): payer, plan_name, member_id, group_id; patch style. Payload
payer
string
Name of the insurance company or payer.
plan_name
string
Name of the insurance plan.
member_id
string
Patient’s member ID on the insurance plan.
group_id
string
Group number associated with the insurance plan.
extensions
object
Open key/value bag for client/source-specific fields that lack a typed slot; merged into the entry’s extensions (leaf-level, last-writer-wins by event timestamp).
rank
string
Coverage rank; identity discriminator for the multi-entry insurance module. Omit for a single/primary plan.. One of: primary, secondary
action
string
Incremental action for this entry. Defaults to add; ‘remove’ deletes the matching entry.. One of: add, update, remove
source
string | object
Who asserted this fact. Legacy string or structured Source object.
Example
import olira
from olira import OliraLogType

olira.log(
    log_type=OliraLogType.INSURANCE,
    patient_id="your-patient-id",
    payload={},
)
Related types: Use pharmacy for pharmacy. Not intended for other profile or event data.

Social determinants

Type: social_determinants · Source: Python SDK / REST, Integration · Extensible Reserved for social determinants of health (stable profile): living_situation, support_system, transportation_access, employment_status, housing_stability; patch style. Payload
living_situation
string
Patient’s living arrangement (e.g. lives alone, lives with family, assisted living).
support_system
string
Availability and nature of social support (e.g. strong family support, limited support network).
transportation_access
string
Access to transportation for healthcare and daily needs (e.g. has car, relies on public transport, no access).
employment_status
string
Employment status (e.g. employed full-time, unemployed, retired, on disability).
housing_stability
string
Stability of housing situation (e.g. stable, at risk, unhoused).
extensions
object
Open key/value bag for client/source-specific fields that lack a typed slot; merged into the entry’s extensions (leaf-level, last-writer-wins by event timestamp).
source
string | object
Who asserted this fact. Legacy string or structured Source object.
Example
import olira
from olira import OliraLogType

olira.log(
    log_type=OliraLogType.SOCIAL_DETERMINANTS,
    patient_id="your-patient-id",
    payload={},
)
Related types: Use demographics for demographics, care_team for care team. Not intended for clinical findings or events.

Pharmacy

Type: pharmacy · Source: Python SDK / REST · Extensible Reserved for the patient’s pharmacy contact (stable profile): name, address, phone; patch style. Payload
name
string
Name of the patient’s preferred pharmacy.
address
object
phone
string
Pharmacy contact phone number.
extensions
object
Open key/value bag for client/source-specific fields that lack a typed slot; merged into the entry’s extensions (leaf-level, last-writer-wins by event timestamp).
type
string
Pharmacy type; identity discriminator for the multi-entry pharmacy module.. One of: retail, mail_order
action
string
Incremental action for this entry. Defaults to add; ‘remove’ deletes the matching entry.. One of: add, update, remove
source
string | object
Who asserted this fact. Legacy string or structured Source object.
Example
import olira
from olira import OliraLogType

olira.log(
    log_type=OliraLogType.PHARMACY,
    patient_id="your-patient-id",
    payload={},
)
Related types: Use medication_list_update for medications list, insurance for insurance.

Treatment phase

Type: treatment_phase · Source: Python SDK / REST, Integration · Lifecycle-tracked Reserved for treatment phase or care intent transition: new_phase (active_treatment, surveillance, palliative, remission), effective_date, changed_by; triggers downstream effects. Payload
previous_phase
string
Prior treatment phase for audit purposes. Omit if first phase transition.
new_phase
string
required
active_treatment = receiving curative or life-prolonging treatment; surveillance = monitoring after treatment with no active disease; palliative = symptom management and comfort focus; remission = no detectable disease.. One of: active_treatment, surveillance, palliative, remission
effective_date
string
required
ISO 8601 date when the new phase becomes effective.
changed_by
string
required
clinician = explicit provider decision; system = triggered automatically by clinical logic.. One of: clinician, system
source
string | object
Who asserted this fact. Legacy string or structured Source object.
Example
import olira
from olira import OliraLogType

olira.log(
    log_type=OliraLogType.TREATMENT_PHASE,
    patient_id="your-patient-id",
    payload={
        "new_phase": "active_treatment",
        "effective_date": "...",
        "changed_by": "clinician"
    },
)
Related types: Use treatment_response_assessment for response assessment like RECIST. Not intended for condition or diagnosis (condition_updated); medication or plan changes.

Allergy / intolerance

Type: allergy_intolerance · Source: Python SDK / REST, Integration · Lifecycle-tracked · Extensible Reserved for known allergies and intolerances (stable profile): allergies[] with allergen, category (food|medication|environment|biologic|other), criticality (high|low|unable_to_assess), clinical_status, reactions[], snomed_code, recorded_date. Use action=add|update|remove per entry for incremental updates. Payload
allergies
object[]
required
source
string | object
Who asserted this fact. Legacy string or structured Source object.
Example
import olira
from olira import OliraLogType

olira.log(
    log_type=OliraLogType.ALLERGY_INTOLERANCE,
    patient_id="your-patient-id",
    payload={
        "allergies": [...]
    },
)
Related types: Use medication_list_update for medication interactions. Not intended for adverse drug reactions without allergy status; transient side effects (symptom_reported). Maps to FHIR AllergyIntolerance resource.

Immunization

Type: immunization · Source: Python SDK / REST, Integration · Lifecycle-tracked · Extensible Reserved for vaccination and immunization records (stable profile): immunizations[] with vaccine_name, cvx_code, administered_date, status, dose_number, series_name, administered_by. Payload
immunizations
object[]
required
source
string | object
Who asserted this fact. Legacy string or structured Source object.
Example
import olira
from olira import OliraLogType

olira.log(
    log_type=OliraLogType.IMMUNIZATION,
    patient_id="your-patient-id",
    payload={
        "immunizations": [...]
    },
)
Related types: Use medication_list_update for medication administration, allergy_intolerance for allergic reactions to vaccines, lab_results for lab serology results. Maps to FHIR Immunization resource.

Device

Type: device · Source: Python SDK / REST · Lifecycle-tracked · Extensible Reserved for implanted and medical devices (stable profile): devices[] with device_name, device_type (implanted|external|wearable), udi, manufacturer, implanted_date, removed_date, body_site, status. Use action=add|update|remove per entry for lifecycle management. Payload
devices
object[]
required
source
string | object
Who asserted this fact. Legacy string or structured Source object.
Example
import olira
from olira import OliraLogType

olira.log(
    log_type=OliraLogType.DEVICE,
    patient_id="your-patient-id",
    payload={
        "devices": [...]
    },
)
Not intended for consumer wearables syncing data streams (passive SDK); care team equipment; home monitoring interpreted data (vitals_updated). Internal-only: not produced by the FHIR bundle absorber; not submittable via public SDK. Use for server-side or trusted pipelines only.

Family history

Type: family_history · Source: Python SDK / REST, Integration · Lifecycle-tracked · Extensible Reserved for family medical history by relative (stable profile): relatives[] with relationship, conditions[] (each with condition_name, snomed_code, icd10_code, onset_age), deceased, notes. Entries are upserted by relationship — sending a relative again updates their conditions list. Payload
relatives
object[]
required
source
string | object
Who asserted this fact. Legacy string or structured Source object.
Example
import olira
from olira import OliraLogType

olira.log(
    log_type=OliraLogType.FAMILY_HISTORY,
    patient_id="your-patient-id",
    payload={
        "relatives": [...]
    },
)
Related types: Use condition for patient’s own diagnoses, genomic_variant for genetic variant results. Maps to FHIR FamilyMemberHistory resource.