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"
    }
  ]
}