Video API Routes

Room Management API

Rooms are virtual meeting spaces within the EnableX platform to host RTC sessions. Rooms can be used as video-conferencing chat spaces, instant messaging rooms, or video streaming sessions for real-time collaboration. Rooms can be created, removed, updated, or deleted (CRUD) by using the room route operations.

EnableX supports 3 different type of Rooms, to be used in different use-cases. They are:

  • Permanent Room: These are always available to do a Video Session. So, you can do multiple session in the room until you delete the Room.
  • Scheduled Room: These rooms are available only 15 minutes prior to its scheduled time and remains available for its defined duration. You can do multiple session in the room during its availability. If users are in session, ongoing session continues beyond defined duration.
  • Adhoc Room: By default these rooms are available to do a single session anytime. If its used once, its gets deleted. However, Adhoc Room can be extended to do multiple sessions by adding a duration. Doing so, the room is not deleted after its first use, but it remains available for multiple session until the defined duration gets past from its first session’s start time.

EnableX supports 2 different modes in which the rooms can be defined to have different experience for users:

  • Group Mode: This is most common mode of Session where all moderators and participants can see and talk with each other.
  • Lecture Mode: This is Lecture or Webinar Mode. This is mode to carry our Webinar or Presentation to larger audience. In this mode, only moderators can talk and they can be seen and heard by all others in the room. Moderator can however allow any participant to talk, be heard and seen.

Create a Room

When a room is created, it merely creates a database entry with a room-id for the EnableX platform. The room ID is required to carry out CRUD (Create, Read, Update, Delete) operations for the room, to get token to join Room and to get post session reports.

  • Method: POST
  • Headers:
    • Authorization: Basic XXXXXXX
    • Content-Type: application/JSON
  • URL: https://api.enablex.io/video/v2/rooms

Sample Code

POST https://api.enablex.io/video/v2/rooms
Authorization: Basic XXXXXXXXX
Content-Type: application/JSON
{
"name": "Topic or Room Title",
"owner_ref": "xyz",
"settings": {
"description": "Descriptive text",
"mode": "group",
"scheduled": false,
"adhoc": false,
"duration": 30,
"moderators": "1",
"participants": "5",
"billing_code": "",
"auto_recording": false,
"quality": "SD",
"canvas": false,
"screen_share": false,
"abwd": true,
"max_active_talkers": 4,
"knock": false,
"wait_for_moderator": false,
"media_zone": "US",
"single_file_recording": false,
"role_based_recording": {
"moderator": "audiovideo",
"participant": "audio"
},
"live_recording": {
"auto_recording": true,
"url": "https://your-custom-view-url"
}
},
"sip": {
"enabled": false
},
"data": {
"custom_key": ""
}
}

