Reporting API gives you access to different type of Reports, e.g. Video Sessions, CDR, Session Recordings etc., with many filter options.

Table of Contents

Get list of Sessions

This AP is used get list of Video Sessions. By default, it gets sessions done by the logged-in user. For others, use Query String Parameters to filter reports as needed.

  • API Route: https://api.enablex.io/ucaas/v1/sessions
  • API Route:  https://api.enablex.io/ucaas/v1/sessions?page={{$PAGE_NUM}} – With Query String Parameter
  • HTTP Request: GET
  • Access Mechanism: HTTP Basic Authentication, OAauth2
  • Role Based Accessibility; All
    • Reseller (Access to Reports of all customers under the Reseller)
    • Admin / Tenant (Access to Reports of all customers under the Tenant)
    • Customer (Access to Reports of all users under the Customer)

Request Example (OAuth2):

GET https://api.enablex.io/ucaas/v1/timezones
Content-Type: application/json
Authorization: Token ACCESS_TOTKEN
X-App-Type: vc

Headers Explanation:

  • Content-Type: To have application/json.
  • Authorization: To have Token Access Information
  • X-App-Type: To filter application specific report. Use vc=Video Conference, wb=Webinar

Query String Parameter Explanation:

ParameterDescription
pageNumber, Optional. Default 1. Get data for requested Page.
page_lengthNumber. Optional. Default 10, Total Records per page
search_byString. Optional. Required if search_string is used. Use one of the following:
room_id: On Room ID field
session_id: On Session ID field
user_id: On a specific user
room_id: On specified room-id
meeting_id: On specified meeting-id
from_session_date: Start Date filter on Session Date. Format: YYYY-MM-DD HH:ii:ss in UTC
to_session_date: To Date filter on Session Date. Format: YYYY-MM-DD HH:ii:ss in UTC
search_stringString. Required with search_by
order_byString. Optional. Use search_by strings. Multiple may be comma-separated.
order_qualifyString: Optional. Default asc. Enum: asc, desc

Response Example:

{
  "result": 1,
  "search": {
    "page": "Number",
    "page_length": "Number",
    "search_by": "String",
    "stage": "String",
    "search_string": "String",
    "order_by": "String",
    "order_qualify": "String"
  },
  "sessions": [
    {
      "session_id": "String",
      "meeting_id": "String",
      "room_id": "String",
      "user_id": "ObjectId",
      "user_name": "String",
      "trans_date": "Date",
      "connect_dt": "Date",
      "disconnect_dt": "Date",
      "duration": "Number",
      "app_type": "String"
    }
  ]
}

Response Explanation (Only for important Object and Keys) :

Object/KeyDescription
searchObject. It contains the Query String Parameters used to get the result
sessionsArray of Objects. Each Object contains a Session Information
sessions.user_idUser ID who used the session
sessions.durationTotal Video minutes used in the session
sessions.app_typeType of App. vc=Video Conference, wb=Webinar

Note: All Date Time data in response are in UTC

Get Session CDR

This API is used to get CDR for a given Session.

  • API Route: https://api.enablex.io/ucaas/v1/sessions/{{$SESSION_ID}}/cdr
  • HTTP Request: GET
  • Access Mechanism: HTTP Basic Authentication, OAauth2
  • Role Based Accessibility; All
    • Reseller (Access to Reports of all customers under the Reseller)
    • Admin / Tenant (Access to Reports of all customers under the Tenant)
    • Customer (Access to Reports of all users under the Customer)

Request Example (OAuth2):

GET https://api.enablex.io/ucaas/v1/sessions/SESSION_ID/cdr
Content-Type: application/json
Authorization: Token ACCESS_TOTKEN

Headers Explanation:

  • Content-Type: To have application/json.
  • Authorization: To have Token Access Information

URL Placeholder Explanation:

PlaceholderDescription
SESSION_IDSession ID to be used as data filter

Response Example:

{
  "result": 1,
  "session": {
    "session_id": "String",
    "meeting_id": "String",
    "room_id": "String",
    "user_id": "ObjectId",
    "user_name": "String",
    "trans_date": "Date",
    "connect_dt": "Date",
    "disconnect_dt": "Date",
    "duration": "Number",
    "app_type": "String"
  },
  "cdr": [
    {
      "call_num": "String",
      "call_log_id": "String",
      "connect_dt": "Date",
      "disconnect_dt": "Date",
      "duration": "Number",
      "user_ref": "String",
      "name": "String",
      "role": "String",
      "ip": "String",
      "agent": "String"
    }
  ]
}

Response Explanation (Only for important Object and Keys) :

Object/KeyDescription
sessionObject. It contains the Session Information which is queried
cdrArray of Objects. Each Object contains CDR for single User Connection
cdr.call_numUnique Call Number for the User
cdr.durationTotal Video minutes used by user
cdr.log_idUnique Log ID helps to retrieve logs for audit

Get Session Recordings

This API is used to get Recordings for a given Session.

  • API Route: https://api.enablex.io/ucaas/v1/sessions/{{$SESSION_ID}}/recordings
  • HTTP Request: GET
  • Access Mechanism: HTTP Basic Authentication, OAauth2
  • Role Based Accessibility; All
    • Reseller (Access to Reports of all customers under the Reseller)
    • Admin / Tenant (Access to Reports of all customers under the Tenant)
    • Customer (Access to Reports of all users under the Customer)

Request Example (OAuth2):

GET https://api.enablex.io/ucaas/v1/sessions/SESSION_ID/recordings
Content-Type: application/json
Authorization: Token ACCESS_TOTKEN

Headers Explanation:

  • Content-Type: To have application/json.
  • Authorization: To have Token Access Information

URL Placeholder Explanation:

PlaceholderDescription
SESSION_IDSession ID to be used as data filter

Response Example:

{
  "result": 1,
  "session": {
    "session_id": "String",
    "meeting_id": "String",
    "room_id": "String",
    "user_id": "ObjectId",
    "user_name": "String",
    "trans_date": "Date",
    "connect_dt": "Date",
    "disconnect_dt": "Date",
    "duration": "Number",
    "app_type": "String"
  },
  "recordings": [
    {
      "file": "String",
      "play_time": "Number",
      "stage": "Number",
      "start_time": "Number",
      "end_time": "Number",
      "file_size": "Number"
    }
  ]
}
Object/KeyDescription
sessionObject. It contains the Session Information which is queried
recordingsArray of Objects. Each Object contains single Recording File Information
recordings.fileString. Full URL of the Recording File
recordings.play_timeNumber. Play File of Video in seconds
recordings.stageNumber. Sequence No. of Recording Files. Starts with 1
recordings.start_timeUnix Timestamp. Start Time of Recording
recordings.end_timeUnix Timestamp. End Time of Recording
recordings.file_sizeNumber. File Size in bytes

Note: All Date Time data in response are in UTC