ApiRTC Developer Center

Get your API key

Create your account,
Get your API key and play!


You already have an API key?

You are ready to progress and want to use our JS library? Please check our Quick Start

Quick Start


ApiRTC is a library which allows a developer to easily integrate real-time communications (chat, audio, video) into a web or mobile application. Behind the scenes, the WebRTC technology is used : this means that the media flows are encrypted and exchanged in peer-to-peer when possible. Otherwise a media relay (TURN server) may be required.

ApiRTC is the entry point of our platform that will manage all connection establishments for you including user connection, user presence and media establishment.

ApiRTC library is available in different format depending of the integration you need :

  • Web or Hybrid Application : Javascript
  • Native Application : Swift for iOS, Java for Android

ApiRTC enables you to exchange different media content type :

  • Chat
  • Voice
  • Video
  • Screensharing
  • Whiteboard
  • Datachannel (files ...)
  • JSON data

And manage important features such as :

  • Conference
  • Media optimization
  • Firewall traversal
  • Network and QoS testing
  • Presence
  • SIP interconnection
  • Call recording and replay

ApiRTC call anatomy

Step 1: Initialize connection

Let's say that we have a mobile user that wants to call a desktop user (Client 1 calling Client 2). The signaling offer of the Client 1 goes through the signaling server (CCS), and is relayed to the desktop client who can choose to accept or refuse the call

Step 2: Initiate call

Now both clients are aware of the capabilities of each other (audio/video codecs supported for instance). In a typical scenario they will at this point also be able to “talk” to each other: the signaling server is essentially useless now. They are now able to exchange their media (audio/video) flux between each other.

Step 3: Peer to peer media exchange

As we see with this simple example, the signalisation phase is absolutely crucial to establish calls. There are also many factors not presented in this simple example (differences between browsers, media constraints, fallback if there are firewalls…), but this simple scenario is helpful to understand the following tutorials.

ApiRTC tutorials

These tutorials describes some of the possibilities of ApiRTC, the goal of our tutorials is to help you in the ApiRTC integration.

For more details, you can also check our complete API Reference

UserAgent tutorials

UserAgent is the starting point of apiRTC and enables you to manage several important aspects such as :

  • User registration
  • Media devices management
  • Offline features ...

More details on our UserAgent description and UserAgent API

UserAgent-1 : Registration : external user management

Manage your users in your database

UserAgent-2 : Registration with integrated users management

Users are managed on Apizee Cloud

Conversation tutorials

Conversation will enable you to manage multi-party communication : conference, whiteboard, groupChat ...

These tutorials describes some of the possibilities related to Conversation API


Create a conversation to establish multi-party conference : audio, video

Conversation-2 : Conference with media devices selection

Create a conversation to establish multi-party conference : audio, video and select your media devices

Conversation-3 : Conference with QoS Monitoring and active speaker detection

Learn how to add QoS Monitoring and active speaker detection on your conference

Conversation-4 : Conference with media muting and screensharing

Learn how to mute your local stream and share your screen in a conference

Conversation-5 : Group Chat

Exchange chat messages between all users in a Conversation

Conversation-6 : Whiteboard

Learn how to start a multi-party Whiteboard on a conversation

Conversation-7 : Whiteboard with invitation

Learn how to start a Whiteboard and invite users

Conversation-8 : Advanced streams Pub/Sub

Learn how to select streams and media type on publish and subscribe

Conversation-9 : Join / Leave

Learn how to join / leave a conference

Conversation-10 : Moderation

Learn how to accept / refuse guest users

Conversation-11 : Recording

Create a conversation recording

Conversation-12 : Conference & Bluetooth (BLE) device

Learn how to use Bluetooth (BLE) device in conference context

Conversation-13 : Conference, chat, file transfer

Learn how to run video conference with chat and file transfer

Conversation-14 : Conference & video file publishing

Learn how to publish a video file as the conversation stream

Conversation-15 : Background substraction

Activate background substraction on conference : blur, transparent or image

Conversation-16 : Media control

Adds the usage of our Stream helpers to control zoom, torch, takePhoto, etc...

Conversation-17 : External RTMP Streaming

Learn how to publish a stream to an external RTMP server

One-to-One Communication

Learn how to establish One-to-One communication on ApiRTC.

One-to-One-1 : Calls

Establish audio, video or screenSharing calls between two users

One-to-One-2 : Chat

Exchange instant messaging between two users

One-to-One-3 : send File

Exchange any type of file between two users

One-to-One-4 : Accept - Refuse calls

Establish audio, video or screenSharing calls between two users with accept/refuse possibility

One-to-One-5 : Call & Send file

Presents how to send file during P2P call

One-to-One-6 : Call, Snapshot & DataChannel

Presents how to exchange snapshot data using DataChannel

Stream Management tutorials

Stream is used to manage MediaStream.

These tutorials describes some of the possibilities related to Stream API

Stream-1 : Select Media

This demo teaches you how to select a media device to start a stream

Stream-2 : Screensharing

Learn how to use screen display for communication

Stream-3 : Recording

This demo teaches you how to locally record a stream

Stream-4 : Snapshot

This demo teaches you how to create a snapshot image from a video stream

Stream-5 : Video resolution

Learn how to start a stream with a selected video resolution and then use it for a call

Hybrid mobile application tutorials

Learn how to integrate ApiRTC in your Hybrid mobile application.

Mobile - Cordova

Create an hybrid application using Cordova framework on Android and iOS

Mobile - Ionic framework

Check our github repository for an integration sample with Ionic

API Tools

Discover APIs to improve your apiRTC experience.

Tools - Precall Test

Allow your visitors to test their Bandwidth, Devices, and Calltest.