Skip to content
OpenRelay is in early access, and the /v1 API is stable. New capabilities ship in the changelog.
Pods

Create a pod

Compute-fabric pod (BYO container image + SSH keys): a hardened GPU container on a whole native-driver GPU. Admission claims a free device-request GPU unit (see listPodCapacity for what is claimable), snapshots the on-demand rate immutably onto the pod, and drives the guest workflow.

Command line

The orl CLI wraps this endpoint:

orl pods create --image <image>
POST
/v1/pods
AuthorizationBearer <token>

OpenRelay API key. Send it as Authorization: Bearer or_… (legacy vl_… keys still work).

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Request to create a compute-fabric pod: a RunPod-style bring-your-own container image + SSH keys guest. A focused subset of CreateVmRequest (no qcow2 template / kernel modules / privileged mode).

Response Body

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/v1/pods" \  -H "Content-Type: application/json" \  -d '{    "name": "cuda-devbox",    "gpuModelId": "rtx-4090",    "computeClass": "on_demand",    "image": "ghcr.io/acme/cuda-devbox:latest",    "sshKeys": [      "ssh-ed25519 AAAA... user@host"    ],    "httpPort": 8000,    "envVars": {      "HF_TOKEN": "hf_xxxxxxxx"    }  }'
{  "id": "string",  "organizationId": "string",  "name": "string",  "status": "string",  "statusReason": "string",  "gpuModelId": "string",  "gpuCount": 0,  "endpointUrl": "string",  "volumeGb": 0,  "public": true,  "createdAt": "string",  "provisioningStage": "string",  "resourceSize": "string",  "tier": "string",  "diskSizeGb": 0,  "gpuModelName": "string",  "pricePerHourCents": 0,  "serviceType": "string",  "managedBy": "string",  "capabilityTier": "string",  "computeClass": "string",  "imageUrl": "string"}