Scale Computing Clusters API
The Clusters API from Scale Computing — 10 operation(s) for clusters.
The Clusters API from Scale Computing — 10 operation(s) for clusters.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/scale-computing:scale-computing-clusters-api"
curl "https://apis.io/api/v1/apis?limit=25"
Discovery needs no key. Ratings and market analysis are Pro.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: Scale Computing Clusters API
contact: {}
version: '1.0'
description: 'Operations tagged Clusters across 2 of this provider''s published API definitions: scale-computing-core-openapi.json, scale-computing-fleet-manager-openapi.json. Each path carries the servers of the definition it was published in.'
servers:
- url: /
- url: https://api.scalecomputing.com
description: Fleet Manager API
tags:
- name: Clusters
paths:
/api/v1/clusters/{clusterId}:
get:
operationId: GetCluster
responses:
'200':
description: Ok
content:
application/json:
schema:
$ref: '#/components/schemas/ApiResponse'
security:
- jwt:
- cluster:read:*
parameters:
- in: path
name: clusterId
required: true
schema:
type: string
tags:
- Clusters
summary: Get cluster
x-summary-source: derived
delete:
operationId: DeleteCluster
responses:
'200':
description: Ok
content:
application/json:
schema:
$ref: '#/components/schemas/ApiResponse'
security:
- jwt:
- cluster:delete:*
parameters:
- in: path
name: clusterId
required: true
schema:
type: string
tags:
- Clusters
summary: Delete cluster
x-summary-source: derived
put:
operationId: UpdateCluster
responses:
'200':
description: Ok
content:
application/json:
schema:
$ref: '#/components/schemas/ApiResponse'
security:
- jwt:
- cluster:update:*
parameters:
- in: path
name: clusterId
required: true
schema:
type: string
tags:
- Clusters
summary: Update cluster
x-summary-source: derived
servers:
- url: /
/api/v1/clusters:
get:
operationId: GetClusters
responses:
'200':
description: Ok
content:
application/json:
schema:
items:
$ref: '#/components/schemas/Cluster'
type: array
security:
- jwt:
- cluster:read:*
parameters:
- in: query
name: filters
required: true
schema:
type: string
- in: query
name: projections
required: false
schema:
type: string
tags:
- Clusters
summary: Get clusters
x-summary-source: derived
servers:
- url: /
/api/v1/clusters/{clusterId}/stream/start:
post:
operationId: StartClusterStream
responses:
'200':
description: Ok
content:
application/json:
schema:
$ref: '#/components/schemas/Boolean'
security:
- jwt:
- cluster:read:*
parameters:
- in: path
name: clusterId
required: true
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
properties:
autoStopSeconds:
type: number
format: double
intervalMS:
type: number
format: double
type: object
tags:
- Clusters
summary: Start cluster stream
x-summary-source: derived
servers:
- url: /
/api/v1/clusters/{clusterId}/command:
post:
operationId: ClusterCommandSend
responses:
'200':
description: Ok
content:
application/json:
schema:
type: boolean
description: Create a command request.
security:
- jwt:
- cluster:update:*
parameters:
- in: path
name: clusterId
required: true
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
properties:
payload:
additionalProperties: true
type: object
command:
type: string
required:
- payload
- command
type: object
tags:
- Clusters
summary: Cluster command send
x-summary-source: derived
servers:
- url: /
/api/v1/clusters/{clusterId}/tunnel:
post:
operationId: StartTunnel
responses:
'200':
description: Ok
content:
application/json:
schema:
$ref: '#/components/schemas/ApiResponse'
security:
- jwt:
- secureLink:read:*
parameters:
- in: path
name: clusterId
required: true
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
properties:
force:
type: boolean
useUuid:
type: boolean
additionalRouteArgs:
$ref: '#/components/schemas/AdditionalRouteArgs'
required:
- additionalRouteArgs
type: object
tags:
- Clusters
summary: Start tunnel
x-summary-source: derived
get:
operationId: ViewTunnel
responses:
'200':
description: Ok
content:
application/json:
schema:
$ref: '#/components/schemas/ApiResponse'
security:
- jwt:
- secureLink:read:*
parameters:
- in: path
name: clusterId
required: true
schema:
type: string
tags:
- Clusters
summary: View tunnel
x-summary-source: derived
servers:
- url: /
/api/v1/clusters/migrate:
post:
operationId: Migrate
responses:
'200':
description: Ok
content:
application/json:
schema:
$ref: '#/components/schemas/ApiResponse'
security:
- jwt:
- clusterMigration:create:*
parameters: []
tags:
- Clusters
summary: Migrate
x-summary-source: derived
servers:
- url: /
/api/v2/clusters:
get:
operationId: ClustersController_findAll
parameters:
- name: query
required: false
in: query
schema:
type: string
default: ''
- name: offset
required: false
in: query
schema:
default: 0
type: number
minimum: 0
- name: limit
required: false
in: query
description: limit is defaulted to 20 if not passed. The value can range between 1-200.
schema:
default: 20
type: number
minimum: 1
maximum: 200
responses:
'200':
description: ''
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/PageDto'
- properties:
items:
type: array
items:
$ref: '#/components/schemas/ClusterDto'
'400':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestException'
security:
- API Key: []
summary: Get a list of clusters
tags:
- Clusters
servers:
- url: https://api.scalecomputing.com
description: Fleet Manager API
/api/v2/clusters/download:
get:
operationId: ClustersController_downloadCsv
parameters: []
responses:
'200':
description: Sample response of downloading csv data of clusters
content:
text/csv:
schema:
type: string
'400':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestException'
security:
- API Key: []
summary: Get a .csv of clusters
tags:
- Clusters
servers:
- url: https://api.scalecomputing.com
description: Fleet Manager API
/api/v2/clusters/{id}:
get:
operationId: ClustersController_findOne
parameters:
- name: id
required: true
in: path
schema:
type: string
responses:
'200':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/ClusterDto'
'400':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestException'
security:
- API Key: []
summary: Get a specific cluster by Id
tags:
- Clusters
servers:
- url: https://api.scalecomputing.com
description: Fleet Manager API
/api/v2/clusters/{id}/tags:
post:
operationId: ClustersController_upsertClusterTags
parameters:
- name: id
required: true
in: path
schema:
type: string
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/'
examples:
sample1:
description: sample request body payload for tags
value:
tags: foo, bar, baz
responses:
'201':
description: ''
content:
application/json:
schema:
allOf:
- $ref: '#/components/schemas/PageDto'
- properties:
items:
type: array
items:
$ref: '#/components/schemas/ClusterDto'
'400':
description: ''
content:
application/json:
schema:
$ref: '#/components/schemas/BadRequestException'
security:
- API Key: []
summary: Overwrite the existing cluster tags with the provided comma-separated list of…
tags:
- Clusters
servers:
- url: https://api.scalecomputing.com
description: Fleet Manager API
components:
schemas:
Cluster:
properties:
_id:
type: string
uuid:
type: string
name:
type: string
leaderNode:
type: string
leaderNodeLanIp:
type: string
organizationId:
type: string
enabled:
type: boolean
isSimulated:
type: boolean
simulationBatchId:
type: string
onlineStatus:
$ref: '#/components/schemas/OnlineStatus'
health:
$ref: '#/components/schemas/ClusterHeatlh'
tags:
items:
type: string
type: array
data:
$ref: '#/components/schemas/Partial_ClusterData_'
collectors:
properties: {}
type: object
lastCheckin:
type:
- string
- 'null'
format: date-time
createdAt:
type:
- string
- 'null'
format: date-time
deletedAt:
type:
- string
- 'null'
format: date-time
required:
- _id
- uuid
- leaderNode
- organizationId
- enabled
- isSimulated
- simulationBatchId
- onlineStatus
- health
- tags
- collectors
- createdAt
- deletedAt
type: object
additionalProperties: true
ClusterHeatlh:
properties:
score:
type: number
format: double
state:
$ref: '#/components/schemas/HealthState'
required:
- score
- state
type: object
ApiResponse:
properties:
isValid:
type: boolean
error:
properties:
validationErrors:
items:
$ref: '#/components/schemas/ApiValidationError'
type: array
message:
type: string
required:
- validationErrors
- message
type: object
data:
additionalProperties: true
type: object
required:
- isValid
type: object
additionalProperties: true
OnlineStatus:
enum:
- online
- offline
type: string
ClusterDataAvailableUpdate:
properties:
timestamp:
type: number
format: double
revision:
type: number
format: double
minorVersion:
type: number
format: double
majorVersion:
type: number
format: double
buildID:
type: number
format: double
changelog:
type: string
description:
type: string
uuid:
type: string
required:
- timestamp
- revision
- minorVersion
- majorVersion
- buildID
- changelog
- description
- uuid
type: object
AdditionalRouteArgs:
properties:
query:
$ref: '#/components/schemas/Record_string.string_'
path:
type: string
required:
- query
- path
type: object
Boolean:
properties: {}
type: object
additionalProperties: true
HealthState:
enum:
- healthy
- disconnected
- connecting
- critical
- warning
- notice
- info
type: string
Partial_ClusterData_:
properties:
uuid:
type: string
name:
type: string
version:
type: string
restApiEnabled:
type: boolean
updates:
properties:
status:
$ref: '#/components/schemas/ClusterUpdateStatus'
available:
items:
$ref: '#/components/schemas/ClusterDataAvailableUpdate'
type: array
required:
- status
- available
type: object
updatedAt:
type:
- string
- 'null'
format: date-time
meta:
properties:
tunnel:
properties:
error_code:
type:
- string
- 'null'
error:
type:
- string
- 'null'
state:
type: string
required:
- error_code
- error
- state
type: object
conditionCounts:
properties:
info:
type: number
format: double
notice:
type: number
format: double
warning:
type: number
format: double
critical:
type: number
format: double
required:
- info
- notice
- warning
- critical
type: object
conditions:
items: {}
type: array
vms:
items:
properties:
tags:
items:
type: string
type: array
stats:
properties:
cpuUsage:
type: number
format: double
required:
- cpuUsage
type: object
netDevs:
items:
properties:
ipv4Addresses:
items:
type: string
type: array
required:
- ipv4Addresses
type: object
type: array
numVCPU:
type: number
format: double
mem:
type: number
format: double
driveCapacity:
type: number
format: double
driveAllocation:
type: number
format: double
description:
type: string
state:
type: number
format: double
name:
type: string
uuid:
type: string
required:
- tags
- stats
- netDevs
- numVCPU
- mem
- driveCapacity
- driveAllocation
- description
- state
- name
- uuid
type: object
type: array
vmSummary:
properties:
running:
type: number
format: double
total:
type: number
format: double
required:
- running
- total
type: object
vmCount:
type: number
format: double
nodeSummary:
properties:
diskLatency:
properties:
us:
type: number
format: double
required:
- us
type: object
cpu:
properties:
percent:
type: number
format: double
required:
- percent
type: object
memory:
properties:
percent:
type: number
format: double
used:
type: number
format: double
available:
type: number
format: double
required:
- percent
- used
- available
type: object
storage:
properties:
percent:
type: number
format: double
used:
type: number
format: double
available:
type: number
format: double
required:
- percent
- used
- available
type: object
required:
- diskLatency
- cpu
- memory
- storage
type: object
nodes:
items: {}
type: array
nodeCount:
type: number
format: double
required:
- tunnel
- conditionCounts
- conditions
- vms
- vmSummary
- vmCount
- nodeSummary
- nodes
- nodeCount
type: object
compatibilities:
properties:
tunnel:
properties:
version:
type: number
format: double
required:
- version
type: object
type: object
type: object
description: Make all properties in T optional
ClusterUpdateStatus:
properties:
failNotes:
type: string
toBuild:
type:
- number
- 'null'
format: double
toVersion:
type:
- string
- 'null'
percent:
type: number
format: double
message:
type: string
state:
type: string
isUpdating:
type: boolean
required:
- percent
- message
- state
- isUpdating
type: object
ApiValidationError:
properties:
params:
$ref: '#/components/schemas/Record_string.string_'
instancePath:
type: string
message:
type: string
required:
- message
type: object
additionalProperties: true
Record_string.string_:
properties: {}
type: object
description: Construct a type with a set of properties K of type T
UpdateStatusDto:
type: object
properties:
isUpdating:
type: boolean
description: Whether the system is updating
example: false
state:
type: string
description: The current state of the update process
example: COMPLETE
message:
type: string
description: Message related to the update process
example: ''
percent:
type: number
description: Percentage of completion
example: 0
toVersion:
type:
- string
- 'null'
description: Version the cluster is updating to
example: 9.4.18.218440
toBuild:
type:
- number
- 'null'
description: Build the cluster is updating to
example: 218440
failNotes:
type: string
description: Node-provided guidance on what must be fixed before retrying a failed update
example: ''
required:
- isUpdating
- state
- message
- percent
ClusterDto:
type: object
properties:
id:
type: string
format: uuid
exclude: true
name:
type: string
example: Scale01 Single Node
organizationId:
type:
- string
- 'null'
example: 61ab80248069550014d7c775
exclude: true
nodeCount:
type:
- number
- 'null'
example: '3'
version:
type:
- string
- 'null'
example: 1.2.3
storagePercent:
type:
- number
- 'null'
example: '52'
memoryPercent:
type:
- number
- 'null'
example: '43'
cpuPercent:
type:
- number
- 'null'
example: '77'
healthScore:
type:
- number
- 'null'
example: '7'
healthState:
type:
- string
- 'null'
example: healthy
vmRunning:
type:
- number
- 'null'
example: '3'
vmTotal:
type:
- number
- 'null'
example: '4'
tags:
type:
- string
- 'null'
example: foo, bar, baz
lastCheckin:
type:
- date
- 'null'
default: null
example: '2026-08-25T03:23:15.739Z'
exclude: true
leaderNodeLanIp:
type:
- string
- 'null'
example: 127.0.0.1
leaderNode:
type:
- string
- 'null'
exclude: true
onlineStatus:
type:
- string
- 'null'
updatesAvailable:
type:
- boolean
- 'null'
exclude: true
updatesAvailableOptions:
exclude: true
type:
- array
- 'null'
items:
$ref: '#/components/schemas/UpdatesAvailableOptionDto'
updatesStatus:
exclude: true
type:
- object
- 'null'
allOf:
- $ref: '#/components/schemas/UpdateStatusDto'
createdAt:
type: date
example: '2026-08-25T03:23:15.740Z'
updatedAt:
type: date
example: '2026-08-25T03:23:15.740Z'
cluster:
type:
- object
- 'null'
required:
- id
- name
- createdAt
- updatedAt
BadRequestException:
type: object
properties:
statusCode:
type: number
default: 400
message:
type: string
error:
type: string
required:
- statusCode
- message
- error
PageDto:
type: object
properties:
meta:
$ref: '#/components/schemas/PageMetaDto'
items:
type: array
items:
type: string
required:
- meta
- items
UpdatesAvailableOptionDto:
type: object
properties:
uuid:
type: string
description: The unique identifier of the update option
example: 9.4.23.216736
description:
type: string
description: Description of the update
example: release 9.4.23.216736
changeLog:
type: string
description: Change log for the update
example: release 9.4.23.216736 - <a href="https://example.com">link</a>
buildID:
type: number
description: Build ID of the update
example: 216736
majorVersion:
type: number
description: Major version number
example: 9
minorVersion:
type: number
description: Minor version number
example: 4
revision:
type: number
description: Revision number
example: 23
timestamp:
type: number
description: Timestamp of the update
example: 1734552304
required:
- uuid
- description
- changeLog
- buildID
- majorVersion
- minorVersion
- revision
- timestamp
PageMetaDto:
type: object
properties:
offset:
type: number
limit:
type: number
total:
type: number
required:
- offset
- limit
- total
securitySchemes:
tsoa_auth:
type: oauth2
flows:
implicit:
authorizationUrl: http://swagger.io/api/oauth/dialog
scopes: {}
API_Key:
type: apiKey
in: header
name: api-key
x-refined-from:
- scale-computing-core-openapi.json
- scale-computing-fleet-manager-openapi.json