UpdateApp
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
1Define the timeout, in ms
Request Body
application/json
Resources is the compute envelope for a sandbox or job. Maps onto k8s requests==limits and the Docker resource knobs.
EgressRef selects a policy: either inline, or by id of a named policy (EgressPolicyService). Empty => MODE_NONE.
which of the above to apply
AppAccess is who may call an App's hostname.
A pod IP was implicitly private; a hostname is not. UNSPECIFIED is treated as KEY so that a field nobody set fails closed — on a platform running untrusted code the two mistakes do not cost the same.
"APP_ACCESS_UNSPECIFIED" | "APP_ACCESS_KEY" | "APP_ACCESS_PUBLIC"Response Body
application/json
application/json
curl -X POST "https://containers.xeonr.io/containers.api.v1.AppService/UpdateApp" \ -H "Connect-Protocol-Version: 1" \ -H "Content-Type: application/json" \ -d '{}'{
"app": {
"appId": "string",
"namespace": "string",
"label": "string",
"scaling": {
"minInstances": 0,
"maxInstances": 0,
"concurrency": 0,
"idleTimeoutSec": 0,
"activationTimeoutSec": 0
},
"resources": {
"cpuMillis": 0,
"memoryMb": 0,
"ephemeralMb": 0,
"pids": 0
},
"env": {
"property1": "string",
"property2": "string"
},
"egress": {
"egressPolicyId": "string"
},
"state": "APP_STATE_UNSPECIFIED",
"createdAtUnix": 0,
"updatedAtUnix": 0,
"hostname": "string",
"activeVersionId": "string",
"autoStart": true,
"access": "APP_ACCESS_UNSPECIFIED",
"key": "string"
}
}{
"code": "not_found",
"message": "string",
"details": [
{
"type": "string",
"value": "string",
"debug": {}
}
]
}TailAppLogs streams an App's output: retained history first, then live. POST
An App's replicas are interchangeable and individually disposable, so its logs cannot live only in its pods — the instance that emitted the line you need is often the one that died. The control plane therefore collects and retains them, and this reads that record, merged across replicas and tagged with which one produced each chunk.
WatchApp POST
Next Page