Schemas
Device
idDevice ID. Pass this value as deviceId in requests.
namestatusConnection state. Offline after 90 seconds without contact; maintenance means temporarily unavailable.
Readiness of each feature on this device.
lastSeenAtLast contact with Kaleo; null if unknown.
DeviceCapability
capabilityLocal feature: audio capture, translated speech playback, or ProPresenter slide input.
statusWhether this feature is ready to use.
Devices
DeviceDetails
ProPresenterSelection
Decision Table
| Variant | Matching Criteria |
|---|---|
| type = object · requires: mode | |
| type = object · requires: mode | |
| type = object · requires: mode, deviceId |
modeUse the church's default ProPresenter device.
StartStreaming
deviceIdOptional audio source device ID from GET /devices. Overrides the church default for this session. If omitted, use the saved default audio source or the sole audio-source-capable paired device; multiple devices without a default require selection. The selected device must still be ready.
Settings for this session only. Omitted fields use saved defaults.
ChangeVoice
voiceTranslation voice. Can change while idle or streaming.
ChangeVisibility
visibletrue shows captions; false hides them while streaming continues.
ChangeDeadline
deadlineAtFuture auto-stop time with Z or a timezone offset. No later than six hours after startedAt.
Analytics
sessionIdstatuslive: provisional counts; pending: awaiting final counts; finalized: saved counts.
viewersUnique viewer identities for the session, not current viewers. null if unavailable; 0 means no viewers.
Viewer analytics by language code. A viewer may appear in several languages. null if unavailable.
HistorySession
sessionIdstartedAtendedAtSession end time; null if unfinished or unavailable.
durationRecorded session length in seconds; null if unfinished or unavailable.
speakerLanguageSpeaker language code; null if not recorded.
targetLanguagesRecorded translation language codes, or ["ALL"].
transcriptAvailabletrue when the saved transcript is ready. Does not grant public access or a download URL.
publicSharingEnabledtrue when public sharing is enabled for the completed session.
HistoryPage
totalTotal sessions that match the filters, across all pages.
pagePage returned; may be lower than requested.
pageSizeMaximum sessions per page, capped at 100.
SessionDetails
Language
codeUse this exact code in language fields.
nameEnglish display name.
nativeNameName in its own language; English if unavailable.
emojiDisplay emoji for this language.
Languages
LanguageDetails
StreamingStatus
streamingtrue during an active session, including startup, reconnects, and shutdown. Does not confirm audio is arriving.
sessionIdCurrent session ID; null while idle.
startedAtCurrent session start time; null while idle.
deadlineAtAutomatic stop time; null while idle or if no deadline is recorded.
speakerLanguageCurrent speaker language code; null while idle.
targetLanguagesCurrent translation language codes; empty while idle.
voiceTranslation voice, including while idle.
visibletrue shows captions; false hides them. Also applies while idle.
publisherKaleo Connect device or browser that sends audio; null while idle.
phaseSession stage; idle means no session is active.
Church defaults for the next manual start. Active session overrides do not change these values.

