Orientation

Choose the right MediaSFU path before you configure

Understand how the dashboard, developer console, SDK documentation, and API workbench fit together.

GoalSelect an implementation surfaceBest forNew builders and operatorsContinue withRooms
Non-technical user guide

Guide switcher

Choose the surface that matches your task.

This page covers dashboard/API feature configuration. Use the dashboard guide for non-technical walkthroughs and the docs portal for SDK implementation.

Basic Concepts

Basic Concepts

Core building blocks for real-time rooms, recording, and event management.

Overview

MediaSFU integrations have two distinct phases: configure the room through HTTP, then operate the live session through an SDK and realtime events. Choose the path below before working through the detailed references.

1

Building with an SDK

Start with the canonical quickstart. Keep direct HTTP usage focused on room setup and access.

Open SDK quickstart
2

Building an API integration

Use these developer-console guides for credentials, defaults, artifacts, and platform integrations.

Continue to Rooms
3

Operating without code

Use the dashboard-first guide for room, recording, billing, and workspace workflows.

Open User Guide

The core integration sequence

  1. 1
    Configure

    Set domains, event defaults, recording behavior, and optional integrations.

  2. 2
    Create and join

    Create a room, issue host or member access, and initialize the selected SDK.

  3. 3
    Operate in realtime

    Use SDK methods and socket events for media controls, moderation, and live state.

  4. 4
    Collect outcomes

    Retrieve recordings, AI notes, activity, and other post-session artifacts.

Keep the protocol boundary clear

  • HTTP: configuration, room creation, access, listing, and administrative cleanup.
  • SDK and sockets: participant media, moderation, state updates, and live coordination.
  • Sandbox: validate request payloads and responses before using production credentials.
Recommended next step

Open Rooms to implement the smallest complete flow: create, join, connect, and clean up.

Continue to Rooms

Video Learning Resources

Get started quickly with our video tutorial series. Perfect for visual learners and those who want to see MediaSFU in action.

Platform Introduction & Overview

Start your MediaSFU journey with this introduction covering platform capabilities, use cases, and development approaches.

Getting StartedPlatform OverviewBest Practices
🔍

Overview

Understanding MediaSFU Rooms

Welcome to the Rooms Overview. In MediaSFU, room lifecycle management follows a simple API flow: create the room, add members, then connect participants through realtime sockets.
Room Allocation: Create a room with the required configuration and host details. A successful response returns host credentials (secret/token) used to secure access.
Member Addition: Add participants through API requests and issue member credentials so each user can join securely with the correct role.
Realtime Communication: After allocation and membership setup, room activity runs over sockets for signaling, media state updates, and in-room coordination.

Once connected, clients publish and consume events related to media capture, device state, and room lifecycle changes. If your use case is recording-heavy, the later sections cover the recommended patterns for stable recording sessions.

For most teams, create + member onboarding is enough to get started quickly. You can layer on advanced controls as your product requirements grow.

Note: If you are using an official SDK, you can focus on the core room APIs first. The deeper sections are mainly for custom SDK builders or unsupported language environments.

  • Real-time audio and video communication
  • Screen sharing and presentation capabilities
  • Recording and streaming features
  • Advanced room management tools
  • Scalable infrastructure for any size event

Domains Documentation

Domains Documentation

Learn about managing and utilizing domains on MediaSFU, including registration, verification, and control functions.

Domains Overview

Access boundary

Connect production API access to a domain you control.

Registered domains define where production requests may originate and can also establish an institution login boundary. Your subscription determines how many domains the workspace can register.

Production

Registered origin required

Production API requests are accepted only from an origin registered to your workspace.

Development

Local and sandbox access

Unregistered origins and localhost remain available for development and sandbox testing.

Optional identity feature

Institution login

Enable institution login on a registered domain to let authenticated people with matching email addresses join the workspace as sub-users. Keep it disabled when domain ownership should only control API access.

Recommended sequence

From registration to production access

  1. 1
    Register

    Add the exact application origin.

  2. 2
    Configure

    Choose institution-login behavior.

  3. 3
    Verify and use

    Send production requests from that origin.

Continue with the guide sections above to list, create, update, or delete domains.

Developer configuration

Shape room defaults before anyone joins.

Configure participant limits, media defaults, SIP behavior, translation presets, and AI notes from one focused event-settings workflow.

Endpoint/v1/eventssettings
ActionsList, create, update
Room add-onsSIP, translation, AI notes
Current workflow

Event Settings Documentation

Move through the API workflow in order, or jump straight to the action you need.

Overview

Users can define parameters such as the number of participants per page, preferred video orientation, and other relevant settings. This now also includes translation presets, audio vs text-only translation output, and AI notes room flags. This streamlines the event creation process, ensuring that each event aligns with the user's preferred configuration.

