Virtual Machines

These are the endpoints for Virtual Machines. More information coming soon.


GET/v1/projects/{projectId}/count-vms

Count

Description for this endpoint is coming soon.

Path attributes

  • Name
    projectId
    Type
    string
    Description

Request

GET
/v1/projects/{projectId}/count-vms
curl 'https://rest.compute.cudo.org/v1/projects/{projectId}/count-vms' \
-H 'Accept: application/json'

Response

{
    "count": "integer"
}

GET/v1/projects/{projectId}/images

List private VM images

Description for this endpoint is coming soon.

Path attributes

  • Name
    projectId
    Type
    string
    Description
  • Name
    pageNumber
    Type
    integer
    Description
  • Name
    pageSize
    Type
    integer
    Description

Request

GET
/v1/projects/{projectId}/images
curl 'https://rest.compute.cudo.org/v1/projects/{projectId}/images' \
-H 'Accept: application/json'

Response

{
    "images": [
        {
            "dataCenterId": "string",
            "description": "string",
            "id": "string",
            "projectId": "string",
            "sizeGib": "integer"
        }
    ],
    "pageNumber": "integer",
    "pageSize": "integer",
    "totalCount": "integer"
}

POST/v1/projects/{projectId}/images

Create private VM image

Description for this endpoint is coming soon.

Path attributes

  • Name
    projectId
    Type
    string
    Description
  • Name
    vmId
    Type
    string
    Description
  • Name
    id
    Type
    string
    Description
  • Name
    description
    Type
    string
    Description

Request

POST
/v1/projects/{projectId}/images
curl 'https://rest.compute.cudo.org/v1/projects/{projectId}/images' \
-H 'Accept: application/json'

Response

{
    "image": {
        "dataCenterId": "string",
        "description": "string",
        "id": "string",
        "projectId": "string",
        "sizeGib": "integer"
    }
}

GET/v1/projects/{projectId}/images/{id}

Get private VM image

Description for this endpoint is coming soon.

Path attributes

  • Name
    projectId
    Type
    string
    Description
  • Name
    id
    Type
    string
    Description

Request

GET
/v1/projects/{projectId}/images/{id}
curl 'https://rest.compute.cudo.org/v1/projects/{projectId}/images/{id}' \
-H 'Accept: application/json'

Response

{
    "image": {
        "dataCenterId": "string",
        "description": "string",
        "id": "string",
        "projectId": "string",
        "sizeGib": "integer"
    }
}

POST/v1/projects/{projectId}/images/{id}

Update private VM image

Description for this endpoint is coming soon.

Path attributes

  • Name
    projectId
    Type
    string
    Description
  • Name
    id
    Type
    string
    Description
  • Name
    description
    Type
    string
    Description

Request

POST
/v1/projects/{projectId}/images/{id}
curl 'https://rest.compute.cudo.org/v1/projects/{projectId}/images/{id}' \
-H 'Accept: application/json'

DELETE/v1/projects/{projectId}/images/{id}

Delete private VM image

Description for this endpoint is coming soon.

Path attributes

  • Name
    projectId
    Type
    string
    Description
  • Name
    id
    Type
    string
    Description

Request

DELETE
/v1/projects/{projectId}/images/{id}
curl 'https://rest.compute.cudo.org/v1/projects/{projectId}/images/{id}' \
-H 'Accept: application/json'

POST/v1/projects/{projectId}/vm

Create virtual machine

Description for this endpoint is coming soon.

Body attributes

  • Name
    bootDisk
    Type
    object
    Description
  • Name
    bootDiskImageId
    Type
    string
    Description
  • Name
    cpuModel
    Type
    string
    Description
  • Name
    customSshKeys
    Type
    array
    Description
  • Name
    dataCenterId
    Type
    string
    Description
  • Name
    gpuModel
    Type
    string
    Description
  • Name
    gpus
    Type
    integer
    Description
  • Name
    machineType
    Type
    string
    Description
  • Name
    maxPriceHr
    Type
    object
    Description
  • Name
    memoryGib
    Type
    integer
    Description
  • Name
    metadata
    Type
    object
    Description
  • Name
    nics
    Type
    array
    Description
  • Name
    password
    Type
    string
    Description
  • Name
    securityGroupIds
    Type
    array
    Description
  • Name
    sshKeySource
    Type
    string
    Description
  • Name
    startScript
    Type
    string
    Description
  • Name
    storageDiskIds
    Type
    array
    Description
  • Name
    vcpus
    Type
    integer
    Description
  • Name
    vmId
    Type
    string
    Description

