Skip to main content
PUT
Update machine pool

Authorizations

Authorization
string
header
required

An opaque Omnara personal or organization bearer token.

Path Parameters

orgID
string
required

Organization ID (org_...).

Pattern: ^org_[a-z2-7]{26}$
poolID
string
required

Machine pool ID (mpo_...).

Pattern: ^mpo_[a-z2-7]{26}$

Body

application/json
name
string

Human-readable name. Spaces and punctuation are allowed; leading or trailing whitespace and invisible or control characters are not.

Required string length: 1 - 64
description
string

Optional description of the pool.

default_machine_cpu
integer<int32> | null

Default CPU count for new machines in the pool.

Required range: 1 <= x <= 2147483647
default_machine_memory_mb
integer<int32> | null

Default memory in MB for new machines in the pool.

Required range: 1 <= x <= 2147483647
default_machine_env
object

Default environment for pool machines. A machine's environment, including resolved secret_env values, is applied to the provider machine at provisioning, so the provider_options startup_script and the daemon run with it, and is resolved again for each process at launch.

default_machine_secret_env
object

Default secret environment for pool machines, mapping env names to generic secret references. References are resolved to secret values wherever the machine environment is applied.

default_machine_provider_options
object

Provider-specific options applied to new machines in the pool.

default_cwd
string

Default working directory for processes on machines created from the pool after this change.

provider_config
object

Provider-specific settings for the pool.

provider_auth_secret_id
string

Secret ID (sec_...).

Pattern: ^sec_[a-z2-7]{26}$
runtime_protection_enabled
boolean

Whether Omnara should delete a pool machine when its provider remains running after its daemon becomes inactive.

max_total_machines
integer<int32>

Maximum number of live machines in the pool.

Required range: 0 <= x <= 2147483647
max_total_cpu
integer<int32> | null

Maximum total CPU across the pool's live machines.

Required range: 0 <= x <= 2147483647
max_total_memory_mb
integer<int32> | null

Maximum total memory in MB across the pool's live machines.

Required range: 0 <= x <= 2147483647
min_machine_cpu
integer<int32> | null

Smallest CPU count a single machine in the pool can use.

Required range: 0 <= x <= 2147483647
min_machine_memory_mb
integer<int32> | null

Smallest memory in MB a single machine in the pool can use.

Required range: 0 <= x <= 2147483647
max_machine_cpu
integer<int32> | null

Largest CPU count a single machine in the pool can use.

Required range: 1 <= x <= 2147483647
max_machine_memory_mb
integer<int32> | null

Largest memory in MB a single machine in the pool can use.

Required range: 1 <= x <= 2147483647
delete_after_idle_minutes
integer<int32> | null

Idle minutes before deleting a machine from this pool. Null clears the pool default; omitted leaves it unchanged.

Required range: 5 <= x <= 2147483647
metadata
object

User-supplied metadata stored on a machine, provided directly or copied from the machine pool that provisions it. A restriction of Metadata that leaves room for one reserved pair - Omnara sets observed_platform on the machine to the platform reported by its daemon, so the key is reserved and at most 15 user pairs are accepted.

Response

Machine pool updated.

id
string
required

Machine pool ID (mpo_...).

Pattern: ^mpo_[a-z2-7]{26}$
org_id
string
required
Pattern: ^org_[a-z2-7]{26}$
name
string
required

Human-readable name. Spaces and punctuation are allowed; leading or trailing whitespace and invisible or control characters are not.

Required string length: 1 - 64
management_kind
enum<string>
required

Lifecycle owner. Tenant-managed resources can be changed through tenant APIs. Cluster-managed resources are installed and lifecycle-managed by the control plane; individual APIs may explicitly expose tenant-editable settings.

Available options:
tenant,
cluster
description
string
required
provider
string
required
default_machine_cpu
integer<int32> | null
required
Required range: 1 <= x <= 2147483647
default_machine_memory_mb
integer<int32> | null
required
Required range: 1 <= x <= 2147483647
default_machine_env
object
required

Default environment for pool machines. A machine's environment, including resolved secret_env values, is applied to the provider machine at provisioning, so the provider_options startup_script and the daemon run with it, and is resolved again for each process at launch.

default_machine_secret_env
object
required

Default secret environment for pool machines, mapping env names to generic secret references. References are resolved to secret values wherever the machine environment is applied.

default_machine_provider_options
object
required
default_cwd
string
required
provider_config
object
required
runtime_protection_enabled
boolean
required

Whether Omnara deletes this pool's machines when the provider remains running after the daemon becomes inactive.

max_total_machines
integer<int32>
required
Required range: 0 <= x <= 2147483647
max_total_cpu
integer<int32> | null
required
Required range: 0 <= x <= 2147483647
max_total_memory_mb
integer<int32> | null
required
Required range: 0 <= x <= 2147483647
min_machine_cpu
integer<int32> | null
required
Required range: 0 <= x <= 2147483647
min_machine_memory_mb
integer<int32> | null
required
Required range: 0 <= x <= 2147483647
max_machine_cpu
integer<int32> | null
required
Required range: 1 <= x <= 2147483647
max_machine_memory_mb
integer<int32> | null
required
Required range: 1 <= x <= 2147483647
delete_after_idle_minutes
integer<int32> | null
required

Idle minutes before deleting a machine from this pool, or null when the pool default is unset.

Required range: 5 <= x <= 2147483647
metadata
object
required

Arbitrary key-value metadata. Maximum 16 pairs, keys up to 64 characters, values must be strings of up to 512 characters.

created_at
string<date-time>
required
updated_at
string<date-time>
required
provider_auth_secret_id
string

Secret ID (sec_...).

Pattern: ^sec_[a-z2-7]{26}$
usage
object

Current quota-consuming usage. Populated when the machine pool is returned by the list or get endpoint.