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

Cluster Topology

Returns the topology of the cluster including all servers and their applications.

Request

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

Response Body

CodeDescription
200Success
401Unauthorized - Invalid or missing token
429Too Many Requests - Rate limit exceeded
500Internal Server Error
ParameterTypeDescription
data.mockupEnabledbooleanIndicates if mockup mode is enabled
data.topologyarrayList of servers in the cluster

Server Object

ParameterTypeDescription
data.topology[].serverNamestringServer display name
data.topology[].hostNamestringServer hostname
data.topology[].groupNamestringServer group name
data.topology[].clusterManagerbooleanIs this server a cluster manager
data.topology[].serverStats.cpuUsagenumberCPU usage percentage (0-100)
data.topology[].serverStats.memUsagenumberMemory usage percentage (0-100)
data.topology[].serverStats.inBandwidth.usageintegerIncoming bandwidth (bytes/sec)
data.topology[].serverStats.inBandwidth.capinteger | nullIncoming bandwidth cap (null = unlimited)
data.topology[].serverStats.outBandwidth.usageintegerOutgoing bandwidth (bytes/sec)
data.topology[].serverStats.outBandwidth.capinteger | nullOutgoing bandwidth cap (null = unlimited)

Application Object

ParameterTypeDescription
data.topology[].applicationsarrayApplications on this server
data.topology[].applications[].idstringApplication ID
data.topology[].applications[].namestringApplication name
data.topology[].applications[].type"origin" | "transcode" | "edge"Application type
data.topology[].applications[].streams.countintegerCurrent stream count
data.topology[].applications[].streams.capinteger | nullStream limit (null = unlimited)
data.topology[].applications[].viewers.countintegerCurrent viewer count
data.topology[].applications[].viewers.capinteger | nullViewer limit (null = unlimited)
data.topology[].applications[].bandwidth.inBandwidthintegerIncoming bandwidth (bytes/sec)
data.topology[].applications[].bandwidth.outBandwidthintegerOutgoing bandwidth (bytes/sec)
data.topology[].applications[].upLinksarrayUpstream connections
data.topology[].applications[].downLinksarrayDownstream connections

Metadata

ParameterTypeDescription
meta.executionTimeintegerRequest processing time in milliseconds
meta.generatedAtintegerResponse generation timestamp (Unix timestamp in ms)
Successful Response (200)
Code iconjson
{
  "data": {
    "mockupEnabled": false,
    "topology": [
      {
        "serverName": "Server 2",
        "hostName": "stormdev2.web-anatomy.com",
        "groupName": "Premise",
        "clusterManager": true,
        "serverStats": {
          "cpuUsage": 0.14,
          "memUsage": 1.81,
          "inBandwidth": { "cap": null, "usage": 0 },
          "outBandwidth": { "cap": null, "usage": 0 }
        },
        "applications": [
          {
            "id": "c_8m9jynj8mjr50qdn",
            "name": "edge",
            "type": "edge",
            "streams": { "cap": 1, "count": 0 },
            "viewers": { "cap": null, "count": 0 },
            "bandwidth": { "inBandwidth": 0, "outBandwidth": 0 },
            "upLinks": [],
            "downLinks": []
          },
          {
            "id": "c_wujpa3t8mjr50qdn",
            "name": "origin",
            "type": "origin",
            "streams": { "cap": 100, "count": 0 },
            "viewers": { "cap": null, "count": 0 },
            "bandwidth": { "inBandwidth": 0, "outBandwidth": 0 },
            "upLinks": [],
            "downLinks": []
          },
          {
            "id": "c_ehkb6xlzmjr50qdn",
            "name": "transcode",
            "type": "transcode",
            "streams": { "cap": 50, "count": 0 },
            "viewers": { "cap": null, "count": 0 },
            "bandwidth": { "inBandwidth": 0, "outBandwidth": 0 },
            "upLinks": [],
            "downLinks": []
          }
        ]
      }
    ]
  },
  "meta": {
    "executionTime": 0,
    "generatedAt": 1767346264389
  }
}

Error Response (4xx/5xx)

ParameterTypeDescription
messagestringHuman-readable error message
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.