JSON Payload Exaination

  • name: String. Required. Room name - owner_ref : String. Required. Specify the Room Owner ID or some reference. You may use some ID of your Information System. The post session reports include this value for your reference or reporting.
  • settings : Object. Specify Room configuration.
    • mode : Enumerated data: group, lecture. Default: group. The Lecture mode is for Webinar, restricts moderated stream publishing for participants.
    • scheduled : Boolean. Default: false. Set to true for Scheduled Room, false foe Permanent Room.
    • adhoc : Boolean. Default: false. Set to true for Adhoc Room.
    • scheduled_time : String. Format: YYYY-MM-DD HH:II:SS. Time Zone: UTC. Scheduled Start Time of the Scheduled Room. The token can be created 30 minutes before the start time of a room. The token is not given after the scheduled duration if no participants are available in the room.
    • duration: Number. In Minutes. Required. Min: 10. Total duration a single Session in the Room. It is required only for scheduled rooms. It is not applicable for adhoc and permanent rooms.
    • moderators : Number. Total number of moderators allowed in the room. - participants : Number. Total number of participants allowed in the room.
      • For permanent and adhoc rooms, the maximum stream limit for a permanent room is approximately 1600. For example, a conference with 100 participants and 6 maximum active talkers has a maximum stream limit of 600 streams. Therefore, with 8 active talkers, you can add 1-200 participants.
      • For scheduled rooms, you can add 1-300 participants. For scheduled rooms (in Lecture mode), you can add 1-1000 participants.
    • audiences : Number. Default: 0. Min: 1. Total number of audiences allowed in the room to view HLS streaming. This key must be specified if the HLS service is subscribed. Maximum allowed value is based on the subscription.
    • hls_view_url : String. URL of the Custom View to use for HLS streaming. If the URL is not specified, a predefined view is used. You can explicitly pass "DEFAULT" as a value for this key. How to create Custom HLS View -send_audiences_stats : Boolean. Default: false. Set to true if an endpoint needs to receive user-connected and user-disconnected events on entry and exit of an audience.
    • auto_recording : Boolean. Default: false. Specify if you want to set the sessions for automatic recording. The recording is started when a participant publishes in the room. In automatic recording-enabled sessions, recording can be manually stopped and restarted using function calls.
    • screen_share : Boolean. Default: true. To enable screen sharing.
    • canvas : Boolean. Default: false. To enable canvas streaming i.e. streaming with the contents of the HTML5 Canvas object).
    • knock : Boolean. Default: false. To enable moderated entry to Room. Moderator allows each new participants knocking Video Room to join Session.
    • wait_for_moderator : Boolean. Default: false. To force participants to wait to moderator to join Session. As Moderator joins, all the waiting participants and new participants are automatically admitted to the session.
    • quality : String. Enumerated Values: HD, SD, LD. Qualify of Video Stream in the Room. If none specified, Video Quality given in the Subscription is used.
      • HD: Min: 320X180@30fps. Max: 1280X720@30fps
      • SD: Min: 320X180@30fps. Max: 640X480@30fps
      • LD: Min: 80X45@30fps. Max: 640X360@30fps.
    • abwd: Boolean. Default: false. To enable ABWD (Automatic Bandwidth Detection) fpr optimum Video Communication.
    • facex : Boolean. Default: false. To enable Face AI (To perform Facial Expression Analysis).
    • max_active_talkers : Number: Range: 1-16. Default: 16. To define the maximum number of active talker streams desired in a Session.
    • single_file_recording : Boolean. Default: false. To enable Live Transcoding in a room defined with 2 users only where one user joins with audio/video, and the other user joins with audio Transcoded content is given in WEBM file immediately after the session ends.
    • role_based_recording : JSON Object. Optional. To exclude video track of a user from from being recorded. By default, both audio and video tracks for all users are recorded. If business application requires only to record audio of users, this feature helps.
      • moderator: Optional. Enumerated data: audiovideo, audio. Default: audiovideo. Use audio to exclude video in recording.
      • participant: Optional. Enumerated data: audiovideo, audio. Default: audiovideo. Use audio to exclude video in recording.
    • live_recording : Boolean. Default: false. To enable live recording instead of legacy recording.
    • watermark: Boolean. Default: false. To enable watermarking of recording files
    • media_zone : Optional. Enumerated values: IN (for India), SG (For Singapore), US (For United States), XX (default - For Auto-Assignment). This is to decide which media zone to use for a Session. This is a subscription-controlled feature. If media zone is not specified, an appropriate media zone is automatically assigned at runtime.
    • sip : JSON Object. Optional. To enable and configure PSTN/SIP call.
      • enabled : Boolean. Default: false. To enable PSTN/SIP call.
    • data : JSON Object. Optional. To keep custom data in a Room. Define your own keys for this Object.

Sample Response

{
"result": 0,
"room": {
"name": "Topic or Room Title",
"owner_ref": "xyz",
"settings": {
"description": "Descriptive text",
"mode": "group",
"scheduled": false,
"adhoc": false,
"duration": 50,
"moderators": "2",
"participants": "10",
"billing_code": "",
"auto_recording": false,
"quality": "HD",
"canvas": true,
"screen_share": true,
"max_active_talkers": true,
"role_based_recording": {
"moderator": "audiovideo",
"participant": "audio"
},
"live_recording": {
"auto_recording": true,
"url": "rtmp-client.enablex.io/?token="
}
},
"sip": {
"enabled": true,
"pin": 99999,
"meeting_id": 99999
},
"data": {
"custom_key": ""
},
"created": "2018-07-12T11:30:24.851Z",
"room_id": "xxxxxxxxxxxxxxx"
}
}

Try API: Use Open API Tool.

Get a List of Rooms

This API route provides you with a complete list of rooms created within an application.

  • Method: GET
  • Headers:
    • Authorization: Basic XXXXXXX
  • URL: https://api.enablex.io/video/v2/rooms

Sample Request

GET https://api.enablex.io/video/v2/rooms
Authorization: Basic XXXXXXX

**Sample Response: ** Success