Path attributes

  • Name
    projectId
    Type
    string
    Description

Request

POST
/v1/projects/{projectId}/vm
curl 'https://rest.compute.cudo.org/v1/projects/{projectId}/vm' \
-H 'Content-Type: application/json' \
-H 'Accept: application/json' \
--data-raw '{
    "bootDisk": "object",
    "bootDiskImageId": "string",
    "cpuModel": "string",
    "customSshKeys": "array",
    "dataCenterId": "string",
    "gpuModel": "string",
    "gpus": "integer",
    "machineType": "string",
    "maxPriceHr": "object",
    "memoryGib": "integer",
    "metadata": "object",
    "nics": "array",
    "password": "string",
    "securityGroupIds": "array",
    "sshKeySource": "string",
    "startScript": "string",
    "storageDiskIds": "array",
    "vcpus": "integer",
    "vmId": "string"
}'

Response

{
    "id": "string",
    "vm": {
        "activeState": "string",
        "bootDisk": {
            "createTime": "string",
            "dataCenterId": "string",
            "diskState": "string",
            "diskType": "string",
            "id": "string",
            "privateImageId": "string",
            "projectId": "string",
            "publicImageId": "string",
            "sizeGib": "integer",
            "storageClass": "string",
            "vmId": "string"
        },
        "bootDiskSizeGib": "integer",
        "cpuModel": "string",
        "createBy": "string",
        "datacenterId": "string",
        "externalIpAddress": "string",
        "gpuModel": "string",
        "gpuQuantity": "integer",
        "id": "string",
        "imageId": "string",
        "imageName": "string",
        "initState": "string",
        "internalIpAddress": "string",
        "lcmState": "string",
        "machineType": "string",
        "memory": "integer",
        "metadata": "object",
        "nics": [
            {
                "externalIpAddress": "string",
                "internalIpAddress": "string",
                "networkAddress": "string",
                "networkId": "string",
                "securityGroupIds": [
                    "string"
                ]
            }
        ],
        "oneState": "string",
        "priceHr": "number",
        "privateImageId": "string",
        "publicImageId": "string",
        "publicImageName": "string",
        "publicIpAddress": "string",
        "regionId": "string",
        "regionName": "string",
        "renewableEnergy": "boolean",
        "rules": [
            {
                "icmpType": "string",
                "id": "string",
                "ipRangeCidr": "string",
                "ports": "string",
                "protocol": "string",
                "ruleType": "string"
            }
        ],
        "securityGroupIds": [
            "string"
        ],
        "shortState": "string",
        "storageDisks": [
            {
                "createTime": "string",
                "dataCenterId": "string",
                "diskState": "string",
                "diskType": "string",
                "id": "string",
                "privateImageId": "string",
                "projectId": "string",
                "publicImageId": "string",
                "sizeGib": "integer",
                "storageClass": "string",
                "vmId": "string"
            }
        ],
        "vcpus": "integer"
    }
}

PATCH/v1/projects/{projectId}/vm/{id}/security-group/attach

Attach security group to VM

Description for this endpoint is coming soon.

Path attributes

  • Name
    projectId
    Type
    string
    Description
  • Name
    id
    Type
    string
    Description
  • Name
    securityGroupId
    Type
    string
    Description

Request

PATCH
/v1/projects/{projectId}/vm/{id}/security-group/attach
curl 'https://rest.compute.cudo.org/v1/projects/{projectId}/vm/{id}/security-group/attach' \
-H 'Accept: application/json'

PATCH/v1/projects/{projectId}/vm/{id}/security-group/detach

Attach security group to VM

Description for this endpoint is coming soon.

Path attributes

  • Name
    projectId
    Type
    string
    Description
  • Name
    id
    Type
    string
    Description
  • Name
    securityGroupId
    Type
    string
    Description

