title: Update Deployment url: https://platform.claude.com/docs/en/api/beta/deployments/update
Update Deployment
POST /v1/deployments/{deployment_id}
Update Deployment
Path parameters
deployment_id: string
Headers
-
"anthropic-beta": optional array of AnthropicBetaOptional header to specify the beta version(s) you want to use.
-
string -
"message-batches-2024-09-24" or "prompt-caching-2024-07-31" or "computer-use-2024-10-22" or 43 more-
"message-batches-2024-09-24" -
"prompt-caching-2024-07-31" -
"computer-use-2024-10-22" -
"computer-use-2025-01-24" -
"pdfs-2024-09-25" -
"token-counting-2024-11-01" -
"token-efficient-tools-2025-02-19" -
"output-128k-2025-02-19" -
"files-api-2025-04-14" -
"mcp-client-2025-04-04" -
"mcp-client-2025-11-20" -
"dev-full-thinking-2025-05-14" -
"interleaved-thinking-2025-05-14" -
"code-execution-2025-05-22" -
"extended-cache-ttl-2025-04-11" -
"context-1m-2025-08-07" -
"context-management-2025-06-27" -
"model-context-window-exceeded-2025-08-26" -
"skills-2025-10-02" -
"fast-mode-2026-02-01" -
"output-300k-2026-03-24" -
"user-profiles-2026-03-24" -
"user-profiles-2026-08-18" -
"user-profiles-2026-09-04" -
"advisor-tool-2026-03-01" -
"managed-agents-2026-04-01" -
"cache-diagnosis-2026-04-07" -
"dreaming-2026-04-21" -
"thinking-token-count-2026-05-13" -
"server-side-fallback-2026-06-01" -
"server-side-fallback-2026-07-01" -
"fallback-credit-2026-06-01" -
"fallback-credit-2026-07-01" -
"agent-memory-2026-07-22" -
"mid-conversation-tool-changes-2026-07-01" -
"compact-2026-01-12" -
"computer-use-2025-11-24" -
"mcp-tunnels-2026-06-22" -
"structured-outputs-2025-11-13" -
"task-budgets-2026-03-13" -
"thinking-display-updates-2026-08-18" -
"ce-user-management-2026-07-13" -
"mid-conversation-output-config-2026-07-01" -
"thinking-binding-controls-2026-08-01" -
"mid-conversation-system-clear-at-2026-08-21" -
"compact-2026-09-04"
-
-
-
"anthropic-workspace-id": optional string
Body parameters
-
agent: optional string or BetaManagedAgentsAgentParamsAgent to deploy. Accepts the
agentID string, which re-pins to the latest version, or anagentobject with both id and version specified. Omit to preserve. Cannot be cleared.-
string -
BetaManagedAgentsAgentParams objectSpecification for an Agent. Provide a specific
versionor use the short-formagent="agent_id"for the most recent version-
type: "agent" -
id: stringThe
agentID.minLength: 1, maxLength: 128
-
version: optional numberThe specific
agentversion to use. Omit to use the latest version. Must be at least 1 if specified.format: int32
-
-
-
budget: optional BetaManagedAgentsBudgetLimit or nullA hard spend ceiling. The session stops issuing new model requests once the tracked list cost reaches
max_list_cost.-
type: "limit" -
max_list_cost: BetaMonetaryAmountA monetary amount in a specific currency.
-
amount: stringAmount in minor units of the currency, as an integer decimal string with no leading zeros: "2500" is $25.00 and "50" is fifty cents. A string rather than a number so no float rounding is ever applied.
-
currency: BetaCurrencyUppercase ISO-4217 currency code.
USDis the only currency currently supported; the accepted set is closed and grows only when a new currency is priced.
-
-
-
description: optional string or nullDescription. Omit to preserve; send empty string or null to clear.
maxLength: 2048
-
environment_id: optional stringID of the
environmentwhere sessions run. Omit to preserve. Cannot be cleared.maxLength: 128
-
initial_events: optional array of BetaManagedAgentsDeploymentInitialEventParamsInitial events. Full replacement. Omit to preserve. Cannot be cleared. At least 1, maximum 50.
-
BetaManagedAgentsUserMessageEventParams objectParameters for sending a user message to the session.
-
type: "user.message" -
content: array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsRedactedBlockArray of content blocks for the user message.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
type: "text" -
text: stringThe text content.
minLength: 1
-
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
type: "image" -
source: BetaManagedAgentsBase64ImageSource or BetaManagedAgentsURLImageSource or BetaManagedAgentsFileImageSourceUnion type for image source variants.
-
BetaManagedAgentsBase64ImageSource objectBase64-encoded image data.
-
type: "base64" -
data: stringBase64-encoded image data.
minLength: 1
-
media_type: stringMIME type of the image (e.g., "image/png", "image/jpeg", "image/gif", "image/webp").
minLength: 1
-
-
BetaManagedAgentsURLImageSource objectImage referenced by URL.
-
type: "url" -
url: stringURL of the image to fetch.
minLength: 1
-
-
BetaManagedAgentsFileImageSource objectImage referenced by file ID.
-
type: "file" -
file_id: stringID of a previously uploaded file.
minLength: 1
-
-
-
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
type: "document" -
source: BetaManagedAgentsBase64DocumentSource or BetaManagedAgentsPlainTextDocumentSource or BetaManagedAgentsURLDocumentSource or BetaManagedAgentsFileDocumentSourceUnion type for document source variants.
-
BetaManagedAgentsBase64DocumentSource objectBase64-encoded document data.
-
type: "base64" -
data: stringBase64-encoded document data.
minLength: 1
-
media_type: stringMIME type of the document (e.g., "application/pdf").
minLength: 1
-
-
BetaManagedAgentsPlainTextDocumentSource objectPlain text document content.
-
type: "text" -
data: stringThe plain text content.
minLength: 1
-
media_type: "text/plain"MIME type of the text content. Must be "text/plain".
-
-
BetaManagedAgentsURLDocumentSource objectDocument referenced by URL.
-
type: "url" -
url: stringURL of the document to fetch.
minLength: 1
-
-
BetaManagedAgentsFileDocumentSource objectDocument referenced by file ID.
-
type: "file" -
file_id: stringID of a previously uploaded file.
minLength: 1
-
-
-
context: optional string or nullAdditional context about the document for the model.
-
title: optional string or nullThe title of the document.
-
-
BetaManagedAgentsRedactedBlock objectPlaceholder for content withheld by Anthropic model policy.
type: "redacted"
-
-
-
BetaManagedAgentsUserDefineOutcomeEventParams objectParameters for defining an outcome the agent should work toward. The agent begins work on receipt.
-
type: "user.define_outcome" -
description: stringWhat the agent should produce. This is the task specification.
-
rubric: BetaManagedAgentsFileRubricParams or BetaManagedAgentsTextRubricParamsRubric for grading the quality of an outcome.
-
BetaManagedAgentsFileRubricParams objectRubric referenced by a file uploaded via the Files API.
-
type: "file" -
file_id: stringID of the rubric file.
-
-
BetaManagedAgentsTextRubricParams objectRubric content provided inline as text.
-
type: "text" -
content: stringRubric content. Plain text or markdown — the grader treats it as freeform text. Maximum 262144 characters.
maxLength: 262144
-
-
-
max_iterations: optional number or nullEval→revision cycles before giving up. Default 3, max 20.
format: int32
-
-
BetaManagedAgentsSystemMessageEventParams objectPrivileged context for the accompanying turn and all subsequent turns, appended to the session's system context as a
role: "system"turn rather than replacing the top-level system prompt. At most one per request: it must be the final event and immediately follow theuser.message,user.tool_result, oruser.custom_tool_resultit accompanies. Only supported on models that accept mid-conversation system messages.-
type: "system.message" -
content: array of BetaManagedAgentsSystemContentBlockSystem content blocks to append. Text-only.
-
type: "text" -
text: stringThe text content.
minLength: 1
-
-
-
-
metadata: optional map[string] or nullMetadata patch. Set a key to a string to upsert it, or to null to delete it. Omit the field to preserve. The stored bag is limited to 16 keys (up to 64 chars each) with values up to 512 chars.
-
name: optional stringHuman-readable name. Must be non-empty. Omit to preserve. Cannot be cleared.
maxLength: 256
-
resources: optional array of BetaManagedAgentsGitHubRepositoryResourceParams or BetaManagedAgentsFileResourceParams or BetaManagedAgentsMemoryStoreResourceParam or nullSession resources. Full replacement. Omit to preserve; send empty array or null to clear. Maximum 500.
-
BetaManagedAgentsGitHubRepositoryResourceParams objectMount a GitHub repository into the session's container.
-
type: "github_repository" -
url: stringGithub URL of the repository
minLength: 1, maxLength: 2048
-
authorization_token: optional stringGitHub authorization token used to clone the repository. Required for private repositories; optional for public ones.
minLength: 1, maxLength: 4096
-
checkout: optional BetaManagedAgentsBranchCheckout or BetaManagedAgentsCommitCheckout or nullBranch or commit to check out. Defaults to the repository's default branch.
-
BetaManagedAgentsBranchCheckout object-
type: "branch" -
name: stringBranch name to check out.
minLength: 1, maxLength: 255
-
-
BetaManagedAgentsCommitCheckout object-
type: "commit" -
sha: stringFull commit SHA to check out.
minLength: 7, maxLength: 64
-
-
-
mount_path: optional string or nullMount path in the container. Defaults to
/workspace/<repo-name>.minLength: 1, maxLength: 4096
-
-
BetaManagedAgentsFileResourceParams objectMount a file uploaded via the Files API into the session.
-
type: "file" -
file_id: stringID of a previously uploaded file.
minLength: 1, maxLength: 128
-
mount_path: optional string or nullMount path in the container. Defaults to
/mnt/session/uploads/<file_id>.minLength: 1, maxLength: 4096
-
-
BetaManagedAgentsMemoryStoreResourceParam objectParameters for attaching a memory store to an agent session.
-
type: "memory_store" -
memory_store_id: stringThe memory store ID (memstore_...). Must belong to the caller's organization and workspace.
-
access: optional "read_write" or "read_only" or nullAccess mode for an attached memory store.
-
"read_write" -
"read_only"
-
-
instructions: optional string or nullPer-attachment guidance for the agent on how to use this store. Rendered into the memory section of the system prompt. Max 4096 chars.
maxLength: 4096
-
-
-
schedule: optional BetaManagedAgentsScheduleParams or null5-field POSIX cron schedule. Literal wall-clock matching in the configured timezone.
-
type: "cron" -
expression: string5-field POSIX cron expression: minute hour day-of-month month day-of-week (e.g., "0 9 * * 1-5" for weekdays at 9am). Day-of-week is 0-7 where 0 and 7 both mean Sunday. Extended cron syntax - seconds or year fields, and the special characters L, W, #, and ? - is not supported, nor are predefined shortcuts (@daily).
minLength: 1, maxLength: 256
-
timezone: stringRequired. IANA timezone identifier (e.g., "America/Los_Angeles", "UTC"). Validated against the IANA timezone database.
minLength: 1
-
-
vault_ids: optional array of string or nullVault IDs. Full replacement. Omit to preserve; send empty array or null to clear. Maximum 50.
Returns
-
BetaManagedAgentsDeployment objectA deployment is a configured instance of an agent — it binds the agent to everything needed to run it autonomously: an environment, credentials, initial events, and an optional schedule.
-
type: "deployment" -
id: stringUnique identifier for this deployment.
-
agent: BetaManagedAgentsAgentReferenceA resolved agent reference with a concrete version.
-
type: "agent" -
id: string -
version: numberformat: int32
-
-
archived_at: string or nullA timestamp in RFC 3339 format
format: date-time
-
created_at: stringA timestamp in RFC 3339 format
format: date-time
-
description: string or nullDescription of what the deployment does.
-
environment_id: stringID of the
environmentwhere sessions run. -
initial_events: array of BetaManagedAgentsDeploymentInitialEventEvents sent to each session immediately after creation.
-
BetaManagedAgentsDeploymentUserMessageEvent objectA user message sent to the session.
-
type: "user.message" -
content: array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsRedactedBlockArray of content blocks for the user message.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
type: "text" -
text: stringThe text content.
minLength: 1
-
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
type: "image" -
source: BetaManagedAgentsBase64ImageSource or BetaManagedAgentsURLImageSource or BetaManagedAgentsFileImageSourceUnion type for image source variants.
-
BetaManagedAgentsBase64ImageSource objectBase64-encoded image data.
-
type: "base64" -
data: stringBase64-encoded image data.
minLength: 1
-
media_type: stringMIME type of the image (e.g., "image/png", "image/jpeg", "image/gif", "image/webp").
minLength: 1
-
-
BetaManagedAgentsURLImageSource objectImage referenced by URL.
-
type: "url" -
url: stringURL of the image to fetch.
minLength: 1
-
-
BetaManagedAgentsFileImageSource objectImage referenced by file ID.
-
type: "file" -
file_id: stringID of a previously uploaded file.
minLength: 1
-
-
-
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
type: "document" -
source: BetaManagedAgentsBase64DocumentSource or BetaManagedAgentsPlainTextDocumentSource or BetaManagedAgentsURLDocumentSource or BetaManagedAgentsFileDocumentSourceUnion type for document source variants.
-
BetaManagedAgentsBase64DocumentSource objectBase64-encoded document data.
-
type: "base64" -
data: stringBase64-encoded document data.
minLength: 1
-
media_type: stringMIME type of the document (e.g., "application/pdf").
minLength: 1
-
-
BetaManagedAgentsPlainTextDocumentSource objectPlain text document content.
-
type: "text" -
data: stringThe plain text content.
minLength: 1
-
media_type: "text/plain"MIME type of the text content. Must be "text/plain".
-
-
BetaManagedAgentsURLDocumentSource objectDocument referenced by URL.
-
type: "url" -
url: stringURL of the document to fetch.
minLength: 1
-
-
BetaManagedAgentsFileDocumentSource objectDocument referenced by file ID.
-
type: "file" -
file_id: stringID of a previously uploaded file.
minLength: 1
-
-
-
context: optional string or nullAdditional context about the document for the model.
-
title: optional string or nullThe title of the document.
-
-
BetaManagedAgentsRedactedBlock objectPlaceholder for content withheld by Anthropic model policy.
type: "redacted"
-
-
-
BetaManagedAgentsDeploymentUserDefineOutcomeEvent objectAn outcome the agent should work toward. The agent begins work on receipt.
-
type: "user.define_outcome" -
description: stringWhat the agent should produce. This is the task specification.
-
rubric: BetaManagedAgentsFileRubric or BetaManagedAgentsTextRubricRubric for grading the quality of an outcome.
-
BetaManagedAgentsFileRubric objectRubric referenced by a file uploaded via the Files API.
-
type: "file" -
file_id: stringID of the rubric file.
-
-
BetaManagedAgentsTextRubric objectRubric content provided inline as text.
-
type: "text" -
content: stringRubric content. Plain text or markdown — the grader treats it as freeform text.
-
-
-
max_iterations: optional number or nullEval→revision cycles before giving up. Default 3, max 20.
format: int32
-
-
BetaManagedAgentsDeploymentSystemMessageEvent objectPrivileged context for the accompanying turn and all subsequent turns, appended to the session's system context as a
role: "system"turn rather than replacing the top-level system prompt.-
type: "system.message" -
content: array of BetaManagedAgentsSystemContentBlockSystem content blocks to append. Text-only.
-
type: "text" -
text: stringThe text content.
minLength: 1
-
-
-
-
metadata: map[string]Arbitrary key-value metadata. Maximum 16 pairs.
-
name: stringHuman-readable name.
-
paused_reason: BetaManagedAgentsDeploymentPausedReason or nullWhy a deployment is paused. Non-null exactly when
statusispaused.-
BetaManagedAgentsManualDeploymentPausedReason objectThe caller invoked the pause endpoint on the deployment.
type: "manual"
-
BetaManagedAgentsErrorDeploymentPausedReason objectA scheduled fire recorded a failed run whose error auto-pauses the deployment.
-
type: "error" -
error: BetaManagedAgentsDeploymentPausedReasonErrorThe error that triggered an auto-pause. Matches the failed run's
error.type.-
BetaManagedAgentsEnvironmentArchivedDeploymentPausedReasonError objectThe deployment's environment was archived.
type: "environment_archived_error"
-
BetaManagedAgentsAgentArchivedDeploymentPausedReasonError objectThe deployment's agent was archived.
type: "agent_archived_error"
-
BetaManagedAgentsEnvironmentNotFoundDeploymentPausedReasonError objectThe deployment's environment no longer exists.
type: "environment_not_found_error"
-
BetaManagedAgentsVaultNotFoundDeploymentPausedReasonError objectA vault referenced by the deployment no longer exists.
type: "vault_not_found_error"
-
BetaManagedAgentsFileNotFoundDeploymentPausedReasonError objectA file resource referenced by the deployment no longer exists.
type: "file_not_found_error"
-
BetaManagedAgentsSessionResourceNotFoundDeploymentPausedReasonError objectA referenced resource no longer exists and its kind was not reported.
type: "session_resource_not_found_error"
-
BetaManagedAgentsWorkspaceArchivedDeploymentPausedReasonError objectThe deployment's workspace was archived.
type: "workspace_archived_error"
-
BetaManagedAgentsOrganizationDisabledDeploymentPausedReasonError objectThe deployment's organization is disabled.
type: "organization_disabled_error"
-
BetaManagedAgentsMemoryStoreArchivedDeploymentPausedReasonError objectA memory store referenced by the deployment is archived.
type: "memory_store_archived_error"
-
BetaManagedAgentsSkillNotFoundDeploymentPausedReasonError objectA skill referenced by the deployment's agent no longer exists.
type: "skill_not_found_error"
-
BetaManagedAgentsVaultArchivedDeploymentPausedReasonError objectA vault referenced by the deployment is archived.
type: "vault_archived_error"
-
BetaManagedAgentsUnknownDeploymentPausedReasonError objectAn unrecognized error auto-paused the deployment. A fallback variant; matches a run whose
error.typeisunknown_error.type: "unknown_error"
-
BetaManagedAgentsSelfHostedResourcesUnsupportedDeploymentPausedReasonError objectThe deployment configures resources, but its environment is self-hosted and cannot mount them.
type: "self_hosted_resources_unsupported_error"
-
BetaManagedAgentsMCPEgressBlockedDeploymentPausedReasonError objectAn MCP server host used by the deployment's agent is blocked by the environment's network policy.
type: "mcp_egress_blocked_error"
-
-
-
-
resources: array of BetaManagedAgentsSessionResourceConfigResources attached to sessions created from this deployment. Echoes the input minus write-only credentials.
-
BetaManagedAgentsGitHubRepositoryResourceConfig objectA GitHub repository mounted into each session's container. The authorization token is write-only and never returned.
-
type: "github_repository" -
url: stringGithub URL of the repository
-
checkout: optional BetaManagedAgentsBranchCheckout or BetaManagedAgentsCommitCheckout or nullBranch or commit to check out. Defaults to the repository's default branch.
-
BetaManagedAgentsBranchCheckout object-
type: "branch" -
name: stringBranch name to check out.
minLength: 1, maxLength: 255
-
-
BetaManagedAgentsCommitCheckout object-
type: "commit" -
sha: stringFull commit SHA to check out.
minLength: 7, maxLength: 64
-
-
-
mount_path: optional string or nullMount path in the container. Defaults to
/workspace/<repo-name>.
-
-
BetaManagedAgentsFileResourceConfig objectA file mounted into each session's container.
-
type: "file" -
file_id: stringID of a previously uploaded file.
-
mount_path: optional string or nullMount path in the container. Defaults to
/mnt/session/uploads/<file_id>.
-
-
BetaManagedAgentsMemoryStoreResourceConfig objectA memory store attached to each session created from this deployment.
-
type: "memory_store" -
memory_store_id: stringThe memory store ID (memstore_...). Must belong to the caller's organization and workspace.
-
access: optional "read_write" or "read_only" or nullAccess mode for an attached memory store.
-
"read_write" -
"read_only"
-
-
instructions: optional string or nullPer-attachment guidance for the agent on how to use this store. Rendered into the memory section of the system prompt. Max 4096 chars.
-
-
-
schedule: BetaManagedAgentsSchedule or null5-field POSIX cron schedule with computed runtime timestamps.
-
type: "cron" -
expression: string5-field POSIX cron expression: minute hour day-of-month month day-of-week (e.g., "0 9 * * 1-5" for weekdays at 9am). Day-of-week is 0-7 where 0 and 7 both mean Sunday. Extended cron syntax - seconds or year fields, and the special characters L, W, #, and ? - is not supported, nor are predefined shortcuts (@daily).
minLength: 1, maxLength: 256
-
timezone: stringIANA timezone identifier (e.g., "America/Los_Angeles", "UTC").
minLength: 1
-
last_run_at: optional string or nullA timestamp in RFC 3339 format
format: date-time
-
upcoming_runs_at: optional array of stringUp to 5 timestamps of upcoming cron occurrences. Non-empty for active and paused deployments (reflects what the schedule would do if unpaused); empty once the deployment is archived (
archived_atset). Each fire is offset by a small per-schedule jitter, so a run will actually start at or shortly after its listed time.
-
-
status: BetaManagedAgentsDeploymentStatusLifecycle status of a deployment.
-
"active" -
"paused"
-
-
updated_at: stringA timestamp in RFC 3339 format
format: date-time
-
vault_ids: array of stringVault IDs supplying stored credentials for sessions created from this deployment.
-
budget: optional BetaManagedAgentsBudgetLimit or nullA hard spend ceiling. The session stops issuing new model requests once the tracked list cost reaches
max_list_cost.-
type: "limit" -
max_list_cost: BetaMonetaryAmountA monetary amount in a specific currency.
-
amount: stringAmount in minor units of the currency, as an integer decimal string with no leading zeros: "2500" is $25.00 and "50" is fifty cents. A string rather than a number so no float rounding is ever applied.
-
currency: BetaCurrencyUppercase ISO-4217 currency code.
USDis the only currency currently supported; the accepted set is closed and grows only when a new currency is priced.
-
-
-
Example
curl https://api.anthropic.com/v1/deployments/$DEPLOYMENT_ID \
-H 'Content-Type: application/json' \
-H 'anthropic-version: 2023-06-01' \
-H 'anthropic-beta: managed-agents-2026-04-01' \
-H "X-Api-Key: $ANTHROPIC_API_KEY" \
-d '{}'Response (200)
{
"id": "depl_011CZkZcDH3vPqd7xnEfwTai",
"agent": {
"id": "agent_011CZkYpogX7uDKUyvBTophP",
"type": "agent",
"version": 1
},
"archived_at": null,
"created_at": "2026-03-15T10:00:00Z",
"description": "Compiles yesterday's orders into a report every weekday morning.",
"environment_id": "env_011CZkZ9X2dpNyB7HsEFoRfW",
"initial_events": [
{
"content": [
{
"text": "Compile yesterday's orders into report.md.",
"type": "text"
}
],
"type": "user.message"
}
],
"metadata": {},
"name": "Daily order report",
"paused_reason": {
"type": "manual"
},
"resources": [
{
"type": "github_repository",
"url": "url",
"checkout": {
"name": "main",
"type": "branch"
},
"mount_path": "mount_path"
}
],
"schedule": {
"expression": "0 9 * * 1-5",
"timezone": "America/Los_Angeles",
"type": "cron",
"last_run_at": "2026-03-16T16:00:09Z",
"upcoming_runs_at": [
"2026-03-17T16:00:00Z",
"2026-03-18T16:00:00Z"
]
},
"status": "active",
"type": "deployment",
"updated_at": "2026-03-15T10:00:00Z",
"vault_ids": [
"vlt_011CZkZDLs7fYzm1hXNPeRjv"
],
"budget": {
"max_list_cost": {
"amount": "2500",
"currency": "USD"
},
"type": "limit"
}
}