{
"result": 0,
"rooms": [{
"name": "Topic or Room Title",
"owner_ref": "xyz",
"settings": {
"description": "Descriptive text",
"mode": "group",
"scheduled": false,
"adhoc": false,
"duration": 50,
"moderators": "2",
"participants": "10",
"billing_code": "",
"auto_recording": false,
"quality": "HD",
"canvas": true,
"screen_share": true,
"max_active_talkers": 6
},
"sip" : {
"enabled": false
},
"data": {
"custom_key": ""
},
"created": "2018-07-12T11:30:24.851Z",
"room_id": "xxxxxxxxxxxxxxx"
}]
}

Try API: Use Open API Tool.

Get Room Information

This API route is used to get the complete room definition of a specified room.

  • Method: GET
  • Headers:
    • Authorization: Basic XXXXXXX
  • URL: https://api.enablex.io/video/v2/rooms/ROOM-ID

Sample Request

GET https://api.enablex.io/video/v2/rooms/ROOM-ID
Authorization: Basic XXXXXXX

**Sample Response: ** Success

{
"result": 0,
"room": {
"name": "Topic or Room Title",
"owner_ref": "xyz",
"settings": {
"description": "Descriptive text",
"mode": "group",
"scheduled": false,
"adhoc": false,
"duration": 50,
"moderators": "2",
"participants": "10",
"billing_code": "",
"auto_recording": false,
"quality": "HD",
"canvas": true,
"screen_share": true,
"max_active_talkers": true,
"role_based_recording": {
"moderator": "audiovideo",
"participant": "audio"
},
"live_recording": {
"auto_recording": true,
"url": "rtmp-client.enablex.io/?token="
}
},
"sip": {
"enabled": true,
"pin": 99999,
"meeting_id": 99999
},
"data": {
"custom_key": ""
},
"created": "2018-07-12T11:30:24.851Z",
"room_id": "xxxxxxxxxxxxxxx"
}
}

Try API: Use Open API Tool.

Update Room Information

This API route is used to update the room information. The JSON payload contains only those keys that are permissible to update.

Note: Any change in the room definition takes effect only in subsequent sessions. Scheduled room can be updated 30 minutes before the scheduled start time of a session.

  • Method: PATCH
  • Headers:
    • Authorization: Basic XXXXXXX
    • Content-Type: application/JSON
  • URL: https://api.enablex.io/video/v2/rooms/ROOM-ID

Sample Request

PATCH https://api.enablex.io/video/v2/rooms/ROOM-ID
Authorization: Basic XXXXXXX
Content-Type: application/json
{
"name": "Topic or Room Title",
"settings": {
"participants": "15",
"auto_recording": true
}
}

**Success Response: ** Success

{
"result": 0
}

Try API: Use Open API Tool.

Delete a Room

This API call is used to delete a room. The API call does not work for an active room, a room with an ongoing WebRTC session.

  • Method: DELETE
  • Headers:
    • Authorization: Basic XXXXXXX
    • Content-Type: application/JSON
  • URL: https://api.enablex.io/video/v2/rooms/ROOM-ID

Sample Request

DELETE https://api.enablex.io/video/v2/rooms/ROOM-ID
Authorization: Basic XXXXXXX

**Sample Response: ** Success

{
"result": 0
}

Try API: Use Open API Tool.

Media Session API

The Media Session API enables the application to advertise media playback externally and to receive playback commands from external sources. It provides media playback access to the users outside of the browser tab where it is playing.

Create a Token

A token is required for a client endpoint to join an RTC session on the EnableX platform.

Characteristics of a Token

  • A token is created only for a specific Room-ID.
  • The token decides your role within a session, such as Moderator, Participant, Audience or Viewer.
    • moderator: The organiser with additional control over the session, such as start/stop recording, hard mute/unmute room, drop/eject a participant from the room, and end the session.
    • participant: A user who can access and interact with all media streams.
    • audience: A user who only gets HLS Stream to view; doesn't receive individual streams of users.
    • viewer: A user who can access all media streams and chat but cannot interact.
  • Tokens are transactional. You need a new token whenever you want to connect to the same room.
  • A token can be used only once.
  • The token must be used, within its 15-minutes lifetime, to connect to a room.
  • A token may be created anytime for a permanent Room.
  • A token must be created 30 minutes before the scheduled start time for a scheduled Room.

This API call creates a token that can be used to connect to a room.

  • Method: POST
  • Headers:
    • Authorization: Basic XXXXXXX
    • Content-Type: application/JSON
  • URL: https://api.enablex.io/video/v2/rooms/ROOM-ID/tokens

Sample Request

