Descanto Docs
CantoAPI Reference

Streaming

Issue a stream ticket for an awake desktop's display/control stream.

Create a stream ticket

POST /v1/desktops/{id}/stream

ParamInRequiredDescription
idpathyesDesktop id

Request body (StreamTicketBody):

{ "claim": "view", "takeover": false }
FieldTypeRequiredDescription
claimstringyesview or control
takeoverbooleannoForcibly take over an existing control claim
curl -sS -X POST "$BASE/desktops/$DESKTOP_ID/stream" \
  -H "$AUTH" -H 'Content-Type: application/json' \
  -d '{"claim": "view"}'

Response (StreamTicketResponse):

{ "url": "tcp://host:port/?ticket=...", "expires_unix": 1755600000 }

url is a dial-able tcp://host:port/?ticket=... URL for the desktop's display/control stream, already rewritten to the desktop's host's externally reachable address.

No embeddable web viewer yet

This route returns a raw, dial-able ticket URL, not a browser-embeddable player. Point a stream-capable client at it directly; a hosted viewer/embed integration is coming in a later milestone.

StatusMeaning
200Stream ticket issued
400Malformed id/body or invalid claim
401Missing/invalid credentials
404Desktop not found or belongs to another org
409Desktop is not awake, or its control claim is already held

On this page