Skip to content

Patch runtime resources or policy

PATCH
/v1/runtimes/{runtime_id}
curl --request PATCH \
--url http://127.0.0.1:8080/v1/runtimes/example \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "display_name": "example", "environment_variables": { "additionalProperty": "example" }, "ingress_specs": [ { "protocol": "http", "runtime_port": 1 } ], "egress_policy": { "mode": "denylist", "allowed_hosts": [ "example" ], "denied_hosts": [ "example" ] }, "idle_policy": { "mode": "disabled" }, "llm_tool_io_capture_enabled": true, "llm_token_saving_policy": { "json_array_enabled": true, "log_enabled": true, "search_results_enabled": true, "git_diff_enabled": true }, "resources": { "limits": { "memory_mib": 1 }, "requests": { "memory_mib": 1 } } }'
runtime_id
required

Runtime UUID or display name.

string

Runtime UUID or display name.

Media typeapplication/json

Runtime patch request.

object
display_name

New user-facing runtime name. The runtime UUID and data-plane identity remain unchanged.

string
>= 1 characters <= 63 characters
environment_variables

Complete replacement of visible non-secret environment variables. An empty object removes every variable; omit to leave unchanged. Names must match [A-Za-z_][A-Za-z0-9_]* and be at most 128 UTF-8 bytes; Runta-managed, provider, credential, and runtime CA names are reserved. Values must be strings of at most 8192 UTF-8 bytes without NUL, CR, or LF, with at most 65536 value bytes across the map.

object
<= 64 properties
key
additional properties
string
ingress_specs

Complete replacement ingress set. Omit to leave unchanged; use an empty array to remove every published port.

Array<object>
<= 1 items

Public ingress forwarding rule.

object
protocol
required

Application-layer protocol.

string
Allowed values: http https
runtime_port
required

Port inside the runtime VM.

integer format: uint16
<= 65535
egress_policy
object
mode
required

Egress gateway mode.

string
Allowed values: denylist allowlist
allowed_hosts
required

Host names or wildcard patterns allowed in allowlist mode.

Array<string>
<= 128 items
denied_hosts
required

Host names or wildcard patterns denied in denylist mode.

Array<string>
<= 128 items
idle_policy

Idle policy. Omit to leave unchanged.

object
One of:

Disable automatic idle suspension and wakeup.

object
mode
required
string
Allowed values: disabled
llm_tool_io_capture_enabled

Whether official LLM HTTP API tool input/output capture is enabled. Omit to leave unchanged.

boolean
llm_token_saving_policy

Per-method LLM tool-output compression patch. Omit to leave unchanged.

object
json_array_enabled
boolean
log_enabled
boolean
search_results_enabled
boolean
git_diff_enabled
boolean
resources
object
limits

Resource limits.

object
memory_mib
required

Maximum memory in MiB.

integer format: uint64
>= 1
requests

Resource requests.

object
memory_mib

Requested baseline memory in MiB.

integer format: uint64
>= 1

Response envelope.

Media typeapplication/json

Response envelope.

object
data
required

Runtime response object.

object
display_name
required

User-chosen display name.

string
environment_variables
required

Non-secret environment variables stored visibly on this runtime. Secret-derived variables are excluded. Names and values use the byte limits documented by CreateRuntimeRequest.environment_variables.

object
<= 64 properties
key
additional properties
string
egress_policy
required

Egress policy.

object
mode
required

Egress gateway mode.

string
Allowed values: denylist allowlist
allowed_hosts
required

Host names or wildcard patterns allowed in allowlist mode.

Array<string>
<= 128 items
denied_hosts
required

Host names or wildcard patterns denied in denylist mode.

Array<string>
<= 128 items
llm_tool_io_capture_enabled
required

Whether official LLM HTTP API tool input/output capture is enabled.

boolean
llm_token_saving_policy
required

Canonical LLM tool-output compression policy.

object
json_array_enabled
required
boolean
log_enabled
required
boolean
search_results_enabled
required
boolean
git_diff_enabled
required
boolean
idle_policy
required

Runtime idle suspension and automatic wakeup policy.

object
One of:

Disable automatic idle suspension and wakeup.

object
mode
required
string
Allowed values: disabled
id
required

Stable runtime UUID.

string
created_at
required

RFC3339 timestamp when the control-plane runtime row was created.

string
updated_at
required

RFC3339 timestamp of the last control-plane runtime row mutation.

string
ingress_specs
required

