IaaS API (v1alpha1)
Download OpenAPI specification:Download
Create a project
Authorizations:
header Parameters
X-ORG-ID | string Organization identifier passed as a header. This is optional and can normally inferred by the bearer token used for authentication. |
Request Body schema: application/jsonrequired
Details of the project to create
name required | string Name of the project |
object Tags for the project. Tag keys must be 1–63 characters, start and end with alphanumerics, and may include |
Responses
Request samples
- Payload
{- "name": "project-1",
- "tags": {
- "team": "ml-ops"
}
}
Response samples
- 201
- 400
- 500
- 501
{- "id": "123e4567-e89b-12d3-a456-426614174003",
- "name": "project-1",
- "state": "active",
- "tags": {
- "team": "ml-ops"
}
}
List all projects
Authorizations:
header Parameters
X-ORG-ID | string Organization identifier passed as a header. This is optional and can normally inferred by the bearer token used for authentication. |
Responses
Response samples
- 200
- 500
- 501
[- {
- "id": "123e4567-e89b-12d3-a456-426614174003",
- "name": "project-1",
- "state": "active",
- "tags": {
- "team": "ml-ops"
}
}
]
Get a project
Authorizations:
path Parameters
id required | string <uuid> Unique identifier of the project |
header Parameters
X-ORG-ID | string Organization identifier passed as a header. This is optional and can normally inferred by the bearer token used for authentication. |
Responses
Response samples
- 200
- 404
- 500
- 501
{- "id": "123e4567-e89b-12d3-a456-426614174003",
- "name": "project-1",
- "state": "active",
- "tags": {
- "team": "ml-ops"
}
}
Delete a project
Authorizations:
path Parameters
id required | string <uuid> Unique identifier of the project to delete |
header Parameters
X-ORG-ID | string Organization identifier passed as a header. This is optional and can normally inferred by the bearer token used for authentication. |
Responses
Response samples
- 404
- 500
- 501
{- "message": "string"
}
Create a machine instance
Authorizations:
header Parameters
X-PROJECT-ID required | string <uuid> Project identifier passed as a header |
X-ORG-ID | string Organization identifier passed as a header. This is optional and can normally inferred by the bearer token used for authentication. |
Request Body schema: application/jsonrequired
Details of the instance to create
name required | string Name of the instance |
type required | string Instance type |
image | string Default: "image://ubuntu22.04" Operating system image for the instance |
preemptible | boolean Default: false Whether the instance is preemptible |
ephemeral | boolean Default: false Whether the instance is ephemeral |
userData | string or null <byte> Default: null Base64-encoded cloud-init user data for instance initialization |
filesystems | Array of strings <uuid> [ items <uuid > ] List of filesystem UUIDs attached to the instance |
object Tags for the instance. Tag keys must be 1–63 characters, start and end with alphanumerics, and may include |
Responses
Request samples
- Payload
{- "name": "instance-1",
- "type": "h100-hgx-80gb.8x",
- "image": "image://ubuntu22.04",
- "preemptible": false,
- "ephemeral": false,
- "userData": "I2Nsb3VkLWNvbmZpZwpwYWNrYWdlczoKICAtIG5naW54\n",
- "filesystems": [
- "123e4567-e89b-12d3-a456-426614174000",
- "123e4567-e89b-12d3-a456-426614174001"
], - "tags": {
- "environment": "production"
}
}
Response samples
- 201
- 400
- 500
- 501
{- "id": "550e8400-e29b-41d4-a716-446655440000",
- "name": "instance-1",
- "type": "h100-hgx-80gb.8x",
- "ip": "10.0.0.2",
- "state": "running",
- "image": "ubuntu22.04",
- "preemptible": false,
- "ephemeral": false,
- "userData": "I2Nsb3VkLWNvbmZpZwpwYWNrYWdlczoKICAtIG5naW54\n",
- "filesystems": [
- "123e4567-e89b-12d3-a456-426614174000",
- "123e4567-e89b-12d3-a456-426614174001"
], - "tags": {
- "environment": "production"
}
}
List all machine instances
Authorizations:
header Parameters
X-PROJECT-ID required | string <uuid> Project identifier passed as a header |
X-ORG-ID | string Organization identifier passed as a header. This is optional and can normally inferred by the bearer token used for authentication. |
Responses
Response samples
- 200
- 500
- 501
[- {
- "id": "550e8400-e29b-41d4-a716-446655440000",
- "name": "instance-1",
- "type": "h100-hgx-80gb.8x",
- "ip": "10.0.0.2",
- "state": "running",
- "image": "ubuntu22.04",
- "preemptible": false,
- "ephemeral": false,
- "userData": "I2Nsb3VkLWNvbmZpZwpwYWNrYWdlczoKICAtIG5naW54\n",
- "filesystems": [
- "123e4567-e89b-12d3-a456-426614174000",
- "123e4567-e89b-12d3-a456-426614174001"
], - "tags": {
- "environment": "production"
}
}
]
Get a machine instance
Authorizations:
path Parameters
id required | string <uuid> Unique identifier of the instance |
header Parameters
X-PROJECT-ID required | string <uuid> Project identifier passed as a header |
X-ORG-ID | string Organization identifier passed as a header. This is optional and can normally inferred by the bearer token used for authentication. |
Responses
Response samples
- 200
- 404
- 500
- 501
{- "id": "550e8400-e29b-41d4-a716-446655440000",
- "name": "instance-1",
- "type": "h100-hgx-80gb.8x",
- "ip": "10.0.0.2",
- "state": "running",
- "image": "ubuntu22.04",
- "preemptible": false,
- "ephemeral": false,
- "userData": "I2Nsb3VkLWNvbmZpZwpwYWNrYWdlczoKICAtIG5naW54\n",
- "filesystems": [
- "123e4567-e89b-12d3-a456-426614174000",
- "123e4567-e89b-12d3-a456-426614174001"
], - "tags": {
- "environment": "production"
}
}
Delete a machine instance
Authorizations:
path Parameters
id required | string <uuid> Unique identifier of the instance |
header Parameters
X-PROJECT-ID required | string <uuid> Project identifier passed as a header |
X-ORG-ID | string Organization identifier passed as a header. This is optional and can normally inferred by the bearer token used for authentication. |
Responses
Response samples
- 404
- 500
- 501
{- "message": "string"
}
Start a machine instance
Authorizations:
path Parameters
id required | string <uuid> Unique identifier of the instance |
header Parameters
X-PROJECT-ID required | string <uuid> Project identifier passed as a header |
X-ORG-ID | string Organization identifier passed as a header. This is optional and can normally inferred by the bearer token used for authentication. |
Responses
Response samples
- 400
- 404
- 409
- 500
- 501
{- "message": "string"
}
Stop a machine instance
Authorizations:
path Parameters
id required | string <uuid> Unique identifier of the instance |
header Parameters
X-PROJECT-ID required | string <uuid> Project identifier passed as a header |
X-ORG-ID | string Organization identifier passed as a header. This is optional and can normally inferred by the bearer token used for authentication. |
Responses
Response samples
- 400
- 404
- 409
- 500
- 501
{- "message": "string"
}
Create a filesystem
Authorizations:
header Parameters
X-PROJECT-ID required | string <uuid> Project identifier passed as a header |
X-ORG-ID | string Organization identifier passed as a header. This is optional and can normally inferred by the bearer token used for authentication. |
Request Body schema: application/jsonrequired
Details of the filesystem to create
name required | string Name of the filesystem |
size required | string Size of the filesystem in GB |
Responses
Request samples
- Payload
{- "name": "fs-1",
- "size": "512Gi"
}
Response samples
- 201
- 400
- 500
- 501
{- "id": "123e4567-e89b-12d3-a456-426614174002",
- "name": "fs-1",
- "size": "512Gi"
}
List all filesystems
Authorizations:
header Parameters
X-PROJECT-ID required | string <uuid> Project identifier passed as a header |
X-ORG-ID | string Organization identifier passed as a header. This is optional and can normally inferred by the bearer token used for authentication. |
Responses
Response samples
- 200
- 500
- 501
[- {
- "id": "123e4567-e89b-12d3-a456-426614174002",
- "name": "fs-1",
- "size": "512Gi"
}
]
Get a filesystem
Authorizations:
path Parameters
id required | string <uuid> Unique identifier of the filesystem |
header Parameters
X-PROJECT-ID required | string <uuid> Project identifier passed as a header |
X-ORG-ID | string Organization identifier passed as a header. This is optional and can normally inferred by the bearer token used for authentication. |
Responses
Response samples
- 200
- 404
- 500
- 501
{- "id": "123e4567-e89b-12d3-a456-426614174002",
- "name": "fs-1",
- "size": "512Gi"
}
Delete a filesystem
Authorizations:
path Parameters
id required | string <uuid> Unique identifier of the filesystem |
header Parameters
X-PROJECT-ID required | string <uuid> Project identifier passed as a header |
X-ORG-ID | string Organization identifier passed as a header. This is optional and can normally inferred by the bearer token used for authentication. |
Responses
Response samples
- 404
- 500
- 501
{- "message": "string"
}
List available capacity
Authorizations:
header Parameters
X-PROJECT-ID required | string <uuid> Project identifier passed as a header |
X-ORG-ID | string Organization identifier passed as a header. This is optional and can normally inferred by the bearer token used for authentication. |
Responses
Response samples
- 200
- 500
- 501
[- {
- "name": "h100-hgx-80gb.8x",
- "capacity": 1
}
]
List all clusters
Authorizations:
header Parameters
X-ORG-ID | string Organization identifier passed as a header. This is optional and can normally inferred by the bearer token used for authentication. |
X-PROJECT-ID required | string <uuid> Project identifier passed as a header |
Responses
Response samples
- 200
- 500
- 501
[- {
- "id": "123e4567-e89b-12d3-a456-426614174003",
- "name": "cluster-01",
- "version": "1.32.1"
}
]
Create a cluster
Authorizations:
header Parameters
X-ORG-ID | string Organization identifier passed as a header. This is optional and can normally inferred by the bearer token used for authentication. |
X-PROJECT-ID required | string <uuid> Project identifier passed as a header |
Request Body schema: application/jsonrequired
Details of the cluster to create
name required | string The cluster name. |
version | string The cluster version. |
Responses
Request samples
- Payload
{- "name": "cluster-01",
- "version": "1.32.1"
}
Response samples
- 201
- 400
- 409
- 500
- 501
{- "id": "123e4567-e89b-12d3-a456-426614174003",
- "name": "cluster-01",
- "version": "1.32.1"
}
Get a cluster
Authorizations:
path Parameters
id required | string <uuid> Unique identifier of the kubernetes cluster |
header Parameters
X-ORG-ID | string Organization identifier passed as a header. This is optional and can normally inferred by the bearer token used for authentication. |
X-PROJECT-ID required | string <uuid> Project identifier passed as a header |
Responses
Response samples
- 200
- 404
- 500
- 501
{- "id": "123e4567-e89b-12d3-a456-426614174003",
- "name": "cluster-01",
- "version": "1.32.1"
}
Delete a cluster
Authorizations:
path Parameters
id required | string <uuid> Unique identifier of the kubernetes cluster to delete |
header Parameters
X-ORG-ID | string Organization identifier passed as a header. This is optional and can normally inferred by the bearer token used for authentication. |
X-PROJECT-ID required | string <uuid> Project identifier passed as a header |
Responses
Response samples
- 404
- 500
- 501
{- "message": "string"
}
List all node pools
Authorizations:
header Parameters
X-ORG-ID | string Organization identifier passed as a header. This is optional and can normally inferred by the bearer token used for authentication. |
X-PROJECT-ID required | string <uuid> Project identifier passed as a header |
Responses
Response samples
- 200
- 500
- 501
[- {
- "id": "123e4567-e89b-12d3-a456-426614174003",
- "name": "pool-01",
- "cluster": "cluster-01",
- "type": "h100-hgx-80gb.8x",
- "count": 3,
- "version": "1.32.1"
}
]
Create a node pool
Authorizations:
header Parameters
X-ORG-ID | string Organization identifier passed as a header. This is optional and can normally inferred by the bearer token used for authentication. |
X-PROJECT-ID required | string <uuid> Project identifier passed as a header |
Request Body schema: application/jsonrequired
Details of the node pool to create
name required | string Name of the kubernetes node pool |
cluster required | string Name of the kubernetes cluster |
type required | string Instance type of the kubernetes node pool |
count required | integer Number of nodes in the kubernetes node pool |
version | string Version of the kubernetes node pool |
Responses
Request samples
- Payload
{- "name": "pool-01",
- "cluster": "cluster-01",
- "type": "h100-hgx-80gb.8x",
- "count": 3,
- "version": "1.32.1"
}
Response samples
- 201
- 400
- 409
- 500
- 501
{- "id": "123e4567-e89b-12d3-a456-426614174003",
- "name": "pool-01",
- "cluster": "cluster-01",
- "type": "h100-hgx-80gb.8x",
- "count": 3,
- "version": "1.32.1"
}
Get a node pool
Authorizations:
path Parameters
id required | string <uuid> Unique identifier of the node pool |
header Parameters
X-ORG-ID | string Organization identifier passed as a header. This is optional and can normally inferred by the bearer token used for authentication. |
X-PROJECT-ID required | string <uuid> Project identifier passed as a header |
Responses
Response samples
- 200
- 404
- 500
- 501
{- "id": "123e4567-e89b-12d3-a456-426614174003",
- "name": "pool-01",
- "cluster": "cluster-01",
- "type": "h100-hgx-80gb.8x",
- "count": 3,
- "version": "1.32.1"
}
Delete a node pool
Authorizations:
path Parameters
id required | string <uuid> Unique identifier of the node pool to delete |
header Parameters
X-ORG-ID | string Organization identifier passed as a header. This is optional and can normally inferred by the bearer token used for authentication. |
X-PROJECT-ID required | string <uuid> Project identifier passed as a header |
Responses
Response samples
- 404
- 500
- 501
{- "message": "string"
}
Get all slurm clusters
Authorizations:
header Parameters
X-ORG-ID | string Organization identifier passed as a header. This is optional and can normally inferred by the bearer token used for authentication. |
X-PROJECT-ID required | string <uuid> Project identifier passed as a header |
Responses
Response samples
- 200
- 500
- 501
[- {
- "id": "123e4567-e89b-12d3-a456-426614174003",
- "name": "cluster-01"
}
]
Get all slurm node pools
Authorizations:
header Parameters
X-ORG-ID | string Organization identifier passed as a header. This is optional and can normally inferred by the bearer token used for authentication. |
X-PROJECT-ID required | string <uuid> Project identifier passed as a header |
Responses
Response samples
- 200
- 404
- 500
- 501
[- {
- "id": "123e4567-e89b-12d3-a456-426614174003",
- "name": "pool-01",
- "type": "h100-hgx-80gb.8x"
}
]