{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/anthropic/main/json-schema/anthropic-beta-managed-agents-create-session-params-schema.json", "title": "BetaManagedAgentsCreateSessionParams", "description": "Request parameters for creating a `session`.", "x-generated": "2026-09-23", "x-method": "derived", "x-generator": "derive-json-schema.py", "x-source": "openapi/anthropic-sessions-beta-true-api-openapi.yml#/components/schemas/BetaManagedAgentsCreateSessionParams", "type": "object", "additionalProperties": false, "required": [ "agent", "environment_id" ], "properties": { "agent": { "description": "Agent identifier. Accepts the `agent` ID string, which pins the latest version for the session, or an `agent` object with both id and version specified.", "allOf": [ { "$ref": "#/$defs/BetaManagedAgentsCreateSessionAgentUnionParams" } ] }, "environment_id": { "description": "ID of the `environment` defining the container configuration for this session.", "type": "string", "minLength": 1, "maxLength": 128 }, "title": { "description": "Human-readable session title.", "anyOf": [ { "type": "string", "maxLength": 500 }, { "type": "null" } ] }, "metadata": { "description": "Arbitrary key-value metadata attached to the session. Maximum 16 pairs, keys up to 64 chars, values up to 512 chars.", "type": "object", "additionalProperties": { "type": "string" } }, "resources": { "description": "Resources (e.g. repositories, files) to mount into the session's container.", "type": "array", "items": { "$ref": "#/$defs/BetaManagedAgentsSessionResourceParams" } }, "vault_ids": { "description": "Vault IDs for stored credentials the agent can use during the session.", "type": "array", "items": { "type": "string" } }, "initial_events": { "description": "Initial events to send to the `session` at creation, processed in order. Supports `user.message` and `user.define_outcome` events. Maximum 50 events.", "type": "array", "items": { "$ref": "#/$defs/BetaManagedAgentsSessionInitialEventParams" }, "x-anthropic-beta-required": [ "managed-agents-2026-04-01" ] }, "budget": { "description": "Enforced spend ceiling for the session. Omit to create an uncapped session. Every model the session can run — the agent's model and each callable agent's model — must have a public list price, or the request is rejected with reason `model_not_budgetable`.", "allOf": [ { "$ref": "#/$defs/BetaManagedAgentsBudget" } ], "x-anthropic-beta-required": [ "managed-agents-2026-04-01" ] } }, "$defs": { "BetaCurrency": { "type": "string", "enum": [ "USD" ] }, "BetaManagedAgentsAgentParams": { "description": "Specification for an Agent. Provide a specific `version` or use the short-form `agent=\"agent_id\"` for the most recent version", "type": "object", "additionalProperties": false, "required": [ "type", "id" ], "properties": { "type": { "type": "string", "enum": [ "agent" ] }, "id": { "description": "The `agent` ID.", "type": "string", "minLength": 1, "maxLength": 128 }, "version": { "description": "The specific `agent` version to use. Omit to use the latest version. Must be at least 1 if specified.", "type": "integer", "format": "int32" } } }, "BetaManagedAgentsAgentToolConfigUnionParams": { "description": "Configuration override for a specific tool within a toolset.", "type": "object", "oneOf": [ { "$ref": "#/$defs/BetaManagedAgentsBashToolConfigParams" }, { "$ref": "#/$defs/BetaManagedAgentsEditToolConfigParams" }, { "$ref": "#/$defs/BetaManagedAgentsReadToolConfigParams" }, { "$ref": "#/$defs/BetaManagedAgentsWriteToolConfigParams" }, { "$ref": "#/$defs/BetaManagedAgentsGlobToolConfigParams" }, { "$ref": "#/$defs/BetaManagedAgentsGrepToolConfigParams" }, { "$ref": "#/$defs/BetaManagedAgentsWebFetchToolConfigParams" }, { "$ref": "#/$defs/BetaManagedAgentsWebSearchToolConfigParams" } ] }, "BetaManagedAgentsAgentToolParams": { "description": "Union type for tool configurations in the tools array.", "type": "object", "oneOf": [ { "$ref": "#/$defs/BetaManagedAgentsAgentToolset20260401Params" }, { "$ref": "#/$defs/BetaManagedAgentsMCPToolsetParams" }, { "$ref": "#/$defs/BetaManagedAgentsCustomToolParams" } ] }, "BetaManagedAgentsAgentToolset20260401Params": { "description": "Configuration for built-in agent tools. Use this to enable or disable groups of tools available to the agent.", "type": "object", "additionalProperties": false, "required": [ "type" ], "properties": { "type": { "type": "string", "enum": [ "agent_toolset_20260401" ] }, "default_config": { "description": "Default configuration applied to all tools in this set.", "anyOf": [ { "$ref": "#/$defs/BetaManagedAgentsAgentToolsetDefaultConfigParams" }, { "type": "null" } ] }, "configs": { "description": "Per-tool configuration overrides.", "type": "array", "items": { "$ref": "#/$defs/BetaManagedAgentsAgentToolConfigUnionParams" } } } }, "BetaManagedAgentsAgentToolsetDefaultConfigParams": { "description": "Default configuration for all tools in a toolset.", "type": "object", "additionalProperties": false, "properties": { "enabled": { "description": "Whether tools are enabled and available to Claude by default. Defaults to true if not specified.", "anyOf": [ { "type": "boolean" }, { "type": "null" } ] }, "permission_policy": { "description": "Default permission policy for tools. Controls whether tool calls are auto-approved or require confirmation.", "anyOf": [ { "$ref": "#/$defs/BetaManagedAgentsPermissionPolicy" }, { "type": "null" } ] } } }, "BetaManagedAgentsAgentWithOverridesParams": { "description": "Reference to an `agent` plus optional configuration overrides. Each provided field replaces the agent's value for the caller's use; the agent resource is unchanged.", "type": "object", "additionalProperties": false, "required": [ "type", "id" ], "properties": { "type": { "type": "string", "enum": [ "agent_with_overrides" ] }, "id": { "description": "The `agent` ID.", "type": "string", "minLength": 1, "maxLength": 128 }, "version": { "description": "The specific `agent` version to use. Omit to use the latest version.", "type": "integer", "format": "int32" }, "model": { "description": "Replacement model. Accepts the model string, e.g. `claude-opus-5`, or a `model_config` object. Omit to use the agent's model.", "allOf": [ { "$ref": "#/$defs/BetaManagedAgentsModelParams" } ] }, "system": { "description": "Replacement system prompt. Up to 100,000 characters. Set to null to clear the agent's system prompt; omit to preserve it.", "anyOf": [ { "type": "string", "maxLength": 100000 }, { "type": "null" } ] }, "tools": { "description": "Replacement tool list. Full replacement: the provided array becomes the tool configuration. Send an empty array to clear; omit to preserve the agent's tools.", "type": "array", "items": { "$ref": "#/$defs/BetaManagedAgentsAgentToolParams" } }, "mcp_servers": { "description": "Replacement MCP server list. Full replacement: the provided array becomes the MCP servers. Send an empty array to clear; omit to preserve the agent's servers.", "type": "array", "items": { "$ref": "#/$defs/BetaManagedAgentsMCPServerParams" } }, "skills": { "description": "Replacement skill list. Full replacement: the provided array becomes the skills. Send an empty array to clear; omit to preserve the agent's skills.", "type": "array", "items": { "$ref": "#/$defs/BetaManagedAgentsSkillParams" } } } }, "BetaManagedAgentsAlwaysAllowPolicy": { "description": "Tool calls are automatically approved without user confirmation.", "type": "object", "additionalProperties": false, "required": [ "type" ], "properties": { "type": { "type": "string", "enum": [ "always_allow" ] } } }, "BetaManagedAgentsAlwaysAskPolicy": { "description": "Tool calls require user confirmation before execution.", "type": "object", "additionalProperties": false, "required": [ "type" ], "properties": { "type": { "type": "string", "enum": [ "always_ask" ] } } }, "BetaManagedAgentsAnthropicSkillParams": { "description": "An Anthropic-managed skill.", "type": "object", "additionalProperties": false, "required": [ "type", "skill_id" ], "properties": { "type": { "type": "string", "enum": [ "anthropic" ] }, "skill_id": { "description": "Identifier of the Anthropic skill (e.g., \"xlsx\").", "type": "string", "minLength": 1, "maxLength": 64 }, "version": { "description": "Version to pin. Defaults to latest if omitted.", "anyOf": [ { "type": "string", "minLength": 1, "maxLength": 64 }, { "type": "null" } ] } } }, "BetaManagedAgentsBase64DocumentSource": { "description": "Base64-encoded document data.", "type": "object", "additionalProperties": false, "required": [ "type", "media_type", "data" ], "properties": { "type": { "type": "string", "enum": [ "base64" ] }, "media_type": { "description": "MIME type of the document (e.g., \"application/pdf\").", "type": "string", "minLength": 1 }, "data": { "description": "Base64-encoded document data.", "type": "string", "minLength": 1 } } }, "BetaManagedAgentsBase64ImageSource": { "description": "Base64-encoded image data.", "type": "object", "additionalProperties": false, "required": [ "type", "media_type", "data" ], "properties": { "type": { "type": "string", "enum": [ "base64" ] }, "media_type": { "description": "MIME type of the image (e.g., \"image/png\", \"image/jpeg\", \"image/gif\", \"image/webp\").", "type": "string", "minLength": 1 }, "data": { "description": "Base64-encoded image data.", "type": "string", "minLength": 1 } } }, "BetaManagedAgentsBashToolConfigParams": { "description": "Configuration override for the bash tool.", "type": "object", "additionalProperties": false, "required": [ "name" ], "properties": { "type": { "type": "string", "const": "bash" }, "name": { "description": "Must be \"bash\".", "type": "string", "const": "bash" }, "enabled": { "description": "Whether this tool is enabled and available to Claude. Overrides the default_config setting.", "anyOf": [ { "type": "boolean" }, { "type": "null" } ] }, "permission_policy": { "description": "Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.", "anyOf": [ { "$ref": "#/$defs/BetaManagedAgentsPermissionPolicy" }, { "type": "null" } ] } } }, "BetaManagedAgentsBranchCheckout": { "type": "object", "additionalProperties": false, "required": [ "type", "name" ], "properties": { "type": { "type": "string", "enum": [ "branch" ] }, "name": { "description": "Branch name to check out.", "type": "string", "minLength": 1, "maxLength": 255 } } }, "BetaManagedAgentsBudget": { "description": "An enforced spend ceiling on a session. Discriminated on `type`; `limit` is the only kind currently supported.", "type": "object", "oneOf": [ { "$ref": "#/$defs/BetaManagedAgentsBudgetLimit" } ] }, "BetaManagedAgentsBudgetLimit": { "description": "A hard spend ceiling. The session stops issuing new model requests once the tracked list cost reaches `max_list_cost`.", "type": "object", "additionalProperties": false, "required": [ "type", "max_list_cost" ], "properties": { "type": { "type": "string", "enum": [ "limit" ] }, "max_list_cost": { "description": "Maximum list cost the session may accrue. List price is used regardless of any negotiated discount, so the cap fires at or before the actual charge.", "allOf": [ { "$ref": "#/$defs/BetaMonetaryAmount" } ] } } }, "BetaManagedAgentsCommitCheckout": { "type": "object", "additionalProperties": false, "required": [ "type", "sha" ], "properties": { "type": { "type": "string", "enum": [ "commit" ] }, "sha": { "description": "Full commit SHA to check out.", "type": "string", "minLength": 7, "maxLength": 64 } } }, "BetaManagedAgentsCreateSessionAgentUnionParams": { "oneOf": [ { "type": "string" }, { "oneOf": [ { "$ref": "#/$defs/BetaManagedAgentsAgentParams" }, { "$ref": "#/$defs/BetaManagedAgentsAgentWithOverridesParams" } ] } ] }, "BetaManagedAgentsCustomSkillParams": { "description": "A user-created custom skill.", "type": "object", "additionalProperties": false, "required": [ "type", "skill_id" ], "properties": { "type": { "type": "string", "enum": [ "custom" ] }, "skill_id": { "description": "Tagged ID of the custom skill (e.g., \"skill_01XJ5...\").", "type": "string", "minLength": 1, "maxLength": 64 }, "version": { "description": "Version to pin. Defaults to latest if omitted.", "anyOf": [ { "type": "string", "minLength": 1, "maxLength": 64 }, { "type": "null" } ] } } }, "BetaManagedAgentsCustomToolInputSchema": { "additionalProperties": true, "description": "JSON Schema for custom tool input parameters.", "properties": { "properties": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Properties", "x-stainless-skip": [ "terraform" ] }, "required": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "title": "Required" }, "type": { "const": "object", "title": "Type", "type": "string" } }, "required": [ "type" ], "type": "object" }, "BetaManagedAgentsCustomToolParams": { "description": "A custom tool that is executed by the API client rather than the agent. When the agent calls this tool, an `agent.custom_tool_use` event is emitted and the session goes idle, waiting for the client to provide the result via a `user.custom_tool_result` event.", "type": "object", "additionalProperties": false, "required": [ "type", "name", "description", "input_schema" ], "properties": { "type": { "type": "string", "enum": [ "custom" ] }, "name": { "description": "Unique name for the tool. 1-128 characters; letters, digits, underscores, and hyphens.", "type": "string", "minLength": 1, "maxLength": 128 }, "description": { "description": "Description of what the tool does, shown to the agent to help it decide when to use the tool.", "type": "string", "minLength": 1 }, "input_schema": { "description": "JSON Schema defining the expected input parameters for the tool.", "allOf": [ { "$ref": "#/$defs/BetaManagedAgentsCustomToolInputSchema" } ] } } }, "BetaManagedAgentsDocumentBlock": { "description": "Document content, either specified directly as base64 data, as text, or as a reference via a URL.", "type": "object", "additionalProperties": false, "required": [ "type", "source" ], "properties": { "type": { "type": "string", "enum": [ "document" ] }, "source": { "description": "The source of the document data.", "allOf": [ { "$ref": "#/$defs/BetaManagedAgentsDocumentSource" } ] }, "title": { "description": "The title of the document.", "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "context": { "description": "Additional context about the document for the model.", "anyOf": [ { "type": "string" }, { "type": "null" } ] } } }, "BetaManagedAgentsDocumentSource": { "description": "Union type for document source variants.", "type": "object", "oneOf": [ { "$ref": "#/$defs/BetaManagedAgentsBase64DocumentSource" }, { "$ref": "#/$defs/BetaManagedAgentsPlainTextDocumentSource" }, { "$ref": "#/$defs/BetaManagedAgentsURLDocumentSource" }, { "$ref": "#/$defs/BetaManagedAgentsFileDocumentSource" } ] }, "BetaManagedAgentsEditToolConfigParams": { "description": "Configuration override for the edit tool.", "type": "object", "additionalProperties": false, "required": [ "name" ], "properties": { "type": { "type": "string", "const": "edit" }, "name": { "description": "Must be \"edit\".", "type": "string", "const": "edit" }, "enabled": { "description": "Whether this tool is enabled and available to Claude. Overrides the default_config setting.", "anyOf": [ { "type": "boolean" }, { "type": "null" } ] }, "permission_policy": { "description": "Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.", "anyOf": [ { "$ref": "#/$defs/BetaManagedAgentsPermissionPolicy" }, { "type": "null" } ] } } }, "BetaManagedAgentsEffort": { "description": "How hard Claude works on each turn. Sets `output_config.effort` on every Messages call the session makes.", "type": "object", "oneOf": [ { "$ref": "#/$defs/BetaManagedAgentsEffortLow" }, { "$ref": "#/$defs/BetaManagedAgentsEffortMedium" }, { "$ref": "#/$defs/BetaManagedAgentsEffortHigh" }, { "$ref": "#/$defs/BetaManagedAgentsEffortXhigh" }, { "$ref": "#/$defs/BetaManagedAgentsEffortMax" } ] }, "BetaManagedAgentsEffortHigh": { "description": "High effort. Favors reasoning depth.", "type": "object", "additionalProperties": false, "required": [ "type" ], "properties": { "type": { "type": "string", "enum": [ "high" ] } } }, "BetaManagedAgentsEffortLevel": { "type": "string", "description": "How hard Claude works on each turn. Higher levels favor reasoning depth over latency. Not all models accept every level; invalid combinations are rejected at create time.", "enum": [ "low", "medium", "high", "xhigh", "max" ] }, "BetaManagedAgentsEffortLow": { "description": "Low effort. Favors latency over reasoning depth.", "type": "object", "additionalProperties": false, "required": [ "type" ], "properties": { "type": { "type": "string", "enum": [ "low" ] } } }, "BetaManagedAgentsEffortMax": { "description": "Maximum effort. Favors reasoning depth over latency.", "type": "object", "additionalProperties": false, "required": [ "type" ], "properties": { "type": { "type": "string", "enum": [ "max" ] } } }, "BetaManagedAgentsEffortMedium": { "description": "Medium effort. Balances latency and reasoning depth.", "type": "object", "additionalProperties": false, "required": [ "type" ], "properties": { "type": { "type": "string", "enum": [ "medium" ] } } }, "BetaManagedAgentsEffortParams": { "oneOf": [ { "$ref": "#/$defs/BetaManagedAgentsEffortLevel" }, { "$ref": "#/$defs/BetaManagedAgentsEffort" } ] }, "BetaManagedAgentsEffortXhigh": { "description": "Extra-high effort. Not all models accept this level.", "type": "object", "additionalProperties": false, "required": [ "type" ], "properties": { "type": { "type": "string", "enum": [ "xhigh" ] } } }, "BetaManagedAgentsFileDocumentSource": { "description": "Document referenced by file ID.", "type": "object", "additionalProperties": false, "required": [ "type", "file_id" ], "properties": { "type": { "type": "string", "enum": [ "file" ] }, "file_id": { "description": "ID of a previously uploaded file.", "type": "string", "minLength": 1 } } }, "BetaManagedAgentsFileImageSource": { "description": "Image referenced by file ID.", "type": "object", "additionalProperties": false, "required": [ "type", "file_id" ], "properties": { "type": { "type": "string", "enum": [ "file" ] }, "file_id": { "description": "ID of a previously uploaded file.", "type": "string", "minLength": 1 } } }, "BetaManagedAgentsFileResourceParams": { "description": "Mount a file uploaded via the Files API into the session.", "type": "object", "additionalProperties": false, "required": [ "type", "file_id" ], "properties": { "type": { "type": "string", "enum": [ "file" ] }, "file_id": { "description": "ID of a previously uploaded file.", "type": "string", "minLength": 1, "maxLength": 128 }, "mount_path": { "description": "Mount path in the container. Defaults to `/mnt/session/uploads/`.", "anyOf": [ { "type": "string", "minLength": 1, "maxLength": 4096 }, { "type": "null" } ] } } }, "BetaManagedAgentsFileRubricParams": { "description": "Rubric referenced by a file uploaded via the Files API.", "type": "object", "additionalProperties": false, "required": [ "type", "file_id" ], "properties": { "type": { "type": "string", "enum": [ "file" ] }, "file_id": { "description": "ID of the rubric file.", "type": "string" } } }, "BetaManagedAgentsGitHubRepositoryResourceParams": { "description": "Mount a GitHub repository into the session's container.", "type": "object", "additionalProperties": false, "required": [ "type", "url", "authorization_token" ], "properties": { "type": { "type": "string", "enum": [ "github_repository" ] }, "url": { "description": "Github URL of the repository", "type": "string", "minLength": 1, "maxLength": 2048 }, "authorization_token": { "description": "GitHub authorization token used to clone the repository.", "type": "string", "minLength": 1, "maxLength": 4096 }, "mount_path": { "description": "Mount path in the container. Defaults to `/workspace/`.", "anyOf": [ { "type": "string", "minLength": 1, "maxLength": 4096 }, { "type": "null" } ] }, "checkout": { "description": "Branch or commit to check out. Defaults to the repository's default branch.", "anyOf": [ { "$ref": "#/$defs/BetaManagedAgentsRepositoryCheckout" }, { "type": "null" } ] } } }, "BetaManagedAgentsGlobToolConfigParams": { "description": "Configuration override for the glob tool.", "type": "object", "additionalProperties": false, "required": [ "name" ], "properties": { "type": { "type": "string", "const": "glob" }, "name": { "description": "Must be \"glob\".", "type": "string", "const": "glob" }, "enabled": { "description": "Whether this tool is enabled and available to Claude. Overrides the default_config setting.", "anyOf": [ { "type": "boolean" }, { "type": "null" } ] }, "permission_policy": { "description": "Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.", "anyOf": [ { "$ref": "#/$defs/BetaManagedAgentsPermissionPolicy" }, { "type": "null" } ] } } }, "BetaManagedAgentsGrepToolConfigParams": { "description": "Configuration override for the grep tool.", "type": "object", "additionalProperties": false, "required": [ "name" ], "properties": { "type": { "type": "string", "const": "grep" }, "name": { "description": "Must be \"grep\".", "type": "string", "const": "grep" }, "enabled": { "description": "Whether this tool is enabled and available to Claude. Overrides the default_config setting.", "anyOf": [ { "type": "boolean" }, { "type": "null" } ] }, "permission_policy": { "description": "Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.", "anyOf": [ { "$ref": "#/$defs/BetaManagedAgentsPermissionPolicy" }, { "type": "null" } ] } } }, "BetaManagedAgentsImageBlock": { "description": "Image content specified directly as base64 data or as a reference via a URL.", "type": "object", "additionalProperties": false, "required": [ "type", "source" ], "properties": { "type": { "type": "string", "enum": [ "image" ] }, "source": { "description": "The source of the image data.", "allOf": [ { "$ref": "#/$defs/BetaManagedAgentsImageSource" } ] } } }, "BetaManagedAgentsImageSource": { "description": "Union type for image source variants.", "type": "object", "oneOf": [ { "$ref": "#/$defs/BetaManagedAgentsBase64ImageSource" }, { "$ref": "#/$defs/BetaManagedAgentsURLImageSource" }, { "$ref": "#/$defs/BetaManagedAgentsFileImageSource" } ] }, "BetaManagedAgentsMCPServerParams": { "description": "Union type for MCP server connection definitions.", "type": "object", "oneOf": [ { "$ref": "#/$defs/BetaManagedAgentsURLMCPServerParams" } ] }, "BetaManagedAgentsMCPToolConfigParams": { "description": "Configuration override for a specific MCP tool.", "type": "object", "additionalProperties": false, "required": [ "name" ], "properties": { "name": { "description": "Name of the MCP tool to configure. 1-128 characters.", "type": "string", "minLength": 1, "maxLength": 128 }, "enabled": { "description": "Whether this tool is enabled. Overrides the `default_config` setting.", "anyOf": [ { "type": "boolean" }, { "type": "null" } ] }, "permission_policy": { "description": "Permission policy for this tool. Overrides the `default_config` setting.", "anyOf": [ { "$ref": "#/$defs/BetaManagedAgentsPermissionPolicy" }, { "type": "null" } ] } } }, "BetaManagedAgentsMCPToolsetDefaultConfigParams": { "description": "Default configuration for all tools from an MCP server.", "type": "object", "additionalProperties": false, "properties": { "enabled": { "description": "Whether tools are enabled by default. Defaults to true if not specified.", "anyOf": [ { "type": "boolean" }, { "type": "null" } ] }, "permission_policy": { "description": "Default permission policy for tools from this server.", "anyOf": [ { "$ref": "#/$defs/BetaManagedAgentsPermissionPolicy" }, { "type": "null" } ] } } }, "BetaManagedAgentsMCPToolsetParams": { "description": "Configuration for tools from an MCP server defined in `mcp_servers`.", "type": "object", "additionalProperties": false, "required": [ "type", "mcp_server_name" ], "properties": { "type": { "type": "string", "enum": [ "mcp_toolset" ] }, "mcp_server_name": { "description": "Name of the MCP server. Must match a server name from the mcp_servers array. 1-255 characters.", "type": "string", "minLength": 1, "maxLength": 255 }, "default_config": { "description": "Default configuration for all tools from this server.", "anyOf": [ { "$ref": "#/$defs/BetaManagedAgentsMCPToolsetDefaultConfigParams" }, { "type": "null" } ] }, "configs": { "description": "Per-tool configuration overrides.", "type": "array", "items": { "$ref": "#/$defs/BetaManagedAgentsMCPToolConfigParams" } } } }, "BetaManagedAgentsMemoryStoreResourceParam": { "description": "Parameters for attaching a memory store to an agent session.", "type": "object", "additionalProperties": false, "required": [ "type", "memory_store_id" ], "properties": { "type": { "type": "string", "enum": [ "memory_store" ] }, "memory_store_id": { "description": "The memory store ID (memstore_...). Must belong to the caller's organization and workspace.", "type": "string" }, "access": { "description": "Access mode for the mounted store. Defaults to read_write. read_only mounts the store as a read-only filesystem.", "anyOf": [ { "$ref": "#/$defs/BetaManagedAgentsMountMode" }, { "type": "null" } ] }, "instructions": { "description": "Per-attachment guidance for the agent on how to use this store. Rendered into the memory section of the system prompt. Max 4096 chars.", "anyOf": [ { "type": "string", "maxLength": 4096 }, { "type": "null" } ], "x-anthropic-beta-required": [ "agent-memory-2026-07-22", "managed-agents-2026-04-01" ] } } }, "BetaManagedAgentsModel": { "title": "BetaManagedAgentsModel", "description": "The model that will power your agent.\n\nSee [models](https://docs.anthropic.com/en/docs/models-overview) for additional details and options.", "anyOf": [ { "type": "string" }, { "const": "claude-sonnet-5", "description": "High-performance model for coding and agents", "x-stainless-nominal": false }, { "const": "claude-fable-5", "description": "Next generation of intelligence for the hardest knowledge work and coding problems", "x-stainless-nominal": false }, { "const": "claude-opus-5", "description": "Powerful intelligence for long-running agents and coding", "x-stainless-nominal": false }, { "const": "claude-opus-4-8", "description": "Powerful intelligence for long-running agents and coding", "x-stainless-nominal": false }, { "const": "claude-opus-4-7", "description": "Powerful intelligence for long-running agents and coding", "x-stainless-nominal": false }, { "const": "claude-opus-4-6", "description": "Powerful intelligence for long-running agents and coding", "x-stainless-nominal": false }, { "const": "claude-sonnet-4-6", "description": "Best combination of speed and intelligence", "x-stainless-nominal": false }, { "const": "claude-haiku-4-5", "description": "Fastest model with near-frontier intelligence", "x-stainless-nominal": false }, { "const": "claude-haiku-4-5-20251001", "description": "Fastest model with near-frontier intelligence", "x-stainless-nominal": false }, { "const": "claude-opus-4-5", "description": "Powerful intelligence for long-running agents and coding", "x-stainless-nominal": false }, { "const": "claude-opus-4-5-20251101", "description": "Powerful intelligence for long-running agents and coding", "x-stainless-nominal": false }, { "const": "claude-sonnet-4-5", "description": "High-performance model for agents and coding", "x-stainless-nominal": false }, { "const": "claude-sonnet-4-5-20250929", "description": "High-performance model for agents and coding", "x-stainless-nominal": false } ] }, "BetaManagedAgentsModelConfigParams": { "description": "An object that defines additional configuration control over model use", "type": "object", "additionalProperties": false, "required": [ "id" ], "properties": { "id": { "$ref": "#/$defs/BetaManagedAgentsModel" }, "speed": { "description": "Inference speed mode. Defaults to `standard`.", "anyOf": [ { "$ref": "#/$defs/BetaManagedAgentsSpeed" }, { "type": "null" } ] }, "effort": { "description": "How hard Claude works on each inference call. Accepts a bare level string (`\"high\"`) or `{\"type\": \"high\"}`. On create, omitting it resolves the per-model default; on update, omitting it leaves the stored value unchanged.", "anyOf": [ { "$ref": "#/$defs/BetaManagedAgentsEffortParams" }, { "type": "null" } ], "x-anthropic-beta-required": [ "managed-agents-2026-04-01" ] }, "inference_geo": { "description": "Geographic region for model inference. When unset, requests fall through to the workspace's default_inference_geo. On update, `model` is whole-object replacement — omitting inference_geo clears it.", "anyOf": [ { "type": "string" }, { "type": "null" } ], "x-anthropic-beta-required": [ "managed-agents-2026-04-01" ] } } }, "BetaManagedAgentsModelParams": { "oneOf": [ { "title": "BetaManagedAgentsModel", "allOf": [ { "$ref": "#/$defs/BetaManagedAgentsModel" } ], "x-stainless-skip": [ "go", "cli" ] }, { "$ref": "#/$defs/BetaManagedAgentsModelConfigParams" } ] }, "BetaManagedAgentsMountMode": { "type": "string", "description": "Access mode for an attached memory store.", "enum": [ "read_write", "read_only" ] }, "BetaManagedAgentsPermissionPolicy": { "description": "Permission policy for tool execution.", "type": "object", "oneOf": [ { "$ref": "#/$defs/BetaManagedAgentsAlwaysAllowPolicy" }, { "$ref": "#/$defs/BetaManagedAgentsAlwaysAskPolicy" } ] }, "BetaManagedAgentsPlainTextDocumentSource": { "description": "Plain text document content.", "type": "object", "additionalProperties": false, "required": [ "type", "media_type", "data" ], "properties": { "type": { "type": "string", "enum": [ "text" ] }, "media_type": { "description": "MIME type of the text content. Must be \"text/plain\".", "type": "string", "enum": [ "text/plain" ] }, "data": { "description": "The plain text content.", "type": "string", "minLength": 1 } } }, "BetaManagedAgentsReadToolConfigParams": { "description": "Configuration override for the read tool.", "type": "object", "additionalProperties": false, "required": [ "name" ], "properties": { "type": { "type": "string", "const": "read" }, "name": { "description": "Must be \"read\".", "type": "string", "const": "read" }, "enabled": { "description": "Whether this tool is enabled and available to Claude. Overrides the default_config setting.", "anyOf": [ { "type": "boolean" }, { "type": "null" } ] }, "permission_policy": { "description": "Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.", "anyOf": [ { "$ref": "#/$defs/BetaManagedAgentsPermissionPolicy" }, { "type": "null" } ] } } }, "BetaManagedAgentsRedactedBlock": { "description": "Placeholder for content withheld by Anthropic model policy.", "type": "object", "additionalProperties": false, "required": [ "type" ], "properties": { "type": { "type": "string", "enum": [ "redacted" ] } } }, "BetaManagedAgentsRepositoryCheckout": { "type": "object", "oneOf": [ { "$ref": "#/$defs/BetaManagedAgentsBranchCheckout" }, { "$ref": "#/$defs/BetaManagedAgentsCommitCheckout" } ] }, "BetaManagedAgentsRubricParams": { "description": "Rubric for grading the quality of an outcome.", "oneOf": [ { "$ref": "#/$defs/BetaManagedAgentsFileRubricParams" }, { "$ref": "#/$defs/BetaManagedAgentsTextRubricParams" } ] }, "BetaManagedAgentsSessionInitialEventParams": { "description": "An event sent to the `session` immediately after it is created. Supports `user.message` and `user.define_outcome`.", "type": "object", "oneOf": [ { "$ref": "#/$defs/BetaManagedAgentsUserMessageEventParams" }, { "$ref": "#/$defs/BetaManagedAgentsUserDefineOutcomeEventParams" } ] }, "BetaManagedAgentsSessionResourceParams": { "description": "Union of resources that can be mounted into a session.", "type": "object", "oneOf": [ { "$ref": "#/$defs/BetaManagedAgentsGitHubRepositoryResourceParams" }, { "$ref": "#/$defs/BetaManagedAgentsFileResourceParams" }, { "$ref": "#/$defs/BetaManagedAgentsMemoryStoreResourceParam" } ] }, "BetaManagedAgentsSkillParams": { "description": "Skill to load in the session container.", "oneOf": [ { "$ref": "#/$defs/BetaManagedAgentsAnthropicSkillParams" }, { "$ref": "#/$defs/BetaManagedAgentsCustomSkillParams" } ] }, "BetaManagedAgentsSpeed": { "type": "string", "description": "Inference speed mode. `fast` provides significantly faster output token generation at premium pricing. Not all models support `fast`; invalid combinations are rejected at create time.", "enum": [ "standard", "fast" ] }, "BetaManagedAgentsTextBlock": { "description": "Regular text content.", "type": "object", "additionalProperties": false, "required": [ "type", "text" ], "properties": { "type": { "type": "string", "enum": [ "text" ] }, "text": { "description": "The text content.", "type": "string", "minLength": 1 } } }, "BetaManagedAgentsTextRubricParams": { "description": "Rubric content provided inline as text.", "type": "object", "additionalProperties": false, "required": [ "type", "content" ], "properties": { "type": { "type": "string", "enum": [ "text" ] }, "content": { "description": "Rubric content. Plain text or markdown — the grader treats it as freeform text. Maximum 262144 characters.", "type": "string", "maxLength": 262144 } } }, "BetaManagedAgentsURLDocumentSource": { "description": "Document referenced by URL.", "type": "object", "additionalProperties": false, "required": [ "type", "url" ], "properties": { "type": { "type": "string", "enum": [ "url" ] }, "url": { "description": "URL of the document to fetch.", "type": "string", "minLength": 1 } } }, "BetaManagedAgentsURLImageSource": { "description": "Image referenced by URL.", "type": "object", "additionalProperties": false, "required": [ "type", "url" ], "properties": { "type": { "type": "string", "enum": [ "url" ] }, "url": { "description": "URL of the image to fetch.", "type": "string", "minLength": 1 } } }, "BetaManagedAgentsURLMCPServerParams": { "description": "URL-based MCP server connection.", "type": "object", "additionalProperties": false, "required": [ "type", "name", "url" ], "properties": { "type": { "type": "string", "enum": [ "url" ] }, "name": { "description": "Unique name for this server, referenced by mcp_toolset configurations. 1-255 characters.", "type": "string", "minLength": 1, "maxLength": 255 }, "url": { "description": "Endpoint URL for the MCP server.", "type": "string", "maxLength": 2048 } } }, "BetaManagedAgentsUserContentBlock": { "description": "Content block in a user message. Can be `text`, `image`, or `document`.", "type": "object", "oneOf": [ { "$ref": "#/$defs/BetaManagedAgentsTextBlock" }, { "$ref": "#/$defs/BetaManagedAgentsImageBlock" }, { "$ref": "#/$defs/BetaManagedAgentsDocumentBlock" }, { "$ref": "#/$defs/BetaManagedAgentsRedactedBlock" } ] }, "BetaManagedAgentsUserDefineOutcomeEventParams": { "description": "Parameters for defining an outcome the agent should work toward. The agent begins work on receipt.", "type": "object", "additionalProperties": false, "required": [ "type", "description", "rubric" ], "properties": { "type": { "type": "string", "enum": [ "user.define_outcome" ] }, "description": { "description": "What the agent should produce. This is the task specification.", "type": "string" }, "rubric": { "description": "How to grade the outcome. Text or file reference.", "allOf": [ { "$ref": "#/$defs/BetaManagedAgentsRubricParams" } ] }, "max_iterations": { "description": "Eval→revision cycles before giving up. Default 3, max 20.", "anyOf": [ { "type": "integer", "format": "int32" }, { "type": "null" } ] } } }, "BetaManagedAgentsUserLocation": { "description": "Approximate user location for search result localization.", "type": "object", "additionalProperties": false, "required": [ "type" ], "properties": { "type": { "description": "Location precision. Only \"approximate\" is supported.", "type": "string", "const": "approximate" }, "city": { "description": "City name.", "anyOf": [ { "type": "string", "minLength": 1, "maxLength": 255 }, { "type": "null" } ] }, "region": { "description": "Region or state name.", "anyOf": [ { "type": "string", "minLength": 1, "maxLength": 255 }, { "type": "null" } ] }, "country": { "description": "Two-letter ISO 3166-1 country code, uppercase.", "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "timezone": { "description": "IANA timezone identifier, e.g. \"America/Los_Angeles\".", "anyOf": [ { "type": "string", "minLength": 1, "maxLength": 255 }, { "type": "null" } ] } } }, "BetaManagedAgentsUserMessageEventParams": { "description": "Parameters for sending a user message to the session.", "type": "object", "additionalProperties": false, "required": [ "type", "content" ], "properties": { "type": { "type": "string", "enum": [ "user.message" ] }, "content": { "description": "Array of content blocks for the user message.", "type": "array", "items": { "$ref": "#/$defs/BetaManagedAgentsUserContentBlock" } } } }, "BetaManagedAgentsWebFetchToolConfigParams": { "description": "Configuration override for the web_fetch tool.", "type": "object", "additionalProperties": false, "required": [ "name" ], "properties": { "type": { "type": "string", "const": "web_fetch" }, "name": { "description": "Must be \"web_fetch\".", "type": "string", "const": "web_fetch" }, "enabled": { "description": "Whether this tool is enabled and available to Claude. Overrides the default_config setting.", "anyOf": [ { "type": "boolean" }, { "type": "null" } ] }, "permission_policy": { "description": "Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.", "anyOf": [ { "$ref": "#/$defs/BetaManagedAgentsPermissionPolicy" }, { "type": "null" } ] }, "allowed_domains": { "description": "Only fetch URLs whose host is one of these domains or a subdomain of one. Each entry is a plain hostname like \"docs.example.com\" (no scheme, port, or path). At most 64 entries; an empty list is rejected (omit the field instead). Cannot be combined with blocked_domains.", "type": "array", "items": { "type": "string" } }, "blocked_domains": { "description": "Never fetch URLs whose host is one of these domains or a subdomain of one. Each entry is a plain hostname like \"ads.example.com\" (no scheme, port, or path). At most 64 entries; an empty list is rejected (omit the field instead). Cannot be combined with allowed_domains.", "type": "array", "items": { "type": "string" } }, "max_content_tokens": { "description": "Maximum number of tokens of fetched text content to include in context per call. Does not apply to binary content such as PDFs.", "anyOf": [ { "type": "integer", "format": "int32" }, { "type": "null" } ] } } }, "BetaManagedAgentsWebSearchToolConfigParams": { "description": "Configuration override for the web_search tool.", "type": "object", "additionalProperties": false, "required": [ "name" ], "properties": { "type": { "type": "string", "const": "web_search" }, "name": { "description": "Must be \"web_search\".", "type": "string", "const": "web_search" }, "enabled": { "description": "Whether this tool is enabled and available to Claude. Overrides the default_config setting.", "anyOf": [ { "type": "boolean" }, { "type": "null" } ] }, "permission_policy": { "description": "Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.", "anyOf": [ { "$ref": "#/$defs/BetaManagedAgentsPermissionPolicy" }, { "type": "null" } ] }, "allowed_domains": { "description": "Only return search results whose host is one of these domains or a subdomain of one. Each entry is a plain hostname like \"docs.example.com\" (no scheme or port; an optional path suffix is accepted). At most 64 entries; an empty list is rejected (omit the field instead). Cannot be combined with blocked_domains.", "type": "array", "items": { "type": "string" } }, "blocked_domains": { "description": "Never return search results whose host is one of these domains or a subdomain of one. Each entry is a plain hostname like \"ads.example.com\" (no scheme or port; an optional path suffix is accepted). At most 64 entries; an empty list is rejected (omit the field instead). Cannot be combined with allowed_domains.", "type": "array", "items": { "type": "string" } }, "user_location": { "description": "Approximate user location for search result localization.", "anyOf": [ { "$ref": "#/$defs/BetaManagedAgentsUserLocation" }, { "type": "null" } ] } } }, "BetaManagedAgentsWriteToolConfigParams": { "description": "Configuration override for the write tool.", "type": "object", "additionalProperties": false, "required": [ "name" ], "properties": { "type": { "type": "string", "const": "write" }, "name": { "description": "Must be \"write\".", "type": "string", "const": "write" }, "enabled": { "description": "Whether this tool is enabled and available to Claude. Overrides the default_config setting.", "anyOf": [ { "type": "boolean" }, { "type": "null" } ] }, "permission_policy": { "description": "Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.", "anyOf": [ { "$ref": "#/$defs/BetaManagedAgentsPermissionPolicy" }, { "type": "null" } ] } } }, "BetaMonetaryAmount": { "description": "A monetary amount in a specific currency.", "type": "object", "additionalProperties": false, "required": [ "currency", "amount" ], "properties": { "currency": { "description": "Uppercase ISO-4217 currency code. `USD` is the only currency currently supported; the accepted set is closed and grows only when a new currency is priced.", "allOf": [ { "$ref": "#/$defs/BetaCurrency" } ] }, "amount": { "description": "Amount 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.", "type": "string" } } } } }