Fetch complete analytics data for your livestreams

GET /accounts/{account_id}/realtime/kit/{app_id}/analytics/livestreams/overall

Returns livestream analytics for the specified time range.

Responses

200 OK

Data is at body["result"]

{
  "data": {
    "count": "*integer*",
    "total_ingest_seconds": "*integer*",
    "total_viewer_seconds": "*integer*"
  },
  "success": "*boolean*"
}

Create an independent livestream

POST /accounts/{account_id}/realtime/kit/{app_id}/livestreams

Creates a livestream for the given App ID and returns ingest server, stream key, and playback URL. You can pass custom input to the ingest server and stream key, and freely distribute the content using the playback URL on any player that supports HLS/LHLS.

Responses

201 Successful response

Data is at body["result"]

{
  "data": {
    "disabled": "*boolean*",
    "id": "*string*",
    "ingest_server": "*string*",
    "meeting_id": "*string*",
    "name": "*string*",
    "playback_url": "*string*",
    "status": "*string*",
    "stream_key": "*string*"
  },
  "success": "*boolean*"
}

Fetch all livestreams

GET /accounts/{account_id}/realtime/kit/{app_id}/livestreams

Returns details of livestreams associated with the given App ID. It includes livestreams created by your App and RealtimeKit meetings that are livestreamed by your App. If you only want details of livestreams created by your App and not RealtimeKit meetings, you can use the exclude_meetings query parameter.

Responses

200 OK

Data is at body["result"]

{
  "data": {
    "created_at": "*string*",
    "disabled": "*string*",
    "id": "*string*",
    "ingest_server": "*string*",
    "meeting_id": "*string*",
    "name": "*string*",
    "paging": {
      "end_offset": "*integer*",
      "start_offset": "*integer*",
      "total_count": "*integer*"
    },
    "playback_url": "*string*",
    "status": "*string*",
    "stream_key": "*string*",
    "updated_at": "*string*"
  },
  "success": "*boolean*"
}

Fetch livestream session details using livestream session ID

GET /accounts/{account_id}/realtime/kit/{app_id}/livestreams/sessions/{livestream-session-id}

Returns livestream session details for the given livestream session ID. Retrieve the livestream_session_idusing the Fetch livestream session details using a session ID API.

Responses

200 OK

Data is at body["result"]

{
  "data": {
    "created_at": "*string*",
    "err_message": "*string*",
    "id": "*string*",
    "ingest_seconds": "*integer*",
    "livestream_id": "*string*",
    "started_time": "*string*",
    "stopped_time": "*string*",
    "updated_at": "*string*",
    "viewer_seconds": "*integer*"
  },
  "success": "*boolean*"
}

Fetch livestream details using livestream ID

GET /accounts/{account_id}/realtime/kit/{app_id}/livestreams/{livestream_id}

Returns details of a livestream with sessions for the given livestream ID. Retreive the livestream ID using the Start livestreaming a meeting API.

Responses

200 OK

Data is at body["result"]

{
  "data": {
    "livestream": {
      "created_at": "*string*",
      "disabled": "*string*",
      "id": "*string*",
      "ingest_server": "*string*",
      "meeting_id": "*string*",
      "name": "*string*",
      "playback_url": "*string*",
      "status": "*string*",
      "stream_key": "*string*",
      "updated_at": "*string*"
    },
    "paging": {
      "end_offset": "*integer*",
      "start_offset": "*integer*",
      "total_count": "*integer*"
    },
    "session": {
      "created_at": "*string*",
      "err_message": "*string*",
      "id": "*string*",
      "ingest_seconds": "*number*",
      "invoked_time": "*string*",
      "livestream_id": "*string*",
      "started_time": "*string*",
      "stopped_time": "*string*",
      "updated_at": "*string*",
      "viewer_seconds": "*number*"
    }
  },
  "success": "*boolean*"
}

Fetch active livestream session details

GET /accounts/{account_id}/realtime/kit/{app_id}/livestreams/{livestream_id}/active-livestream-session

Returns details of all active livestreams for the given livestream ID. Retreive the livestream ID using the Start livestreaming a meeting API.

