Clusters
API reference for Clusters on CUDO Compute.
Reference
GET
Get cluster machine type
Path attributes
- Name
dataCenterId
- Type
- string
- Description
- Name
machineTypeId
- Type
- string
- Description
- Name
projectId
- Type
- string
- Description
Request
GET
/v1/clusters/data-centers/{dataCenterId}/machine-types/{machineTypeId}
curl 'https://rest.compute.cudo.org/v1/clusters/data-centers/{dataCenterId}/machine-types/{machineTypeId}' \
-H 'Authorization: bearer <YOUR-API-KEY>'\
-H 'Accept: application/json'
Response
{
"machineType": {
"dataCenterId": "string",
"id": "string",
"architecture": "string",
"cpuCores": "integer",
"cpuSpeedMhz": "integer",
"cpuModel": "string",
"memoryGib": "integer",
"disks": "integer",
"diskSizeGib": "integer",
"gpus": "integer",
"gpuModelId": "string",
"prices": [
{
"dataCenterId": "string",
"machineTypeId": "string",
"commitmentTerm": "string",
"priceHr": {
"value": "string"
},
"ipv4PriceHr": {
"value": "string"
}
}
],
"machinesFree": "integer",
"networkType": "string"
}
}
GET
List cluster machine types
Path attributes
- Name
pageNumber
- Type
- integer
- Description
- Name
pageSize
- Type
- integer
- Description
- Name
projectId
- Type
- string
- Description
Request
GET
/v1/clusters/machine-types
curl 'https://rest.compute.cudo.org/v1/clusters/machine-types' \
-H 'Authorization: bearer <YOUR-API-KEY>'\
-H 'Accept: application/json'
Response
{
"machineTypes": [
{
"dataCenterId": "string",
"id": "string",
"architecture": "string",
"cpuCores": "integer",
"cpuSpeedMhz": "integer",
"cpuModel": "string",
"memoryGib": "integer",
"disks": "integer",
"diskSizeGib": "integer",
"gpus": "integer",
"gpuModelId": "string",
"prices": [
{
"dataCenterId": "string",
"machineTypeId": "string",
"commitmentTerm": "string",
"priceHr": {
"value": "string"
},
"ipv4PriceHr": {
"value": "string"
}
}
],
"machinesFree": "integer",
"networkType": "string"
}
],
"totalCount": "integer",
"pageNumber": "integer",
"pageSize": "integer"
}
POST
Create a cluster
Order a cluster for a project
Body attributes
- Name
id
- Type
- string
- Description
- Name
dataCenterId
- Type
- string
- Description
- Name
machineTypeId
- Type
- string
- Description
- Name
machineCount
- Type
- integer
- Description
- Name
commitmentTerm
- Type
- string
- Description
- Name
sshKeySource
- Type
- string
- Description
- Name
customSshKeys
- Type
- array
- Description
- Name
startScript
- Type
- string
- Description
Path attributes
- Name
cluster.projectId
- Type
- string
- Description
Request
POST
/v1/projects/{cluster.projectId}/clusters
curl 'https://rest.compute.cudo.org/v1/projects/{cluster.projectId}/clusters' \
-H 'Authorization: bearer <YOUR-API-KEY>'\
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
--data-raw '{
"id": "string",
"dataCenterId": "string",
"machineTypeId": "string",
"machineCount": "integer",
"commitmentTerm": "string",
"sshKeySource": "string",
"customSshKeys": "array",
"startScript": "string"
}'
Response
{
"projectId": "string",
"id": "string",
"dataCenterId": "string",
"machineTypeId": "string",
"machineCount": "integer",
"commitmentTerm": "string",
"commitmentEndTime": "string",
"sshKeySource": "string",
"customSshKeys": [
"string"
],
"startScript": "string",
"state": "string",
"architecture": "string",
"cpuModel": "string",
"cpuSpeedMhz": "integer",
"gpuModelId": "string",
"networkType": "string",
"totalCpuCores": "integer",
"totalDiskSizeGib": "integer",
"totalGpus": "integer",
"totalMemoryGib": "integer",
"machinePriceHr": {
"value": "string"
},
"totalMachinePriceHr": {
"value": "string"
},
"totalPriceHr": {
"value": "string"
},
"machines": [
{
"projectId": "string",
"id": "string",
"dataCenterId": "string",
"machineTypeId": "string",
"architecture": "string",
"cpuCores": "integer",
"cpuSpeedMhz": "integer",
"cpuModel": "string",
"memoryGib": "integer",
"disks": "integer",
"diskSizeGib": "integer",
"gpus": "integer",
"gpuModelId": "string",
"externalIpAddress": "string",
"internalIpAddress": "string",
"powerState": "string",
"state": "string",
"priceHr": {
"value": "string"
},
"createTime": "string",
"createBy": "string",
"volumeIds": [
"string"
]
}
],
"createTime": "string",
"createBy": "string"
}
PATCH
Update a cluster
Update a cluster in a project
Body attributes
- Name
dataCenterId
- Type
- string
- Description
- Name
machineTypeId
- Type
- string
- Description
- Name
machineCount
- Type
- integer
- Description
- Name
commitmentTerm
- Type
- string
- Description
- Name
sshKeySource
- Type
- string
- Description
- Name
customSshKeys
- Type
- array
- Description
- Name
startScript
- Type
- string
- Description
Path attributes
- Name
cluster.projectId
- Type
- string
- Description
- Name
cluster.id
- Type
- string
- Description
Request
PATCH
/v1/projects/{cluster.projectId}/clusters/{cluster.id}
curl 'https://rest.compute.cudo.org/v1/projects/{cluster.projectId}/clusters/{cluster.id}' \
-H 'Authorization: bearer <YOUR-API-KEY>'\
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
--data-raw '{
"dataCenterId": "string",
"machineTypeId": "string",
"machineCount": "integer",
"commitmentTerm": "string",
"sshKeySource": "string",
"customSshKeys": "array",
"startScript": "string"
}'
Response
{
"projectId": "string",
"id": "string",
"dataCenterId": "string",
"machineTypeId": "string",
"machineCount": "integer",
"commitmentTerm": "string",
"commitmentEndTime": "string",
"sshKeySource": "string",
"customSshKeys": [
"string"
],
"startScript": "string",
"state": "string",
"architecture": "string",
"cpuModel": "string",
"cpuSpeedMhz": "integer",
"gpuModelId": "string",
"networkType": "string",
"totalCpuCores": "integer",
"totalDiskSizeGib": "integer",
"totalGpus": "integer",
"totalMemoryGib": "integer",
"machinePriceHr": {
"value": "string"
},
"totalMachinePriceHr": {
"value": "string"
},
"totalPriceHr": {
"value": "string"
},
"machines": [
{
"projectId": "string",
"id": "string",
"dataCenterId": "string",
"machineTypeId": "string",
"architecture": "string",
"cpuCores": "integer",
"cpuSpeedMhz": "integer",
"cpuModel": "string",
"memoryGib": "integer",
"disks": "integer",
"diskSizeGib": "integer",
"gpus": "integer",
"gpuModelId": "string",
"externalIpAddress": "string",
"internalIpAddress": "string",
"powerState": "string",
"state": "string",
"priceHr": {
"value": "string"
},
"createTime": "string",
"createBy": "string",
"volumeIds": [
"string"
]
}
],
"createTime": "string",
"createBy": "string"
}
PATCH
Update a cluster machine
Update a machine in a cluster
Body attributes
- Name
powerState
- Type
- string
- Description
- Name
volumeIds
- Type
- array
- Description
Path attributes
- Name
clusterMachine.projectId
- Type
- string
- Description
- Name
clusterMachine.id
- Type
- string
- Description
Request
PATCH
/v1/projects/{clusterMachine.projectId}/cluster-machines/{clusterMachine.id}
curl 'https://rest.compute.cudo.org/v1/projects/{clusterMachine.projectId}/cluster-machines/{clusterMachine.id}' \
-H 'Authorization: bearer <YOUR-API-KEY>'\
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
--data-raw '{
"powerState": "string",
"volumeIds": "array"
}'
Response
{
"projectId": "string",
"id": "string",
"dataCenterId": "string",
"machineTypeId": "string",
"architecture": "string",
"cpuCores": "integer",
"cpuSpeedMhz": "integer",
"cpuModel": "string",
"memoryGib": "integer",
"disks": "integer",
"diskSizeGib": "integer",
"gpus": "integer",
"gpuModelId": "string",
"externalIpAddress": "string",
"internalIpAddress": "string",
"powerState": "string",
"state": "string",
"priceHr": {
"value": "string"
},
"createTime": "string",
"createBy": "string",
"volumeIds": [
"string"
]
}
DELETE
Delete a cluster machine
Delete a machine from a cluster
Path attributes
- Name
projectId
- Type
- string
- Description
- Name
id
- Type
- string
- Description
Request
DELETE
/v1/projects/{projectId}/cluster-machines/{id}
curl 'https://rest.compute.cudo.org/v1/projects/{projectId}/cluster-machines/{id}' \
-H 'Authorization: bearer <YOUR-API-KEY>'\
-H 'Accept: application/json'
Response
{}
POST
Reboot a cluster machine
Reboot a machine in a cluster
Path attributes
- Name
projectId
- Type
- string
- Description
- Name
id
- Type
- string
- Description
Request
POST
/v1/projects/{projectId}/cluster-machines/{id}:reboot
curl 'https://rest.compute.cudo.org/v1/projects/{projectId}/cluster-machines/{id}:reboot' \
-H 'Authorization: bearer <YOUR-API-KEY>'\
-H 'Accept: application/json'
Response
{}
GET
Get a cluster
Get the details of a cluster
Path attributes
- Name
projectId
- Type
- string
- Description
- Name
id
- Type
- string
- Description
Request
GET
/v1/projects/{projectId}/clusters/{id}
curl 'https://rest.compute.cudo.org/v1/projects/{projectId}/clusters/{id}' \
-H 'Authorization: bearer <YOUR-API-KEY>'\
-H 'Accept: application/json'
Response
{
"projectId": "string",
"id": "string",
"dataCenterId": "string",
"machineTypeId": "string",
"machineCount": "integer",
"commitmentTerm": "string",
"commitmentEndTime": "string",
"sshKeySource": "string",
"customSshKeys": [
"string"
],
"startScript": "string",
"state": "string",
"architecture": "string",
"cpuModel": "string",
"cpuSpeedMhz": "integer",
"gpuModelId": "string",
"networkType": "string",
"totalCpuCores": "integer",
"totalDiskSizeGib": "integer",
"totalGpus": "integer",
"totalMemoryGib": "integer",
"machinePriceHr": {
"value": "string"
},
"totalMachinePriceHr": {
"value": "string"
},
"totalPriceHr": {
"value": "string"
},
"machines": [
{
"projectId": "string",
"id": "string",
"dataCenterId": "string",
"machineTypeId": "string",
"architecture": "string",
"cpuCores": "integer",
"cpuSpeedMhz": "integer",
"cpuModel": "string",
"memoryGib": "integer",
"disks": "integer",
"diskSizeGib": "integer",
"gpus": "integer",
"gpuModelId": "string",
"externalIpAddress": "string",
"internalIpAddress": "string",
"powerState": "string",
"state": "string",
"priceHr": {
"value": "string"
},
"createTime": "string",
"createBy": "string",
"volumeIds": [
"string"
]
}
],
"createTime": "string",
"createBy": "string"
}
DELETE
Delete a cluster
Delete a cluster from a project.
Path attributes
- Name
projectId
- Type
- string
- Description
- Name
id
- Type
- string
- Description
Request
DELETE
/v1/projects/{projectId}/clusters/{id}
curl 'https://rest.compute.cudo.org/v1/projects/{projectId}/clusters/{id}' \
-H 'Authorization: bearer <YOUR-API-KEY>'\
-H 'Accept: application/json'
Response
{}