Deploy a successfully built agent image to Kubernetes as a Helm release.
Takes a completed build (referenced by build_id, or by image_name +
image_tag) together with the agent manifest and environment config, then
starts an asynchronous Temporal workflow that provisions the agent as a Helm
release. The call returns immediately with the deployment record in PENDING
status — it does not wait for the release to become healthy; poll
GET /v5/agentex/deployments/{deployment_id} for status and Kubernetes events
and GET /v5/agentex/deployments/{deployment_id}/logs for progress. This is the
deploy counterpart to POST /v5/agentex/builds: a build produces the container
image, a deployment runs that image. The referenced build must have finished
successfully, and the manifest’s agent name must match the build’s agent.
Set preview=True for an ephemeral deployment: it gets a globally unique Helm
release name (so concurrent redeploys never collide), an optional preview_label
for grouping, and an expiry (expires_at, defaulting to 8 hours from now);
preview_label and expires_at are rejected on non-preview deploys. A
non-preview (production) deploy instead supersedes any prior active deployment
that shares its Helm release name. Fails with a client error if the build is
missing or not in a successful state, if the manifest or environment YAML is
invalid or their agent names disagree, or if a secret referenced by the manifest
does not exist. Returns 409 if the target agent has an active key migration or
an applicable incomplete managed-key handoff.
Non-unique grouping label for the preview (e.g. branch name, PR number). Persisted on the deployment record so callers can list all deploys for a given label via GET /v5/agentex/deployments?preview_label=X (add sort_order=desc&limit=1 for the latest). Sanitized to lowercase alphanumeric + hyphens for K8s DNS-label compatibility (max 30 characters after sanitization). Each deploy still gets a unique helm release name regardless of label, so concurrent redeploys never share K8s resources. Only valid when preview=True.
ISO 8601 expiry timestamp. Only valid for preview deployments. If omitted on a preview deployment, defaults to 8 hours from now. Previews are always ephemeral and always have an expires_at.
When this deployment will be cleaned up. Always set on preview deployments (defaults to 8 hours from creation if the request omits it). Null on non-preview deployments — they have no TTL.
Non-unique grouping label for preview deployments. Filter ?preview_label=X&sort_order=desc&limit=1 returns the latest deploy for the label. Sanitized (lowercase alphanumeric + hyphens) and capped at 30 characters.
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Scale AI","colors":{"primary":"#3f2e7b","light":"#ca62ff","dark":"#3f2e7b"},"logo":{"light":"https://mintcdn.com/scalegp/TBmst1qiYXwYqUB5/logo/light.png?fit=max\u0026auto=format\u0026n=TBmst1qiYXwYqUB5\u0026q=85\u0026s=46027042c16b373ac463148db5ad1d6b","dark":"https://mintcdn.com/scalegp/TBmst1qiYXwYqUB5/logo/dark.png?fit=max\u0026auto=format\u0026n=TBmst1qiYXwYqUB5\u0026q=85\u0026s=02733f39d684d796ec742853eabf0de5"},"favicon":"https://mintcdn.com/scalegp/1vQnbXFkjbQbcgd1/favicon.png?fit=max\u0026auto=format\u0026n=1vQnbXFkjbQbcgd1\u0026q=85\u0026s=f52c84ba46a7cca58551673616dabe9c","background":{"decoration":"windows"},"navbar":{"links":[],"primary":{"type":"button","label":"Platform","href":"https://app.sgp.scale.com/"}},"footer":{"socials":{"x":"https://x.com/scale_ai","facebook":"https://www.facebook.com/scaleapi","linkedin":"https://www.linkedin.com/company/scaleai"}},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"scalegp","hasAudioNarration":false,"actualSubdomain":"scalegp","customDomains":["docs.gp.scale.com"],"gitSource":{"type":"github","owner":"scaleapi","repo":"sgp-docs","deployBranch":"main","contentDirectory":"","isPrivate":false,"mountPath":"","label":""},"entitlements":{"AI_CHAT":{"status":"ENABLED"},"REMOVE_BRANDING":{"status":"ENABLED"},"CONTEXTUAL_FEEDBACK":{"status":"ENABLED"},"CODE_SNIPPET_FEEDBACK":{"status":"ENABLED"},"WEB_MCP":{"status":"ENABLED"},"NARRATION":{"status":"ENABLED"}},"buildId":"6aecf0ec6829c68a2fb0d3c8","clientVersion":"0.0.4087","searchFilterCounts":[{"language":"default","tag":"API Reference","count":235},{"language":"default","tag":"AgentOps API","count":141},{"language":"default","tag":"Guides","count":131},{"language":"default","tag":"Agentex API","count":97},{"language":"default","tag":"Evaluations","count":72},{"language":"default","tag":"Dex API","count":48},{"language":"default","tag":"Agents","count":44},{"language":"default","tag":"Evaluation Datasets","count":34},{"language":"default","tag":"Models","count":32},{"language":"default","tag":"Knowledge Bases","count":31}]},"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":"rbac-expansion","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":"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":"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":"editor-metadata","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},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"styles.css","content":"@font-face{font-family:'Aeonik';src:url('https://fonts.gstatic.com/s/inter/v18/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7W0Q5nw.woff2');font-weight:normal;font-style:normal;font-display:swap}h1,h2,h3{font-family:'aeonik';letter-spacing:normal!important}"}],"page":{"pagePath":"reference/v5/agentex-cloud-deploy/deploy-a-built-agent-image","slug":"/reference/v5/agentex-cloud-deploy/deploy-a-built-agent-image","pageMetadata":{"title":"Deploy a built agent image","description":"Deploy a successfully built agent image to Kubernetes as a Helm release.\n\nTakes a completed build (referenced by `build_id`, or by `image_name` +\n`image_tag`) together with the agent manifest and environment config, then\nstarts an asynchronous Temporal workflow that provisions the agent as a Helm\nrelease. The call returns immediately with the deployment record in `PENDING`\nstatus — it does not wait for the release to become healthy; poll\n`GET /v5/agentex/deployments/{deployment_id}` for status and Kubernetes events\nand `GET /v5/agentex/deployments/{deployment_id}/logs` for progress. This is the\ndeploy counterpart to `POST /v5/agentex/builds`: a build produces the container\nimage, a deployment runs that image. The referenced build must have finished\nsuccessfully, and the manifest's agent name must match the build's agent.\n\nSet `preview=True` for an ephemeral deployment: it gets a globally unique Helm\nrelease name (so concurrent redeploys never collide), an optional `preview_label`\nfor grouping, and an expiry (`expires_at`, defaulting to 8 hours from now);\n`preview_label` and `expires_at` are rejected on non-preview deploys. A\nnon-preview (production) deploy instead supersedes any prior active deployment\nthat shares its Helm release name. Fails with a client error if the build is\nmissing or not in a successful state, if the manifest or environment YAML is\ninvalid or their agent names disagree, or if a secret referenced by the manifest\ndoes not exist. Returns 409 if the target agent has an active key migration or\nan applicable incomplete managed-key handoff.","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/agentex/deployments","href":"/reference/v5/agentex-cloud-deploy/deploy-a-built-agent-image","autogeneratedByOpenApi":true},"description":{"compiledSource":"\"use strict\";\nconst {Fragment: _Fragment, jsx: _jsx, jsxs: _jsxs} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n code: \"code\",\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsxs(_Fragment, {\n children: [_jsx(_components.p, {\n children: \"Deploy a successfully built agent image to Kubernetes as a Helm release.\"\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"Takes a completed build (referenced by \", _jsx(_components.code, {\n children: \"build_id\"\n }), \", or by \", _jsx(_components.code, {\n children: \"image_name\"\n }), \" +\\n\", _jsx(_components.code, {\n children: \"image_tag\"\n }), \") together with the agent manifest and environment config, then\\nstarts an asynchronous Temporal workflow that provisions the agent as a Helm\\nrelease. The call returns immediately with the deployment record in \", _jsx(_components.code, {\n children: \"PENDING\"\n }), \"\\nstatus — it does not wait for the release to become healthy; poll\\n\", _jsx(_components.code, {\n children: \"GET /v5/agentex/deployments/{deployment_id}\"\n }), \" for status and Kubernetes events\\nand \", _jsx(_components.code, {\n children: \"GET /v5/agentex/deployments/{deployment_id}/logs\"\n }), \" for progress. This is the\\ndeploy counterpart to \", _jsx(_components.code, {\n children: \"POST /v5/agentex/builds\"\n }), \": a build produces the container\\nimage, a deployment runs that image. The referenced build must have finished\\nsuccessfully, and the manifest’s agent name must match the build’s agent.\"]\n }), \"\\n\", _jsxs(_components.p, {\n children: [\"Set \", _jsx(_components.code, {\n children: \"preview=True\"\n }), \" for an ephemeral deployment: it gets a globally unique Helm\\nrelease name (so concurrent redeploys never collide), an optional \", _jsx(_components.code, {\n children: \"preview_label\"\n }), \"\\nfor grouping, and an expiry (\", _jsx(_components.code, {\n children: \"expires_at\"\n }), \", defaulting to 8 hours from now);\\n\", _jsx(_components.code, {\n children: \"preview_label\"\n }), \" and \", _jsx(_components.code, {\n children: \"expires_at\"\n }), \" are rejected on non-preview deploys. A\\nnon-preview (production) deploy instead supersedes any prior active deployment\\nthat shares its Helm release name. Fails with a client error if the build is\\nmissing or not in a successful state, if the manifest or environment YAML is\\ninvalid or their agent names disagree, or if a secret referenced by the manifest\\ndoes not exist. Returns 409 if the target agent has an active key migration or\\nan applicable incomplete managed-key handoff.\"]\n })]\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":"Deploy a built agent image","description":"Deploy a successfully built agent image to Kubernetes as a Helm release.\n\nTakes a completed build (referenced by `build_id`, or by `image_name` +\n`image_tag`) together with the agent manifest and environment config, then\nstarts an asynchronous Temporal workflow that provisions the agent as a Helm\nrelease. The call returns immediately with the deployment record in `PENDING`\nstatus — it does not wait for the release to become healthy; poll\n`GET /v5/agentex/deployments/{deployment_id}` for status and Kubernetes events\nand `GET /v5/agentex/deployments/{deployment_id}/logs` for progress. This is the\ndeploy counterpart to `POST /v5/agentex/builds`: a build produces the container\nimage, a deployment runs that image. The referenced build must have finished\nsuccessfully, and the manifest's agent name must match the build's agent.\n\nSet `preview=True` for an ephemeral deployment: it gets a globally unique Helm\nrelease name (so concurrent redeploys never collide), an optional `preview_label`\nfor grouping, and an expiry (`expires_at`, defaulting to 8 hours from now);\n`preview_label` and `expires_at` are rejected on non-preview deploys. A\nnon-preview (production) deploy instead supersedes any prior active deployment\nthat shares its Helm release name. Fails with a client error if the build is\nmissing or not in a successful state, if the manifest or environment YAML is\ninvalid or their agent names disagree, or if a secret referenced by the manifest\ndoes not exist. Returns 409 if the target agent has an active key migration or\nan applicable incomplete managed-key handoff.","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/agentex/deployments","href":"/reference/v5/agentex-cloud-deploy/deploy-a-built-agent-image","autogeneratedByOpenApi":true}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":[],"openApiReferenceData":{"operation":{"tags":["Agentex Cloud Deploy"],"summary":"Deploy a built agent image","description":"Deploy a successfully built agent image to Kubernetes as a Helm release.\n\nTakes a completed build (referenced by `build_id`, or by `image_name` +\n`image_tag`) together with the agent manifest and environment config, then\nstarts an asynchronous Temporal workflow that provisions the agent as a Helm\nrelease. The call returns immediately with the deployment record in `PENDING`\nstatus — it does not wait for the release to become healthy; poll\n`GET /v5/agentex/deployments/{deployment_id}` for status and Kubernetes events\nand `GET /v5/agentex/deployments/{deployment_id}/logs` for progress. This is the\ndeploy counterpart to `POST /v5/agentex/builds`: a build produces the container\nimage, a deployment runs that image. The referenced build must have finished\nsuccessfully, and the manifest's agent name must match the build's agent.\n\nSet `preview=True` for an ephemeral deployment: it gets a globally unique Helm\nrelease name (so concurrent redeploys never collide), an optional `preview_label`\nfor grouping, and an expiry (`expires_at`, defaulting to 8 hours from now);\n`preview_label` and `expires_at` are rejected on non-preview deploys. A\nnon-preview (production) deploy instead supersedes any prior active deployment\nthat shares its Helm release name. Fails with a client error if the build is\nmissing or not in a successful state, if the manifest or environment YAML is\ninvalid or their agent names disagree, or if a secret referenced by the manifest\ndoes not exist. Returns 409 if the target agent has an active key migration or\nan applicable incomplete managed-key handoff.","operationId":"POST-V5-/agentex/deployments","security":["2746f079-1139-485a-aa47-0b7eeba6f91c"],"parameters":["b2b69ef1-66f2-4ccc-bdd9-fbfe5374198b"],"requestBody":"10a64720-ce4d-4e57-8c9d-6ad02f053b10","responses":{"200":"e5248e04-ef39-4f5e-ae8a-68191b6d1300","422":"3d3de692-1634-4358-b5c2-9e10ad4f4cc2"},"method":"post","type":"path","servers":["53d4b40c-6ecb-41f0-8721-9b4723f67775"],"path":"/v5/agentex/deployments","baseUrlOptions":["https://api.egp.scale.com"],"title":"Deploy a built agent image","codeSamples":[],"requiredOnlyExamples":false,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"b2b69ef1-66f2-4ccc-bdd9-fbfe5374198b":{"name":"x-selected-account-id","in":"header","required":false,"schema":{"oneOf":[{"type":"string","title":"Account ID Header","uniqueKey":"oneOf.0","typeLabel":"string"},{"type":"null","title":"Account ID Header","uniqueKey":"oneOf.1","typeLabel":"null"}],"isRequired":false,"uniqueKey":"","typeLabel":"string | null"}}},"requestBody":{"required":true,"content":{"application/json":{"schema":{"properties":{"manifest_file":{"type":"string","title":"Manifest File","description":"YAML content of manifest configuration.","isRequired":true,"uniqueKey":"manifest_file","typeLabel":"string"},"environment_config":{"type":"string","title":"Environment Config","description":"YAML content of environment configuration from the environment config file.","isRequired":true,"uniqueKey":"environment_config","typeLabel":"string"},"build_id":{"oneOf":[{"type":"string","title":"Build Id","description":"The build_id of the cloud build. Required if image_name and image_tag are not provided.","uniqueKey":"build_id.oneOf.0","typeLabel":"string"},{"type":"null","title":"Build Id","description":"The build_id of the cloud build. Required if image_name and image_tag are not provided.","uniqueKey":"build_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"build_id","typeLabel":"string | null"},"image_name":{"oneOf":[{"type":"string","title":"Image Name","description":"Name of the image to deploy. Required if build_id is not provided.","uniqueKey":"image_name.oneOf.0","typeLabel":"string"},{"type":"null","title":"Image Name","description":"Name of the image to deploy. Required if build_id is not provided.","uniqueKey":"image_name.oneOf.1","typeLabel":"null"}],"uniqueKey":"image_name","typeLabel":"string | null"},"image_tag":{"oneOf":[{"type":"string","title":"Image Tag","description":"Tag of the image to deploy. Required if build_id is not provided.","uniqueKey":"image_tag.oneOf.0","typeLabel":"string"},{"type":"null","title":"Image Tag","description":"Tag of the image to deploy. Required if build_id is not provided.","uniqueKey":"image_tag.oneOf.1","typeLabel":"null"}],"uniqueKey":"image_tag","typeLabel":"string | null"},"preview":{"oneOf":[{"type":"boolean","title":"Preview","description":"When True, creates a preview deployment with a unique deployment-id suffix appended to the helm release name.","default":false,"uniqueKey":"preview.oneOf.0","typeLabel":"boolean"},{"type":"null","title":"Preview","description":"When True, creates a preview deployment with a unique deployment-id suffix appended to the helm release name.","default":false,"uniqueKey":"preview.oneOf.1","typeLabel":"null"}],"uniqueKey":"preview","typeLabel":"boolean | null"},"preview_label":{"oneOf":[{"type":"string","title":"Preview Label","description":"Non-unique grouping label for the preview (e.g. branch name, PR number). Persisted on the deployment record so callers can list all deploys for a given label via `GET /v5/agentex/deployments?preview_label=X` (add `sort_order=desc\u0026limit=1` for the latest). Sanitized to lowercase alphanumeric + hyphens for K8s DNS-label compatibility (max 30 characters after sanitization). Each deploy still gets a unique helm release name regardless of label, so concurrent redeploys never share K8s resources. Only valid when preview=True.","uniqueKey":"preview_label.oneOf.0","typeLabel":"string"},{"type":"null","title":"Preview Label","description":"Non-unique grouping label for the preview (e.g. branch name, PR number). Persisted on the deployment record so callers can list all deploys for a given label via `GET /v5/agentex/deployments?preview_label=X` (add `sort_order=desc\u0026limit=1` for the latest). Sanitized to lowercase alphanumeric + hyphens for K8s DNS-label compatibility (max 30 characters after sanitization). Each deploy still gets a unique helm release name regardless of label, so concurrent redeploys never share K8s resources. Only valid when preview=True.","uniqueKey":"preview_label.oneOf.1","typeLabel":"null"}],"uniqueKey":"preview_label","typeLabel":"string | null"},"expires_at":{"oneOf":[{"type":"string","title":"Expires At","description":"ISO 8601 expiry timestamp. Only valid for preview deployments. If omitted on a preview deployment, defaults to 8 hours from now. Previews are always ephemeral and always have an expires_at.","format":"date-time","uniqueKey":"expires_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","title":"Expires At","description":"ISO 8601 expiry timestamp. Only valid for preview deployments. If omitted on a preview deployment, defaults to 8 hours from now. Previews are always ephemeral and always have an expires_at.","uniqueKey":"expires_at.oneOf.1","typeLabel":"null"}],"uniqueKey":"expires_at","typeLabel":"string\u003cdate-time> | null"}},"type":"object","required":["manifest_file","environment_config"],"title":"AgentexCloudDeployCreateRequest","uniqueKey":"","typeLabel":"AgentexCloudDeployCreateRequest · object"},"examples":{"Example":{"title":"Example","value":{"manifest_file":"\u003cstring>","environment_config":"\u003cstring>","build_id":"\u003cstring>","image_name":"\u003cstring>","image_tag":"\u003cstring>","preview":false,"preview_label":"\u003cstring>","expires_at":"2023-11-07T05:31:56Z"}}},"exampleType":"generated"}},"exampleType":"generated"},"responses":{"e5248e04-ef39-4f5e-ae8a-68191b6d1300":{"description":"Successful Response","content":{"application/json":{"schema":{"properties":{"id":{"type":"string","title":"Id","description":"The unique identifier of the deployment.","isRequired":true,"uniqueKey":"id","typeLabel":"string"},"namespace":{"type":"string","title":"Namespace","description":"Kubernetes namespace where the deployment is deployed.","isRequired":true,"uniqueKey":"namespace","typeLabel":"string"},"manifest_file":{"type":"string","title":"Manifest File","description":"YAML content of manifest configuration.","isRequired":true,"uniqueKey":"manifest_file","typeLabel":"string"},"environment_config":{"type":"string","title":"Environment Config","description":"YAML content of environment configuration from the environment config file.","isRequired":true,"uniqueKey":"environment_config","typeLabel":"string"},"status":{"type":"string","title":"Status","description":"Deployment status: pending, running, completed, failed, or cancelled.","isRequired":true,"uniqueKey":"status","typeLabel":"string"},"account_id":{"type":"string","title":"Account Id","description":"The ID of the account that owns the given entity.","isRequired":true,"uniqueKey":"account_id","typeLabel":"string"},"created_at":{"type":"string","format":"date-time","title":"Created At","description":"The date and time when the entity was created in ISO format.","isRequired":true,"uniqueKey":"created_at","typeLabel":"string\u003cdate-time>"},"created_by":{"properties":{"id":{"type":"string","title":"Id","isRequired":true,"uniqueKey":"created_by.id","typeLabel":"string"},"type":{"type":"string","enum":["user","service_account"],"title":"IdentityType","isRequired":true,"uniqueKey":"created_by.type","typeLabel":"enum\u003cstring>"},"object":{"type":"string","const":"identity","title":"Object","default":"identity","uniqueKey":"created_by.object","typeLabel":"string"}},"type":"object","required":["id","type"],"title":"Identity","description":"The identity that created the entity.","isRequired":true,"uniqueKey":"created_by","typeLabel":"Identity · object"},"object":{"type":"string","const":"agentex_cloud_deploy","title":"Object","default":"agentex_cloud_deploy","uniqueKey":"object","typeLabel":"string"},"build_id":{"oneOf":[{"type":"string","title":"Build Id","description":"The build_id of the cloud build that produced the deployed image.","uniqueKey":"build_id.oneOf.0","typeLabel":"string"},{"type":"null","title":"Build Id","description":"The build_id of the cloud build that produced the deployed image.","uniqueKey":"build_id.oneOf.1","typeLabel":"null"}],"uniqueKey":"build_id","typeLabel":"string | null"},"image_digest":{"oneOf":[{"type":"string","title":"Image Digest","description":"Registry manifest digest of the deployed image, served from the linked build record. Null when the build recorded no digest.","uniqueKey":"image_digest.oneOf.0","typeLabel":"string"},{"type":"null","title":"Image Digest","description":"Registry manifest digest of the deployed image, served from the linked build record. Null when the build recorded no digest.","uniqueKey":"image_digest.oneOf.1","typeLabel":"null"}],"uniqueKey":"image_digest","typeLabel":"string | null"},"helm_release_name":{"oneOf":[{"type":"string","title":"Helm Release Name","description":"Helm release name after successful deployment.","uniqueKey":"helm_release_name.oneOf.0","typeLabel":"string"},{"type":"null","title":"Helm Release Name","description":"Helm release name after successful deployment.","uniqueKey":"helm_release_name.oneOf.1","typeLabel":"null"}],"uniqueKey":"helm_release_name","typeLabel":"string | null"},"expires_at":{"oneOf":[{"type":"string","title":"Expires At","description":"When this deployment will be cleaned up. Always set on preview deployments (defaults to 8 hours from creation if the request omits it). Null on non-preview deployments — they have no TTL.","format":"date-time","uniqueKey":"expires_at.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","title":"Expires At","description":"When this deployment will be cleaned up. Always set on preview deployments (defaults to 8 hours from creation if the request omits it). Null on non-preview deployments — they have no TTL.","uniqueKey":"expires_at.oneOf.1","typeLabel":"null"}],"uniqueKey":"expires_at","typeLabel":"string\u003cdate-time> | null"},"preview_label":{"oneOf":[{"type":"string","title":"Preview Label","description":"Non-unique grouping label for preview deployments. Filter `?preview_label=X\u0026sort_order=desc\u0026limit=1` returns the latest deploy for the label. Sanitized (lowercase alphanumeric + hyphens) and capped at 30 characters.","uniqueKey":"preview_label.oneOf.0","typeLabel":"string"},{"type":"null","title":"Preview Label","description":"Non-unique grouping label for preview deployments. Filter `?preview_label=X\u0026sort_order=desc\u0026limit=1` returns the latest deploy for the label. Sanitized (lowercase alphanumeric + hyphens) and capped at 30 characters.","uniqueKey":"preview_label.oneOf.1","typeLabel":"null"}],"uniqueKey":"preview_label","typeLabel":"string | null"},"deploy_events":{"items":{"properties":{"type":{"oneOf":[{"type":"string","title":"Type","description":"Event type, e.g. 'Normal' or 'Warning'.","uniqueKey":"deploy_events.items.[INDEX].type.oneOf.0","typeLabel":"string"},{"type":"null","title":"Type","description":"Event type, e.g. 'Normal' or 'Warning'.","uniqueKey":"deploy_events.items.[INDEX].type.oneOf.1","typeLabel":"null"}],"uniqueKey":"deploy_events.items.[INDEX].type","typeLabel":"string | null"},"reason":{"oneOf":[{"type":"string","title":"Reason","description":"Short reason, e.g. 'Pulling', 'Scheduled'.","uniqueKey":"deploy_events.items.[INDEX].reason.oneOf.0","typeLabel":"string"},{"type":"null","title":"Reason","description":"Short reason, e.g. 'Pulling', 'Scheduled'.","uniqueKey":"deploy_events.items.[INDEX].reason.oneOf.1","typeLabel":"null"}],"uniqueKey":"deploy_events.items.[INDEX].reason","typeLabel":"string | null"},"message":{"oneOf":[{"type":"string","title":"Message","description":"Full event message.","uniqueKey":"deploy_events.items.[INDEX].message.oneOf.0","typeLabel":"string"},{"type":"null","title":"Message","description":"Full event message.","uniqueKey":"deploy_events.items.[INDEX].message.oneOf.1","typeLabel":"null"}],"uniqueKey":"deploy_events.items.[INDEX].message","typeLabel":"string | null"},"timestamp":{"oneOf":[{"type":"string","title":"Timestamp","description":"When the event was observed.","format":"date-time","uniqueKey":"deploy_events.items.[INDEX].timestamp.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","title":"Timestamp","description":"When the event was observed.","uniqueKey":"deploy_events.items.[INDEX].timestamp.oneOf.1","typeLabel":"null"}],"uniqueKey":"deploy_events.items.[INDEX].timestamp","typeLabel":"string\u003cdate-time> | null"}},"type":"object","title":"AgentexCloudDeployEvent","description":"Slim event representation for the API response.","uniqueKey":"deploy_events.items.[INDEX]","typeLabel":"AgentexCloudDeployEvent · object"},"type":"array","title":"Deploy Events","description":"Kubernetes events for this deployment.","uniqueKey":"deploy_events","typeLabel":"AgentexCloudDeployEvent · object[]"}},"type":"object","required":["id","namespace","manifest_file","environment_config","status","account_id","created_at","created_by"],"uniqueKey":"","typeLabel":"object"},"examples":{"Example":{"title":"Example","value":{"id":"\u003cstring>","namespace":"\u003cstring>","manifest_file":"\u003cstring>","environment_config":"\u003cstring>","status":"\u003cstring>","account_id":"\u003cstring>","created_at":"2023-11-07T05:31:56Z","created_by":{"id":"\u003cstring>","type":"user","object":"identity"},"object":"agentex_cloud_deploy","build_id":"\u003cstring>","image_digest":"\u003cstring>","helm_release_name":"\u003cstring>","expires_at":"2023-11-07T05:31:56Z","preview_label":"\u003cstring>","deploy_events":[{"type":"\u003cstring>","reason":"\u003cstring>","message":"\u003cstring>","timestamp":"2023-11-07T05:31:56Z"}]}}},"exampleType":"generated"}},"exampleType":"generated"},"3d3de692-1634-4358-b5c2-9e10ad4f4cc2":{"description":"Validation Error","content":{"application/json":{"schema":{"properties":{"detail":{"items":{"properties":{"loc":{"items":{"oneOf":[{"type":"string","uniqueKey":"detail.items.[INDEX].loc.items.[INDEX].oneOf.0","typeLabel":"string"},{"type":"integer","uniqueKey":"detail.items.[INDEX].loc.items.[INDEX].oneOf.1","typeLabel":"integer"}],"uniqueKey":"detail.items.[INDEX].loc.items.[INDEX]","typeLabel":"string | integer"},"type":"array","title":"Location","isRequired":true,"uniqueKey":"detail.items.[INDEX].loc","typeLabel":"(string | integer)[]"},"msg":{"type":"string","title":"Message","isRequired":true,"uniqueKey":"detail.items.[INDEX].msg","typeLabel":"string"},"type":{"type":"string","title":"Error Type","isRequired":true,"uniqueKey":"detail.items.[INDEX].type","typeLabel":"string"},"input":{"oneOf":[{"title":"Input"}],"uniqueKey":"detail.items.[INDEX].input","typeLabel":"any"},"ctx":{"type":"object","title":"Context","additionalProperties":true,"uniqueKey":"detail.items.[INDEX].ctx","typeLabel":"Context · object"}},"type":"object","required":["loc","msg","type"],"title":"ValidationError","uniqueKey":"detail.items.[INDEX]","typeLabel":"ValidationError · object"},"type":"array","title":"Detail","uniqueKey":"detail","typeLabel":"ValidationError · object[]"}},"type":"object","title":"HTTPValidationError","uniqueKey":"","typeLabel":"HTTPValidationError · object"},"examples":{"Example":{"title":"Example","value":{"detail":[{"loc":["\u003cstring>"],"msg":"\u003cstring>","type":"\u003cstring>","input":"\u003cunknown>","ctx":{}}]}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"2746f079-1139-485a-aa47-0b7eeba6f91c":{"APIKeyHeader":{"type":"apiKey","in":"header","name":"x-api-key","scopes":[],"schemeName":"APIKeyHeader"}}},"servers":{"53d4b40c-6ecb-41f0-8721-9b4723f67775":{"url":"https://api.egp.scale.com"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"apiKey","in":"header","name":"x-api-key","scopes":[],"schemeName":"APIKeyHeader"},"schema":{"title":"x-api-key","type":"string","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"APIKeyHeader","name":"x-api-key"}],"title":"APIKeyHeader"}]},"originalFileLocation":"openapi/v5.yaml"},"subdomain":"scalegp","siteName":"Scale AI","title":"Deploy a built agent image - Scale AI","navMaps":{"firstHrefInVersion":{"V5":{"href":"/reference/v5/agentex-cloud-deploy/deploy-a-built-agent-image","matchLevel":0},"V4 (legacy)":{"href":"/home","matchLevel":4}},"firstHrefInLanguage":{}},"lastModified":"2026-11-05T21:11:38.149Z","originalFileLocation":"reference/v5/agentex-cloud-deploy/deploy-a-built-agent-image.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=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Deploy a successfully built agent image to Kubernetes as a Helm release. Takes a completed build (referenced by build_id, or by image_name + image_tag) together with the agent manifest and environment config, then starts an asynchronous Temporal workflow that provisions the agent as a Helm release. The call returns immediately with the deployment record in PENDING status — it does not wait for the release to become healthy; poll GET /v5/agentex/deployments/{deployment_id} for status and Kubernetes events and GET /v5/agentex/deployments/{deployment_id}/logs for progress. This is the deploy counterpart to POST /v5/agentex/builds: a build produces the container image, a deployment runs that image. The referenced build must have finished successfully, and the manifest\u0026#x27;s agent name must match the build\u0026#x27;s agent. Set preview=True for an ephemeral deployment: it gets a globally unique Helm release name (so concurrent redeploys never collide), an optional preview_label for grouping, and an expiry (expires_at, defaulting to 8 hours from now); preview_label and expires_at are rejected on non-preview deploys. A non-preview (production) deploy instead supersedes any prior active deployment that shares its Helm release name. Fails with a client error if the build is missing or not in a successful state, if the manifest or environment YAML is invalid or their agent names disagree, or if a secret referenced by the manifest does not exist. Returns 409 if the target agent has an active key migration or an applicable incomplete managed-key handoff.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Scale AI\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/scalegp/UksUEh3sxckFW0X-/_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/scalegp/UksUEh3sxckFW0X-/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/scalegp/UksUEh3sxckFW0X-/_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/scalegp/UksUEh3sxckFW0X-/_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/scalegp/UksUEh3sxckFW0X-/_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/scalegp/UksUEh3sxckFW0X-/_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/scalegp/UksUEh3sxckFW0X-/_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/scalegp/UksUEh3sxckFW0X-/_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/scalegp/UksUEh3sxckFW0X-/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Deploy a built agent image - Scale AI\">\u003cmeta data-mint-head property=\"og:description\" content=\"Deploy a successfully built agent image to Kubernetes as a Helm release. Takes a completed build (referenced by build_id, or by image_name + image_tag) together with the agent manifest and environment config, then starts an asynchronous Temporal workflow that provisions the agent as a Helm release. The call returns immediately with the deployment record in PENDING status — it does not wait for the release to become healthy; poll GET /v5/agentex/deployments/{deployment_id} for status and Kubernetes events and GET /v5/agentex/deployments/{deployment_id}/logs for progress. This is the deploy counterpart to POST /v5/agentex/builds: a build produces the container image, a deployment runs that image. The referenced build must have finished successfully, and the manifest\u0026#x27;s agent name must match the build\u0026#x27;s agent. Set preview=True for an ephemeral deployment: it gets a globally unique Helm release name (so concurrent redeploys never collide), an optional preview_label for grouping, and an expiry (expires_at, defaulting to 8 hours from now); preview_label and expires_at are rejected on non-preview deploys. A non-preview (production) deploy instead supersedes any prior active deployment that shares its Helm release name. Fails with a client error if the build is missing or not in a successful state, if the manifest or environment YAML is invalid or their agent names disagree, or if a secret referenced by the manifest does not exist. Returns 409 if the target agent has an active key migration or an applicable incomplete managed-key handoff.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Scale AI\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.gp.scale.com/reference/v5/agentex-cloud-deploy/deploy-a-built-agent-image\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://scalegp.mintlify.site/_mintlify/api/og/v2?division=Agentex+Cloud+Deploy\u0026amp;title=Deploy+a+built+agent+image\u0026amp;description=Deploy+a+successfully+built+agent+image+to+Kubernetes+as+a+Helm+release.%0A%0ATakes+a+completed+build+%28referenced+by+%60build_id%60%2C+or+by+%60image_name%60+%2B%0A%60image_tag%60%29+t\u0026amp;theme=b7e87dd2f9a2a23155199f59\u0026amp;signature=5cc00b61de7a390e7bf5d20e05ec397a45cef0dfc1203556ef10070a52c7a7b0\">\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=\"Deploy a built agent image - Scale AI\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Deploy a successfully built agent image to Kubernetes as a Helm release. Takes a completed build (referenced by build_id, or by image_name + image_tag) together with the agent manifest and environment config, then starts an asynchronous Temporal workflow that provisions the agent as a Helm release. The call returns immediately with the deployment record in PENDING status — it does not wait for the release to become healthy; poll GET /v5/agentex/deployments/{deployment_id} for status and Kubernetes events and GET /v5/agentex/deployments/{deployment_id}/logs for progress. This is the deploy counterpart to POST /v5/agentex/builds: a build produces the container image, a deployment runs that image. The referenced build must have finished successfully, and the manifest\u0026#x27;s agent name must match the build\u0026#x27;s agent. Set preview=True for an ephemeral deployment: it gets a globally unique Helm release name (so concurrent redeploys never collide), an optional preview_label for grouping, and an expiry (expires_at, defaulting to 8 hours from now); preview_label and expires_at are rejected on non-preview deploys. A non-preview (production) deploy instead supersedes any prior active deployment that shares its Helm release name. Fails with a client error if the build is missing or not in a successful state, if the manifest or environment YAML is invalid or their agent names disagree, or if a secret referenced by the manifest does not exist. Returns 409 if the target agent has an active key migration or an applicable incomplete managed-key handoff.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://scalegp.mintlify.site/_mintlify/api/og/v2?division=Agentex+Cloud+Deploy\u0026amp;title=Deploy+a+built+agent+image\u0026amp;description=Deploy+a+successfully+built+agent+image+to+Kubernetes+as+a+Helm+release.%0A%0ATakes+a+completed+build+%28referenced+by+%60build_id%60%2C+or+by+%60image_name%60+%2B%0A%60image_tag%60%29+t\u0026amp;theme=b7e87dd2f9a2a23155199f59\u0026amp;signature=5cc00b61de7a390e7bf5d20e05ec397a45cef0dfc1203556ef10070a52c7a7b0\">\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/scalegp/UksUEh3sxckFW0X-/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Scale AI\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#3f2e7b\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.gp.scale.com/reference/v5/agentex-cloud-deploy/deploy-a-built-agent-image\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/reference/v5/agentex-cloud-deploy/deploy-a-built-agent-image.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.gp.scale.com/#organization\",\"name\":\"Scale AI\",\"url\":\"https://docs.gp.scale.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/scalegp/TBmst1qiYXwYqUB5/logo/light.png?fit=max\u0026auto=format\u0026n=TBmst1qiYXwYqUB5\u0026q=85\u0026s=46027042c16b373ac463148db5ad1d6b\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.gp.scale.com#website\",\"name\":\"Scale AI\",\"url\":\"https://docs.gp.scale.com\",\"publisher\":{\"@id\":\"https://docs.gp.scale.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.gp.scale.com/reference/v5/agentex-cloud-deploy/deploy-a-built-agent-image#webpage\",\"url\":\"https://docs.gp.scale.com/reference/v5/agentex-cloud-deploy/deploy-a-built-agent-image\",\"name\":\"Deploy a built agent image\",\"description\":\"Deploy a successfully built agent image to Kubernetes as a Helm release. Takes a completed build (referenced by build_id, or by image_name + image_tag) together with the agent manifest and environment config, then starts an asynchronous Temporal workflow that provisions the agent as a Helm release. The call returns immediately with the deployment record in PENDING status — it does not wait for the release to become healthy; poll GET /v5/agentex/deployments/{deployment_id} for status and Kubernetes events and GET /v5/agentex/deployments/{deployment_id}/logs for progress. This is the deploy counterpart to POST /v5/agentex/builds: a build produces the container image, a deployment runs that image. The referenced build must have finished successfully, and the manifest's agent name must match the build's agent. Set preview=True for an ephemeral deployment: it gets a globally unique Helm release name (so concurrent redeploys never collide), an optional preview_label for grouping, and an expiry (expires_at, defaulting to 8 hours from now); preview_label and expires_at are rejected on non-preview deploys. A non-preview (production) deploy instead supersedes any prior active deployment that shares its Helm release name. Fails with a client error if the build is missing or not in a successful state, if the manifest or environment YAML is invalid or their agent names disagree, or if a secret referenced by the manifest does not exist. Returns 409 if the target agent has an active key migration or an applicable incomplete managed-key handoff.\",\"dateModified\":\"2026-11-05T21:11:38.149Z\",\"isPartOf\":{\"@id\":\"https://docs.gp.scale.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.gp.scale.com/reference/v5/agentex-cloud-deploy/deploy-a-built-agent-image#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.gp.scale.com/reference/v5/agentex-cloud-deploy/deploy-a-built-agent-image#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Agentex Cloud Deploy\",\"item\":\"https://docs.gp.scale.com/reference/v5/agentex-cloud-deploy/list-agent-deployments\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Deploy a built agent image\",\"item\":\"https://docs.gp.scale.com/reference/v5/agentex-cloud-deploy/deploy-a-built-agent-image\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.gp.scale.com/reference/v5/agentex-cloud-deploy/deploy-a-built-agent-image#apireference\",\"headline\":\"Deploy a built agent image\",\"name\":\"Deploy a built agent image\",\"description\":\"Deploy a successfully built agent image to Kubernetes as a Helm release. Takes a completed build (referenced by build_id, or by image_name + image_tag) together with the agent manifest and environment config, then starts an asynchronous Temporal workflow that provisions the agent as a Helm release. The call returns immediately with the deployment record in PENDING status — it does not wait for the release to become healthy; poll GET /v5/agentex/deployments/{deployment_id} for status and Kubernetes events and GET /v5/agentex/deployments/{deployment_id}/logs for progress. This is the deploy counterpart to POST /v5/agentex/builds: a build produces the container image, a deployment runs that image. The referenced build must have finished successfully, and the manifest's agent name must match the build's agent. Set preview=True for an ephemeral deployment: it gets a globally unique Helm release name (so concurrent redeploys never collide), an optional preview_label for grouping, and an expiry (expires_at, defaulting to 8 hours from now); preview_label and expires_at are rejected on non-preview deploys. A non-preview (production) deploy instead supersedes any prior active deployment that shares its Helm release name. Fails with a client error if the build is missing or not in a successful state, if the manifest or environment YAML is invalid or their agent names disagree, or if a secret referenced by the manifest does not exist. Returns 409 if the target agent has an active key migration or an applicable incomplete managed-key handoff.\",\"url\":\"https://docs.gp.scale.com/reference/v5/agentex-cloud-deploy/deploy-a-built-agent-image\",\"mainEntityOfPage\":{\"@id\":\"https://docs.gp.scale.com/reference/v5/agentex-cloud-deploy/deploy-a-built-agent-image#webpage\"},\"dateModified\":\"2026-11-05T21:11:38.149Z\",\"publisher\":{\"@id\":\"https://docs.gp.scale.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.gp.scale.com#website\"}}]}\u003c/script>","siteName":"Scale AI","nav":{"global":null,"versions":[{"version":"V5","tabs":[{"tab":"Guides","pages":[{"title":"Guides","href":"/docs/v5/overview"}]},{"tab":"AgentOps API","groups":[{"group":"Inference","pages":[{"title":"Run inference with free-form payload","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/inference","href":"/reference/v5/inference/run-inference-with-free-form-payload"},{"title":"Generate OpenAI chat completion from messages","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/chat/completions","href":"/reference/v5/inference/generate-openai-chat-completion-from-messages"},{"title":"Run OpenAI Responses API (OpenAI only)","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/responses","href":"/reference/v5/inference/run-openai-responses-api-openai-only"},{"title":"Generate legacy text completion from prompt","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/completions","href":"/reference/v5/inference/generate-legacy-text-completion-from-prompt"},{"title":"List available chat completion models","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/chat/completions/models","href":"/reference/v5/inference/list-available-chat-completion-models"}]},{"group":"Questions","pages":[{"title":"List questions","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/questions","href":"/reference/v5/questions/list-questions"},{"title":"Create a question","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/questions","href":"/reference/v5/questions/create-a-question"},{"title":"Get a question","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/questions/{question_id}","href":"/reference/v5/questions/get-a-question"},{"title":"Archive a question","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml delete /v5/questions/{question_id}","href":"/reference/v5/questions/archive-a-question"},{"title":"Update a question","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml patch /v5/questions/{question_id}","href":"/reference/v5/questions/update-a-question"},{"title":"Restore an archived question","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/questions/{question_id}/restore","href":"/reference/v5/questions/restore-an-archived-question"}]},{"group":"Rubrics","pages":[{"title":"List rubrics","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/rubrics","href":"/reference/v5/rubrics/list-rubrics"},{"title":"Create a rubric","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/rubrics","href":"/reference/v5/rubrics/create-a-rubric"},{"title":"Get a rubric","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/rubrics/{rubric_id}","href":"/reference/v5/rubrics/get-a-rubric"},{"title":"Archive a rubric","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml delete /v5/rubrics/{rubric_id}","href":"/reference/v5/rubrics/archive-a-rubric"},{"title":"Update or restore a rubric","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml patch /v5/rubrics/{rubric_id}","href":"/reference/v5/rubrics/update-or-restore-a-rubric"},{"title":"Add a criterion to a rubric","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/rubrics/{rubric_id}/criteria","href":"/reference/v5/rubrics/add-a-criterion-to-a-rubric"},{"title":"Update a criterion","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml patch /v5/rubrics/{rubric_id}/criteria/{rubric_criteria_id}","href":"/reference/v5/rubrics/update-a-criterion"},{"title":"List criterion versions","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/rubrics/{rubric_id}/criteria/{rubric_criteria_id}/versions","href":"/reference/v5/rubrics/list-criterion-versions"}]},{"group":"Vector Stores","pages":[{"title":"List Vector Stores","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/vector-stores","href":"/reference/v5/vector-stores/list-vector-stores"},{"title":"Create Vector Store","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/vector-stores/create","href":"/reference/v5/vector-stores/create-vector-store"},{"title":"Get Vector Store","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/vector-stores/{vector_store_name}","href":"/reference/v5/vector-stores/get-vector-store"},{"title":"Configure Vector Store","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/vector-stores/{vector_store_name}/configure","href":"/reference/v5/vector-stores/configure-vector-store"},{"title":"Drop Vector Store","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/vector-stores/{vector_store_name}/drop","href":"/reference/v5/vector-stores/drop-vector-store"},{"title":"Upsert Vectors","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/vector-stores/{vector_store_name}/upsert","href":"/reference/v5/vector-stores/upsert-vectors"},{"title":"Delete Vectors","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/vector-stores/{vector_store_name}/delete","href":"/reference/v5/vector-stores/delete-vectors"},{"title":"List Vectors","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/vector-stores/{vector_store_name}/vectors","href":"/reference/v5/vector-stores/list-vectors"},{"title":"Get Vector","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/vector-stores/{vector_store_name}/vectors/{vector_id}","href":"/reference/v5/vector-stores/get-vector"},{"title":"Count Vectors","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/vector-stores/{vector_store_name}/count","href":"/reference/v5/vector-stores/count-vectors"},{"title":"Query Vectors","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/vector-stores/{vector_store_name}/query","href":"/reference/v5/vector-stores/query-vectors"}]},{"group":"Files","pages":[{"title":"List files","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/files","href":"/reference/v5/files/list-files"},{"title":"Upload file bytes directly","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/files","href":"/reference/v5/files/upload-file-bytes-directly"},{"title":"Import files from cloud storage","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/files/cloud_imports","href":"/reference/v5/files/import-files-from-cloud-storage"},{"title":"Get file metadata","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/files/{file_id}","href":"/reference/v5/files/get-file-metadata"},{"title":"Delete a file","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml delete /v5/files/{file_id}","href":"/reference/v5/files/delete-a-file"},{"title":"Update a file","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml patch /v5/files/{file_id}","href":"/reference/v5/files/update-a-file"},{"title":"Download file content","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/files/{file_id}/content","href":"/reference/v5/files/download-file-content"}]},{"group":"Models","pages":[{"title":"List custom models","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/models","href":"/reference/v5/models/list-custom-models"},{"title":"Create a custom model","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/models","href":"/reference/v5/models/create-a-custom-model"},{"title":"Get a custom model","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/models/{model_id}","href":"/reference/v5/models/get-a-custom-model"},{"title":"Delete a custom model","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml delete /v5/models/{model_id}","href":"/reference/v5/models/delete-a-custom-model"},{"title":"Update a custom model","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml patch /v5/models/{model_id}","href":"/reference/v5/models/update-a-custom-model"}]},{"group":"Agent Configs","pages":[{"title":"List Agent Configs","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/agent_configs","href":"/reference/v5/agent-configs/list-agent-configs"},{"title":"Create Agent Config","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/agent_configs","href":"/reference/v5/agent-configs/create-agent-config"},{"title":"List MCP Tool Names","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/agent_configs/mcp_tools","href":"/reference/v5/agent-configs/list-mcp-tool-names"},{"title":"Get Agent Config","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/agent_configs/{agent_config_id}","href":"/reference/v5/agent-configs/get-agent-config"},{"title":"Delete Agent Config (hard delete)","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml delete /v5/agent_configs/{agent_config_id}","href":"/reference/v5/agent-configs/delete-agent-config-hard-delete"},{"title":"Update Agent Config","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml patch /v5/agent_configs/{agent_config_id}","href":"/reference/v5/agent-configs/update-agent-config"}]},{"group":"Datasets","pages":[{"title":"List datasets","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/datasets","href":"/reference/v5/datasets/list-datasets"},{"title":"Create a dataset","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/datasets","href":"/reference/v5/datasets/create-a-dataset"},{"title":"Get a dataset","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/datasets/{dataset_id}","href":"/reference/v5/datasets/get-a-dataset"},{"title":"Archive a dataset","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml delete /v5/datasets/{dataset_id}","href":"/reference/v5/datasets/archive-a-dataset"},{"title":"Update or restore a dataset","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml patch /v5/datasets/{dataset_id}","href":"/reference/v5/datasets/update-or-restore-a-dataset"}]},{"group":"Dataset Items","pages":[{"title":"Add items to an existing dataset","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/dataset-items/batch","href":"/reference/v5/dataset-items/add-items-to-an-existing-dataset"},{"title":"Get a dataset item","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/dataset-items/{dataset_item_id}","href":"/reference/v5/dataset-items/get-a-dataset-item"},{"title":"Delete a dataset item","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml delete /v5/dataset-items/{dataset_item_id}","href":"/reference/v5/dataset-items/delete-a-dataset-item"},{"title":"Update a dataset item","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml patch /v5/dataset-items/{dataset_item_id}","href":"/reference/v5/dataset-items/update-a-dataset-item"},{"title":"List dataset items","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/dataset-items","href":"/reference/v5/dataset-items/list-dataset-items"}]},{"group":"Evaluations","pages":[{"title":"List Evaluations","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/evaluations","href":"/reference/v5/evaluations/list-evaluations"},{"title":"Create Evaluation","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/evaluations","href":"/reference/v5/evaluations/create-evaluation"},{"title":"Get Evaluation","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/evaluations/{evaluation_id}","href":"/reference/v5/evaluations/get-evaluation"},{"title":"Archive Evaluation","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml delete /v5/evaluations/{evaluation_id}","href":"/reference/v5/evaluations/archive-evaluation"},{"title":"Update or Restore Evaluation","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml patch /v5/evaluations/{evaluation_id}","href":"/reference/v5/evaluations/update-or-restore-evaluation"},{"title":"Add Test Criteria to Evaluation","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/evaluations/{evaluation_id}/tasks","href":"/reference/v5/evaluations/add-test-criteria-to-evaluation"},{"title":"Update Test Criteria Configuration","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml patch /v5/evaluations/{evaluation_id}/tasks/{alias}","href":"/reference/v5/evaluations/update-test-criteria-configuration"},{"title":"Get Available Metadata Keys","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/evaluations/metadata-keys","href":"/reference/v5/evaluations/get-available-metadata-keys"},{"title":"Get Available Evaluation Statuses","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/evaluations/statuses","href":"/reference/v5/evaluations/get-available-evaluation-statuses"},{"title":"Get Evaluation Data Schema","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/evaluations/{evaluation_id}/schema","href":"/reference/v5/evaluations/get-evaluation-data-schema"},{"title":"Get Evaluation Taxonomy","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/evaluations/{evaluation_id}/taxonomy","href":"/reference/v5/evaluations/get-evaluation-taxonomy"},{"title":"Filter Evaluations","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/evaluations/filter","href":"/reference/v5/evaluations/filter-evaluations"},{"title":"Dry-run a custom-function evaluation task","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/evaluations/tasks/dry-run","href":"/reference/v5/evaluations/dry-run-a-custom-function-evaluation-task"}]},{"group":"Evaluation Groups","pages":[{"title":"List Evaluation Groups","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/evaluation-groups","href":"/reference/v5/evaluation-groups/list-evaluation-groups"},{"title":"Create Evaluation Group","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/evaluation-groups","href":"/reference/v5/evaluation-groups/create-evaluation-group"},{"title":"Get Evaluation Group","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/evaluation-groups/{group_id}","href":"/reference/v5/evaluation-groups/get-evaluation-group"},{"title":"Update Evaluation Group","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml put /v5/evaluation-groups/{group_id}","href":"/reference/v5/evaluation-groups/update-evaluation-group"},{"title":"Archive Evaluation Group","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml delete /v5/evaluation-groups/{group_id}","href":"/reference/v5/evaluation-groups/archive-evaluation-group"},{"title":"Patch Evaluation Group","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml patch /v5/evaluation-groups/{group_id}","href":"/reference/v5/evaluation-groups/patch-evaluation-group"},{"title":"Get Evaluation Group Schema","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/evaluation-groups/{group_id}/schema","href":"/reference/v5/evaluation-groups/get-evaluation-group-schema"}]},{"group":"Evaluation Charts","pages":[{"title":"List Evaluation Charts","deprecated":true,"version":null,"openapi":"/openapi/v5.yaml get /v5/evaluation-charts","href":"/reference/v5/evaluation-charts/list-evaluation-charts"},{"title":"Create Evaluation Chart","deprecated":true,"version":null,"openapi":"/openapi/v5.yaml post /v5/evaluation-charts","href":"/reference/v5/evaluation-charts/create-evaluation-chart"},{"title":"Get Evaluation Chart","deprecated":true,"version":null,"openapi":"/openapi/v5.yaml get /v5/evaluation-charts/{chart_id}","href":"/reference/v5/evaluation-charts/get-evaluation-chart"},{"title":"Replace Evaluation Chart","deprecated":true,"version":null,"openapi":"/openapi/v5.yaml put /v5/evaluation-charts/{chart_id}","href":"/reference/v5/evaluation-charts/replace-evaluation-chart"},{"title":"Delete Evaluation Chart","deprecated":true,"version":null,"openapi":"/openapi/v5.yaml delete /v5/evaluation-charts/{chart_id}","href":"/reference/v5/evaluation-charts/delete-evaluation-chart"},{"title":"Patch Evaluation Chart","deprecated":true,"version":null,"openapi":"/openapi/v5.yaml patch /v5/evaluation-charts/{chart_id}","href":"/reference/v5/evaluation-charts/patch-evaluation-chart"}]},{"group":"Evaluation Dashboards","pages":[{"title":"List Evaluation Dashboards","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/evaluation-dashboards","href":"/reference/v5/evaluation-dashboards/list-evaluation-dashboards"},{"title":"Create Evaluation Dashboard","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/evaluation-dashboards","href":"/reference/v5/evaluation-dashboards/create-evaluation-dashboard"},{"title":"Get Evaluation Dashboard","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/evaluation-dashboards/{dashboard_id}","href":"/reference/v5/evaluation-dashboards/get-evaluation-dashboard"},{"title":"Delete Evaluation Dashboard","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml delete /v5/evaluation-dashboards/{dashboard_id}","href":"/reference/v5/evaluation-dashboards/delete-evaluation-dashboard"},{"title":"Patch Evaluation Dashboard","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml patch /v5/evaluation-dashboards/{dashboard_id}","href":"/reference/v5/evaluation-dashboards/patch-evaluation-dashboard"},{"title":"Add Widget to Dashboard","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/evaluation-dashboards/{dashboard_id}/widgets","href":"/reference/v5/evaluation-dashboards/add-widget-to-dashboard"},{"title":"Remove Widget from Dashboard","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml delete /v5/evaluation-dashboards/{dashboard_id}/widgets/{widget_id}","href":"/reference/v5/evaluation-dashboards/remove-widget-from-dashboard"},{"title":"Update Dashboard Widget","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml patch /v5/evaluation-dashboards/{dashboard_id}/widgets/{widget_id}","href":"/reference/v5/evaluation-dashboards/update-dashboard-widget"}]},{"group":"Evaluation Items","pages":[{"title":"Get a single evaluation item","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/evaluation-items/{evaluation_item_id}","href":"/reference/v5/evaluation-items/get-a-single-evaluation-item"},{"title":"List and filter evaluation items","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/evaluation-items","href":"/reference/v5/evaluation-items/list-and-filter-evaluation-items"},{"title":"Export evaluation items to a file","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/evaluation-items/export","href":"/reference/v5/evaluation-items/export-evaluation-items-to-a-file"}]},{"group":"Spans","pages":[{"title":"Create a span","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/spans","href":"/reference/v5/spans/create-a-span"},{"title":"Upsert spans in a batch","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml put /v5/spans/batch","href":"/reference/v5/spans/upsert-spans-in-a-batch"},{"title":"Create spans in a batch","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/spans/batch","href":"/reference/v5/spans/create-spans-in-a-batch"},{"title":"List trace deletion requests","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/spans/deletions","href":"/reference/v5/spans/list-trace-deletion-requests"},{"title":"Create trace deletion request","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/spans/deletions","href":"/reference/v5/spans/create-trace-deletion-request"},{"title":"Get trace deletion request status","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/spans/deletions/{deletion_request_id}","href":"/reference/v5/spans/get-trace-deletion-request-status"},{"title":"Get a span","deprecated":true,"version":null,"openapi":"/openapi/v5.yaml get /v5/spans/{span_id}","href":"/reference/v5/spans/get-a-span"},{"title":"Update a span","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml patch /v5/spans/{span_id}","href":"/reference/v5/spans/update-a-span"},{"title":"Get a span within a trace","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/traces/{trace_id}/spans/{span_id}","href":"/reference/v5/spans/get-a-span-within-a-trace"},{"title":"List span summaries for a trace","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/traces/{trace_id}/spans","href":"/reference/v5/spans/list-span-summaries-for-a-trace"},{"title":"Search spans","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/spans/search","href":"/reference/v5/spans/search-spans"},{"title":"Export spans","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/spans/export","href":"/reference/v5/spans/export-spans"},{"title":"Get span export status","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/spans/export/{export_id}","href":"/reference/v5/spans/get-span-export-status"},{"title":"Get time-bucketed span metrics","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/spans/metrics","href":"/reference/v5/spans/get-time-bucketed-span-metrics"},{"title":"Get span metrics grouped by name","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/spans/metrics/by-span","href":"/reference/v5/spans/get-span-metrics-grouped-by-name"}]},{"group":"Span Assessment","pages":[{"title":"List span or trace assessments","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/span-assessments","href":"/reference/v5/span-assessment/list-span-or-trace-assessments"},{"title":"Create span assessment","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/span-assessments","href":"/reference/v5/span-assessment/create-span-assessment"},{"title":"Get span assessment by ID","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/span-assessments/{span_assessment_id}","href":"/reference/v5/span-assessment/get-span-assessment-by-id"},{"title":"Permanently delete span assessment","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml delete /v5/span-assessments/{span_assessment_id}","href":"/reference/v5/span-assessment/permanently-delete-span-assessment"},{"title":"Update span assessment","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml patch /v5/span-assessments/{span_assessment_id}","href":"/reference/v5/span-assessment/update-span-assessment"}]},{"group":"Annotation Tasks","pages":[{"title":"Update or assign annotation tasks in bulk","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml patch /v5/annotation-tasks/batch","href":"/reference/v5/annotation-tasks/update-or-assign-annotation-tasks-in-bulk"}]},{"group":"Credentials","pages":[{"title":"List Credentials","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/credentials","href":"/reference/v5/credentials/list-credentials"},{"title":"Create Credential","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/credentials","href":"/reference/v5/credentials/create-credential"},{"title":"Get Credential by Name","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/credentials/name/{credential_name}","href":"/reference/v5/credentials/get-credential-by-name"},{"title":"Get Credential by ID","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/credentials/{credential_id}","href":"/reference/v5/credentials/get-credential-by-id"},{"title":"Delete Credential","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml delete /v5/credentials/{credential_id}","href":"/reference/v5/credentials/delete-credential"},{"title":"Update Credential","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml patch /v5/credentials/{credential_id}","href":"/reference/v5/credentials/update-credential"},{"title":"Get Credential Secret by ID","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/credentials/{credential_id}/secret","href":"/reference/v5/credentials/get-credential-secret-by-id"},{"title":"Get Credential Secret by Name","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/credentials/name/{credential_name}/secret","href":"/reference/v5/credentials/get-credential-secret-by-name"}]},{"group":"Agentex Cloud Build","pages":[{"title":"List container image builds","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/builds","href":"/reference/v5/agentex-cloud-build/list-container-image-builds"},{"title":"Submit container image build","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/builds","href":"/reference/v5/agentex-cloud-build/submit-container-image-build"},{"title":"List agents built but not deployed","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/builds/undeployed","href":"/reference/v5/agentex-cloud-build/list-agents-built-but-not-deployed"},{"title":"Get a build","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/builds/{build_id}","href":"/reference/v5/agentex-cloud-build/get-a-build"},{"title":"Stream build logs","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/builds/{build_id}/logs","href":"/reference/v5/agentex-cloud-build/stream-build-logs"},{"title":"Cancel a build","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/builds/{build_id}/cancel","href":"/reference/v5/agentex-cloud-build/cancel-a-build"}]},{"group":"Agentex Cloud Deploy","pages":[{"title":"List agent deployments","description":"List the account's agent deployments, with pagination and optional filters.\n\nReturns the deployments the caller is authorized to read. Optionally filter by\n`build_id`, by `agent_name` (matched through each deployment's associated build),\nor by `preview_label`. A `preview_label` is non-unique — many deployments can\nshare one (for example every deploy for a branch) — so combine it with\n`sort_order=desc\u0026limit=1` to fetch the latest deployment for that label; the\ndefault order is oldest first. This lists deployments (the running or attempted\nagent instances); to list the image builds they run, use the agentex builds API.","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/agentex/deployments","href":"/reference/v5/agentex-cloud-deploy/list-agent-deployments"},{"title":"Deploy a built agent image","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml post /v5/agentex/deployments","href":"/reference/v5/agentex-cloud-deploy/deploy-a-built-agent-image"},{"title":"Get an agent deployment","description":"Get a single agent deployment by ID, including its current status and Kubernetes events.\n\nReturns the deployment record with its latest status and the associated\nKubernetes events (`deploy_events`) observed for the release, which are useful\nfor diagnosing why a deployment is still pending or unhealthy. Poll this after\n`POST /v5/agentex/deployments` to track the asynchronous deploy to completion.\nFor the incremental log output rather than status and events, use\n`GET /v5/agentex/deployments/{deployment_id}/logs`. Returns 404 if no deployment\nwith this ID exists for the caller's account.","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/agentex/deployments/{deployment_id}","href":"/reference/v5/agentex-cloud-deploy/get-an-agent-deployment"},{"title":"Delete and tear down a deployment","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml delete /v5/agentex/deployments/{deployment_id}","href":"/reference/v5/agentex-cloud-deploy/delete-and-tear-down-a-deployment"},{"title":"Get agent deployment logs","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml get /v5/agentex/deployments/{deployment_id}/logs","href":"/reference/v5/agentex-cloud-deploy/get-agent-deployment-logs"}]},{"group":"Agentex Agent","pages":[{"title":"Delete Agent","deprecated":null,"version":null,"openapi":"/openapi/v5.yaml delete /v5/agentex/agents/{agent_id}","href":"/reference/v5/agentex-agent/delete-agent"}]},{"group":"SGP Cloud Secrets","pages":[{"title":"List Secrets","deprecated":true,"version":null,"openapi":"/openapi/v5.yaml get /v5/sgp/secrets","href":"/reference/v5/sgp-cloud-secrets/list-secrets"},{"title":"Create Secret","deprecated":true,"version":null,"openapi":"/openapi/v5.yaml post /v5/sgp/secrets","href":"/reference/v5/sgp-cloud-secrets/create-secret"},{"title":"Get Secret","deprecated":true,"version":null,"openapi":"/openapi/v5.yaml get /v5/sgp/secrets/{secret_id}","href":"/reference/v5/sgp-cloud-secrets/get-secret"},{"title":"Delete Secret","deprecated":true,"version":null,"openapi":"/openapi/v5.yaml delete /v5/sgp/secrets/{secret_id}","href":"/reference/v5/sgp-cloud-secrets/delete-secret"},{"title":"Update Secret","deprecated":true,"version":null,"openapi":"/openapi/v5.yaml patch /v5/sgp/secrets/{secret_id}","href":"/reference/v5/sgp-cloud-secrets/update-secret"}]}]},{"tab":"AgentOps SDK","href":"https://scaleapi.github.io/sgp-sdk-docs/api/python/"},{"tab":"Agentex API","pages":[{"title":"Agentex API","href":"/reference/agentex/agents/get-agent-by-id"}]},{"tab":"Agentex SDK","href":"https://scaleapi.github.io/agentex-sdk-docs/api/python/"},{"tab":"Capabilities","pages":[{"title":"Capabilities","href":"/docs/capabilities/overview"}]},{"tab":"Dex API","pages":[{"title":"Dex API","href":"/reference/dex/projects/list-projects"}]}]},{"version":"V4 (legacy)","pages":[{"title":"V4 (legacy)","href":"/home"}]}]},"basePath":"","title":"Deploy a built agent image - Scale AI","buildId":"dpl_FWZhTb2vab28gFGFH4ojka6qEznQ","deploymentId":"dpl_FWZhTb2vab28gFGFH4ojka6qEznQ","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-CBsVopKK.js","utils-DZAk68jJ.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-D32AYZrP.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-D_A5_cny.js","snippetPresets-xNRfS9th.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","conditional-requirements-CFM0id0Q.js","ApiExamples-BIB25-tq.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-CydJ4w4j.js","shallow-CYPBeQSG.js","getApiPlaygroundDisplay-A5xJVBOu.js","CodeSnippet-BVRTgi3m.js","CodeSnippets-DjD6BSlt.js","Page-Dr40SSJq.js","getPastedJson-D4V4JyrR.js","icon-uhcnG22T.js","MethodPill-CM-ZQdGH.js","DuplicateIcon-B_WnOiNf.js","createIcon-CJsb8utt.js","DynamicMarkdown-D-2HDKEp.js","SectionHeading-KP5xmMgQ.js","axios-vUo_bRtp.js","Markdown-D_k0dg6k.js","clsx-DK3K4Z1S.js","lib-DuNMoZ05.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-DE3EVdvd.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-fN9H9n9g.js"]}