Documentation

Documentation

Rental API

Rent GPUs programmatically over HTTP — browse the marketplace, start a rental, get connection details, and stop it, all from code.

The Rental API lets you rent GPU servers over HTTP — the same thing the Rent a GPU page does in the browser, but from code. Browse what's available with live prices, start a rental, poll it for its connection URL, and stop it when you're done. You pay per minute while a rental runs.

It uses the same prlc_ key as the Inference API — but a key can only rent once you grant it the rental scope, because rentals spend credits. See Authentication & scopes.

Base URL

https://paraloncloud.com/api/v1

How it works

Renting is asynchronous — starting a GPU isn't instant (the container has to come up and its tunnel has to connect), so the flow is start → poll → use → stop:

  1. Browse GPUsGET /gpus lists nodes you can rent right now, with price, GPU model, VRAM and compute capability.
  2. CreatePOST /rentals returns a rental_id immediately with status: "pending". It does not return a connection URL yet.
  3. PollGET /rentals/{id} until connection_pending is false; the response then carries the connection details (Jupyter URL + token).
  4. StopDELETE /rentals/{id} stops the GPU and stops billing.

Quick start

KEY="prlc_your_key_here"   # must have the 'rental' scope

# 1. Find a GPU (grab a node_id from the response)
curl https://paraloncloud.com/api/v1/gpus -H "Authorization: Bearer $KEY"

# 2. Start a rental (async — returns a rental_id, status "pending")
RID=$(curl -s -X POST https://paraloncloud.com/api/v1/rentals \
  -H "Authorization: Bearer $KEY" \
  -H "Idempotency-Key: my-run-001" \
  -H "Content-Type: application/json" \
  -d '{"node_id": "<node_id from /gpus>", "type": "jupyter"}' | jq -r .rental_id)

# 3. Poll until it's running, then read the connection details
until [ "$(curl -s https://paraloncloud.com/api/v1/rentals/$RID \
  -H "Authorization: Bearer $KEY" | jq -r .status)" = "running" ]; do sleep 3; done

curl -s https://paraloncloud.com/api/v1/rentals/$RID -H "Authorization: Bearer $KEY" | jq .connection

# 4. Stop it when you're done (stops billing)
curl -X DELETE https://paraloncloud.com/api/v1/rentals/$RID -H "Authorization: Bearer $KEY"

What's next

  • Authentication & scopes — enable the rental scope and set per-key limits.
  • Browse GPUs — the marketplace response and how to read it.
  • Create & manage rentals — open-ended vs time-limited rentals, connection details, listing, and destroying.
  • MCP server — rent GPUs from inside Claude Code, Claude Desktop, or Cursor, in natural language.

Prefer clicking? The Console has a Rent tab with the same flow, a live view of your running rentals, and one-click destroy.