Skip to Content
ToolsLive

Live — live.onoots.com

Live is the ecosystem’s live-event platform: webinars, demos, training, and internal sessions. An event has a stage for speakers, an audience watching over streaming, a Q&A panel with upvotes, simulcast to social platforms, and a recording available once it ends.

Anatomy of an event

FieldValuesWhat it means
StatusdraftliveendedDraft (not started) · live · finished
Visibilityorg · registeredOrganization only · anyone with the link, after registering
HostuserWho created it; can manage it and go on stage
Invite linkcodeThe event’s public registration link

Status transitions are one-way and enforced by the system: an event can’t go back from ended to live, and you can’t delete an organization or user that has a live event — end it first.

Host flow

Create the event

Title, scheduled date, and visibility. It starts as draft and gets its invite link.

(Optional) Add simulcast destinations

Up to 5 destinations per event — YouTube, Twitch, X, or any RTMP endpoint of your own. You paste the stream key that platform gives you; Onoots stores it encrypted and never shows it again. Onoots doesn’t create or manage the broadcast on the destination: you do that in their own dashboard.

Start the event

On start, the event flips to live, the speakers’ room opens, and the recording/broadcast launches toward the audience and any configured simulcast destinations.

Broadcast from the stage

The stage (/events/{id}/stage) is the speakers’ low-latency room: camera, microphone, and screen share. Only event managers get in.

Moderate the Q&A

From the stage you see the real-time question panel sorted by upvotes: mark questions as answered, hide them, or delete them.

End the event

The event flips to ended, the broadcast stops, and the recording closes. From then on the same recording is available as video on demand.

Audience flow

Register

Through the invite link. If the event’s visibility is org, belonging to the organization is enough.

Watch

The audience watches over HLS streaming, not the speakers’ room — that’s what lets it scale to large audiences without degrading stage quality. Video access renews continuously while you watch; if you lose access to the event, playback cuts off.

Ask and upvote

Any attendee can submit questions and upvote others’. The most-voted rise to the top. You can edit or delete your own question while it’s still open.

Watch the recording

Once the event ends, anyone who had access can watch the full recording, with free seeking.

Simulcast

A single broadcast process feeds both the audience stream and N RTMP outputs. Worth knowing:

  • Presets for YouTube and Twitch (Onoots supplies the ingest URL); for X or your own destinations you must also paste your ingest URL.
  • The stream key is write-only: the API returns the destination list without the key. It is only decrypted when the broadcast starts.
  • Changing destinations mid-event does not restart the push: changes apply at the next broadcast start.
  • If one destination fails, it’s skipped without taking down the rest.

If destination encryption isn’t configured in the environment, adding a destination returns 503 and simulcast is disabled — the rest of the event (stage, audience, Q&A, registration) keeps working normally. That isolated degradation is by design.

API

Under live.onoots.com, session required. {id} is the event id.

Events

MethodRouteWhat it does
GET · POST/api/eventsLists visible events / creates one
GET · PATCH/api/events/{id}Detail / edit (title, date, visibility)
POST/api/events/{id}/startFlips the event to live and starts the broadcast
POST/api/events/{id}/endEnds the event and closes the recording
POST/api/events/{id}/egressRetries the broadcast if it failed to start

Registration

MethodRouteWhat it does
POST · DELETE/api/events/{id}/registerRegister / un-register
GET/api/events/{id}/registrationsRegistrant list (manager)
DELETE/api/events/{id}/registrations/{userId}Revoke a registration (manager)

Q&A

MethodRouteWhat it does
GET · POST/api/events/{id}/questionsList (with your votes) / submit a question
PATCH · DELETE/api/events/{id}/questions/{qid}Moderate (open/answered/hidden) / delete
POST · DELETE/api/events/{id}/questions/{qid}/voteUpvote / remove upvote

Simulcast and playback

MethodRouteWhat it does
GET · POST/api/events/{id}/simulcastLists destinations (no key) / adds one
DELETE/api/events/{id}/simulcast/{destId}Removes a destination
POST/api/viewer/heartbeatRenews video access and meters usage
POST/api/viewer/vodIssues recording access (ended events only)

Usage and quotas

Live draws on its own participant-minute pool (speakers + audience), separate from the AI token pool. You see it in Platform → Limits, under the “Live events” card.

PlanParticipant-minutes / month
Starter2,000
Pro500,000
Max2,000,000
Enterprise5,000,000

Design: why it scales

  • Two separate paths — speakers use a low-latency room; the audience, streaming. A large audience never competes with stage quality.
  • Q&A over broadcast, not the database — updates fan out over a private event channel instead of every viewer listening to table changes: with hundreds of attendees upvoting, that’s exactly the event that would fall over.
  • Votes are recounted, not incremented — under races or redelivery the count converges on the true value, with no lost or double votes.
  • Immutable authorship — a question can’t change event or author, not even by a moderator.
  • Isolated degradation — if simulcast fails the event continues; if the recording fails the audience sees “unavailable” instead of an error.

The recording has a retention window configured in storage. Past that window, video on demand gracefully stops being available — for permanent archiving, download the recording first.

Last updated on