Storm docs logo
Search the docs.../
Explore Storm Products

Cluster Viewer List

Returns a paginated list of active viewers/connections.

Request

PropertyValue
MethodGET
URL/api/cluster/viewers
Content-Typeapplication/json
AuthenticationBearer Token
Request
Code iconbash
curl -X GET "{BASE_URL}/api/cluster/viewers" \
  -H "Authorization: Bearer YOUR_TOKEN"

Query Parameters

ParameterTypeRequiredDefaultDescription
pageintegerNo1Page number
rowsPerPageintegerNo10Number of items per page
searchstringNo-Filter results by search term
harnessTypestringNo-Filter by harness type (see allowed values below)
systemClients"true" | "false"No-Include system clients

Allowed values for harnessType

  • "STORM_MSE_VIEWER"
  • "STORM_HLS_VIEWER"
  • "CLUSTER_DATA_CLIENT"
  • "GENERIC_HLS_VIEWER"
  • "GENERIC_DASH_VIEWER"
  • "RTMP_VIEWER"
  • "RTMP_PUSH"
  • "TRANSCODER"
  • "FILE_WRITER"
With query parameters
Code iconbash
curl -X GET "{BASE_URL}/api/cluster/viewers" \
  -H "Authorization: Bearer YOUR_TOKEN"

Response Body

Pagination

ParameterTypeDescription
data.totalItemsintegerTotal number of viewers
data.itemsPerPageintegerNumber of items per page
data.totalPagesintegerTotal number of pages
data.currentPageintegerCurrent page number
data.hasPreviousbooleanIndicates if a previous page exists
data.hasNextbooleanIndicates if a next page exists
data.listarrayArray of viewer objects

Viewer

ParameterTypeDescription
data.list[].idstringUnique identifier of the viewer session
data.list[].statestringConnection state
data.list[].harnessTypestringHarness type
data.list[].applicationIdstringUnique identifier of the associated application
data.list[].streamKeystringStream key being viewed
data.list[].remoteAddressstringClient IP address
data.list[].deviceTypestringDevice type, possible values: "MOBILE", "TABLET", "DESKTOP"
data.list[].osNamestringOperating system name
data.list[].browserNamestringBrowser name
data.list[].countryCodestringISO country code
data.list[].countryNamestringCountry name
data.list[].startTimeintegerConnection start time (Unix timestamp in ms)
data.list[].durationintegerConnection duration in milliseconds
data.list[].inBandwidthintegerIncoming bandwidth in bytes/sec
data.list[].outBandwidthintegerOutgoing bandwidth in bytes/sec
data.list[].inTotalBytesintegerTotal incoming bytes
data.list[].outTotalBytesintegerTotal outgoing bytes
data.list[].healthScoreintegerConnection health score (0-100, 0 when no data available)
data.list[].healthGradestringConnection health grade (e.g., "Very Good", "Bad", "No Data")

Metadata

ParameterTypeDescription
meta.executionTimeintegerRequest processing time in milliseconds
meta.generatedAtintegerResponse generation timestamp (Unix timestamp in ms)
Successful Response (200)
Code iconjson
{
  "data": {
    "totalItems": 1,
    "itemsPerPage": 10,
    "totalPages": 1,
    "hasPrevious": false,
    "hasNext": false,
    "list": [
      {
        "deviceType": "DESKTOP",
        "outTotalBytes": 26007754,
        "harnessType": "STORM_MSE_VIEWER",
        "osName": "Windows 10/11",
        "healthScore": 100,
        "healthGrade": "Very Good",
        "inBandwidth": 63,
        "streamKey": "123",
        "duration": 57701,
        "countryCode": "PL",
        "outBandwidth": 443234,
        "browserName": "Chrome",
        "startTime": 1770279702104,
        "id": "v_xh69zeigml96ts7p",
        "state": "PUBLISHED",
        "countryName": "Poland",
        "applicationId": "c_y7q39097ml5glmh6",
        "inTotalBytes": 4083,
        "remoteAddress": "83.11.198.11"
      }
    ],
    "currentPage": 1
  },
  "meta": {
    "executionTime": 1,
    "generatedAt": 1770279760071
  }
}
ParameterTypeDescription
messagestringHuman-readable error message
Error Response (4xx/5xx)
Code iconjson
{
  "message": "Error message"
}
Support Needed?

Create a free ticket and our support team will provide you necessary assistance.

Blog
Support
About us
Patents
Term of use
Privacy policy
Contact
©2026 Storm Streaming Media. All Rights Reserved.