Keep Sandbox Alive
Restarts the idle-suspend clock without running anything in the sandbox, and returns when the sandbox would next be idle-suspended (0 when idle_suspend_sec is 0). Deliberately a read-level operation. FailedPrecondition when the sandbox is not RUNNING.
Access: namespace VIEWER or above (read)
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 <= 64Response Body
application/json
application/json
curl -X POST "https://containers.xeonr.io/containers.api.v1.SandboxService/KeepSandboxAlive" \ -H "Connect-Protocol-Version: 1" \ -H "Connect-Timeout-Ms: 1000" \ -H "Content-Type: application/json" \ -d '{}'{
"suspendsAtUnix": "string"
}{
"code": "not_found",
"message": "string",
"details": [
{
"type": "string",
"value": "string",
"debug": {}
}
]
}Grant Egress POST
Adds one additive, independently revocable egress grant on top of the sandbox's base policy; the egress in force is the base unioned with every active grant. Takes effect on the proxy through the live policy feed without a restart. ttl_sec 0 means no expiry; otherwise at most 86400. The reason is recorded in the audit log. Rejects a missing policy (InvalidArgument) and a sandbox created without egress configured (FailedPrecondition); Unimplemented when egress signing is not configured. Returns the new grant id. **Access:** namespace OPERATOR or above (write)
List Sandboxes POST
Lists sandboxes in a namespace, newest first, optionally filtered by state. namespace is required unless the caller is a platform admin (empty then lists every namespace). page_size defaults to 100 and is clamped to 1000. **Access:** namespace VIEWER or above (read)