Denvr AI Services Docs
  • Welcome to Denvr AI Services Docs!
  • OVERVIEW
    • Getting started
      • Launch a virtual machine
      • Secure Shell (SSH): Best Practices
      • API Usage samples
      • Registration
    • Data centers
    • Shared responsibility model
    • Technical support
    • What's new!
  • PLATFORM
    • Dashboard
    • Applications
    • Virtual machines
    • Bare metal
    • Storage
    • Networking
    • User management
    • Billing
  • API Reference
    • Authentication
    • Clusters
    • Applications
    • Virtual machines
    • VPCs
    • Bare metal
  • Additional Information
    • FAQs
      • Desktop vs data center GPUs
      • Differences of bare metal and virtual machines
      • GPU monitoring
      • Using Github with SSH keys
      • Data persistence and recovery
      • Do you support Kubernetes?
      • Installing GPU drivers
      • What is the network bandwidth?
      • What ports are publicly accessible?
      • What is persistent local storage?
      • Adding DAS to /etc/fstab
      • Provisioning States
    • Policies
      • Terms of Service
      • Privacy Policy
      • Acceptable Use Policy
      • Maintenance policy
Powered by GitBook
On this page
  1. API Reference

Virtual machines

Explore this section for comprehensive information on endpoints related to the deployment, management, and operation of virtual machines within our cloud software API environment.

PreviousApplicationsNextVPCs

Last updated 16 days ago

Get detailed information on available configurations for virtual machines

get
Responses
200
Success
400
Bad Request
401
Unauthorized
403
Forbidden
500
Server Error
get
GET /api/v1/servers/virtual/GetConfigurations HTTP/1.1
Host: 
Accept: */*
{
  "items": [
    {
      "id": 1,
      "user_friendly_name": "text",
      "name": "text",
      "description": "text",
      "storage": 1,
      "type": "text",
      "brand_family": "text",
      "brand": "text",
      "text_name": "text",
      "gpus": 1,
      "vcpus": 1,
      "memory": 1,
      "price": 1,
      "compute_network": "text",
      "is_gpu_platform": true,
      "clusters": [
        "text"
      ]
    }
  ]
}
  • GETGet a list of virtual machines
  • GETGet detailed information about a specific virtual machine
  • POSTCreate a new virtual machine using pre-defined configuration
  • POSTStart a virtual machine that has been previously set up and provisioned, but is currently OFFLINE
  • POSTStop a virtual machine, ensuring a secure and orderly shutdown of its operations within the cloud environment
  • DELETEPermanently delete a specified virtual machine, effectively wiping all its data and freeing up resources for other uses
  • GETGet detailed information on available configurations for virtual machines
  • GETGet information about the current availability of different virtual machine configurations

Get a list of virtual machines

get
Query parameters
ClusterstringOptional
Responses
200
Success
400
Bad Request
401
Unauthorized
403
Forbidden
500
Server Error
get

Get detailed information about a specific virtual machine

get
Query parameters
IdstringRequired
ClusterstringRequired
Responses
200
Success
400
Bad Request
401
Unauthorized
403
Forbidden
500
Server Error
get

Permanently delete a specified virtual machine, effectively wiping all its data and freeing up resources for other uses

delete
Query parameters
IdstringRequired
ClusterstringRequired
Responses
202
Accepted
400
Bad Request
401
Unauthorized
403
Forbidden
500
Server Error
delete

Get information about the current availability of different virtual machine configurations

get
Query parameters
clusterstringRequiredExample: Hou1
resourcePoolstringOptionalExample: reserved-denvr
reportNodesbooleanOptional

controls if Count and MaxCount is calculated and returned in the response. If they are not needed, use 'false' to improve response time of the endpoint.

Default: true
Responses
200
Success
400
Bad Request
401
Unauthorized
403
Forbidden
500
Server Error
get
GET /api/v1/servers/virtual/GetServers HTTP/1.1
Host: 
Accept: */*
{
  "items": [
    {
      "username": "text",
      "tenancy_name": "text",
      "rpool": "text",
      "id": "text",
      "configuration": "text",
      "storage": 1,
      "gpu_type": "text",
      "gpus": 1,
      "vcpus": 1,
      "memory": 1,
      "ip": "text",
      "privateIp": "text",
      "image": "text",
      "cluster": "text",
      "status": "ONLINE",
      "storageType": "text"
    }
  ]
}
GET /api/v1/servers/virtual/GetServer?Id=text&Cluster=text HTTP/1.1
Host: 
Accept: */*
{
  "username": "text",
  "tenancy_name": "text",
  "rpool": "text",
  "id": "text",
  "configuration": "text",
  "storage": 1,
  "gpu_type": "text",
  "gpus": 1,
  "vcpus": 1,
  "memory": 1,
  "ip": "text",
  "privateIp": "text",
  "image": "text",
  "cluster": "text",
  "status": "ONLINE",
  "storageType": "text"
}

Create a new virtual machine using pre-defined configuration

post
Body
namestring | nullableOptional

Name of virtual server to be created. If not provided, name will be auto-generated.

rpoolstring | nullableOptional

Name of the pool to be used. If not provided, first pool assigned to a tenant will be used. In case of no pool assigned, 'on-demand' will be used.

configurationstring · min: 1Required

Name of the configuration to be used. For possible values, refer to the otput of api/v1/servers/virtual/GetConfigurations, field 'name' DenvrDashboard.Servers.Dtos.ServerConfiguration.Name

Example: A100_40GB_PCIe_1x
clusterstring · min: 1Required

cluster to be used. For possible values, refer to the otput of api/v1/clusters/GetAll"/>

ssh_keysstring[] · min: 1Required
operatingSystemImagestring | nullableOptional

Name of the Operating System image to be used.

Example: Ubuntu 22.04.4 LTS
rootDiskSizeinteger · int32Optional

Size of root disk to be created.

Responses
202
Accepted
400
Bad Request
401
Unauthorized
403
Forbidden
500
Server Error
503
Server Error
post
POST /api/v1/servers/virtual/CreateServer HTTP/1.1
Host: 
Content-Type: application/json-patch+json
Accept: */*
Content-Length: 164

