Create Agent
api/beta/agents/create
Nearest release: v2.1.245, published an hour after this site recorded the change. Shown because the two are within 24 hours of each other. Nothing here says the release caused the edit.
api/beta/agents/create Changed · +156 / -243 lines
# Create Agent ## Headers ## Body parameters ## Returns ## Example ### Response (200) ## Create Agent ### Header Parameters ### Body Parameters ### Returns ### Example #### Response
---- -title: Create Agent -url: https://platform.claude.com/docs/en/api/beta/agents/create ---- +# Create Agent -## Create Agent +**POST** `/v1/agents` -**post** `/v1/agents` - Create Agent -### Header Parameters +## Headers - `"anthropic-beta": optional array of AnthropicBeta`
- `"mid-conversation-tool-changes-2026-07-01"` -### Body Parameters +## Body parameters - `model: BetaManagedAgentsModel or BetaManagedAgentsModelConfigParams`
- `string` - - `BetaManagedAgentsModelConfigParams object { id, effort, inference_geo, speed }` + - `BetaManagedAgentsModelConfigParams object` An object that defines additional configuration control over model use
- `"max"` - - `BetaManagedAgentsEffortLow object { type }` + - `BetaManagedAgentsEffortLow object` Low effort. Favors latency over reasoning depth. - `type: "low"` - - `"low"` + - `BetaManagedAgentsEffortMedium object` - - `BetaManagedAgentsEffortMedium object { type }` - Medium effort. Balances latency and reasoning depth. - `type: "medium"` - - `"medium"` + - `BetaManagedAgentsEffortHigh object` - - `BetaManagedAgentsEffortHigh object { type }` - High effort. Favors reasoning depth. - `type: "high"` - - `"high"` + - `BetaManagedAgentsEffortXhigh object` - - `BetaManagedAgentsEffortXhigh object { type }` - Extra-high effort. Not all models accept this level. - `type: "xhigh"` - - `"xhigh"` + - `BetaManagedAgentsEffortMax object` - - `BetaManagedAgentsEffortMax object { type }` - Maximum effort. Favors reasoning depth over latency. - `type: "max"` - - `"max"` - - `inference_geo: optional string or null` 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.
Human-readable name for the agent. + minLength: 1, maxLength: 256 + - `description: optional string or null` Description of what the agent does. + maxLength: 2048 + - `mcp_servers: optional array of BetaManagedAgentsURLMCPServerParams` MCP servers this agent connects to. Maximum 20. Names must be unique within the array. Every server must be referenced by an `mcp_toolset` in `tools`; unreferenced servers are rejected. See the [MCP connector guide](https://platform.claude.com/docs/en/managed-agents/mcp-connector).
Unique name for this server, referenced by mcp_toolset configurations. 1-255 characters. + minLength: 1, maxLength: 255 + - `type: "url"` - - `"url"` - - `url: string` Endpoint URL for the MCP server. + maxLength: 2048 + - `metadata: optional map[string]` Arbitrary key-value metadata. Maximum 16 pairs, keys up to 64 chars, values up to 512 chars.
- `string` - - `BetaManagedAgentsAgentParams object { id, type, version }` + - `BetaManagedAgentsAgentParams object` Specification for an Agent. Provide a specific `version` or use the short-form `agent="agent_id"` for the most recent version
The `agent` ID. + minLength: 1, maxLength: 128 + - `type: "agent"` - - `"agent"` - - `version: optional number` The specific `agent` version to use. Omit to use the latest version. Must be at least 1 if specified. - - `BetaManagedAgentsMultiagentSelfParams object { type }` + format: int32 + - `BetaManagedAgentsMultiagentSelfParams object` + Sentinel roster entry meaning "the agent that owns this configuration". Resolved server-side to a concrete agent reference. - `type: "self"` - - `"self"` + - `BetaManagedAgentsAdvisorParams object` - - `BetaManagedAgentsAdvisorParams object { model, type }` - Platform advisor roster entry: a model the session's primary thread may consult mid-turn. At most one per roster; the entry occupies the roster name `anthropic.advisor`. - `model: string`
A Claude model id. The model must be permitted as an advisor for this agent's model — see the sessions/threads/advisor spec. + minLength: 1, maxLength: 256 + - `type: "advisor"` - - `"advisor"` - - `type: "coordinator"` - - `"coordinator"` - - `skills: optional array of BetaManagedAgentsSkillParams` Skills available to the agent. - - `BetaManagedAgentsAnthropicSkillParams object { skill_id, type, version }` + - `BetaManagedAgentsAnthropicSkillParams object` An Anthropic-managed skill.
Identifier of the Anthropic skill (e.g., "xlsx"). + minLength: 1, maxLength: 64 + - `type: "anthropic"` - - `"anthropic"` - - `version: optional string or null` Version to pin. Defaults to latest if omitted. - - `BetaManagedAgentsCustomSkillParams object { skill_id, type, version }` + minLength: 1, maxLength: 64 + - `BetaManagedAgentsCustomSkillParams object` + A user-created custom skill. - `skill_id: string`
Tagged ID of the custom skill (e.g., "skill_01XJ5..."). + minLength: 1, maxLength: 64 + - `type: "custom"` - - `"custom"` - - `version: optional string or null` Version to pin. Defaults to latest if omitted. + minLength: 1, maxLength: 64 + - `system: optional string or null` System prompt for the agent. + maxLength: 100000 + - `tools: optional array of BetaManagedAgentsAgentToolset20260401Params or BetaManagedAgentsMCPToolsetParams or BetaManagedAgentsCustomToolParams` Tool configurations available to the agent. Maximum of 128 tools across all toolsets allowed. - - `BetaManagedAgentsAgentToolset20260401Params object { type, configs, default_config }` + - `BetaManagedAgentsAgentToolset20260401Params object` Configuration for built-in agent tools. Use this to enable or disable groups of tools available to the agent. - `type: "agent_toolset_20260401"` - - `"agent_toolset_20260401"` - - `configs: optional array of BetaManagedAgentsAgentToolConfigParams` Per-tool configuration overrides. - - `BetaManagedAgentsBashToolConfigParams object { name, enabled, permission_policy, type }` + - `BetaManagedAgentsBashToolConfigParams object` Configuration override for the bash tool.
Must be "bash". - - `"bash"` - - `enabled: optional boolean or null` Whether this tool is enabled and available to Claude. Overrides the default_config setting.
Permission policy for tool execution. - - `BetaManagedAgentsAlwaysAllowPolicy object { type }` + - `BetaManagedAgentsAlwaysAllowPolicy object` Tool calls are automatically approved without user confirmation. - `type: "always_allow"` - - `"always_allow"` + - `BetaManagedAgentsAlwaysAskPolicy object` - - `BetaManagedAgentsAlwaysAskPolicy object { type }` - Tool calls require user confirmation before execution. - `type: "always_ask"` - - `"always_ask"` - - `type: optional "bash"` - - `"bash"` + - `BetaManagedAgentsEditToolConfigParams object` - - `BetaManagedAgentsEditToolConfigParams object { name, enabled, permission_policy, type }` - Configuration override for the edit tool. - `name: "edit"`
Must be "edit". - - `"edit"` - - `enabled: optional boolean or null` Whether this tool is enabled and available to Claude. Overrides the default_config setting.
Permission policy for tool execution. - - `BetaManagedAgentsAlwaysAllowPolicy object { type }` + - `BetaManagedAgentsAlwaysAllowPolicy object` Tool calls are automatically approved without user confirmation. - - `BetaManagedAgentsAlwaysAskPolicy object { type }` + - `BetaManagedAgentsAlwaysAskPolicy object` Tool calls require user confirmation before execution. - `type: optional "edit"` - - `"edit"` + - `BetaManagedAgentsReadToolConfigParams object` - - `BetaManagedAgentsReadToolConfigParams object { name, enabled, permission_policy, type }` - Configuration override for the read tool. - `name: "read"`
Must be "read". - - `"read"` - - `enabled: optional boolean or null` Whether this tool is enabled and available to Claude. Overrides the default_config setting.
Permission policy for tool execution. - - `BetaManagedAgentsAlwaysAllowPolicy object { type }` + - `BetaManagedAgentsAlwaysAllowPolicy object` Tool calls are automatically approved without user confirmation. - - `BetaManagedAgentsAlwaysAskPolicy object { type }` + - `BetaManagedAgentsAlwaysAskPolicy object` Tool calls require user confirmation before execution. - `type: optional "read"` - - `"read"` + - `BetaManagedAgentsWriteToolConfigParams object` - - `BetaManagedAgentsWriteToolConfigParams object { name, enabled, permission_policy, type }` - Configuration override for the write tool. - `name: "write"`
Must be "write". - - `"write"` - - `enabled: optional boolean or null` Whether this tool is enabled and available to Claude. Overrides the default_config setting.
Permission policy for tool execution. - - `BetaManagedAgentsAlwaysAllowPolicy object { type }` + - `BetaManagedAgentsAlwaysAllowPolicy object` Tool calls are automatically approved without user confirmation. - - `BetaManagedAgentsAlwaysAskPolicy object { type }` + - `BetaManagedAgentsAlwaysAskPolicy object` Tool calls require user confirmation before execution. - `type: optional "write"` - - `"write"` + - `BetaManagedAgentsGlobToolConfigParams object` - - `BetaManagedAgentsGlobToolConfigParams object { name, enabled, permission_policy, type }` - Configuration override for the glob tool. - `name: "glob"`
Must be "glob". - - `"glob"` - - `enabled: optional boolean or null` Whether this tool is enabled and available to Claude. Overrides the default_config setting.
Permission policy for tool execution. - - `BetaManagedAgentsAlwaysAllowPolicy object { type }` + - `BetaManagedAgentsAlwaysAllowPolicy object` Tool calls are automatically approved without user confirmation. - - `BetaManagedAgentsAlwaysAskPolicy object { type }` + - `BetaManagedAgentsAlwaysAskPolicy object` Tool calls require user confirmation before execution. - `type: optional "glob"` - - `"glob"` + - `BetaManagedAgentsGrepToolConfigParams object` - - `BetaManagedAgentsGrepToolConfigParams object { name, enabled, permission_policy, type }` - Configuration override for the grep tool. - `name: "grep"`
Must be "grep". - - `"grep"` - - `enabled: optional boolean or null` Whether this tool is enabled and available to Claude. Overrides the default_config setting.
Permission policy for tool execution. - - `BetaManagedAgentsAlwaysAllowPolicy object { type }` + - `BetaManagedAgentsAlwaysAllowPolicy object` Tool calls are automatically approved without user confirmation. - - `BetaManagedAgentsAlwaysAskPolicy object { type }` + - `BetaManagedAgentsAlwaysAskPolicy object` Tool calls require user confirmation before execution. - `type: optional "grep"` - - `"grep"` + - `BetaManagedAgentsWebFetchToolConfigParams object` - - `BetaManagedAgentsWebFetchToolConfigParams object { name, allowed_domains, blocked_domains, 4 more }` - Configuration override for the web_fetch tool. - `name: "web_fetch"`
Must be "web_fetch". - - `"web_fetch"` - - `allowed_domains: optional array of string` 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.
Maximum number of tokens of fetched text content to include in context per call. Does not apply to binary content such as PDFs. + format: int32 + - `permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or null` Permission policy for tool execution. - - `BetaManagedAgentsAlwaysAllowPolicy object { type }` + - `BetaManagedAgentsAlwaysAllowPolicy object` Tool calls are automatically approved without user confirmation. - - `BetaManagedAgentsAlwaysAskPolicy object { type }` + - `BetaManagedAgentsAlwaysAskPolicy object` Tool calls require user confirmation before execution. - `type: optional "web_fetch"` - - `"web_fetch"` + - `BetaManagedAgentsWebSearchToolConfigParams object` - - `BetaManagedAgentsWebSearchToolConfigParams object { name, allowed_domains, blocked_domains, 4 more }` - Configuration override for the web_search tool. - `name: "web_search"`
Must be "web_search". - - `"web_search"` - - `allowed_domains: optional array of string` 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.
Permission policy for tool execution. - - `BetaManagedAgentsAlwaysAllowPolicy object { type }` + - `BetaManagedAgentsAlwaysAllowPolicy object` Tool calls are automatically approved without user confirmation. - - `BetaManagedAgentsAlwaysAskPolicy object { type }` + - `BetaManagedAgentsAlwaysAskPolicy object` Tool calls require user confirmation before execution. - `type: optional "web_search"` - - `"web_search"` - - `user_location: optional BetaManagedAgentsUserLocation or null` Approximate user location for search result localization.
Location precision. Only "approximate" is supported. - - `"approximate"` - - `city: optional string or null` City name. + minLength: 1, maxLength: 255 + - `country: optional string or null` Two-letter ISO 3166-1 country code, uppercase.
Region or state name. + minLength: 1, maxLength: 255 + - `timezone: optional string or null` IANA timezone identifier, e.g. "America/Los_Angeles". + minLength: 1, maxLength: 255 + - `default_config: optional BetaManagedAgentsAgentToolsetDefaultConfigParams or null` Default configuration for all tools in a toolset.
Permission policy for tool execution. - - `BetaManagedAgentsAlwaysAllowPolicy object { type }` + - `BetaManagedAgentsAlwaysAllowPolicy object` Tool calls are automatically approved without user confirmation. - - `BetaManagedAgentsAlwaysAskPolicy object { type }` + - `BetaManagedAgentsAlwaysAskPolicy object` Tool calls require user confirmation before execution. - - `BetaManagedAgentsMCPToolsetParams object { mcp_server_name, type, configs, default_config }` + - `BetaManagedAgentsMCPToolsetParams object` Configuration for tools from an MCP server defined in `mcp_servers`.
Name of the MCP server. Must match a server name from the mcp_servers array. 1-255 characters. + minLength: 1, maxLength: 255 + - `type: "mcp_toolset"` - - `"mcp_toolset"` - - `configs: optional array of BetaManagedAgentsMCPToolConfigParams` Per-tool configuration overrides.
Name of the MCP tool to configure. 1-128 characters. + minLength: 1, maxLength: 128 + - `enabled: optional boolean or null` Whether this tool is enabled. Overrides the `default_config` setting.
Permission policy for tool execution. - - `BetaManagedAgentsAlwaysAllowPolicy object { type }` + - `BetaManagedAgentsAlwaysAllowPolicy object` Tool calls are automatically approved without user confirmation. - - `BetaManagedAgentsAlwaysAskPolicy object { type }` + - `BetaManagedAgentsAlwaysAskPolicy object` Tool calls require user confirmation before execution.
Permission policy for tool execution. - - `BetaManagedAgentsAlwaysAllowPolicy object { type }` + - `BetaManagedAgentsAlwaysAllowPolicy object` Tool calls are automatically approved without user confirmation. - - `BetaManagedAgentsAlwaysAskPolicy object { type }` + - `BetaManagedAgentsAlwaysAskPolicy object` Tool calls require user confirmation before execution. - - `BetaManagedAgentsCustomToolParams object { description, input_schema, name, type }` + - `BetaManagedAgentsCustomToolParams object` 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.
Description of what the tool does, shown to the agent to help it decide when to use the tool. + minLength: 1 + - `input_schema: BetaManagedAgentsCustomToolInputSchema` JSON Schema for custom tool input parameters.
- `type: "object"` - - `"object"` - - `properties: optional map[unknown] or null` - `required: optional array of string or null`
Unique name for the tool. 1-128 characters; letters, digits, underscores, and hyphens. + minLength: 1, maxLength: 128 + - `type: "custom"` - - `"custom"` +## Returns -### Returns +- `BetaManagedAgentsAgent object` -- `BetaManagedAgentsAgent object { id, archived_at, created_at, 12 more }` - A Managed Agents `agent`. - `id: string`
A timestamp in RFC 3339 format + format: date-time + - `created_at: string` A timestamp in RFC 3339 format + format: date-time + - `description: string or null` - `mcp_servers: array of BetaManagedAgentsMCPServerURLDefinition`
- `type: "url"` - - `"url"` - - `url: string` - `metadata: map[string]`
How hard Claude works on each turn. Sets `output_config.effort` on every Messages call the session makes. - - `BetaManagedAgentsEffortLow object { type }` + - `BetaManagedAgentsEffortLow object` Low effort. Favors latency over reasoning depth. - `type: "low"` - - `"low"` + - `BetaManagedAgentsEffortMedium object` - - `BetaManagedAgentsEffortMedium object { type }` - Medium effort. Balances latency and reasoning depth. - `type: "medium"` - - `"medium"` + - `BetaManagedAgentsEffortHigh object` - - `BetaManagedAgentsEffortHigh object { type }` - High effort. Favors reasoning depth. - `type: "high"` - - `"high"` + - `BetaManagedAgentsEffortXhigh object` - - `BetaManagedAgentsEffortXhigh object { type }` - Extra-high effort. Not all models accept this level. - `type: "xhigh"` - - `"xhigh"` + - `BetaManagedAgentsEffortMax object` - - `BetaManagedAgentsEffortMax object { type }` - Maximum effort. Favors reasoning depth over latency. - `type: "max"` - - `"max"` - - `inference_geo: optional string` Geographic region for model inference. When unset, requests fall through to the workspace's default_inference_geo.
Agents the coordinator may spawn as session threads, each resolved to a specific version. - - `BetaManagedAgentsAgentReference object { id, type, version }` + - `BetaManagedAgentsAgentReference object` A resolved agent reference with a concrete version.
- `type: "agent"` - - `"agent"` - - `version: number` - - `BetaManagedAgentsAdvisor object { model, type }` + format: int32 + - `BetaManagedAgentsAdvisor object` + Platform advisor roster entry: a model the session's primary thread may consult mid-turn. - `model: string`
- `type: "advisor"` - - `"advisor"` - - `type: "coordinator"` - - `"coordinator"` - - `name: string` - `skills: array of BetaManagedAgentsAnthropicSkill or BetaManagedAgentsCustomSkill` - - `BetaManagedAgentsAnthropicSkill object { skill_id, type, version }` + - `BetaManagedAgentsAnthropicSkill object` A resolved Anthropic-managed skill.
- `type: "anthropic"` - - `"anthropic"` - - `version: string` - - `BetaManagedAgentsCustomSkill object { skill_id, type, version }` + - `BetaManagedAgentsCustomSkill object` A resolved user-created custom skill.
- `type: "custom"` - - `"custom"` - - `version: string` - `system: string or null`
- `tools: array of BetaManagedAgentsAgentToolset20260401 or BetaManagedAgentsMCPToolset or BetaManagedAgentsCustomTool` - - `BetaManagedAgentsAgentToolset20260401 object { configs, default_config, type }` + - `BetaManagedAgentsAgentToolset20260401 object` - `configs: array of BetaManagedAgentsAgentToolConfig` - - `BetaManagedAgentsBashToolConfig object { enabled, name, permission_policy, type }` + - `BetaManagedAgentsBashToolConfig object` Configuration for the bash tool.
- `name: "bash"` - - `"bash"` - - `permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy` Permission policy for tool execution. - - `BetaManagedAgentsAlwaysAllowPolicy object { type }` + - `BetaManagedAgentsAlwaysAllowPolicy object` Tool calls are automatically approved without user confirmation. - `type: "always_allow"` - - `"always_allow"` + - `BetaManagedAgentsAlwaysAskPolicy object` - - `BetaManagedAgentsAlwaysAskPolicy object { type }` - Tool calls require user confirmation before execution. - `type: "always_ask"` - - `"always_ask"` - - `type: "bash"` - - `"bash"` + - `BetaManagedAgentsEditToolConfig object` - - `BetaManagedAgentsEditToolConfig object { enabled, name, permission_policy, type }` - Configuration for the edit tool. - `enabled: boolean`
- `name: "edit"` - - `"edit"` - - `permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy` Permission policy for tool execution. - - `BetaManagedAgentsAlwaysAllowPolicy object { type }` + - `BetaManagedAgentsAlwaysAllowPolicy object` Tool calls are automatically approved without user confirmation. - - `BetaManagedAgentsAlwaysAskPolicy object { type }` + - `BetaManagedAgentsAlwaysAskPolicy object` Tool calls require user confirmation before execution. - `type: "edit"` - - `"edit"` + - `BetaManagedAgentsReadToolConfig object` - - `BetaManagedAgentsReadToolConfig object { enabled, name, permission_policy, type }` - Configuration for the read tool. - `enabled: boolean`
- `name: "read"` - - `"read"` - - `permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy` Permission policy for tool execution. - - `BetaManagedAgentsAlwaysAllowPolicy object { type }` + - `BetaManagedAgentsAlwaysAllowPolicy object` Tool calls are automatically approved without user confirmation. - - `BetaManagedAgentsAlwaysAskPolicy object { type }` + - `BetaManagedAgentsAlwaysAskPolicy object` Tool calls require user confirmation before execution. - `type: "read"` - - `"read"` + - `BetaManagedAgentsWriteToolConfig object` - - `BetaManagedAgentsWriteToolConfig object { enabled, name, permission_policy, type }` - Configuration for the write tool. - `enabled: boolean`
- `name: "write"` - - `"write"` - - `permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy` Permission policy for tool execution. - - `BetaManagedAgentsAlwaysAllowPolicy object { type }` + - `BetaManagedAgentsAlwaysAllowPolicy object` Tool calls are automatically approved without user confirmation. - - `BetaManagedAgentsAlwaysAskPolicy object { type }` + - `BetaManagedAgentsAlwaysAskPolicy object` Tool calls require user confirmation before execution. - `type: "write"` - - `"write"` + - `BetaManagedAgentsGlobToolConfig object` - - `BetaManagedAgentsGlobToolConfig object { enabled, name, permission_policy, type }` - Configuration for the glob tool. - `enabled: boolean`
- `name: "glob"` - - `"glob"` - - `permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy` Permission policy for tool execution. - - `BetaManagedAgentsAlwaysAllowPolicy object { type }` + - `BetaManagedAgentsAlwaysAllowPolicy object` Tool calls are automatically approved without user confirmation. - - `BetaManagedAgentsAlwaysAskPolicy object { type }` + - `BetaManagedAgentsAlwaysAskPolicy object` Tool calls require user confirmation before execution. - `type: "glob"` - - `"glob"` + - `BetaManagedAgentsGrepToolConfig object` - - `BetaManagedAgentsGrepToolConfig object { enabled, name, permission_policy, type }` - Configuration for the grep tool. - `enabled: boolean`
- `name: "grep"` - - `"grep"` - - `permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy` Permission policy for tool execution. - - `BetaManagedAgentsAlwaysAllowPolicy object { type }` + - `BetaManagedAgentsAlwaysAllowPolicy object` Tool calls are automatically approved without user confirmation. - - `BetaManagedAgentsAlwaysAskPolicy object { type }` + - `BetaManagedAgentsAlwaysAskPolicy object` Tool calls require user confirmation before execution. - `type: "grep"` - - `"grep"` + - `BetaManagedAgentsWebFetchToolConfig object` - - `BetaManagedAgentsWebFetchToolConfig object { enabled, name, permission_policy, 4 more }` - Configuration for the web_fetch tool. - `enabled: boolean`
- `name: "web_fetch"` - - `"web_fetch"` - - `permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy` Permission policy for tool execution. - - `BetaManagedAgentsAlwaysAllowPolicy object { type }` + - `BetaManagedAgentsAlwaysAllowPolicy object` Tool calls are automatically approved without user confirmation. - - `BetaManagedAgentsAlwaysAskPolicy object { type }` + - `BetaManagedAgentsAlwaysAskPolicy object` Tool calls require user confirmation before execution. - `type: "web_fetch"` - - `"web_fetch"` - - `allowed_domains: optional array of string` - `blocked_domains: optional array of string`
- `max_content_tokens: optional number or null` - - `BetaManagedAgentsWebSearchToolConfig object { enabled, name, permission_policy, 4 more }` + format: int32 + - `BetaManagedAgentsWebSearchToolConfig object` + Configuration for the web_search tool. - `enabled: boolean`
- `name: "web_search"` - - `"web_search"` - - `permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy` Permission policy for tool execution. - - `BetaManagedAgentsAlwaysAllowPolicy object { type }` + - `BetaManagedAgentsAlwaysAllowPolicy object` Tool calls are automatically approved without user confirmation. - - `BetaManagedAgentsAlwaysAskPolicy object { type }` + - `BetaManagedAgentsAlwaysAskPolicy object` Tool calls require user confirmation before execution. - `type: "web_search"` - - `"web_search"` - - `allowed_domains: optional array of string` - `blocked_domains: optional array of string`
Location precision. Only "approximate" is supported. - - `"approximate"` - - `city: optional string or null` City name. + minLength: 1, maxLength: 255 + - `country: optional string or null` Two-letter ISO 3166-1 country code, uppercase.
Region or state name. + minLength: 1, maxLength: 255 + - `timezone: optional string or null` IANA timezone identifier, e.g. "America/Los_Angeles". + minLength: 1, maxLength: 255 + - `default_config: BetaManagedAgentsAgentToolsetDefaultConfig` Resolved default configuration for agent tools.
Permission policy for tool execution. - - `BetaManagedAgentsAlwaysAllowPolicy object { type }` + - `BetaManagedAgentsAlwaysAllowPolicy object` Tool calls are automatically approved without user confirmation. - - `BetaManagedAgentsAlwaysAskPolicy object { type }` + - `BetaManagedAgentsAlwaysAskPolicy object` Tool calls require user confirmation before execution. - `type: "agent_toolset_20260401"` - - `"agent_toolset_20260401"` + - `BetaManagedAgentsMCPToolset object` - - `BetaManagedAgentsMCPToolset object { configs, default_config, mcp_server_name, type }` - - `configs: array of BetaManagedAgentsMCPToolConfig` - `enabled: boolean`
Permission policy for tool execution. - - `BetaManagedAgentsAlwaysAllowPolicy object { type }` + - `BetaManagedAgentsAlwaysAllowPolicy object` Tool calls are automatically approved without user confirmation. - - `BetaManagedAgentsAlwaysAskPolicy object { type }` + - `BetaManagedAgentsAlwaysAskPolicy object` Tool calls require user confirmation before execution.
Permission policy for tool execution. - - `BetaManagedAgentsAlwaysAllowPolicy object { type }` + - `BetaManagedAgentsAlwaysAllowPolicy object` Tool calls are automatically approved without user confirmation. - - `BetaManagedAgentsAlwaysAskPolicy object { type }` + - `BetaManagedAgentsAlwaysAskPolicy object` Tool calls require user confirmation before execution.
- `type: "mcp_toolset"` - - `"mcp_toolset"` + - `BetaManagedAgentsCustomTool object` - - `BetaManagedAgentsCustomTool object { description, input_schema, name, type }` - A custom tool as returned in API responses. - `description: string`
- `type: "object"` - - `"object"` - - `properties: optional map[unknown] or null` - `required: optional array of string or null`
- `type: "custom"` - - `"custom"` - - `type: "agent"` - - `"agent"` - - `updated_at: string` A timestamp in RFC 3339 format + format: date-time + - `version: number` The agent's current version. Starts at 1 and increments when the agent is modified. -### Example + format: int32 -```http +## Example + +```bash curl https://api.anthropic.com/v1/agents \ -H 'Content-Type: application/json' \ -H 'anthropic-version: 2023-06-01' \
}' ``` -#### Response +### Response (200) ```json {