Responses

200 OK

Data is at body["result"]

{
  "data": {
    "livestream": {
      "created_at": "*string*",
      "disabled": "*string*",
      "id": "*string*",
      "ingest_server": "*string*",
      "meeting_id": "*string*",
      "name": "*string*",
      "playback_url": "*string*",
      "status": "*string*",
      "stream_key": "*string*",
      "updated_at": "*string*"
    },
    "session": {
      "created_at": "*string*",
      "err_message": "*string*",
      "id": "*string*",
      "ingest_seconds": "*string*",
      "invoked_time": "*string*",
      "livestream_id": "*string*",
      "started_time": "*string*",
      "stopped_time": "*string*",
      "updated_at": "*string*",
      "viewer_seconds": "*string*"
    }
  },
  "success": "*boolean*"
}

Fetch active livestreams for a meeting

GET /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/active-livestream

Returns details of all active livestreams for the given meeting ID.

Responses

200 OK

Data is at body["result"]

{
  "data": {
    "created_at": "*string*",
    "disabled": "*string*",
    "id": "*string*",
    "ingest_server": "*string*",
    "meeting_id": "*string*",
    "name": "*string*",
    "playback_url": "*string*",
    "status": "*string*",
    "stream_key": "*string*",
    "updated_at": "*string*"
  },
  "success": "*boolean*"
}

Stop livestreaming a meeting

POST /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/active-livestream/stop

Stops the active livestream of a meeting associated with the given meeting ID. Retreive the meeting ID using the Create a meeting API.

Responses

200 OK

Data is at body["result"]

{
  "data": {
    "message": "*string*"
  },
  "success": "*boolean*"
}

Fetch livestream session details for a meeting

GET /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/livestream

Returns livestream session details for the given meeting ID. Retreive the meeting ID using the Create a meeting API.

Responses

200 OK

Data is at body["result"]

{
  "data": {
    "livestreams": [
      {
        "created_at": "*string*",
        "disabled": "*boolean*",
        "id": "*string*",
        "ingest_server": "*string*",
        "meeting_id": "*string*",
        "name": "*string*",
        "playback_url": "*string*",
        "status": "*string*",
        "stream_key": "*string*",
        "updated_at": "*string*"
      }
    ],
    "paging": {
      "end_offset": "*integer*",
      "start_offset": "*integer*",
      "total_count": "*integer*"
    },
    "sessions": {
      "created_at": "*string*",
      "err_message": "*string*",
      "id": "*string*",
      "ingest_seconds": "*string*",
      "invoked_time": "*string*",
      "livestream_id": "*string*",
      "started_time": "*string*",
      "stopped_time": "*string*",
      "updated_at": "*string*"
    }
  },
  "success": "*boolean*"
}

Start livestreaming a meeting

POST /accounts/{account_id}/realtime/kit/{app_id}/meetings/{meeting_id}/livestreams

Starts livestream of a meeting associated with the given meeting ID. Retreive the meeting ID using the Create a meeting API.

Responses

201 Created

Data is at body["result"]

{
  "data": {
    "id": "*string*",
    "ingest_server": "*string*",
    "playback_url": "*string*",
    "status": "*string*",
    "stream_key": "*string*"
  },
  "success": "*boolean*"
}

Fetch livestream session details using a session ID

GET /accounts/{account_id}/realtime/kit/{app_id}/sessions/{session_id}/livestream-sessions

Returns livestream session details for the given session ID. Retreive the session ID using the Fetch all sessions of an App API.

Responses

200 OK

Data is at body["result"]

{
  "data": {
    "created_at": "*string*",
    "err_message": "*string*",
    "id": "*string*",
    "ingest_seconds": "*number*",
    "invoked_time": "*string*",
    "livestream_id": "*string*",
    "paging": {
      "end_offset": "*number*",
      "start_offset": "*number*",
      "total_count": "*number*"
    },
    "stopped_time": "*string*",
    "updated_at": "*string*",
    "viewer_seconds": "*number*"
  },
  "success": "*boolean*"
}