{
  "name": "text",
  "rpool": "text",
  "configuration": "A100_40GB_PCIe_1x",
  "cluster": "text",
  "ssh_keys": [
    "text"
  ],
  "operatingSystemImage": "Ubuntu 22.04.4 LTS",
  "rootDiskSize": 1
}
{
  "username": "text",
  "tenancy_name": "text",
  "rpool": "text",
  "id": "text",
  "configuration": "text",
  "storage": 1,
  "gpu_type": "text",
  "gpus": 1,
  "vcpus": 1,
  "memory": 1,
  "ip": "text",
  "privateIp": "text",
  "image": "text",
  "cluster": "text",
  "status": "ONLINE",
  "storageType": "text"
}

Start a virtual machine that has been previously set up and provisioned, but is currently OFFLINE

post
Body
idstring · min: 1Required
clusterstring · min: 1Required
Responses
202
Accepted
400
Bad Request
401
Unauthorized
403
Forbidden
500
Server Error
503
Server Error
post
POST /api/v1/servers/virtual/StartServer HTTP/1.1
Host: 
Content-Type: application/json-patch+json
Accept: */*
Content-Length: 30

{
  "id": "text",
  "cluster": "text"
}
{
  "username": "text",
  "tenancy_name": "text",
  "rpool": "text",
  "id": "text",
  "configuration": "text",
  "storage": 1,
  "gpu_type": "text",
  "gpus": 1,
  "vcpus": 1,
  "memory": 1,
  "ip": "text",
  "privateIp": "text",
  "image": "text",
  "cluster": "text",
  "status": "ONLINE",
  "storageType": "text"
}

Stop a virtual machine, ensuring a secure and orderly shutdown of its operations within the cloud environment

post
Body
idstring · min: 1Required
clusterstring · min: 1Required
Responses
202
Accepted
400
Bad Request
401
Unauthorized
403
Forbidden
500
Server Error
post
POST /api/v1/servers/virtual/StopServer HTTP/1.1
Host: 
Content-Type: application/json-patch+json
Accept: */*
Content-Length: 30

{
  "id": "text",
  "cluster": "text"
}
{
  "username": "text",
  "tenancy_name": "text",
  "rpool": "text",
  "id": "text",
  "configuration": "text",
  "storage": 1,
  "gpu_type": "text",
  "gpus": 1,
  "vcpus": 1,
  "memory": 1,
  "ip": "text",
  "privateIp": "text",
  "image": "text",
  "cluster": "text",
  "status": "ONLINE",
  "storageType": "text"
}
DELETE /api/v1/servers/virtual/DestroyServer?Id=text&Cluster=text HTTP/1.1
Host: 
Accept: */*
{
  "username": "text",
  "tenancy_name": "text",
  "rpool": "text",
  "id": "text",
  "configuration": "text",
  "storage": 1,
  "gpu_type": "text",
  "gpus": 1,
  "vcpus": 1,
  "memory": 1,
  "ip": "text",
  "privateIp": "text",
  "image": "text",
  "cluster": "text",
  "status": "ONLINE",
  "storageType": "text"
}
GET /api/v1/servers/virtual/GetAvailability?cluster=text HTTP/1.1
Host: 
Accept: */*
{
  "items": [
    {
      "configuration": "text",
      "cluster": "text",
      "rpool": "text",
      "price": 1,
      "available": true,
      "count": 1,
      "maxCount": 1
    }
  ]
}