Claude Platform Docs

Create Deployment

BetaManagedAgentsDeployment Beta.Deployments.Create(parameters, cancellationToken = default)
POST/v1/deployments

Create Deployment

Parameters
DeploymentCreateParams parameters
required Agent agent

Agent to deploy. Accepts the agent ID string, which pins the latest version, or an agent object with both id and version specified. The agent must exist and not be archived.

string
class BetaManagedAgentsAgentParams { Type = "agent"; ID; Version; }

Specification for an Agent. Provide a specific version or use the short-form agent="agent_id" for the most recent version

JsonElement Type = "agent"
required string ID

The agent ID.

minLength1
maxLength128
int Version

The specific agent version to use. Omit to use the latest version. Must be at least 1 if specified.

formatint32
required string environmentID

ID of the environment defining the container configuration for sessions created from this deployment.

minLength1
maxLength128
required IReadOnlyList<BetaManagedAgentsDeploymentInitialEventParams> initialEvents

Events to send to each session immediately after creation. At least 1, maximum 50.

class BetaManagedAgentsUserMessageEventParams { Type = "user.message"; Content; }

Parameters for sending a user message to the session.

class BetaManagedAgentsUserDefineOutcomeEventParams { Type = "user.define_outcome"; Description; Rubric; MaxIterations; }

Parameters for defining an outcome the agent should work toward. The agent begins work on receipt.

class BetaManagedAgentsSystemMessageEventParams { Type = "system.message"; Content; }

Privileged 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 the user.message, user.tool_result, or user.custom_tool_result it accompanies. Only supported on models that accept mid-conversation system messages.

JsonElement Type = "system.message"
required IReadOnlyList<BetaManagedAgentsSystemContentBlock> Content

System content blocks to append. Text-only.

JsonElement Type = "text"
required string Text

The text content.

minLength1
required string name

Human-readable name for the deployment.

minLength1
maxLength256

Enforced spend ceiling stamped onto each session created from this deployment, copied at session-creation time. Omit to leave sessions uncapped. The deployment agent's model must have a public list price, or the request is rejected; a multiagent roster is re-validated in full when each fire copies the cap, which fails closed the same way.

string? description

Description of what the deployment does.

maxLength2048
IReadOnlyDictionary<string, string> metadata

Arbitrary key-value metadata. Maximum 16 pairs, keys up to 64 chars, values up to 512 chars.

IReadOnlyList<Resource> resources

Resources (e.g. repositories, files) to mount into each session's container. Maximum 500.

class BetaManagedAgentsGitHubRepositoryResourceParams { Type = "github_repository"; Url; AuthorizationToken; /* 2 more */ }

Mount a GitHub repository into the session's container.

class BetaManagedAgentsFileResourceParams { Type = "file"; FileID; MountPath; }

Mount a file uploaded via the Files API into the session.

JsonElement Type = "file"
required string FileID

ID of a previously uploaded file.

minLength1
maxLength128
string? MountPath

Mount path in the container. Defaults to /mnt/session/uploads/<file_id>.

minLength1
maxLength4096
class BetaManagedAgentsMemoryStoreResourceParam { Type = "memory_store"; MemoryStoreID; Access; Instructions; }

Parameters for attaching a memory store to an agent session.

JsonElement Type = "memory_store"
required string MemoryStoreID

The memory store ID (memstore_...). Must belong to the caller's organization and workspace.

Access? Access

Access mode for the mounted store. Defaults to read_write. read_only mounts the store as a read-only filesystem.

One of the following:
ReadWrite("read_write")
ReadOnly("read_only")
string? Instructions

Per-attachment guidance for the agent on how to use this store. Rendered into the memory section of the system prompt. Max 4096 chars.

maxLength4096

Optional recurring cron schedule. When present, the deployment fires automatically. Both expression and timezone are required when schedule is set.

IReadOnlyList<string> vaultIds

Vault IDs for stored credentials the agent can use during sessions created from this deployment. Maximum 50.

IReadOnlyList<AnthropicBeta> betas⁠Header parameter

This endpoint is in beta: requests must send managed-agents-2026-04-01 in this header.

