import Runloop from '@runloop/api-client';const client = new Runloop({ bearerToken: process.env['RUNLOOP_API_KEY'], // This is the default and can be omitted});const devboxView = await client.devboxes.create();console.log(devboxView.id);
import os
from runloop_api_client import Runloop
client = Runloop(
bearer_token=os.environ.get("RUNLOOP_API_KEY"), # This is the default and can be omitted
)
devbox_view = client.devboxes.create()
print(devbox_view.id)
Create a Devbox and begin the boot process. Standard Devboxes initially report the ‘provisioning’ state. FLEX Devboxes initially report the ‘queued’ state while waiting for infrastructure allocation, then transition to ‘provisioning’ once assigned to a node. The Devbox transitions to ‘initializing’ while the booted Devbox runs Runloop or user-defined setup scripts, then to ‘running’ when it is ready for use.
POST
/
v1
/
devboxes
JavaScript
import Runloop from '@runloop/api-client';const client = new Runloop({ bearerToken: process.env['RUNLOOP_API_KEY'], // This is the default and can be omitted});const devboxView = await client.devboxes.create();console.log(devboxView.id);
import os
from runloop_api_client import Runloop
client = Runloop(
bearer_token=os.environ.get("RUNLOOP_API_KEY"), # This is the default and can be omitted
)
devbox_view = client.devboxes.create()
print(devbox_view.id)
(Optional) Map of environment variable names to secret names. The secret values will be securely injected as environment variables in the Devbox. Example: {"DB_PASS": "DATABASE_PASSWORD"} sets environment variable 'DB_PASS' to the value of secret 'DATABASE_PASSWORD'.
(Optional) When specified, the Devbox will run this script as its main executable. The devbox lifecycle will be bound to entrypoint, shutting down when the process is complete.
Blueprint ID to use for the Devbox. If none set, the Devbox will be created with the default Runloop Devbox image. Only one of (Snapshot ID, Blueprint ID, Blueprint name) should be specified.
Name of Blueprint to use for the Devbox. When set, this will load the latest successfully built Blueprint with the given name. Only one of (Snapshot ID, Blueprint ID, Blueprint name) should be specified.
(Optional) Configuration for creating a V2 tunnel at Devbox launch time. When specified, a tunnel will be automatically provisioned and the tunnel details will be included in the Devbox response.
(Optional) Agent gateway specifications for credential proxying. Map key is the environment variable prefix (e.g., 'GWS_ANTHROPIC'). The agent gateway will proxy requests to external APIs using the specified credential without exposing the real API key. Example: {'GWS_ANTHROPIC': {'gateway': 'anthropic', 'secret': 'my_claude_key'}}
[Beta] (Optional) MCP specifications for MCP server access. Map key is the environment variable name for the MCP token envelope. Each spec links an MCP config to a secret. The devbox will also receive RL_MCP_URL for the MCP hub endpoint. Example: {'MCP_SECRET': {'mcp_config': 'github-readonly', 'secret': 'MY_GITHUB_TOKEN'}}
Show child attributes
Response
200 - application/json
OK
A Devbox represents a virtual development environment. It is an isolated sandbox that can be given to agents and used to run arbitrary code such as AI generated code.
[Beta] MCP specifications configured for this devbox. Map key is the environment variable name for the MCP token envelope. Each spec links an MCP config to a secret for MCP server access through the MCP hub.
Show child attributes
Was this page helpful?
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Runloop AI Docs","colors":{"primary":"#118362","light":"#118362","dark":"#118362"},"logo":{"light":"https://mintcdn.com/runloopai/Us2eHV2_UnUki3-j/logo/runloop-logo.png?fit=max\u0026auto=format\u0026n=Us2eHV2_UnUki3-j\u0026q=85\u0026s=f3caaf67e1c45f535be611579f752bad","dark":"https://mintcdn.com/runloopai/Us2eHV2_UnUki3-j/logo/runloop-logo.png?fit=max\u0026auto=format\u0026n=Us2eHV2_UnUki3-j\u0026q=85\u0026s=f3caaf67e1c45f535be611579f752bad","href":"https://runloop.ai"},"favicon":"https://mintcdn.com/runloopai/fWPbnslqIgBTzYjS/icon.svg?fit=max\u0026auto=format\u0026n=fWPbnslqIgBTzYjS\u0026q=85\u0026s=42689e938126fab53c09e6aefd2125a7","appearance":{"default":"dark"},"background":{"color":{"light":"#F9F9F9","dark":"#191B2E"}},"navbar":{"links":[{"href":"mailto:support@runloop.ai","label":"Support"}],"primary":{"type":"button","label":"Dashboard","href":"https://platform.runloop.ai"}},"footer":{"socials":{"github":"https://github.com/runloopai","linkedin":"https://www.linkedin.com/company/runloopai","youtube":"https://www.youtube.com/@runloop-ai","x":"https://x.com/RunloopAI"}},"fonts":{"family":"Inter"},"styling":{"latex":false},"integrations":{"gtm":{"tagId":"G-DHKMJC9ETL"},"mixpanel":{"projectToken":"332c39ec74c2f00fba90d9e5cfd67791"},"posthog":{"apiKey":"phc_vW06f31Rk74Ey1ZbIS8Mfxx4oIQA3fIxTVn29qVr42c","sessionRecording":true}},"banner":{"content":"Runloop is winding down its services. Support for existing customers continues through November 13, 2026 at 11:59 PM PT. [Transition guides](/docs/transitions/overview).","dismissible":false},"contextual":{"options":["chatgpt","claude","copy"],"display":"header"},"interaction":{"drilldown":true},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"runloopai","hasAudioNarration":false,"actualSubdomain":"runloopai","customDomains":["docs.runloop.ai"],"gitSource":{"type":"github","owner":"runloopai","repo":"docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6add1e0f29f48133ead15d81","collectionId":"90fcf6c3-4dd4-4d17-8ab9-583c417733c2","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6add1e0f29f48133ead15d81"},"feedback":{"edits":false,"thumbs":true,"issues":false},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6add1e0f29f48133ead15d81","clientVersion":"0.0.4044","searchFilterCounts":[{"language":"default","tag":"API Reference","count":106},{"language":"default","tag":"Documentation","count":70},{"language":"default","tag":"Devbox","count":44},{"language":"default","tag":"Components","count":41},{"language":"default","tag":"Devboxes","count":22},{"language":"default","tag":"Overview","count":16},{"language":"default","tag":"axons","count":12},{"language":"default","tag":"Blueprint","count":11},{"language":"default","tag":"objects","count":9},{"language":"default","tag":"Transitions","count":8}]},"assistantConfig":{},"basePath":"","hasChatPermissions":true,"hasWebMcpPermissions":true,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"theme.css","content":"code,pre{font-size:.85rem!important;line-height:1.4!important}"}],"page":{"pagePath":"api-reference/devbox/create-a-devbox","slug":"/api-reference/devbox/create-a-devbox","pageMetadata":{"title":"Create a Devbox.","description":"Create a Devbox and begin the boot process. Standard Devboxes initially report the 'provisioning' state. FLEX Devboxes initially report the 'queued' state while waiting for infrastructure allocation, then transition to 'provisioning' once assigned to a node. The Devbox transitions to 'initializing' while the booted Devbox runs Runloop or user-defined setup scripts, then to 'running' when it is ready for use.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/devboxes","href":"/api-reference/devbox/create-a-devbox","autogeneratedByOpenApi":true},"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: \"Create a Devbox and begin the boot process. Standard Devboxes initially report the ‘provisioning’ state. FLEX Devboxes initially report the ‘queued’ state while waiting for infrastructure allocation, then transition to ‘provisioning’ once assigned to a node. The Devbox transitions to ‘initializing’ while the booted Devbox runs Runloop or user-defined setup scripts, then to ‘running’ when it is ready for use.\"\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":{"title":"Create a Devbox.","description":"Create a Devbox and begin the boot process. Standard Devboxes initially report the 'provisioning' state. FLEX Devboxes initially report the 'queued' state while waiting for infrastructure allocation, then transition to 'provisioning' once assigned to a node. The Devbox transitions to 'initializing' while the booted Devbox runs Runloop or user-defined setup scripts, then to 'running' when it is ready for use.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/devboxes","href":"/api-reference/devbox/create-a-devbox","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":["/_mintlify/custom/runloopai/70ccb22e7cd1529e/scripts/generate-changelog.js","/_mintlify/custom/runloopai/6440a26b64c8b606/scripts/generate-llms-index.js"],"openApiReferenceData":{"operation":{"tags":["Devbox","Devbox-Lifecycle"],"summary":"Create a Devbox.","description":"Create a Devbox and begin the boot process. Standard Devboxes initially report the 'provisioning' state. FLEX Devboxes initially report the 'queued' state while waiting for infrastructure allocation, then transition to 'provisioning' once assigned to a node. The Devbox transitions to 'initializing' while the booted Devbox runs Runloop or user-defined setup scripts, then to 'running' when it is ready for use.","operationId":"createDevbox","requestBody":"8e28f612-5fdb-475e-8b20-542d7d0b126f","responses":{"200":"55b0d9f7-5148-4b2a-aa53-fe2bba0f944f"},"x-codeSamples":[{"lang":"JavaScript","source":"import Runloop from '@runloop/api-client';\n\nconst client = new Runloop({\n bearerToken: process.env['RUNLOOP_API_KEY'], // This is the default and can be omitted\n});\n\nconst devboxView = await client.devboxes.create();\n\nconsole.log(devboxView.id);"},{"lang":"Python","source":"import os\nfrom runloop_api_client import Runloop\n\nclient = Runloop(\n bearer_token=os.environ.get(\"RUNLOOP_API_KEY\"), # This is the default and can be omitted\n)\ndevbox_view = client.devboxes.create()\nprint(devbox_view.id)"}],"method":"post","type":"path","servers":["1d631bad-0fd6-4617-a8c4-8377826d815d"],"security":["8ce27edf-f079-415e-937e-65fded4f9d46"],"path":"/v1/devboxes","baseUrlOptions":["https://api.runloop.ai"],"title":"Create a Devbox.","codeSamples":[{"lang":"JavaScript","source":"import Runloop from '@runloop/api-client';\n\nconst client = new Runloop({\n bearerToken: process.env['RUNLOOP_API_KEY'], // This is the default and can be omitted\n});\n\nconst devboxView = await client.devboxes.create();\n\nconsole.log(devboxView.id);"},{"lang":"Python","source":"import os\nfrom runloop_api_client import Runloop\n\nclient = Runloop(\n bearer_token=os.environ.get(\"RUNLOOP_API_KEY\"), # This is the default and can be omitted\n)\ndevbox_view = client.devboxes.create()\nprint(devbox_view.id)"}],"requiredOnlyExamples":false,"requestExampleType":"codeSamples","responseExampleType":"generated"},"dependencies":{"parameters":{},"requestBody":{"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"oneOf":[{"description":"(Optional) A user specified name to give the Devbox.","type":"string","uniqueKey":"name.oneOf.0","typeLabel":"string"},{"description":"(Optional) A user specified name to give the Devbox.","type":"null","uniqueKey":"name.oneOf.1","typeLabel":"null"}],"uniqueKey":"name","typeLabel":"string | null"},"environment_variables":{"oneOf":[{"additionalProperties":{"type":"string","uniqueKey":"environment_variables.oneOf.0.additionalProperties","typeLabel":"string"},"description":"(Optional) Environment variables used to configure your Devbox.","type":"object","uniqueKey":"environment_variables.oneOf.0","typeLabel":"object"},{"additionalProperties":{"type":"string","uniqueKey":"environment_variables.oneOf.1.additionalProperties","typeLabel":"string"},"description":"(Optional) Environment variables used to configure your Devbox.","type":"null","uniqueKey":"environment_variables.oneOf.1","typeLabel":"null"}],"uniqueKey":"environment_variables","typeLabel":"object | null"},"secrets":{"oneOf":[{"additionalProperties":{"type":"string","uniqueKey":"secrets.oneOf.0.additionalProperties","typeLabel":"string"},"description":"(Optional) Map of environment variable names to secret names. The secret values will be securely injected as environment variables in the Devbox. Example: {\"DB_PASS\": \"DATABASE_PASSWORD\"} sets environment variable 'DB_PASS' to the value of secret 'DATABASE_PASSWORD'.","type":"object","uniqueKey":"secrets.oneOf.0","typeLabel":"object"},{"additionalProperties":{"type":"string","uniqueKey":"secrets.oneOf.1.additionalProperties","typeLabel":"string"},"description":"(Optional) Map of environment variable names to secret names. The secret values will be securely injected as environment variables in the Devbox. Example: {\"DB_PASS\": \"DATABASE_PASSWORD\"} sets environment variable 'DB_PASS' to the value of secret 'DATABASE_PASSWORD'.","type":"null","uniqueKey":"secrets.oneOf.1","typeLabel":"null"}],"uniqueKey":"secrets","typeLabel":"object | null"},"file_mounts":{"oneOf":[{"additionalProperties":{"type":"string","uniqueKey":"file_mounts.oneOf.0.additionalProperties","typeLabel":"string"},"description":"Map of paths and file contents to write before setup. Use mounts instead.","type":"object","uniqueKey":"file_mounts.oneOf.0","typeLabel":"object"},{"additionalProperties":{"type":"string","uniqueKey":"file_mounts.oneOf.1.additionalProperties","typeLabel":"string"},"description":"Map of paths and file contents to write before setup. Use mounts instead.","type":"null","uniqueKey":"file_mounts.oneOf.1","typeLabel":"null"}],"uniqueKey":"file_mounts","typeLabel":"object | null"},"entrypoint":{"oneOf":[{"description":"(Optional) When specified, the Devbox will run this script as its main executable. The devbox lifecycle will be bound to entrypoint, shutting down when the process is complete.","type":"string","uniqueKey":"entrypoint.oneOf.0","typeLabel":"string"},{"description":"(Optional) When specified, the Devbox will run this script as its main executable. The devbox lifecycle will be bound to entrypoint, shutting down when the process is complete.","type":"null","uniqueKey":"entrypoint.oneOf.1","typeLabel":"null"}],"uniqueKey":"entrypoint","typeLabel":"string | null"},"blueprint_id":{"oneOf":[{"description":"Blueprint ID to use for the Devbox. If none set, the Devbox will be created with the default Runloop Devbox image. Only one of (Snapshot ID, Blueprint ID, Blueprint name) should be specified.","type":"string","uniqueKey":"blueprint_id.oneOf.0","typeLabel":"string"},{"description":"Blueprint ID to use for the Devbox. If none set, the Devbox will be created with the default Runloop Devbox image. Only one of (Snapshot ID, Blueprint ID, Blueprint name) should be specified.","type":"null","uniqueKey":"blueprint_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"blueprint_id","typeLabel":"string | null"},"blueprint_name":{"oneOf":[{"description":"Name of Blueprint to use for the Devbox. When set, this will load the latest successfully built Blueprint with the given name. Only one of (Snapshot ID, Blueprint ID, Blueprint name) should be specified.","type":"string","uniqueKey":"blueprint_name.oneOf.0","typeLabel":"string"},{"description":"Name of Blueprint to use for the Devbox. When set, this will load the latest successfully built Blueprint with the given name. Only one of (Snapshot ID, Blueprint ID, Blueprint name) should be specified.","type":"null","uniqueKey":"blueprint_name.oneOf.1","typeLabel":"null"}],"uniqueKey":"blueprint_name","typeLabel":"string | null"},"launch_parameters":{"oneOf":[{"type":"object","description":"Parameters to configure the resources and launch time behavior of the Devbox.","properties":{"launch_commands":{"oneOf":[{"items":{"type":"string","uniqueKey":"launch_parameters.oneOf.0.launch_commands.oneOf.0.items.[INDEX]","typeLabel":"string"},"description":"Set of commands to be run at launch time, before the entrypoint process is run.","type":"array","uniqueKey":"launch_parameters.oneOf.0.launch_commands.oneOf.0","typeLabel":"string[]"},{"items":{"type":"string"},"description":"Set of commands to be run at launch time, before the entrypoint process is run.","type":"null","uniqueKey":"launch_parameters.oneOf.0.launch_commands.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.oneOf.0.launch_commands","typeLabel":"string[] | null"},"resource_size_request":{"oneOf":[{"type":"string","description":"Preset Devbox resources (vCPU, RAM in GiB, ephemeral disk in GiB). If not set, SMALL is used. X_SMALL: 0.5 vCPU, 1 GiB RAM, 4 GiB disk. SMALL: 1 vCPU, 2 GiB RAM, 4 GiB disk. MEDIUM: 2 vCPU, 4 GiB RAM, 8 GiB disk. LARGE: 2 vCPU, 8 GiB RAM, 16 GiB disk. X_LARGE: 4 vCPU, 16 GiB RAM, 16 GiB disk. XX_LARGE: 8 vCPU, 32 GiB RAM, 16 GiB disk. CUSTOM_SIZE: set custom_cpu_cores, custom_gb_memory, and optionally custom_disk_size.","enum":["X_SMALL","SMALL","MEDIUM","LARGE","X_LARGE","XX_LARGE","CUSTOM_SIZE"],"x-enum-descriptions":{"X_SMALL":"0.5 cpu x 1GiB memory x 4GiB disk","SMALL":"1 cpu x 2GiB memory x 4GiB disk","MEDIUM":"2 cpu x 4GiB memory x 8GiB disk","LARGE":"2 cpu x 8GiB memory x 16GiB disk","X_LARGE":"4 cpu x 16GiB memory x 16GiB disk","XX_LARGE":"8 cpu x 32GiB memory x 16GiB disk","CUSTOM_SIZE":"To choose a custom size, set this enum and also the custom_cpu_cores, custom_gb_memory, and optionally custom_disk_size in launch parameters. CPU must be 0.5, 1, or a multiple of 2 (max 16). Memory must be 1 or a multiple of 2 (max 64GiB). Disk must be a multiple of 2 (min 2GiB, max 64GiB). The cpu:memory ratio must be between 1:2 and 1:8 inclusive."},"uniqueKey":"launch_parameters.oneOf.0.resource_size_request.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","description":"Preset Devbox resources (vCPU, RAM in GiB, ephemeral disk in GiB). If not set, SMALL is used. X_SMALL: 0.5 vCPU, 1 GiB RAM, 4 GiB disk. SMALL: 1 vCPU, 2 GiB RAM, 4 GiB disk. MEDIUM: 2 vCPU, 4 GiB RAM, 8 GiB disk. LARGE: 2 vCPU, 8 GiB RAM, 16 GiB disk. X_LARGE: 4 vCPU, 16 GiB RAM, 16 GiB disk. XX_LARGE: 8 vCPU, 32 GiB RAM, 16 GiB disk. CUSTOM_SIZE: set custom_cpu_cores, custom_gb_memory, and optionally custom_disk_size.","uniqueKey":"launch_parameters.oneOf.0.resource_size_request.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.oneOf.0.resource_size_request","typeLabel":"enum\u003cstring> | null"},"available_ports":{"oneOf":[{"items":{"type":"integer","format":"int32","uniqueKey":"launch_parameters.oneOf.0.available_ports.oneOf.0.items.[INDEX]","typeLabel":"integer\u003cint32>"},"description":"[Deprecated] A list of ports to make available on the Devbox. This field is ignored.","type":"array","uniqueKey":"launch_parameters.oneOf.0.available_ports.oneOf.0","typeLabel":"integer\u003cint32>[]"},{"items":{"type":"integer","format":"int32"},"description":"[Deprecated] A list of ports to make available on the Devbox. This field is ignored.","type":"null","uniqueKey":"launch_parameters.oneOf.0.available_ports.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.oneOf.0.available_ports","typeLabel":"integer\u003cint32>[] | null"},"keep_alive_time_seconds":{"oneOf":[{"format":"int64","description":"Time in seconds after which Devbox will automatically shutdown. Default is 1 hour. Maximum is 48 hours (172800 seconds).","type":"integer","uniqueKey":"launch_parameters.oneOf.0.keep_alive_time_seconds.oneOf.0","typeLabel":"integer\u003cint64>"},{"format":"int64","description":"Time in seconds after which Devbox will automatically shutdown. Default is 1 hour. Maximum is 48 hours (172800 seconds).","type":"null","uniqueKey":"launch_parameters.oneOf.0.keep_alive_time_seconds.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.oneOf.0.keep_alive_time_seconds","typeLabel":"integer\u003cint64> | null"},"after_idle":{"oneOf":[{"type":"object","description":"Configure Devbox lifecycle based on idle activity. If after_idle is set, Devbox will ignore keep_alive_time_seconds. If both after_idle and lifecycle.after_idle are set, they must have the same value. Use lifecycle.after_idle instead.","required":["idle_time_seconds","on_idle"],"properties":{"idle_time_seconds":{"type":"integer","format":"int32","description":"After idle_time_seconds, on_idle action will be taken.","isRequired":true,"uniqueKey":"launch_parameters.oneOf.0.after_idle.oneOf.0.idle_time_seconds","typeLabel":"integer\u003cint32>"},"on_idle":{"type":"string","enum":["shutdown","suspend"],"description":"Action to take after Devbox becomes idle.","x-enum-descriptions":{"shutdown":"Shutdown the Devbox.","suspend":"Suspend the Devbox."},"isRequired":true,"uniqueKey":"launch_parameters.oneOf.0.after_idle.oneOf.0.on_idle","typeLabel":"enum\u003cstring>"}},"uniqueKey":"launch_parameters.oneOf.0.after_idle.oneOf.0","typeLabel":"object"},{"type":"null","description":"Configure Devbox lifecycle based on idle activity. If after_idle is set, Devbox will ignore keep_alive_time_seconds. If both after_idle and lifecycle.after_idle are set, they must have the same value. Use lifecycle.after_idle instead.","uniqueKey":"launch_parameters.oneOf.0.after_idle.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.oneOf.0.after_idle","typeLabel":"object | null"},"custom_cpu_cores":{"oneOf":[{"format":"double","description":"Custom CPU cores. Must be 0.5, 1, or a multiple of 2. Max is 16.","type":"number","uniqueKey":"launch_parameters.oneOf.0.custom_cpu_cores.oneOf.0","typeLabel":"number\u003cdouble>"},{"format":"double","description":"Custom CPU cores. Must be 0.5, 1, or a multiple of 2. Max is 16.","type":"null","uniqueKey":"launch_parameters.oneOf.0.custom_cpu_cores.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.oneOf.0.custom_cpu_cores","typeLabel":"number\u003cdouble> | null"},"custom_gb_memory":{"oneOf":[{"format":"int32","description":"Custom memory size in GiB. Must be 1 or a multiple of 2. Max is 64GiB.","type":"integer","uniqueKey":"launch_parameters.oneOf.0.custom_gb_memory.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","description":"Custom memory size in GiB. Must be 1 or a multiple of 2. Max is 64GiB.","type":"null","uniqueKey":"launch_parameters.oneOf.0.custom_gb_memory.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.oneOf.0.custom_gb_memory","typeLabel":"integer\u003cint32> | null"},"custom_disk_size":{"oneOf":[{"format":"int32","description":"Custom disk size in GiB. Must be a multiple of 2. Min is 2GiB, max is 64GiB.","type":"integer","uniqueKey":"launch_parameters.oneOf.0.custom_disk_size.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","description":"Custom disk size in GiB. Must be a multiple of 2. Min is 2GiB, max is 64GiB.","type":"null","uniqueKey":"launch_parameters.oneOf.0.custom_disk_size.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.oneOf.0.custom_disk_size","typeLabel":"integer\u003cint32> | null"},"architecture":{"oneOf":[{"type":"string","description":"The target architecture for the Devbox. If unset, defaults to x86_64.","enum":["x86_64","arm64"],"uniqueKey":"launch_parameters.oneOf.0.architecture.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","description":"The target architecture for the Devbox. If unset, defaults to x86_64.","uniqueKey":"launch_parameters.oneOf.0.architecture.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.oneOf.0.architecture","typeLabel":"enum\u003cstring> | null"},"user_parameters":{"oneOf":[{"type":"object","description":"Specify the user for execution on Devbox. If not set, default `user` will be used.","required":["username","uid"],"properties":{"username":{"type":"string","description":"Username for the Linux user.","isRequired":true,"uniqueKey":"launch_parameters.oneOf.0.user_parameters.oneOf.0.username","typeLabel":"string"},"uid":{"type":"integer","format":"int32","description":"User ID (UID) for the Linux user. Must be a non-negative integer.","isRequired":true,"uniqueKey":"launch_parameters.oneOf.0.user_parameters.oneOf.0.uid","typeLabel":"integer\u003cint32>"}},"uniqueKey":"launch_parameters.oneOf.0.user_parameters.oneOf.0","typeLabel":"object"},{"type":"null","description":"Specify the user for execution on Devbox. If not set, default `user` will be used.","uniqueKey":"launch_parameters.oneOf.0.user_parameters.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.oneOf.0.user_parameters","typeLabel":"object | null"},"required_services":{"oneOf":[{"items":{"type":"string","uniqueKey":"launch_parameters.oneOf.0.required_services.oneOf.0.items.[INDEX]","typeLabel":"string"},"description":"A list of ContainerizedService names to be started when a Devbox is created. A valid ContainerizedService must be specified in Blueprint to be started.","type":"array","uniqueKey":"launch_parameters.oneOf.0.required_services.oneOf.0","typeLabel":"string[]"},{"items":{"type":"string"},"description":"A list of ContainerizedService names to be started when a Devbox is created. A valid ContainerizedService must be specified in Blueprint to be started.","type":"null","uniqueKey":"launch_parameters.oneOf.0.required_services.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.oneOf.0.required_services","typeLabel":"string[] | null"},"network_policy_id":{"oneOf":[{"description":"(Optional) ID of the network policy to apply to Devboxes launched with these parameters. When set on a Blueprint launch parameters, Devboxes created from it will inherit this policy unless explicitly overridden.","type":"string","uniqueKey":"launch_parameters.oneOf.0.network_policy_id.oneOf.0","typeLabel":"string"},{"description":"(Optional) ID of the network policy to apply to Devboxes launched with these parameters. When set on a Blueprint launch parameters, Devboxes created from it will inherit this policy unless explicitly overridden.","type":"null","uniqueKey":"launch_parameters.oneOf.0.network_policy_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.oneOf.0.network_policy_id","typeLabel":"string | null"},"lifecycle":{"oneOf":[{"type":"object","description":"Lifecycle configuration for idle and resume behavior. Configure idle policy via lifecycle.after_idle (if both this and the top-level after_idle are set, they must match), resume triggers via lifecycle.resume_triggers, and optional lifecycle hooks via lifecycle.lifecycle_hooks.","properties":{"after_idle":{"oneOf":[{"type":"object","description":"Configure Devbox lifecycle based on idle activity. If both this and the top-level after_idle are set, they must have the same value. Prefer this field for new integrations.","required":["idle_time_seconds","on_idle"],"properties":{"idle_time_seconds":{"type":"integer","format":"int32","description":"After idle_time_seconds, on_idle action will be taken.","isRequired":true,"uniqueKey":"launch_parameters.oneOf.0.lifecycle.oneOf.0.after_idle.oneOf.0.idle_time_seconds","typeLabel":"integer\u003cint32>"},"on_idle":{"type":"string","enum":["shutdown","suspend"],"description":"Action to take after Devbox becomes idle.","x-enum-descriptions":{"shutdown":"Shutdown the Devbox.","suspend":"Suspend the Devbox."},"isRequired":true,"uniqueKey":"launch_parameters.oneOf.0.lifecycle.oneOf.0.after_idle.oneOf.0.on_idle","typeLabel":"enum\u003cstring>"}},"uniqueKey":"launch_parameters.oneOf.0.lifecycle.oneOf.0.after_idle.oneOf.0","typeLabel":"object"},{"type":"null","description":"Configure Devbox lifecycle based on idle activity. If both this and the top-level after_idle are set, they must have the same value. Prefer this field for new integrations.","uniqueKey":"launch_parameters.oneOf.0.lifecycle.oneOf.0.after_idle.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.oneOf.0.lifecycle.oneOf.0.after_idle","typeLabel":"object | null"},"resume_triggers":{"oneOf":[{"type":"object","description":"Triggers that can resume a suspended Devbox.","properties":{"http":{"oneOf":[{"description":"When true, HTTP traffic to a suspended Devbox via tunnel will trigger a resume.","type":"boolean","uniqueKey":"launch_parameters.oneOf.0.lifecycle.oneOf.0.resume_triggers.oneOf.0.http.oneOf.0","typeLabel":"boolean"},{"description":"When true, HTTP traffic to a suspended Devbox via tunnel will trigger a resume.","type":"null","uniqueKey":"launch_parameters.oneOf.0.lifecycle.oneOf.0.resume_triggers.oneOf.0.http.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.oneOf.0.lifecycle.oneOf.0.resume_triggers.oneOf.0.http","typeLabel":"boolean | null"},"axon_event":{"oneOf":[{"description":"When true, axon events targeting a suspended Devbox will trigger a resume.","type":"boolean","uniqueKey":"launch_parameters.oneOf.0.lifecycle.oneOf.0.resume_triggers.oneOf.0.axon_event.oneOf.0","typeLabel":"boolean"},{"description":"When true, axon events targeting a suspended Devbox will trigger a resume.","type":"null","uniqueKey":"launch_parameters.oneOf.0.lifecycle.oneOf.0.resume_triggers.oneOf.0.axon_event.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.oneOf.0.lifecycle.oneOf.0.resume_triggers.oneOf.0.axon_event","typeLabel":"boolean | null"}},"uniqueKey":"launch_parameters.oneOf.0.lifecycle.oneOf.0.resume_triggers.oneOf.0","typeLabel":"object"},{"type":"null","description":"Triggers that can resume a suspended Devbox.","uniqueKey":"launch_parameters.oneOf.0.lifecycle.oneOf.0.resume_triggers.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.oneOf.0.lifecycle.oneOf.0.resume_triggers","typeLabel":"object | null"},"lifecycle_hooks":{"oneOf":[{"type":"object","description":"Optional lifecycle hooks. suspend_commands run through the suspend path before the Devbox suspends; see launch_commands for work on every startup.","properties":{"suspend_commands":{"oneOf":[{"items":{"type":"string","uniqueKey":"launch_parameters.oneOf.0.lifecycle.oneOf.0.lifecycle_hooks.oneOf.0.suspend_commands.oneOf.0.items.[INDEX]","typeLabel":"string"},"description":"Commands to run through the suspend path before the Devbox suspends (e.g. cleanup, quiesce daemons).","type":"array","uniqueKey":"launch_parameters.oneOf.0.lifecycle.oneOf.0.lifecycle_hooks.oneOf.0.suspend_commands.oneOf.0","typeLabel":"string[]"},{"items":{"type":"string"},"description":"Commands to run through the suspend path before the Devbox suspends (e.g. cleanup, quiesce daemons).","type":"null","uniqueKey":"launch_parameters.oneOf.0.lifecycle.oneOf.0.lifecycle_hooks.oneOf.0.suspend_commands.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.oneOf.0.lifecycle.oneOf.0.lifecycle_hooks.oneOf.0.suspend_commands","typeLabel":"string[] | null"},"suspend_deadline_ms":{"oneOf":[{"format":"int64","description":"Deadline in milliseconds for broker drain and suspend_commands during suspend. Defaults to 30000 ms and may not exceed 60000 ms. If exceeded, suspend work is abandoned, the timeout is logged, and the Devbox still proceeds to suspend by shutting down vmagent and killing the VM.","type":"integer","uniqueKey":"launch_parameters.oneOf.0.lifecycle.oneOf.0.lifecycle_hooks.oneOf.0.suspend_deadline_ms.oneOf.0","typeLabel":"integer\u003cint64>"},{"format":"int64","description":"Deadline in milliseconds for broker drain and suspend_commands during suspend. Defaults to 30000 ms and may not exceed 60000 ms. If exceeded, suspend work is abandoned, the timeout is logged, and the Devbox still proceeds to suspend by shutting down vmagent and killing the VM.","type":"null","uniqueKey":"launch_parameters.oneOf.0.lifecycle.oneOf.0.lifecycle_hooks.oneOf.0.suspend_deadline_ms.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.oneOf.0.lifecycle.oneOf.0.lifecycle_hooks.oneOf.0.suspend_deadline_ms","typeLabel":"integer\u003cint64> | null"}},"uniqueKey":"launch_parameters.oneOf.0.lifecycle.oneOf.0.lifecycle_hooks.oneOf.0","typeLabel":"object"},{"type":"null","description":"Optional lifecycle hooks. suspend_commands run through the suspend path before the Devbox suspends; see launch_commands for work on every startup.","uniqueKey":"launch_parameters.oneOf.0.lifecycle.oneOf.0.lifecycle_hooks.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.oneOf.0.lifecycle.oneOf.0.lifecycle_hooks","typeLabel":"object | null"}},"uniqueKey":"launch_parameters.oneOf.0.lifecycle.oneOf.0","typeLabel":"object"},{"type":"null","description":"Lifecycle configuration for idle and resume behavior. Configure idle policy via lifecycle.after_idle (if both this and the top-level after_idle are set, they must match), resume triggers via lifecycle.resume_triggers, and optional lifecycle hooks via lifecycle.lifecycle_hooks.","uniqueKey":"launch_parameters.oneOf.0.lifecycle.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.oneOf.0.lifecycle","typeLabel":"object | null"},"provisioning_tier":{"oneOf":[{"type":"string","description":"(Optional, Alpha) standard is default and flex is lazily provisioned and may be pre-empted. This is an alpha feature and its behavior may change without notice.","enum":["standard","flex"],"uniqueKey":"launch_parameters.oneOf.0.provisioning_tier.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","description":"(Optional, Alpha) standard is default and flex is lazily provisioned and may be pre-empted. This is an alpha feature and its behavior may change without notice.","uniqueKey":"launch_parameters.oneOf.0.provisioning_tier.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.oneOf.0.provisioning_tier","typeLabel":"enum\u003cstring> | null"}},"uniqueKey":"launch_parameters.oneOf.0","typeLabel":"object"},{"type":"null","description":"Parameters to configure the resources and launch time behavior of the Devbox.","uniqueKey":"launch_parameters.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters","typeLabel":"object | null"},"snapshot_id":{"oneOf":[{"description":"Snapshot ID to use for the Devbox. Only one of (Snapshot ID, Blueprint ID, Blueprint name) should be specified.","type":"string","uniqueKey":"snapshot_id.oneOf.0","typeLabel":"string"},{"description":"Snapshot ID to use for the Devbox. Only one of (Snapshot ID, Blueprint ID, Blueprint name) should be specified.","type":"null","uniqueKey":"snapshot_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"snapshot_id","typeLabel":"string | null"},"metadata":{"oneOf":[{"additionalProperties":{"type":"string","uniqueKey":"metadata.oneOf.0.additionalProperties","typeLabel":"string"},"description":"User defined metadata to attach to the devbox for organization.","type":"object","uniqueKey":"metadata.oneOf.0","typeLabel":"object"},{"additionalProperties":{"type":"string","uniqueKey":"metadata.oneOf.1.additionalProperties","typeLabel":"string"},"description":"User defined metadata to attach to the devbox for organization.","type":"null","uniqueKey":"metadata.oneOf.1","typeLabel":"null"}],"uniqueKey":"metadata","typeLabel":"object | null"},"code_mounts":{"oneOf":[{"items":{"type":"object","properties":{"repo_name":{"type":"string","description":"The name of the repo to mount. By default, code will be mounted at /home/user/{repo_name}.","isRequired":true,"uniqueKey":"code_mounts.oneOf.0.items.[INDEX].repo_name","typeLabel":"string"},"repo_owner":{"type":"string","description":"The owner of the repo.","isRequired":true,"uniqueKey":"code_mounts.oneOf.0.items.[INDEX].repo_owner","typeLabel":"string"},"install_command":{"oneOf":[{"description":"Installation command to install and setup repository.","type":"string","uniqueKey":"code_mounts.oneOf.0.items.[INDEX].install_command.oneOf.0","typeLabel":"string"},{"description":"Installation command to install and setup repository.","type":"null","uniqueKey":"code_mounts.oneOf.0.items.[INDEX].install_command.oneOf.1","typeLabel":"null"}],"uniqueKey":"code_mounts.oneOf.0.items.[INDEX].install_command","typeLabel":"string | null"},"git_ref":{"oneOf":[{"description":"Optional git ref (branch or tag) to checkout. Defaults to the repository default branch.","type":"string","uniqueKey":"code_mounts.oneOf.0.items.[INDEX].git_ref.oneOf.0","typeLabel":"string"},{"description":"Optional git ref (branch or tag) to checkout. Defaults to the repository default branch.","type":"null","uniqueKey":"code_mounts.oneOf.0.items.[INDEX].git_ref.oneOf.1","typeLabel":"null"}],"uniqueKey":"code_mounts.oneOf.0.items.[INDEX].git_ref","typeLabel":"string | null"},"token":{"oneOf":[{"description":"The authentication token necessary to pull repo.","type":"string","uniqueKey":"code_mounts.oneOf.0.items.[INDEX].token.oneOf.0","typeLabel":"string"},{"description":"The authentication token necessary to pull repo.","type":"null","uniqueKey":"code_mounts.oneOf.0.items.[INDEX].token.oneOf.1","typeLabel":"null"}],"uniqueKey":"code_mounts.oneOf.0.items.[INDEX].token","typeLabel":"string | null"}},"required":["repo_name","repo_owner"],"uniqueKey":"code_mounts.oneOf.0.items.[INDEX]","typeLabel":"object"},"description":"A list of code mounts to be included in the Devbox. Use mounts instead.","type":"array","uniqueKey":"code_mounts.oneOf.0","typeLabel":"object[]"},{"items":{"type":"object","properties":{"repo_name":{"type":"string","description":"The name of the repo to mount. By default, code will be mounted at /home/user/{repo_name}."},"repo_owner":{"type":"string","description":"The owner of the repo."},"install_command":{"oneOf":[{"description":"Installation command to install and setup repository.","type":"string"},{"description":"Installation command to install and setup repository.","type":"null"}]},"git_ref":{"oneOf":[{"description":"Optional git ref (branch or tag) to checkout. Defaults to the repository default branch.","type":"string"},{"description":"Optional git ref (branch or tag) to checkout. Defaults to the repository default branch.","type":"null"}]},"token":{"oneOf":[{"description":"The authentication token necessary to pull repo.","type":"string"},{"description":"The authentication token necessary to pull repo.","type":"null"}]}},"required":["repo_name","repo_owner"]},"description":"A list of code mounts to be included in the Devbox. Use mounts instead.","type":"null","uniqueKey":"code_mounts.oneOf.1","typeLabel":"null"}],"uniqueKey":"code_mounts","typeLabel":"object[] | null"},"mounts":{"oneOf":[{"items":{"oneOf":[{"type":"object","required":["object_id","object_path","type"],"properties":{"object_id":{"type":"string","description":"The ID of the object to write.","isRequired":true,"uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.0.object_id","typeLabel":"string"},"object_path":{"type":"string","description":"The path to write the object on the Devbox. Use absolute path of object (ie /home/user/object.txt, or directory if archive /home/user/archive_dir)","isRequired":true,"uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.0.object_path","typeLabel":"string"},"type":{"type":"string","enum":["object_mount"],"default":"object_mount","isRequired":true,"uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.0.type","typeLabel":"enum\u003cstring>"}},"uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.0","typeLabel":"object"},{"type":"object","required":["repo_name","repo_owner","type"],"properties":{"repo_name":{"type":"string","description":"The name of the repo to mount. By default, code will be mounted at /home/user/{repo_name}.","isRequired":true,"uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.1.repo_name","typeLabel":"string"},"repo_owner":{"type":"string","description":"The owner of the repo.","isRequired":true,"uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.1.repo_owner","typeLabel":"string"},"type":{"type":"string","enum":["code_mount"],"default":"code_mount","isRequired":true,"uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.1.type","typeLabel":"enum\u003cstring>"},"install_command":{"oneOf":[{"description":"Installation command to install and setup repository.","type":"string","uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.1.install_command.oneOf.0","typeLabel":"string"},{"description":"Installation command to install and setup repository.","type":"null","uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.1.install_command.oneOf.1","typeLabel":"null"}],"uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.1.install_command","typeLabel":"string | null"},"git_ref":{"oneOf":[{"description":"Optional git ref (branch or tag) to checkout. Defaults to the repository default branch.","type":"string","uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.1.git_ref.oneOf.0","typeLabel":"string"},{"description":"Optional git ref (branch or tag) to checkout. Defaults to the repository default branch.","type":"null","uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.1.git_ref.oneOf.1","typeLabel":"null"}],"uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.1.git_ref","typeLabel":"string | null"},"token":{"oneOf":[{"description":"The authentication token necessary to pull repo.","type":"string","uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.1.token.oneOf.0","typeLabel":"string"},{"description":"The authentication token necessary to pull repo.","type":"null","uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.1.token.oneOf.1","typeLabel":"null"}],"uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.1.token","typeLabel":"string | null"}},"uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.1","typeLabel":"object"},{"type":"object","required":["target","content","type"],"properties":{"target":{"type":"string","description":"Target path where the file should be mounted.","isRequired":true,"uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.2.target","typeLabel":"string"},"content":{"type":"string","description":"Content of the file to mount.","isRequired":true,"uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.2.content","typeLabel":"string"},"type":{"type":"string","enum":["file_mount"],"default":"file_mount","isRequired":true,"uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.2.type","typeLabel":"enum\u003cstring>"}},"uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.2","typeLabel":"object"},{"type":"object","required":["axon_id","type"],"properties":{"axon_id":{"type":"string","description":"The ID of the axon event stream to mount onto the Devbox.","isRequired":true,"uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.3.axon_id","typeLabel":"string"},"type":{"type":"string","enum":["broker_mount"],"default":"broker_mount","isRequired":true,"uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.3.type","typeLabel":"enum\u003cstring>"},"protocol":{"oneOf":[{"type":"string","description":"The protocol used by the broker to deliver events to the agent.","enum":["acp","claude_json","codex_json","pi_json"],"uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.3.protocol.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","description":"The protocol used by the broker to deliver events to the agent.","uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.3.protocol.oneOf.1","typeLabel":"null"}],"uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.3.protocol","typeLabel":"enum\u003cstring> | null"},"agent_binary":{"oneOf":[{"description":"Binary to launch the agent (e.g., 'opencode'). Used by protocols that launch a subprocess (acp, claude_json, codex_json, pi_json).","type":"string","uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.3.agent_binary.oneOf.0","typeLabel":"string"},{"description":"Binary to launch the agent (e.g., 'opencode'). Used by protocols that launch a subprocess (acp, claude_json, codex_json, pi_json).","type":"null","uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.3.agent_binary.oneOf.1","typeLabel":"null"}],"uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.3.agent_binary","typeLabel":"string | null"},"working_directory":{"oneOf":[{"description":"Working directory in which to launch the agent binary. Defaults to the home directory if not specified.","type":"string","uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.3.working_directory.oneOf.0","typeLabel":"string"},{"description":"Working directory in which to launch the agent binary. Defaults to the home directory if not specified.","type":"null","uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.3.working_directory.oneOf.1","typeLabel":"null"}],"uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.3.working_directory","typeLabel":"string | null"},"launch_args":{"oneOf":[{"items":{"type":"string","uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.3.launch_args.oneOf.0.items.[INDEX]","typeLabel":"string"},"description":"Arguments to pass to the agent command (e.g., ['acp']). Used by protocols that launch a subprocess (acp, claude_json, codex_json, pi_json).","type":"array","uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.3.launch_args.oneOf.0","typeLabel":"string[]"},{"items":{"type":"string"},"description":"Arguments to pass to the agent command (e.g., ['acp']). Used by protocols that launch a subprocess (acp, claude_json, codex_json, pi_json).","type":"null","uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.3.launch_args.oneOf.1","typeLabel":"null"}],"uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.3.launch_args","typeLabel":"string[] | null"}},"uniqueKey":"mounts.oneOf.0.items.[INDEX].oneOf.3","typeLabel":"object"}],"uniqueKey":"mounts.oneOf.0.items.[INDEX]","typeLabel":"object"},"description":"A list of mounts to be included in the Devbox.","type":"array","uniqueKey":"mounts.oneOf.0","typeLabel":"object[]"},{"items":{"oneOf":[{"type":"object","required":["object_id","object_path","type"],"properties":{"object_id":{"type":"string","description":"The ID of the object to write."},"object_path":{"type":"string","description":"The path to write the object on the Devbox. Use absolute path of object (ie /home/user/object.txt, or directory if archive /home/user/archive_dir)"},"type":{"type":"string","enum":["object_mount"],"default":"object_mount"}}},{"type":"object","required":["repo_name","repo_owner","type"],"properties":{"repo_name":{"type":"string","description":"The name of the repo to mount. By default, code will be mounted at /home/user/{repo_name}."},"repo_owner":{"type":"string","description":"The owner of the repo."},"install_command":{"oneOf":[{"description":"Installation command to install and setup repository.","type":"string"},{"description":"Installation command to install and setup repository.","type":"null"}]},"git_ref":{"oneOf":[{"description":"Optional git ref (branch or tag) to checkout. Defaults to the repository default branch.","type":"string"},{"description":"Optional git ref (branch or tag) to checkout. Defaults to the repository default branch.","type":"null"}]},"token":{"oneOf":[{"description":"The authentication token necessary to pull repo.","type":"string"},{"description":"The authentication token necessary to pull repo.","type":"null"}]},"type":{"type":"string","enum":["code_mount"],"default":"code_mount"}}},{"type":"object","required":["target","content","type"],"properties":{"target":{"type":"string","description":"Target path where the file should be mounted."},"content":{"type":"string","description":"Content of the file to mount."},"type":{"type":"string","enum":["file_mount"],"default":"file_mount"}}},{"type":"object","required":["axon_id","type"],"properties":{"axon_id":{"type":"string","description":"The ID of the axon event stream to mount onto the Devbox."},"protocol":{"oneOf":[{"type":"string","description":"The protocol used by the broker to deliver events to the agent.","enum":["acp","claude_json","codex_json","pi_json"]},{"type":"null","description":"The protocol used by the broker to deliver events to the agent."}]},"agent_binary":{"oneOf":[{"description":"Binary to launch the agent (e.g., 'opencode'). Used by protocols that launch a subprocess (acp, claude_json, codex_json, pi_json).","type":"string"},{"description":"Binary to launch the agent (e.g., 'opencode'). Used by protocols that launch a subprocess (acp, claude_json, codex_json, pi_json).","type":"null"}]},"working_directory":{"oneOf":[{"description":"Working directory in which to launch the agent binary. Defaults to the home directory if not specified.","type":"string"},{"description":"Working directory in which to launch the agent binary. Defaults to the home directory if not specified.","type":"null"}]},"launch_args":{"oneOf":[{"items":{"type":"string"},"description":"Arguments to pass to the agent command (e.g., ['acp']). Used by protocols that launch a subprocess (acp, claude_json, codex_json, pi_json).","type":"array"},{"items":{"type":"string"},"description":"Arguments to pass to the agent command (e.g., ['acp']). Used by protocols that launch a subprocess (acp, claude_json, codex_json, pi_json).","type":"null"}]},"type":{"type":"string","enum":["broker_mount"],"default":"broker_mount"}}}]},"description":"A list of mounts to be included in the Devbox.","type":"null","uniqueKey":"mounts.oneOf.1","typeLabel":"null"}],"uniqueKey":"mounts","typeLabel":"object[] | null"},"tunnel":{"oneOf":[{"type":"object","description":"(Optional) Configuration for creating a V2 tunnel at Devbox launch time. When specified, a tunnel will be automatically provisioned and the tunnel details will be included in the Devbox response.","properties":{"auth_mode":{"oneOf":[{"type":"string","description":"Authentication mode for the tunnel. Defaults to open if omitted: the hostname is a public capability and does not require a tunnel bearer token.","enum":["open","authenticated"],"uniqueKey":"tunnel.oneOf.0.auth_mode.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","description":"Authentication mode for the tunnel. Defaults to open if omitted: the hostname is a public capability and does not require a tunnel bearer token.","uniqueKey":"tunnel.oneOf.0.auth_mode.oneOf.1","typeLabel":"null"}],"uniqueKey":"tunnel.oneOf.0.auth_mode","typeLabel":"enum\u003cstring> | null"},"http_keep_alive":{"oneOf":[{"description":"When true, HTTP traffic through the tunnel counts as activity for idle lifecycle policies, resetting the idle timer. Defaults to true if not specified.","type":"boolean","uniqueKey":"tunnel.oneOf.0.http_keep_alive.oneOf.0","typeLabel":"boolean"},{"description":"When true, HTTP traffic through the tunnel counts as activity for idle lifecycle policies, resetting the idle timer. Defaults to true if not specified.","type":"null","uniqueKey":"tunnel.oneOf.0.http_keep_alive.oneOf.1","typeLabel":"null"}],"uniqueKey":"tunnel.oneOf.0.http_keep_alive","typeLabel":"boolean | null"},"wake_on_http":{"oneOf":[{"description":"When true, HTTP traffic to a suspended devbox will automatically trigger a resume. Defaults to false if not specified. Prefer lifecycle.resume_triggers.http on launch_parameters for new integrations. If both are set, lifecycle.resume_triggers.http takes precedence.","type":"boolean","uniqueKey":"tunnel.oneOf.0.wake_on_http.oneOf.0","typeLabel":"boolean"},{"description":"When true, HTTP traffic to a suspended devbox will automatically trigger a resume. Defaults to false if not specified. Prefer lifecycle.resume_triggers.http on launch_parameters for new integrations. If both are set, lifecycle.resume_triggers.http takes precedence.","type":"null","uniqueKey":"tunnel.oneOf.0.wake_on_http.oneOf.1","typeLabel":"null"}],"uniqueKey":"tunnel.oneOf.0.wake_on_http","typeLabel":"boolean | null"}},"uniqueKey":"tunnel.oneOf.0","typeLabel":"object"},{"type":"null","description":"(Optional) Configuration for creating a V2 tunnel at Devbox launch time. When specified, a tunnel will be automatically provisioned and the tunnel details will be included in the Devbox response.","uniqueKey":"tunnel.oneOf.1","typeLabel":"null"}],"uniqueKey":"tunnel","typeLabel":"object | null"},"gateways":{"oneOf":[{"additionalProperties":{"type":"object","description":"GatewaySpec links an agent gateway configuration to a secret for credential proxying in a devbox. The agent gateway will proxy requests to external APIs using the specified credential without exposing the real API key.","properties":{"gateway":{"type":"string","description":"The gateway config to use. Can be a gateway config ID (gwc_xxx) or name. A name binds the most recently created config with that name.","isRequired":true,"uniqueKey":"gateways.oneOf.0.additionalProperties.gateway","typeLabel":"string"},"secret":{"type":"string","description":"The secret containing the credential. Can be a secret ID or name.","isRequired":true,"uniqueKey":"gateways.oneOf.0.additionalProperties.secret","typeLabel":"string"}},"required":["gateway","secret"],"uniqueKey":"gateways.oneOf.0.additionalProperties","typeLabel":"object"},"description":"(Optional) Agent gateway specifications for credential proxying. Map key is the environment variable prefix (e.g., 'GWS_ANTHROPIC'). The agent gateway will proxy requests to external APIs using the specified credential without exposing the real API key. Example: {'GWS_ANTHROPIC': {'gateway': 'anthropic', 'secret': 'my_claude_key'}}","type":"object","uniqueKey":"gateways.oneOf.0","typeLabel":"object"},{"additionalProperties":{"type":"object","description":"GatewaySpec links an agent gateway configuration to a secret for credential proxying in a devbox. The agent gateway will proxy requests to external APIs using the specified credential without exposing the real API key.","properties":{"gateway":{"type":"string","description":"The gateway config to use. Can be a gateway config ID (gwc_xxx) or name. A name binds the most recently created config with that name.","uniqueKey":"gateways.oneOf.1.additionalProperties.gateway","typeLabel":"string"},"secret":{"type":"string","description":"The secret containing the credential. Can be a secret ID or name.","uniqueKey":"gateways.oneOf.1.additionalProperties.secret","typeLabel":"string"}},"required":["gateway","secret"],"uniqueKey":"gateways.oneOf.1.additionalProperties","typeLabel":"object"},"description":"(Optional) Agent gateway specifications for credential proxying. Map key is the environment variable prefix (e.g., 'GWS_ANTHROPIC'). The agent gateway will proxy requests to external APIs using the specified credential without exposing the real API key. Example: {'GWS_ANTHROPIC': {'gateway': 'anthropic', 'secret': 'my_claude_key'}}","type":"null","uniqueKey":"gateways.oneOf.1","typeLabel":"null"}],"uniqueKey":"gateways","typeLabel":"object | null"},"mcp":{"oneOf":[{"additionalProperties":{"type":"object","description":"[Beta] McpSpec links an MCP configuration to a secret for MCP server access in a devbox. The MCP hub will proxy requests to upstream MCP servers using the specified credential, with tool-level access control based on the MCP config's allowed_tools.","properties":{"mcp_config":{"type":"string","description":"The MCP config to use. Can be an MCP config ID (mcp_xxx) or name. A name binds the most recently created config with that name.","isRequired":true,"uniqueKey":"mcp.oneOf.0.additionalProperties.mcp_config","typeLabel":"string"},"secret":{"type":"string","description":"The secret containing the MCP server credential. Can be a secret ID or name.","isRequired":true,"uniqueKey":"mcp.oneOf.0.additionalProperties.secret","typeLabel":"string"}},"required":["mcp_config","secret"],"uniqueKey":"mcp.oneOf.0.additionalProperties","typeLabel":"object"},"description":"[Beta] (Optional) MCP specifications for MCP server access. Map key is the environment variable name for the MCP token envelope. Each spec links an MCP config to a secret. The devbox will also receive RL_MCP_URL for the MCP hub endpoint. Example: {'MCP_SECRET': {'mcp_config': 'github-readonly', 'secret': 'MY_GITHUB_TOKEN'}}","type":"object","uniqueKey":"mcp.oneOf.0","typeLabel":"object"},{"additionalProperties":{"type":"object","description":"[Beta] McpSpec links an MCP configuration to a secret for MCP server access in a devbox. The MCP hub will proxy requests to upstream MCP servers using the specified credential, with tool-level access control based on the MCP config's allowed_tools.","properties":{"mcp_config":{"type":"string","description":"The MCP config to use. Can be an MCP config ID (mcp_xxx) or name. A name binds the most recently created config with that name.","uniqueKey":"mcp.oneOf.1.additionalProperties.mcp_config","typeLabel":"string"},"secret":{"type":"string","description":"The secret containing the MCP server credential. Can be a secret ID or name.","uniqueKey":"mcp.oneOf.1.additionalProperties.secret","typeLabel":"string"}},"required":["mcp_config","secret"],"uniqueKey":"mcp.oneOf.1.additionalProperties","typeLabel":"object"},"description":"[Beta] (Optional) MCP specifications for MCP server access. Map key is the environment variable name for the MCP token envelope. Each spec links an MCP config to a secret. The devbox will also receive RL_MCP_URL for the MCP hub endpoint. Example: {'MCP_SECRET': {'mcp_config': 'github-readonly', 'secret': 'MY_GITHUB_TOKEN'}}","type":"null","uniqueKey":"mcp.oneOf.1","typeLabel":"null"}],"uniqueKey":"mcp","typeLabel":"object | null"}},"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"name":"\u003cstring>","environment_variables":{},"secrets":{},"file_mounts":{},"entrypoint":"\u003cstring>","blueprint_id":"\u003cstring>","blueprint_name":"\u003cstring>","launch_parameters":{"launch_commands":["\u003cstring>"],"available_ports":[123],"keep_alive_time_seconds":123,"after_idle":{"idle_time_seconds":123},"custom_cpu_cores":123,"custom_gb_memory":123,"custom_disk_size":123,"user_parameters":{"username":"\u003cstring>","uid":123},"required_services":["\u003cstring>"],"network_policy_id":"\u003cstring>","lifecycle":{"after_idle":{"idle_time_seconds":123},"resume_triggers":{"http":true,"axon_event":true},"lifecycle_hooks":{"suspend_commands":["\u003cstring>"],"suspend_deadline_ms":123}}},"snapshot_id":"\u003cstring>","metadata":{},"code_mounts":[{"repo_name":"\u003cstring>","repo_owner":"\u003cstring>","install_command":"\u003cstring>","git_ref":"\u003cstring>","token":"\u003cstring>"}],"mounts":[{"object_id":"\u003cstring>","object_path":"\u003cstring>","type":"object_mount"}],"tunnel":{"http_keep_alive":true,"wake_on_http":true},"gateways":{},"mcp":{}}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"55b0d9f7-5148-4b2a-aa53-fe2bba0f944f":{"description":"OK","content":{"application/json":{"schema":{"type":"object","description":"A Devbox represents a virtual development environment. It is an isolated sandbox that can be given to agents and used to run arbitrary code such as AI generated code.","properties":{"id":{"type":"string","description":"The ID of the Devbox.","isRequired":true,"uniqueKey":"id","typeLabel":"string"},"status":{"type":"string","enum":["scheduled","queued","provisioning","initializing","running","suspending","suspended","resuming","failure","shutdown"],"description":"The current status of the Devbox.","x-enum-descriptions":{"scheduled":"Deprecated. The Devbox is waiting for infrastructure allocation to start. Use queued.","queued":"The Devbox is waiting for infrastructure allocation to start.","provisioning":"Runloop is allocating and booting the necessary infrastructure resources.","initializing":"Runloop defined boot scripts are running to enable the environment for interaction.","running":"The Devbox is ready for interaction.","suspending":"The Devbox disk is being snapshotted as part of suspension.","suspended":"The Devbox disk is saved and no more active compute is being used for the Devbox.","resuming":"The Devbox disk is being loaded as part of booting a suspended Devbox.","failure":"The Devbox failed as part of booting or running user requested actions.","shutdown":"The Devbox was successfully shutdown and no more active compute is being used."},"isRequired":true,"uniqueKey":"status","typeLabel":"enum\u003cstring>"},"create_time_ms":{"type":"integer","format":"int64","description":"Creation time of the Devbox (Unix timestamp milliseconds).","isRequired":true,"uniqueKey":"create_time_ms","typeLabel":"integer\u003cint64>"},"end_time_ms":{"oneOf":[{"format":"int64","description":"The time the Devbox finished execution (Unix timestamp milliseconds). Present if the Devbox is in a terminal state.","type":"integer","isRequired":true,"uniqueKey":"end_time_ms.oneOf.0","typeLabel":"integer\u003cint64>"},{"format":"int64","description":"The time the Devbox finished execution (Unix timestamp milliseconds). Present if the Devbox is in a terminal state.","type":"null","isRequired":true,"uniqueKey":"end_time_ms.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"end_time_ms","typeLabel":"integer\u003cint64> | null"},"metadata":{"type":"object","additionalProperties":{"type":"string","uniqueKey":"metadata.additionalProperties","typeLabel":"string"},"description":"The user defined Devbox metadata.","isRequired":true,"uniqueKey":"metadata","typeLabel":"object"},"launch_parameters":{"type":"object","description":"The launch parameters used to create the Devbox.","properties":{"launch_commands":{"oneOf":[{"items":{"type":"string","uniqueKey":"launch_parameters.launch_commands.oneOf.0.items.[INDEX]","typeLabel":"string"},"description":"Set of commands to be run at launch time, before the entrypoint process is run.","type":"array","uniqueKey":"launch_parameters.launch_commands.oneOf.0","typeLabel":"string[]"},{"items":{"type":"string"},"description":"Set of commands to be run at launch time, before the entrypoint process is run.","type":"null","uniqueKey":"launch_parameters.launch_commands.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.launch_commands","typeLabel":"string[] | null"},"resource_size_request":{"oneOf":[{"type":"string","description":"Preset Devbox resources (vCPU, RAM in GiB, ephemeral disk in GiB). If not set, SMALL is used. X_SMALL: 0.5 vCPU, 1 GiB RAM, 4 GiB disk. SMALL: 1 vCPU, 2 GiB RAM, 4 GiB disk. MEDIUM: 2 vCPU, 4 GiB RAM, 8 GiB disk. LARGE: 2 vCPU, 8 GiB RAM, 16 GiB disk. X_LARGE: 4 vCPU, 16 GiB RAM, 16 GiB disk. XX_LARGE: 8 vCPU, 32 GiB RAM, 16 GiB disk. CUSTOM_SIZE: set custom_cpu_cores, custom_gb_memory, and optionally custom_disk_size.","enum":["X_SMALL","SMALL","MEDIUM","LARGE","X_LARGE","XX_LARGE","CUSTOM_SIZE"],"x-enum-descriptions":{"X_SMALL":"0.5 cpu x 1GiB memory x 4GiB disk","SMALL":"1 cpu x 2GiB memory x 4GiB disk","MEDIUM":"2 cpu x 4GiB memory x 8GiB disk","LARGE":"2 cpu x 8GiB memory x 16GiB disk","X_LARGE":"4 cpu x 16GiB memory x 16GiB disk","XX_LARGE":"8 cpu x 32GiB memory x 16GiB disk","CUSTOM_SIZE":"To choose a custom size, set this enum and also the custom_cpu_cores, custom_gb_memory, and optionally custom_disk_size in launch parameters. CPU must be 0.5, 1, or a multiple of 2 (max 16). Memory must be 1 or a multiple of 2 (max 64GiB). Disk must be a multiple of 2 (min 2GiB, max 64GiB). The cpu:memory ratio must be between 1:2 and 1:8 inclusive."},"uniqueKey":"launch_parameters.resource_size_request.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","description":"Preset Devbox resources (vCPU, RAM in GiB, ephemeral disk in GiB). If not set, SMALL is used. X_SMALL: 0.5 vCPU, 1 GiB RAM, 4 GiB disk. SMALL: 1 vCPU, 2 GiB RAM, 4 GiB disk. MEDIUM: 2 vCPU, 4 GiB RAM, 8 GiB disk. LARGE: 2 vCPU, 8 GiB RAM, 16 GiB disk. X_LARGE: 4 vCPU, 16 GiB RAM, 16 GiB disk. XX_LARGE: 8 vCPU, 32 GiB RAM, 16 GiB disk. CUSTOM_SIZE: set custom_cpu_cores, custom_gb_memory, and optionally custom_disk_size.","uniqueKey":"launch_parameters.resource_size_request.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.resource_size_request","typeLabel":"enum\u003cstring> | null"},"available_ports":{"oneOf":[{"items":{"type":"integer","format":"int32","uniqueKey":"launch_parameters.available_ports.oneOf.0.items.[INDEX]","typeLabel":"integer\u003cint32>"},"description":"[Deprecated] A list of ports to make available on the Devbox. This field is ignored.","type":"array","uniqueKey":"launch_parameters.available_ports.oneOf.0","typeLabel":"integer\u003cint32>[]"},{"items":{"type":"integer","format":"int32"},"description":"[Deprecated] A list of ports to make available on the Devbox. This field is ignored.","type":"null","uniqueKey":"launch_parameters.available_ports.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.available_ports","typeLabel":"integer\u003cint32>[] | null"},"keep_alive_time_seconds":{"oneOf":[{"format":"int64","description":"Time in seconds after which Devbox will automatically shutdown. Default is 1 hour. Maximum is 48 hours (172800 seconds).","type":"integer","uniqueKey":"launch_parameters.keep_alive_time_seconds.oneOf.0","typeLabel":"integer\u003cint64>"},{"format":"int64","description":"Time in seconds after which Devbox will automatically shutdown. Default is 1 hour. Maximum is 48 hours (172800 seconds).","type":"null","uniqueKey":"launch_parameters.keep_alive_time_seconds.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.keep_alive_time_seconds","typeLabel":"integer\u003cint64> | null"},"after_idle":{"oneOf":[{"type":"object","description":"Configure Devbox lifecycle based on idle activity. If after_idle is set, Devbox will ignore keep_alive_time_seconds. If both after_idle and lifecycle.after_idle are set, they must have the same value. Use lifecycle.after_idle instead.","required":["idle_time_seconds","on_idle"],"properties":{"idle_time_seconds":{"type":"integer","format":"int32","description":"After idle_time_seconds, on_idle action will be taken.","isRequired":true,"uniqueKey":"launch_parameters.after_idle.oneOf.0.idle_time_seconds","typeLabel":"integer\u003cint32>"},"on_idle":{"type":"string","enum":["shutdown","suspend"],"description":"Action to take after Devbox becomes idle.","x-enum-descriptions":{"shutdown":"Shutdown the Devbox.","suspend":"Suspend the Devbox."},"isRequired":true,"uniqueKey":"launch_parameters.after_idle.oneOf.0.on_idle","typeLabel":"enum\u003cstring>"}},"uniqueKey":"launch_parameters.after_idle.oneOf.0","typeLabel":"object"},{"type":"null","description":"Configure Devbox lifecycle based on idle activity. If after_idle is set, Devbox will ignore keep_alive_time_seconds. If both after_idle and lifecycle.after_idle are set, they must have the same value. Use lifecycle.after_idle instead.","uniqueKey":"launch_parameters.after_idle.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.after_idle","typeLabel":"object | null"},"custom_cpu_cores":{"oneOf":[{"format":"double","description":"Custom CPU cores. Must be 0.5, 1, or a multiple of 2. Max is 16.","type":"number","uniqueKey":"launch_parameters.custom_cpu_cores.oneOf.0","typeLabel":"number\u003cdouble>"},{"format":"double","description":"Custom CPU cores. Must be 0.5, 1, or a multiple of 2. Max is 16.","type":"null","uniqueKey":"launch_parameters.custom_cpu_cores.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.custom_cpu_cores","typeLabel":"number\u003cdouble> | null"},"custom_gb_memory":{"oneOf":[{"format":"int32","description":"Custom memory size in GiB. Must be 1 or a multiple of 2. Max is 64GiB.","type":"integer","uniqueKey":"launch_parameters.custom_gb_memory.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","description":"Custom memory size in GiB. Must be 1 or a multiple of 2. Max is 64GiB.","type":"null","uniqueKey":"launch_parameters.custom_gb_memory.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.custom_gb_memory","typeLabel":"integer\u003cint32> | null"},"custom_disk_size":{"oneOf":[{"format":"int32","description":"Custom disk size in GiB. Must be a multiple of 2. Min is 2GiB, max is 64GiB.","type":"integer","uniqueKey":"launch_parameters.custom_disk_size.oneOf.0","typeLabel":"integer\u003cint32>"},{"format":"int32","description":"Custom disk size in GiB. Must be a multiple of 2. Min is 2GiB, max is 64GiB.","type":"null","uniqueKey":"launch_parameters.custom_disk_size.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.custom_disk_size","typeLabel":"integer\u003cint32> | null"},"architecture":{"oneOf":[{"type":"string","description":"The target architecture for the Devbox. If unset, defaults to x86_64.","enum":["x86_64","arm64"],"uniqueKey":"launch_parameters.architecture.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","description":"The target architecture for the Devbox. If unset, defaults to x86_64.","uniqueKey":"launch_parameters.architecture.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.architecture","typeLabel":"enum\u003cstring> | null"},"user_parameters":{"oneOf":[{"type":"object","description":"Specify the user for execution on Devbox. If not set, default `user` will be used.","required":["username","uid"],"properties":{"username":{"type":"string","description":"Username for the Linux user.","isRequired":true,"uniqueKey":"launch_parameters.user_parameters.oneOf.0.username","typeLabel":"string"},"uid":{"type":"integer","format":"int32","description":"User ID (UID) for the Linux user. Must be a non-negative integer.","isRequired":true,"uniqueKey":"launch_parameters.user_parameters.oneOf.0.uid","typeLabel":"integer\u003cint32>"}},"uniqueKey":"launch_parameters.user_parameters.oneOf.0","typeLabel":"object"},{"type":"null","description":"Specify the user for execution on Devbox. If not set, default `user` will be used.","uniqueKey":"launch_parameters.user_parameters.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.user_parameters","typeLabel":"object | null"},"required_services":{"oneOf":[{"items":{"type":"string","uniqueKey":"launch_parameters.required_services.oneOf.0.items.[INDEX]","typeLabel":"string"},"description":"A list of ContainerizedService names to be started when a Devbox is created. A valid ContainerizedService must be specified in Blueprint to be started.","type":"array","uniqueKey":"launch_parameters.required_services.oneOf.0","typeLabel":"string[]"},{"items":{"type":"string"},"description":"A list of ContainerizedService names to be started when a Devbox is created. A valid ContainerizedService must be specified in Blueprint to be started.","type":"null","uniqueKey":"launch_parameters.required_services.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.required_services","typeLabel":"string[] | null"},"network_policy_id":{"oneOf":[{"description":"(Optional) ID of the network policy to apply to Devboxes launched with these parameters. When set on a Blueprint launch parameters, Devboxes created from it will inherit this policy unless explicitly overridden.","type":"string","uniqueKey":"launch_parameters.network_policy_id.oneOf.0","typeLabel":"string"},{"description":"(Optional) ID of the network policy to apply to Devboxes launched with these parameters. When set on a Blueprint launch parameters, Devboxes created from it will inherit this policy unless explicitly overridden.","type":"null","uniqueKey":"launch_parameters.network_policy_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.network_policy_id","typeLabel":"string | null"},"lifecycle":{"oneOf":[{"type":"object","description":"Lifecycle configuration for idle and resume behavior. Configure idle policy via lifecycle.after_idle (if both this and the top-level after_idle are set, they must match), resume triggers via lifecycle.resume_triggers, and optional lifecycle hooks via lifecycle.lifecycle_hooks.","properties":{"after_idle":{"oneOf":[{"type":"object","description":"Configure Devbox lifecycle based on idle activity. If both this and the top-level after_idle are set, they must have the same value. Prefer this field for new integrations.","required":["idle_time_seconds","on_idle"],"properties":{"idle_time_seconds":{"type":"integer","format":"int32","description":"After idle_time_seconds, on_idle action will be taken.","isRequired":true,"uniqueKey":"launch_parameters.lifecycle.oneOf.0.after_idle.oneOf.0.idle_time_seconds","typeLabel":"integer\u003cint32>"},"on_idle":{"type":"string","enum":["shutdown","suspend"],"description":"Action to take after Devbox becomes idle.","x-enum-descriptions":{"shutdown":"Shutdown the Devbox.","suspend":"Suspend the Devbox."},"isRequired":true,"uniqueKey":"launch_parameters.lifecycle.oneOf.0.after_idle.oneOf.0.on_idle","typeLabel":"enum\u003cstring>"}},"uniqueKey":"launch_parameters.lifecycle.oneOf.0.after_idle.oneOf.0","typeLabel":"object"},{"type":"null","description":"Configure Devbox lifecycle based on idle activity. If both this and the top-level after_idle are set, they must have the same value. Prefer this field for new integrations.","uniqueKey":"launch_parameters.lifecycle.oneOf.0.after_idle.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.lifecycle.oneOf.0.after_idle","typeLabel":"object | null"},"resume_triggers":{"oneOf":[{"type":"object","description":"Triggers that can resume a suspended Devbox.","properties":{"http":{"oneOf":[{"description":"When true, HTTP traffic to a suspended Devbox via tunnel will trigger a resume.","type":"boolean","uniqueKey":"launch_parameters.lifecycle.oneOf.0.resume_triggers.oneOf.0.http.oneOf.0","typeLabel":"boolean"},{"description":"When true, HTTP traffic to a suspended Devbox via tunnel will trigger a resume.","type":"null","uniqueKey":"launch_parameters.lifecycle.oneOf.0.resume_triggers.oneOf.0.http.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.lifecycle.oneOf.0.resume_triggers.oneOf.0.http","typeLabel":"boolean | null"},"axon_event":{"oneOf":[{"description":"When true, axon events targeting a suspended Devbox will trigger a resume.","type":"boolean","uniqueKey":"launch_parameters.lifecycle.oneOf.0.resume_triggers.oneOf.0.axon_event.oneOf.0","typeLabel":"boolean"},{"description":"When true, axon events targeting a suspended Devbox will trigger a resume.","type":"null","uniqueKey":"launch_parameters.lifecycle.oneOf.0.resume_triggers.oneOf.0.axon_event.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.lifecycle.oneOf.0.resume_triggers.oneOf.0.axon_event","typeLabel":"boolean | null"}},"uniqueKey":"launch_parameters.lifecycle.oneOf.0.resume_triggers.oneOf.0","typeLabel":"object"},{"type":"null","description":"Triggers that can resume a suspended Devbox.","uniqueKey":"launch_parameters.lifecycle.oneOf.0.resume_triggers.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.lifecycle.oneOf.0.resume_triggers","typeLabel":"object | null"},"lifecycle_hooks":{"oneOf":[{"type":"object","description":"Optional lifecycle hooks. suspend_commands run through the suspend path before the Devbox suspends; see launch_commands for work on every startup.","properties":{"suspend_commands":{"oneOf":[{"items":{"type":"string","uniqueKey":"launch_parameters.lifecycle.oneOf.0.lifecycle_hooks.oneOf.0.suspend_commands.oneOf.0.items.[INDEX]","typeLabel":"string"},"description":"Commands to run through the suspend path before the Devbox suspends (e.g. cleanup, quiesce daemons).","type":"array","uniqueKey":"launch_parameters.lifecycle.oneOf.0.lifecycle_hooks.oneOf.0.suspend_commands.oneOf.0","typeLabel":"string[]"},{"items":{"type":"string"},"description":"Commands to run through the suspend path before the Devbox suspends (e.g. cleanup, quiesce daemons).","type":"null","uniqueKey":"launch_parameters.lifecycle.oneOf.0.lifecycle_hooks.oneOf.0.suspend_commands.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.lifecycle.oneOf.0.lifecycle_hooks.oneOf.0.suspend_commands","typeLabel":"string[] | null"},"suspend_deadline_ms":{"oneOf":[{"format":"int64","description":"Deadline in milliseconds for broker drain and suspend_commands during suspend. Defaults to 30000 ms and may not exceed 60000 ms. If exceeded, suspend work is abandoned, the timeout is logged, and the Devbox still proceeds to suspend by shutting down vmagent and killing the VM.","type":"integer","uniqueKey":"launch_parameters.lifecycle.oneOf.0.lifecycle_hooks.oneOf.0.suspend_deadline_ms.oneOf.0","typeLabel":"integer\u003cint64>"},{"format":"int64","description":"Deadline in milliseconds for broker drain and suspend_commands during suspend. Defaults to 30000 ms and may not exceed 60000 ms. If exceeded, suspend work is abandoned, the timeout is logged, and the Devbox still proceeds to suspend by shutting down vmagent and killing the VM.","type":"null","uniqueKey":"launch_parameters.lifecycle.oneOf.0.lifecycle_hooks.oneOf.0.suspend_deadline_ms.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.lifecycle.oneOf.0.lifecycle_hooks.oneOf.0.suspend_deadline_ms","typeLabel":"integer\u003cint64> | null"}},"uniqueKey":"launch_parameters.lifecycle.oneOf.0.lifecycle_hooks.oneOf.0","typeLabel":"object"},{"type":"null","description":"Optional lifecycle hooks. suspend_commands run through the suspend path before the Devbox suspends; see launch_commands for work on every startup.","uniqueKey":"launch_parameters.lifecycle.oneOf.0.lifecycle_hooks.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.lifecycle.oneOf.0.lifecycle_hooks","typeLabel":"object | null"}},"uniqueKey":"launch_parameters.lifecycle.oneOf.0","typeLabel":"object"},{"type":"null","description":"Lifecycle configuration for idle and resume behavior. Configure idle policy via lifecycle.after_idle (if both this and the top-level after_idle are set, they must match), resume triggers via lifecycle.resume_triggers, and optional lifecycle hooks via lifecycle.lifecycle_hooks.","uniqueKey":"launch_parameters.lifecycle.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.lifecycle","typeLabel":"object | null"},"provisioning_tier":{"oneOf":[{"type":"string","description":"(Optional, Alpha) standard is default and flex is lazily provisioned and may be pre-empted. This is an alpha feature and its behavior may change without notice.","enum":["standard","flex"],"uniqueKey":"launch_parameters.provisioning_tier.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","description":"(Optional, Alpha) standard is default and flex is lazily provisioned and may be pre-empted. This is an alpha feature and its behavior may change without notice.","uniqueKey":"launch_parameters.provisioning_tier.oneOf.1","typeLabel":"null"}],"uniqueKey":"launch_parameters.provisioning_tier","typeLabel":"enum\u003cstring> | null"}},"isRequired":true,"uniqueKey":"launch_parameters","typeLabel":"object"},"capabilities":{"type":"array","items":{"type":"string","enum":["unknown","docker_in_docker"],"uniqueKey":"capabilities.items.[INDEX]","typeLabel":"enum\u003cstring>"},"description":"A list of capability groups this devbox has access to.","isRequired":true,"uniqueKey":"capabilities","typeLabel":"enum\u003cstring>[]"},"state_transitions":{"type":"array","items":{"type":"object","properties":{"status":{"type":"string","enum":["scheduled","queued","provisioning","initializing","running","suspending","suspended","resuming","failure","shutdown"],"description":"The status of the Devbox.\n\nscheduled: Deprecated. The Devbox is waiting for infrastructure allocation to start. Use queued.\nqueued: The Devbox is waiting for infrastructure allocation to start.\nprovisioning: Runloop is allocating and booting the necessary infrastructure resources.\ninitializing: Runloop defined boot scripts are running to enable the environment for interaction.\nrunning: The Devbox is ready for interaction.\nsuspending: The Devbox disk is being snapshotted as part of suspension.\nsuspended: The Devbox disk is saved and no more active compute is being used for the Devbox.\nresuming: The Devbox disk is being loaded as part of booting a suspended Devbox.\nfailure: The Devbox failed as part of booting or running user requested actions.\nshutdown: The Devbox was successfully shutdown and no more active compute is being used.\n","x-enum-descriptions":{"scheduled":"Deprecated. The Devbox is waiting for infrastructure allocation to start. Use queued.","queued":"The Devbox is waiting for infrastructure allocation to start.","provisioning":"Runloop is allocating and booting the necessary infrastructure resources.","initializing":"Runloop defined boot scripts are running to enable the environment for interaction.","running":"The Devbox is ready for interaction.","suspending":"The Devbox disk is being snapshotted as part of suspension.","suspended":"The Devbox disk is saved and no more active compute is being used for the Devbox.","resuming":"The Devbox disk is being loaded as part of booting a suspended Devbox.","failure":"The Devbox failed as part of booting or running user requested actions.","shutdown":"The Devbox was successfully shutdown and no more active compute is being used."},"uniqueKey":"state_transitions.items.[INDEX].status","typeLabel":"enum\u003cstring>"},"transition_time_ms":{"type":"object","properties":{},"description":"The time the status change occurred","uniqueKey":"state_transitions.items.[INDEX].transition_time_ms","typeLabel":"object"},"failure_reason":{"oneOf":[{"description":"The failure that caused this state transition, if applicable.","type":"string","uniqueKey":"state_transitions.items.[INDEX].failure_reason.oneOf.0","typeLabel":"string"},{"description":"The failure that caused this state transition, if applicable.","type":"null","uniqueKey":"state_transitions.items.[INDEX].failure_reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"state_transitions.items.[INDEX].failure_reason","typeLabel":"string | null"}},"uniqueKey":"state_transitions.items.[INDEX]","typeLabel":"object"},"description":"A list of state transitions in order with durations","isRequired":true,"uniqueKey":"state_transitions","typeLabel":"object[]"},"name":{"oneOf":[{"description":"The name of the Devbox.","type":"string","uniqueKey":"name.oneOf.0","typeLabel":"string"},{"description":"The name of the Devbox.","type":"null","uniqueKey":"name.oneOf.1","typeLabel":"null"}],"uniqueKey":"name","typeLabel":"string | null"},"initiator_type":{"type":"string","enum":["unknown","api","reflex"],"description":"The type of initiator that created the Devbox.","uniqueKey":"initiator_type","typeLabel":"enum\u003cstring>"},"initiator_id":{"oneOf":[{"description":"The ID of the initiator that created the Devbox.","type":"string","uniqueKey":"initiator_id.oneOf.0","typeLabel":"string"},{"description":"The ID of the initiator that created the Devbox.","type":"null","uniqueKey":"initiator_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"initiator_id","typeLabel":"string | null"},"blueprint_id":{"oneOf":[{"description":"The Blueprint ID used in creation of the Devbox, if the devbox was created from a Blueprint.","type":"string","uniqueKey":"blueprint_id.oneOf.0","typeLabel":"string"},{"description":"The Blueprint ID used in creation of the Devbox, if the devbox was created from a Blueprint.","type":"null","uniqueKey":"blueprint_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"blueprint_id","typeLabel":"string | null"},"snapshot_id":{"oneOf":[{"description":"The Snapshot ID used in creation of the Devbox, if the devbox was created from a Snapshot.","type":"string","uniqueKey":"snapshot_id.oneOf.0","typeLabel":"string"},{"description":"The Snapshot ID used in creation of the Devbox, if the devbox was created from a Snapshot.","type":"null","uniqueKey":"snapshot_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"snapshot_id","typeLabel":"string | null"},"failure_reason":{"oneOf":[{"type":"string","description":"The failure reason if the Devbox failed, if the Devbox has a 'failure' status.","enum":["out_of_memory","out_of_disk","execution_failed","health_check_failed"],"x-enum-descriptions":{"out_of_memory":"The Devbox ran out of memory at runtime. Use launch parameters to request a larger resource size.","out_of_disk":"The Devbox ran out of disk at runtime. Please reach out to support for us to better support your use case.","execution_failed":"The Devbox failed at runtime. Please use the dashboard to look at the logs of the failure.","health_check_failed":"The Devbox failed its health checks. This may indicate resource utilization is close to the maximum. Consider requesting a larger resource size."},"uniqueKey":"failure_reason.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","description":"The failure reason if the Devbox failed, if the Devbox has a 'failure' status.","uniqueKey":"failure_reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"failure_reason","typeLabel":"enum\u003cstring> | null"},"shutdown_reason":{"oneOf":[{"type":"string","description":"The shutdown reason if the Devbox shutdown, if the Devbox has a 'shutdown' status.","enum":["api_shutdown","keep_alive_timeout","entrypoint_exit","idle","ttl_expired"],"x-enum-descriptions":{"api_shutdown":"The Devbox shutdown due to API request.","entrypoint_exit":"The Devbox entrypoint program completed.","idle":"The Devbox shutdown due to configured action on idle configuration.","ttl_expired":"The Devbox shutdown due to TTL expiration."},"uniqueKey":"shutdown_reason.oneOf.0","typeLabel":"enum\u003cstring>"},{"type":"null","description":"The shutdown reason if the Devbox shutdown, if the Devbox has a 'shutdown' status.","uniqueKey":"shutdown_reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"shutdown_reason","typeLabel":"enum\u003cstring> | null"},"tunnel":{"oneOf":[{"type":"object","description":"V2 tunnel information if a tunnel was created at launch time or via the createTunnel API.","required":["tunnel_key","auth_mode","create_time_ms","http_keep_alive","wake_on_http"],"properties":{"tunnel_key":{"type":"string","description":"The encrypted tunnel key used to construct the tunnel URL. URL format: https://{port}-{tunnel_key}.tunnel.runloop.{domain}","isRequired":true,"uniqueKey":"tunnel.oneOf.0.tunnel_key","typeLabel":"string"},"auth_mode":{"type":"string","enum":["open","authenticated"],"description":"The authentication mode for the tunnel.","isRequired":true,"uniqueKey":"tunnel.oneOf.0.auth_mode","typeLabel":"enum\u003cstring>"},"create_time_ms":{"type":"integer","format":"int64","description":"Creation time of the tunnel (Unix timestamp milliseconds).","isRequired":true,"uniqueKey":"tunnel.oneOf.0.create_time_ms","typeLabel":"integer\u003cint64>"},"http_keep_alive":{"type":"boolean","description":"When true, HTTP traffic through the tunnel counts as activity for idle lifecycle policies, resetting the idle timer.","isRequired":true,"uniqueKey":"tunnel.oneOf.0.http_keep_alive","typeLabel":"boolean"},"wake_on_http":{"type":"boolean","description":"When true, HTTP traffic to a suspended devbox will automatically trigger a resume.","isRequired":true,"uniqueKey":"tunnel.oneOf.0.wake_on_http","typeLabel":"boolean"},"auth_token":{"oneOf":[{"description":"Bearer token for tunnel authentication. Only present when auth_mode is 'authenticated'. Pass as X-Runloop-Tunnel-Authorization: Bearer {auth_token}.","type":"string","uniqueKey":"tunnel.oneOf.0.auth_token.oneOf.0","typeLabel":"string"},{"description":"Bearer token for tunnel authentication. Only present when auth_mode is 'authenticated'. Pass as X-Runloop-Tunnel-Authorization: Bearer {auth_token}.","type":"null","uniqueKey":"tunnel.oneOf.0.auth_token.oneOf.1","typeLabel":"null"}],"uniqueKey":"tunnel.oneOf.0.auth_token","typeLabel":"string | null"}},"uniqueKey":"tunnel.oneOf.0","typeLabel":"object"},{"type":"null","description":"V2 tunnel information if a tunnel was created at launch time or via the createTunnel API.","uniqueKey":"tunnel.oneOf.1","typeLabel":"null"}],"uniqueKey":"tunnel","typeLabel":"object | null"},"gateway_specs":{"oneOf":[{"additionalProperties":{"type":"object","properties":{"gateway_config_id":{"type":"string","description":"The ID of the gateway config (e.g., gwc_123abc).","isRequired":true,"uniqueKey":"gateway_specs.oneOf.0.additionalProperties.gateway_config_id","typeLabel":"string"},"secret_id":{"type":"string","description":"The ID of the secret containing the credential.","isRequired":true,"uniqueKey":"gateway_specs.oneOf.0.additionalProperties.secret_id","typeLabel":"string"}},"required":["gateway_config_id","secret_id"],"uniqueKey":"gateway_specs.oneOf.0.additionalProperties","typeLabel":"object"},"description":"Gateway specifications configured for this devbox. Map key is the environment variable prefix (e.g., 'GWS_ANTHROPIC').","type":"object","uniqueKey":"gateway_specs.oneOf.0","typeLabel":"object"},{"additionalProperties":{"type":"object","properties":{"gateway_config_id":{"type":"string","description":"The ID of the gateway config (e.g., gwc_123abc).","uniqueKey":"gateway_specs.oneOf.1.additionalProperties.gateway_config_id","typeLabel":"string"},"secret_id":{"type":"string","description":"The ID of the secret containing the credential.","uniqueKey":"gateway_specs.oneOf.1.additionalProperties.secret_id","typeLabel":"string"}},"required":["gateway_config_id","secret_id"],"uniqueKey":"gateway_specs.oneOf.1.additionalProperties","typeLabel":"object"},"description":"Gateway specifications configured for this devbox. Map key is the environment variable prefix (e.g., 'GWS_ANTHROPIC').","type":"null","uniqueKey":"gateway_specs.oneOf.1","typeLabel":"null"}],"uniqueKey":"gateway_specs","typeLabel":"object | null"},"mcp_specs":{"oneOf":[{"additionalProperties":{"type":"object","properties":{"mcp_config_id":{"type":"string","description":"The ID of the MCP config (e.g., mcp_123abc).","isRequired":true,"uniqueKey":"mcp_specs.oneOf.0.additionalProperties.mcp_config_id","typeLabel":"string"},"secret_id":{"type":"string","description":"The ID of the secret containing the credential.","isRequired":true,"uniqueKey":"mcp_specs.oneOf.0.additionalProperties.secret_id","typeLabel":"string"}},"required":["mcp_config_id","secret_id"],"uniqueKey":"mcp_specs.oneOf.0.additionalProperties","typeLabel":"object"},"description":"[Beta] MCP specifications configured for this devbox. Map key is the environment variable name for the MCP token envelope. Each spec links an MCP config to a secret for MCP server access through the MCP hub.","type":"object","uniqueKey":"mcp_specs.oneOf.0","typeLabel":"object"},{"additionalProperties":{"type":"object","properties":{"mcp_config_id":{"type":"string","description":"The ID of the MCP config (e.g., mcp_123abc).","uniqueKey":"mcp_specs.oneOf.1.additionalProperties.mcp_config_id","typeLabel":"string"},"secret_id":{"type":"string","description":"The ID of the secret containing the credential.","uniqueKey":"mcp_specs.oneOf.1.additionalProperties.secret_id","typeLabel":"string"}},"required":["mcp_config_id","secret_id"],"uniqueKey":"mcp_specs.oneOf.1.additionalProperties","typeLabel":"object"},"description":"[Beta] MCP specifications configured for this devbox. Map key is the environment variable name for the MCP token envelope. Each spec links an MCP config to a secret for MCP server access through the MCP hub.","type":"null","uniqueKey":"mcp_specs.oneOf.1","typeLabel":"null"}],"uniqueKey":"mcp_specs","typeLabel":"object | null"}},"required":["id","status","create_time_ms","end_time_ms","metadata","launch_parameters","capabilities","state_transitions"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"id":"\u003cstring>","status":"scheduled","create_time_ms":123,"end_time_ms":123,"metadata":{},"launch_parameters":{"launch_commands":["\u003cstring>"],"resource_size_request":"X_SMALL","available_ports":[123],"keep_alive_time_seconds":123,"after_idle":{"idle_time_seconds":123,"on_idle":"shutdown"},"custom_cpu_cores":123,"custom_gb_memory":123,"custom_disk_size":123,"architecture":"x86_64","user_parameters":{"username":"\u003cstring>","uid":123},"required_services":["\u003cstring>"],"network_policy_id":"\u003cstring>","lifecycle":{"after_idle":{"idle_time_seconds":123,"on_idle":"shutdown"},"resume_triggers":{"http":true,"axon_event":true},"lifecycle_hooks":{"suspend_commands":["\u003cstring>"],"suspend_deadline_ms":123}},"provisioning_tier":"standard"},"capabilities":["unknown"],"state_transitions":[{"status":"scheduled","transition_time_ms":{},"failure_reason":"\u003cstring>"}],"name":"\u003cstring>","initiator_type":"unknown","initiator_id":"\u003cstring>","blueprint_id":"\u003cstring>","snapshot_id":"\u003cstring>","failure_reason":"out_of_memory","shutdown_reason":"api_shutdown","tunnel":{"tunnel_key":"\u003cstring>","auth_mode":"open","create_time_ms":123,"http_keep_alive":true,"wake_on_http":true,"auth_token":"\u003cstring>"},"gateway_specs":{},"mcp_specs":{}}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"8ce27edf-f079-415e-937e-65fded4f9d46":{"bearerAuth":{"scheme":"bearer","type":"http","scopes":[],"schemeName":"bearerAuth"}}},"servers":{"1d631bad-0fd6-4617-a8c4-8377826d815d":{"url":"https://api.runloop.ai","description":"Runloop API","variables":{}}},"processedSecurityOptions":[{"schemes":[{"scheme":{"scheme":"bearer","type":"http","scopes":[],"schemeName":"bearerAuth"},"schema":{"title":"Bearer Auth","type":"string","isRequired":true,"description":"Bearer authentication header of the form `Bearer \u003ctoken>`, where `\u003ctoken>` is your auth token.","format":"bearer","typeLabel":"string\u003cbearer>","deprecated":false},"schemeName":"bearerAuth","name":"Authorization"}],"title":"bearerAuth"}]},"originalFileLocation":"openapi-specs/stainless-processed-openapi.json"},"subdomain":"runloopai","siteName":"Runloop AI Docs","title":"Create a Devbox. - Runloop AI Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-10-24T21:07:34.319Z","originalFileLocation":"api-reference/devbox/create-a-devbox.mdx"},"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=\"dark\"}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=\"Create a Devbox and begin the boot process. Standard Devboxes initially report the \u0026#x27;provisioning\u0026#x27; state. FLEX Devboxes initially report the \u0026#x27;queued\u0026#x27; state while waiting for infrastructure allocation, then transition to \u0026#x27;provisioning\u0026#x27; once assigned to a node. The Devbox transitions to \u0026#x27;initializing\u0026#x27; while the booted Devbox runs Runloop or user-defined setup scripts, then to \u0026#x27;running\u0026#x27; when it is ready for use.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Runloop AI Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/runloopai/pjXnHMZq1DfDYUjd/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/runloopai/pjXnHMZq1DfDYUjd/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/runloopai/pjXnHMZq1DfDYUjd/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/runloopai/pjXnHMZq1DfDYUjd/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/runloopai/pjXnHMZq1DfDYUjd/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/runloopai/pjXnHMZq1DfDYUjd/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/runloopai/pjXnHMZq1DfDYUjd/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/runloopai/pjXnHMZq1DfDYUjd/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/runloopai/pjXnHMZq1DfDYUjd/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Create a Devbox. - Runloop AI Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Create a Devbox and begin the boot process. Standard Devboxes initially report the \u0026#x27;provisioning\u0026#x27; state. FLEX Devboxes initially report the \u0026#x27;queued\u0026#x27; state while waiting for infrastructure allocation, then transition to \u0026#x27;provisioning\u0026#x27; once assigned to a node. The Devbox transitions to \u0026#x27;initializing\u0026#x27; while the booted Devbox runs Runloop or user-defined setup scripts, then to \u0026#x27;running\u0026#x27; when it is ready for use.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Runloop AI Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.runloop.ai/api-reference/devbox/create-a-devbox\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://runloopai.mintlify.app/_mintlify/api/og/v2?division=Devbox\u0026amp;title=Create+a+Devbox.\u0026amp;description=Create+a+Devbox+and+begin+the+boot+process.+Standard+Devboxes+initially+report+the+%27provisioning%27+state.+FLEX+Devboxes+initially+report+the+%27queued%27+state+while\u0026amp;theme=640224b746a7c52ddd40c033\u0026amp;signature=5f1cc4a92b0bc7fd201502ba134b549d74ff0f3f81a4a66712cf5a4b297714c9\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Create a Devbox. - Runloop AI Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Create a Devbox and begin the boot process. Standard Devboxes initially report the \u0026#x27;provisioning\u0026#x27; state. FLEX Devboxes initially report the \u0026#x27;queued\u0026#x27; state while waiting for infrastructure allocation, then transition to \u0026#x27;provisioning\u0026#x27; once assigned to a node. The Devbox transitions to \u0026#x27;initializing\u0026#x27; while the booted Devbox runs Runloop or user-defined setup scripts, then to \u0026#x27;running\u0026#x27; when it is ready for use.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://runloopai.mintlify.app/_mintlify/api/og/v2?division=Devbox\u0026amp;title=Create+a+Devbox.\u0026amp;description=Create+a+Devbox+and+begin+the+boot+process.+Standard+Devboxes+initially+report+the+%27provisioning%27+state.+FLEX+Devboxes+initially+report+the+%27queued%27+state+while\u0026amp;theme=640224b746a7c52ddd40c033\u0026amp;signature=5f1cc4a92b0bc7fd201502ba134b549d74ff0f3f81a4a66712cf5a4b297714c9\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/runloopai/pjXnHMZq1DfDYUjd/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Runloop AI Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#118362\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.runloop.ai/api-reference/devbox/create-a-devbox\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/devbox/create-a-devbox.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.runloop.ai/#organization\",\"name\":\"Runloop AI Docs\",\"url\":\"https://docs.runloop.ai\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/runloopai/Us2eHV2_UnUki3-j/logo/runloop-logo.png?fit=max\u0026auto=format\u0026n=Us2eHV2_UnUki3-j\u0026q=85\u0026s=f3caaf67e1c45f535be611579f752bad\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.runloop.ai#website\",\"name\":\"Runloop AI Docs\",\"url\":\"https://docs.runloop.ai\",\"publisher\":{\"@id\":\"https://docs.runloop.ai/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.runloop.ai/api-reference/devbox/create-a-devbox#webpage\",\"url\":\"https://docs.runloop.ai/api-reference/devbox/create-a-devbox\",\"name\":\"Create a Devbox.\",\"description\":\"Create a Devbox and begin the boot process. Standard Devboxes initially report the 'provisioning' state. FLEX Devboxes initially report the 'queued' state while waiting for infrastructure allocation, then transition to 'provisioning' once assigned to a node. The Devbox transitions to 'initializing' while the booted Devbox runs Runloop or user-defined setup scripts, then to 'running' when it is ready for use.\",\"dateModified\":\"2026-10-24T21:07:34.319Z\",\"isPartOf\":{\"@id\":\"https://docs.runloop.ai#website\"},\"breadcrumb\":{\"@id\":\"https://docs.runloop.ai/api-reference/devbox/create-a-devbox#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.runloop.ai/api-reference/devbox/create-a-devbox#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Devbox\",\"item\":\"https://docs.runloop.ai/api-reference/devbox/create-or-reconnect-to-a-pty-session\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Create a Devbox.\",\"item\":\"https://docs.runloop.ai/api-reference/devbox/create-a-devbox\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.runloop.ai/api-reference/devbox/create-a-devbox#apireference\",\"headline\":\"Create a Devbox.\",\"name\":\"Create a Devbox.\",\"description\":\"Create a Devbox and begin the boot process. Standard Devboxes initially report the 'provisioning' state. FLEX Devboxes initially report the 'queued' state while waiting for infrastructure allocation, then transition to 'provisioning' once assigned to a node. The Devbox transitions to 'initializing' while the booted Devbox runs Runloop or user-defined setup scripts, then to 'running' when it is ready for use.\",\"url\":\"https://docs.runloop.ai/api-reference/devbox/create-a-devbox\",\"mainEntityOfPage\":{\"@id\":\"https://docs.runloop.ai/api-reference/devbox/create-a-devbox#webpage\"},\"dateModified\":\"2026-10-24T21:07:34.319Z\",\"publisher\":{\"@id\":\"https://docs.runloop.ai/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.runloop.ai#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Runloop AI Docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Runloop AI Docs","nav":{"global":null,"tabs":[{"tab":"Documentation","pages":[{"title":"Documentation","href":"/docs/overview/what-is-runloop"}]},{"tab":"API Reference","groups":[{"group":"Devbox","pages":[{"title":"Create or reconnect to a PTY session.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /pty/{session_name}","href":"/api-reference/devbox/create-or-reconnect-to-a-pty-session"},{"title":"Send a control command to a PTY session.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /pty/{session_name}/control","href":"/api-reference/devbox/send-a-control-command-to-a-pty-session"},{"title":"List Devboxes.","description":"List all Devboxes while optionally filtering by status.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/devboxes","href":"/api-reference/devbox/list-devboxes"},{"title":"Create a Devbox.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/devboxes","href":"/api-reference/devbox/create-a-devbox"},{"title":"List disk snapshots of a Devbox.","description":"List all snapshots of a Devbox while optionally filtering by Devbox ID, source Blueprint ID, and metadata.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/devboxes/disk_snapshots","href":"/api-reference/devbox/list-disk-snapshots-of-a-devbox"},{"title":"List public disk snapshots.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/devboxes/disk_snapshots/list_public","href":"/api-reference/devbox/list-public-disk-snapshots"},{"title":"List available snapshot metadata keys.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/devboxes/disk_snapshots/metadata/keys","href":"/api-reference/devbox/list-available-snapshot-metadata-keys"},{"title":"List values for a specific snapshot metadata key.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/devboxes/disk_snapshots/metadata/keys/{key}/values","href":"/api-reference/devbox/list-values-for-a-specific-snapshot-metadata-key"},{"title":"List available public snapshot metadata keys.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/devboxes/disk_snapshots/public/metadata/keys","href":"/api-reference/devbox/list-available-public-snapshot-metadata-keys"},{"title":"List values for a specific public snapshot metadata key.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/devboxes/disk_snapshots/public/metadata/keys/{key}/values","href":"/api-reference/devbox/list-values-for-a-specific-public-snapshot-metadata-key"},{"title":"Update metadata of Disk Snapshot.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/devboxes/disk_snapshots/{id}","href":"/api-reference/devbox/update-metadata-of-disk-snapshot"},{"title":"Delete a disk snapshot of a Devbox.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/devboxes/disk_snapshots/{id}/delete","href":"/api-reference/devbox/delete-a-disk-snapshot-of-a-devbox"},{"title":"Query the status of an asynchronous disk snapshot.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/devboxes/disk_snapshots/{id}/status","href":"/api-reference/devbox/query-the-status-of-an-asynchronous-disk-snapshot"},{"title":"List available devbox metadata keys.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/devboxes/metadata/keys","href":"/api-reference/devbox/list-available-devbox-metadata-keys"},{"title":"List values for a specific devbox metadata key.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/devboxes/metadata/keys/{key}/values","href":"/api-reference/devbox/list-values-for-a-specific-devbox-metadata-key"},{"title":"Get status of an asynchronous execution on a Devbox.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/devboxes/{devbox_id}/executions/{execution_id}","href":"/api-reference/devbox/get-status-of-an-asynchronous-execution-on-a-devbox"},{"title":"Kill an asynchronous execution currently running on a devbox","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/devboxes/{devbox_id}/executions/{execution_id}/kill","href":"/api-reference/devbox/kill-an-asynchronous-execution-currently-running-on-a-devbox"},{"title":"Send Content to Std In for a running execution.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/devboxes/{devbox_id}/executions/{execution_id}/send_std_in","href":"/api-reference/devbox/send-content-to-std-in-for-a-running-execution"},{"title":"Wait for an asynchronous execution to reach a specific status.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/devboxes/{devbox_id}/executions/{execution_id}/wait_for_status","href":"/api-reference/devbox/wait-for-an-asynchronous-execution-to-reach-a-specific-status"},{"title":"Get Devbox details.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/devboxes/{id}","href":"/api-reference/devbox/get-devbox-details"},{"title":"Update a Devbox.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/devboxes/{id}","href":"/api-reference/devbox/update-a-devbox"},{"title":"Mint an agent gateway token for a Devbox.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/devboxes/{id}/create_gateway_token","href":"/api-reference/devbox/mint-an-agent-gateway-token-for-a-devbox"},{"title":"[Beta] Mint an MCP token for a Devbox.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/devboxes/{id}/create_mcp_token","href":"/api-reference/devbox/[beta]-mint-an-mcp-token-for-a-devbox"},{"title":"Create an ephemeral PTY tunnel for a running Devbox.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/devboxes/{id}/create_pty_tunnel","href":"/api-reference/devbox/create-an-ephemeral-pty-tunnel-for-a-running-devbox"},{"title":"Create an SSH key for a Devbox","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/devboxes/{id}/create_ssh_key","href":"/api-reference/devbox/create-an-ssh-key-for-a-devbox"},{"title":"Download binary file contents from Devbox filesystem.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/devboxes/{id}/download_file","href":"/api-reference/devbox/download-binary-file-contents-from-devbox-filesystem"},{"title":"Enable a tunnel for a running Devbox.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/devboxes/{id}/enable_tunnel","href":"/api-reference/devbox/enable-a-tunnel-for-a-running-devbox"},{"title":"Execute a command with a known ID, optimistically waiting for completion","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/devboxes/{id}/execute","href":"/api-reference/devbox/execute-a-command-with-a-known-id-optimistically-waiting-for-completion"},{"title":"Asynchronously execute a command via the Devbox shell","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/devboxes/{id}/execute_async","href":"/api-reference/devbox/asynchronously-execute-a-command-via-the-devbox-shell"},{"title":"(Deprecated, please use /execute_async) Synchronously execute a shell command on a Devbox","deprecated":true,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/devboxes/{id}/execute_sync","href":"/api-reference/devbox/deprecated-please-use-execute_async-synchronously-execute-a-shell-command-on-a-devbox"},{"title":"Reset the idle timer of a running Devbox.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/devboxes/{id}/keep_alive","href":"/api-reference/devbox/reset-the-idle-timer-of-a-running-devbox"},{"title":"Get Devbox logs.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/devboxes/{id}/logs","href":"/api-reference/devbox/get-devbox-logs"},{"title":"Live Tail Devbox Logs.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/devboxes/{id}/logs/tail","href":"/api-reference/devbox/live-tail-devbox-logs"},{"title":"Read text file contents from Devbox filesystem.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/devboxes/{id}/read_file_contents","href":"/api-reference/devbox/read-text-file-contents-from-devbox-filesystem"},{"title":"Remove a tunnel from the Devbox.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/devboxes/{id}/remove_tunnel","href":"/api-reference/devbox/remove-a-tunnel-from-the-devbox"},{"title":"Resume a suspended Devbox","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/devboxes/{id}/resume","href":"/api-reference/devbox/resume-a-suspended-devbox"},{"title":"Shutdown a running Devbox.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/devboxes/{id}/shutdown","href":"/api-reference/devbox/shutdown-a-running-devbox"},{"title":"Synchronously create a disk snapshot of a running Devbox.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/devboxes/{id}/snapshot_disk","href":"/api-reference/devbox/synchronously-create-a-disk-snapshot-of-a-running-devbox"},{"title":"Start an asynchronous disk snapshot of a running Devbox.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/devboxes/{id}/snapshot_disk_async","href":"/api-reference/devbox/start-an-asynchronous-disk-snapshot-of-a-running-devbox"},{"title":"Suspend a running Devbox","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/devboxes/{id}/suspend","href":"/api-reference/devbox/suspend-a-running-devbox"},{"title":"Upload binary file contents to Devbox filesystem.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/devboxes/{id}/upload_file","href":"/api-reference/devbox/upload-binary-file-contents-to-devbox-filesystem"},{"title":"Get resource usage for a Devbox.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/devboxes/{id}/usage","href":"/api-reference/devbox/get-resource-usage-for-a-devbox"},{"title":"Wait for a Devbox to reach one of the specified statuses.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/devboxes/{id}/wait_for_status","href":"/api-reference/devbox/wait-for-a-devbox-to-reach-one-of-the-specified-statuses"},{"title":"Write text file contents to Devbox filesystem.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/devboxes/{id}/write_file_contents","href":"/api-reference/devbox/write-text-file-contents-to-devbox-filesystem"}]},{"group":"accounts","pages":[{"title":"Get the authenticated caller's account.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/accounts/me","href":"/api-reference/accounts/get-the-authenticated-callers-account"}]},{"group":"apikeys","pages":[{"title":"Create API Key.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/apikeys","href":"/api-reference/apikeys/create-api-key"}]},{"group":"axons","pages":[{"title":"[Beta] List axons.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/axons","href":"/api-reference/axons/[beta]-list-axons"},{"title":"[Beta] Create an axon.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/axons","href":"/api-reference/axons/[beta]-create-an-axon"},{"title":"[Beta] List available axon metadata keys.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/axons/metadata/keys","href":"/api-reference/axons/[beta]-list-available-axon-metadata-keys"},{"title":"[Beta] List values for a specific axon metadata key.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/axons/metadata/keys/{key}/values","href":"/api-reference/axons/[beta]-list-values-for-a-specific-axon-metadata-key"},{"title":"[Beta] Get an axon.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/axons/{id}","href":"/api-reference/axons/[beta]-get-an-axon"},{"title":"[Beta] Update an axon.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/axons/{id}","href":"/api-reference/axons/[beta]-update-an-axon"},{"title":"[Beta] Delete an axon.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json delete /v1/axons/{id}","href":"/api-reference/axons/[beta]-delete-an-axon"},{"title":"[Beta] List events for an axon.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/axons/{id}/events","href":"/api-reference/axons/[beta]-list-events-for-an-axon"},{"title":"[Beta] Publish an event to an axon.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/axons/{id}/publish","href":"/api-reference/axons/[beta]-publish-an-event-to-an-axon"},{"title":"[Beta] Execute a batch of SQL statements against an axon's database.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/axons/{id}/sql/batch","href":"/api-reference/axons/[beta]-execute-a-batch-of-sql-statements-against-an-axons-database"},{"title":"[Beta] Execute a SQL query against an axon's database.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/axons/{id}/sql/query","href":"/api-reference/axons/[beta]-execute-a-sql-query-against-an-axons-database"},{"title":"[Beta] Subscribe to an axon event stream via SSE.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/axons/{id}/subscribe/sse","href":"/api-reference/axons/[beta]-subscribe-to-an-axon-event-stream-via-sse"}]},{"group":"Blueprint","pages":[{"title":"List Blueprints.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/blueprints","href":"/api-reference/blueprint/list-blueprints"},{"title":"Create and build a Blueprint.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/blueprints","href":"/api-reference/blueprint/create-and-build-a-blueprint"},{"title":"List Public Blueprints.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/blueprints/list_public","href":"/api-reference/blueprint/list-public-blueprints"},{"title":"List available blueprint metadata keys.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/blueprints/metadata/keys","href":"/api-reference/blueprint/list-available-blueprint-metadata-keys"},{"title":"List values for a specific blueprint metadata key.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/blueprints/metadata/keys/{key}/values","href":"/api-reference/blueprint/list-values-for-a-specific-blueprint-metadata-key"},{"title":"Preview Dockerfile definition for a Blueprint.","deprecated":true,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/blueprints/preview","href":"/api-reference/blueprint/preview-dockerfile-definition-for-a-blueprint"},{"title":"List available public blueprint metadata keys.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/blueprints/public/metadata/keys","href":"/api-reference/blueprint/list-available-public-blueprint-metadata-keys"},{"title":"List values for a specific public blueprint metadata key.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/blueprints/public/metadata/keys/{key}/values","href":"/api-reference/blueprint/list-values-for-a-specific-public-blueprint-metadata-key"},{"title":"Get a Blueprint.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/blueprints/{id}","href":"/api-reference/blueprint/get-a-blueprint"},{"title":"Delete a Blueprint.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/blueprints/{id}/delete","href":"/api-reference/blueprint/delete-a-blueprint"},{"title":"Get Blueprint build logs.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/blueprints/{id}/logs","href":"/api-reference/blueprint/get-blueprint-build-logs"}]},{"group":"API Reference","pages":[{"title":"Stream infrastructure eviction warnings for the account via SSE.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/devboxes/evictions/watch","href":"/api-reference/stream-infrastructure-eviction-warnings-for-the-account-via-sse"}]},{"group":"executions","pages":[{"title":"Tails the stderr logs for the given execution with SSE streaming","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/devboxes/{devbox_id}/executions/{execution_id}/stream_stderr_updates","href":"/api-reference/executions/tails-the-stderr-logs-for-the-given-execution-with-sse-streaming"},{"title":"Tails the stdout logs for the given execution with SSE streaming","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/devboxes/{devbox_id}/executions/{execution_id}/stream_stdout_updates","href":"/api-reference/executions/tails-the-stdout-logs-for-the-given-execution-with-sse-streaming"}]},{"group":"gateway-configs","pages":[{"title":"List GatewayConfigs.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/gateway-configs","href":"/api-reference/gateway-configs/list-gatewayconfigs"},{"title":"Create a GatewayConfig.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/gateway-configs","href":"/api-reference/gateway-configs/create-a-gatewayconfig"},{"title":"Get a GatewayConfig.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/gateway-configs/{id}","href":"/api-reference/gateway-configs/get-a-gatewayconfig"},{"title":"Update a GatewayConfig.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/gateway-configs/{id}","href":"/api-reference/gateway-configs/update-a-gatewayconfig"},{"title":"Delete a GatewayConfig.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/gateway-configs/{id}/delete","href":"/api-reference/gateway-configs/delete-a-gatewayconfig"}]},{"group":"mcp-configs","pages":[{"title":"[Beta] List McpConfigs.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/mcp-configs","href":"/api-reference/mcp-configs/[beta]-list-mcpconfigs"},{"title":"[Beta] Create an McpConfig.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/mcp-configs","href":"/api-reference/mcp-configs/[beta]-create-an-mcpconfig"},{"title":"[Beta] Get an McpConfig.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/mcp-configs/{id}","href":"/api-reference/mcp-configs/[beta]-get-an-mcpconfig"},{"title":"[Beta] Update an McpConfig.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/mcp-configs/{id}","href":"/api-reference/mcp-configs/[beta]-update-an-mcpconfig"},{"title":"[Beta] Delete an McpConfig.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/mcp-configs/{id}/delete","href":"/api-reference/mcp-configs/[beta]-delete-an-mcpconfig"}]},{"group":"network-policies","pages":[{"title":"List NetworkPolicies.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/network-policies","href":"/api-reference/network-policies/list-networkpolicies"},{"title":"Create a NetworkPolicy.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/network-policies","href":"/api-reference/network-policies/create-a-networkpolicy"},{"title":"Get a NetworkPolicy.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/network-policies/{id}","href":"/api-reference/network-policies/get-a-networkpolicy"},{"title":"Update a NetworkPolicy.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/network-policies/{id}","href":"/api-reference/network-policies/update-a-networkpolicy"},{"title":"Delete a NetworkPolicy.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/network-policies/{id}/delete","href":"/api-reference/network-policies/delete-a-networkpolicy"}]},{"group":"objects","pages":[{"title":"List Objects.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/objects","href":"/api-reference/objects/list-objects"},{"title":"Create an Object.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/objects","href":"/api-reference/objects/create-an-object"},{"title":"List Public Objects.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/objects/list_public","href":"/api-reference/objects/list-public-objects"},{"title":"List available object metadata keys.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/objects/metadata/keys","href":"/api-reference/objects/list-available-object-metadata-keys"},{"title":"List values for a specific object metadata key.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/objects/metadata/keys/{key}/values","href":"/api-reference/objects/list-values-for-a-specific-object-metadata-key"},{"title":"Get an Object.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/objects/{id}","href":"/api-reference/objects/get-an-object"},{"title":"Complete Object Upload.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/objects/{id}/complete","href":"/api-reference/objects/complete-object-upload"},{"title":"Delete an Object.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/objects/{id}/delete","href":"/api-reference/objects/delete-an-object"},{"title":"Generate Download URL for Object.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/objects/{id}/download","href":"/api-reference/objects/generate-download-url-for-object"}]},{"group":"restricted_keys","pages":[{"title":"Create a restricted API key.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/restricted_keys","href":"/api-reference/restricted_keys/create-a-restricted-api-key"}]},{"group":"secrets","pages":[{"title":"List Secrets.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/secrets","href":"/api-reference/secrets/list-secrets"},{"title":"Create a Secret.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/secrets","href":"/api-reference/secrets/create-a-secret"},{"title":"Get a Secret by ID.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/secrets/id/{id}","href":"/api-reference/secrets/get-a-secret-by-id"},{"title":"Delete a Secret by ID.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/secrets/id/{id}/delete","href":"/api-reference/secrets/delete-a-secret-by-id"},{"title":"Update a Secret by ID.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/secrets/id/{id}/update","href":"/api-reference/secrets/update-a-secret-by-id"},{"title":"Get a Secret.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json get /v1/secrets/{name}","href":"/api-reference/secrets/get-a-secret"},{"title":"Update a Secret.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/secrets/{name}","href":"/api-reference/secrets/update-a-secret"},{"title":"Delete a Secret.","deprecated":null,"version":null,"openapi":"/openapi-specs/stainless-processed-openapi.json post /v1/secrets/{name}/delete","href":"/api-reference/secrets/delete-a-secret"}]}]},{"tab":"Changelog","pages":[{"title":"Changelog","href":"/docs/overview/release-notes"}]}]},"basePath":"","title":"Create a Devbox. - Runloop AI Docs","buildId":"dpl_DeHjVRGfFnhYQwHnfC2pjeXXv8h9","deploymentId":"dpl_DeHjVRGfFnhYQwHnfC2pjeXXv8h9","dynamics":["10e4515597","c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["BannerMarkdown-CX_qQQOL.js","dist-BTZUMDnx.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","clsx-xpJZXxdP.js","html-void-elements-mCSPHezU.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","OpenApiReferenceProvider-CS552b7R.js","utils-DDTCYAF2.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-De8ttokP.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-DrwRDvAh.js","snippetPresets-DtAN0nWx.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-D5rWArI6.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-O2i12wsz.js","shallow-DV8xABTt.js","getApiPlaygroundDisplay-DBZ0B5Jx.js","CodeSnippet-BVi0tPUX.js","CodeSnippets-CqASbIwY.js","Page-m07pfKpT.js","getPastedJson-DG9vsMS8.js","icon-CXzRSCr8.js","MethodPill-BdKVtEuX.js","DuplicateIcon-CZlmBrJI.js","createIcon-biFEUKPL.js","DynamicMarkdown-B54_zNBF.js","SectionHeading-DwwHK3Pt.js","axios-vUo_bRtp.js","Markdown-DfhCTwyA.js","AssistantPageLink-DqdKa2R4.js"]}