Close Console Session
Ends a session: signals its process group with TERM and escalates to KILL after a grace window (force kills at once), then drops its index entry. Closing a LOST session just removes the record.
Access: namespace OPERATOR or above (write)
Authorization
BearerAuth A namespace-scoped API key (cpk_…) for machines, or a Xeonr Auth OIDC
token for humans. The key's namespace and role are pinned server-side.
In: header
Header Parameters
Define the version of the Connect protocol
Define the timeout, in ms
Request Body
application/json
1 <= length <= 64Signal the process group and wait briefly for it to exit; the api escalates to KILL if it does not. Interactive shells ignore SIGTERM, so a close that does not escalate is a close that silently does nothing. validate:skip a bool has no bounds (skips the grace window entirely)
Response Body
application/json
application/json
curl -X POST "https://containers.xeonr.io/containers.api.v1.ConsoleService/CloseConsoleSession" \ -H "Connect-Protocol-Version: 1" \ -H "Connect-Timeout-Ms: 1000" \ -H "Content-Type: application/json" \ -d '{}'{
"session": {
"sessionId": "string",
"sandboxId": "string",
"namespace": "string",
"name": "string",
"argv": [
"string"
],
"env": {
"property1": "string",
"property2": "string"
},
"cwd": "string",
"cols": 0,
"rows": 0,
"state": "CONSOLE_SESSION_STATE_UNSPECIFIED",
"exitCode": 0,
"createdAtUnix": "string",
"lastActivityUnix": "string",
"headOffset": "string",
"tailOffset": "string",
"attached": 0,
"idleTtlSec": 0,
"createdBy": "string"
}
}{
"code": "not_found",
"message": "string",
"details": [
{
"type": "string",
"value": "string",
"debug": {}
}
]
}Attach Console POST
Bidirectional interactive attach. The first client message must be the AttachSpec (InvalidArgument otherwise); later messages are stdin bytes or resize events. The server streams output from from_offset (replay with 0 starts at the oldest retained byte; otherwise 0 starts at the live tail), marks truncated when bytes were evicted, and ends with an exit event when the process exits. Hanging up leaves the session running. Browsers reach this through the /ws/console bridge. **Access:** namespace OPERATOR or above (write)
Create Console Session POST
Opens a persistent terminal in a RUNNING sandbox (FailedPrecondition otherwise), starting the in-pod console daemon on first use. Empty argv runs the image's interactive shell; cols/rows default to 80x24. With attach_if_exists and a name, returns the running session of that name instead of starting another (reattached=true). ResourceExhausted when the sandbox already has its maximum of running sessions (8 by default); InvalidArgument when the argv or shell is not in the image. Unimplemented without cluster access. **Access:** namespace OPERATOR or above (write)