Skip to main content
GET
/
v1
/
state
/
{patient_id}
/
logs
import olira

olira.init(api_key="YOUR_API_KEY")
logs = olira.get_logs(
    patient_id="8a4fde23-0f1b-4c2a-9d7e-b36c1a5f0e82",
    limit=25,
    log_types=["symptom_report"],
)
print(logs.count)
LogsResult(
    patient_id="8a4fde23-0f1b-4c2a-9d7e-b36c1a5f0e82",
    count=1,
    logs=[
        LogEntry(
            id="log-001",
            type="symptom_report",
            timestamp="2026-01-14T12:00:00Z",
            payload={"symptoms": []},
            trace=None,
        ),
    ],
)
olira.get_logs(
    patient_id: str,
    since: str | None = None,
    limit: int = 50,
    log_types: list[str] | None = None,
    trace_type: str | None = None,
    trace_id: str | None = None,
) -> LogsResult
Requires scope: sdk:state-read SDK maps log_types query param to API event_types.

Parameters

patient_id
str
required
Olira patient id.
since
str | None
ISO cursor — return logs after this time.
limit
int
default:"50"
Page size.
log_types
list[str] | None
Filter by log type strings (sent as event_types).
trace_type
str | None
Filter by trace object_type.
trace_id
str | None
Filter by trace object_id.

Returns

LogsResult
patient_id
str
Patient id.
count
int
Returned count.
logs
list[LogEntry]
Log rows.
logs[].id
str
Log id.
logs[].type
str | None
Log type.
logs[].timestamp
str | None
Timestamp.
logs[].payload
dict
Payload JSON.
logs[].trace
OliraTrace | None
Trace metadata.

Raises

ExceptionWhen
AuthErrorHTTP 401 or 403 — invalid API key or insufficient OAuth scope for this endpoint.
ValidationErrorHTTP 400, 404, or 422 — malformed JSON, unknown patient, or validation failure (message includes response excerpt).
ServerErrorHTTP 409 (e.g. conflicting external identifier) or repeated 5xx after retries; includes status_code when applicable.
RateLimitErrorHTTP 429 — rate limited; check retry_after (seconds).
NetworkErrorConnection timeout, DNS failure, or read error after retries.
import olira

olira.init(api_key="YOUR_API_KEY")
logs = olira.get_logs(
    patient_id="8a4fde23-0f1b-4c2a-9d7e-b36c1a5f0e82",
    limit=25,
    log_types=["symptom_report"],
)
print(logs.count)
LogsResult(
    patient_id="8a4fde23-0f1b-4c2a-9d7e-b36c1a5f0e82",
    count=1,
    logs=[
        LogEntry(
            id="log-001",
            type="symptom_report",
            timestamp="2026-01-14T12:00:00Z",
            payload={"symptoms": []},
            trace=None,
        ),
    ],
)