Follow the steps below to create (add), update, and list(get) events settings using MediaSFU's API.
Translation note: enableAiNotes requires a non-empty translationConfigNickName. For notes without translated audio, send aiNotesOnly: true; the backend normalizes the room to supportTranslation: true and translationOutputMode: "text-only".
Public POST support: /v1/eventssettings and /v1/rooms accept enableAiNotes, aiNotesOnly, translationOutputMode, translationConfigNickName, and optional aiNoteTakerConfig.

Try it out

Open New Tab

Use the Sandbox to experiment with the API, modify parameters, and analyze responses for different scenarios.

Recording Settings Documentation

Learn about managing and configuring recording settings on MediaSFU for optimal recording experiences.

Overview

Users can define parameters such as the number of participants per page, preferred video orientation, and other relevant settings. This streamlines the recording creation process, ensuring that each recording aligns with the user's preferred configuration.

Note: Changes to adding watermark to be true requires a watermark image to be uploaded to the server. The image should be a PNG file and can only be uploaded using the MediaSFU dashboard. So it's unadvisable to set the watermark to true using the API.
Follow the steps below to create (add), update, and list(get) recordings settings using MediaSFU's API.

Try it out

Open New Tab

Use the Sandbox to experiment with the API, modify parameters, and analyze responses for different scenarios.

Overview
List Sub-Users
Create Sub-User
Update Sub-User
Delete Sub-User
Try It Live

Sub-Users Management

Guide to managing sub-users in MediaSFU

Sub-Users Overview

Sub-users operate within the same account, sharing the balance and credentials automatically. This is useful for institutions, companies, or individual users who want to use the same account under different aliases or for accounting purposes.

As the primary user, you have full control over sub-users, including the ability to manage and monitor their usage across your organization or team.

Key Benefits:
  • Unified account management
  • Shared balance and credentials
  • Enhanced collaboration capabilities
  • Flexible user organization

Getting Started

Follow the steps below to get started with sub-users using our API:

Overview
List Recordings
Try It Live

Recordings Management

Guide to managing recordings in MediaSFU

Recordings Overview

MediaSFU's recording system allows you to capture and manage video recordings from your events, meetings, and webinars. The recordings feature provides full functionality for listing, accessing, and managing recorded content.

Important Note: This documentation specifically covers getting recordings from MediaSFU API. For more information on how to record a room, please refer to the Rooms Documentation here.
Key Features:
  • Automatic recording of events and meetings
  • High-quality video and audio capture
  • Secure storage and access control
  • Easy retrieval and management via API

Getting Started

To get recordings from MediaSFU, follow these simple steps using our API:

Use the GET endpoint to retrieve and manage your recordings. The system provides detailed information about each recording including duration, file size, creation date, and access URLs.

AI Notes Technical Reference

Room flags, translation presets, authenticated app configuration support, and REST payload behavior for optional AI Notes.

The technical AI Notes path is tied to the translation runtime. A translation config defines the STT, LLM, TTS, output mode, and optional AI note-taker defaults. A room or event setting then opts into that config with room-level flags.

Runtime boundary

Translation Config

Stores provider nicknames, pipeline settings, language filters, output mode, and aiNoteTakerConfig.

Room Flags

Enable notes for a specific room with enableAiNotes or force notes-only behavior with aiNotesOnly.

Artifacts

Generated summaries, markdown notes, and transcript exports surface in the dashboard and optional public passcode flow.

Current rule: AI Notes still require a usable translation config nickname. Notes-only mode disables translated playback, but it does not bypass the translation runtime.
Overview
Introduction to AI Credentials
Parameters
API parameters and requirements
Create Credentials
Add new AI credentials
Update Credentials
Modify existing credentials
List Credentials
Retrieve all credentials
Delete Credentials
Remove credentials
Try It Live
Interactive sandbox

AI Credentials Management

Guide to managing AI credentials in MediaSFU

AI Credentials Overview

AI Credentials in MediaSFU allow you to securely store and manage authentication information for AI services like LLM, TTS, STT, and realtime speech-to-speech providers.

Key Features:
  • Secure Storage: API keys and tokens are stored securely
  • Service Integration: Compatible with OpenAI, Deepgram, and other providers
  • User Scoping: Can be assigned to specific sub-users
  • Pipeline Reference: Use nickName to reference credentials in pipelines
Custom providers and domains: MediaSFU can work with custom STT, LLM, TTS, and realtime speech-to-speech endpoints when you use the advanced credential flow. If the provider uses a custom domain that is not already approved, contact support@mediasfu.com before sending live traffic. If a popular provider is missing, email support@mediasfu.com with the provider name and an optional implementation guide.