Request

PATCH
/v1/projects/{projectId}/vm/{id}/security-group/detach
curl 'https://rest.compute.cudo.org/v1/projects/{projectId}/vm/{id}/security-group/detach' \
-H 'Accept: application/json'

GET/v1/projects/{projectId}/vms

List

Description for this endpoint is coming soon.

Path attributes

  • Name
    projectId
    Type
    string
    Description
  • Name
    networkId
    Type
    string
    Description

Request

GET
/v1/projects/{projectId}/vms
curl 'https://rest.compute.cudo.org/v1/projects/{projectId}/vms' \
-H 'Accept: application/json'

Response

{
    "VMs": [
        {
            "activeState": "string",
            "bootDisk": {
                "createTime": "string",
                "dataCenterId": "string",
                "diskState": "string",
                "diskType": "string",
                "id": "string",
                "privateImageId": "string",
                "projectId": "string",
                "publicImageId": "string",
                "sizeGib": "integer",
                "storageClass": "string",
                "vmId": "string"
            },
            "bootDiskSizeGib": "integer",
            "cpuModel": "string",
            "createBy": "string",
            "datacenterId": "string",
            "externalIpAddress": "string",
            "gpuModel": "string",
            "gpuQuantity": "integer",
            "id": "string",
            "imageId": "string",
            "imageName": "string",
            "initState": "string",
            "internalIpAddress": "string",
            "lcmState": "string",
            "machineType": "string",
            "memory": "integer",
            "metadata": "object",
            "nics": [
                {
                    "externalIpAddress": "string",
                    "internalIpAddress": "string",
                    "networkAddress": "string",
                    "networkId": "string",
                    "securityGroupIds": [
                        "string"
                    ]
                }
            ],
            "oneState": "string",
            "priceHr": "number",
            "privateImageId": "string",
            "publicImageId": "string",
            "publicImageName": "string",
            "publicIpAddress": "string",
            "regionId": "string",
            "regionName": "string",
            "renewableEnergy": "boolean",
            "rules": [
                {
                    "icmpType": "string",
                    "id": "string",
                    "ipRangeCidr": "string",
                    "ports": "string",
                    "protocol": "string",
                    "ruleType": "string"
                }
            ],
            "securityGroupIds": [
                "string"
            ],
            "shortState": "string",
            "storageDisks": [
                {
                    "createTime": "string",
                    "dataCenterId": "string",
                    "diskState": "string",
                    "diskType": "string",
                    "id": "string",
                    "privateImageId": "string",
                    "projectId": "string",
                    "publicImageId": "string",
                    "sizeGib": "integer",
                    "storageClass": "string",
                    "vmId": "string"
                }
            ],
            "vcpus": "integer"
        }
    ]
}

GET/v1/projects/{projectId}/vms/{id}

Get

Description for this endpoint is coming soon.

Path attributes

  • Name
    projectId
    Type
    string
    Description
  • Name
    id
    Type
    string
    Description

Request

GET
/v1/projects/{projectId}/vms/{id}
curl 'https://rest.compute.cudo.org/v1/projects/{projectId}/vms/{id}' \
-H 'Accept: application/json'

Response

