Skip to main content
Conversation transcripts and interaction records from chat and voice channels. 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.

Conversation

Type: conversation · Source: Python SDK / REST Reserved for the end of a chat or voice conversation with transcript: conversation_id + transcript (plain string or structured turns with speaker_label, text); one event per conversation end; triggers memory and conversation state. Payload
conversation_id
string
Shared with conversation_turn events for the same session.
channel
string
Communication channel.
duration_seconds
integer
Total conversation duration in seconds.
language
string
BCP 47 language tag (e.g. en-US).
participants
object[]
transcript
string | array
flagged
boolean
True when this conversation was flagged for clinical review.
flag_reason
string
Reason the conversation was flagged.
source
string | object
Who asserted this fact. Accepts a legacy string (e.g. ‘patient_self_report’) or a structured Source object.
Example
import olira
from olira import OliraLogType

olira.log(
    log_type=OliraLogType.CONVERSATION,
    patient_id="your-patient-id",
    payload={},
)
Related types: Use clinical_note for provider clinical notes, conversation_turn for single turn during conversation. Do not mix with conversation_turn for the same session.

Conversation turn

Type: conversation_turn · Source: Python SDK / REST Reserved for one turn within an ongoing conversation when logging incrementally: conversation_id + turn_index + speaker_label + text; one event per turn; same session uses same conversation_id. Payload
conversation_id
string
required
Must be consistent across all turns in the same session.
turn_index
integer
required
Monotonically increasing integer within a session, starting at 0.
speaker_label
string
required
Who spoke this turn.. Example: patient, agent, clinician
text
string
required
The text content of this turn.
channel
string
Communication channel.
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.CONVERSATION_TURN,
    patient_id="your-patient-id",
    payload={
        "conversation_id": "...",
        "turn_index": 0,
        "speaker_label": "patient",
        "text": "..."
    },
)
Related types: Use conversation for full transcript at conversation end, clinical_note for clinical notes. Do not mix with conversation transcript for the same session.

Memory report

Type: memory_report · Source: Python SDK / REST, Integration Reserved for pre-structured facts to store in the memory bank only: content + optional type (MemoryType); bypasses extraction when type is set. Payload
content
string
required
The memory fact to store. Should be a complete, self-contained statement about the patient.
type
string
MemoryType category tag. When provided, automatic tagging is skipped. interests_concerns = hobbies/concerns; mood_stress = emotional state; daily_functions_of_living = ADL ability; symptom_context = circumstances around symptoms; health_history = past medical history; nutrition_related = diet/nutrition; diagnosis = named diagnoses; treatment = regimen/treatment info; social_determinants_of_health = housing/employment/transport; lab_and_vitals = lab/vital values in context; clinical_observations = provider exam findings.. Example: interests_concerns, mood_stress, daily_functions_of_living
Example
import olira
from olira import OliraLogType

olira.log(
    log_type=OliraLogType.MEMORY_REPORT,
    patient_id="your-patient-id",
    payload={
        "content": "..."
    },
)
Related types: Use conversation or clinical_note for conversation or note content. Not intended for updating event state or stable state (use condition_updated, medication_list_update, lab_results, etc.). Memory is the sole target; no direct state update.