Tenant-managed pools support every request field. Cluster-managed pools only allow changes to default CPU and memory, environment and secret environment variables, provider-supported per-machine CPU and memory limits, and the idle deletion policy. Other cluster-managed changes are rejected with 409 Conflict.
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 secret environment for pool machines, mapping env names to generic secret references. References are resolved to secret values wherever the machine environment is applied.
Deprecated, not enforced: how many machines a pool has no longer blocks new machines. Organization and project quotas over in-use machines (org resource limits max_in_use_pool_machines_per_project and max_in_use_pool_machines_per_org) govern capacity.
Delete a paused machine once it is this many days old, counted from the machine's creation. Null clears it; omitted leaves it unchanged. Requires pause_after_idle_minutes; cannot be combined with archive_after_paused_days.
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 - BMA 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.
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.
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 secret environment for pool machines, mapping env names to generic secret references. References are resolved to secret values wherever the machine environment is applied.
Deprecated, not enforced: how many machines a pool has no longer blocks new machines. Organization and project quotas over in-use machines (org resource limits max_in_use_pool_machines_per_project and max_in_use_pool_machines_per_org) govern capacity.
Current quota-consuming usage. Populated when the machine pool is returned by the list or get endpoint.
Show child attributes
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"BMA Developer Docs","description":"BeeOS Managed Agents (BMA): a managed agent platform with a Claude Managed Agents–compatible API, a native REST API, and the Executor Protocol for bringing your own hands and brains.","colors":{"primary":"#F97316","light":"#FB923C","dark":"#C2410C"},"logo":{"light":"/logo/light.svg","dark":"/logo/dark.svg","href":"/"},"favicon":"/favicon.svg","api":{"playground":{"display":"simple"},"examples":{"languages":["curl","python","javascript","go"]}},"appearance":{"default":"system"},"navbar":{"links":[{"href":"https://github.com/beeos-ai/bma-sdk","label":"bma-sdk"},{"href":"https://github.com/beeos-ai/bma-executor-sdk","label":"bma-executor-sdk"}]},"footer":{"socials":{"github":"https://github.com/beeos-ai"}},"fonts":{"heading":{"family":"Inter","weight":600},"body":{"family":"Inter","weight":400}},"integrations":{"telemetry":{"enabled":false}},"navigation":{"languages":[{"language":"en","default":true,"banner":{"content":"BMA is in **early access**. Pages mark each capability as Available, Preview, or Roadmap.","dismissible":true},"href":""},{"language":"zh","banner":{"content":"BMA 处于**抢先体验**阶段。各页面会把每项能力标注为 Available、Preview 或 Roadmap。","dismissible":true},"href":"zh"}]}},"deployment":{"deploymentMetadataValue":{"hasAudioNarration":false,"customDomains":[],"gitSource":{"type":"github","owner":"local","repo":"local","deployBranch":"main","contentDirectory":"","isPrivate":true,"mountPath":"","label":"local","isBase":true},"buildId":"local","clientVersion":"0.0.4064"},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[],"googleFontsInlined":false,"isLoggedInCli":false,"mintExport":{}},"customCss":[],"page":{"pagePath":"api-reference/native/machine-pools/update-machine-pool","slug":"/api-reference/native/machine-pools/update-machine-pool","pageMetadata":{"openapi":"/api-reference/openapi.yaml put /orgs/{orgID}/machine-pools/{poolID}","description":"Tenant-managed pools support every request field. Cluster-managed pools only allow changes to default CPU and memory, environment and secret environment variables, provider-supported per-machine CPU and memory limits, and the idle deletion policy. Other cluster-managed changes are rejected with 409 Conflict.","href":"/api-reference/native/machine-pools/update-machine-pool","title":"Update machine pool"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Tenant-managed pools support every request field. Cluster-managed pools only allow changes to default CPU and memory, environment and secret environment variables, provider-supported per-machine CPU and memory limits, and the idle deletion policy. Other cluster-managed changes are rejected with 409 Conflict.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"openapi":"/api-reference/openapi.yaml put /orgs/{orgID}/machine-pools/{poolID}","description":"Tenant-managed pools support every request field. Cluster-managed pools only allow changes to default CPU and memory, environment and secret environment variables, provider-supported per-machine CPU and memory limits, and the idle deletion policy. Other cluster-managed changes are rejected with 409 Conflict.","href":"/api-reference/native/machine-pools/update-machine-pool","title":"Update machine pool"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"operationId":"updateMachinePool","tags":["Machine Pools"],"summary":"Update machine pool","description":"Tenant-managed pools support every request field. Cluster-managed pools only allow changes to default CPU and memory, environment and secret environment variables, provider-supported per-machine CPU and memory limits, and the idle deletion policy. Other cluster-managed changes are rejected with 409 Conflict.","security":["aa70940c-14f0-4d53-b7fc-3e883623899f","f4a0901c-9fda-4434-b2ac-66aedf6cfeeb"],"requestBody":"2ad3a82d-9b49-442b-936a-4101783ad5fd","responses":{"200":"6d869b29-81a8-4cd7-b417-03e18743f9e8","400":"abaa12f0-3438-4a9e-b104-63443666b72d","401":"670e6806-f76c-4493-a325-52d46d4c6518","403":"e1bc6a49-64d1-472e-957e-2605ff2d37ea","404":"2a2ab71e-a772-4c83-949e-adfe81003cc6","409":"a49bc1db-84ec-4df3-999c-0e058c58e363","503":"247a7de1-d8b4-434c-801a-1f4b0a3c6a90","4XX":"4a6eb977-0769-4aef-baf6-b2145a6fad77","5XX":"d6f7a19c-a48c-4386-a843-7ff193f84a35"},"method":"put","type":"path","servers":["0bf5897a-c269-4b65-9499-ed03df44e358","949c42bc-5dd5-4a3b-abdf-7e9c2463228e"],"path":"/orgs/{orgID}/machine-pools/{poolID}","baseUrlOptions":["https://api.staging.bma.beeos.ai/api/v1","/api/v1"],"title":"Update machine pool","codeSamples":[],"requestExampleLanguages":["bash","python","javascript","go"],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"08821443-7d0f-4323-9fd8-4e05f34e61e2":{"name":"orgID","in":"path","description":"Organization ID (org_...).","required":true,"schema":{"type":"string","pattern":"^org_[a-z2-7]{26}$","isRequired":true,"description":"Organization ID (org_...).","uniqueKey":"","typeLabel":"string"}},"7ec0103d-f848-4e5c-b8ca-4f752052b607":{"name":"poolID","in":"path","description":"Machine pool ID (mpo_...).","required":true,"schema":{"type":"string","pattern":"^mpo_[a-z2-7]{26}$","isRequired":true,"description":"Machine pool ID (mpo_...).","uniqueKey":"","typeLabel":"string"}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"properties":{"name":{"type":"string","minLength":1,"maxLength":64,"x-bma-unicode-normalization":"NFC","description":"Human-readable name. Spaces and punctuation are allowed; leading or trailing whitespace and invisible or control characters are not.","uniqueKey":"name","typeLabel":"string"},"description":{"description":"Optional description of the pool.","type":"string","uniqueKey":"description","typeLabel":"string"},"default_machine_cpu":{"oneOf":[{"description":"Default CPU count for new machines in the pool.","type":"integer","format":"int32","minimum":1,"maximum":2147483647,"uniqueKey":"default_machine_cpu.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"Default CPU count for new machines in the pool.","type":"null","format":"int32","minimum":1,"maximum":2147483647,"uniqueKey":"default_machine_cpu.oneOf.1","typeLabel":"null"}],"uniqueKey":"default_machine_cpu","typeLabel":"integer\u003cint32> | null"},"default_machine_memory_mb":{"oneOf":[{"description":"Default memory in MB for new machines in the pool.","type":"integer","format":"int32","minimum":1,"maximum":2147483647,"uniqueKey":"default_machine_memory_mb.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"Default memory in MB for new machines in the pool.","type":"null","format":"int32","minimum":1,"maximum":2147483647,"uniqueKey":"default_machine_memory_mb.oneOf.1","typeLabel":"null"}],"uniqueKey":"default_machine_memory_mb","typeLabel":"integer\u003cint32> | null"},"default_machine_env":{"description":"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.","type":"object","additionalProperties":{"type":"string","uniqueKey":"default_machine_env.additionalProperties","typeLabel":"string"},"uniqueKey":"default_machine_env","typeLabel":"object"},"default_machine_secret_env":{"description":"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.","type":"object","additionalProperties":{"description":"Secret ID (sec_...).","type":"string","pattern":"^sec_[a-z2-7]{26}$","uniqueKey":"default_machine_secret_env.additionalProperties","typeLabel":"string"},"uniqueKey":"default_machine_secret_env","typeLabel":"object"},"default_machine_provider_options":{"description":"Provider-specific options applied to new machines in the pool.","type":"object","additionalProperties":true,"uniqueKey":"default_machine_provider_options","typeLabel":"object"},"default_cwd":{"description":"Default working directory for processes on machines created from the pool after this change.","type":"string","uniqueKey":"default_cwd","typeLabel":"string"},"provider_config":{"description":"Provider-specific settings for the pool.","type":"object","additionalProperties":true,"uniqueKey":"provider_config","typeLabel":"object"},"provider_auth_secret_id":{"description":"Secret ID (sec_...).","type":"string","pattern":"^sec_[a-z2-7]{26}$","uniqueKey":"provider_auth_secret_id","typeLabel":"string"},"runtime_protection_enabled":{"description":"Whether BMA should delete a pool machine when its provider remains running after its daemon becomes inactive.","type":"boolean","uniqueKey":"runtime_protection_enabled","typeLabel":"boolean"},"max_total_machines":{"description":"Deprecated, not enforced: how many machines a pool has no longer blocks new machines. Organization and project quotas over in-use machines (org resource limits max_in_use_pool_machines_per_project and max_in_use_pool_machines_per_org) govern capacity.","type":"integer","format":"int32","minimum":0,"maximum":2147483647,"uniqueKey":"max_total_machines","typeLabel":"integer\u003cint32>"},"max_total_cpu":{"oneOf":[{"description":"Deprecated, not enforced: organization and project in-use machine CPU quotas govern capacity.","type":"integer","format":"int32","minimum":0,"maximum":2147483647,"uniqueKey":"max_total_cpu.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"Deprecated, not enforced: organization and project in-use machine CPU quotas govern capacity.","type":"null","format":"int32","minimum":0,"maximum":2147483647,"uniqueKey":"max_total_cpu.oneOf.1","typeLabel":"null"}],"uniqueKey":"max_total_cpu","typeLabel":"integer\u003cint32> | null"},"max_total_memory_mb":{"oneOf":[{"description":"Deprecated, not enforced: organization and project in-use machine memory quotas govern capacity.","type":"integer","format":"int32","minimum":0,"maximum":2147483647,"uniqueKey":"max_total_memory_mb.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"Deprecated, not enforced: organization and project in-use machine memory quotas govern capacity.","type":"null","format":"int32","minimum":0,"maximum":2147483647,"uniqueKey":"max_total_memory_mb.oneOf.1","typeLabel":"null"}],"uniqueKey":"max_total_memory_mb","typeLabel":"integer\u003cint32> | null"},"min_machine_cpu":{"oneOf":[{"description":"Smallest CPU count a single machine in the pool can use.","type":"integer","format":"int32","minimum":0,"maximum":2147483647,"uniqueKey":"min_machine_cpu.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"Smallest CPU count a single machine in the pool can use.","type":"null","format":"int32","minimum":0,"maximum":2147483647,"uniqueKey":"min_machine_cpu.oneOf.1","typeLabel":"null"}],"uniqueKey":"min_machine_cpu","typeLabel":"integer\u003cint32> | null"},"min_machine_memory_mb":{"oneOf":[{"description":"Smallest memory in MB a single machine in the pool can use.","type":"integer","format":"int32","minimum":0,"maximum":2147483647,"uniqueKey":"min_machine_memory_mb.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"Smallest memory in MB a single machine in the pool can use.","type":"null","format":"int32","minimum":0,"maximum":2147483647,"uniqueKey":"min_machine_memory_mb.oneOf.1","typeLabel":"null"}],"uniqueKey":"min_machine_memory_mb","typeLabel":"integer\u003cint32> | null"},"max_machine_cpu":{"oneOf":[{"description":"Largest CPU count a single machine in the pool can use.","type":"integer","format":"int32","minimum":1,"maximum":2147483647,"uniqueKey":"max_machine_cpu.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"Largest CPU count a single machine in the pool can use.","type":"null","format":"int32","minimum":1,"maximum":2147483647,"uniqueKey":"max_machine_cpu.oneOf.1","typeLabel":"null"}],"uniqueKey":"max_machine_cpu","typeLabel":"integer\u003cint32> | null"},"max_machine_memory_mb":{"oneOf":[{"description":"Largest memory in MB a single machine in the pool can use.","type":"integer","format":"int32","minimum":1,"maximum":2147483647,"uniqueKey":"max_machine_memory_mb.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"Largest memory in MB a single machine in the pool can use.","type":"null","format":"int32","minimum":1,"maximum":2147483647,"uniqueKey":"max_machine_memory_mb.oneOf.1","typeLabel":"null"}],"uniqueKey":"max_machine_memory_mb","typeLabel":"integer\u003cint32> | null"},"delete_after_idle_minutes":{"oneOf":[{"description":"Idle minutes before deleting a machine from this pool. Null clears the pool default; omitted leaves it unchanged.","type":"integer","format":"int32","minimum":5,"maximum":2147483647,"uniqueKey":"delete_after_idle_minutes.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"Idle minutes before deleting a machine from this pool. Null clears the pool default; omitted leaves it unchanged.","type":"null","format":"int32","minimum":5,"maximum":2147483647,"uniqueKey":"delete_after_idle_minutes.oneOf.1","typeLabel":"null"}],"uniqueKey":"delete_after_idle_minutes","typeLabel":"integer\u003cint32> | null"},"pause_after_idle_minutes":{"oneOf":[{"description":"Idle minutes before pausing a machine from this pool. Null clears it; omitted leaves it unchanged. Exclusive with delete_after_idle_minutes.","type":"integer","format":"int32","minimum":5,"maximum":2147483647,"uniqueKey":"pause_after_idle_minutes.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"Idle minutes before pausing a machine from this pool. Null clears it; omitted leaves it unchanged. Exclusive with delete_after_idle_minutes.","type":"null","format":"int32","minimum":5,"maximum":2147483647,"uniqueKey":"pause_after_idle_minutes.oneOf.1","typeLabel":"null"}],"uniqueKey":"pause_after_idle_minutes","typeLabel":"integer\u003cint32> | null"},"archive_after_paused_days":{"oneOf":[{"description":"Days a machine stays paused before it is archived. Null clears it; omitted leaves it unchanged. Requires pause_after_idle_minutes.","type":"integer","format":"int32","minimum":1,"maximum":3650,"uniqueKey":"archive_after_paused_days.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"Days a machine stays paused before it is archived. Null clears it; omitted leaves it unchanged. Requires pause_after_idle_minutes.","type":"null","format":"int32","minimum":1,"maximum":3650,"uniqueKey":"archive_after_paused_days.oneOf.1","typeLabel":"null"}],"uniqueKey":"archive_after_paused_days","typeLabel":"integer\u003cint32> | null"},"delete_after_paused_days":{"oneOf":[{"description":"Delete a paused machine once it is this many days old, counted from the machine's creation. Null clears it; omitted leaves it unchanged. Requires pause_after_idle_minutes; cannot be combined with archive_after_paused_days.","type":"integer","format":"int32","minimum":1,"maximum":3650,"uniqueKey":"delete_after_paused_days.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"Delete a paused machine once it is this many days old, counted from the machine's creation. Null clears it; omitted leaves it unchanged. Requires pause_after_idle_minutes; cannot be combined with archive_after_paused_days.","type":"null","format":"int32","minimum":1,"maximum":3650,"uniqueKey":"delete_after_paused_days.oneOf.1","typeLabel":"null"}],"uniqueKey":"delete_after_paused_days","typeLabel":"integer\u003cint32> | null"},"metadata":{"type":"object","description":"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 - BMA 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.","x-go-type":"resourcemeta.Metadata","x-go-type-import":{"path":"github.com/beeos-ai/beeos-managed-agents/backend/internal/resourcemeta"},"x-go-type-skip-optional-pointer":true,"maxProperties":15,"propertyNames":{"minLength":1,"maxLength":64},"not":{"required":["observed_platform"]},"additionalProperties":{"type":"string","maxLength":512,"uniqueKey":"metadata.additionalProperties","typeLabel":"string"},"uniqueKey":"metadata","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"name":"\u003cstring>","description":"\u003cstring>","default_machine_cpu":1073741824,"default_machine_memory_mb":1073741824,"default_machine_env":{},"default_machine_secret_env":{},"default_machine_provider_options":{},"default_cwd":"\u003cstring>","provider_config":{},"provider_auth_secret_id":"\u003cstring>","runtime_protection_enabled":true,"max_total_machines":1073741823,"max_total_cpu":1073741823,"max_total_memory_mb":1073741823,"min_machine_cpu":1073741823,"min_machine_memory_mb":1073741823,"max_machine_cpu":1073741824,"max_machine_memory_mb":1073741824,"delete_after_idle_minutes":1073741826,"pause_after_idle_minutes":1073741826,"archive_after_paused_days":1825,"delete_after_paused_days":1825,"metadata":{}}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"6d869b29-81a8-4cd7-b417-03e18743f9e8":{"description":"Machine pool updated.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["id","org_id","name","management_kind","description","provider","default_machine_cpu","default_machine_memory_mb","default_machine_env","default_machine_secret_env","default_machine_provider_options","default_cwd","provider_config","runtime_protection_enabled","max_total_machines","max_total_cpu","max_total_memory_mb","min_machine_cpu","min_machine_memory_mb","max_machine_cpu","max_machine_memory_mb","delete_after_idle_minutes","pause_after_idle_minutes","archive_after_paused_days","delete_after_paused_days","metadata","created_at","updated_at"],"properties":{"id":{"description":"Machine pool ID (mpo_...).","type":"string","pattern":"^mpo_[a-z2-7]{26}$","isRequired":true,"uniqueKey":"id","typeLabel":"string"},"org_id":{"type":"string","pattern":"^org_[a-z2-7]{26}$","isRequired":true,"uniqueKey":"org_id","typeLabel":"string"},"name":{"type":"string","minLength":1,"maxLength":64,"x-bma-unicode-normalization":"NFC","description":"Human-readable name. Spaces and punctuation are allowed; leading or trailing whitespace and invisible or control characters are not.","isRequired":true,"uniqueKey":"name","typeLabel":"string"},"management_kind":{"type":"string","description":"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.","enum":["tenant","cluster"],"isRequired":true,"uniqueKey":"management_kind","typeLabel":"enum\u003cstring>"},"description":{"type":"string","isRequired":true,"uniqueKey":"description","typeLabel":"string"},"provider":{"type":"string","isRequired":true,"uniqueKey":"provider","typeLabel":"string"},"default_machine_cpu":{"oneOf":[{"type":"integer","format":"int32","minimum":1,"maximum":2147483647,"isRequired":true,"uniqueKey":"default_machine_cpu.oneOf.0","typeLabel":"integer\u003cint32>"},{"type":"null","format":"int32","minimum":1,"maximum":2147483647,"isRequired":true,"uniqueKey":"default_machine_cpu.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"default_machine_cpu","typeLabel":"integer\u003cint32> | null"},"default_machine_memory_mb":{"oneOf":[{"type":"integer","format":"int32","minimum":1,"maximum":2147483647,"isRequired":true,"uniqueKey":"default_machine_memory_mb.oneOf.0","typeLabel":"integer\u003cint32>"},{"type":"null","format":"int32","minimum":1,"maximum":2147483647,"isRequired":true,"uniqueKey":"default_machine_memory_mb.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"default_machine_memory_mb","typeLabel":"integer\u003cint32> | null"},"default_machine_env":{"description":"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.","type":"object","additionalProperties":{"type":"string","uniqueKey":"default_machine_env.additionalProperties","typeLabel":"string"},"isRequired":true,"uniqueKey":"default_machine_env","typeLabel":"object"},"default_machine_secret_env":{"description":"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.","type":"object","additionalProperties":{"description":"Secret ID (sec_...).","type":"string","pattern":"^sec_[a-z2-7]{26}$","uniqueKey":"default_machine_secret_env.additionalProperties","typeLabel":"string"},"isRequired":true,"uniqueKey":"default_machine_secret_env","typeLabel":"object"},"default_machine_provider_options":{"type":"object","additionalProperties":true,"isRequired":true,"uniqueKey":"default_machine_provider_options","typeLabel":"object"},"default_cwd":{"type":"string","isRequired":true,"uniqueKey":"default_cwd","typeLabel":"string"},"provider_config":{"type":"object","additionalProperties":true,"isRequired":true,"uniqueKey":"provider_config","typeLabel":"object"},"runtime_protection_enabled":{"description":"Whether BMA deletes this pool's machines when the provider remains running after the daemon becomes inactive.","type":"boolean","isRequired":true,"uniqueKey":"runtime_protection_enabled","typeLabel":"boolean"},"max_total_machines":{"description":"Deprecated, not enforced: how many machines a pool has no longer blocks new machines. Organization and project quotas over in-use machines (org resource limits max_in_use_pool_machines_per_project and max_in_use_pool_machines_per_org) govern capacity.","type":"integer","format":"int32","minimum":0,"maximum":2147483647,"isRequired":true,"uniqueKey":"max_total_machines","typeLabel":"integer\u003cint32>"},"max_total_cpu":{"oneOf":[{"description":"Deprecated, not enforced: organization and project in-use machine CPU quotas govern capacity.","type":"integer","format":"int32","minimum":0,"maximum":2147483647,"isRequired":true,"uniqueKey":"max_total_cpu.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"Deprecated, not enforced: organization and project in-use machine CPU quotas govern capacity.","type":"null","format":"int32","minimum":0,"maximum":2147483647,"isRequired":true,"uniqueKey":"max_total_cpu.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"max_total_cpu","typeLabel":"integer\u003cint32> | null"},"max_total_memory_mb":{"oneOf":[{"description":"Deprecated, not enforced: organization and project in-use machine memory quotas govern capacity.","type":"integer","format":"int32","minimum":0,"maximum":2147483647,"isRequired":true,"uniqueKey":"max_total_memory_mb.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"Deprecated, not enforced: organization and project in-use machine memory quotas govern capacity.","type":"null","format":"int32","minimum":0,"maximum":2147483647,"isRequired":true,"uniqueKey":"max_total_memory_mb.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"max_total_memory_mb","typeLabel":"integer\u003cint32> | null"},"min_machine_cpu":{"oneOf":[{"type":"integer","format":"int32","minimum":0,"maximum":2147483647,"isRequired":true,"uniqueKey":"min_machine_cpu.oneOf.0","typeLabel":"integer\u003cint32>"},{"type":"null","format":"int32","minimum":0,"maximum":2147483647,"isRequired":true,"uniqueKey":"min_machine_cpu.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"min_machine_cpu","typeLabel":"integer\u003cint32> | null"},"min_machine_memory_mb":{"oneOf":[{"type":"integer","format":"int32","minimum":0,"maximum":2147483647,"isRequired":true,"uniqueKey":"min_machine_memory_mb.oneOf.0","typeLabel":"integer\u003cint32>"},{"type":"null","format":"int32","minimum":0,"maximum":2147483647,"isRequired":true,"uniqueKey":"min_machine_memory_mb.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"min_machine_memory_mb","typeLabel":"integer\u003cint32> | null"},"max_machine_cpu":{"oneOf":[{"type":"integer","format":"int32","minimum":1,"maximum":2147483647,"isRequired":true,"uniqueKey":"max_machine_cpu.oneOf.0","typeLabel":"integer\u003cint32>"},{"type":"null","format":"int32","minimum":1,"maximum":2147483647,"isRequired":true,"uniqueKey":"max_machine_cpu.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"max_machine_cpu","typeLabel":"integer\u003cint32> | null"},"max_machine_memory_mb":{"oneOf":[{"type":"integer","format":"int32","minimum":1,"maximum":2147483647,"isRequired":true,"uniqueKey":"max_machine_memory_mb.oneOf.0","typeLabel":"integer\u003cint32>"},{"type":"null","format":"int32","minimum":1,"maximum":2147483647,"isRequired":true,"uniqueKey":"max_machine_memory_mb.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"max_machine_memory_mb","typeLabel":"integer\u003cint32> | null"},"delete_after_idle_minutes":{"oneOf":[{"description":"Idle minutes before deleting a machine from this pool, or null when the pool default is unset.","type":"integer","format":"int32","minimum":5,"maximum":2147483647,"isRequired":true,"uniqueKey":"delete_after_idle_minutes.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"Idle minutes before deleting a machine from this pool, or null when the pool default is unset.","type":"null","format":"int32","minimum":5,"maximum":2147483647,"isRequired":true,"uniqueKey":"delete_after_idle_minutes.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"delete_after_idle_minutes","typeLabel":"integer\u003cint32> | null"},"pause_after_idle_minutes":{"oneOf":[{"description":"Idle minutes before pausing a machine from this pool, or null when the pool does not pause idle machines.","type":"integer","format":"int32","minimum":5,"maximum":2147483647,"isRequired":true,"uniqueKey":"pause_after_idle_minutes.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"Idle minutes before pausing a machine from this pool, or null when the pool does not pause idle machines.","type":"null","format":"int32","minimum":5,"maximum":2147483647,"isRequired":true,"uniqueKey":"pause_after_idle_minutes.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"pause_after_idle_minutes","typeLabel":"integer\u003cint32> | null"},"archive_after_paused_days":{"oneOf":[{"description":"Days a machine stays paused before it is archived, or null when the pool does not archive.","type":"integer","format":"int32","minimum":1,"maximum":3650,"isRequired":true,"uniqueKey":"archive_after_paused_days.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"Days a machine stays paused before it is archived, or null when the pool does not archive.","type":"null","format":"int32","minimum":1,"maximum":3650,"isRequired":true,"uniqueKey":"archive_after_paused_days.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"archive_after_paused_days","typeLabel":"integer\u003cint32> | null"},"delete_after_paused_days":{"oneOf":[{"description":"Age in days, counted from the machine's creation, after which a paused machine is deleted, or null when the pool keeps paused machines.","type":"integer","format":"int32","minimum":1,"maximum":3650,"isRequired":true,"uniqueKey":"delete_after_paused_days.oneOf.0","typeLabel":"integer\u003cint32>"},{"description":"Age in days, counted from the machine's creation, after which a paused machine is deleted, or null when the pool keeps paused machines.","type":"null","format":"int32","minimum":1,"maximum":3650,"isRequired":true,"uniqueKey":"delete_after_paused_days.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"delete_after_paused_days","typeLabel":"integer\u003cint32> | null"},"metadata":{"type":"object","description":"Arbitrary key-value metadata. Maximum 16 pairs, keys up to 64 characters, values must be strings of up to 512 characters.","x-go-type":"resourcemeta.Metadata","x-go-type-import":{"path":"github.com/beeos-ai/beeos-managed-agents/backend/internal/resourcemeta"},"x-go-type-skip-optional-pointer":true,"maxProperties":16,"propertyNames":{"minLength":1,"maxLength":64},"additionalProperties":{"type":"string","maxLength":512,"uniqueKey":"metadata.additionalProperties","typeLabel":"string"},"isRequired":true,"uniqueKey":"metadata","typeLabel":"object"},"created_at":{"type":"string","format":"date-time","isRequired":true,"uniqueKey":"created_at","typeLabel":"string\u003cdate-time>"},"updated_at":{"type":"string","format":"date-time","isRequired":true,"uniqueKey":"updated_at","typeLabel":"string\u003cdate-time>"},"provider_auth_secret_id":{"description":"Secret ID (sec_...).","type":"string","pattern":"^sec_[a-z2-7]{26}$","uniqueKey":"provider_auth_secret_id","typeLabel":"string"},"usage":{"type":"object","additionalProperties":false,"required":["machines","cpu","memory_mb"],"properties":{"machines":{"type":"integer","format":"int32","minimum":0,"isRequired":true,"uniqueKey":"usage.machines","typeLabel":"integer\u003cint32>"},"cpu":{"type":"integer","format":"int64","minimum":0,"isRequired":true,"uniqueKey":"usage.cpu","typeLabel":"integer\u003cint64>"},"memory_mb":{"type":"integer","format":"int64","minimum":0,"isRequired":true,"uniqueKey":"usage.memory_mb","typeLabel":"integer\u003cint64>"}},"description":"Current quota-consuming usage. Populated when the machine pool is returned by the list or get endpoint.","uniqueKey":"usage","typeLabel":"object"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"id":"\u003cstring>","org_id":"\u003cstring>","name":"\u003cstring>","management_kind":"tenant","description":"\u003cstring>","provider":"\u003cstring>","default_machine_cpu":1073741824,"default_machine_memory_mb":1073741824,"default_machine_env":{},"default_machine_secret_env":{},"default_machine_provider_options":{},"default_cwd":"\u003cstring>","provider_config":{},"runtime_protection_enabled":true,"max_total_machines":1073741823,"max_total_cpu":1073741823,"max_total_memory_mb":1073741823,"min_machine_cpu":1073741823,"min_machine_memory_mb":1073741823,"max_machine_cpu":1073741824,"max_machine_memory_mb":1073741824,"delete_after_idle_minutes":1073741826,"pause_after_idle_minutes":1073741826,"archive_after_paused_days":1825,"delete_after_paused_days":1825,"metadata":{},"created_at":"2023-11-07T05:31:56Z","updated_at":"2023-11-07T05:31:56Z","provider_auth_secret_id":"\u003cstring>","usage":{"machines":1,"cpu":1,"memory_mb":1}}}},"exampleType":"generated"}},"exampleType":"generated"},"abaa12f0-3438-4a9e-b104-63443666b72d":{"description":"The request was invalid.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["error","code"],"properties":{"error":{"type":"string","description":"Human-readable error message. Do not match on it programmatically.","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"Stable error code for programmatic handling.","x-go-type":"ErrorCode","x-extensible-enum":["invalid_request","unauthorized","forbidden","not_found","conflict","file_content_conflict","file_read_only","expected_digest_required","not_a_file","gone","request_too_large","unsupported_media_type","unprocessable","upstream_unavailable","rate_limited","internal_error","service_unavailable","idempotency_key_conflict","agent_backlog_full","state_transition_conflict","managed_work_admission_denied","pending_work","not_wake_capable","daemon_runtime_unregistered","validation_failed","csrf_check_failed","authentication_unavailable"],"isRequired":true,"uniqueKey":"code","typeLabel":"string"},"current_digest":{"type":"string","pattern":"^sha256:[0-9a-f]{64}$","description":"Current file digest for file_content_conflict or expected_digest_required; absent if the file no longer exists. A replacement must be confirmed before retrying with this digest.","uniqueKey":"current_digest","typeLabel":"string"},"issues":{"type":"array","description":"Field-level problems when a submitted document (such as an agent config source) failed validation. Absent for errors that are not about a specific field.","items":{"type":"object","additionalProperties":false,"required":["path","message"],"properties":{"path":{"type":"string","description":"JSON Pointer (RFC 6901) to the offending field in the submitted document. An empty string refers to the whole document.","isRequired":true,"uniqueKey":"issues.items.[INDEX].path","typeLabel":"string"},"message":{"type":"string","description":"Human-readable description of the problem with this field.","isRequired":true,"uniqueKey":"issues.items.[INDEX].message","typeLabel":"string"},"line":{"type":"integer","minimum":1,"description":"1-based line of the offending field in the submitted source, when it can be located.","uniqueKey":"issues.items.[INDEX].line","typeLabel":"integer"},"column":{"type":"integer","minimum":1,"description":"1-based column of the offending field in the submitted source, when it can be located.","uniqueKey":"issues.items.[INDEX].column","typeLabel":"integer"}},"uniqueKey":"issues.items.[INDEX]","typeLabel":"object"},"uniqueKey":"issues","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>","code":"\u003cstring>","current_digest":"\u003cstring>","issues":[{"path":"\u003cstring>","message":"\u003cstring>","line":2,"column":2}]}}},"exampleType":"generated"}},"exampleType":"generated"},"670e6806-f76c-4493-a325-52d46d4c6518":{"description":"Authentication is required or invalid.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["error","code"],"properties":{"error":{"type":"string","description":"Human-readable error message. Do not match on it programmatically.","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"Stable error code for programmatic handling.","x-go-type":"ErrorCode","x-extensible-enum":["invalid_request","unauthorized","forbidden","not_found","conflict","file_content_conflict","file_read_only","expected_digest_required","not_a_file","gone","request_too_large","unsupported_media_type","unprocessable","upstream_unavailable","rate_limited","internal_error","service_unavailable","idempotency_key_conflict","agent_backlog_full","state_transition_conflict","managed_work_admission_denied","pending_work","not_wake_capable","daemon_runtime_unregistered","validation_failed","csrf_check_failed","authentication_unavailable"],"isRequired":true,"uniqueKey":"code","typeLabel":"string"},"current_digest":{"type":"string","pattern":"^sha256:[0-9a-f]{64}$","description":"Current file digest for file_content_conflict or expected_digest_required; absent if the file no longer exists. A replacement must be confirmed before retrying with this digest.","uniqueKey":"current_digest","typeLabel":"string"},"issues":{"type":"array","description":"Field-level problems when a submitted document (such as an agent config source) failed validation. Absent for errors that are not about a specific field.","items":{"type":"object","additionalProperties":false,"required":["path","message"],"properties":{"path":{"type":"string","description":"JSON Pointer (RFC 6901) to the offending field in the submitted document. An empty string refers to the whole document.","isRequired":true,"uniqueKey":"issues.items.[INDEX].path","typeLabel":"string"},"message":{"type":"string","description":"Human-readable description of the problem with this field.","isRequired":true,"uniqueKey":"issues.items.[INDEX].message","typeLabel":"string"},"line":{"type":"integer","minimum":1,"description":"1-based line of the offending field in the submitted source, when it can be located.","uniqueKey":"issues.items.[INDEX].line","typeLabel":"integer"},"column":{"type":"integer","minimum":1,"description":"1-based column of the offending field in the submitted source, when it can be located.","uniqueKey":"issues.items.[INDEX].column","typeLabel":"integer"}},"uniqueKey":"issues.items.[INDEX]","typeLabel":"object"},"uniqueKey":"issues","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>","code":"\u003cstring>","current_digest":"\u003cstring>","issues":[{"path":"\u003cstring>","message":"\u003cstring>","line":2,"column":2}]}}},"exampleType":"generated"}},"exampleType":"generated"},"e1bc6a49-64d1-472e-957e-2605ff2d37ea":{"description":"The authenticated principal is not authorized.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["error","code"],"properties":{"error":{"type":"string","description":"Human-readable error message. Do not match on it programmatically.","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"Stable error code for programmatic handling.","x-go-type":"ErrorCode","x-extensible-enum":["invalid_request","unauthorized","forbidden","not_found","conflict","file_content_conflict","file_read_only","expected_digest_required","not_a_file","gone","request_too_large","unsupported_media_type","unprocessable","upstream_unavailable","rate_limited","internal_error","service_unavailable","idempotency_key_conflict","agent_backlog_full","state_transition_conflict","managed_work_admission_denied","pending_work","not_wake_capable","daemon_runtime_unregistered","validation_failed","csrf_check_failed","authentication_unavailable"],"isRequired":true,"uniqueKey":"code","typeLabel":"string"},"current_digest":{"type":"string","pattern":"^sha256:[0-9a-f]{64}$","description":"Current file digest for file_content_conflict or expected_digest_required; absent if the file no longer exists. A replacement must be confirmed before retrying with this digest.","uniqueKey":"current_digest","typeLabel":"string"},"issues":{"type":"array","description":"Field-level problems when a submitted document (such as an agent config source) failed validation. Absent for errors that are not about a specific field.","items":{"type":"object","additionalProperties":false,"required":["path","message"],"properties":{"path":{"type":"string","description":"JSON Pointer (RFC 6901) to the offending field in the submitted document. An empty string refers to the whole document.","isRequired":true,"uniqueKey":"issues.items.[INDEX].path","typeLabel":"string"},"message":{"type":"string","description":"Human-readable description of the problem with this field.","isRequired":true,"uniqueKey":"issues.items.[INDEX].message","typeLabel":"string"},"line":{"type":"integer","minimum":1,"description":"1-based line of the offending field in the submitted source, when it can be located.","uniqueKey":"issues.items.[INDEX].line","typeLabel":"integer"},"column":{"type":"integer","minimum":1,"description":"1-based column of the offending field in the submitted source, when it can be located.","uniqueKey":"issues.items.[INDEX].column","typeLabel":"integer"}},"uniqueKey":"issues.items.[INDEX]","typeLabel":"object"},"uniqueKey":"issues","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>","code":"\u003cstring>","current_digest":"\u003cstring>","issues":[{"path":"\u003cstring>","message":"\u003cstring>","line":2,"column":2}]}}},"exampleType":"generated"}},"exampleType":"generated"},"2a2ab71e-a772-4c83-949e-adfe81003cc6":{"description":"The requested resource was not found or is not visible.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["error","code"],"properties":{"error":{"type":"string","description":"Human-readable error message. Do not match on it programmatically.","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"Stable error code for programmatic handling.","x-go-type":"ErrorCode","x-extensible-enum":["invalid_request","unauthorized","forbidden","not_found","conflict","file_content_conflict","file_read_only","expected_digest_required","not_a_file","gone","request_too_large","unsupported_media_type","unprocessable","upstream_unavailable","rate_limited","internal_error","service_unavailable","idempotency_key_conflict","agent_backlog_full","state_transition_conflict","managed_work_admission_denied","pending_work","not_wake_capable","daemon_runtime_unregistered","validation_failed","csrf_check_failed","authentication_unavailable"],"isRequired":true,"uniqueKey":"code","typeLabel":"string"},"current_digest":{"type":"string","pattern":"^sha256:[0-9a-f]{64}$","description":"Current file digest for file_content_conflict or expected_digest_required; absent if the file no longer exists. A replacement must be confirmed before retrying with this digest.","uniqueKey":"current_digest","typeLabel":"string"},"issues":{"type":"array","description":"Field-level problems when a submitted document (such as an agent config source) failed validation. Absent for errors that are not about a specific field.","items":{"type":"object","additionalProperties":false,"required":["path","message"],"properties":{"path":{"type":"string","description":"JSON Pointer (RFC 6901) to the offending field in the submitted document. An empty string refers to the whole document.","isRequired":true,"uniqueKey":"issues.items.[INDEX].path","typeLabel":"string"},"message":{"type":"string","description":"Human-readable description of the problem with this field.","isRequired":true,"uniqueKey":"issues.items.[INDEX].message","typeLabel":"string"},"line":{"type":"integer","minimum":1,"description":"1-based line of the offending field in the submitted source, when it can be located.","uniqueKey":"issues.items.[INDEX].line","typeLabel":"integer"},"column":{"type":"integer","minimum":1,"description":"1-based column of the offending field in the submitted source, when it can be located.","uniqueKey":"issues.items.[INDEX].column","typeLabel":"integer"}},"uniqueKey":"issues.items.[INDEX]","typeLabel":"object"},"uniqueKey":"issues","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>","code":"\u003cstring>","current_digest":"\u003cstring>","issues":[{"path":"\u003cstring>","message":"\u003cstring>","line":2,"column":2}]}}},"exampleType":"generated"}},"exampleType":"generated"},"a49bc1db-84ec-4df3-999c-0e058c58e363":{"description":"The request conflicts with current resource state or idempotency history.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["error","code"],"properties":{"error":{"type":"string","description":"Human-readable error message. Do not match on it programmatically.","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"Stable error code for programmatic handling.","x-go-type":"ErrorCode","x-extensible-enum":["invalid_request","unauthorized","forbidden","not_found","conflict","file_content_conflict","file_read_only","expected_digest_required","not_a_file","gone","request_too_large","unsupported_media_type","unprocessable","upstream_unavailable","rate_limited","internal_error","service_unavailable","idempotency_key_conflict","agent_backlog_full","state_transition_conflict","managed_work_admission_denied","pending_work","not_wake_capable","daemon_runtime_unregistered","validation_failed","csrf_check_failed","authentication_unavailable"],"isRequired":true,"uniqueKey":"code","typeLabel":"string"},"current_digest":{"type":"string","pattern":"^sha256:[0-9a-f]{64}$","description":"Current file digest for file_content_conflict or expected_digest_required; absent if the file no longer exists. A replacement must be confirmed before retrying with this digest.","uniqueKey":"current_digest","typeLabel":"string"},"issues":{"type":"array","description":"Field-level problems when a submitted document (such as an agent config source) failed validation. Absent for errors that are not about a specific field.","items":{"type":"object","additionalProperties":false,"required":["path","message"],"properties":{"path":{"type":"string","description":"JSON Pointer (RFC 6901) to the offending field in the submitted document. An empty string refers to the whole document.","isRequired":true,"uniqueKey":"issues.items.[INDEX].path","typeLabel":"string"},"message":{"type":"string","description":"Human-readable description of the problem with this field.","isRequired":true,"uniqueKey":"issues.items.[INDEX].message","typeLabel":"string"},"line":{"type":"integer","minimum":1,"description":"1-based line of the offending field in the submitted source, when it can be located.","uniqueKey":"issues.items.[INDEX].line","typeLabel":"integer"},"column":{"type":"integer","minimum":1,"description":"1-based column of the offending field in the submitted source, when it can be located.","uniqueKey":"issues.items.[INDEX].column","typeLabel":"integer"}},"uniqueKey":"issues.items.[INDEX]","typeLabel":"object"},"uniqueKey":"issues","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>","code":"\u003cstring>","current_digest":"\u003cstring>","issues":[{"path":"\u003cstring>","message":"\u003cstring>","line":2,"column":2}]}}},"exampleType":"generated"}},"exampleType":"generated"},"247a7de1-d8b4-434c-801a-1f4b0a3c6a90":{"description":"The service dependency required to satisfy the request is unavailable.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["error","code"],"properties":{"error":{"type":"string","description":"Human-readable error message. Do not match on it programmatically.","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"Stable error code for programmatic handling.","x-go-type":"ErrorCode","x-extensible-enum":["invalid_request","unauthorized","forbidden","not_found","conflict","file_content_conflict","file_read_only","expected_digest_required","not_a_file","gone","request_too_large","unsupported_media_type","unprocessable","upstream_unavailable","rate_limited","internal_error","service_unavailable","idempotency_key_conflict","agent_backlog_full","state_transition_conflict","managed_work_admission_denied","pending_work","not_wake_capable","daemon_runtime_unregistered","validation_failed","csrf_check_failed","authentication_unavailable"],"isRequired":true,"uniqueKey":"code","typeLabel":"string"},"current_digest":{"type":"string","pattern":"^sha256:[0-9a-f]{64}$","description":"Current file digest for file_content_conflict or expected_digest_required; absent if the file no longer exists. A replacement must be confirmed before retrying with this digest.","uniqueKey":"current_digest","typeLabel":"string"},"issues":{"type":"array","description":"Field-level problems when a submitted document (such as an agent config source) failed validation. Absent for errors that are not about a specific field.","items":{"type":"object","additionalProperties":false,"required":["path","message"],"properties":{"path":{"type":"string","description":"JSON Pointer (RFC 6901) to the offending field in the submitted document. An empty string refers to the whole document.","isRequired":true,"uniqueKey":"issues.items.[INDEX].path","typeLabel":"string"},"message":{"type":"string","description":"Human-readable description of the problem with this field.","isRequired":true,"uniqueKey":"issues.items.[INDEX].message","typeLabel":"string"},"line":{"type":"integer","minimum":1,"description":"1-based line of the offending field in the submitted source, when it can be located.","uniqueKey":"issues.items.[INDEX].line","typeLabel":"integer"},"column":{"type":"integer","minimum":1,"description":"1-based column of the offending field in the submitted source, when it can be located.","uniqueKey":"issues.items.[INDEX].column","typeLabel":"integer"}},"uniqueKey":"issues.items.[INDEX]","typeLabel":"object"},"uniqueKey":"issues","typeLabel":"object[]"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>","code":"\u003cstring>","current_digest":"\u003cstring>","issues":[{"path":"\u003cstring>","message":"\u003cstring>","line":2,"column":2}]}}},"exampleType":"generated"}},"exampleType":"generated"},"4a6eb977-0769-4aef-baf6-b2145a6fad77":{"description":"Any other client error. The body carries the shared Error envelope restricted to client error codes; statuses with a dedicated response above are documented precisely.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["error","code"],"properties":{"error":{"type":"string","description":"Human-readable error message. Do not match on it programmatically.","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"Stable error code carried by 4XX statuses. Subset of the Error code enum whose statuses are client errors.","x-extensible-enum":["invalid_request","validation_failed","unauthorized","forbidden","csrf_check_failed","not_found","conflict","file_content_conflict","file_read_only","expected_digest_required","not_a_file","idempotency_key_conflict","agent_backlog_full","state_transition_conflict","pending_work","not_wake_capable","gone","daemon_runtime_unregistered","request_too_large","unsupported_media_type","unprocessable","upstream_unavailable","rate_limited"],"isRequired":true,"uniqueKey":"code","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>","code":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"},"d6f7a19c-a48c-4386-a843-7ff193f84a35":{"description":"Any other server error. The body carries the shared Error envelope restricted to server error codes.","content":{"application/json":{"schema":{"type":"object","additionalProperties":false,"required":["error","code"],"properties":{"error":{"type":"string","description":"Human-readable error message. Do not match on it programmatically.","isRequired":true,"uniqueKey":"error","typeLabel":"string"},"code":{"type":"string","description":"Stable error code carried by 5XX statuses. Subset of the Error code enum whose statuses are server errors.","x-extensible-enum":["internal_error","service_unavailable","authentication_unavailable"],"isRequired":true,"uniqueKey":"code","typeLabel":"string"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"error":"\u003cstring>","code":"\u003cstring>"}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"aa70940c-14f0-4d53-b7fc-3e883623899f":{"bearerAuth":{"type":"http","scheme":"bearer","bearerFormat":"BMA personal or organization access token","description":"An opaque BMA personal or organization bearer token.","scopes":[],"schemeName":"bearerAuth"}},"f4a0901c-9fda-4434-b2ac-66aedf6cfeeb":{"browserSessionCookie":{"type":"apiKey","in":"cookie","name":"__Host-bma_session","description":"Browser session cookie. HTTPS deployments use __Host-bma_session; local HTTP development uses bma_session.","scopes":[],"schemeName":"browserSessionCookie"},"csrfHeader":{"type":"apiKey","in":"header","name":"X-BMA-Csrf","description":"CSRF token header required for browser-session mutations. The value must match the session's CSRF cookie.","scopes":[],"schemeName":"csrfHeader"}}},"servers":{"0bf5897a-c269-4b65-9499-ed03df44e358":{"url":"https://api.staging.bma.beeos.ai/api/v1","description":"Hosted BMA"},"949c42bc-5dd5-4a3b-abdf-7e9c2463228e":{"url":"/api/v1","description":"Self-hosted BMA, relative to the deployment origin"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"http","scheme":"bearer","bearerFormat":"BMA personal or organization access token","description":"An opaque BMA personal or organization bearer token.","scopes":[],"schemeName":"bearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"An opaque BMA personal or organization bearer token.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"bearerAuth","name":"Authorization"}],"title":"bearerAuth"},{"schemes":[{"scheme":{"type":"apiKey","in":"cookie","name":"__Host-bma_session","description":"Browser session cookie. HTTPS deployments use __Host-bma_session; local HTTP development uses bma_session.","scopes":[],"schemeName":"browserSessionCookie"},"schema":{"title":"__Host-bma_session","type":"string","description":"Browser session cookie. HTTPS deployments use __Host-bma_session; local HTTP development uses bma_session.","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"browserSessionCookie","name":"__Host-bma_session"},{"scheme":{"type":"apiKey","in":"header","name":"X-BMA-Csrf","description":"CSRF token header required for browser-session mutations. The value must match the session's CSRF cookie.","scopes":[],"schemeName":"csrfHeader"},"schema":{"title":"X-BMA-Csrf","type":"string","description":"CSRF token header required for browser-session mutations. The value must match the session's CSRF cookie.","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"csrfHeader","name":"X-BMA-Csrf"}],"title":"browserSessionCookie \u0026 csrfHeader"}]},"originalFileLocation":"api-reference/openapi.yaml"},"subdomain":"localhost","siteName":"BMA Developer Docs","title":"Update machine pool - BMA Developer Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{"en":{"href":"/api-reference/native/machine-pools/update-machine-pool","matchLevel":0},"zh":{"href":"/zh/api-reference/native/machine-pools/update-machine-pool","matchLevel":1}}},"originalFileLocation":"api-reference/native/machine-pools/update-machine-pool.mdx","locale":"en"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Tenant-managed pools support every request field. Cluster-managed pools only allow changes to default CPU and memory, environment and secret environment variables, provider-supported per-machine CPU and memory limits, and the idle deletion policy. Other cluster-managed changes are rejected with 409 Conflict.\">\u003cmeta data-mint-head name=\"application-name\" content=\"BMA Developer Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/favicons/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/favicons/favicon-32x32.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/favicons/favicon-16x16.png\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/favicons/favicon.ico\">\u003cmeta data-mint-head property=\"og:title\" content=\"Update machine pool - BMA Developer Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Tenant-managed pools support every request field. Cluster-managed pools only allow changes to default CPU and memory, environment and secret environment variables, provider-supported per-machine CPU and memory limits, and the idle deletion policy. Other cluster-managed changes are rejected with 409 Conflict.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"BMA Developer Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://local./api-reference/native/machine-pools/update-machine-pool\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Update machine pool - BMA Developer Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Tenant-managed pools support every request field. Cluster-managed pools only allow changes to default CPU and memory, environment and secret environment variables, provider-supported per-machine CPU and memory limits, and the idle deletion policy. Other cluster-managed changes are rejected with 409 Conflict.\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/favicons/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"BMA Developer Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#F97316\">\u003clink data-mint-head rel=\"canonical\" href=\"https://local./api-reference/native/machine-pools/update-machine-pool\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/native/machine-pools/update-machine-pool.md\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"en\" href=\"https://local./api-reference/native/machine-pools/update-machine-pool\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"zh\" href=\"https://local./zh/api-reference/native/machine-pools/update-machine-pool\">\u003clink data-mint-head rel=\"alternate\" hreflang=\"x-default\" href=\"https://local./api-reference/native/machine-pools/update-machine-pool\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"BMA Developer Docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"BMA Developer Docs","nav":{"languages":[{"language":"en","default":true,"banner":{"content":"BMA is in **early access**. Pages mark each capability as Available, Preview, or Roadmap.","dismissible":true},"tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":""}]},{"tab":"SDKs","pages":[{"title":"SDKs","href":"/sdks/overview"}]},{"tab":"API reference","groups":[{"group":"API reference","pages":[{"title":"API reference","icon":"book","href":"/api-reference/introduction"}]},{"group":"Native REST API","pages":[{"group":"Events","pages":[{"title":"List event webhooks for one scope","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/event-webhooks","href":"/api-reference/native/events/list-event-webhooks-for-one-scope"},{"title":"Create an event webhook","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/event-webhooks","href":"/api-reference/native/events/create-an-event-webhook"},{"title":"Delete an event webhook","openapi":"/api-reference/openapi.yaml delete /orgs/{orgID}/projects/{projectID}/event-webhooks/{webhookID}","href":"/api-reference/native/events/delete-an-event-webhook"},{"title":"Update event webhook settings","openapi":"/api-reference/openapi.yaml patch /orgs/{orgID}/projects/{projectID}/event-webhooks/{webhookID}","href":"/api-reference/native/events/update-event-webhook-settings"},{"title":"List turns","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/agents/{agentID}/turns","href":"/api-reference/native/events/list-turns"},{"title":"List turn events","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/agents/{agentID}/turns/{turnID}/events","href":"/api-reference/native/events/list-turn-events"},{"title":"List events","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/agents/{agentID}/events","href":"/api-reference/native/events/list-events"},{"title":"Stream events","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/agents/{agentID}/events/stream","href":"/api-reference/native/events/stream-events"},{"title":"List session artifacts","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/agents/{agentID}/sessions/{sessionID}/artifacts","href":"/api-reference/native/events/list-session-artifacts"},{"title":"Upload a session artifact","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/agents/{agentID}/sessions/{sessionID}/artifacts","href":"/api-reference/native/events/upload-a-session-artifact"},{"title":"Get session artifact content","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/agents/{agentID}/sessions/{sessionID}/artifacts/{artifactID}/content","href":"/api-reference/native/events/get-session-artifact-content"},{"title":"Get artifact","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/agents/{agentID}/artifacts/{artifactID}","href":"/api-reference/native/events/get-artifact"},{"title":"Get artifact content","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/agents/{agentID}/artifacts/{artifactID}/content","href":"/api-reference/native/events/get-artifact-content"}]},{"group":"Users and API Keys","pages":[{"title":"List the authenticated user's personal access tokens","openapi":"/api-reference/openapi.yaml get /personal-access-tokens","href":"/api-reference/native/users-and-api-keys/list-the-authenticated-users-personal-access-tokens"},{"title":"Create personal access token","openapi":"/api-reference/openapi.yaml post /personal-access-tokens","href":"/api-reference/native/users-and-api-keys/create-personal-access-token"},{"title":"Revoke a personal access token","openapi":"/api-reference/openapi.yaml post /personal-access-tokens/{tokenID}/revoke","href":"/api-reference/native/users-and-api-keys/revoke-a-personal-access-token"},{"title":"Get the authenticated user and their organizations","openapi":"/api-reference/openapi.yaml get /me","href":"/api-reference/native/users-and-api-keys/get-the-authenticated-user-and-their-organizations"},{"title":"Delete the authenticated user's account","openapi":"/api-reference/openapi.yaml delete /me","href":"/api-reference/native/users-and-api-keys/delete-the-authenticated-users-account"},{"title":"List pending invitations","openapi":"/api-reference/openapi.yaml get /invitations","href":"/api-reference/native/users-and-api-keys/list-pending-invitations"},{"title":"Accept invitation","openapi":"/api-reference/openapi.yaml post /invitations/{invitationID}/accept","href":"/api-reference/native/users-and-api-keys/accept-invitation"},{"title":"Decline invitation","openapi":"/api-reference/openapi.yaml post /invitations/{invitationID}/decline","href":"/api-reference/native/users-and-api-keys/decline-invitation"},{"title":"List org API keys","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/api-keys","href":"/api-reference/native/users-and-api-keys/list-org-api-keys"},{"title":"Create org API key","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/api-keys","href":"/api-reference/native/users-and-api-keys/create-org-api-key"},{"title":"Get an org API key","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/api-keys/{keyID}","href":"/api-reference/native/users-and-api-keys/get-an-org-api-key"},{"title":"Update an org API key","openapi":"/api-reference/openapi.yaml patch /orgs/{orgID}/api-keys/{keyID}","href":"/api-reference/native/users-and-api-keys/update-an-org-api-key"},{"title":"Revoke an org API key","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/api-keys/{keyID}/revoke","href":"/api-reference/native/users-and-api-keys/revoke-an-org-api-key"},{"title":"List an org API key's explicit project role grants","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/api-keys/{keyID}/projects","href":"/api-reference/native/users-and-api-keys/list-an-org-api-keys-explicit-project-role-grants"},{"title":"Set an org API key's role on a project","openapi":"/api-reference/openapi.yaml put /orgs/{orgID}/api-keys/{keyID}/projects/{projectID}","href":"/api-reference/native/users-and-api-keys/set-an-org-api-keys-role-on-a-project"},{"title":"Remove an org API key's project role grant","openapi":"/api-reference/openapi.yaml delete /orgs/{orgID}/api-keys/{keyID}/projects/{projectID}","href":"/api-reference/native/users-and-api-keys/remove-an-org-api-keys-project-role-grant"}]},{"group":"Machine Daemon","pages":[]},{"group":"Organizations and Projects","pages":[{"title":"List the authenticated principal's organizations","openapi":"/api-reference/openapi.yaml get /orgs","href":"/api-reference/native/organizations-and-projects/list-the-authenticated-principals-organizations"},{"title":"Create organization","openapi":"/api-reference/openapi.yaml post /orgs","href":"/api-reference/native/organizations-and-projects/create-organization"},{"title":"Delete organization","openapi":"/api-reference/openapi.yaml delete /orgs/{orgID}","href":"/api-reference/native/organizations-and-projects/delete-organization"},{"title":"Get org usage","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/usage","href":"/api-reference/native/organizations-and-projects/get-org-usage"},{"title":"Get usage timeseries","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/usage/timeseries","href":"/api-reference/native/organizations-and-projects/get-usage-timeseries"},{"title":"List visible projects","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects","href":"/api-reference/native/organizations-and-projects/list-visible-projects"},{"title":"Create project","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects","href":"/api-reference/native/organizations-and-projects/create-project"},{"title":"Delete project","openapi":"/api-reference/openapi.yaml delete /orgs/{orgID}/projects/{projectID}","href":"/api-reference/native/organizations-and-projects/delete-project"},{"title":"Get project usage","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/usage","href":"/api-reference/native/organizations-and-projects/get-project-usage"},{"title":"List organization members","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/members","href":"/api-reference/native/organizations-and-projects/list-organization-members"},{"title":"Remove org member","openapi":"/api-reference/openapi.yaml delete /orgs/{orgID}/members/{userID}","href":"/api-reference/native/organizations-and-projects/remove-org-member"},{"title":"Update org member role","openapi":"/api-reference/openapi.yaml patch /orgs/{orgID}/members/{userID}","href":"/api-reference/native/organizations-and-projects/update-org-member-role"},{"title":"List a member's explicit project role grants","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/members/{userID}/projects","href":"/api-reference/native/organizations-and-projects/list-a-members-explicit-project-role-grants"},{"title":"Set a member's role on a project","openapi":"/api-reference/openapi.yaml put /orgs/{orgID}/members/{userID}/projects/{projectID}","href":"/api-reference/native/organizations-and-projects/set-a-members-role-on-a-project"},{"title":"Remove a member's project role grant","openapi":"/api-reference/openapi.yaml delete /orgs/{orgID}/members/{userID}/projects/{projectID}","href":"/api-reference/native/organizations-and-projects/remove-a-members-project-role-grant"},{"title":"List org invitations","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/invitations","href":"/api-reference/native/organizations-and-projects/list-org-invitations"},{"title":"Create org invitation","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/invitations","href":"/api-reference/native/organizations-and-projects/create-org-invitation"},{"title":"Delete org invitation","openapi":"/api-reference/openapi.yaml delete /orgs/{orgID}/invitations/{invitationID}","href":"/api-reference/native/organizations-and-projects/delete-org-invitation"}]},{"group":"Agents","pages":[{"title":"List agents across projects","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/agents","href":"/api-reference/native/agents/list-agents-across-projects"},{"title":"List agents","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/agents","href":"/api-reference/native/agents/list-agents"},{"title":"Create agent","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/agents","href":"/api-reference/native/agents/create-agent"},{"title":"Get agent","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/agents/{agentID}","href":"/api-reference/native/agents/get-agent"},{"title":"Get agent usage","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/agents/{agentID}/usage","href":"/api-reference/native/agents/get-agent-usage"},{"title":"Archive agent","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/agents/{agentID}/archive","href":"/api-reference/native/agents/archive-agent"},{"title":"Update agent config","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/agents/{agentID}/config","href":"/api-reference/native/agents/update-agent-config"},{"title":"Read the session model override metadata","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/agents/{agentID}/model-override","href":"/api-reference/native/agents/read-the-session-model-override-metadata"},{"title":"Create or replace the session model override","openapi":"/api-reference/openapi.yaml put /orgs/{orgID}/projects/{projectID}/agents/{agentID}/model-override","href":"/api-reference/native/agents/create-or-replace-the-session-model-override"},{"title":"Revoke the session model override","openapi":"/api-reference/openapi.yaml delete /orgs/{orgID}/projects/{projectID}/agents/{agentID}/model-override","href":"/api-reference/native/agents/revoke-the-session-model-override"},{"title":"Modify the session model override","openapi":"/api-reference/openapi.yaml patch /orgs/{orgID}/projects/{projectID}/agents/{agentID}/model-override","href":"/api-reference/native/agents/modify-the-session-model-override"},{"title":"Read the agent executor binding","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/agents/{agentID}/executor-binding","href":"/api-reference/native/agents/read-the-agent-executor-binding"},{"title":"Run the agent on an agent executor","openapi":"/api-reference/openapi.yaml put /orgs/{orgID}/projects/{projectID}/agents/{agentID}/executor-binding","href":"/api-reference/native/agents/run-the-agent-on-an-agent-executor"},{"title":"Read a session model override metadata","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/agents/{agentID}/sessions/{sessionID}/model-override","href":"/api-reference/native/agents/read-a-session-model-override-metadata"},{"title":"Create or replace a session model override","openapi":"/api-reference/openapi.yaml put /orgs/{orgID}/projects/{projectID}/agents/{agentID}/sessions/{sessionID}/model-override","href":"/api-reference/native/agents/create-or-replace-a-session-model-override"},{"title":"Revoke a session model override","openapi":"/api-reference/openapi.yaml delete /orgs/{orgID}/projects/{projectID}/agents/{agentID}/sessions/{sessionID}/model-override","href":"/api-reference/native/agents/revoke-a-session-model-override"},{"title":"Modify a session model override","openapi":"/api-reference/openapi.yaml patch /orgs/{orgID}/projects/{projectID}/agents/{agentID}/sessions/{sessionID}/model-override","href":"/api-reference/native/agents/modify-a-session-model-override"},{"title":"Create agent input","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/agents/{agentID}/inputs","href":"/api-reference/native/agents/create-agent-input"},{"title":"List agent sessions","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/agents/{agentID}/sessions","href":"/api-reference/native/agents/list-agent-sessions"},{"title":"Create agent session","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/agents/{agentID}/sessions","href":"/api-reference/native/agents/create-agent-session"},{"title":"Get agent session","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/agents/{agentID}/sessions/{sessionID}","href":"/api-reference/native/agents/get-agent-session"},{"title":"Update agent session","openapi":"/api-reference/openapi.yaml patch /orgs/{orgID}/projects/{projectID}/agents/{agentID}/sessions/{sessionID}","href":"/api-reference/native/agents/update-agent-session"},{"title":"Archive agent session","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/agents/{agentID}/sessions/{sessionID}/archive","href":"/api-reference/native/agents/archive-agent-session"},{"title":"Cancel agent session","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/agents/{agentID}/sessions/{sessionID}/cancel","href":"/api-reference/native/agents/cancel-agent-session"},{"title":"Get an agent session by id","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/agent-sessions/{sessionID}","href":"/api-reference/native/agents/get-an-agent-session-by-id"},{"title":"List tool calls","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/agents/{agentID}/tool-calls","href":"/api-reference/native/agents/list-tool-calls"},{"title":"Submit a result for a ready custom tool call","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/agents/{agentID}/tool-calls/{toolCallID}/result","href":"/api-reference/native/agents/submit-a-result-for-a-ready-custom-tool-call"},{"title":"Cancel agent","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/agents/{agentID}/cancel","href":"/api-reference/native/agents/cancel-agent"},{"title":"List waiting backlog inputs","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/agents/{agentID}/inputs/backlog","href":"/api-reference/native/agents/list-waiting-backlog-inputs"},{"title":"Cancel queued backlog input","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/agents/{agentID}/inputs/{inputID}/cancel","href":"/api-reference/native/agents/cancel-queued-backlog-input"},{"title":"Move queued backlog input","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/agents/{agentID}/inputs/{inputID}/move","href":"/api-reference/native/agents/move-queued-backlog-input"},{"title":"Promote queued input to steering","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/agents/{agentID}/inputs/{inputID}/promote_to_steering","href":"/api-reference/native/agents/promote-queued-input-to-steering"},{"title":"Demote steering input to queued","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/agents/{agentID}/inputs/{inputID}/demote_to_queued","href":"/api-reference/native/agents/demote-steering-input-to-queued"}]},{"group":"Configs and Profiles","pages":[{"title":"List agent profiles across projects","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/agent-profiles","href":"/api-reference/native/configs-and-profiles/list-agent-profiles-across-projects"},{"title":"Resolve agent config tools","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/agent-configs/tools","href":"/api-reference/native/configs-and-profiles/resolve-agent-config-tools"},{"title":"Create agent config","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/agent-configs","href":"/api-reference/native/configs-and-profiles/create-agent-config"},{"title":"Get tool catalog","openapi":"/api-reference/openapi.yaml get /tool-catalog","href":"/api-reference/native/configs-and-profiles/get-tool-catalog"},{"title":"Search the MCP server registry","openapi":"/api-reference/openapi.yaml get /mcp-servers","href":"/api-reference/native/configs-and-profiles/search-the-mcp-server-registry"},{"title":"List an MCP server's tools","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/mcp-servers/tools","href":"/api-reference/native/configs-and-profiles/list-an-mcp-servers-tools"},{"title":"Get agent config","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/agent-configs/{agentConfigID}","href":"/api-reference/native/configs-and-profiles/get-agent-config"},{"title":"Get generated agent config source","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/agent-configs/{agentConfigID}/generated-source","href":"/api-reference/native/configs-and-profiles/get-generated-agent-config-source"},{"title":"List agent profiles","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/agent-profiles","href":"/api-reference/native/configs-and-profiles/list-agent-profiles"},{"title":"Create agent profile","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/agent-profiles","href":"/api-reference/native/configs-and-profiles/create-agent-profile"},{"title":"Get agent profile","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/agent-profiles/{agentProfileID}","href":"/api-reference/native/configs-and-profiles/get-agent-profile"},{"title":"Delete agent profile","openapi":"/api-reference/openapi.yaml delete /orgs/{orgID}/projects/{projectID}/agent-profiles/{agentProfileID}","href":"/api-reference/native/configs-and-profiles/delete-agent-profile"},{"title":"Rename agent profile","openapi":"/api-reference/openapi.yaml patch /orgs/{orgID}/projects/{projectID}/agent-profiles/{agentProfileID}","href":"/api-reference/native/configs-and-profiles/rename-agent-profile"},{"title":"Get agent profile usage","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/agent-profiles/{agentProfileID}/usage","href":"/api-reference/native/configs-and-profiles/get-agent-profile-usage"},{"title":"Update agent profile","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/agent-profiles/{agentProfileID}/config","href":"/api-reference/native/configs-and-profiles/update-agent-profile"},{"title":"List cron triggers","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/cron-triggers","href":"/api-reference/native/configs-and-profiles/list-cron-triggers"},{"title":"Create cron trigger","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/cron-triggers","href":"/api-reference/native/configs-and-profiles/create-cron-trigger"},{"title":"Get cron trigger","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/cron-triggers/{cronTriggerID}","href":"/api-reference/native/configs-and-profiles/get-cron-trigger"},{"title":"Delete cron trigger","openapi":"/api-reference/openapi.yaml delete /orgs/{orgID}/projects/{projectID}/cron-triggers/{cronTriggerID}","href":"/api-reference/native/configs-and-profiles/delete-cron-trigger"},{"title":"Update cron trigger","openapi":"/api-reference/openapi.yaml patch /orgs/{orgID}/projects/{projectID}/cron-triggers/{cronTriggerID}","href":"/api-reference/native/configs-and-profiles/update-cron-trigger"}]},{"group":"Skills","pages":[{"title":"List skills visible through ownership authority","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/skills","href":"/api-reference/native/skills/list-skills-visible-through-ownership-authority"},{"title":"Create skill","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/skills","href":"/api-reference/native/skills/create-skill"},{"title":"Get skill through ownership authority","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/skills/{skillID}","href":"/api-reference/native/skills/get-skill-through-ownership-authority"},{"title":"Update skill by uploading a new revision","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/skills/{skillID}","href":"/api-reference/native/skills/update-skill-by-uploading-a-new-revision"},{"title":"Delete skill","openapi":"/api-reference/openapi.yaml delete /orgs/{orgID}/skills/{skillID}","href":"/api-reference/native/skills/delete-skill"},{"title":"List skill grants","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/skills/{skillID}/grants","href":"/api-reference/native/skills/list-skill-grants"},{"title":"Create skill grant","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/skills/{skillID}/grants","href":"/api-reference/native/skills/create-skill-grant"},{"title":"Delete skill grant","openapi":"/api-reference/openapi.yaml delete /orgs/{orgID}/skills/{skillID}/grants/{grantID}","href":"/api-reference/native/skills/delete-skill-grant"},{"title":"List skills available to project","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/skills","href":"/api-reference/native/skills/list-skills-available-to-project"}]},{"group":"Memory Stores","pages":[{"title":"List memory stores across projects","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/memory-stores","href":"/api-reference/native/memory-stores/list-memory-stores-across-projects"},{"title":"List memory stores","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/memory-stores","href":"/api-reference/native/memory-stores/list-memory-stores"},{"title":"Create memory store","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/memory-stores","href":"/api-reference/native/memory-stores/create-memory-store"},{"title":"Get memory store","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/memory-stores/{memoryStoreID}","href":"/api-reference/native/memory-stores/get-memory-store"},{"title":"Delete memory store","openapi":"/api-reference/openapi.yaml delete /orgs/{orgID}/projects/{projectID}/memory-stores/{memoryStoreID}","href":"/api-reference/native/memory-stores/delete-memory-store"},{"title":"Update memory store","openapi":"/api-reference/openapi.yaml patch /orgs/{orgID}/projects/{projectID}/memory-stores/{memoryStoreID}","href":"/api-reference/native/memory-stores/update-memory-store"},{"title":"List memory files","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/memory-stores/{memoryStoreID}/files","href":"/api-reference/native/memory-stores/list-memory-files"},{"title":"Download memory file","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/memory-stores/{memoryStoreID}/file","href":"/api-reference/native/memory-stores/download-memory-file"},{"title":"Write memory file","openapi":"/api-reference/openapi.yaml put /orgs/{orgID}/projects/{projectID}/memory-stores/{memoryStoreID}/file","href":"/api-reference/native/memory-stores/write-memory-file"},{"title":"Delete memory file","openapi":"/api-reference/openapi.yaml delete /orgs/{orgID}/projects/{projectID}/memory-stores/{memoryStoreID}/file","href":"/api-reference/native/memory-stores/delete-memory-file"}]},{"group":"Secrets","pages":[{"title":"List secrets visible through ownership authority","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/secrets","href":"/api-reference/native/secrets/list-secrets-visible-through-ownership-authority"},{"title":"Create secret","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/secrets","href":"/api-reference/native/secrets/create-secret"},{"title":"Start MCP OAuth for a new secret","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/secrets/mcp-oauth","href":"/api-reference/native/secrets/start-mcp-oauth-for-a-new-secret"},{"title":"Get secret through ownership authority","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/secrets/{secretID}","href":"/api-reference/native/secrets/get-secret-through-ownership-authority"},{"title":"Delete secret","openapi":"/api-reference/openapi.yaml delete /orgs/{orgID}/secrets/{secretID}","href":"/api-reference/native/secrets/delete-secret"},{"title":"Update secret metadata","openapi":"/api-reference/openapi.yaml patch /orgs/{orgID}/secrets/{secretID}","href":"/api-reference/native/secrets/update-secret-metadata"},{"title":"Create secret version","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/secrets/{secretID}/versions","href":"/api-reference/native/secrets/create-secret-version"},{"title":"List secret grants","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/secrets/{secretID}/grants","href":"/api-reference/native/secrets/list-secret-grants"},{"title":"Create secret grant","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/secrets/{secretID}/grants","href":"/api-reference/native/secrets/create-secret-grant"},{"title":"Delete secret grant","openapi":"/api-reference/openapi.yaml delete /orgs/{orgID}/secrets/{secretID}/grants/{grantID}","href":"/api-reference/native/secrets/delete-secret-grant"},{"title":"List secrets available to project","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/secrets","href":"/api-reference/native/secrets/list-secrets-available-to-project"},{"title":"Get secret available to project","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/secrets/{secretID}","href":"/api-reference/native/secrets/get-secret-available-to-project"}]},{"group":"Integrations","pages":[{"title":"Connect an integration through OAuth","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/integrations/{integrationID}/oauth/setup","href":"/api-reference/native/integrations/connect-an-integration-through-oauth"},{"title":"Create a Slack provider app and connect it to an BMA integration","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/integrations/{integrationID}/slack-setup","href":"/api-reference/native/integrations/create-a-slack-provider-app-and-connect-it-to-an-bma-integration"},{"title":"Start registration of a customer-owned GitHub App","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/integrations/{integrationID}/github-setup","href":"/api-reference/native/integrations/start-registration-of-a-customer-owned-github-app"},{"title":"Inspect installations of a customer-owned GitHub App","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/integrations/{integrationID}/github-setup/installations","href":"/api-reference/native/integrations/inspect-installations-of-a-customer-owned-github-app"},{"title":"List integrations across projects","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/integrations","href":"/api-reference/native/integrations/list-integrations-across-projects"},{"title":"List project integrations","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/integrations","href":"/api-reference/native/integrations/list-project-integrations"},{"title":"Create an integration and optional launcher","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/integrations","href":"/api-reference/native/integrations/create-an-integration-and-optional-launcher"},{"title":"Get project integration","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/integrations/{integrationID}","href":"/api-reference/native/integrations/get-project-integration"},{"title":"Update integration settings","openapi":"/api-reference/openapi.yaml put /orgs/{orgID}/projects/{projectID}/integrations/{integrationID}","href":"/api-reference/native/integrations/update-integration-settings"},{"title":"Delete integration setup and revoke its capabilities","openapi":"/api-reference/openapi.yaml delete /orgs/{orgID}/projects/{projectID}/integrations/{integrationID}","href":"/api-reference/native/integrations/delete-integration-setup-and-revoke-its-capabilities"},{"title":"List integration conversation subscriptions","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/integrations/{integrationID}/subscriptions","href":"/api-reference/native/integrations/list-integration-conversation-subscriptions"},{"title":"Attach an agent to an integration conversation","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/integrations/{integrationID}/subscriptions","href":"/api-reference/native/integrations/attach-an-agent-to-an-integration-conversation"},{"title":"Stop forwarding an integration conversation to an agent","openapi":"/api-reference/openapi.yaml delete /orgs/{orgID}/projects/{projectID}/integrations/{integrationID}/subscriptions/{subscriptionID}","href":"/api-reference/native/integrations/stop-forwarding-an-integration-conversation-to-an-agent"},{"title":"Verify and configure integration credentials","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/integrations/{integrationID}/setup","href":"/api-reference/native/integrations/verify-and-configure-integration-credentials"},{"title":"Disconnect this integration without deleting its configuration","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/integrations/{integrationID}/disconnect","href":"/api-reference/native/integrations/disconnect-this-integration-without-deleting-its-configuration"},{"title":"List repositories a GitHub integration can access","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/integrations/{integrationID}/github-repositories","href":"/api-reference/native/integrations/list-repositories-a-github-integration-can-access"},{"title":"List installed integration implementations and their capabilities","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/integration-definitions","href":"/api-reference/native/integrations/list-installed-integration-implementations-and-their-capabilities"}]},{"group":"Machines","pages":[{"title":"List an agent's pooled machines","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/agents/{agentID}/machines","href":"/api-reference/native/machines/list-an-agents-pooled-machines"},{"title":"Create a persistent machine for an agent","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/agents/{agentID}/machines","href":"/api-reference/native/machines/create-a-persistent-machine-for-an-agent"},{"title":"Delete an agent's persistent machine","openapi":"/api-reference/openapi.yaml delete /orgs/{orgID}/projects/{projectID}/agents/{agentID}/machines/{machineID}","href":"/api-reference/native/machines/delete-an-agents-persistent-machine"},{"title":"List visible project machines","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/machines","href":"/api-reference/native/machines/list-visible-project-machines"},{"title":"Get machine interaction capabilities","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/machines/{machineID}/capabilities","href":"/api-reference/native/machines/get-machine-interaction-capabilities"},{"title":"Resume a paused or archived machine","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/machines/{machineID}/resume","href":"/api-reference/native/machines/resume-a-paused-or-archived-machine"},{"title":"List a machine's workspace backups","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/machines/{machineID}/backups","href":"/api-reference/native/machines/list-a-machines-workspace-backups"},{"title":"Back up a machine's workspace now","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/machines/{machineID}/backups","href":"/api-reference/native/machines/back-up-a-machines-workspace-now"},{"title":"Recreate a machine from a workspace backup","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/machines/{machineID}/restore","href":"/api-reference/native/machines/recreate-a-machine-from-a-workspace-backup"},{"title":"List project machine grants","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/machine-grants","href":"/api-reference/native/machines/list-project-machine-grants"},{"title":"Create project machine grant","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/machine-grants","href":"/api-reference/native/machines/create-project-machine-grant"},{"title":"Delete project machine grant","openapi":"/api-reference/openapi.yaml delete /orgs/{orgID}/projects/{projectID}/machine-grants/{grantID}","href":"/api-reference/native/machines/delete-project-machine-grant"},{"title":"List visible machines","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/machines","href":"/api-reference/native/machines/list-visible-machines"},{"title":"Create machine","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/machines","href":"/api-reference/native/machines/create-machine"},{"title":"Connect a BYO machine","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/machines/connect","href":"/api-reference/native/machines/connect-a-byo-machine"},{"title":"Get machine","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/machines/{machineID}","href":"/api-reference/native/machines/get-machine"},{"title":"Delete machine","openapi":"/api-reference/openapi.yaml delete /orgs/{orgID}/machines/{machineID}","href":"/api-reference/native/machines/delete-machine"},{"title":"Update machine execution defaults","openapi":"/api-reference/openapi.yaml patch /orgs/{orgID}/machines/{machineID}","href":"/api-reference/native/machines/update-machine-execution-defaults"},{"title":"List byo machine daemon tokens","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/machines/{machineID}/daemon-tokens","href":"/api-reference/native/machines/list-byo-machine-daemon-tokens"},{"title":"Create byo machine daemon token","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/machines/{machineID}/daemon-tokens","href":"/api-reference/native/machines/create-byo-machine-daemon-token"},{"title":"Revoke machine daemon token","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/machines/{machineID}/daemon-tokens/{tokenID}/revoke","href":"/api-reference/native/machines/revoke-machine-daemon-token"}]},{"group":"Interactions","pages":[{"title":"List agent interactions","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/agents/{agentID}/interactions","href":"/api-reference/native/interactions/list-agent-interactions"},{"title":"Resolve agent interaction","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/agents/{agentID}/interactions/{interactionID}/resolve","href":"/api-reference/native/interactions/resolve-agent-interaction"}]},{"group":"Files","pages":[{"title":"List files","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/files","href":"/api-reference/native/files/list-files"},{"title":"Upload a file","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/files","href":"/api-reference/native/files/upload-a-file"},{"title":"Get file metadata","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/files/{fileID}","href":"/api-reference/native/files/get-file-metadata"},{"title":"Delete a file","openapi":"/api-reference/openapi.yaml delete /orgs/{orgID}/projects/{projectID}/files/{fileID}","href":"/api-reference/native/files/delete-a-file"},{"title":"Download a file","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/files/{fileID}/content","href":"/api-reference/native/files/download-a-file"},{"title":"List session file resources","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/agents/{agentID}/sessions/{sessionID}/resources","href":"/api-reference/native/files/list-session-file-resources"},{"title":"Mount a file into a session","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/agents/{agentID}/sessions/{sessionID}/resources","href":"/api-reference/native/files/mount-a-file-into-a-session"},{"title":"Unmount a file from a session","openapi":"/api-reference/openapi.yaml delete /orgs/{orgID}/projects/{projectID}/agents/{agentID}/sessions/{sessionID}/resources/{resourceID}","href":"/api-reference/native/files/unmount-a-file-from-a-session"},{"title":"Promote a session artifact to a file","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/agents/{agentID}/sessions/{sessionID}/artifacts/{artifactID}/promote","href":"/api-reference/native/files/promote-a-session-artifact-to-a-file"}]},{"group":"Desktops","pages":[{"title":"Create a desktop session","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/machines/{machineID}/desktop-sessions","href":"/api-reference/native/desktops/create-a-desktop-session"},{"title":"Get a desktop session","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/machines/{machineID}/desktop-sessions/{desktopSessionID}","href":"/api-reference/native/desktops/get-a-desktop-session"},{"title":"Close a desktop session","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/machines/{machineID}/desktop-sessions/{desktopSessionID}/close","href":"/api-reference/native/desktops/close-a-desktop-session"},{"title":"Get desktop control status","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/machines/{machineID}/desktop-sessions/{desktopSessionID}/control","href":"/api-reference/native/desktops/get-desktop-control-status"},{"title":"Acquire desktop control","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/machines/{machineID}/desktop-sessions/{desktopSessionID}/control/acquire","href":"/api-reference/native/desktops/acquire-desktop-control"},{"title":"Renew desktop control","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/machines/{machineID}/desktop-sessions/{desktopSessionID}/control/renew","href":"/api-reference/native/desktops/renew-desktop-control"},{"title":"Release desktop control","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/machines/{machineID}/desktop-sessions/{desktopSessionID}/control/release","href":"/api-reference/native/desktops/release-desktop-control"},{"title":"Hand control back","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/machines/{machineID}/desktop-sessions/{desktopSessionID}/control/handback","href":"/api-reference/native/desktops/hand-control-back"},{"title":"Capture the desktop","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/machines/{machineID}/desktop-sessions/{desktopSessionID}/screenshot","href":"/api-reference/native/desktops/capture-the-desktop"},{"title":"Send desktop input","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/machines/{machineID}/desktop-sessions/{desktopSessionID}/actions","href":"/api-reference/native/desktops/send-desktop-input"},{"title":"Observe the desktop as the agent","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/machines/{machineID}/desktop-sessions/{desktopSessionID}/agent/observe","href":"/api-reference/native/desktops/observe-the-desktop-as-the-agent"},{"title":"Resume the agent after a takeover","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/machines/{machineID}/desktop-sessions/{desktopSessionID}/agent/resume","href":"/api-reference/native/desktops/resume-the-agent-after-a-takeover"},{"title":"Submit an agent desktop action","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/machines/{machineID}/desktop-sessions/{desktopSessionID}/agent/actions","href":"/api-reference/native/desktops/submit-an-agent-desktop-action"},{"title":"Confirm a pending agent action","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/machines/{machineID}/desktop-sessions/{desktopSessionID}/agent/actions/{pendingID}/confirm","href":"/api-reference/native/desktops/confirm-a-pending-agent-action"}]},{"group":"Terminals","pages":[{"title":"List terminal sessions","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/machines/{machineID}/terminal-sessions","href":"/api-reference/native/terminals/list-terminal-sessions"},{"title":"Create a terminal session","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/machines/{machineID}/terminal-sessions","href":"/api-reference/native/terminals/create-a-terminal-session"},{"title":"Get a terminal session","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/machines/{machineID}/terminal-sessions/{terminalSessionID}","href":"/api-reference/native/terminals/get-a-terminal-session"},{"title":"Close a terminal session","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/machines/{machineID}/terminal-sessions/{terminalSessionID}/close","href":"/api-reference/native/terminals/close-a-terminal-session"},{"title":"Mint a terminal connection ticket","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/machines/{machineID}/terminal-sessions/{terminalSessionID}/connection-ticket","href":"/api-reference/native/terminals/mint-a-terminal-connection-ticket"}]},{"group":"Actors","pages":[{"title":"List project actors","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/actors","href":"/api-reference/native/actors/list-project-actors"},{"title":"Upsert an external actor","openapi":"/api-reference/openapi.yaml put /orgs/{orgID}/projects/{projectID}/actors","href":"/api-reference/native/actors/upsert-an-external-actor"},{"title":"Get a project actor","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/actors/{actorID}","href":"/api-reference/native/actors/get-a-project-actor"}]},{"group":"Models","pages":[{"title":"List model provider configs","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/model-provider-configs","href":"/api-reference/native/models/list-model-provider-configs"},{"title":"Create model provider config","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/model-provider-configs","href":"/api-reference/native/models/create-model-provider-config"},{"title":"Get model provider config","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/model-provider-configs/{modelProviderConfigID}","href":"/api-reference/native/models/get-model-provider-config"},{"title":"Update model provider config","openapi":"/api-reference/openapi.yaml put /orgs/{orgID}/model-provider-configs/{modelProviderConfigID}","href":"/api-reference/native/models/update-model-provider-config"},{"title":"Delete model provider config","openapi":"/api-reference/openapi.yaml delete /orgs/{orgID}/model-provider-configs/{modelProviderConfigID}","href":"/api-reference/native/models/delete-model-provider-config"},{"title":"Get model catalog","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/model-provider-configs/{modelProviderConfigID}/model-catalog","href":"/api-reference/native/models/get-model-catalog"},{"title":"List configured models","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/model-provider-configs/{modelProviderConfigID}/models","href":"/api-reference/native/models/list-configured-models"},{"title":"Create configured model","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/model-provider-configs/{modelProviderConfigID}/models","href":"/api-reference/native/models/create-configured-model"},{"title":"Update configured model","openapi":"/api-reference/openapi.yaml put /orgs/{orgID}/model-provider-configs/{modelProviderConfigID}/models/{configuredModelID}","href":"/api-reference/native/models/update-configured-model"},{"title":"Delete configured model","openapi":"/api-reference/openapi.yaml delete /orgs/{orgID}/model-provider-configs/{modelProviderConfigID}/models/{configuredModelID}","href":"/api-reference/native/models/delete-configured-model"},{"title":"List project model grants","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/model-grants","href":"/api-reference/native/models/list-project-model-grants"},{"title":"Create project model grant","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/model-grants","href":"/api-reference/native/models/create-project-model-grant"},{"title":"Delete project model grant","openapi":"/api-reference/openapi.yaml delete /orgs/{orgID}/projects/{projectID}/model-grants/{modelGrantID}","href":"/api-reference/native/models/delete-project-model-grant"},{"title":"Update project model grant","openapi":"/api-reference/openapi.yaml patch /orgs/{orgID}/projects/{projectID}/model-grants/{modelGrantID}","href":"/api-reference/native/models/update-project-model-grant"}]},{"group":"Machine Pools","pages":[{"title":"List machine pools","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/machine-pools","href":"/api-reference/native/machine-pools/list-machine-pools"},{"title":"Create machine pool","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/machine-pools","href":"/api-reference/native/machine-pools/create-machine-pool"},{"title":"Check machine pool connection","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/machine-pools/check-connection","href":"/api-reference/native/machine-pools/check-machine-pool-connection"},{"title":"Get machine pool","description":"Returns one machine pool's configuration and current usage: provider, default machine settings, CPU, memory, and machine-count limits, and idle deletion policy.","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/machine-pools/{poolID}","href":"/api-reference/native/machine-pools/get-machine-pool"},{"title":"Update machine pool","openapi":"/api-reference/openapi.yaml put /orgs/{orgID}/machine-pools/{poolID}","href":"/api-reference/native/machine-pools/update-machine-pool"},{"title":"Delete machine pool","description":"Deletes the machine pool and its pooled machines, revokes generated machine grants and project machine-pool grants, and stops processes that depended on those grants. Deleting a cluster-managed machine pool is rejected with 409 Conflict; there are no other dependency blockers.","openapi":"/api-reference/openapi.yaml delete /orgs/{orgID}/machine-pools/{poolID}","href":"/api-reference/native/machine-pools/delete-machine-pool"},{"title":"List project machine pool grants","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/machine-pool-grants","href":"/api-reference/native/machine-pools/list-project-machine-pool-grants"},{"title":"Create project machine pool grant","openapi":"/api-reference/openapi.yaml post /orgs/{orgID}/projects/{projectID}/machine-pool-grants","href":"/api-reference/native/machine-pools/create-project-machine-pool-grant"},{"title":"Get project machine pool grant","openapi":"/api-reference/openapi.yaml get /orgs/{orgID}/projects/{projectID}/machine-pool-grants/{poolGrantID}","href":"/api-reference/native/machine-pools/get-project-machine-pool-grant"},{"title":"Delete project machine pool grant","openapi":"/api-reference/openapi.yaml delete /orgs/{orgID}/projects/{projectID}/machine-pool-grants/{poolGrantID}","href":"/api-reference/native/machine-pools/delete-project-machine-pool-grant"},{"title":"Update project machine pool grant","openapi":"/api-reference/openapi.yaml patch /orgs/{orgID}/projects/{projectID}/machine-pool-grants/{poolGrantID}","href":"/api-reference/native/machine-pools/update-project-machine-pool-grant"}]}]},{"group":"Managed Agents extensions","pages":[{"group":"API Reference","pages":[{"title":"Mint a desktop watch ticket for a session (BMA extension)","openapi":"/api-reference/managed-agents-extensions.openapi.yaml get /v1/sessions/{session_id}/desktop/stream","href":"/api-reference/extensions/mint-a-desktop-watch-ticket-for-a-session-bma-extension"},{"title":"List files uploaded into the session (BMA extension)","openapi":"/api-reference/managed-agents-extensions.openapi.yaml get /v1/sessions/{session_id}/files","href":"/api-reference/extensions/list-files-uploaded-into-the-session-bma-extension"},{"title":"Upload one file into the session (BMA extension)","openapi":"/api-reference/managed-agents-extensions.openapi.yaml post /v1/sessions/{session_id}/files","href":"/api-reference/extensions/upload-one-file-into-the-session-bma-extension"},{"title":"Download one session file (BMA extension)","openapi":"/api-reference/managed-agents-extensions.openapi.yaml get /v1/sessions/{session_id}/files/{file_id}/content","href":"/api-reference/extensions/download-one-session-file-bma-extension"},{"title":"List the session's mounted file resources (BMA extension)","openapi":"/api-reference/managed-agents-extensions.openapi.yaml get /v1/sessions/{session_id}/resources","href":"/api-reference/extensions/list-the-sessions-mounted-file-resources-bma-extension"},{"title":"Mount one project file into the session (BMA extension)","openapi":"/api-reference/managed-agents-extensions.openapi.yaml post /v1/sessions/{session_id}/resources","href":"/api-reference/extensions/mount-one-project-file-into-the-session-bma-extension"},{"title":"Unmount one file resource from the session (BMA extension)","openapi":"/api-reference/managed-agents-extensions.openapi.yaml delete /v1/sessions/{session_id}/resources/{resource_id}","href":"/api-reference/extensions/unmount-one-file-resource-from-the-session-bma-extension"}]}]}]},{"tab":"Self-hosting","pages":[{"title":"Self-hosting","href":"/self-hosting/overview"}]},{"tab":"Changelog \u0026 roadmap","pages":[{"title":"Changelog \u0026 roadmap","href":"/changelog"}]}]},{"language":"zh","banner":{"content":"BMA 处于**抢先体验**阶段。各页面会把每项能力标注为 Available、Preview 或 Roadmap。","dismissible":true},"pages":[{"title":"zh","href":"/zh/api-reference/native/machine-pools/update-machine-pool"}]}]},"basePath":"","title":"Update machine pool - BMA Developer Docs","buildId":"223f4d0f93b3","dynamics":["10e4515597","c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["BannerMarkdown-CCxzie0y.js","dist-C8phz87P.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","clsx-DfU2JnNK.js","html-void-elements-mCSPHezU.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","OpenApiReferenceProvider-DLP13Bsa.js","utils-LK_Rx0Zu.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-BSq7eEfK.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-Bchcwpn2.js","snippetPresets-B-BsDEmk.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-CNoZnlAG.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-DqKAmR6F.js","shallow-Dq5-SwG1.js","getApiPlaygroundDisplay-B6YMrfFr.js","CodeSnippet-DvvqqrVi.js","CodeSnippets-D6Vj56PD.js","Page-03hAnTHd.js","getPastedJson-BKlc8wx2.js","icon-HMNWawTa.js","MethodPill-Dd_Z_kqi.js","DuplicateIcon-DK5o2DOi.js","createIcon-BhUMOhLi.js","DynamicMarkdown-CoGC92CO.js","SectionHeading-K9MvhMbX.js","axios-vUo_bRtp.js","Markdown-DqqHYs0x.js","AssistantPageLink-BVRLOPpC.js"]}