{
    "VM": {
        "activeState": "string",
        "bootDisk": {
            "createTime": "string",
            "dataCenterId": "string",
            "diskState": "string",
            "diskType": "string",
            "id": "string",
            "privateImageId": "string",
            "projectId": "string",
            "publicImageId": "string",
            "sizeGib": "integer",
            "storageClass": "string",
            "vmId": "string"
        },
        "bootDiskSizeGib": "integer",
        "cpuModel": "string",
        "createBy": "string",
        "datacenterId": "string",
        "externalIpAddress": "string",
        "gpuModel": "string",
        "gpuQuantity": "integer",
        "id": "string",
        "imageId": "string",
        "imageName": "string",
        "initState": "string",
        "internalIpAddress": "string",
        "lcmState": "string",
        "machineType": "string",
        "memory": "integer",
        "metadata": "object",
        "nics": [
            {
                "externalIpAddress": "string",
                "internalIpAddress": "string",
                "networkAddress": "string",
                "networkId": "string",
                "securityGroupIds": [
                    "string"
                ]
            }
        ],
        "oneState": "string",
        "priceHr": "number",
        "privateImageId": "string",
        "publicImageId": "string",
        "publicImageName": "string",
        "publicIpAddress": "string",
        "regionId": "string",
        "regionName": "string",
        "renewableEnergy": "boolean",
        "rules": [
            {
                "icmpType": "string",
                "id": "string",
                "ipRangeCidr": "string",
                "ports": "string",
                "protocol": "string",
                "ruleType": "string"
            }
        ],
        "securityGroupIds": [
            "string"
        ],
        "shortState": "string",
        "storageDisks": [
            {
                "createTime": "string",
                "dataCenterId": "string",
                "diskState": "string",
                "diskType": "string",
                "id": "string",
                "privateImageId": "string",
                "projectId": "string",
                "publicImageId": "string",
                "sizeGib": "integer",
                "storageClass": "string",
                "vmId": "string"
            }
        ],
        "vcpus": "integer"
    }
}

GET/v1/projects/{projectId}/vms/{id}/connect

Connect via VNC

Description for this endpoint is coming soon.

Path attributes

  • Name
    projectId
    Type
    string
    Description
  • Name
    id
    Type
    string
    Description
  • Name
    connectionId
    Type
    string
    Description

Request

GET
/v1/projects/{projectId}/vms/{id}/connect
curl 'https://rest.compute.cudo.org/v1/projects/{projectId}/vms/{id}/connect' \
-H 'Accept: application/json'

Response

{
    "connectUrl": "string",
    "token": "string"
}

GET/v1/projects/{projectId}/vms/{id}/disks

List disks attached to VM

Description for this endpoint is coming soon.

Path attributes

  • Name
    projectId
    Type
    string
    Description
  • Name
    id
    Type
    string
    Description

Request

GET
/v1/projects/{projectId}/vms/{id}/disks
curl 'https://rest.compute.cudo.org/v1/projects/{projectId}/vms/{id}/disks' \
-H 'Accept: application/json'

Response

{
    "disks": [
        {
            "createTime": "string",
            "dataCenterId": "string",
            "diskState": "string",
            "diskType": "string",
            "id": "string",
            "privateImageId": "string",
            "projectId": "string",
            "publicImageId": "string",
            "sizeGib": "integer",
            "storageClass": "string",
            "vmId": "string"
        }
    ]
}

PATCH/v1/projects/{projectId}/vms/{id}/disks

Resize a VM's disk

Description for this endpoint is coming soon.

Path attributes

  • Name
    projectId
    Type
    string
    Description
  • Name
    id
    Type
    string
    Description
  • Name
    diskId
    Type
    string
    Description
  • Name
    sizeGib
    Type
    integer
    Description

Request

PATCH
/v1/projects/{projectId}/vms/{id}/disks
curl 'https://rest.compute.cudo.org/v1/projects/{projectId}/vms/{id}/disks' \
-H 'Accept: application/json'

GET/v1/projects/{projectId}/vms/{id}/monitor

Monitor

Description for this endpoint is coming soon.

Path attributes

  • Name
    projectId
    Type
    string
    Description
  • Name
    id
    Type
    string
    Description

Request

GET
/v1/projects/{projectId}/vms/{id}/monitor
curl 'https://rest.compute.cudo.org/v1/projects/{projectId}/vms/{id}/monitor' \
-H 'Accept: application/json'

Response

{
    "items": [
        {
            "cpu": "number",
            "diskRdBytes": "integer",
            "diskRdIops": "integer",
            "diskWrBytes": "integer",
            "diskWrIops": "integer",
            "memory": "integer",
            "netRx": "integer",
            "netTx": "integer",
            "timestamp": "string"
        }
    ]
}

POST/v1/projects/{projectId}/vms/{id}/reboot

Reboot

Description for this endpoint is coming soon.

Path attributes

  • Name
    projectId
    Type
    string
    Description
  • Name
    id
    Type
    string
    Description

Request

POST
/v1/projects/{projectId}/vms/{id}/reboot
curl 'https://rest.compute.cudo.org/v1/projects/{projectId}/vms/{id}/reboot' \
-H 'Accept: application/json'