POST https://api.enablex.io/video/v2/rooms/ROOM-ID/tokens
Authorization: Basic XXXXXXX
Content-Type: application/json
{
"name": "User Name",
"role": "participant",
"user_ref": "XXX",
"data": {
"custom_key": "String",
"any_key": "String"
}
}

JSON Payload Explaination

  • name : String. Required. Name of the user looking to join session.
  • role : String. Required. Enumerated data: moderator, participant, viewer, audience.
  • user_ref : String. Required. User ID or Reference. Use it from your Information System. Post call reports include this data for your reference or reporting. |
  • data : JSON Object. Optional. Custom data object may be passed carrying data related to the user.

Note: A user with the moderator role has access to session management controls.

Sample Response: Success

{
"result": 0,
"token": "JWT_WEB_TOKEN"
}

JSON Response Explainantion

  • result : Number. 0 for success.
  • token : String. Token to join Session. SDK Method requires this Token to join.

Try API: Use Open API Tool.

Get a List of Users in a Room

This API route provides a list of all type of users connected to an active room, i.e., an ongoing session. In case the Room is not active, The API call returns a null list.

  • Method: GET
  • Headers:
    • Authorization: Basic XXXXXXX
  • URL: https://api.enablex.io/video/v2/rooms/ROOM-ID/users

Sample Request

GET https://api.enablex.io/video/v2/rooms/ROOM-ID/users
Authorization: Basic XXXXXXX

**Sample Response: ** Success for active Room.

{
"result": 0,
"total": 1,
"users": [
{
"name": "User Name",
"user_ref": "xxx",
"role": "participant",
"permissions": {
"publish": true,
"subscribe": true,
"record": false,
"stats": true,
"controlhandlers": true
}
}
]
}

Try API: Use Open API Tool.

Post-Session Reporting API

The post session reporting provides you access to the transcoded video, the chat messages, and the call detail report after the video session.

Get Access to Transcoded Video and Chat

The Archive Route is used to get access to files created during RTC sessions. These files include individual recording files, transcoded playable video file, chat script file, and session meta file. The API call returns a JSON containing a direct URL to download these files. To download each file, you need to issue a HTTP GET to request the file.

Sample Response: Success

{
"result": "0",
"archive": [
{
"_id": "XXX",
"trans_date": "YYYY-MM-DDTHH:II:SS.mmmZ",
"conf_num": "XXXXX",
"app_id": "XXX",
"room_id": "XXX",
"recording": [
{"url": "https://FQDN/path/file.mkv"}
],
"transcoded": [
{"url": "https://FQDN/path/file.mov"}
],
"chatdata": "https://FQDN/path/chatdata.json",
"metadata": "https://FQDN/path/metadata.json"
}
]
}

File Access Restrictions

Recorded files are not publicly accessible through an HTTP URL given in the API Response. You can only access them through the HTTP Basic Authentication process.

For more informaiton: Recording Files Security.

Request Archives for a Conference Number

This API route provides a filter for conference number archive reporting.

  • Method: GET
  • Headers:
    • Authorization: Basic XXXXXXX
  • URL: https://api.enablex.io/video/v2/archive/conf/{conf_num}
    • See conf_num is used in the URL Structure

Sample Request

GET https://api.enablex.io/video/v2/archive/conf/CONF-NUM
Authorization: Basic XXXXXXX

Try API: Use Open API Tool.

Request Archives for a Room and Period

This API Route provides a specified room and period filter for archive reporting.

  • Method: GET
  • Headers:
    • Authorization: Basic XXXXXXX
  • URL: https://api.enablex.io/video/v2/archive/room-period/{room-id}/{from-date}/{to-date}
    • See from_date, to_date and room_id used in the URL Structure
    • Date Format: YYYY-MM-DD for from_date and to_date
    • Time Zone: UTC

Sample Request

GET https://api.enablex.io/video/v2/archive/room/ROOM-ID/2024-03-22/2024-03-23
Authorization: Basic XXXXXXX

Try API: Use Open API Tool.

Request Archives for a Specified Period

This API route provides a specified period filter for archive reporting.

  • Method: GET
  • Headers:
    • Authorization: Basic XXXXXXX
  • URL: https://api.enablex.io/video/v2/archive/period/{from-date}/{to-date}
    • See from_date and to_date used in the URL Structure
    • Date Format: YYYY-MM-DD for from_date and to_date
    • Time Zone: UTC

Sample Request

GET https://api.enablex.io/video/v2/archive/period/2024-03-22/2024-03-23
Authorization: Basic XXXXXXX

Try API: Use Open API Tool.