Management Capabilities

Create, update, delete, and list AI credentials through our REST API endpoints with support for VISION and VOICE services.

AI Credentials Sandbox

AI Credentials

Configure and manage your AI service credentials

Secure Fast Multi-Provider
Payload validated. POST code snippets generated!
1
Action
2
Category
3
Provider
4
Credentials
5
Config
6
Review

What would you like to do?

Select the action you want to perform on AI credentials

Create Credential

Add a new AI credential to your account

Update Credential

Modify an existing AI credential

Get Credentials

Retrieve your AI credentials list

Delete Credential

Remove an AI credential from your account

Payload validated. POST code snippets generated!
SIP Configuration Overview
Understanding SIP configurations and their role in MediaSFU
Configuration Requirements
Essential parameters and data needed for SIP setup
Creating SIP Configurations
Step-by-step guide to creating new SIP configurations
Updating Configurations
How to modify existing SIP configurations
Listing Configurations
Retrieving and managing your SIP configurations
Deleting Configurations
Safely removing unwanted SIP configurations
Number Verification
Verifying contact numbers for active routing
API Sandbox
Interactive testing environment for SIP configuration APIs

SIP Configuration Management

Guide to managing SIP configurations in MediaSFU

SIP Configuration Overview

Telephony foundation

Connect a verified phone number to your calling infrastructure.

A SIP configuration joins a provider or carrier to MediaSFU, assigns the contact number used for routing, and defines how inbound and outbound calls should behave.

Connect

Configure SIP providers, trunks, and verified DIDs.

Route

Direct inbound calls and enable outbound calling.

Automate

Attach IVR, playback, callbacks, or AI agents.

Protect

Apply IP rules, geographic restrictions, and recording policy.

Before going live

Verify the contact number, confirm provider credentials, and test inbound and outbound routing in the sandbox. Configurations may belong to the main workspace or a specific sub-user.

Widget System Overview

Understanding how MediaSFU widgets work end-to-end

Widget System Overview

MediaSFU widgets are embeddable components that add real-time communication features to any website. No coding required for basic integration.

The Complete Flow

1. Create Widget

Configure in Dashboard → Widgets

2. Backend Stores

Widget key + config securely saved

3. Get Embed Code

Platform-specific code generated

4. Add to Site

Copy-paste to your website

5. Widget Auth

Domain validated, token issued

6. Live!

Widget functional on your site

For Non-Developers

Copy-paste embed codes, visual configuration, no coding required.

For Developers

npm packages for React/Vue, full API access, event callbacks.

For Enterprise

Custom UI, webhooks, SSO integration, white-label options.

Overview

Real-time translation for meetings

Real-Time Translation Overview

MediaSFU's real-time translation enables participants in meetings to speak in their native language while others hear the translation in their preferred language. Presets can default to translated audio or text-only output, and can advertise AI note-taking support.

Speech Recognition

Automatic speech-to-text converts spoken words into text in real-time.

AI Translation

Advanced LLMs translate text while preserving context and meaning.

Voice Synthesis

Natural-sounding text-to-speech delivers translations as audio.

Per-Participant

Each participant chooses their listening language independently.

Optional AI Notes

Enable room summaries alongside translation, or run notes-only mode with text-only output.

How It Works

1
Speaker talks

Audio captured and streamed

2
STT Processing

Speech converted to text

3
LLM Translation

Text translated to target languages

4
TTS Output

Translated audio delivered

Use Cases

  • Global Team Meetings — Team members in different countries participate in their native languages
  • Customer Support — Support agents communicate with customers regardless of language barriers
  • International Webinars — Presenters reach global audiences with real-time translation
  • Multilingual Classrooms — Students learn in their preferred language while instructors teach in theirs
  • AI Meeting Recaps — Translation presets can also carry AI notes defaults for summaries, decisions, and follow-up artifacts.
  • Notes-Only Rooms — Teams can use the same translation pipeline to generate notes and transcripts without translated audio playback.
1 / 6

Overview

What are disposable API keys?

Disposable API Keys Overview

Disposable API keys are temporary, scoped credentials that allow third parties to perform specific operations on your account without exposing your main API key.

Time-Limited

Keys expire after a configurable duration (1 day to 1 year, or never).

Permission-Scoped

Restrict to specific operations (create rooms, make calls, etc.).

Domain-Locked

Only works from specified domains for additional security.

Revocable

Instantly revoke access at any time if compromised.

How It Works

1
You create key

Define permissions & domains

2
Share with partner

They integrate the key

3
Partner uses API

Limited to allowed ops

4
Key expires/revoked

Access ends automatically

1 / 6