Active ingress specs.

Array<object>

Public ingress forwarding rule.

object
protocol
required

Application-layer protocol.

string
Allowed values: http https
runtime_port
required

Port inside the runtime VM.

integer format: uint16
<= 65535
resources
required

Runtime resource state.

object
current
required

Current resource allocation.

object
memory_mib
required

Current memory allocation in MiB.

integer format: uint64
>= 1
limits
required

Resource limits.

object
memory_mib
required

Maximum memory in MiB.

integer format: uint64
>= 1
requests
required

Resource requests.

object
memory_mib
required

Requested baseline memory in MiB.

integer format: uint64
>= 1
vcpus
required

Requested virtual CPUs.

integer format: uint32
>= 1 <= 2147483647
agent

Runtime-scoped agent setup metadata.

object
key
required

Agent manifest key.

string
status
required

Agent setup status.

string
Allowed values: queued running succeeded failed
log_path
required

Runtime-local setup log path.

string
error
required

Last setup error, if any.

string
nullable
updated_at
required

RFC3339 timestamp of the last setup state change.

string
nullable
status
required

Runtime status.

string
Allowed values: running paused shutdown creating deleting error crashed suspended
ssh_enabled
required

Whether this runtime supports SSH access.

boolean
Example
{
"data": {
"egress_policy": {
"mode": "denylist"
},
"idle_policy": {
"mode": "disabled"
},
"ingress_specs": [
{
"protocol": "http"
}
],
"agent": {
"status": "queued"
},
"status": "running"
}
}

Missing, malformed, or rejected bearer token

Media typeapplication/json
object
error
required
object
code
required
string
Allowed values: already_exists command_failed deadline_exceeded failed_precondition internal invalid_argument not_found permission_denied rate_limited unauthenticated unavailable unimplemented
message
required
string
Example
{
"error": {
"code": "already_exists"
}
}

The bearer token is not allowed to perform this action

Media typeapplication/json
object
error
required
object
code
required
string
Allowed values: already_exists command_failed deadline_exceeded failed_precondition internal invalid_argument not_found permission_denied rate_limited unauthenticated unavailable unimplemented
message
required
string
Example
{
"error": {
"code": "already_exists"
}
}

The requested resource was not found

Media typeapplication/json
object
error
required
object
code
required
string
Allowed values: already_exists command_failed deadline_exceeded failed_precondition internal invalid_argument not_found permission_denied rate_limited unauthenticated unavailable unimplemented
message
required
string
Example
{
"error": {
"code": "already_exists"
}
}

The request conflicts with current resource state

Media typeapplication/json
object
error
required
object
code
required
string
Allowed values: already_exists command_failed deadline_exceeded failed_precondition internal invalid_argument not_found permission_denied rate_limited unauthenticated unavailable unimplemented
message
required
string
Example
{
"error": {
"code": "already_exists"
}
}

Validation or application error

Media typeapplication/json
object
error
required
object
code
required
string
Allowed values: already_exists command_failed deadline_exceeded failed_precondition internal invalid_argument not_found permission_denied rate_limited unauthenticated unavailable unimplemented
message
required
string
Example
{
"error": {
"code": "already_exists"
}
}

Rate limit exceeded

Media typeapplication/json
object
error
required
object
code
required
string
Allowed values: already_exists command_failed deadline_exceeded failed_precondition internal invalid_argument not_found permission_denied rate_limited unauthenticated unavailable unimplemented
message
required
string
Example
{
"error": {
"code": "already_exists"
}
}

Upstream service is unavailable

Media typeapplication/json
object
error
required
object
code
required
string
Allowed values: already_exists command_failed deadline_exceeded failed_precondition internal invalid_argument not_found permission_denied rate_limited unauthenticated unavailable unimplemented
message
required
string
Example
{
"error": {
"code": "already_exists"
}
}

Upstream request timed out

Media typeapplication/json
object
error
required
object
code
required
string
Allowed values: already_exists command_failed deadline_exceeded failed_precondition internal invalid_argument not_found permission_denied rate_limited unauthenticated unavailable unimplemented
message
required
string
Example
{
"error": {
"code": "already_exists"
}
}

Error response

Media typeapplication/json
object
error
required
object
code
required
string
Allowed values: already_exists command_failed deadline_exceeded failed_precondition internal invalid_argument not_found permission_denied rate_limited unauthenticated unavailable unimplemented
message
required
string
Example
{
"error": {
"code": "already_exists"
}
}