MessageBatches2024_09_24("message-batches-2024-09-24")
PromptCaching2024_07_31("prompt-caching-2024-07-31")
ComputerUse2024_10_22("computer-use-2024-10-22")
ComputerUse2025_01_24("computer-use-2025-01-24")
Pdfs2024_09_25("pdfs-2024-09-25")
TokenCounting2024_11_01("token-counting-2024-11-01")
TokenEfficientTools2025_02_19("token-efficient-tools-2025-02-19")
Output128k2025_02_19("output-128k-2025-02-19")
FilesApi2025_04_14("files-api-2025-04-14")
McpClient2025_04_04("mcp-client-2025-04-04")
McpClient2025_11_20("mcp-client-2025-11-20")
DevFullThinking2025_05_14("dev-full-thinking-2025-05-14")
InterleavedThinking2025_05_14("interleaved-thinking-2025-05-14")
CodeExecution2025_05_22("code-execution-2025-05-22")
ExtendedCacheTtl2025_04_11("extended-cache-ttl-2025-04-11")
Context1m2025_08_07("context-1m-2025-08-07")
ContextManagement2025_06_27("context-management-2025-06-27")
ModelContextWindowExceeded2025_08_26("model-context-window-exceeded-2025-08-26")
Skills2025_10_02("skills-2025-10-02")
FastMode2026_02_01("fast-mode-2026-02-01")
Output300k2026_03_24("output-300k-2026-03-24")
UserProfiles2026_03_24("user-profiles-2026-03-24")
UserProfiles2026_08_18("user-profiles-2026-08-18")
UserProfiles2026_09_04("user-profiles-2026-09-04")
AdvisorTool2026_03_01("advisor-tool-2026-03-01")
ManagedAgents2026_04_01("managed-agents-2026-04-01")
CacheDiagnosis2026_04_07("cache-diagnosis-2026-04-07")
Dreaming2026_04_21("dreaming-2026-04-21")
ThinkingTokenCount2026_05_13("thinking-token-count-2026-05-13")
ServerSideFallback2026_06_01("server-side-fallback-2026-06-01")
ServerSideFallback2026_07_01("server-side-fallback-2026-07-01")
FallbackCredit2026_06_01("fallback-credit-2026-06-01")
FallbackCredit2026_07_01("fallback-credit-2026-07-01")
AgentMemory2026_07_22("agent-memory-2026-07-22")
MidConversationToolChanges2026_07_01("mid-conversation-tool-changes-2026-07-01")
Compact2026_01_12("compact-2026-01-12")
ComputerUse2025_11_24("computer-use-2025-11-24")
McpTunnels2026_06_22("mcp-tunnels-2026-06-22")
StructuredOutputs2025_11_13("structured-outputs-2025-11-13")
TaskBudgets2026_03_13("task-budgets-2026-03-13")
ThinkingDisplayUpdates2026_08_18("thinking-display-updates-2026-08-18")
CEUserManagement2026_07_13("ce-user-management-2026-07-13")
MidConversationOutputConfig2026_07_01("mid-conversation-output-config-2026-07-01")
ThinkingBindingControls2026_08_01("thinking-binding-controls-2026-08-01")
MidConversationSystemClearAt2026_08_21("mid-conversation-system-clear-at-2026-08-21")
Compact2026_09_04("compact-2026-09-04")
InlineTools2026_09_15("inline-tools-2026-09-15")
McpClient2026_09_15("mcp-client-2026-09-15")
CEPlugins2026_09_01("ce-plugins-2026-09-01")
SpendLimitReads2026_09_26("spend-limit-reads-2026-09-26")
TelemetryDestinations2026_08_11("telemetry-destinations-2026-08-11")
Webhooks2026_10_07("webhooks-2026-10-07")
MessageThreads2026_08_12("message-threads-2026-08-12")
AnalyticsUsageCost2026_08_24("analytics-usage-cost-2026-08-24")
ExperimentalClaudeTag2026_10_21("experimental-claude-tag-2026-10-21")
string workspaceID⁠Header parameter

Optional header to select the Workspace for this request. The value is a Workspace ID (for example, wrkspc_011CZkZaBF1tNoB5wlCeusgy).

Only needed for credentials that can act on more than one Workspace. A credential that belongs to a specific Workspace may omit it; if sent, it must match that Workspace.

Returns
class BetaManagedAgentsDeployment { Type = "deployment"; ID; Agent; /* 14 more */ }

A 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.

Create Deployment
using System;
using Anthropic.Models.Beta.Deployments;
using Anthropic.Models.Beta.Sessions.Events;

DeploymentCreateParams parameters = new()
{
    Agent = "string",
    EnvironmentID = "x",
    InitialEvents =
    [
        new BetaManagedAgentsUserMessageEventParams(

            [
                new BetaManagedAgentsTextBlock("Where is my order #1234?")
            ]
        ),
    ],
    Name = "x",
};

var betaManagedAgentsDeployment = await client.Beta.Deployments.Create(parameters);

Console.WriteLine(betaManagedAgentsDeployment);
Returns Examples
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"
  }
}