Most integrations never need this endpoint — it exists for teams building their own custom WebRTC client instead of using MeetOne's hosted join pages.

Most integrations should simply use host_join_url and guest_join_url from the Room object — MeetOne's hosted join pages already handle signaling, media negotiation, and reconnection for you. Only use the endpoint below if you're building your own custom WebRTC client from scratch.

When to use this endpoint

Use GET /api/rooms/{room_token}/signaling only if you're implementing your own WebRTC client and need the connection details MeetOne's own join pages use internally: the signaling WebSocket URL, channel, and the ICE (STUN/TURN) servers to use for the peer connection.

Get the signaling configuration

GET /api/rooms/{room_token}/signaling

Path parameter Type Description
room_token string The room's access token (host) or guest token — see Rooms endpoints.
curl "https://acme.meetone.io/api/rooms/65a56167f28f6dec/signaling" \
  -H "Authorization: Bearer $MEETONE_API_TOKEN"
{
  "room_token": "65a56167f28f6dec",
  "signaling": {
    "websocket_url": "wss://acme.meetone.io/cable",
    "room_id": "f167d6f76f14991c",
    "channel": "CallChannel",
    "protocol": "actioncable"
  },
  "ice_servers": [
    {
      "urls": ["turn:turn.example.com:443?transport=udp"],
      "username": "1234567890:username",
      "credential": "credential-token"
    }
  ],
  "status": "active",
  "name": "Follow-up consultation",
  "scheduled_at": "2024-08-23T15:19:36.378+02:00"
}

Returns 401 Unauthorized for a missing or invalid token, and 404 Not Found if room_token doesn't match any room.

The RoomSignaling object

Field Type Description
room_token string The room token used in the request.
signaling.websocket_url string WebSocket URL for real-time signaling.
signaling.room_id string Room identifier for the signaling channel.
signaling.channel string Signaling channel name to subscribe to.
signaling.protocol string WebSocket protocol used by the signaling channel.
ice_servers array One or more STUN/TURN server configurations for the WebRTC peer connection.
status string Current room status — see Room lifecycle.
name string Room name.
scheduled_at string (date-time) Informational scheduled start time — see Room lifecycle.

ICE servers

Each entry in ice_servers follows the standard WebRTC RTCIceServer shape:

Field Type Description
urls array of strings One or more STUN/TURN server URLs.
username string Username for TURN authentication.
credential string Credential/password for TURN authentication.

Pass these directly into your RTCPeerConnection configuration's iceServers option.

Questions? Contact us at support@meetone.io.