API reference
Which computer sends the audio
How an API start picks a Stream page, and how to fix OPERATOR_NOT_CONNECTED and OPERATOR_NOT_READY.
The API never captures audio itself. When you call POST /v1/stream/start, LiveSunday picks one open Stream page in your dashboard and tells it to start sending audio. Nobody has to click anything on that computer.
How LiveSunday picks
A Stream page can start on its own only when it's ready: microphone access is already allowed and the audio input is a microphone or audio interface. A browser tab share can't be ready, because browsers only share a tab after a click.
Of the ready Stream pages in your organization, LiveSunday picks the one opened most recently. Reloading a page counts as opening it again.
So open the Stream page last on the computer that should capture audio. Usually that's the computer at your sound desk. If someone also has the dashboard open on a laptop or phone, have them reload the sound desk computer's page after theirs.
If the picked page doesn't answer within 5 seconds, the start fails with OPERATOR_NOT_CONNECTED. LiveSunday doesn't fall back to another page, because that page could be a phone in someone's pocket, captioning the wrong microphone.
Check canStart in GET /v1/status before a start to see whether it would work and whose page would send the audio.
Fix a failed start
| Code | What it means | How to fix it |
|---|---|---|
OPERATOR_NOT_CONNECTED | No Stream page is open, or the picked one didn't answer within 5 seconds. | Open the dashboard's Stream page on the sound desk computer and keep the tab open. Check that the computer is online and isn't asleep. |
OPERATOR_NOT_READY | A Stream page is open, but none can start audio without a click. | On the Stream page, choose a microphone or audio interface (not Share a browser tab) and click Grant microphone access. If the browser asks, allow it, and choose to remember the choice. |
SESSION_ALREADY_ACTIVE | A stream is already live. | Nothing to fix. Stop it first if you want to restart. |
TRIAL_LIMIT_REACHED | Your free trial minutes are used up. | Your organization's owner chooses a plan on the Billing page. |
SUBSCRIPTION_REQUIRED | Your plan's payment hasn't gone through. | Your organization's owner finishes checkout on the Billing page. |
ORGANIZATION_NOT_ACTIVE | Your subscription isn't active, for example after a failed payment or a cancellation. | Your organization's owner updates the plan or payment method on the Billing page. |
After the start, the stream runs like one started from the dashboard. The Stream page that was picked sends the audio and can stop the stream. Keep it open until the service ends.

