Skip to main content
Video API

Video API for embedded video rooms

What is a video API?

A video API is a set of endpoints your back end calls to create, join, moderate, and record live, embedded video rooms in your own product: you schedule a room, mint a short-lived join token server-side, and hand that token to a prebuilt widget that runs the room in the browser over WebRTC — nothing to install. Orbit by Devotel's Video API does that through POST /api/v1/video/rooms-scheduled, with recording start/stop/pause, spotlight and room lock, waiting-room and hand-raise moderation, and reusable room-config templates behind the same X-API-Key header as the rest of the platform — and the @devotel-orbit/web SDK ships the prebuilt <orbit-video-room> element so the embed is a snippet, not a build. Video rooms run on the same account as SMS, voice, WhatsApp, email, and AI agents, so a session that escalates from a text thread to a video room lands in the same contact record and the same pay-as-you-go bill — no Twilio Video, Daily, or LiveKit integration to bolt on.

Embed your first video room from code

Your back end schedules a room and mints a bounded join token per participant. Authenticate with your API key in the X-API-Key header — the browser never sees it, only the token.

curl -X POST "https://api.orbit.devotel.io/api/v1/video/rooms-scheduled" \
  -H "X-API-Key: $ORBIT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "name": "Support consultation", "scheduled_at": "2026-09-01T14:00:00Z" }'

curl -X POST "https://api.orbit.devotel.io/api/v1/video/rooms-scheduled/ROOM_ID/join" \
  -H "X-API-Key: $ORBIT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "participant_name": "guest" }'

Then mount the prebuilt room from the web SDK — camera, microphone, screen-share, and device-selection toggles ship with it:

<script type="module"
  src="https://cdn.jsdelivr.net/npm/@devotel-orbit/web@latest/dist/index.mjs">
</script>

<div style="height:600px">
  <orbit-video-room
    token="SERVER_MINTED_JOIN_TOKEN"
    display-name="Support agent"
    enable-screen-share="true"
  ></orbit-video-room>
</div>

Guests join from a lobby link with nothing to install.

What the Orbit Video API does

CapabilityWhat you get
Scheduled rooms from one endpointCreate a named, DB-backed video room with POST /api/v1/video/rooms-scheduled — set a start time to schedule it or leave it to start now, cap capacity, and optionally pre-enable auto-recording. The room returns a host token on create so the organizer joins without a second call, and it surfaces in the inbox as its own video conversation.
Join-token minting per participantYour back end posts to POST /api/v1/video/rooms-scheduled/:id/join with a display name and gets back a bounded, per-join token the browser carries — the tenant API key never leaves your server. The same token feeds the prebuilt embed, the guest lobby, and the dashboard's join surfaces, so client and back end agree on one format.
Recording with start/stop/pauseDrive recording from the API: /recording/start, /recording/stop, and /recording/pause on a scheduled room id — or set recording up front so it starts automatically when the first participant joins. Finished recordings land back on the room.
Spotlight and in-room moderationPut a speaker on the spotlight from the API (POST /rooms-scheduled/:id/spotlight), lock the room, mute or remove a participant, run the waiting-room lobby and the hand-raise queue, and clear the deck with mute-all — the same moderation the dashboard's Live tab drives.
Reusable room-config templatesSave a room's configuration as a template and create later rooms from it with the same behavior as a direct create — the recurring onboarding-call or weekly-sync setup stops being a copy-paste of settings.
Prebuilt embed from the web SDKThe @devotel-orbit/web SDK registers a video-room element you drop into your page with the server-minted token — camera, microphone, screen-share, and device-selection toggles included — or you can drive the same widget from JavaScript, so a video room in your product is a snippet rather than a UI build.
Broadcast, dial-in, and dial-outStream a room to a live audience from the API, or bridge it to the phone network with dial-in for guests and dial-out to bring a PSTN participant in — the same room serves the browser crowd and the caller on a landline.
One account with the rest of OrbitThe same API key and the same account also carry SMS, WhatsApp, RCS, email, voice, and AI agents, with shared contacts and one pay-as-you-go bill — so video is a routing change on an existing integration, not a second vendor contract.