Request Archives for a Specified Room

This API route provides a Room-ID filter for archive reporting.

  • Method: GET
  • Headers:
    • Authorization: Basic XXXXXXX
  • URL: https://api.enablex.io/video/v2/archive/room/{room-id}
    • See room-id used in the URL Structure

Sample Request

GET https://api.enablex.io/video/v2/archive/room/ROOM-ID
Authorization: Basic XXXXXXX

Try API: Use Open API Tool.

Get the Call Detail Report

Call Detail Report (CDR) refers to a call detail record, which provides call usage information of each user during a call session. The CDR is accessed through the CDR route.

Sample Response: Success

{
"result": "0",
"cdr": [
{
"trans_date": "YYYY-MM-DDTHH:MI:SS.mlsZ",
"conf_num": "String",
"sip": false,
"call_num": "String",
"call_log_id": "String",
"parent_partner_id": "String",
"room": {
"room_id": "String",
"connect_dt": "YYYY-MM-DDTHH:MI:SS.mlsZ",
"disconnect_dt": "YYYY-MM-DDTHH:MI:SS.mlsZ",
"duration": 999,
"room_details": {},
"sip": false
},
"user": {
"role": "moderator/participant/viewer/audience",
"ip": "String",
"name": "String",
"ref": "String",
"agent": "String"
},
"sigserver": {
"disconnect_dt": "YYYY-MM-DDTHH:MI:SS.mlsZ",
"connect_dt": "YYYY-MM-DDTHH:MI:SS.mlsZ",
"ip": "String",
"duration": 999.99,
"hold_duration": 9.99
},
"published_track": {
"audio": true,
"data": false,
"video": true,
"screen": false,
"url": false
},
"usage": {
"subscribed_minutes": 999,
"published_minutes": 999,
"screen_minutes": 999,
"connect_minutes": 999,
"connect_minutes_cal": 999,
"room_connect_minutes": 999
},
"stats_quality": {
"send": {
"video": {
"avg_bitrate": 999,
"avg_bitrate_quality": "Good/Bad",
"max_bitrate": 999,
"min_bitrate": 999
},
"sharing": {},
"audio": {
"avg_bitrate": 999,
"avg_bitrate_quality": "Good/Bad",
"max_bitrate": 999,
"min_bitrate": 999
}
},
"receive": {
"video": {
"avg_bitrate": 999,
"avg_bitrate_quality": "Good/Bad",
"max_bitrate": 999,
"min_bitrate": 999,
"bitrate_good_percent": 999,
"bitrate_moderate_percent": 999,
"bitrate_bad_percent": 999
},
"sharing": {},
"audio": {
"avg_bitrate": 41020,
"avg_bitrate_quality": "Good/Bad",
"max_bitrate": 42752,
"min_bitrate": 38231,
"bitrate_good_percent": 100,
"bitrate_moderate_percent": 0,
"bitrate_bad_percent": 0
},
"rtt": {}
},
"call_quality": "Good/Bad"
},
"video_embed": true,
"visual_builder": true,
"lowcode": true,
"app_id": "String",
"cdr_id": "String"
}
]
}

Response JSON Explaination

  • trans_date : CDR log time.
  • conf_num : This is "Conference Number" or "Session Identifier". Assigned by Video Service. By definition, each video room may be used for one or multiple session. This identifies each session in a video room.
  • call_num : This is "Call Number", i.e., a user’s connection identifier. Assigned by Video Service. Each connected user is identified with this in a session.
  • call_log_id : This is "Log ID". Assigned by Video Service for logging of all events, activities, issues. Any issue in a session can be traced by "Log ID" post session. EnableX asks for "Log ID" to trace any issue in session.
  • parent_partner_id : This is "Partner ID" or "Customer ID". Each EnableX Project is owned by EnableX Customer. So, CDR too has it.
  • app_id : Application ID.
  • cdr_id : CDR ID. ID of CDR entry in database.
  • lowcode : Boolean. It indicates if Low-Code is used.
  • `room: Object with Room / Session related information.
    • room_id : Room ID.
    • connect_dt : User’s connection time to the Video Room.
    • disconnect_dt : User’s disconnection time to the Video Room.
    • duration : Total Duration the user remain connected in the Video Room. It’s in Second.
    • room_details : Object. It includes complete Room Definition.
  • user : Object. It has information about the connected user.
    • role : User Role. This was passed while creating Token to join Video Room.
    • ip : IP Address of the user from where he was connected.
    • name : User name. This was passed while creating Token to join Video Room.
    • ref : User Reference Number. This was passed while creating Token to join Video Room.
    • agent : User Agent information of the end point from where the user was connected.
  • sigserver : Object. It contains information about EnableX Signalling Server to which the user is connected.
  • published_track : Object. It contains different type of media stream that the user has used.
    • audio : User has used microphone feed.
    • video : User has used camera feed.
    • screen : User has shared screen.
  • usage : Object. Usage, rounded up to next second.
    • published_minutes : Total Time in Second for which user has published his own stream into the Room.
    • screen_minutes : Total Time in Second for which user has shared screen into the Room.
    • connect_minutes : Total Time in Second for which user remained connected to the Room.
    • connect_minutes_cal : Total calculated time in minutes (rounded up) for which user remained - `connected to video room. This is the time for which you are billed for user’s connection.
  • stats_quality : This object contains information about call quality for audio, video and screen sharing for both sending and receiving streams.
    • quality.send : This child object contains quality stats for published audio, video and screen sharing stream.
    • quality.receive : This child object contains quality stats for received audio, video and screen sharing stream. Data for each of these streams is contained in related child objects named as "audio", "video" and "sharing".
    • quality.receive : This child object contains quality stats for received audio, video and screen sharing stream. Data for each of these streams is contained in related child objects named as "audio", "video" and "sharing".

