---
title: "Establish a WebRTC leg via SDP offer/answer"
method: POST
path: "/webrtc/offer"
tags: ["WebRTC"]
---

# Establish a WebRTC leg via SDP offer/answer

`POST /webrtc/offer`

## Request body

- WebRTCOfferRequest
  - `sdp` string, required — SDP offer from the browser
  - `app_id` string — Application identifier. Carried through to all events emitted for this leg, and matched against the VSI `app_id` filter.

## Response `200`

SDP answer with leg ID

- WebRTCOfferResult
  - `leg_id` string, required
  - `sdp` string, required

## Other responses

- `400` — Invalid JSON or invalid SDP offer
- `500` — Peer connection, track creation, or answer generation failed

---

[API](https://skmtc.net/voiceblender/apis/voiceblender-api.md) · [All operations](https://skmtc.net/voiceblender/apis/voiceblender-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/voiceblender/voiceblender-api/revisions/126565efa2b4/schema)
