GPU Platform as a Service — Platform APIs
Rafay GPU Cloud PaaS platform supports a rich set of REST APIs to consume the Rafay platform programmatically. CSPs can integrate Rafay's capabilities and services into their product offerings using the REST APIs and let their tenants consume the GPU PaaS capabilities from the CSP platform.
Authentication
When accessing Rafay's REST APIs you must provide the following header in your request. Each request must contain the access key ID of the identity (user) you are using to send your request.
This can be obtained from the Rafay admin console for the user under Managed Keys.
API Versioning
| API Version | Header |
|---|---|
| v1 / v2 | X-RAFAY-API-KEYID |
| v3 | X-API-KEY |
Default API Endpoint
Project Management APIs
List Projects
Retrieves a list of all projects accessible to the authenticated user, with support for pagination and sorting.
Base URL
Authentication
| Header | Value |
|---|---|
| x-api-key | <YOUR_API_KEY> |
Query Parameters
| Parameter | Type | Description |
|---|---|---|
| limitoptional | integer | Maximum number of projects to return |
| orderoptional | string | ASC or DESC |
| orderbyoptional | string | Field used for sorting (e.g., name) |
Error Responses
| HTTP Code | Meaning | Description |
|---|---|---|
| 400 | Bad Request | Invalid query parameters |
| 401 | Unauthorized | Missing or invalid API key |
| 403 | Forbidden | Access denied |
| 500 | Internal Server Error | Unexpected system error |
curl -X GET \ "https://api.<your-domain>.com/auth/v1/projects/?limit=1000&order=ASC&orderby=name" \ -H "Accept: application/json" \ -H "x-api-key: <YOUR_API_KEY>"
{
"count": 2,
"items": [
{
"id": "qkolyjk",
"name": "batch-batch-7180s",
"description": "Batch processing project",
"createdAt": "2025-11-10T06:22:18Z",
"modifiedAt": "2025-12-01T04:15:42Z"
}
]
}
User Management APIs
List Users
Returns a list of available local users.
Authentication
| Header | Description |
|---|---|
| x-api-key | API key issued to the customer |
Query Parameters
| Parameter | Type | Description |
|---|---|---|
| limitoptional | integer | Number of users to return |
| offsetoptional | integer | Pagination offset |
| orderByoptional | string | Sort field |
| orderoptional | string | ASC or DESC |
| qoptional | string | Query parameter |
Error Responses
| HTTP Status | Description |
|---|---|
| 400 | Bad request |
| 401 | Missing or invalid API key |
| 403 | Returned when the user does not have permission to access the resource |
{
"users": [
{
"account": {
"id": "7dkgjkx",
"username": "user@domain.co",
"first_name": "User",
"last_name": "Domain",
"user_type": "CONSOLE",
"active": true
}
}
],
"count": 1,
"offset": 0,
"limit": 0
}
Create User
Creates a new local user.
Authentication
| Header | Description |
|---|---|
| x-api-key | Customer API key |
Request Body — Required Fields
| Field | Type | Description |
|---|---|---|
| usernamerequired | string | Email of the user |
| first_namerequired | string | First name |
| last_namerequired | string | Last name |
| passwordrequired | string | Password |
| user_typerequired | object | CONSOLE or API |
Error Responses
| HTTP Status | Description |
|---|---|
| 400 | Bad request |
| 401 | Missing or invalid API key |
| 403 | Permission denied |
{
"account": {
"username": "user@domain.co",
"first_name": "User",
"last_name": "Domain",
"password": "test0123",
"user_type": "CONSOLE"
}
}
{
"account": {
"id": "dk3lekn",
"username": "user@domain.co",
"first_name": "User",
"last_name": "Domain",
"user_type": "CONSOLE"
},
"sso_account": null,
"is_sso": false
}
Delete User
Deletes a local user.
Authentication
| Header | Description |
|---|---|
| x-api-key | Customer API key |
Path Parameters
| Parameter | Type | Description |
|---|---|---|
| accountIdrequired | string | Account ID of the user (e.g., dk3lekn) |
Error Responses
| HTTP Status | Description |
|---|---|
| 400 | Bad request |
| 401 | Missing or invalid API key |
| 403 | Permission denied |
// No response body returned
Assign User to Group(s)
Assign a user to one or more groups.
Authentication
| Header | Description |
|---|---|
| x-api-key | Customer API key |
Path Parameters
| Parameter | Type | Description |
|---|---|---|
| accountIdrequired | string | Account ID of the user |
Request Body — Required Fields
| Field | Type | Description |
|---|---|---|
| idrequired | string | ID of the group |
| namerequired | string | Name of the group |
| typerequired | string | SYSTEM |
Error Responses
| HTTP Status | Description |
|---|---|
| 400 | Bad request |
| 401 | Missing or invalid API key |
| 403 | Permission denied |
[{ "id": "lk557ke", "type": "SYSTEM", "name": "DemoAdmin" }]
// Successful assignment of user to group(s)
Remove User from Group(s)
Remove a user from one or more groups.
Authentication
| Header | Description |
|---|---|
| x-api-key | Customer API key |
Path Parameters
| Parameter | Type | Description |
|---|---|---|
| accountIdrequired | string | Account ID of the user |
Request Body — Required Fields
| Field | Type | Description |
|---|---|---|
| idrequired | string | ID of the group |
| namerequired | string | Name of the group |
| typerequired | string | SYSTEM |
Error Responses
| HTTP Status | Description |
|---|---|
| 400 | Bad request |
| 401 | Missing or invalid API key |
| 403 | Permission denied |
[{ "id": "lk557ke", "type": "SYSTEM", "name": "DemoAdmin" }]
// Successful removal of user from group(s)
Assign User to Project
Assign a user to a project with one or more roles.
Authentication
| Header | Description |
|---|---|
| x-api-key | Customer API key |
Path Parameters
| Parameter | Type | Description |
|---|---|---|
| accountIdrequired | string | Account ID of the user |
Request Body — Required Fields
| Field | Type | Description |
|---|---|---|
| rolesrequired | array | One or more roles |
| role.idrequired | string | Role ID |
| role.namerequired | string | Role name |
| role.scoperequired | string | PROJECT |
| role.role_typerequired | string | BASE or CUSTOM |
| project.idrequired | string | ID of the project |
| project.namerequired | string | Name of the project |
Error Responses
| HTTP Status | Description |
|---|---|
| 400 | Bad request |
| 401 | Missing or invalid API key |
| 403 | Permission denied |
{
"roles": [{ "id": "gdk6g21", "name": "PROJECT_ADMIN", "scope": "PROJECT" }],
"project": { "id": "lk5rw2e", "name": "defaultproject" }
}
// Successful assignment of user to the project
Unassign User from Project
Unassign a user from a project with one or more roles.
Authentication
| Header | Description |
|---|---|
| x-api-key | Customer API key |
Path Parameters
| Parameter | Type | Description |
|---|---|---|
| accountIdrequired | string | Account ID of the user |
Error Responses
| HTTP Status | Description |
|---|---|
| 400 | Bad request |
| 401 | Missing or invalid API key |
| 403 | Permission denied |
{
"project": { "id": "2wxr66m", "name": "actions" },
"roles": [{ "role": { "id": "w2lrn2p", "scope": "PROJECT" } }]
}
// Successful unassignment of user from the project
Virtual Private Network Management APIs
VPC Service API
The VPC Service API enables customers to create and manage a Virtual Private Cloud (VPC) within a project. A VPC provides isolated networking with configurable subnets, gateways, and optional public IP support. Once deployed, the VPC can be used to provision compute resources such as virtual machines.
Base URL
Authentication
| Header | Value |
|---|---|
| x-api-key | <YOUR_API_KEY> |
Create (Provision) VPC Service
Creates a VPC service under a specified project. The service is created in a not_deployed state and must be deployed before it can be used for compute workloads.
Path Parameters
| Name | Type | Description |
|---|---|---|
| projectNamerequired | string | Name of the project |
VPC Configuration Variables
| Variable Name | Description | Example |
|---|---|---|
| Default VPC Name | Name of the VPC | default |
| Default Subnet CIDR | Subnet CIDR range | 192.168.16.0 |
| Default Subnet Gateway | Subnet gateway IP | 192.168.16.254 |
| Public IP Enabled | Enable public IP assignment | True / False |
Service Lifecycle States
| State | Description |
|---|---|
| not_deployed | Service created but not active |
| Deployment in progress | |
| deployed | VPC ready for compute |
| failed | Deployment failed |
Error Codes
| HTTP Code | Meaning |
|---|---|
| 400 | Invalid request |
| 401 | Invalid or missing API key |
| 403 | Access denied |
| 409 | Service already exists |
| 500 | Internal server error |
curl -X POST \ https://api.<your-domain>.ai/apis/paas.envmgmt.io/v1/projects/system-catalog/services \ -H "Content-Type: application/json" \ -H "x-api-key: <YOUR_API_KEY>" \ -d '{ "apiVersion": "paas.envmgmt.io/v1", "kind": "Service", "metadata": { "name": "vpc-test-1", "project": "system-catalog" }, "spec": { "serviceProfile": { "name": "vpc", "systemCatalog": true }, "variables": [ { "name": "Default Subnet CIDR", "value": "192.168.16.0" }, { "name": "Default Subnet Gateway", "value": "192.168.16.254" }, { "name": "Public IP Enabled", "value": "True" } ], "serviceType": "custom" }, "status": { "status": "not_deployed" } }'
{
"metadata": { "name": "vpc-test-1", "project": "system-catalog" },
"status": { "status": "not_deployed" }
}
Deploy (Publish) VPC Service
Activates the service and provisions the underlying VPC infrastructure. Once deployment is complete, the VPC becomes available for compute (VM) provisioning.
Path Parameters
| Name | Type | Description |
|---|---|---|
| projectNamerequired | string | Project containing the VPC service |
| serviceNamerequired | string | Name of the VPC service to deploy |
Error Codes
| HTTP Code | Description |
|---|---|
| 400 | Invalid request body |
| 401 | Missing or invalid API key |
| 404 | Service not found |
| 409 | Service already deployed |
| 500 | Internal server error |
curl -X POST \ https://api.<your-domain>.ai/apis/paas.envmgmt.io/v1/projects/system-catalog/services/vpc-test-1/publish \ -H "x-api-key: <YOUR_API_KEY>"
{
"metadata": { "name": "vpc-test-1", "project": "system-catalog" },
"status": { "status": "deploying" }
}
End-to-End Workflow
Follow these steps to provision and use a VPC for compute workloads.
Workspaces
List Workspaces
Retrieves a list of all workspaces within a specified project.
Authentication
| Header | Value |
|---|---|
| X-API-KEY | <apiKey> |
Query Parameters
| Parameter | Type | Description |
|---|---|---|
| limitoptional | integer | Number greater than zero. Default: 50 |
| offsetoptional | integer | Number greater than zero. Default: 0 |
| orderoptional | enum | ASC or DESC. Default: DESC |
| orderByoptional | enum | Set to createdAt. Default: createdAt |
curl --location \ 'https://api.<your-domain>.ai/apis/paas.envmgmt.io/v1/projects/vm-project/workspaces?limit=1000&offset=0&order=DESC&orderBy=createdAt' \ --header 'x-api-key: <YOUR_API_KEY>'
{
"apiVersion": "paas.envmgmt.io/v1",
"kind": "WorkspaceList",
"metadata": { "count": 1, "limit": 50 },
"items": [{
"kind": "Workspace",
"metadata": {
"name": "dev",
"project": "vm-project",
"id": "0199dfc7-9552-70e0-a20e-0fc9bfab1b19",
"createdAt": "2025-10-13T22:53:43.122049Z"
}
}]
}
Create / Update Workspace
The same API can be used for both create and update operations.
Authentication
| Header | Value |
|---|---|
| X-API-KEY | <apiKey> |
Query Parameters
| Parameter | Type | Description |
|---|---|---|
| fail-on-existsoptional | boolean | Whether the API should fail if the object already exists |
Request Body
| Field | Type | Description |
|---|---|---|
| metadata.namerequired | string | Name of the workspace |
| metadata.projectrequired | string | Name of the project |
| metadata.displayNameoptional | string | Display name |
| metadata.descriptionoptional | string | Description |
curl --location \ 'https://api.<your-domain>.ai/apis/paas.envmgmt.io/v1/projects/vm-project/workspaces?fail-on-exists=true' \ --header 'Content-Type: application/json' \ --header 'x-api-key: <YOUR_API_KEY>' \ --data '{ "apiVersion": "paas.envmgmt.io/v1", "kind": "Workspace", "metadata": { "name": "dev", "project": "vm-project" } }'
{
"apiVersion": "paas.envmgmt.io/v1",
"kind": "Workspace",
"metadata": {
"name": "dev1",
"project": "vm-project",
"createdAt": "2025-10-14T18:14:03.687874Z"
}
}
Get Workspace
Retrieves details of a specific workspace by name.
Authentication
| Header | Value |
|---|---|
| X-API-KEY | <apiKey> |
Path Parameters
| Parameter | Type | Description |
|---|---|---|
| projectNamerequired | string | Name of the project |
| workspaceNamerequired | string | Name of the workspace |
curl --location \ 'https://api.<your-domain>.ai/apis/paas.envmgmt.io/v1/projects/vm-project/workspaces/dev1' \ --header 'x-api-key: <YOUR_API_KEY>'
{
"apiVersion": "paas.envmgmt.io/v1",
"kind": "Workspace",
"metadata": {
"name": "dev",
"project": "vm-project",
"createdAt": "2025-10-13T22:53:43.122049Z"
}
}
Delete Workspace
Deletes a specified workspace from a project.
Authentication
| Header | Value |
|---|---|
| X-API-KEY | <apiKey> |
Path Parameters
| Parameter | Type | Description |
|---|---|---|
| projectNamerequired | string | Name of the project |
| workspaceNamerequired | string | Name of the workspace to delete |
curl --location --request DELETE \ 'https://portal.<your-domain>.ai/apis/paas.envmgmt.io/v1/projects/vm-project/workspaces/dev1' \ --header 'x-api-key: <YOUR_API_KEY>'
null
Baremetal Instances
Create Baremetal Instance
Creates a new Baremetal compute instance under a specified project and workspace.
Base URL
Authentication
| Header | Value |
|---|---|
| x-api-key | <api-key> |
| Content-Type | application/json |
Path Parameters
| Name | Required | Description |
|---|---|---|
| project | required | Project name (e.g., defaultproject) |
| workspace | required | Workspace name (e.g., dev1) |
Query Parameters
| Name | Required | Description |
|---|---|---|
| fail-on-exists | optional | If true, the request fails when a compute instance with the same name already exists |
spec Fields
| Name | Type | Required | Description |
|---|---|---|---|
| computeType | string | required | baremetal |
| computeProfile | string | required | bmaas-l40s (L40S) or bmaas-h100 (H100) |
Key Configuration Options (variables)
| Name | Description | Example |
|---|---|---|
| assign_public_ip | Assign a public IP | true |
| node_os_image | Operating system image | default-image (Ubuntu 22.04) |
| Contract Term | Billing duration in months | 1, 6, 12, 24 |
| Security Policies | Firewall rules as JSON | [{"source_cidr":"any","action":"allow","application":"ssh","port":22,"protocol":"tcp"}] |
| hss_storage | Attach high-speed storage | Optional |
| object_storage | Attach object storage | Optional |
| Infiniband Configuration | Enable InfiniBand interconnect | true |
| NVAIE License | Enable NVIDIA AI Enterprise license | false |
Common Errors
| Status Code | Description |
|---|---|
| 400 | Invalid request or missing fields |
| 401 | Unauthorized or invalid token |
| 409 | Compute instance already exists |
| 500 | Internal server error |
{
"apiVersion": "paas.envmgmt.io/v1",
"kind": "ComputeInstance",
"metadata": { "name": "create-bm-api", "project": "system-catalog", "workspace": "dev1" },
"spec": {
"computeType": "baremetal",
"computeProfile": { "name": "bmaas-h100", "systemCatalog": true },
"variables": [
{ "name": "assign_public_ip", "valueType": "text", "value": "false" },
{ "name": "node_os_image", "valueType": "text", "value": "default-image" },
{ "name": "Contract Term", "valueType": "text", "value": "1" },
{ "name": "NVAIE License", "valueType": "text", "value": "false" },
{ "name": "hss_storage", "valueType": "text", "value": "hss-storage-1" },
{ "name": "object_storage", "valueType": "text", "value": "object-storage-1" },
{ "name": "Security Policies", "valueType": "json", "value": "[{\"source_cidr\":\"any\",\"action\":\"allow\",\"application\":\"ssh\",\"port\":22,\"protocol\":\"tcp\"}]" },
{ "name": "Infiniband Configuration", "valueType": "text", "value": "true" }
]
}
}
curl -X POST \ 'https://portal.<your-domain>.ai/apis/paas.envmgmt.io/v1/projects/defaultproject/workspaces/dev1/computeinstances?fail-on-exists=true' \ -H 'x-api-key: <api-key>' \ -H 'Content-Type: application/json' \ -d '<request-body>'
{
"status": "Success",
"message": "Compute instance created successfully",
"name": "baremetal-l40s"
}
Update Baremetal Instance
Updates an existing Baremetal compute instance. Uses the same endpoint as Create — the existing instance is identified by metadata.name.
Base URL
Authentication
| Header | Value |
|---|---|
| x-api-key | <api-key> |
| Content-Type | application/json |
Path Parameters
| Name | Required | Description |
|---|---|---|
| project | required | Project name |
| workspace | required | Workspace name |
Query Parameters
| Name | Required | Description |
|---|---|---|
| fail-on-exists | optional | If true, fails when instance with same name already exists |
{
"apiVersion": "paas.envmgmt.io/v1",
"kind": "ComputeInstance",
"metadata": { "name": "create-bm-api", "project": "techproject", "workspace": "techproject" },
"spec": {
"computeType": "baremetal",
"computeProfile": { "name": "bmaas-h100", "systemCatalog": true },
"variables": [
{ "name": "assign_public_ip", "valueType": "text", "value": "true" },
{ "name": "node_os_image", "valueType": "text", "value": "default-image" },
{ "name": "Contract Term", "valueType": "text", "value": "1" },
{ "name": "NVAIE License", "valueType": "text", "value": "true" },
{ "name": "Infiniband Configuration", "valueType": "text", "value": "true" }
]
}
}
Deploy (Publish) Baremetal Instance
Activates and provisions a Baremetal instance that has been created.
Base URL
Authentication
| Header | Value |
|---|---|
| x-api-key | <api-key> |
Path Parameters
| Name | Required | Description |
|---|---|---|
| project | required | Project name |
| workspace | required | Workspace name |
| instanceName | required | Name of the bare metal instance |
curl -X POST \ 'https://portal.<your-domain>.ai/apis/paas.envmgmt.io/v1/projects/<project>/workspaces/<workspace>/computeinstances/<instanceName>/publish' \ -H 'x-api-key: <api-key>'
// Deployment initiated successfully
Get Baremetal Instance
Retrieves details of a specific Baremetal compute instance.
Base URL
Authentication
| Header | Value |
|---|---|
| x-api-key | <api-key> |
Path Parameters
| Name | Required | Description |
|---|---|---|
| project | required | Project name |
| workspace | required | Workspace name |
| instanceName | required | Name of the bare metal instance |
curl -X GET \ 'https://portal.<your-domain>.ai/apis/paas.envmgmt.io/v1/projects/<project>/workspaces/<workspace>/computeinstances/<instanceName>?computeType=baremetal' \ -H 'x-api-key: <api-key>'
{
"apiVersion": "paas.envmgmt.io/v1",
"kind": "ComputeInstance",
"metadata": {
"name": "h100-demo-10",
"id": "019c6665-205e-784f-b9bc-fc6c5f8aff7c",
"project": "defaultproject",
"workspace": "default",
"createdAt": "2026-02-16T12:20:29.406538Z"
},
"spec": {
"computeProfile": { "name": "bmaas-h100", "systemCatalog": true },
"computeType": "baremetal"
},
"status": {
"status": "success",
"output": {
"ip_address": { "value": "10.75.8.20" },
"public_ip_address": { "value": "103.207.150.128" },
"node_login_username": { "value": "ubuntu" },
"node_login_password": { "value": "********" }
}
}
}
List All Baremetal Instances
Retrieves a list of all Baremetal compute instances within a project.
Base URL
Authentication
| Header | Value |
|---|---|
| x-api-key | <api-key> |
Path Parameters
| Name | Required | Description |
|---|---|---|
| project | required | Project name |
| workspace | required | Workspace name |
Query Parameters
| Parameter | Type | Description |
|---|---|---|
| limitoptional | integer | Max results to return |
| offsetoptional | integer | Pagination offset |
| orderoptional | string | ASC or DESC |
| orderByoptional | string | createdAt |
| computeTyperequired | string | baremetal |
curl -X GET \ 'https://portal.<your-domain>.ai/apis/paas.envmgmt.io/v1/projects/defaultproject/computeinstances?limit=10&offset=0&order=DESC&orderBy=createdAt&computeType=baremetal' \ -H 'x-api-key: <api-key>'
{
"apiVersion": "paas.envmgmt.io/v1",
"kind": "ComputeInstanceList",
"metadata": { "count": 2, "limit": 10 },
"items": [
{
"kind": "ComputeInstance",
"metadata": { "name": "h100-demo-10", "project": "defaultproject", "workspace": "default" },
"status": { "status": "success" }
}
]
}
Power Actions on Baremetal Instance
Use this API to perform a power action on an existing Bare Metal compute instance.
Endpoints
| Action | Endpoint |
|---|---|
| Power ON | /computeinstances/{instanceName}/action/start |
| Power OFF | /computeinstances/{instanceName}/action/stop |
| Power Reset | /computeinstances/{instanceName}/action/Power%20reset |
| Power Cycle | /computeinstances/{instanceName}/action/Power%20cycle |
The action name must be URL-encoded: Power%20reset / start / stop / Power%20cycle
Base URL
Authentication
| Header | Value |
|---|---|
| x-api-key | <api-key> |
| Content-Type | application/json |
Path Parameters
| Name | Required | Description |
|---|---|---|
| project | required | Project name |
| workspace | required | Workspace name |
| instanceName | required | Name of the bare metal instance |
Request Body
No request body required. Send an empty JSON object: {}
Common Errors
| Status Code | Description |
|---|---|
| 400 | Invalid request or unsupported action |
| 401 | Unauthorized |
| 404 | Compute instance not found |
| 409 | Operation not allowed in current state |
| 500 | Internal server error |
curl -X POST \ 'https://portal.<your-domain>.ai/apis/paas.envmgmt.io/v1/projects/defaultproject/workspaces/dev1/computeinstances/baremetal-l40s/action/Power%20reset' \ -H 'x-api-key: <api-key>' \ -H 'Content-Type: application/json' \ -d '{}'
{
"status": "Success",
"message": "Power reset initiated successfully"
}
Delete Baremetal Instance
Deletes an existing Baremetal compute instance and releases associated resources.
Base URL
Authentication
| Header | Value |
|---|---|
| x-api-key | <api-key> |
Path Parameters
| Name | Required | Description |
|---|---|---|
| project | required | Project name |
| workspace | required | Workspace name |
| instanceName | required | Name of the bare metal instance |
Common Errors
| Status Code | Description |
|---|---|
| 401 | Unauthorized |
| 404 | Compute instance not found |
| 500 | Internal server error |
202 Accepted status indicates the deletion process has started. Deleting before the contract term ends may still incur charges.curl -X DELETE \ 'https://portal.<your-domain>.ai/apis/paas.envmgmt.io/v1/projects/defaultproject/workspaces/dev1/computeinstances/baremetal-l40s' \ -H 'x-api-key: <api-key>'
{
"status": "Success",
"message": "Compute instance deletion initiated"
}
GPU Kubernetes Clusters
Create GPU Kubernetes Cluster Instance
Creates a new GPU Kubernetes cluster instance under a specified project and workspace.
Base URL
Authentication
| Header | Value |
|---|---|
| x-api-key | <api-key> |
| Content-Type | application/json |
Path Parameters
| Name | Required | Description |
|---|---|---|
| project | required | Project name |
| workspace | required | Workspace name |
Key Configuration Options (variables)
| Name | Description | Example |
|---|---|---|
| Cluster Kubernetes Version | K8s version | v1.34.1 |
| H100 Worker Nodes | Number of H100 worker nodes | 1 |
| L40 Worker Nodes | Number of L40 worker nodes | 1 |
| Master Node SKU | Master node SKU | vm-8x-cpu |
| Master Nodes | Number of master nodes | 3 |
| OS | Operating system | Ubuntu 22.04 |
| Contract Term | Billing duration in months | 1, 6, 12, 24 |
| Enable Infiniband Configuration | Enable InfiniBand interconnect | true |
| Enable NVAIE License | Enable NVIDIA AI Enterprise license | true |
{
"apiVersion": "paas.envmgmt.io/v1",
"kind": "ComputeInstance",
"metadata": { "name": "rafay-test", "workspace": "dev1", "project": "system-catalog" },
"spec": {
"computeType": "k8s",
"computeProfile": { "name": "k8s-v4-1", "systemCatalog": true },
"variables": [
{ "name": "Cluster Kubernetes Version", "value": "v1.34.1" },
{ "name": "Master Node SKU", "value": "vm-8x-cpu" },
{ "name": "Master Nodes", "value": "1" },
{ "name": "H100 Worker Nodes", "value": "0" },
{ "name": "L40 Worker Nodes", "value": "1" },
{ "name": "OS", "value": "Ubuntu 22.04" },
{ "name": "Enable Infiniband Configuration", "value": "true" },
{ "name": "Enable NVAIE License", "value": "true" }
]
}
}
{
"status": "Success",
"message": "Compute instance created successfully",
"name": "rafay-test"
}
Deploy (Publish) Kubernetes Cluster Instance
Activates and provisions a Kubernetes cluster instance that has been created.
Base URL
Authentication
| Header | Value |
|---|---|
| x-api-key | <api-key> |
Path Parameters
| Name | Required | Description |
|---|---|---|
| project | required | Project name |
| workspace | required | Workspace name |
| instanceName | required | Name of the Kubernetes cluster instance |
curl -X POST \ 'https://portal.<your-domain>.ai/apis/paas.envmgmt.io/v1/projects/<project>/workspaces/<workspace>/computeinstances/<instanceName>/publish' \ -H 'x-api-key: <api-key>'
// Deployment initiated successfully