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
Full name of the patient.
Date of birth in ISO 8601 date format (YYYY-MM-DD).
Biological sex or sex assigned at birth.
Patient’s marital status (e.g. single, married, widowed).
Contact phone number (legacy scalar; superseded by telecom). Still accepted via computed back-read.
Contact email address (legacy scalar; superseded by telecom). Still accepted via computed back-read.
ContactPoint list (phone/email/…); supersedes scalar phone/email.
Address list; supersedes scalar address.
External identifiers (e.g. MRN).
Preferred language as BCP 47 tag (e.g. en-US, es-MX).
Patient’s self-reported ethnicity.
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).
Who asserted this fact. Legacy string or structured Source object.
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
Primary/legacy condition name (e.g. breast cancer, COPD, type 2 diabetes).
Disease stage or grade (e.g. Stage III, T2N1M0, Grade 2).
ISO 8601 datetime of diagnosis.
ICD-10-CM codes for the condition.
Current clinical status of the condition.. One of:
active, resolved, remission, inactive, entered_in_errorSNOMED CT concept code for coded interoperability.
Date of symptom onset (may predate formal diagnosis).
Date the condition was recorded in the source system.
True when this is the patient’s primary/index condition.
Multi-condition payload; each entry maps to ConditionEntry.
Who asserted this fact. Legacy string or structured Source object.
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
Patient’s preferred reading or health literacy level (e.g. basic, intermediate, advanced).
Preferred communication tone (e.g. formal, conversational, supportive).
Dietary restrictions or preferences (e.g. vegetarian, low-sodium, gluten-free).
Self-reported comfort with digital tools (e.g. low, moderate, high).
Self-reported typical energy level.
Symptoms the patient wants help tracking or managing.
Health metrics or topics the patient wants to monitor.
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).
Who asserted this fact. Legacy string or structured Source object.
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
Full name of the emergency contact or healthcare proxy.
Relationship to the patient (e.g. spouse, parent, sibling, friend).
Contact phone number.
Contact email address.
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).
Incremental action for this entry. Defaults to add; ‘remove’ deletes the matching entry.. One of:
add, update, removeWho asserted this fact. Legacy string or structured Source object.
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
Who asserted this fact. Legacy string or structured Source object.
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
Name of the insurance company or payer.
Name of the insurance plan.
Patient’s member ID on the insurance plan.
Group number associated with the insurance plan.
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).
Coverage rank; identity discriminator for the multi-entry insurance module. Omit for a single/primary plan.. One of:
primary, secondaryIncremental action for this entry. Defaults to add; ‘remove’ deletes the matching entry.. One of:
add, update, removeWho asserted this fact. Legacy string or structured Source object.
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
Patient’s living arrangement (e.g. lives alone, lives with family, assisted living).
Availability and nature of social support (e.g. strong family support, limited support network).
Access to transportation for healthcare and daily needs (e.g. has car, relies on public transport, no access).
Employment status (e.g. employed full-time, unemployed, retired, on disability).
Stability of housing situation (e.g. stable, at risk, unhoused).
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).
Who asserted this fact. Legacy string or structured Source object.
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 of the patient’s preferred pharmacy.
Pharmacy contact phone number.
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).
Pharmacy type; identity discriminator for the multi-entry pharmacy module.. One of:
retail, mail_orderIncremental action for this entry. Defaults to add; ‘remove’ deletes the matching entry.. One of:
add, update, removeWho asserted this fact. Legacy string or structured Source object.
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
Prior treatment phase for audit purposes. Omit if first phase transition.
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, remissionISO 8601 date when the new phase becomes effective.
clinician = explicit provider decision; system = triggered automatically by clinical logic.. One of:
clinician, systemWho asserted this fact. Legacy string or structured Source object.
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
Who asserted this fact. Legacy string or structured Source object.
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
Who asserted this fact. Legacy string or structured Source object.
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
Who asserted this fact. Legacy string or structured Source object.
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
Who asserted this fact. Legacy string or structured Source object.
Related types: Use
condition for patient’s own diagnoses, genomic_variant for genetic variant results. Maps to FHIR FamilyMemberHistory resource.