Built for embedded video journeys

  • Embedded video in customer support

    Escalate a stuck SMS or WhatsApp thread to a live video room: your back end mints a join token, the customer clicks a lobby link, and the session and its recording sit on the same contact record as the messages that led to it.

  • Consultations and onboarding calls

    Run onboarding, telehealth-style, or advisory consultations from your own product with a prebuilt room you did not have to design — scheduled ahead, capacity-capped, and recorded where compliance asks for it.

  • Live events and webinars

    Broadcast a room to a large audience from the API with live engagement tracking, and let attendees raise a hand and join the stage instead of installing an event app.

  • Recurring internal meetings

    Keep a fixed weekly sync or standup as one recurring room: guests land from a calendar invite that carries the whole series, and the room outlives any single session.

Orbit vs Twilio Video vs Daily vs LiveKit

FeatureOrbitTwilio VideoDailyLiveKit
Video API essentials
Video rooms SDK on usage-based pricing
Prebuilt, embeddable video-room UI component
Scheduled rooms with server-minted join tokens
Recording with start/stop/pause from the API
Live broadcast / egress and PSTN dial-in
Beyond video
SMS, WhatsApp, email & programmable voice on one account
Native AI agents across channels
Built-in contact center & shared inbox
One platform & one pay-as-you-go bill across every channel

Comparison reflects each vendor's core LP-DIY video SDK as advertised on its public product surface, as of Q3 2026. The rows are deliberately category-level (video SDK available; prebuilt embeddable room UI; non-video channels on the same account; usage-based pricing) — no numeric, capacity, or discount claims. Subject to change at the vendor's discretion. Yes Partial No

Read the step-by-step embedded-video guide

What it costs

Video is pay-as-you-go with no monthly platform fee — video minutes, recording, and broadcast meter into the same pre-paid credit balance every other Orbit channel draws down, so there is no second vendor invoice. Volume rate cards are available on request.

See pay-as-you-go pricing

Video API — frequently asked

What is a video API?
A video API is a set of endpoints your back end calls to run live, in-browser video rooms from your own product. You create or schedule a room, mint a short-lived join token server-side, and hand that token to a widget that runs the room in the browser over WebRTC. The provider operates the media servers and the room lifecycle — recording, moderation, and broadcast — so you do not.
How do I embed a video room in my app?
Two calls and one element. Your back end creates a room with POST /api/v1/video/rooms-scheduled, then mints a join token with POST /api/v1/video/rooms-scheduled/:id/join for each participant. Your front end mounts the prebuilt video-room element the web SDK registers, passing it that token — the tenant API key never reaches the browser, and there is no video UI to design.
Can I record rooms from the API?
Yes. You can start, stop, and pause recording on a room id from the API, or set the room up to record automatically when the first participant joins. Finished recordings land back on the room, so an agent can share or revoke a link to the session later.
Do participants need to install anything?
No. Rooms run in the browser from a join link — a guest clicks the lobby URL and joins. Guests can also dial in by phone if they cannot use a browser, and a host can dial a participant out on the phone network from the same room.
How does Orbit's Video API compare to Twilio Video, Daily, or LiveKit?
All four give you a video rooms SDK over WebRTC. Where Orbit differs is scope: the video API is one surface of the same account that already carries your SMS, WhatsApp, email, voice, and AI agents, so a support session can escalate from a text thread to a video room without a second vendor, a second integration, or a second bill — and the prebuilt embed from the web SDK means the room UI is a snippet, not a build. The blog post on embedding video in customer support walks the full flow.
How much does the Video API cost?
Video meters into the same pay-as-you-go account as every other Orbit channel — you pre-pay credits and pay for what you use, with no monthly platform fee. Current rates are published on the pricing page, and volume rate cards are available on request.
Can I save and reuse a room configuration?
Yes. A room's setup can be saved as a reusable template and later rooms created from it with the same behavior as a direct create — useful for a fixed onboarding-call or weekly-sync format you run repeatedly.

Explore more

Embed video in your product

Video is one surface of Orbit by Devotel — SMS, voice, WhatsApp, RCS, email, AI agents, and customer data on one platform and one pay-as-you-go bill. Start free, or talk to our team about a volume rate card.

Read the embedded-video walkthrough