API REFERENCE · LIVE STREAMING

WHIP ingest (WebRTC)

Standard WebRTC-HTTP Ingestion Protocol: POST your SDP offer to the session's whip_url, get the SDP answer back, stream.

01.The protocol

Ingest is standard WHIP -- no custom client, no SDK requirement. OBS 30+, GStreamer, and browser clients work as-is: point them at the ingest.whip_url from Create a session and authenticate with the session token.

02.Connect

THE WHIP EXCHANGE
POST https://live.thefamiliarlab.com/whip/live_77aq2c
Authorization: Bearer whip_tk_9f27c1…
Content-Type: application/sdp

v=0
o=- 46117 2 IN IP4 127.0.0.1
…your SDP offer…

HTTP/1.1 201 Created
Content-Type: application/sdp
Location: /whip/live_77aq2c/resource/1

v=0
…our SDP answer…
  • The Bearer is the ingest.token from session creation -- short-lived and scoped to this session, safe to hand to the machine doing the streaming.
  • DELETE the returned Location resource to disconnect cleanly (standard WHIP teardown).

03.OBS 30+ setup

  • 1. Settings → Stream → Service: WHIP.
  • 2. Server: the session's whip_url.
  • 3. Bearer Token: the session's ingest.token.
  • 4. Start Streaming once the session reports ready -- the session flips to live and every output starts.

GStreamer's whipclientsink and any WHIP-capable encoder take the same two values: URL + Bearer token.

04.What to send

TABLE 01 · EXPECTED MEDIA
TRACKCODECNOTES
AudioOpus 48 kHzThe full program audio -- every voice you want dubbed, plus the scene.
VideoH.264The camera feed.

05.ICE & firewalls

Connectivity is standard ICE: STUN candidates are gathered automatically, and TURN over TLS is provided for networks that block UDP -- corporate and venue networks work with no configuration. The SDP answer carries everything your client needs.

06.Reconnects

If the connection drops, POST a fresh offer to the same whip_url-- inside the session's two-minute grace window (default) it resumes the same session and the dubbed feeds pick back up (Disconnects & reconnects).

07.Access

The API is enterprise-only: private access under a Studio contract, with volume pricing, raised limits, and a named point of contact for the integration. Book a call and your key is issued with the contract.