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

Workflows

The signature orl commands for deploying and connecting to GPU VMs, plus how to script orl in CI.

Every REST endpoint has an orl command (you will see it on each API Reference page). These are the ones you reach for most.

Deploy a VM

orl deploy <name> picks a GPU shape from live availability and creates a VM. It is interactive in a terminal and fully scriptable with flags.

# Guided: choose the GPU from what has capacity
orl deploy trainer

# Scripted: pick the shape yourself
orl deploy trainer --gpu-model h100 --gpu-count 2 --disk-gb 200

# Wait for it to boot, then open an SSH session
orl deploy trainer --gpu-model h100 --gpu-count 1 --connect

# Print the request without creating anything
orl deploy trainer --gpu-model h100 --gpu-count 1 --dry-run
FlagWhat it does
--gpu-model, --gpu-countGPU model id and count (omit --gpu-model in a terminal to choose)
--disk-gb, --imageDisk size and container image
--ssh-keyAttach an org SSH key by id (repeatable)
--waitWait until the VM is ready, then print it
--connectWait, then open an SSH session
--dry-runPrint the request body and exit
--yesSkip the confirmation prompt

Connect and manage

orl vms list                 # your VMs
orl vms ssh <vm-id>          # SSH over the data plane
orl vms ssh <vm-id> --print  # print the ssh command instead of running it
orl vms stop <vm-id>         # stop the meter, keep the disk
orl vms terminate <vm-id>    # destroy it (asks first; --force to skip)

Watch spend

orl balance                  # balance and current-month spend
orl catalog pricing get      # live GPU and CPU rates
orl usage current get        # current-month usage breakdown

Scripting

orl is built for pipelines. Every command takes global flags:

  • --json prints the raw API response so you can pipe it to jq.
  • --quiet suppresses progress and advisory notes.
  • --no-color disables ANSI color (also honored via NO_COLOR).
# The id of your most recent VM
orl vms list --json | jq -r '.items[0].id'

Exit codes

orl returns stable exit codes so scripts can branch on the failure kind. Run orl exit-codes for the full list.

CodeMeaning
0success
1unexpected or network error
2usage error, or a 400 from the API
3authentication failed (401): run orl auth login
4forbidden (403): the key lacks a scope, or the org is wrong
5not found (404)
6conflict (409): the resource state blocks the action
7server error (5xx)

Discover any command's flags with orl <command> --help, for example orl deploy --help or orl vms --help.

On this page