Open a shell in a service
Returns a one-minute ticket for a WebSocket running a new shell (bash, else sh) inside a running container of the service. For databases, databaseClient opens the engine's client already logged in.
Needs terminals.shell on the service (a grant on its project covers it). Not available to MCP clients or the assistant.
seylo_session<token>application/json- body
serviceId*stringPanel-issued id.
^[a-z0-9]{16}$nodeId?stringPanel-issued id.
^[a-z0-9]{16}$containerId?stringlength <= 128command?array<>items <= 20user?stringlength <= 64databaseClient?booleanfalsecolumns?integer1 <= value <= 1000120rows?integer1 <= value <= 100032Success.
application/json- response
url*stringWebSocket path on the panel with the ticket as ?t=; open it within a minute.
ticket*stringexpiresAt*stringdate-timetarget*idleTimeoutSeconds*integer0 <= valuecurl -X POST 'https://example.com/api/v1/terminals.shell' \ -H 'Content-Type: application/json' \ -d '{ "serviceId": "string"}'{ "url": "string", "ticket": "string", "expiresAt": "2019-08-24T14:15:22Z", "target": { "nodeId": "string", "nodeName": "string", "containerId": "string", "generation": 0 }, "idleTimeoutSeconds": 0}Open the console of a service POST
Returns a one-minute ticket for a WebSocket attached to the service's main process: recent output first, then live output, and what you type goes to its stdin. Needs `terminals.console` on the service (a grant on its project covers it). Not available to MCP clients or the assistant.
Create a cron job POST
Adds a scheduled command to a service. It runs in a one-off container from the service's image, with its env and volumes. Needs `services.cron` on the service (a grant on its project covers it). Available to MCP clients and the assistant.