POST
/
enterprise
/
v1
/
io-cloud
/
vmaas
/
deploy
cURL
curl -X POST "https://api.io.solutions/enterprise/v1/io-cloud/vmaas/deploy" \
  -H "x-api-key: $IOCLOUD_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "resource_private_name": "example-deployment",
    "node_pool_id": "3fa85f64-5717-4562-b3fc-2c963f66afa6",
    "duration_hours": 4,
    "gpus_per_vm": 2,
    "hardware_id": 101,
    "location_ids": [1, 2],
    "vms_qty": 3,
    "ssh_keys": {
      "key1": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC...",
      "key2": "ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQD..."
    },
    "github_ids": ["github_user_1", "github_user_2"],
    "vm_image_type": "general",
    "network_services": {
      "service1": {"port": 22, "protocol": "tcp", "whitelist": ["0.0.0.0/0"]},
      "service2": {"port": 80, "protocol": "tcp", "whitelist": ["0.0.0.0/0"]}
    }
  }'
"string"

Authorizations

x-api-key
string
header
required

Body

application/json
resource_private_name
string
required

Name assigned to the deployment.

node_pool_id
string
required

ID of the node pool for the deployment.

duration_hours
integer
default:1
required

The duration (in hours) for which the deployment should run.

Required range: x >= 1
gpus_per_vm
integer
default:1
required

Number of GPUs allocated per VM.

Required range: x >= 1
hardware_id
integer
required

ID of the hardware to use.

location_ids
integer[]
required

List of location IDs for deployment.

vms_qty
integer
required

Number of VMs to deploy.

ssh_keys
object

SSH keys to be injected into the VMs.

github_ids
string[]

GitHub IDs for authorized access.

vm_image_type
string

Type of VM image to use (e.g., general, custom).

network_services
object

Network services configuration (ports, protocols, and whitelists).

Response

Deployment created successfully

The response is of type string.