Request CDR for a Conference Number

This API route provides a filter for Conference Number CDR Reporting.

  • Method: GET
  • Headers:
    • Authorization: Basic XXXXXXX
  • URL: https://api.enablex.io/video/v2/cdr/conf/{conf_num}
    • See conf_num is used in the URL Structure

Sample Request

GET https://api.enablex.io/video/v2/cdr/conf/CONF-NUM
Authorization: Basic XXXXXXX

Request CDR for a Room and Period

Request

This API route provides a specified room and specified period filter for CDR Reporting. API call returns CDR for a given room and period.

  • Method: GET
  • Headers:
    • Authorization: Basic XXXXXXX
  • URL: https://api.enablex.io/video/v2/cdr/room-period/{room-id}/{from-date}/{to-date}
    • See from_date, to_date and room_id used in the URL Structure
    • Date Format: YYYY-MM-DD for from_date and to_date
    • Time Zone: UTC

Sample Request

GET https://api.enablex.io/video/v2/cdr/room/ROOM-ID/2024-03-22/2024-03-23
Authorization: Basic XXXXXXX

Try API: Use Open API Tool.

Request CDR for a Specified Period

This API route provides a specified period filter for CDR Reporting. API call returns CDR between given FROM and TO date.

  • Method: GET
  • Headers:
    • Authorization: Basic XXXXXXX
  • URL: https://api.enablex.io/video/v2/cdr/period/{from-date}/{to-date}
    • See from_date and to_date used in the URL Structure
    • Date Format: YYYY-MM-DD for from_date and to_date
    • Time Zone: UTC

Sample Request

GET https://api.enablex.io/video/v2/cdr/period/2024-03-22/2024-03-23
Authorization: Basic XXXXXXX

Try API: Use Open API Tool.

Request CDR for a Specified Room

This API route provides a Room-ID filter for CDR reporting.

  • Method: GET
  • Headers:
    • Authorization: Basic XXXXXXX
  • URL: https://api.enablex.io/video/v2/cdr/room/{room-id}
    • See room-id used in the URL Structure

Sample Request

GET https://api.enablex.io/video/v2/cdr/room/ROOM-ID
Authorization: Basic XXXXXXX

Try API: Use Open API Tool.

Dial-In API

Get a List of Dial-In Phone Numbers

This API route provides you a list of dial-in phone numbers configured with your account and SIP service configuration information.

  • Method: GET
  • Headers:
    • Authorization: Basic XXXXXXX
  • URL: https://api.enablex.io/video/v2/dialin/

Sample Request

GET https://api.enablex.io/video/v2/dialin/
Authorization: Basic XXXXXXX

Sample Response

{
"_id": "Object ID",
"app_key": "ROOM-ID",
"settings": {
"sip": true
},
"sip": {
"server_url": "sip://xoxo:PORT",
"username": "String",
"password": "String",
"sig_servers": ["String"], // Multiple Signal Server IP/URL
"media_servers": ["String"] // Multiple Media Server IP/URL
},
"dialin": [ // Array of Phone Numbers
{
"country": "String",
"country_code": "String",
"phone": "String"
"toll": false // false = Tollfree
}
}
}