POST/v1/projects/{projectId}/vms/{id}/resize

Resize vCPU and memory of VM

Description for this endpoint is coming soon.

Path attributes

  • Name
    projectId
    Type
    string
    Description
  • Name
    id
    Type
    string
    Description
  • Name
    vcpus
    Type
    integer
    Description
  • Name
    memoryGib
    Type
    integer
    Description

Request

POST
/v1/projects/{projectId}/vms/{id}/resize
curl 'https://rest.compute.cudo.org/v1/projects/{projectId}/vms/{id}/resize' \
-H 'Accept: application/json'

Response

{
    "vm": {
        "activeState": "string",
        "bootDisk": {
            "createTime": "string",
            "dataCenterId": "string",
            "diskState": "string",
            "diskType": "string",
            "id": "string",
            "privateImageId": "string",
            "projectId": "string",
            "publicImageId": "string",
            "sizeGib": "integer",
            "storageClass": "string",
            "vmId": "string"
        },
        "bootDiskSizeGib": "integer",
        "cpuModel": "string",
        "createBy": "string",
        "datacenterId": "string",
        "externalIpAddress": "string",
        "gpuModel": "string",
        "gpuQuantity": "integer",
        "id": "string",
        "imageId": "string",
        "imageName": "string",
        "initState": "string",
        "internalIpAddress": "string",
        "lcmState": "string",
        "machineType": "string",
        "memory": "integer",
        "metadata": "object",
        "nics": [
            {
                "externalIpAddress": "string",
                "internalIpAddress": "string",
                "networkAddress": "string",
                "networkId": "string",
                "securityGroupIds": [
                    "string"
                ]
            }
        ],
        "oneState": "string",
        "priceHr": "number",
        "privateImageId": "string",
        "publicImageId": "string",
        "publicImageName": "string",
        "publicIpAddress": "string",
        "regionId": "string",
        "regionName": "string",
        "renewableEnergy": "boolean",
        "rules": [
            {
                "icmpType": "string",
                "id": "string",
                "ipRangeCidr": "string",
                "ports": "string",
                "protocol": "string",
                "ruleType": "string"
            }
        ],
        "securityGroupIds": [
            "string"
        ],
        "shortState": "string",
        "storageDisks": [
            {
                "createTime": "string",
                "dataCenterId": "string",
                "diskState": "string",
                "diskType": "string",
                "id": "string",
                "privateImageId": "string",
                "projectId": "string",
                "publicImageId": "string",
                "sizeGib": "integer",
                "storageClass": "string",
                "vmId": "string"
            }
        ],
        "vcpus": "integer"
    }
}

POST/v1/projects/{projectId}/vms/{id}/start

Start

Description for this endpoint is coming soon.

Path attributes

  • Name
    projectId
    Type
    string
    Description
  • Name
    id
    Type
    string
    Description

Request

POST
/v1/projects/{projectId}/vms/{id}/start
curl 'https://rest.compute.cudo.org/v1/projects/{projectId}/vms/{id}/start' \
-H 'Accept: application/json'

POST/v1/projects/{projectId}/vms/{id}/stop

Stop

Description for this endpoint is coming soon.

Path attributes

  • Name
    projectId
    Type
    string
    Description
  • Name
    id
    Type
    string
    Description

Request

POST
/v1/projects/{projectId}/vms/{id}/stop
curl 'https://rest.compute.cudo.org/v1/projects/{projectId}/vms/{id}/stop' \
-H 'Accept: application/json'

POST/v1/projects/{projectId}/vms/{id}/terminate

Terminate

Description for this endpoint is coming soon.

Path attributes

  • Name
    projectId
    Type
    string
    Description
  • Name
    id
    Type
    string
    Description

Request

POST
/v1/projects/{projectId}/vms/{id}/terminate
curl 'https://rest.compute.cudo.org/v1/projects/{projectId}/vms/{id}/terminate' \
-H 'Accept: application/json'

GET/v1/vms/data-centers

List data centers

Description for this endpoint is coming soon.

Path attributes

  • Name
    regionId
    Type
    array
    Description
  • Name
    renewableEnergy
    Type
    boolean
    Description

