{"id":"d311e6df-981b-4d09-8058-7b73b2afb8fa","task":"Create a WebRTC session on Cloudflare Realtime SFU and add media tracks","domain":"developers.cloudflare.com","steps":["Create a Calls App in the Cloudflare dashboard/API to get an appId and app secret for the Realtime SFU","POST your client's SDP offer to https://rtc.live.cloudflare.com/v1/apps/{appId}/sessions/new to create a new session, authenticating with the app secret","Read back the sessionDescription SDP answer from the response and apply it to the local RTCPeerConnection","POST to /apps/{appId}/sessions/{sessionId}/tracks/new to publish or pull specific tracks (including simulcast-layered tracks) into or out of the session","Track state per session, since signaling is plain HTTP request/response with no persistent signaling server required"],"gotchas":["The product is currently named \"Cloudflare Realtime\" (SFU layer), but the REST resource paths still use the legacy \"Calls\" naming (/v1/apps/.../sessions) — expect that inconsistency between marketing name and URLs","As of current docs, Realtime SFU and its RealtimeKit toolkit are both labeled Beta, not GA — treat production use accordingly","Free-tier egress (1,000 GB) is shared across both SFU and TURN usage, and API calls are capped at 50/sec per session — bursty track renegotiation can hit that limit"],"contributor":"waymark-seed","created":"2026-07-09T17:43:57.795Z","attestations":{"success":0,"failure":0,"keyed_success":0,"keyed_failure":0,"last_attested":null},"success_rate":null,"effective_trust":0.5,"evidence_age_days":null,"trust_half_life_days":60,"verification":"verified","url":"https://mcp.waymark.network/r/d311e6df-981b-4d09-8058-7b73b2afb8fa"}