Request

GET
/v1/vms/data-centers
curl 'https://rest.compute.cudo.org/v1/vms/data-centers' \
-H 'Accept: application/json'

Response

{
    "dataCenters": [
        {
            "diskPoolPricing": [
                {
                    "diskGibPriceHr": {
                        "value": "string"
                    },
                    "snapshotGibPriceHr": {
                        "value": "string"
                    },
                    "storageClass": "string"
                }
            ],
            "id": "string",
            "ipv4PriceHr": {
                "value": "string"
            },
            "networkPricing": [
                {
                    "priceHr": {
                        "value": "string"
                    },
                    "size": "string"
                }
            ],
            "regionId": "string",
            "renewableEnergy": "boolean",
            "supplierName": "string"
        }
    ]
}

GET/v1/vms/machine-types

List machine types

Description for this endpoint is coming soon.

Path attributes

  • Name
    cpuModel
    Type
    string
    Description
  • Name
    gpu
    Type
    integer
    Description
  • Name
    gpuModel
    Type
    string
    Description
  • Name
    memoryGib
    Type
    integer
    Description
  • Name
    orderBy
    Type
    string
    Description
  • Name
    pageNumber
    Type
    integer
    Description
  • Name
    pageSize
    Type
    integer
    Description
  • Name
    regionId
    Type
    string
    Description
  • Name
    storageGib
    Type
    integer
    Description
  • Name
    vcpu
    Type
    integer
    Description
  • Name
    dataCenterId
    Type
    string
    Description
  • Name
    publicIpv4
    Type
    boolean
    Description

Request

GET
/v1/vms/machine-types
curl 'https://rest.compute.cudo.org/v1/vms/machine-types' \
-H 'Accept: application/json'

Response

{
    "countVmAvailable": "integer",
    "cpuModels": [
        {
            "countVmAvailable": "integer",
            "minPriceHr": {
                "value": "string"
            },
            "name": "string"
        }
    ],
    "dataCenters": [
        {
            "countVmAvailable": "integer",
            "id": "string",
            "minPriceHr": {
                "value": "string"
            },
            "renewableEnergy": "boolean"
        }
    ],
    "gpuModels": [
        {
            "countVmAvailable": "integer",
            "minPriceHr": {
                "value": "string"
            },
            "name": "string"
        }
    ],
    "hostConfigs": [
        {
            "countVmAvailable": "integer",
            "cpuModel": "string",
            "dataCenterId": "string",
            "gpuModel": "string",
            "gpuPriceHr": {
                "value": "string"
            },
            "id": "string",
            "ipv4PriceHr": {
                "value": "string"
            },
            "machineType": "string",
            "memoryGibPriceHr": {
                "value": "string"
            },
            "renewableEnergy": "boolean",
            "storageGibPriceHr": {
                "value": "string"
            },
            "totalGpuPriceHr": {
                "value": "string"
            },
            "totalMemoryPriceHr": {
                "value": "string"
            },
            "totalPriceHr": {
                "value": "string"
            },
            "totalStoragePriceHr": {
                "value": "string"
            },
            "totalVcpuPriceHr": {
                "value": "string"
            },
            "vcpuPriceHr": {
                "value": "string"
            }
        }
    ],
    "maxGpu": "integer",
    "maxMemoryGib": "integer",
    "maxVcpu": "integer",
    "request": {
        "cpuModel": "string",
        "dataCenterId": "string",
        "gpu": "integer",
        "gpuModel": "string",
        "memoryGib": "integer",
        "orderBy": "string",
        "pageNumber": "integer",
        "pageSize": "integer",
        "publicIpv4": "boolean",
        "regionId": "string",
        "storageGib": "integer",
        "vcpu": "integer"
    }
}

GET/v1/vms/public-images

List public VM images

Description for this endpoint is coming soon.

Request

GET
/v1/vms/public-images
curl 'https://rest.compute.cudo.org/v1/vms/public-images' \
-H 'Accept: application/json'

Response

{
    "images": [
        {
            "description": "string",
            "displayName": "string",
            "id": "string",
            "name": "string",
            "platform": "string",
            "sizeGib": "integer"
        }
    ]
}