---
title: Agents
url: https://platform.claude.com/docs/en/api/go/beta/agents
---

# Agents

## Create Agent

`client.Beta.Agents.New(ctx, params) (*BetaManagedAgentsAgent, error)`

**POST** `/v1/agents`

Create Agent

### Parameters

- `params BetaAgentNewParams`

  - `Model BetaManagedAgentsModelConfigParams`

    Model identifier. Accepts the [model string](https://platform.claude.com/docs/en/about-claude/models/overview?sdk_languages=go#latest-models-comparison), e.g. `claude-opus-5-5`, or a `model_config` object for additional configuration control

    - `type BetaManagedAgentsModelConfigParams`

      An object that defines additional configuration control over model use

      - `ID BetaManagedAgentsModel`

        The model that will power your agent.

        See [models](https://docs.anthropic.com/en/docs/models-overview) for additional details and options.

        - `const BetaManagedAgentsModelClaudeHaiku5_5 BetaManagedAgentsModel = "claude-haiku-5-5"`

          Fastest model for high-volume, real-time tasks

        - `const BetaManagedAgentsModelClaudeSonnet5_5 BetaManagedAgentsModel = "claude-sonnet-5-5"`

          Efficient model for coding and agents

        - `const BetaManagedAgentsModelClaudeOpus5_5 BetaManagedAgentsModel = "claude-opus-5-5"`

          Powerful intelligence for coding, knowledge work, and long-running agents

        - `const BetaManagedAgentsModelClaudeFable5_1 BetaManagedAgentsModel = "claude-fable-5-1"`

          Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows

        - `const BetaManagedAgentsModelClaudeSonnet5 BetaManagedAgentsModel = "claude-sonnet-5"`

          Efficient model for coding and agents

        - `const BetaManagedAgentsModelClaudeFable5 BetaManagedAgentsModel = "claude-fable-5"`

          Next generation of intelligence for the hardest knowledge work and coding problems

        - `const BetaManagedAgentsModelClaudeOpus5 BetaManagedAgentsModel = "claude-opus-5"`

          Powerful intelligence for long-running agents and coding

        - `const BetaManagedAgentsModelClaudeOpus4_8 BetaManagedAgentsModel = "claude-opus-4-8"`

          Powerful intelligence for long-running agents and coding

        - `const BetaManagedAgentsModelClaudeOpus4_7 BetaManagedAgentsModel = "claude-opus-4-7"`

          Powerful intelligence for long-running agents and coding

        - `const BetaManagedAgentsModelClaudeOpus4_6 BetaManagedAgentsModel = "claude-opus-4-6"`

          Powerful intelligence for long-running agents and coding

        - `const BetaManagedAgentsModelClaudeSonnet4_6 BetaManagedAgentsModel = "claude-sonnet-4-6"`

          Best combination of speed and intelligence

        - `const BetaManagedAgentsModelClaudeHaiku4_5 BetaManagedAgentsModel = "claude-haiku-4-5"`

        - `const BetaManagedAgentsModelClaudeHaiku4_5_20251001 BetaManagedAgentsModel = "claude-haiku-4-5-20251001"`

        - `const BetaManagedAgentsModelClaudeOpus4_5 BetaManagedAgentsModel = "claude-opus-4-5"`

          Powerful intelligence for long-running agents and coding

        - `const BetaManagedAgentsModelClaudeOpus4_5_20251101 BetaManagedAgentsModel = "claude-opus-4-5-20251101"`

          Powerful intelligence for long-running agents and coding

        - `const BetaManagedAgentsModelClaudeSonnet4_5 BetaManagedAgentsModel = "claude-sonnet-4-5"`

          **Deprecated**: Will reach end-of-life on November 30, 2026. Please migrate to claude-sonnet-5-5. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.

          High-performance model for agents and coding

        - `const BetaManagedAgentsModelClaudeSonnet4_5_20250929 BetaManagedAgentsModel = "claude-sonnet-4-5-20250929"`

          **Deprecated**: Will reach end-of-life on November 30, 2026. Please migrate to claude-sonnet-5-5. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.

          High-performance model for agents and coding

      - `Effort BetaManagedAgentsModelConfigParamsEffortUnion Optional`

        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.

        - `type BetaManagedAgentsModelConfigParamsEffortBetaManagedAgentsEffortLevel string`

          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.

          - `const BetaManagedAgentsModelConfigParamsEffortBetaManagedAgentsEffortLevelLow BetaManagedAgentsModelConfigParamsEffortBetaManagedAgentsEffortLevel = "low"`

            Low effort. Favors latency over reasoning depth.

          - `const BetaManagedAgentsModelConfigParamsEffortBetaManagedAgentsEffortLevelMedium BetaManagedAgentsModelConfigParamsEffortBetaManagedAgentsEffortLevel = "medium"`

            Medium effort. Balances latency and reasoning depth.

          - `const BetaManagedAgentsModelConfigParamsEffortBetaManagedAgentsEffortLevelHigh BetaManagedAgentsModelConfigParamsEffortBetaManagedAgentsEffortLevel = "high"`

            High effort. Favors reasoning depth.

          - `const BetaManagedAgentsModelConfigParamsEffortBetaManagedAgentsEffortLevelXhigh BetaManagedAgentsModelConfigParamsEffortBetaManagedAgentsEffortLevel = "xhigh"`

            Extra-high effort. Not all models accept this level.

          - `const BetaManagedAgentsModelConfigParamsEffortBetaManagedAgentsEffortLevelMax BetaManagedAgentsModelConfigParamsEffortBetaManagedAgentsEffortLevel = "max"`

            Maximum effort. Favors reasoning depth over latency.

        - `type BetaManagedAgentsEffortLow`

          Low effort. Favors latency over reasoning depth.

          - `Type BetaManagedAgentsEffortLowType`

        - `type BetaManagedAgentsEffortMedium`

          Medium effort. Balances latency and reasoning depth.

          - `Type BetaManagedAgentsEffortMediumType`

        - `type BetaManagedAgentsEffortHigh`

          High effort. Favors reasoning depth.

          - `Type BetaManagedAgentsEffortHighType`

        - `type BetaManagedAgentsEffortXhigh`

          Extra-high effort. Not all models accept this level.

          - `Type BetaManagedAgentsEffortXhighType`

        - `type BetaManagedAgentsEffortMax`

          Maximum effort. Favors reasoning depth over latency.

          - `Type BetaManagedAgentsEffortMaxType`

      - `InferenceGeo string Optional`

        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.

      - `Speed BetaManagedAgentsModelConfigParamsSpeed Optional`

        Inference speed mode. Defaults to `standard`.

        - `const BetaManagedAgentsModelConfigParamsSpeedStandard BetaManagedAgentsModelConfigParamsSpeed = "standard"`

        - `const BetaManagedAgentsModelConfigParamsSpeedFast BetaManagedAgentsModelConfigParamsSpeed = "fast"`

  - `Name string`

    Human-readable name for the agent.

    minLength: 1, maxLength: 256

  - `Description param.Opt[string] Optional`

    Description of what the agent does.

    maxLength: 2048

  - `ExecutionIdentity BetaManagedAgentsExecutionIdentityParamsUnion Optional`

    Execution principal for runs of this agent. Omitting it, sending null, or sending `{"type": "service_account"}` stores the default.

  - `MCPServers []BetaManagedAgentsURLMCPServerParams Optional`

    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?sdk_languages=go).

    - `Type BetaManagedAgentsURLMCPServerParamsType`

    - `Name string`

      Unique name for this server, referenced by mcp_toolset configurations. 1-255 characters.

      minLength: 1, maxLength: 255

    - `URL string`

      Endpoint URL for the MCP server.

      maxLength: 2048

  - `Metadata map[string, string] Optional`

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

  - `Multiagent BetaManagedAgentsMultiagentParamsUnion Optional`

    Multiagent orchestration configuration.

  - `Skills []BetaManagedAgentsSkillParamsUnion Optional`

    Skills available to the agent.

    - `type BetaManagedAgentsAnthropicSkillParams`

      An Anthropic-managed skill.

      - `Type BetaManagedAgentsAnthropicSkillParamsType`

      - `SkillID string`

        Identifier of the Anthropic skill (e.g., "xlsx").

        minLength: 1, maxLength: 64

      - `Version string Optional`

        Version to pin. Defaults to latest if omitted.

        minLength: 1, maxLength: 64

    - `type BetaManagedAgentsCustomSkillParams`

      A user-created custom skill.

      - `Type BetaManagedAgentsCustomSkillParamsType`

      - `SkillID string`

        Tagged ID of the custom skill (e.g., "skill_01XJ5...").

        minLength: 1, maxLength: 64

      - `Version string Optional`

        Version to pin. Defaults to latest if omitted.

        minLength: 1, maxLength: 64

  - `System param.Opt[string] Optional`

    System prompt for the agent.

    maxLength: 100000

  - `Tools []BetaAgentNewParamsToolUnion Optional`

    Tool configurations available to the agent. Maximum of 256 tools across all toolsets allowed.

    - `type BetaManagedAgentsAgentToolset20260401Params`

      Configuration for built-in agent tools. Use this to enable or disable groups of tools available to the agent.

      - `Type BetaManagedAgentsAgentToolset20260401ParamsType`

      - `Configs []BetaManagedAgentsAgentToolConfigParamsUnion Optional`

        Per-tool configuration overrides.

        - `type BetaManagedAgentsBashToolConfigParams`

          Configuration override for the bash tool.

          - `Type BetaManagedAgentsBashToolConfigParamsType Optional`

          - `Name Bash`

            Must be "bash".

          - `Enabled bool Optional`

            Whether this tool is enabled and available to Claude. Overrides the default_config setting.

          - `PermissionPolicy BetaManagedAgentsBashToolConfigParamsPermissionPolicyUnion Optional`

            Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

              - `Type BetaManagedAgentsAlwaysAllowPolicyType`

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

              - `Type BetaManagedAgentsAlwaysAskPolicyType`

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

              - `Type Auto`

        - `type BetaManagedAgentsEditToolConfigParams`

          Configuration override for the edit tool.

          - `Type BetaManagedAgentsEditToolConfigParamsType Optional`

          - `Name Edit`

            Must be "edit".

          - `Enabled bool Optional`

            Whether this tool is enabled and available to Claude. Overrides the default_config setting.

          - `PermissionPolicy BetaManagedAgentsEditToolConfigParamsPermissionPolicyUnion Optional`

            Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsReadToolConfigParams`

          Configuration override for the read tool.

          - `Type BetaManagedAgentsReadToolConfigParamsType Optional`

          - `Name Read`

            Must be "read".

          - `Enabled bool Optional`

            Whether this tool is enabled and available to Claude. Overrides the default_config setting.

          - `PermissionPolicy BetaManagedAgentsReadToolConfigParamsPermissionPolicyUnion Optional`

            Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsWriteToolConfigParams`

          Configuration override for the write tool.

          - `Type BetaManagedAgentsWriteToolConfigParamsType Optional`

          - `Name Write`

            Must be "write".

          - `Enabled bool Optional`

            Whether this tool is enabled and available to Claude. Overrides the default_config setting.

          - `PermissionPolicy BetaManagedAgentsWriteToolConfigParamsPermissionPolicyUnion Optional`

            Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsGlobToolConfigParams`

          Configuration override for the glob tool.

          - `Type BetaManagedAgentsGlobToolConfigParamsType Optional`

          - `Name Glob`

            Must be "glob".

          - `Enabled bool Optional`

            Whether this tool is enabled and available to Claude. Overrides the default_config setting.

          - `PermissionPolicy BetaManagedAgentsGlobToolConfigParamsPermissionPolicyUnion Optional`

            Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsGrepToolConfigParams`

          Configuration override for the grep tool.

          - `Type BetaManagedAgentsGrepToolConfigParamsType Optional`

          - `Name Grep`

            Must be "grep".

          - `Enabled bool Optional`

            Whether this tool is enabled and available to Claude. Overrides the default_config setting.

          - `PermissionPolicy BetaManagedAgentsGrepToolConfigParamsPermissionPolicyUnion Optional`

            Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsWebFetchToolConfigParams`

          Configuration override for the web_fetch tool.

          - `Type BetaManagedAgentsWebFetchToolConfigParamsType Optional`

          - `Name WebFetch`

            Must be "web_fetch".

          - `AllowedDomains []string Optional`

            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.

          - `BlockedDomains []string Optional`

            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.

          - `Enabled bool Optional`

            Whether this tool is enabled and available to Claude. Overrides the default_config setting.

          - `MaxContentTokens int64 Optional`

            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

          - `PermissionPolicy BetaManagedAgentsWebFetchToolConfigParamsPermissionPolicyUnion Optional`

            Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

          - `URLSources BetaManagedAgentsWebFetchURLSourcesParams Optional`

            Which sources contribute URLs the tool may fetch. Omit to allow every source.

            - `ClientToolResults BetaManagedAgentsWebFetchURLSourceToolFilterParamsUnion Optional`

              Which custom tools' results contribute URLs that may be fetched: "all" (the default), "none", or an only or except list. Each name in a list must be a custom tool in the same tools array.

              - `type BetaManagedAgentsWebFetchURLSourceShorthand string`

                String form of a url_sources value that has no field other than its type: "all" means {"type": "all"} and "none" means {"type": "none"}.

                - `const BetaManagedAgentsWebFetchURLSourceShorthandAll BetaManagedAgentsWebFetchURLSourceShorthand = "all"`

                - `const BetaManagedAgentsWebFetchURLSourceShorthandNone BetaManagedAgentsWebFetchURLSourceShorthand = "none"`

              - `type BetaManagedAgentsWebFetchURLSourceToolFilterUnion interface{…}`

                Which tools' results contribute URLs that may be fetched.

                - `type BetaManagedAgentsWebFetchURLSourceAll`

                  Every URL from this source may be fetched. This is the default.

                  - `Type All`

                - `type BetaManagedAgentsWebFetchURLSourceNone`

                  This source contributes no URLs that may be fetched.

                  - `Type None`

                - `type BetaManagedAgentsWebFetchURLSourceOnly`

                  Only the named tools' results contribute URLs that may be fetched.

                  - `Type Only`

                  - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

                    The tools whose results contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "none" to allow no tool's results.

                    - `Type ToolReference`

                      Must be "tool_reference".

                    - `Name string`

                      Name of the tool. Compared exactly, so upper and lower case letters are different.

                      minLength: 1, maxLength: 128

                - `type BetaManagedAgentsWebFetchURLSourceExcept`

                  Every tool's results contribute URLs that may be fetched, except the named tools' results.

                  - `Type Except`

                  - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

                    The tools whose results do not contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "all" to leave out no tool's results.

                    - `Type ToolReference`

                      Must be "tool_reference".

                    - `Name string`

                      Name of the tool. Compared exactly, so upper and lower case letters are different.

                      minLength: 1, maxLength: 128

            - `ServerToolResults BetaManagedAgentsWebFetchURLSourceToolFilterParamsUnion Optional`

              Which of the web_search and web_fetch tools' results contribute URLs that may be fetched: "all" (the default), "none", or an only or except list. Each name in a list must be "web_search" or "web_fetch".

            - `UserInput BetaManagedAgentsWebFetchURLSourceUserInputParamsUnion Optional`

              Whether URLs in the text of user messages may be fetched: "all" (the default) or "none".

              - `type BetaManagedAgentsWebFetchURLSourceShorthand string`

                String form of a url_sources value that has no field other than its type: "all" means {"type": "all"} and "none" means {"type": "none"}.

              - `type BetaManagedAgentsWebFetchURLSourceUserInputUnion interface{…}`

                Whether URLs in the text of user messages may be fetched.

                - `type BetaManagedAgentsWebFetchURLSourceAll`

                  Every URL from this source may be fetched. This is the default.

                - `type BetaManagedAgentsWebFetchURLSourceNone`

                  This source contributes no URLs that may be fetched.

        - `type BetaManagedAgentsWebSearchToolConfigParams`

          Configuration override for the web_search tool.

          - `Type BetaManagedAgentsWebSearchToolConfigParamsType Optional`

          - `Name WebSearch`

            Must be "web_search".

          - `AllowedDomains []string Optional`

            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.

          - `BlockedDomains []string Optional`

            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.

          - `Enabled bool Optional`

            Whether this tool is enabled and available to Claude. Overrides the default_config setting.

          - `PermissionPolicy BetaManagedAgentsWebSearchToolConfigParamsPermissionPolicyUnion Optional`

            Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

          - `UserLocation BetaManagedAgentsUserLocationParam Optional`

            Approximate user location for search result localization.

            - `Type Approximate`

              Location precision. Only "approximate" is supported.

            - `City string Optional`

              City name.

              minLength: 1, maxLength: 255

            - `Country string Optional`

              Two-letter ISO 3166-1 country code, uppercase.

            - `Region string Optional`

              Region or state name.

              minLength: 1, maxLength: 255

            - `Timezone string Optional`

              IANA timezone identifier, e.g. "America/Los_Angeles".

              minLength: 1, maxLength: 255

      - `DefaultConfig BetaManagedAgentsAgentToolsetDefaultConfigParams Optional`

        Default configuration applied to all tools in this set.

        - `Enabled bool Optional`

          Whether tools are enabled and available to Claude by default. Defaults to true if not specified.

        - `PermissionPolicy BetaManagedAgentsAgentToolsetDefaultConfigParamsPermissionPolicyUnion Optional`

          Default permission policy for tools. Controls whether tool calls are auto-approved or require confirmation.

          - `type BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `type BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `type BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

    - `type BetaManagedAgentsMCPToolsetParams`

      Configuration for tools from an MCP server defined in `mcp_servers`.

      - `Type BetaManagedAgentsMCPToolsetParamsType`

      - `MCPServerName string`

        Name of the MCP server. Must match a server name from the mcp_servers array. 1-255 characters.

        minLength: 1, maxLength: 255

      - `Configs []BetaManagedAgentsMCPToolConfigParams Optional`

        Per-tool configuration overrides.

        - `Name string`

          Name of the MCP tool to configure. 1-128 characters.

          minLength: 1, maxLength: 128

        - `Enabled bool Optional`

          Whether this tool is enabled. Overrides the `default_config` setting.

        - `PermissionPolicy BetaManagedAgentsMCPToolConfigParamsPermissionPolicyUnion Optional`

          Permission policy for this tool. Overrides the `default_config` setting.

          - `type BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `type BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `type BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `DefaultConfig BetaManagedAgentsMCPToolsetDefaultConfigParams Optional`

        Default configuration for all tools from this server.

        - `Enabled bool Optional`

          Whether tools are enabled by default. Defaults to true if not specified.

        - `PermissionPolicy BetaManagedAgentsMCPToolsetDefaultConfigParamsPermissionPolicyUnion Optional`

          Default permission policy for tools from this server.

          - `type BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `type BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `type BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

    - `type BetaManagedAgentsCustomToolParams`

      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 BetaManagedAgentsCustomToolParamsType`

      - `Description string`

        Description of what the tool does, shown to the agent to help it decide when to use the tool.

        minLength: 1

      - `InputSchema BetaManagedAgentsCustomToolInputSchemaParam`

        JSON Schema defining the expected input parameters for the tool.

        - `Type Object`

        - `Properties map[string, any] Optional`

        - `Required []string Optional`

      - `Name string`

        Unique name for the tool. 1-128 characters; letters, digits, underscores, and hyphens.

        minLength: 1, maxLength: 128

  - `Betas []AnthropicBeta Optional` (header parameter)

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

    - `const AnthropicBetaMessageBatches2024_09_24 AnthropicBeta = "message-batches-2024-09-24"`

    - `const AnthropicBetaPromptCaching2024_07_31 AnthropicBeta = "prompt-caching-2024-07-31"`

    - `const AnthropicBetaComputerUse2024_10_22 AnthropicBeta = "computer-use-2024-10-22"`

    - `const AnthropicBetaComputerUse2025_01_24 AnthropicBeta = "computer-use-2025-01-24"`

    - `const AnthropicBetaPDFs2024_09_25 AnthropicBeta = "pdfs-2024-09-25"`

    - `const AnthropicBetaTokenCounting2024_11_01 AnthropicBeta = "token-counting-2024-11-01"`

    - `const AnthropicBetaTokenEfficientTools2025_02_19 AnthropicBeta = "token-efficient-tools-2025-02-19"`

    - `const AnthropicBetaOutput128k2025_02_19 AnthropicBeta = "output-128k-2025-02-19"`

    - `const AnthropicBetaFilesAPI2025_04_14 AnthropicBeta = "files-api-2025-04-14"`

    - `const AnthropicBetaMCPClient2025_04_04 AnthropicBeta = "mcp-client-2025-04-04"`

    - `const AnthropicBetaMCPClient2025_11_20 AnthropicBeta = "mcp-client-2025-11-20"`

    - `const AnthropicBetaDevFullThinking2025_05_14 AnthropicBeta = "dev-full-thinking-2025-05-14"`

    - `const AnthropicBetaInterleavedThinking2025_05_14 AnthropicBeta = "interleaved-thinking-2025-05-14"`

    - `const AnthropicBetaCodeExecution2025_05_22 AnthropicBeta = "code-execution-2025-05-22"`

    - `const AnthropicBetaExtendedCacheTTL2025_04_11 AnthropicBeta = "extended-cache-ttl-2025-04-11"`

    - `const AnthropicBetaContext1m2025_08_07 AnthropicBeta = "context-1m-2025-08-07"`

    - `const AnthropicBetaContextManagement2025_06_27 AnthropicBeta = "context-management-2025-06-27"`

    - `const AnthropicBetaModelContextWindowExceeded2025_08_26 AnthropicBeta = "model-context-window-exceeded-2025-08-26"`

    - `const AnthropicBetaSkills2025_10_02 AnthropicBeta = "skills-2025-10-02"`

    - `const AnthropicBetaFastMode2026_02_01 AnthropicBeta = "fast-mode-2026-02-01"`

    - `const AnthropicBetaOutput300k2026_03_24 AnthropicBeta = "output-300k-2026-03-24"`

    - `const AnthropicBetaUserProfiles2026_03_24 AnthropicBeta = "user-profiles-2026-03-24"`

    - `const AnthropicBetaUserProfiles2026_08_18 AnthropicBeta = "user-profiles-2026-08-18"`

    - `const AnthropicBetaUserProfiles2026_09_04 AnthropicBeta = "user-profiles-2026-09-04"`

    - `const AnthropicBetaAdvisorTool2026_03_01 AnthropicBeta = "advisor-tool-2026-03-01"`

    - `const AnthropicBetaManagedAgents2026_04_01 AnthropicBeta = "managed-agents-2026-04-01"`

    - `const AnthropicBetaCacheDiagnosis2026_04_07 AnthropicBeta = "cache-diagnosis-2026-04-07"`

    - `const AnthropicBetaDreaming2026_04_21 AnthropicBeta = "dreaming-2026-04-21"`

    - `const AnthropicBetaThinkingTokenCount2026_05_13 AnthropicBeta = "thinking-token-count-2026-05-13"`

    - `const AnthropicBetaServerSideFallback2026_06_01 AnthropicBeta = "server-side-fallback-2026-06-01"`

    - `const AnthropicBetaServerSideFallback2026_07_01 AnthropicBeta = "server-side-fallback-2026-07-01"`

    - `const AnthropicBetaFallbackCredit2026_06_01 AnthropicBeta = "fallback-credit-2026-06-01"`

    - `const AnthropicBetaFallbackCredit2026_07_01 AnthropicBeta = "fallback-credit-2026-07-01"`

    - `const AnthropicBetaAgentMemory2026_07_22 AnthropicBeta = "agent-memory-2026-07-22"`

    - `const AnthropicBetaMidConversationToolChanges2026_07_01 AnthropicBeta = "mid-conversation-tool-changes-2026-07-01"`

    - `const AnthropicBetaCompact2026_01_12 AnthropicBeta = "compact-2026-01-12"`

    - `const AnthropicBetaComputerUse2025_11_24 AnthropicBeta = "computer-use-2025-11-24"`

    - `const AnthropicBetaMCPTunnels2026_06_22 AnthropicBeta = "mcp-tunnels-2026-06-22"`

    - `const AnthropicBetaStructuredOutputs2025_11_13 AnthropicBeta = "structured-outputs-2025-11-13"`

    - `const AnthropicBetaTaskBudgets2026_03_13 AnthropicBeta = "task-budgets-2026-03-13"`

    - `const AnthropicBetaThinkingDisplayUpdates2026_08_18 AnthropicBeta = "thinking-display-updates-2026-08-18"`

    - `const AnthropicBetaCEUserManagement2026_07_13 AnthropicBeta = "ce-user-management-2026-07-13"`

    - `const AnthropicBetaMidConversationOutputConfig2026_07_01 AnthropicBeta = "mid-conversation-output-config-2026-07-01"`

    - `const AnthropicBetaThinkingBindingControls2026_08_01 AnthropicBeta = "thinking-binding-controls-2026-08-01"`

    - `const AnthropicBetaMidConversationSystemClearAt2026_08_21 AnthropicBeta = "mid-conversation-system-clear-at-2026-08-21"`

    - `const AnthropicBetaCompact2026_09_04 AnthropicBeta = "compact-2026-09-04"`

    - `const AnthropicBetaInlineTools2026_09_15 AnthropicBeta = "inline-tools-2026-09-15"`

    - `const AnthropicBetaMCPClient2026_09_15 AnthropicBeta = "mcp-client-2026-09-15"`

    - `const AnthropicBetaCEPlugins2026_09_01 AnthropicBeta = "ce-plugins-2026-09-01"`

    - `const AnthropicBetaSpendLimitReads2026_09_26 AnthropicBeta = "spend-limit-reads-2026-09-26"`

    - `const AnthropicBetaTelemetryDestinations2026_08_11 AnthropicBeta = "telemetry-destinations-2026-08-11"`

  - `WorkspaceID param.Opt[string] Optional` (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

- `type BetaManagedAgentsAgent`

  A Managed Agents `agent`.

  - `Type BetaManagedAgentsAgentType`

  - `ID string`

  - `ArchivedAt Time`

    When the agent was archived. Null if not archived.

    format: date-time

  - `CreatedAt Time`

    A timestamp in RFC 3339 format

    format: date-time

  - `Description string`

  - `ExecutionIdentity BetaManagedAgentsExecutionIdentityUnion`

    Execution principal for runs of this agent. Always present; `{"type": "service_account"}` when runs carry no customer-named principal.

    - `type BetaManagedAgentsAWSRoleExecutionIdentity`

      An AWS IAM role principal as returned in API responses.

      - `Type AWSRole`

      - `RoleARN string`

        The IAM role's ARN.

    - `type BetaManagedAgentsServiceAccountExecutionIdentity`

      The Anthropic-managed service account as returned in API responses.

      - `Type ServiceAccount`

  - `MCPServers []BetaManagedAgentsMCPServerURLDefinition`

    - `Type BetaManagedAgentsMCPServerURLDefinitionType`

    - `Name string`

    - `URL string`

  - `Metadata map[string, string]`

  - `Model BetaManagedAgentsModelConfig`

    Model identifier and configuration.

    - `ID BetaManagedAgentsModel`

      The model that will power your agent.

      See [models](https://docs.anthropic.com/en/docs/models-overview) for additional details and options.

      - `const BetaManagedAgentsModelClaudeHaiku5_5 BetaManagedAgentsModel = "claude-haiku-5-5"`

        Fastest model for high-volume, real-time tasks

      - `const BetaManagedAgentsModelClaudeSonnet5_5 BetaManagedAgentsModel = "claude-sonnet-5-5"`

        Efficient model for coding and agents

      - `const BetaManagedAgentsModelClaudeOpus5_5 BetaManagedAgentsModel = "claude-opus-5-5"`

        Powerful intelligence for coding, knowledge work, and long-running agents

      - `const BetaManagedAgentsModelClaudeFable5_1 BetaManagedAgentsModel = "claude-fable-5-1"`

        Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows

      - `const BetaManagedAgentsModelClaudeSonnet5 BetaManagedAgentsModel = "claude-sonnet-5"`

        Efficient model for coding and agents

      - `const BetaManagedAgentsModelClaudeFable5 BetaManagedAgentsModel = "claude-fable-5"`

        Next generation of intelligence for the hardest knowledge work and coding problems

      - `const BetaManagedAgentsModelClaudeOpus5 BetaManagedAgentsModel = "claude-opus-5"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeOpus4_8 BetaManagedAgentsModel = "claude-opus-4-8"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeOpus4_7 BetaManagedAgentsModel = "claude-opus-4-7"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeOpus4_6 BetaManagedAgentsModel = "claude-opus-4-6"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeSonnet4_6 BetaManagedAgentsModel = "claude-sonnet-4-6"`

        Best combination of speed and intelligence

      - `const BetaManagedAgentsModelClaudeHaiku4_5 BetaManagedAgentsModel = "claude-haiku-4-5"`

      - `const BetaManagedAgentsModelClaudeHaiku4_5_20251001 BetaManagedAgentsModel = "claude-haiku-4-5-20251001"`

      - `const BetaManagedAgentsModelClaudeOpus4_5 BetaManagedAgentsModel = "claude-opus-4-5"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeOpus4_5_20251101 BetaManagedAgentsModel = "claude-opus-4-5-20251101"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeSonnet4_5 BetaManagedAgentsModel = "claude-sonnet-4-5"`

        **Deprecated**: Will reach end-of-life on November 30, 2026. Please migrate to claude-sonnet-5-5. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.

        High-performance model for agents and coding

      - `const BetaManagedAgentsModelClaudeSonnet4_5_20250929 BetaManagedAgentsModel = "claude-sonnet-4-5-20250929"`

        **Deprecated**: Will reach end-of-life on November 30, 2026. Please migrate to claude-sonnet-5-5. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.

        High-performance model for agents and coding

    - `Effort BetaManagedAgentsModelConfigEffortUnion Optional`

      How hard Claude works on each inference call. One of `low`, `medium`, `high`, `xhigh`, `max`. Always present; resolved to the per-model default at save time when not supplied.

      - `type BetaManagedAgentsEffortLow`

        Low effort. Favors latency over reasoning depth.

        - `Type BetaManagedAgentsEffortLowType`

      - `type BetaManagedAgentsEffortMedium`

        Medium effort. Balances latency and reasoning depth.

        - `Type BetaManagedAgentsEffortMediumType`

      - `type BetaManagedAgentsEffortHigh`

        High effort. Favors reasoning depth.

        - `Type BetaManagedAgentsEffortHighType`

      - `type BetaManagedAgentsEffortXhigh`

        Extra-high effort. Not all models accept this level.

        - `Type BetaManagedAgentsEffortXhighType`

      - `type BetaManagedAgentsEffortMax`

        Maximum effort. Favors reasoning depth over latency.

        - `Type BetaManagedAgentsEffortMaxType`

    - `InferenceGeo string Optional`

      Geographic region for model inference. When unset, requests fall through to the workspace's default_inference_geo.

    - `Speed BetaManagedAgentsModelConfigSpeed Optional`

      Inference speed mode. `fast` provides significantly faster output token generation at premium pricing. Defaults to `standard`. Not all models support `fast`; invalid combinations are rejected at create time.

      - `const BetaManagedAgentsModelConfigSpeedStandard BetaManagedAgentsModelConfigSpeed = "standard"`

      - `const BetaManagedAgentsModelConfigSpeedFast BetaManagedAgentsModelConfigSpeed = "fast"`

  - `Multiagent BetaManagedAgentsMultiagentUnion`

    Multiagent orchestration configuration. Null when the agent is single-threaded.

    - `type BetaManagedAgentsMultiagentCoordinator`

      Resolved coordinator topology with a concrete agent roster.

      - `Type BetaManagedAgentsMultiagentCoordinatorType`

      - `Agents []BetaManagedAgentsMultiagentCoordinatorAgentUnion`

        Agents the coordinator may spawn as session threads, each resolved to a specific version.

        - `type BetaManagedAgentsAgentReference`

          A resolved agent reference with a concrete version.

          - `Type BetaManagedAgentsAgentReferenceType`

          - `ID string`

          - `Version int64`

            format: int32

        - `type BetaManagedAgentsAdvisor`

          Platform advisor roster entry: a model the session's primary thread may consult mid-turn.

          - `Type BetaManagedAgentsAdvisorType`

          - `Model string`

            The advisor model id.

    - `type BetaManagedAgentsMultiagent20261001`

      Resolved multiagent configuration with three members, each enabled or disabled on its own.

      - `Type Multiagent20261001`

      - `Advisor BetaManagedAgentsMultiagentAdvisorUnion`

        Whether the session's primary thread can consult an advisor model.

        - `type BetaManagedAgentsMultiagentAdvisorEnabled`

          The session's primary thread can consult `model` mid-turn.

          - `Type Enabled`

          - `Model string`

            The advisor model id.

        - `type BetaManagedAgentsMultiagentAdvisorDisabled`

          The agent has no advisor.

          - `Type Disabled`

      - `Subagents BetaManagedAgentsMultiagentSubagentsUnion`

        Whether the agent can spawn session threads.

        - `type BetaManagedAgentsMultiagentSubagentsEnabled`

          The agent can spawn session threads.

          - `Type Enabled`

          - `InlineAgents BetaManagedAgentsMultiagentInlineAgentsUnion`

            Whether the agent can define inline agents, which are not saved, when it spawns session threads.

            - `type BetaManagedAgentsMultiagentInlineAgentsEnabled`

              The agent can define inline agents.

              - `Type Enabled`

            - `type BetaManagedAgentsMultiagentInlineAgentsDisabled`

              The agent cannot define inline agents.

              - `Type Disabled`

          - `PredefinedAgents []BetaManagedAgentsAgentReference`

            Predefined agents, which are saved agents that this agent can spawn as session threads, each resolved to a specific version.

            - `Type BetaManagedAgentsAgentReferenceType`

            - `ID string`

            - `Version int64`

              format: int32

        - `type BetaManagedAgentsMultiagentSubagentsDisabled`

          The agent cannot spawn session threads.

          - `Type Disabled`

      - `Workflows BetaManagedAgentsMultiagentWorkflowsUnion`

        Whether the agent can start workflow runs.

        - `type BetaManagedAgentsMultiagentWorkflowsEnabled`

          The agent can start workflow runs.

          - `Type Enabled`

          - `InlineAgents BetaManagedAgentsMultiagentInlineAgentsUnion`

            Whether a run's plan can define inline agents, which are not saved.

          - `PredefinedAgents []BetaManagedAgentsAgentReference`

            Predefined agents, which are saved agents that a run's plan can use, each resolved to a specific version.

            - `Type BetaManagedAgentsAgentReferenceType`

            - `ID string`

            - `Version int64`

              format: int32

        - `type BetaManagedAgentsMultiagentWorkflowsDisabled`

          The agent cannot start workflow runs.

          - `Type Disabled`

  - `Name string`

  - `Skills []BetaManagedAgentsAgentSkillUnion`

    - `type BetaManagedAgentsAnthropicSkill`

      A resolved Anthropic-managed skill.

      - `Type BetaManagedAgentsAnthropicSkillType`

      - `SkillID string`

      - `Version string`

    - `type BetaManagedAgentsCustomSkill`

      A resolved user-created custom skill.

      - `Type BetaManagedAgentsCustomSkillType`

      - `SkillID string`

      - `Version string`

  - `System string`

  - `Tools []BetaManagedAgentsAgentToolUnion`

    - `type BetaManagedAgentsAgentToolset20260401`

      - `Type BetaManagedAgentsAgentToolset20260401Type`

      - `Configs []BetaManagedAgentsAgentToolConfigUnion`

        - `type BetaManagedAgentsBashToolConfig`

          Configuration for the bash tool.

          - `Type Bash`

          - `Enabled bool`

          - `Name Bash`

          - `PermissionPolicy BetaManagedAgentsBashToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

              - `Type BetaManagedAgentsAlwaysAllowPolicyType`

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

              - `Type BetaManagedAgentsAlwaysAskPolicyType`

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

              - `Type Auto`

        - `type BetaManagedAgentsEditToolConfig`

          Configuration for the edit tool.

          - `Type Edit`

          - `Enabled bool`

          - `Name Edit`

          - `PermissionPolicy BetaManagedAgentsEditToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsReadToolConfig`

          Configuration for the read tool.

          - `Type Read`

          - `Enabled bool`

          - `Name Read`

          - `PermissionPolicy BetaManagedAgentsReadToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsWriteToolConfig`

          Configuration for the write tool.

          - `Type Write`

          - `Enabled bool`

          - `Name Write`

          - `PermissionPolicy BetaManagedAgentsWriteToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsGlobToolConfig`

          Configuration for the glob tool.

          - `Type Glob`

          - `Enabled bool`

          - `Name Glob`

          - `PermissionPolicy BetaManagedAgentsGlobToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsGrepToolConfig`

          Configuration for the grep tool.

          - `Type Grep`

          - `Enabled bool`

          - `Name Grep`

          - `PermissionPolicy BetaManagedAgentsGrepToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsWebFetchToolConfig`

          Configuration for the web_fetch tool.

          - `Type WebFetch`

          - `Enabled bool`

          - `Name WebFetch`

          - `PermissionPolicy BetaManagedAgentsWebFetchToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

          - `URLSources BetaManagedAgentsWebFetchURLSources`

            Which sources contribute URLs the tool may fetch, always in the object form. Null when not set, which allows every source.

            - `ClientToolResults BetaManagedAgentsWebFetchURLSourceToolFilterUnion`

              Which custom tools' results contribute URLs that may be fetched. Null when not set, which allows every custom tool's results.

              - `type BetaManagedAgentsWebFetchURLSourceAll`

                Every URL from this source may be fetched. This is the default.

                - `Type All`

              - `type BetaManagedAgentsWebFetchURLSourceNone`

                This source contributes no URLs that may be fetched.

                - `Type None`

              - `type BetaManagedAgentsWebFetchURLSourceOnly`

                Only the named tools' results contribute URLs that may be fetched.

                - `Type Only`

                - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

                  The tools whose results contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "none" to allow no tool's results.

                  - `Type ToolReference`

                    Must be "tool_reference".

                  - `Name string`

                    Name of the tool. Compared exactly, so upper and lower case letters are different.

                    minLength: 1, maxLength: 128

              - `type BetaManagedAgentsWebFetchURLSourceExcept`

                Every tool's results contribute URLs that may be fetched, except the named tools' results.

                - `Type Except`

                - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

                  The tools whose results do not contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "all" to leave out no tool's results.

                  - `Type ToolReference`

                    Must be "tool_reference".

                  - `Name string`

                    Name of the tool. Compared exactly, so upper and lower case letters are different.

                    minLength: 1, maxLength: 128

            - `ServerToolResults BetaManagedAgentsWebFetchURLSourceToolFilterUnion`

              Which of the web_search and web_fetch tools' results contribute URLs that may be fetched. Null when not set, which allows both.

            - `UserInput BetaManagedAgentsWebFetchURLSourceUserInputUnion`

              Whether URLs in the text of user messages may be fetched. Null when not set, which allows them.

              - `type BetaManagedAgentsWebFetchURLSourceAll`

                Every URL from this source may be fetched. This is the default.

              - `type BetaManagedAgentsWebFetchURLSourceNone`

                This source contributes no URLs that may be fetched.

          - `AllowedDomains []string Optional`

          - `BlockedDomains []string Optional`

          - `MaxContentTokens int64 Optional`

            format: int32

        - `type BetaManagedAgentsWebSearchToolConfig`

          Configuration for the web_search tool.

          - `Type WebSearch`

          - `Enabled bool`

          - `Name WebSearch`

          - `PermissionPolicy BetaManagedAgentsWebSearchToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

          - `AllowedDomains []string Optional`

          - `BlockedDomains []string Optional`

          - `UserLocation BetaManagedAgentsUserLocation Optional`

            Approximate user location for search result localization.

            - `Type Approximate`

              Location precision. Only "approximate" is supported.

            - `City string Optional`

              City name.

              minLength: 1, maxLength: 255

            - `Country string Optional`

              Two-letter ISO 3166-1 country code, uppercase.

            - `Region string Optional`

              Region or state name.

              minLength: 1, maxLength: 255

            - `Timezone string Optional`

              IANA timezone identifier, e.g. "America/Los_Angeles".

              minLength: 1, maxLength: 255

      - `DefaultConfig BetaManagedAgentsAgentToolsetDefaultConfig`

        Resolved default configuration for agent tools.

        - `Enabled bool`

        - `PermissionPolicy BetaManagedAgentsAgentToolsetDefaultConfigPermissionPolicyUnion`

          Permission policy for tool execution.

          - `type BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `type BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `type BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

    - `type BetaManagedAgentsMCPToolset`

      - `Type BetaManagedAgentsMCPToolsetType`

      - `Configs []BetaManagedAgentsMCPToolConfig`

        - `Enabled bool`

        - `Name string`

        - `PermissionPolicy BetaManagedAgentsMCPToolConfigPermissionPolicyUnion`

          Permission policy for tool execution.

          - `type BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `type BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `type BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `DefaultConfig BetaManagedAgentsMCPToolsetDefaultConfig`

        Resolved default configuration for all tools from an MCP server.

        - `Enabled bool`

        - `PermissionPolicy BetaManagedAgentsMCPToolsetDefaultConfigPermissionPolicyUnion`

          Permission policy for tool execution.

          - `type BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `type BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `type BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `MCPServerName string`

    - `type BetaManagedAgentsCustomTool`

      A custom tool as returned in API responses.

      - `Type BetaManagedAgentsCustomToolType`

      - `Description string`

      - `InputSchema BetaManagedAgentsCustomToolInputSchema`

        JSON Schema for custom tool input parameters.

        - `Type Object`

        - `Properties map[string, any] Optional`

        - `Required []string Optional`

      - `Name string`

  - `UpdatedAt Time`

    A timestamp in RFC 3339 format

    format: date-time

  - `Version int64`

    The agent's current version. Starts at 1 and increments when the agent is modified.

    format: int32

### Example

```go
package main

import (
	"context"
	"fmt"

	"github.com/anthropics/anthropic-sdk-go"
	"github.com/anthropics/anthropic-sdk-go/option"
)

func main() {
	client := anthropic.NewClient(
		option.WithAPIKey("my-anthropic-api-key"),
	)
	betaManagedAgentsAgent, err := client.Beta.Agents.New(context.TODO(), anthropic.BetaAgentNewParams{
		Model: anthropic.BetaManagedAgentsModelConfigParams{
			ID: anthropic.BetaManagedAgentsModelClaudeOpus5_5,
		},
		Name: "My First Agent",
	})
	if err != nil {
		panic(err.Error())
	}
	fmt.Printf("%+v\n", betaManagedAgentsAgent.ID)
}
```

#### Response (200)

```json
{
  "id": "agent_011CZkYpogX7uDKUyvBTophP",
  "archived_at": null,
  "created_at": "2026-03-15T10:00:00Z",
  "description": "A general-purpose starter agent.",
  "execution_identity": {
    "type": "service_account"
  },
  "mcp_servers": [
    {
      "name": "example-mcp",
      "type": "url",
      "url": "https://example-server.modelcontextprotocol.io/sse"
    }
  ],
  "metadata": {
    "foo": "bar"
  },
  "model": {
    "id": "claude-opus-5-5",
    "effort": {
      "type": "low"
    },
    "inference_geo": "inference_geo",
    "speed": "standard"
  },
  "multiagent": {
    "advisor": {
      "type": "disabled"
    },
    "subagents": {
      "inline_agents": {
        "type": "enabled"
      },
      "predefined_agents": [
        {
          "id": "agent_011CZkYqphY8vELVzwCUpqiQ",
          "type": "agent",
          "version": 1
        }
      ],
      "type": "enabled"
    },
    "type": "multiagent_20261001",
    "workflows": {
      "inline_agents": {
        "type": "enabled"
      },
      "predefined_agents": [
        {
          "id": "agent_011CZkYqphY8vELVzwCUpqiQ",
          "type": "agent",
          "version": 1
        }
      ],
      "type": "enabled"
    }
  },
  "name": "My First Agent",
  "skills": [
    {
      "skill_id": "xlsx",
      "type": "anthropic",
      "version": "1"
    },
    {
      "skill_id": "skill_011CZkZFNu9hAbo3jZPRgTmx",
      "type": "custom",
      "version": "2"
    }
  ],
  "system": "You are a general-purpose agent that can research, write code, run commands, and use connected tools to complete the user's task end to end.",
  "tools": [
    {
      "configs": [
        {
          "enabled": true,
          "name": "bash",
          "permission_policy": {
            "type": "always_allow"
          },
          "type": "bash"
        }
      ],
      "default_config": {
        "enabled": true,
        "permission_policy": {
          "type": "always_ask"
        }
      },
      "type": "agent_toolset_20260401"
    }
  ],
  "type": "agent",
  "updated_at": "2026-03-15T10:00:00Z",
  "version": 1
}
```

## List Agents

`client.Beta.Agents.List(ctx, params) (*PageCursor[BetaManagedAgentsAgent], error)`

**GET** `/v1/agents`

List Agents

### Parameters

- `params BetaAgentListParams`

  - `CreatedAtGte param.Opt[Time] Optional` (query parameter)

    Return agents created at or after this time (inclusive).

    format: date-time

  - `CreatedAtLte param.Opt[Time] Optional` (query parameter)

    Return agents created at or before this time (inclusive).

    format: date-time

  - `IncludeArchived param.Opt[bool] Optional` (query parameter)

    Include archived agents in results. Defaults to false.

  - `Limit param.Opt[int64] Optional` (query parameter)

    Maximum results per page. Default 20, maximum 100.

    format: int32

  - `Page param.Opt[string] Optional` (query parameter)

    Opaque pagination cursor from a previous response.

  - `Betas []AnthropicBeta Optional` (header parameter)

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

    - `const AnthropicBetaMessageBatches2024_09_24 AnthropicBeta = "message-batches-2024-09-24"`

    - `const AnthropicBetaPromptCaching2024_07_31 AnthropicBeta = "prompt-caching-2024-07-31"`

    - `const AnthropicBetaComputerUse2024_10_22 AnthropicBeta = "computer-use-2024-10-22"`

    - `const AnthropicBetaComputerUse2025_01_24 AnthropicBeta = "computer-use-2025-01-24"`

    - `const AnthropicBetaPDFs2024_09_25 AnthropicBeta = "pdfs-2024-09-25"`

    - `const AnthropicBetaTokenCounting2024_11_01 AnthropicBeta = "token-counting-2024-11-01"`

    - `const AnthropicBetaTokenEfficientTools2025_02_19 AnthropicBeta = "token-efficient-tools-2025-02-19"`

    - `const AnthropicBetaOutput128k2025_02_19 AnthropicBeta = "output-128k-2025-02-19"`

    - `const AnthropicBetaFilesAPI2025_04_14 AnthropicBeta = "files-api-2025-04-14"`

    - `const AnthropicBetaMCPClient2025_04_04 AnthropicBeta = "mcp-client-2025-04-04"`

    - `const AnthropicBetaMCPClient2025_11_20 AnthropicBeta = "mcp-client-2025-11-20"`

    - `const AnthropicBetaDevFullThinking2025_05_14 AnthropicBeta = "dev-full-thinking-2025-05-14"`

    - `const AnthropicBetaInterleavedThinking2025_05_14 AnthropicBeta = "interleaved-thinking-2025-05-14"`

    - `const AnthropicBetaCodeExecution2025_05_22 AnthropicBeta = "code-execution-2025-05-22"`

    - `const AnthropicBetaExtendedCacheTTL2025_04_11 AnthropicBeta = "extended-cache-ttl-2025-04-11"`

    - `const AnthropicBetaContext1m2025_08_07 AnthropicBeta = "context-1m-2025-08-07"`

    - `const AnthropicBetaContextManagement2025_06_27 AnthropicBeta = "context-management-2025-06-27"`

    - `const AnthropicBetaModelContextWindowExceeded2025_08_26 AnthropicBeta = "model-context-window-exceeded-2025-08-26"`

    - `const AnthropicBetaSkills2025_10_02 AnthropicBeta = "skills-2025-10-02"`

    - `const AnthropicBetaFastMode2026_02_01 AnthropicBeta = "fast-mode-2026-02-01"`

    - `const AnthropicBetaOutput300k2026_03_24 AnthropicBeta = "output-300k-2026-03-24"`

    - `const AnthropicBetaUserProfiles2026_03_24 AnthropicBeta = "user-profiles-2026-03-24"`

    - `const AnthropicBetaUserProfiles2026_08_18 AnthropicBeta = "user-profiles-2026-08-18"`

    - `const AnthropicBetaUserProfiles2026_09_04 AnthropicBeta = "user-profiles-2026-09-04"`

    - `const AnthropicBetaAdvisorTool2026_03_01 AnthropicBeta = "advisor-tool-2026-03-01"`

    - `const AnthropicBetaManagedAgents2026_04_01 AnthropicBeta = "managed-agents-2026-04-01"`

    - `const AnthropicBetaCacheDiagnosis2026_04_07 AnthropicBeta = "cache-diagnosis-2026-04-07"`

    - `const AnthropicBetaDreaming2026_04_21 AnthropicBeta = "dreaming-2026-04-21"`

    - `const AnthropicBetaThinkingTokenCount2026_05_13 AnthropicBeta = "thinking-token-count-2026-05-13"`

    - `const AnthropicBetaServerSideFallback2026_06_01 AnthropicBeta = "server-side-fallback-2026-06-01"`

    - `const AnthropicBetaServerSideFallback2026_07_01 AnthropicBeta = "server-side-fallback-2026-07-01"`

    - `const AnthropicBetaFallbackCredit2026_06_01 AnthropicBeta = "fallback-credit-2026-06-01"`

    - `const AnthropicBetaFallbackCredit2026_07_01 AnthropicBeta = "fallback-credit-2026-07-01"`

    - `const AnthropicBetaAgentMemory2026_07_22 AnthropicBeta = "agent-memory-2026-07-22"`

    - `const AnthropicBetaMidConversationToolChanges2026_07_01 AnthropicBeta = "mid-conversation-tool-changes-2026-07-01"`

    - `const AnthropicBetaCompact2026_01_12 AnthropicBeta = "compact-2026-01-12"`

    - `const AnthropicBetaComputerUse2025_11_24 AnthropicBeta = "computer-use-2025-11-24"`

    - `const AnthropicBetaMCPTunnels2026_06_22 AnthropicBeta = "mcp-tunnels-2026-06-22"`

    - `const AnthropicBetaStructuredOutputs2025_11_13 AnthropicBeta = "structured-outputs-2025-11-13"`

    - `const AnthropicBetaTaskBudgets2026_03_13 AnthropicBeta = "task-budgets-2026-03-13"`

    - `const AnthropicBetaThinkingDisplayUpdates2026_08_18 AnthropicBeta = "thinking-display-updates-2026-08-18"`

    - `const AnthropicBetaCEUserManagement2026_07_13 AnthropicBeta = "ce-user-management-2026-07-13"`

    - `const AnthropicBetaMidConversationOutputConfig2026_07_01 AnthropicBeta = "mid-conversation-output-config-2026-07-01"`

    - `const AnthropicBetaThinkingBindingControls2026_08_01 AnthropicBeta = "thinking-binding-controls-2026-08-01"`

    - `const AnthropicBetaMidConversationSystemClearAt2026_08_21 AnthropicBeta = "mid-conversation-system-clear-at-2026-08-21"`

    - `const AnthropicBetaCompact2026_09_04 AnthropicBeta = "compact-2026-09-04"`

    - `const AnthropicBetaInlineTools2026_09_15 AnthropicBeta = "inline-tools-2026-09-15"`

    - `const AnthropicBetaMCPClient2026_09_15 AnthropicBeta = "mcp-client-2026-09-15"`

    - `const AnthropicBetaCEPlugins2026_09_01 AnthropicBeta = "ce-plugins-2026-09-01"`

    - `const AnthropicBetaSpendLimitReads2026_09_26 AnthropicBeta = "spend-limit-reads-2026-09-26"`

    - `const AnthropicBetaTelemetryDestinations2026_08_11 AnthropicBeta = "telemetry-destinations-2026-08-11"`

  - `WorkspaceID param.Opt[string] Optional` (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

- `type BetaManagedAgentsAgent`

  A Managed Agents `agent`.

  - `Type BetaManagedAgentsAgentType`

  - `ID string`

  - `ArchivedAt Time`

    When the agent was archived. Null if not archived.

    format: date-time

  - `CreatedAt Time`

    A timestamp in RFC 3339 format

    format: date-time

  - `Description string`

  - `ExecutionIdentity BetaManagedAgentsExecutionIdentityUnion`

    Execution principal for runs of this agent. Always present; `{"type": "service_account"}` when runs carry no customer-named principal.

    - `type BetaManagedAgentsAWSRoleExecutionIdentity`

      An AWS IAM role principal as returned in API responses.

      - `Type AWSRole`

      - `RoleARN string`

        The IAM role's ARN.

    - `type BetaManagedAgentsServiceAccountExecutionIdentity`

      The Anthropic-managed service account as returned in API responses.

      - `Type ServiceAccount`

  - `MCPServers []BetaManagedAgentsMCPServerURLDefinition`

    - `Type BetaManagedAgentsMCPServerURLDefinitionType`

    - `Name string`

    - `URL string`

  - `Metadata map[string, string]`

  - `Model BetaManagedAgentsModelConfig`

    Model identifier and configuration.

    - `ID BetaManagedAgentsModel`

      The model that will power your agent.

      See [models](https://docs.anthropic.com/en/docs/models-overview) for additional details and options.

      - `const BetaManagedAgentsModelClaudeHaiku5_5 BetaManagedAgentsModel = "claude-haiku-5-5"`

        Fastest model for high-volume, real-time tasks

      - `const BetaManagedAgentsModelClaudeSonnet5_5 BetaManagedAgentsModel = "claude-sonnet-5-5"`

        Efficient model for coding and agents

      - `const BetaManagedAgentsModelClaudeOpus5_5 BetaManagedAgentsModel = "claude-opus-5-5"`

        Powerful intelligence for coding, knowledge work, and long-running agents

      - `const BetaManagedAgentsModelClaudeFable5_1 BetaManagedAgentsModel = "claude-fable-5-1"`

        Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows

      - `const BetaManagedAgentsModelClaudeSonnet5 BetaManagedAgentsModel = "claude-sonnet-5"`

        Efficient model for coding and agents

      - `const BetaManagedAgentsModelClaudeFable5 BetaManagedAgentsModel = "claude-fable-5"`

        Next generation of intelligence for the hardest knowledge work and coding problems

      - `const BetaManagedAgentsModelClaudeOpus5 BetaManagedAgentsModel = "claude-opus-5"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeOpus4_8 BetaManagedAgentsModel = "claude-opus-4-8"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeOpus4_7 BetaManagedAgentsModel = "claude-opus-4-7"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeOpus4_6 BetaManagedAgentsModel = "claude-opus-4-6"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeSonnet4_6 BetaManagedAgentsModel = "claude-sonnet-4-6"`

        Best combination of speed and intelligence

      - `const BetaManagedAgentsModelClaudeHaiku4_5 BetaManagedAgentsModel = "claude-haiku-4-5"`

      - `const BetaManagedAgentsModelClaudeHaiku4_5_20251001 BetaManagedAgentsModel = "claude-haiku-4-5-20251001"`

      - `const BetaManagedAgentsModelClaudeOpus4_5 BetaManagedAgentsModel = "claude-opus-4-5"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeOpus4_5_20251101 BetaManagedAgentsModel = "claude-opus-4-5-20251101"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeSonnet4_5 BetaManagedAgentsModel = "claude-sonnet-4-5"`

        **Deprecated**: Will reach end-of-life on November 30, 2026. Please migrate to claude-sonnet-5-5. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.

        High-performance model for agents and coding

      - `const BetaManagedAgentsModelClaudeSonnet4_5_20250929 BetaManagedAgentsModel = "claude-sonnet-4-5-20250929"`

        **Deprecated**: Will reach end-of-life on November 30, 2026. Please migrate to claude-sonnet-5-5. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.

        High-performance model for agents and coding

    - `Effort BetaManagedAgentsModelConfigEffortUnion Optional`

      How hard Claude works on each inference call. One of `low`, `medium`, `high`, `xhigh`, `max`. Always present; resolved to the per-model default at save time when not supplied.

      - `type BetaManagedAgentsEffortLow`

        Low effort. Favors latency over reasoning depth.

        - `Type BetaManagedAgentsEffortLowType`

      - `type BetaManagedAgentsEffortMedium`

        Medium effort. Balances latency and reasoning depth.

        - `Type BetaManagedAgentsEffortMediumType`

      - `type BetaManagedAgentsEffortHigh`

        High effort. Favors reasoning depth.

        - `Type BetaManagedAgentsEffortHighType`

      - `type BetaManagedAgentsEffortXhigh`

        Extra-high effort. Not all models accept this level.

        - `Type BetaManagedAgentsEffortXhighType`

      - `type BetaManagedAgentsEffortMax`

        Maximum effort. Favors reasoning depth over latency.

        - `Type BetaManagedAgentsEffortMaxType`

    - `InferenceGeo string Optional`

      Geographic region for model inference. When unset, requests fall through to the workspace's default_inference_geo.

    - `Speed BetaManagedAgentsModelConfigSpeed Optional`

      Inference speed mode. `fast` provides significantly faster output token generation at premium pricing. Defaults to `standard`. Not all models support `fast`; invalid combinations are rejected at create time.

      - `const BetaManagedAgentsModelConfigSpeedStandard BetaManagedAgentsModelConfigSpeed = "standard"`

      - `const BetaManagedAgentsModelConfigSpeedFast BetaManagedAgentsModelConfigSpeed = "fast"`

  - `Multiagent BetaManagedAgentsMultiagentUnion`

    Multiagent orchestration configuration. Null when the agent is single-threaded.

    - `type BetaManagedAgentsMultiagentCoordinator`

      Resolved coordinator topology with a concrete agent roster.

      - `Type BetaManagedAgentsMultiagentCoordinatorType`

      - `Agents []BetaManagedAgentsMultiagentCoordinatorAgentUnion`

        Agents the coordinator may spawn as session threads, each resolved to a specific version.

        - `type BetaManagedAgentsAgentReference`

          A resolved agent reference with a concrete version.

          - `Type BetaManagedAgentsAgentReferenceType`

          - `ID string`

          - `Version int64`

            format: int32

        - `type BetaManagedAgentsAdvisor`

          Platform advisor roster entry: a model the session's primary thread may consult mid-turn.

          - `Type BetaManagedAgentsAdvisorType`

          - `Model string`

            The advisor model id.

    - `type BetaManagedAgentsMultiagent20261001`

      Resolved multiagent configuration with three members, each enabled or disabled on its own.

      - `Type Multiagent20261001`

      - `Advisor BetaManagedAgentsMultiagentAdvisorUnion`

        Whether the session's primary thread can consult an advisor model.

        - `type BetaManagedAgentsMultiagentAdvisorEnabled`

          The session's primary thread can consult `model` mid-turn.

          - `Type Enabled`

          - `Model string`

            The advisor model id.

        - `type BetaManagedAgentsMultiagentAdvisorDisabled`

          The agent has no advisor.

          - `Type Disabled`

      - `Subagents BetaManagedAgentsMultiagentSubagentsUnion`

        Whether the agent can spawn session threads.

        - `type BetaManagedAgentsMultiagentSubagentsEnabled`

          The agent can spawn session threads.

          - `Type Enabled`

          - `InlineAgents BetaManagedAgentsMultiagentInlineAgentsUnion`

            Whether the agent can define inline agents, which are not saved, when it spawns session threads.

            - `type BetaManagedAgentsMultiagentInlineAgentsEnabled`

              The agent can define inline agents.

              - `Type Enabled`

            - `type BetaManagedAgentsMultiagentInlineAgentsDisabled`

              The agent cannot define inline agents.

              - `Type Disabled`

          - `PredefinedAgents []BetaManagedAgentsAgentReference`

            Predefined agents, which are saved agents that this agent can spawn as session threads, each resolved to a specific version.

            - `Type BetaManagedAgentsAgentReferenceType`

            - `ID string`

            - `Version int64`

              format: int32

        - `type BetaManagedAgentsMultiagentSubagentsDisabled`

          The agent cannot spawn session threads.

          - `Type Disabled`

      - `Workflows BetaManagedAgentsMultiagentWorkflowsUnion`

        Whether the agent can start workflow runs.

        - `type BetaManagedAgentsMultiagentWorkflowsEnabled`

          The agent can start workflow runs.

          - `Type Enabled`

          - `InlineAgents BetaManagedAgentsMultiagentInlineAgentsUnion`

            Whether a run's plan can define inline agents, which are not saved.

          - `PredefinedAgents []BetaManagedAgentsAgentReference`

            Predefined agents, which are saved agents that a run's plan can use, each resolved to a specific version.

            - `Type BetaManagedAgentsAgentReferenceType`

            - `ID string`

            - `Version int64`

              format: int32

        - `type BetaManagedAgentsMultiagentWorkflowsDisabled`

          The agent cannot start workflow runs.

          - `Type Disabled`

  - `Name string`

  - `Skills []BetaManagedAgentsAgentSkillUnion`

    - `type BetaManagedAgentsAnthropicSkill`

      A resolved Anthropic-managed skill.

      - `Type BetaManagedAgentsAnthropicSkillType`

      - `SkillID string`

      - `Version string`

    - `type BetaManagedAgentsCustomSkill`

      A resolved user-created custom skill.

      - `Type BetaManagedAgentsCustomSkillType`

      - `SkillID string`

      - `Version string`

  - `System string`

  - `Tools []BetaManagedAgentsAgentToolUnion`

    - `type BetaManagedAgentsAgentToolset20260401`

      - `Type BetaManagedAgentsAgentToolset20260401Type`

      - `Configs []BetaManagedAgentsAgentToolConfigUnion`

        - `type BetaManagedAgentsBashToolConfig`

          Configuration for the bash tool.

          - `Type Bash`

          - `Enabled bool`

          - `Name Bash`

          - `PermissionPolicy BetaManagedAgentsBashToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

              - `Type BetaManagedAgentsAlwaysAllowPolicyType`

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

              - `Type BetaManagedAgentsAlwaysAskPolicyType`

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

              - `Type Auto`

        - `type BetaManagedAgentsEditToolConfig`

          Configuration for the edit tool.

          - `Type Edit`

          - `Enabled bool`

          - `Name Edit`

          - `PermissionPolicy BetaManagedAgentsEditToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsReadToolConfig`

          Configuration for the read tool.

          - `Type Read`

          - `Enabled bool`

          - `Name Read`

          - `PermissionPolicy BetaManagedAgentsReadToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsWriteToolConfig`

          Configuration for the write tool.

          - `Type Write`

          - `Enabled bool`

          - `Name Write`

          - `PermissionPolicy BetaManagedAgentsWriteToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsGlobToolConfig`

          Configuration for the glob tool.

          - `Type Glob`

          - `Enabled bool`

          - `Name Glob`

          - `PermissionPolicy BetaManagedAgentsGlobToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsGrepToolConfig`

          Configuration for the grep tool.

          - `Type Grep`

          - `Enabled bool`

          - `Name Grep`

          - `PermissionPolicy BetaManagedAgentsGrepToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsWebFetchToolConfig`

          Configuration for the web_fetch tool.

          - `Type WebFetch`

          - `Enabled bool`

          - `Name WebFetch`

          - `PermissionPolicy BetaManagedAgentsWebFetchToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

          - `URLSources BetaManagedAgentsWebFetchURLSources`

            Which sources contribute URLs the tool may fetch, always in the object form. Null when not set, which allows every source.

            - `ClientToolResults BetaManagedAgentsWebFetchURLSourceToolFilterUnion`

              Which custom tools' results contribute URLs that may be fetched. Null when not set, which allows every custom tool's results.

              - `type BetaManagedAgentsWebFetchURLSourceAll`

                Every URL from this source may be fetched. This is the default.

                - `Type All`

              - `type BetaManagedAgentsWebFetchURLSourceNone`

                This source contributes no URLs that may be fetched.

                - `Type None`

              - `type BetaManagedAgentsWebFetchURLSourceOnly`

                Only the named tools' results contribute URLs that may be fetched.

                - `Type Only`

                - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

                  The tools whose results contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "none" to allow no tool's results.

                  - `Type ToolReference`

                    Must be "tool_reference".

                  - `Name string`

                    Name of the tool. Compared exactly, so upper and lower case letters are different.

                    minLength: 1, maxLength: 128

              - `type BetaManagedAgentsWebFetchURLSourceExcept`

                Every tool's results contribute URLs that may be fetched, except the named tools' results.

                - `Type Except`

                - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

                  The tools whose results do not contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "all" to leave out no tool's results.

                  - `Type ToolReference`

                    Must be "tool_reference".

                  - `Name string`

                    Name of the tool. Compared exactly, so upper and lower case letters are different.

                    minLength: 1, maxLength: 128

            - `ServerToolResults BetaManagedAgentsWebFetchURLSourceToolFilterUnion`

              Which of the web_search and web_fetch tools' results contribute URLs that may be fetched. Null when not set, which allows both.

            - `UserInput BetaManagedAgentsWebFetchURLSourceUserInputUnion`

              Whether URLs in the text of user messages may be fetched. Null when not set, which allows them.

              - `type BetaManagedAgentsWebFetchURLSourceAll`

                Every URL from this source may be fetched. This is the default.

              - `type BetaManagedAgentsWebFetchURLSourceNone`

                This source contributes no URLs that may be fetched.

          - `AllowedDomains []string Optional`

          - `BlockedDomains []string Optional`

          - `MaxContentTokens int64 Optional`

            format: int32

        - `type BetaManagedAgentsWebSearchToolConfig`

          Configuration for the web_search tool.

          - `Type WebSearch`

          - `Enabled bool`

          - `Name WebSearch`

          - `PermissionPolicy BetaManagedAgentsWebSearchToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

          - `AllowedDomains []string Optional`

          - `BlockedDomains []string Optional`

          - `UserLocation BetaManagedAgentsUserLocation Optional`

            Approximate user location for search result localization.

            - `Type Approximate`

              Location precision. Only "approximate" is supported.

            - `City string Optional`

              City name.

              minLength: 1, maxLength: 255

            - `Country string Optional`

              Two-letter ISO 3166-1 country code, uppercase.

            - `Region string Optional`

              Region or state name.

              minLength: 1, maxLength: 255

            - `Timezone string Optional`

              IANA timezone identifier, e.g. "America/Los_Angeles".

              minLength: 1, maxLength: 255

      - `DefaultConfig BetaManagedAgentsAgentToolsetDefaultConfig`

        Resolved default configuration for agent tools.

        - `Enabled bool`

        - `PermissionPolicy BetaManagedAgentsAgentToolsetDefaultConfigPermissionPolicyUnion`

          Permission policy for tool execution.

          - `type BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `type BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `type BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

    - `type BetaManagedAgentsMCPToolset`

      - `Type BetaManagedAgentsMCPToolsetType`

      - `Configs []BetaManagedAgentsMCPToolConfig`

        - `Enabled bool`

        - `Name string`

        - `PermissionPolicy BetaManagedAgentsMCPToolConfigPermissionPolicyUnion`

          Permission policy for tool execution.

          - `type BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `type BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `type BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `DefaultConfig BetaManagedAgentsMCPToolsetDefaultConfig`

        Resolved default configuration for all tools from an MCP server.

        - `Enabled bool`

        - `PermissionPolicy BetaManagedAgentsMCPToolsetDefaultConfigPermissionPolicyUnion`

          Permission policy for tool execution.

          - `type BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `type BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `type BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `MCPServerName string`

    - `type BetaManagedAgentsCustomTool`

      A custom tool as returned in API responses.

      - `Type BetaManagedAgentsCustomToolType`

      - `Description string`

      - `InputSchema BetaManagedAgentsCustomToolInputSchema`

        JSON Schema for custom tool input parameters.

        - `Type Object`

        - `Properties map[string, any] Optional`

        - `Required []string Optional`

      - `Name string`

  - `UpdatedAt Time`

    A timestamp in RFC 3339 format

    format: date-time

  - `Version int64`

    The agent's current version. Starts at 1 and increments when the agent is modified.

    format: int32

### Example

```go
package main

import (
	"context"
	"fmt"

	"github.com/anthropics/anthropic-sdk-go"
	"github.com/anthropics/anthropic-sdk-go/option"
)

func main() {
	client := anthropic.NewClient(
		option.WithAPIKey("my-anthropic-api-key"),
	)
	page, err := client.Beta.Agents.List(context.TODO(), anthropic.BetaAgentListParams{})
	if err != nil {
		panic(err.Error())
	}
	fmt.Printf("%+v\n", page)
}
```

#### Response (200)

```json
{
  "data": [
    {
      "id": "agent_011CZkYpogX7uDKUyvBTophP",
      "archived_at": null,
      "created_at": "2026-03-15T10:00:00Z",
      "description": "A general-purpose starter agent.",
      "execution_identity": {
        "type": "service_account"
      },
      "mcp_servers": [
        {
          "name": "example-mcp",
          "type": "url",
          "url": "https://example-server.modelcontextprotocol.io/sse"
        }
      ],
      "metadata": {
        "foo": "bar"
      },
      "model": {
        "id": "claude-opus-5-5",
        "effort": {
          "type": "low"
        },
        "inference_geo": "inference_geo",
        "speed": "standard"
      },
      "multiagent": {
        "advisor": {
          "type": "disabled"
        },
        "subagents": {
          "inline_agents": {
            "type": "enabled"
          },
          "predefined_agents": [
            {
              "id": "agent_011CZkYqphY8vELVzwCUpqiQ",
              "type": "agent",
              "version": 1
            }
          ],
          "type": "enabled"
        },
        "type": "multiagent_20261001",
        "workflows": {
          "inline_agents": {
            "type": "enabled"
          },
          "predefined_agents": [
            {
              "id": "agent_011CZkYqphY8vELVzwCUpqiQ",
              "type": "agent",
              "version": 1
            }
          ],
          "type": "enabled"
        }
      },
      "name": "My First Agent",
      "skills": [
        {
          "skill_id": "xlsx",
          "type": "anthropic",
          "version": "1"
        },
        {
          "skill_id": "skill_011CZkZFNu9hAbo3jZPRgTmx",
          "type": "custom",
          "version": "2"
        }
      ],
      "system": "You are a general-purpose agent that can research, write code, run commands, and use connected tools to complete the user's task end to end.",
      "tools": [
        {
          "configs": [
            {
              "enabled": true,
              "name": "bash",
              "permission_policy": {
                "type": "always_allow"
              },
              "type": "bash"
            }
          ],
          "default_config": {
            "enabled": true,
            "permission_policy": {
              "type": "always_ask"
            }
          },
          "type": "agent_toolset_20260401"
        }
      ],
      "type": "agent",
      "updated_at": "2026-03-15T10:00:00Z",
      "version": 1
    }
  ],
  "next_page": "next_page"
}
```

## Get Agent

`client.Beta.Agents.Get(ctx, agentID, params) (*BetaManagedAgentsAgent, error)`

**GET** `/v1/agents/{agent_id}`

Get Agent

### Parameters

- `agentID string` (path parameter)

  Unique identifier of the agent to retrieve.

- `params BetaAgentGetParams`

  - `Version param.Opt[int64] Optional` (query parameter)

    Agent version. Omit for the most recent version. Must be at least 1 if specified.

    format: int32

  - `Betas []AnthropicBeta Optional` (header parameter)

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

    - `const AnthropicBetaMessageBatches2024_09_24 AnthropicBeta = "message-batches-2024-09-24"`

    - `const AnthropicBetaPromptCaching2024_07_31 AnthropicBeta = "prompt-caching-2024-07-31"`

    - `const AnthropicBetaComputerUse2024_10_22 AnthropicBeta = "computer-use-2024-10-22"`

    - `const AnthropicBetaComputerUse2025_01_24 AnthropicBeta = "computer-use-2025-01-24"`

    - `const AnthropicBetaPDFs2024_09_25 AnthropicBeta = "pdfs-2024-09-25"`

    - `const AnthropicBetaTokenCounting2024_11_01 AnthropicBeta = "token-counting-2024-11-01"`

    - `const AnthropicBetaTokenEfficientTools2025_02_19 AnthropicBeta = "token-efficient-tools-2025-02-19"`

    - `const AnthropicBetaOutput128k2025_02_19 AnthropicBeta = "output-128k-2025-02-19"`

    - `const AnthropicBetaFilesAPI2025_04_14 AnthropicBeta = "files-api-2025-04-14"`

    - `const AnthropicBetaMCPClient2025_04_04 AnthropicBeta = "mcp-client-2025-04-04"`

    - `const AnthropicBetaMCPClient2025_11_20 AnthropicBeta = "mcp-client-2025-11-20"`

    - `const AnthropicBetaDevFullThinking2025_05_14 AnthropicBeta = "dev-full-thinking-2025-05-14"`

    - `const AnthropicBetaInterleavedThinking2025_05_14 AnthropicBeta = "interleaved-thinking-2025-05-14"`

    - `const AnthropicBetaCodeExecution2025_05_22 AnthropicBeta = "code-execution-2025-05-22"`

    - `const AnthropicBetaExtendedCacheTTL2025_04_11 AnthropicBeta = "extended-cache-ttl-2025-04-11"`

    - `const AnthropicBetaContext1m2025_08_07 AnthropicBeta = "context-1m-2025-08-07"`

    - `const AnthropicBetaContextManagement2025_06_27 AnthropicBeta = "context-management-2025-06-27"`

    - `const AnthropicBetaModelContextWindowExceeded2025_08_26 AnthropicBeta = "model-context-window-exceeded-2025-08-26"`

    - `const AnthropicBetaSkills2025_10_02 AnthropicBeta = "skills-2025-10-02"`

    - `const AnthropicBetaFastMode2026_02_01 AnthropicBeta = "fast-mode-2026-02-01"`

    - `const AnthropicBetaOutput300k2026_03_24 AnthropicBeta = "output-300k-2026-03-24"`

    - `const AnthropicBetaUserProfiles2026_03_24 AnthropicBeta = "user-profiles-2026-03-24"`

    - `const AnthropicBetaUserProfiles2026_08_18 AnthropicBeta = "user-profiles-2026-08-18"`

    - `const AnthropicBetaUserProfiles2026_09_04 AnthropicBeta = "user-profiles-2026-09-04"`

    - `const AnthropicBetaAdvisorTool2026_03_01 AnthropicBeta = "advisor-tool-2026-03-01"`

    - `const AnthropicBetaManagedAgents2026_04_01 AnthropicBeta = "managed-agents-2026-04-01"`

    - `const AnthropicBetaCacheDiagnosis2026_04_07 AnthropicBeta = "cache-diagnosis-2026-04-07"`

    - `const AnthropicBetaDreaming2026_04_21 AnthropicBeta = "dreaming-2026-04-21"`

    - `const AnthropicBetaThinkingTokenCount2026_05_13 AnthropicBeta = "thinking-token-count-2026-05-13"`

    - `const AnthropicBetaServerSideFallback2026_06_01 AnthropicBeta = "server-side-fallback-2026-06-01"`

    - `const AnthropicBetaServerSideFallback2026_07_01 AnthropicBeta = "server-side-fallback-2026-07-01"`

    - `const AnthropicBetaFallbackCredit2026_06_01 AnthropicBeta = "fallback-credit-2026-06-01"`

    - `const AnthropicBetaFallbackCredit2026_07_01 AnthropicBeta = "fallback-credit-2026-07-01"`

    - `const AnthropicBetaAgentMemory2026_07_22 AnthropicBeta = "agent-memory-2026-07-22"`

    - `const AnthropicBetaMidConversationToolChanges2026_07_01 AnthropicBeta = "mid-conversation-tool-changes-2026-07-01"`

    - `const AnthropicBetaCompact2026_01_12 AnthropicBeta = "compact-2026-01-12"`

    - `const AnthropicBetaComputerUse2025_11_24 AnthropicBeta = "computer-use-2025-11-24"`

    - `const AnthropicBetaMCPTunnels2026_06_22 AnthropicBeta = "mcp-tunnels-2026-06-22"`

    - `const AnthropicBetaStructuredOutputs2025_11_13 AnthropicBeta = "structured-outputs-2025-11-13"`

    - `const AnthropicBetaTaskBudgets2026_03_13 AnthropicBeta = "task-budgets-2026-03-13"`

    - `const AnthropicBetaThinkingDisplayUpdates2026_08_18 AnthropicBeta = "thinking-display-updates-2026-08-18"`

    - `const AnthropicBetaCEUserManagement2026_07_13 AnthropicBeta = "ce-user-management-2026-07-13"`

    - `const AnthropicBetaMidConversationOutputConfig2026_07_01 AnthropicBeta = "mid-conversation-output-config-2026-07-01"`

    - `const AnthropicBetaThinkingBindingControls2026_08_01 AnthropicBeta = "thinking-binding-controls-2026-08-01"`

    - `const AnthropicBetaMidConversationSystemClearAt2026_08_21 AnthropicBeta = "mid-conversation-system-clear-at-2026-08-21"`

    - `const AnthropicBetaCompact2026_09_04 AnthropicBeta = "compact-2026-09-04"`

    - `const AnthropicBetaInlineTools2026_09_15 AnthropicBeta = "inline-tools-2026-09-15"`

    - `const AnthropicBetaMCPClient2026_09_15 AnthropicBeta = "mcp-client-2026-09-15"`

    - `const AnthropicBetaCEPlugins2026_09_01 AnthropicBeta = "ce-plugins-2026-09-01"`

    - `const AnthropicBetaSpendLimitReads2026_09_26 AnthropicBeta = "spend-limit-reads-2026-09-26"`

    - `const AnthropicBetaTelemetryDestinations2026_08_11 AnthropicBeta = "telemetry-destinations-2026-08-11"`

  - `WorkspaceID param.Opt[string] Optional` (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

- `type BetaManagedAgentsAgent`

  A Managed Agents `agent`.

  - `Type BetaManagedAgentsAgentType`

  - `ID string`

  - `ArchivedAt Time`

    When the agent was archived. Null if not archived.

    format: date-time

  - `CreatedAt Time`

    A timestamp in RFC 3339 format

    format: date-time

  - `Description string`

  - `ExecutionIdentity BetaManagedAgentsExecutionIdentityUnion`

    Execution principal for runs of this agent. Always present; `{"type": "service_account"}` when runs carry no customer-named principal.

    - `type BetaManagedAgentsAWSRoleExecutionIdentity`

      An AWS IAM role principal as returned in API responses.

      - `Type AWSRole`

      - `RoleARN string`

        The IAM role's ARN.

    - `type BetaManagedAgentsServiceAccountExecutionIdentity`

      The Anthropic-managed service account as returned in API responses.

      - `Type ServiceAccount`

  - `MCPServers []BetaManagedAgentsMCPServerURLDefinition`

    - `Type BetaManagedAgentsMCPServerURLDefinitionType`

    - `Name string`

    - `URL string`

  - `Metadata map[string, string]`

  - `Model BetaManagedAgentsModelConfig`

    Model identifier and configuration.

    - `ID BetaManagedAgentsModel`

      The model that will power your agent.

      See [models](https://docs.anthropic.com/en/docs/models-overview) for additional details and options.

      - `const BetaManagedAgentsModelClaudeHaiku5_5 BetaManagedAgentsModel = "claude-haiku-5-5"`

        Fastest model for high-volume, real-time tasks

      - `const BetaManagedAgentsModelClaudeSonnet5_5 BetaManagedAgentsModel = "claude-sonnet-5-5"`

        Efficient model for coding and agents

      - `const BetaManagedAgentsModelClaudeOpus5_5 BetaManagedAgentsModel = "claude-opus-5-5"`

        Powerful intelligence for coding, knowledge work, and long-running agents

      - `const BetaManagedAgentsModelClaudeFable5_1 BetaManagedAgentsModel = "claude-fable-5-1"`

        Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows

      - `const BetaManagedAgentsModelClaudeSonnet5 BetaManagedAgentsModel = "claude-sonnet-5"`

        Efficient model for coding and agents

      - `const BetaManagedAgentsModelClaudeFable5 BetaManagedAgentsModel = "claude-fable-5"`

        Next generation of intelligence for the hardest knowledge work and coding problems

      - `const BetaManagedAgentsModelClaudeOpus5 BetaManagedAgentsModel = "claude-opus-5"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeOpus4_8 BetaManagedAgentsModel = "claude-opus-4-8"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeOpus4_7 BetaManagedAgentsModel = "claude-opus-4-7"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeOpus4_6 BetaManagedAgentsModel = "claude-opus-4-6"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeSonnet4_6 BetaManagedAgentsModel = "claude-sonnet-4-6"`

        Best combination of speed and intelligence

      - `const BetaManagedAgentsModelClaudeHaiku4_5 BetaManagedAgentsModel = "claude-haiku-4-5"`

      - `const BetaManagedAgentsModelClaudeHaiku4_5_20251001 BetaManagedAgentsModel = "claude-haiku-4-5-20251001"`

      - `const BetaManagedAgentsModelClaudeOpus4_5 BetaManagedAgentsModel = "claude-opus-4-5"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeOpus4_5_20251101 BetaManagedAgentsModel = "claude-opus-4-5-20251101"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeSonnet4_5 BetaManagedAgentsModel = "claude-sonnet-4-5"`

        **Deprecated**: Will reach end-of-life on November 30, 2026. Please migrate to claude-sonnet-5-5. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.

        High-performance model for agents and coding

      - `const BetaManagedAgentsModelClaudeSonnet4_5_20250929 BetaManagedAgentsModel = "claude-sonnet-4-5-20250929"`

        **Deprecated**: Will reach end-of-life on November 30, 2026. Please migrate to claude-sonnet-5-5. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.

        High-performance model for agents and coding

    - `Effort BetaManagedAgentsModelConfigEffortUnion Optional`

      How hard Claude works on each inference call. One of `low`, `medium`, `high`, `xhigh`, `max`. Always present; resolved to the per-model default at save time when not supplied.

      - `type BetaManagedAgentsEffortLow`

        Low effort. Favors latency over reasoning depth.

        - `Type BetaManagedAgentsEffortLowType`

      - `type BetaManagedAgentsEffortMedium`

        Medium effort. Balances latency and reasoning depth.

        - `Type BetaManagedAgentsEffortMediumType`

      - `type BetaManagedAgentsEffortHigh`

        High effort. Favors reasoning depth.

        - `Type BetaManagedAgentsEffortHighType`

      - `type BetaManagedAgentsEffortXhigh`

        Extra-high effort. Not all models accept this level.

        - `Type BetaManagedAgentsEffortXhighType`

      - `type BetaManagedAgentsEffortMax`

        Maximum effort. Favors reasoning depth over latency.

        - `Type BetaManagedAgentsEffortMaxType`

    - `InferenceGeo string Optional`

      Geographic region for model inference. When unset, requests fall through to the workspace's default_inference_geo.

    - `Speed BetaManagedAgentsModelConfigSpeed Optional`

      Inference speed mode. `fast` provides significantly faster output token generation at premium pricing. Defaults to `standard`. Not all models support `fast`; invalid combinations are rejected at create time.

      - `const BetaManagedAgentsModelConfigSpeedStandard BetaManagedAgentsModelConfigSpeed = "standard"`

      - `const BetaManagedAgentsModelConfigSpeedFast BetaManagedAgentsModelConfigSpeed = "fast"`

  - `Multiagent BetaManagedAgentsMultiagentUnion`

    Multiagent orchestration configuration. Null when the agent is single-threaded.

    - `type BetaManagedAgentsMultiagentCoordinator`

      Resolved coordinator topology with a concrete agent roster.

      - `Type BetaManagedAgentsMultiagentCoordinatorType`

      - `Agents []BetaManagedAgentsMultiagentCoordinatorAgentUnion`

        Agents the coordinator may spawn as session threads, each resolved to a specific version.

        - `type BetaManagedAgentsAgentReference`

          A resolved agent reference with a concrete version.

          - `Type BetaManagedAgentsAgentReferenceType`

          - `ID string`

          - `Version int64`

            format: int32

        - `type BetaManagedAgentsAdvisor`

          Platform advisor roster entry: a model the session's primary thread may consult mid-turn.

          - `Type BetaManagedAgentsAdvisorType`

          - `Model string`

            The advisor model id.

    - `type BetaManagedAgentsMultiagent20261001`

      Resolved multiagent configuration with three members, each enabled or disabled on its own.

      - `Type Multiagent20261001`

      - `Advisor BetaManagedAgentsMultiagentAdvisorUnion`

        Whether the session's primary thread can consult an advisor model.

        - `type BetaManagedAgentsMultiagentAdvisorEnabled`

          The session's primary thread can consult `model` mid-turn.

          - `Type Enabled`

          - `Model string`

            The advisor model id.

        - `type BetaManagedAgentsMultiagentAdvisorDisabled`

          The agent has no advisor.

          - `Type Disabled`

      - `Subagents BetaManagedAgentsMultiagentSubagentsUnion`

        Whether the agent can spawn session threads.

        - `type BetaManagedAgentsMultiagentSubagentsEnabled`

          The agent can spawn session threads.

          - `Type Enabled`

          - `InlineAgents BetaManagedAgentsMultiagentInlineAgentsUnion`

            Whether the agent can define inline agents, which are not saved, when it spawns session threads.

            - `type BetaManagedAgentsMultiagentInlineAgentsEnabled`

              The agent can define inline agents.

              - `Type Enabled`

            - `type BetaManagedAgentsMultiagentInlineAgentsDisabled`

              The agent cannot define inline agents.

              - `Type Disabled`

          - `PredefinedAgents []BetaManagedAgentsAgentReference`

            Predefined agents, which are saved agents that this agent can spawn as session threads, each resolved to a specific version.

            - `Type BetaManagedAgentsAgentReferenceType`

            - `ID string`

            - `Version int64`

              format: int32

        - `type BetaManagedAgentsMultiagentSubagentsDisabled`

          The agent cannot spawn session threads.

          - `Type Disabled`

      - `Workflows BetaManagedAgentsMultiagentWorkflowsUnion`

        Whether the agent can start workflow runs.

        - `type BetaManagedAgentsMultiagentWorkflowsEnabled`

          The agent can start workflow runs.

          - `Type Enabled`

          - `InlineAgents BetaManagedAgentsMultiagentInlineAgentsUnion`

            Whether a run's plan can define inline agents, which are not saved.

          - `PredefinedAgents []BetaManagedAgentsAgentReference`

            Predefined agents, which are saved agents that a run's plan can use, each resolved to a specific version.

            - `Type BetaManagedAgentsAgentReferenceType`

            - `ID string`

            - `Version int64`

              format: int32

        - `type BetaManagedAgentsMultiagentWorkflowsDisabled`

          The agent cannot start workflow runs.

          - `Type Disabled`

  - `Name string`

  - `Skills []BetaManagedAgentsAgentSkillUnion`

    - `type BetaManagedAgentsAnthropicSkill`

      A resolved Anthropic-managed skill.

      - `Type BetaManagedAgentsAnthropicSkillType`

      - `SkillID string`

      - `Version string`

    - `type BetaManagedAgentsCustomSkill`

      A resolved user-created custom skill.

      - `Type BetaManagedAgentsCustomSkillType`

      - `SkillID string`

      - `Version string`

  - `System string`

  - `Tools []BetaManagedAgentsAgentToolUnion`

    - `type BetaManagedAgentsAgentToolset20260401`

      - `Type BetaManagedAgentsAgentToolset20260401Type`

      - `Configs []BetaManagedAgentsAgentToolConfigUnion`

        - `type BetaManagedAgentsBashToolConfig`

          Configuration for the bash tool.

          - `Type Bash`

          - `Enabled bool`

          - `Name Bash`

          - `PermissionPolicy BetaManagedAgentsBashToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

              - `Type BetaManagedAgentsAlwaysAllowPolicyType`

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

              - `Type BetaManagedAgentsAlwaysAskPolicyType`

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

              - `Type Auto`

        - `type BetaManagedAgentsEditToolConfig`

          Configuration for the edit tool.

          - `Type Edit`

          - `Enabled bool`

          - `Name Edit`

          - `PermissionPolicy BetaManagedAgentsEditToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsReadToolConfig`

          Configuration for the read tool.

          - `Type Read`

          - `Enabled bool`

          - `Name Read`

          - `PermissionPolicy BetaManagedAgentsReadToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsWriteToolConfig`

          Configuration for the write tool.

          - `Type Write`

          - `Enabled bool`

          - `Name Write`

          - `PermissionPolicy BetaManagedAgentsWriteToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsGlobToolConfig`

          Configuration for the glob tool.

          - `Type Glob`

          - `Enabled bool`

          - `Name Glob`

          - `PermissionPolicy BetaManagedAgentsGlobToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsGrepToolConfig`

          Configuration for the grep tool.

          - `Type Grep`

          - `Enabled bool`

          - `Name Grep`

          - `PermissionPolicy BetaManagedAgentsGrepToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsWebFetchToolConfig`

          Configuration for the web_fetch tool.

          - `Type WebFetch`

          - `Enabled bool`

          - `Name WebFetch`

          - `PermissionPolicy BetaManagedAgentsWebFetchToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

          - `URLSources BetaManagedAgentsWebFetchURLSources`

            Which sources contribute URLs the tool may fetch, always in the object form. Null when not set, which allows every source.

            - `ClientToolResults BetaManagedAgentsWebFetchURLSourceToolFilterUnion`

              Which custom tools' results contribute URLs that may be fetched. Null when not set, which allows every custom tool's results.

              - `type BetaManagedAgentsWebFetchURLSourceAll`

                Every URL from this source may be fetched. This is the default.

                - `Type All`

              - `type BetaManagedAgentsWebFetchURLSourceNone`

                This source contributes no URLs that may be fetched.

                - `Type None`

              - `type BetaManagedAgentsWebFetchURLSourceOnly`

                Only the named tools' results contribute URLs that may be fetched.

                - `Type Only`

                - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

                  The tools whose results contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "none" to allow no tool's results.

                  - `Type ToolReference`

                    Must be "tool_reference".

                  - `Name string`

                    Name of the tool. Compared exactly, so upper and lower case letters are different.

                    minLength: 1, maxLength: 128

              - `type BetaManagedAgentsWebFetchURLSourceExcept`

                Every tool's results contribute URLs that may be fetched, except the named tools' results.

                - `Type Except`

                - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

                  The tools whose results do not contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "all" to leave out no tool's results.

                  - `Type ToolReference`

                    Must be "tool_reference".

                  - `Name string`

                    Name of the tool. Compared exactly, so upper and lower case letters are different.

                    minLength: 1, maxLength: 128

            - `ServerToolResults BetaManagedAgentsWebFetchURLSourceToolFilterUnion`

              Which of the web_search and web_fetch tools' results contribute URLs that may be fetched. Null when not set, which allows both.

            - `UserInput BetaManagedAgentsWebFetchURLSourceUserInputUnion`

              Whether URLs in the text of user messages may be fetched. Null when not set, which allows them.

              - `type BetaManagedAgentsWebFetchURLSourceAll`

                Every URL from this source may be fetched. This is the default.

              - `type BetaManagedAgentsWebFetchURLSourceNone`

                This source contributes no URLs that may be fetched.

          - `AllowedDomains []string Optional`

          - `BlockedDomains []string Optional`

          - `MaxContentTokens int64 Optional`

            format: int32

        - `type BetaManagedAgentsWebSearchToolConfig`

          Configuration for the web_search tool.

          - `Type WebSearch`

          - `Enabled bool`

          - `Name WebSearch`

          - `PermissionPolicy BetaManagedAgentsWebSearchToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

          - `AllowedDomains []string Optional`

          - `BlockedDomains []string Optional`

          - `UserLocation BetaManagedAgentsUserLocation Optional`

            Approximate user location for search result localization.

            - `Type Approximate`

              Location precision. Only "approximate" is supported.

            - `City string Optional`

              City name.

              minLength: 1, maxLength: 255

            - `Country string Optional`

              Two-letter ISO 3166-1 country code, uppercase.

            - `Region string Optional`

              Region or state name.

              minLength: 1, maxLength: 255

            - `Timezone string Optional`

              IANA timezone identifier, e.g. "America/Los_Angeles".

              minLength: 1, maxLength: 255

      - `DefaultConfig BetaManagedAgentsAgentToolsetDefaultConfig`

        Resolved default configuration for agent tools.

        - `Enabled bool`

        - `PermissionPolicy BetaManagedAgentsAgentToolsetDefaultConfigPermissionPolicyUnion`

          Permission policy for tool execution.

          - `type BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `type BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `type BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

    - `type BetaManagedAgentsMCPToolset`

      - `Type BetaManagedAgentsMCPToolsetType`

      - `Configs []BetaManagedAgentsMCPToolConfig`

        - `Enabled bool`

        - `Name string`

        - `PermissionPolicy BetaManagedAgentsMCPToolConfigPermissionPolicyUnion`

          Permission policy for tool execution.

          - `type BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `type BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `type BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `DefaultConfig BetaManagedAgentsMCPToolsetDefaultConfig`

        Resolved default configuration for all tools from an MCP server.

        - `Enabled bool`

        - `PermissionPolicy BetaManagedAgentsMCPToolsetDefaultConfigPermissionPolicyUnion`

          Permission policy for tool execution.

          - `type BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `type BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `type BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `MCPServerName string`

    - `type BetaManagedAgentsCustomTool`

      A custom tool as returned in API responses.

      - `Type BetaManagedAgentsCustomToolType`

      - `Description string`

      - `InputSchema BetaManagedAgentsCustomToolInputSchema`

        JSON Schema for custom tool input parameters.

        - `Type Object`

        - `Properties map[string, any] Optional`

        - `Required []string Optional`

      - `Name string`

  - `UpdatedAt Time`

    A timestamp in RFC 3339 format

    format: date-time

  - `Version int64`

    The agent's current version. Starts at 1 and increments when the agent is modified.

    format: int32

### Example

```go
package main

import (
	"context"
	"fmt"

	"github.com/anthropics/anthropic-sdk-go"
	"github.com/anthropics/anthropic-sdk-go/option"
)

func main() {
	client := anthropic.NewClient(
		option.WithAPIKey("my-anthropic-api-key"),
	)
	betaManagedAgentsAgent, err := client.Beta.Agents.Get(
		context.TODO(),
		"agent_011CZkYpogX7uDKUyvBTophP",
		anthropic.BetaAgentGetParams{},
	)
	if err != nil {
		panic(err.Error())
	}
	fmt.Printf("%+v\n", betaManagedAgentsAgent.ID)
}
```

#### Response (200)

```json
{
  "id": "agent_011CZkYpogX7uDKUyvBTophP",
  "archived_at": null,
  "created_at": "2026-03-15T10:00:00Z",
  "description": "A general-purpose starter agent.",
  "execution_identity": {
    "type": "service_account"
  },
  "mcp_servers": [
    {
      "name": "example-mcp",
      "type": "url",
      "url": "https://example-server.modelcontextprotocol.io/sse"
    }
  ],
  "metadata": {
    "foo": "bar"
  },
  "model": {
    "id": "claude-opus-5-5",
    "effort": {
      "type": "low"
    },
    "inference_geo": "inference_geo",
    "speed": "standard"
  },
  "multiagent": {
    "advisor": {
      "type": "disabled"
    },
    "subagents": {
      "inline_agents": {
        "type": "enabled"
      },
      "predefined_agents": [
        {
          "id": "agent_011CZkYqphY8vELVzwCUpqiQ",
          "type": "agent",
          "version": 1
        }
      ],
      "type": "enabled"
    },
    "type": "multiagent_20261001",
    "workflows": {
      "inline_agents": {
        "type": "enabled"
      },
      "predefined_agents": [
        {
          "id": "agent_011CZkYqphY8vELVzwCUpqiQ",
          "type": "agent",
          "version": 1
        }
      ],
      "type": "enabled"
    }
  },
  "name": "My First Agent",
  "skills": [
    {
      "skill_id": "xlsx",
      "type": "anthropic",
      "version": "1"
    },
    {
      "skill_id": "skill_011CZkZFNu9hAbo3jZPRgTmx",
      "type": "custom",
      "version": "2"
    }
  ],
  "system": "You are a general-purpose agent that can research, write code, run commands, and use connected tools to complete the user's task end to end.",
  "tools": [
    {
      "configs": [
        {
          "enabled": true,
          "name": "bash",
          "permission_policy": {
            "type": "always_allow"
          },
          "type": "bash"
        }
      ],
      "default_config": {
        "enabled": true,
        "permission_policy": {
          "type": "always_ask"
        }
      },
      "type": "agent_toolset_20260401"
    }
  ],
  "type": "agent",
  "updated_at": "2026-03-15T10:00:00Z",
  "version": 1
}
```

## Update Agent

`client.Beta.Agents.Update(ctx, agentID, params) (*BetaManagedAgentsAgent, error)`

**POST** `/v1/agents/{agent_id}`

Update Agent

### Parameters

- `agentID string` (path parameter)

  Unique identifier of the agent to update.

- `params BetaAgentUpdateParams`

  - `Description param.Opt[string] Optional`

    Description. Omit to preserve; send empty string or null to clear.

    maxLength: 2048

  - `ExecutionIdentity BetaManagedAgentsExecutionIdentityParamsUnion Optional`

    Execution principal for runs of this agent. Full replacement. Omit to preserve; send null or `{"type": "service_account"}` to restore the default.

  - `MCPServers []BetaManagedAgentsURLMCPServerParams Optional`

    MCP servers. Full replacement. Omit to preserve; send empty array or `null` to clear. Names must be unique. Maximum 20. Every server must be referenced by an `mcp_toolset` in the agent's resulting `tools`; unreferenced servers are rejected. See the [MCP connector guide](https://platform.claude.com/docs/en/managed-agents/mcp-connector?sdk_languages=go).

    - `Type BetaManagedAgentsURLMCPServerParamsType`

    - `Name string`

      Unique name for this server, referenced by mcp_toolset configurations. 1-255 characters.

      minLength: 1, maxLength: 255

    - `URL string`

      Endpoint URL for the MCP server.

      maxLength: 2048

  - `Metadata map[string, string] Optional`

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

  - `Model BetaManagedAgentsModelConfigParams Optional`

    Model identifier. Accepts the [model string](https://platform.claude.com/docs/en/about-claude/models/overview?sdk_languages=go#latest-models-comparison), e.g. `claude-opus-5-5`, or a `model_config` object for additional configuration control. Omit to preserve. Cannot be cleared.

    - `type BetaManagedAgentsModelConfigParams`

      An object that defines additional configuration control over model use

      - `ID BetaManagedAgentsModel`

        The model that will power your agent.

        See [models](https://docs.anthropic.com/en/docs/models-overview) for additional details and options.

        - `const BetaManagedAgentsModelClaudeHaiku5_5 BetaManagedAgentsModel = "claude-haiku-5-5"`

          Fastest model for high-volume, real-time tasks

        - `const BetaManagedAgentsModelClaudeSonnet5_5 BetaManagedAgentsModel = "claude-sonnet-5-5"`

          Efficient model for coding and agents

        - `const BetaManagedAgentsModelClaudeOpus5_5 BetaManagedAgentsModel = "claude-opus-5-5"`

          Powerful intelligence for coding, knowledge work, and long-running agents

        - `const BetaManagedAgentsModelClaudeFable5_1 BetaManagedAgentsModel = "claude-fable-5-1"`

          Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows

        - `const BetaManagedAgentsModelClaudeSonnet5 BetaManagedAgentsModel = "claude-sonnet-5"`

          Efficient model for coding and agents

        - `const BetaManagedAgentsModelClaudeFable5 BetaManagedAgentsModel = "claude-fable-5"`

          Next generation of intelligence for the hardest knowledge work and coding problems

        - `const BetaManagedAgentsModelClaudeOpus5 BetaManagedAgentsModel = "claude-opus-5"`

          Powerful intelligence for long-running agents and coding

        - `const BetaManagedAgentsModelClaudeOpus4_8 BetaManagedAgentsModel = "claude-opus-4-8"`

          Powerful intelligence for long-running agents and coding

        - `const BetaManagedAgentsModelClaudeOpus4_7 BetaManagedAgentsModel = "claude-opus-4-7"`

          Powerful intelligence for long-running agents and coding

        - `const BetaManagedAgentsModelClaudeOpus4_6 BetaManagedAgentsModel = "claude-opus-4-6"`

          Powerful intelligence for long-running agents and coding

        - `const BetaManagedAgentsModelClaudeSonnet4_6 BetaManagedAgentsModel = "claude-sonnet-4-6"`

          Best combination of speed and intelligence

        - `const BetaManagedAgentsModelClaudeHaiku4_5 BetaManagedAgentsModel = "claude-haiku-4-5"`

        - `const BetaManagedAgentsModelClaudeHaiku4_5_20251001 BetaManagedAgentsModel = "claude-haiku-4-5-20251001"`

        - `const BetaManagedAgentsModelClaudeOpus4_5 BetaManagedAgentsModel = "claude-opus-4-5"`

          Powerful intelligence for long-running agents and coding

        - `const BetaManagedAgentsModelClaudeOpus4_5_20251101 BetaManagedAgentsModel = "claude-opus-4-5-20251101"`

          Powerful intelligence for long-running agents and coding

        - `const BetaManagedAgentsModelClaudeSonnet4_5 BetaManagedAgentsModel = "claude-sonnet-4-5"`

          **Deprecated**: Will reach end-of-life on November 30, 2026. Please migrate to claude-sonnet-5-5. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.

          High-performance model for agents and coding

        - `const BetaManagedAgentsModelClaudeSonnet4_5_20250929 BetaManagedAgentsModel = "claude-sonnet-4-5-20250929"`

          **Deprecated**: Will reach end-of-life on November 30, 2026. Please migrate to claude-sonnet-5-5. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.

          High-performance model for agents and coding

      - `Effort BetaManagedAgentsModelConfigParamsEffortUnion Optional`

        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.

        - `type BetaManagedAgentsModelConfigParamsEffortBetaManagedAgentsEffortLevel string`

          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.

          - `const BetaManagedAgentsModelConfigParamsEffortBetaManagedAgentsEffortLevelLow BetaManagedAgentsModelConfigParamsEffortBetaManagedAgentsEffortLevel = "low"`

            Low effort. Favors latency over reasoning depth.

          - `const BetaManagedAgentsModelConfigParamsEffortBetaManagedAgentsEffortLevelMedium BetaManagedAgentsModelConfigParamsEffortBetaManagedAgentsEffortLevel = "medium"`

            Medium effort. Balances latency and reasoning depth.

          - `const BetaManagedAgentsModelConfigParamsEffortBetaManagedAgentsEffortLevelHigh BetaManagedAgentsModelConfigParamsEffortBetaManagedAgentsEffortLevel = "high"`

            High effort. Favors reasoning depth.

          - `const BetaManagedAgentsModelConfigParamsEffortBetaManagedAgentsEffortLevelXhigh BetaManagedAgentsModelConfigParamsEffortBetaManagedAgentsEffortLevel = "xhigh"`

            Extra-high effort. Not all models accept this level.

          - `const BetaManagedAgentsModelConfigParamsEffortBetaManagedAgentsEffortLevelMax BetaManagedAgentsModelConfigParamsEffortBetaManagedAgentsEffortLevel = "max"`

            Maximum effort. Favors reasoning depth over latency.

        - `type BetaManagedAgentsEffortLow`

          Low effort. Favors latency over reasoning depth.

          - `Type BetaManagedAgentsEffortLowType`

        - `type BetaManagedAgentsEffortMedium`

          Medium effort. Balances latency and reasoning depth.

          - `Type BetaManagedAgentsEffortMediumType`

        - `type BetaManagedAgentsEffortHigh`

          High effort. Favors reasoning depth.

          - `Type BetaManagedAgentsEffortHighType`

        - `type BetaManagedAgentsEffortXhigh`

          Extra-high effort. Not all models accept this level.

          - `Type BetaManagedAgentsEffortXhighType`

        - `type BetaManagedAgentsEffortMax`

          Maximum effort. Favors reasoning depth over latency.

          - `Type BetaManagedAgentsEffortMaxType`

      - `InferenceGeo string Optional`

        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.

      - `Speed BetaManagedAgentsModelConfigParamsSpeed Optional`

        Inference speed mode. Defaults to `standard`.

        - `const BetaManagedAgentsModelConfigParamsSpeedStandard BetaManagedAgentsModelConfigParamsSpeed = "standard"`

        - `const BetaManagedAgentsModelConfigParamsSpeedFast BetaManagedAgentsModelConfigParamsSpeed = "fast"`

  - `Multiagent BetaManagedAgentsMultiagentParamsUnion Optional`

    Multiagent orchestration configuration. Full replacement. Omit to preserve; send null to clear.

  - `Name param.Opt[string] Optional`

    Human-readable name. Must be non-empty. Omit to preserve. Cannot be cleared.

    maxLength: 256

  - `Skills []BetaManagedAgentsSkillParamsUnion Optional`

    Skills. Full replacement. Omit to preserve; send empty array or null to clear.

    - `type BetaManagedAgentsAnthropicSkillParams`

      An Anthropic-managed skill.

      - `Type BetaManagedAgentsAnthropicSkillParamsType`

      - `SkillID string`

        Identifier of the Anthropic skill (e.g., "xlsx").

        minLength: 1, maxLength: 64

      - `Version string Optional`

        Version to pin. Defaults to latest if omitted.

        minLength: 1, maxLength: 64

    - `type BetaManagedAgentsCustomSkillParams`

      A user-created custom skill.

      - `Type BetaManagedAgentsCustomSkillParamsType`

      - `SkillID string`

        Tagged ID of the custom skill (e.g., "skill_01XJ5...").

        minLength: 1, maxLength: 64

      - `Version string Optional`

        Version to pin. Defaults to latest if omitted.

        minLength: 1, maxLength: 64

  - `System param.Opt[string] Optional`

    System prompt. Omit to preserve; send empty string or null to clear.

    maxLength: 100000

  - `Tools []BetaAgentUpdateParamsToolUnion Optional`

    Tool configurations available to the agent. Full replacement. Omit to preserve; send empty array or null to clear. Maximum of 256 tools across all toolsets allowed.

    - `type BetaManagedAgentsAgentToolset20260401Params`

      Configuration for built-in agent tools. Use this to enable or disable groups of tools available to the agent.

      - `Type BetaManagedAgentsAgentToolset20260401ParamsType`

      - `Configs []BetaManagedAgentsAgentToolConfigParamsUnion Optional`

        Per-tool configuration overrides.

        - `type BetaManagedAgentsBashToolConfigParams`

          Configuration override for the bash tool.

          - `Type BetaManagedAgentsBashToolConfigParamsType Optional`

          - `Name Bash`

            Must be "bash".

          - `Enabled bool Optional`

            Whether this tool is enabled and available to Claude. Overrides the default_config setting.

          - `PermissionPolicy BetaManagedAgentsBashToolConfigParamsPermissionPolicyUnion Optional`

            Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

              - `Type BetaManagedAgentsAlwaysAllowPolicyType`

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

              - `Type BetaManagedAgentsAlwaysAskPolicyType`

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

              - `Type Auto`

        - `type BetaManagedAgentsEditToolConfigParams`

          Configuration override for the edit tool.

          - `Type BetaManagedAgentsEditToolConfigParamsType Optional`

          - `Name Edit`

            Must be "edit".

          - `Enabled bool Optional`

            Whether this tool is enabled and available to Claude. Overrides the default_config setting.

          - `PermissionPolicy BetaManagedAgentsEditToolConfigParamsPermissionPolicyUnion Optional`

            Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsReadToolConfigParams`

          Configuration override for the read tool.

          - `Type BetaManagedAgentsReadToolConfigParamsType Optional`

          - `Name Read`

            Must be "read".

          - `Enabled bool Optional`

            Whether this tool is enabled and available to Claude. Overrides the default_config setting.

          - `PermissionPolicy BetaManagedAgentsReadToolConfigParamsPermissionPolicyUnion Optional`

            Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsWriteToolConfigParams`

          Configuration override for the write tool.

          - `Type BetaManagedAgentsWriteToolConfigParamsType Optional`

          - `Name Write`

            Must be "write".

          - `Enabled bool Optional`

            Whether this tool is enabled and available to Claude. Overrides the default_config setting.

          - `PermissionPolicy BetaManagedAgentsWriteToolConfigParamsPermissionPolicyUnion Optional`

            Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsGlobToolConfigParams`

          Configuration override for the glob tool.

          - `Type BetaManagedAgentsGlobToolConfigParamsType Optional`

          - `Name Glob`

            Must be "glob".

          - `Enabled bool Optional`

            Whether this tool is enabled and available to Claude. Overrides the default_config setting.

          - `PermissionPolicy BetaManagedAgentsGlobToolConfigParamsPermissionPolicyUnion Optional`

            Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsGrepToolConfigParams`

          Configuration override for the grep tool.

          - `Type BetaManagedAgentsGrepToolConfigParamsType Optional`

          - `Name Grep`

            Must be "grep".

          - `Enabled bool Optional`

            Whether this tool is enabled and available to Claude. Overrides the default_config setting.

          - `PermissionPolicy BetaManagedAgentsGrepToolConfigParamsPermissionPolicyUnion Optional`

            Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsWebFetchToolConfigParams`

          Configuration override for the web_fetch tool.

          - `Type BetaManagedAgentsWebFetchToolConfigParamsType Optional`

          - `Name WebFetch`

            Must be "web_fetch".

          - `AllowedDomains []string Optional`

            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.

          - `BlockedDomains []string Optional`

            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.

          - `Enabled bool Optional`

            Whether this tool is enabled and available to Claude. Overrides the default_config setting.

          - `MaxContentTokens int64 Optional`

            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

          - `PermissionPolicy BetaManagedAgentsWebFetchToolConfigParamsPermissionPolicyUnion Optional`

            Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

          - `URLSources BetaManagedAgentsWebFetchURLSourcesParams Optional`

            Which sources contribute URLs the tool may fetch. Omit to allow every source.

            - `ClientToolResults BetaManagedAgentsWebFetchURLSourceToolFilterParamsUnion Optional`

              Which custom tools' results contribute URLs that may be fetched: "all" (the default), "none", or an only or except list. Each name in a list must be a custom tool in the same tools array.

              - `type BetaManagedAgentsWebFetchURLSourceShorthand string`

                String form of a url_sources value that has no field other than its type: "all" means {"type": "all"} and "none" means {"type": "none"}.

                - `const BetaManagedAgentsWebFetchURLSourceShorthandAll BetaManagedAgentsWebFetchURLSourceShorthand = "all"`

                - `const BetaManagedAgentsWebFetchURLSourceShorthandNone BetaManagedAgentsWebFetchURLSourceShorthand = "none"`

              - `type BetaManagedAgentsWebFetchURLSourceToolFilterUnion interface{…}`

                Which tools' results contribute URLs that may be fetched.

                - `type BetaManagedAgentsWebFetchURLSourceAll`

                  Every URL from this source may be fetched. This is the default.

                  - `Type All`

                - `type BetaManagedAgentsWebFetchURLSourceNone`

                  This source contributes no URLs that may be fetched.

                  - `Type None`

                - `type BetaManagedAgentsWebFetchURLSourceOnly`

                  Only the named tools' results contribute URLs that may be fetched.

                  - `Type Only`

                  - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

                    The tools whose results contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "none" to allow no tool's results.

                    - `Type ToolReference`

                      Must be "tool_reference".

                    - `Name string`

                      Name of the tool. Compared exactly, so upper and lower case letters are different.

                      minLength: 1, maxLength: 128

                - `type BetaManagedAgentsWebFetchURLSourceExcept`

                  Every tool's results contribute URLs that may be fetched, except the named tools' results.

                  - `Type Except`

                  - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

                    The tools whose results do not contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "all" to leave out no tool's results.

                    - `Type ToolReference`

                      Must be "tool_reference".

                    - `Name string`

                      Name of the tool. Compared exactly, so upper and lower case letters are different.

                      minLength: 1, maxLength: 128

            - `ServerToolResults BetaManagedAgentsWebFetchURLSourceToolFilterParamsUnion Optional`

              Which of the web_search and web_fetch tools' results contribute URLs that may be fetched: "all" (the default), "none", or an only or except list. Each name in a list must be "web_search" or "web_fetch".

            - `UserInput BetaManagedAgentsWebFetchURLSourceUserInputParamsUnion Optional`

              Whether URLs in the text of user messages may be fetched: "all" (the default) or "none".

              - `type BetaManagedAgentsWebFetchURLSourceShorthand string`

                String form of a url_sources value that has no field other than its type: "all" means {"type": "all"} and "none" means {"type": "none"}.

              - `type BetaManagedAgentsWebFetchURLSourceUserInputUnion interface{…}`

                Whether URLs in the text of user messages may be fetched.

                - `type BetaManagedAgentsWebFetchURLSourceAll`

                  Every URL from this source may be fetched. This is the default.

                - `type BetaManagedAgentsWebFetchURLSourceNone`

                  This source contributes no URLs that may be fetched.

        - `type BetaManagedAgentsWebSearchToolConfigParams`

          Configuration override for the web_search tool.

          - `Type BetaManagedAgentsWebSearchToolConfigParamsType Optional`

          - `Name WebSearch`

            Must be "web_search".

          - `AllowedDomains []string Optional`

            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.

          - `BlockedDomains []string Optional`

            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.

          - `Enabled bool Optional`

            Whether this tool is enabled and available to Claude. Overrides the default_config setting.

          - `PermissionPolicy BetaManagedAgentsWebSearchToolConfigParamsPermissionPolicyUnion Optional`

            Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

          - `UserLocation BetaManagedAgentsUserLocationParam Optional`

            Approximate user location for search result localization.

            - `Type Approximate`

              Location precision. Only "approximate" is supported.

            - `City string Optional`

              City name.

              minLength: 1, maxLength: 255

            - `Country string Optional`

              Two-letter ISO 3166-1 country code, uppercase.

            - `Region string Optional`

              Region or state name.

              minLength: 1, maxLength: 255

            - `Timezone string Optional`

              IANA timezone identifier, e.g. "America/Los_Angeles".

              minLength: 1, maxLength: 255

      - `DefaultConfig BetaManagedAgentsAgentToolsetDefaultConfigParams Optional`

        Default configuration applied to all tools in this set.

        - `Enabled bool Optional`

          Whether tools are enabled and available to Claude by default. Defaults to true if not specified.

        - `PermissionPolicy BetaManagedAgentsAgentToolsetDefaultConfigParamsPermissionPolicyUnion Optional`

          Default permission policy for tools. Controls whether tool calls are auto-approved or require confirmation.

          - `type BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `type BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `type BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

    - `type BetaManagedAgentsMCPToolsetParams`

      Configuration for tools from an MCP server defined in `mcp_servers`.

      - `Type BetaManagedAgentsMCPToolsetParamsType`

      - `MCPServerName string`

        Name of the MCP server. Must match a server name from the mcp_servers array. 1-255 characters.

        minLength: 1, maxLength: 255

      - `Configs []BetaManagedAgentsMCPToolConfigParams Optional`

        Per-tool configuration overrides.

        - `Name string`

          Name of the MCP tool to configure. 1-128 characters.

          minLength: 1, maxLength: 128

        - `Enabled bool Optional`

          Whether this tool is enabled. Overrides the `default_config` setting.

        - `PermissionPolicy BetaManagedAgentsMCPToolConfigParamsPermissionPolicyUnion Optional`

          Permission policy for this tool. Overrides the `default_config` setting.

          - `type BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `type BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `type BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `DefaultConfig BetaManagedAgentsMCPToolsetDefaultConfigParams Optional`

        Default configuration for all tools from this server.

        - `Enabled bool Optional`

          Whether tools are enabled by default. Defaults to true if not specified.

        - `PermissionPolicy BetaManagedAgentsMCPToolsetDefaultConfigParamsPermissionPolicyUnion Optional`

          Default permission policy for tools from this server.

          - `type BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `type BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `type BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

    - `type BetaManagedAgentsCustomToolParams`

      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 BetaManagedAgentsCustomToolParamsType`

      - `Description string`

        Description of what the tool does, shown to the agent to help it decide when to use the tool.

        minLength: 1

      - `InputSchema BetaManagedAgentsCustomToolInputSchemaParam`

        JSON Schema defining the expected input parameters for the tool.

        - `Type Object`

        - `Properties map[string, any] Optional`

        - `Required []string Optional`

      - `Name string`

        Unique name for the tool. 1-128 characters; letters, digits, underscores, and hyphens.

        minLength: 1, maxLength: 128

  - `Version param.Opt[int64] Optional`

    The agent's current version, used to prevent concurrent overwrites. Obtain this value from a create or retrieve response. Must be at least 1 if specified. When supplied, the request fails if it does not match the server's current version; omit to apply the update unconditionally.

    format: int32

  - `Betas []AnthropicBeta Optional` (header parameter)

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

    - `const AnthropicBetaMessageBatches2024_09_24 AnthropicBeta = "message-batches-2024-09-24"`

    - `const AnthropicBetaPromptCaching2024_07_31 AnthropicBeta = "prompt-caching-2024-07-31"`

    - `const AnthropicBetaComputerUse2024_10_22 AnthropicBeta = "computer-use-2024-10-22"`

    - `const AnthropicBetaComputerUse2025_01_24 AnthropicBeta = "computer-use-2025-01-24"`

    - `const AnthropicBetaPDFs2024_09_25 AnthropicBeta = "pdfs-2024-09-25"`

    - `const AnthropicBetaTokenCounting2024_11_01 AnthropicBeta = "token-counting-2024-11-01"`

    - `const AnthropicBetaTokenEfficientTools2025_02_19 AnthropicBeta = "token-efficient-tools-2025-02-19"`

    - `const AnthropicBetaOutput128k2025_02_19 AnthropicBeta = "output-128k-2025-02-19"`

    - `const AnthropicBetaFilesAPI2025_04_14 AnthropicBeta = "files-api-2025-04-14"`

    - `const AnthropicBetaMCPClient2025_04_04 AnthropicBeta = "mcp-client-2025-04-04"`

    - `const AnthropicBetaMCPClient2025_11_20 AnthropicBeta = "mcp-client-2025-11-20"`

    - `const AnthropicBetaDevFullThinking2025_05_14 AnthropicBeta = "dev-full-thinking-2025-05-14"`

    - `const AnthropicBetaInterleavedThinking2025_05_14 AnthropicBeta = "interleaved-thinking-2025-05-14"`

    - `const AnthropicBetaCodeExecution2025_05_22 AnthropicBeta = "code-execution-2025-05-22"`

    - `const AnthropicBetaExtendedCacheTTL2025_04_11 AnthropicBeta = "extended-cache-ttl-2025-04-11"`

    - `const AnthropicBetaContext1m2025_08_07 AnthropicBeta = "context-1m-2025-08-07"`

    - `const AnthropicBetaContextManagement2025_06_27 AnthropicBeta = "context-management-2025-06-27"`

    - `const AnthropicBetaModelContextWindowExceeded2025_08_26 AnthropicBeta = "model-context-window-exceeded-2025-08-26"`

    - `const AnthropicBetaSkills2025_10_02 AnthropicBeta = "skills-2025-10-02"`

    - `const AnthropicBetaFastMode2026_02_01 AnthropicBeta = "fast-mode-2026-02-01"`

    - `const AnthropicBetaOutput300k2026_03_24 AnthropicBeta = "output-300k-2026-03-24"`

    - `const AnthropicBetaUserProfiles2026_03_24 AnthropicBeta = "user-profiles-2026-03-24"`

    - `const AnthropicBetaUserProfiles2026_08_18 AnthropicBeta = "user-profiles-2026-08-18"`

    - `const AnthropicBetaUserProfiles2026_09_04 AnthropicBeta = "user-profiles-2026-09-04"`

    - `const AnthropicBetaAdvisorTool2026_03_01 AnthropicBeta = "advisor-tool-2026-03-01"`

    - `const AnthropicBetaManagedAgents2026_04_01 AnthropicBeta = "managed-agents-2026-04-01"`

    - `const AnthropicBetaCacheDiagnosis2026_04_07 AnthropicBeta = "cache-diagnosis-2026-04-07"`

    - `const AnthropicBetaDreaming2026_04_21 AnthropicBeta = "dreaming-2026-04-21"`

    - `const AnthropicBetaThinkingTokenCount2026_05_13 AnthropicBeta = "thinking-token-count-2026-05-13"`

    - `const AnthropicBetaServerSideFallback2026_06_01 AnthropicBeta = "server-side-fallback-2026-06-01"`

    - `const AnthropicBetaServerSideFallback2026_07_01 AnthropicBeta = "server-side-fallback-2026-07-01"`

    - `const AnthropicBetaFallbackCredit2026_06_01 AnthropicBeta = "fallback-credit-2026-06-01"`

    - `const AnthropicBetaFallbackCredit2026_07_01 AnthropicBeta = "fallback-credit-2026-07-01"`

    - `const AnthropicBetaAgentMemory2026_07_22 AnthropicBeta = "agent-memory-2026-07-22"`

    - `const AnthropicBetaMidConversationToolChanges2026_07_01 AnthropicBeta = "mid-conversation-tool-changes-2026-07-01"`

    - `const AnthropicBetaCompact2026_01_12 AnthropicBeta = "compact-2026-01-12"`

    - `const AnthropicBetaComputerUse2025_11_24 AnthropicBeta = "computer-use-2025-11-24"`

    - `const AnthropicBetaMCPTunnels2026_06_22 AnthropicBeta = "mcp-tunnels-2026-06-22"`

    - `const AnthropicBetaStructuredOutputs2025_11_13 AnthropicBeta = "structured-outputs-2025-11-13"`

    - `const AnthropicBetaTaskBudgets2026_03_13 AnthropicBeta = "task-budgets-2026-03-13"`

    - `const AnthropicBetaThinkingDisplayUpdates2026_08_18 AnthropicBeta = "thinking-display-updates-2026-08-18"`

    - `const AnthropicBetaCEUserManagement2026_07_13 AnthropicBeta = "ce-user-management-2026-07-13"`

    - `const AnthropicBetaMidConversationOutputConfig2026_07_01 AnthropicBeta = "mid-conversation-output-config-2026-07-01"`

    - `const AnthropicBetaThinkingBindingControls2026_08_01 AnthropicBeta = "thinking-binding-controls-2026-08-01"`

    - `const AnthropicBetaMidConversationSystemClearAt2026_08_21 AnthropicBeta = "mid-conversation-system-clear-at-2026-08-21"`

    - `const AnthropicBetaCompact2026_09_04 AnthropicBeta = "compact-2026-09-04"`

    - `const AnthropicBetaInlineTools2026_09_15 AnthropicBeta = "inline-tools-2026-09-15"`

    - `const AnthropicBetaMCPClient2026_09_15 AnthropicBeta = "mcp-client-2026-09-15"`

    - `const AnthropicBetaCEPlugins2026_09_01 AnthropicBeta = "ce-plugins-2026-09-01"`

    - `const AnthropicBetaSpendLimitReads2026_09_26 AnthropicBeta = "spend-limit-reads-2026-09-26"`

    - `const AnthropicBetaTelemetryDestinations2026_08_11 AnthropicBeta = "telemetry-destinations-2026-08-11"`

  - `WorkspaceID param.Opt[string] Optional` (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

- `type BetaManagedAgentsAgent`

  A Managed Agents `agent`.

  - `Type BetaManagedAgentsAgentType`

  - `ID string`

  - `ArchivedAt Time`

    When the agent was archived. Null if not archived.

    format: date-time

  - `CreatedAt Time`

    A timestamp in RFC 3339 format

    format: date-time

  - `Description string`

  - `ExecutionIdentity BetaManagedAgentsExecutionIdentityUnion`

    Execution principal for runs of this agent. Always present; `{"type": "service_account"}` when runs carry no customer-named principal.

    - `type BetaManagedAgentsAWSRoleExecutionIdentity`

      An AWS IAM role principal as returned in API responses.

      - `Type AWSRole`

      - `RoleARN string`

        The IAM role's ARN.

    - `type BetaManagedAgentsServiceAccountExecutionIdentity`

      The Anthropic-managed service account as returned in API responses.

      - `Type ServiceAccount`

  - `MCPServers []BetaManagedAgentsMCPServerURLDefinition`

    - `Type BetaManagedAgentsMCPServerURLDefinitionType`

    - `Name string`

    - `URL string`

  - `Metadata map[string, string]`

  - `Model BetaManagedAgentsModelConfig`

    Model identifier and configuration.

    - `ID BetaManagedAgentsModel`

      The model that will power your agent.

      See [models](https://docs.anthropic.com/en/docs/models-overview) for additional details and options.

      - `const BetaManagedAgentsModelClaudeHaiku5_5 BetaManagedAgentsModel = "claude-haiku-5-5"`

        Fastest model for high-volume, real-time tasks

      - `const BetaManagedAgentsModelClaudeSonnet5_5 BetaManagedAgentsModel = "claude-sonnet-5-5"`

        Efficient model for coding and agents

      - `const BetaManagedAgentsModelClaudeOpus5_5 BetaManagedAgentsModel = "claude-opus-5-5"`

        Powerful intelligence for coding, knowledge work, and long-running agents

      - `const BetaManagedAgentsModelClaudeFable5_1 BetaManagedAgentsModel = "claude-fable-5-1"`

        Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows

      - `const BetaManagedAgentsModelClaudeSonnet5 BetaManagedAgentsModel = "claude-sonnet-5"`

        Efficient model for coding and agents

      - `const BetaManagedAgentsModelClaudeFable5 BetaManagedAgentsModel = "claude-fable-5"`

        Next generation of intelligence for the hardest knowledge work and coding problems

      - `const BetaManagedAgentsModelClaudeOpus5 BetaManagedAgentsModel = "claude-opus-5"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeOpus4_8 BetaManagedAgentsModel = "claude-opus-4-8"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeOpus4_7 BetaManagedAgentsModel = "claude-opus-4-7"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeOpus4_6 BetaManagedAgentsModel = "claude-opus-4-6"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeSonnet4_6 BetaManagedAgentsModel = "claude-sonnet-4-6"`

        Best combination of speed and intelligence

      - `const BetaManagedAgentsModelClaudeHaiku4_5 BetaManagedAgentsModel = "claude-haiku-4-5"`

      - `const BetaManagedAgentsModelClaudeHaiku4_5_20251001 BetaManagedAgentsModel = "claude-haiku-4-5-20251001"`

      - `const BetaManagedAgentsModelClaudeOpus4_5 BetaManagedAgentsModel = "claude-opus-4-5"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeOpus4_5_20251101 BetaManagedAgentsModel = "claude-opus-4-5-20251101"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeSonnet4_5 BetaManagedAgentsModel = "claude-sonnet-4-5"`

        **Deprecated**: Will reach end-of-life on November 30, 2026. Please migrate to claude-sonnet-5-5. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.

        High-performance model for agents and coding

      - `const BetaManagedAgentsModelClaudeSonnet4_5_20250929 BetaManagedAgentsModel = "claude-sonnet-4-5-20250929"`

        **Deprecated**: Will reach end-of-life on November 30, 2026. Please migrate to claude-sonnet-5-5. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.

        High-performance model for agents and coding

    - `Effort BetaManagedAgentsModelConfigEffortUnion Optional`

      How hard Claude works on each inference call. One of `low`, `medium`, `high`, `xhigh`, `max`. Always present; resolved to the per-model default at save time when not supplied.

      - `type BetaManagedAgentsEffortLow`

        Low effort. Favors latency over reasoning depth.

        - `Type BetaManagedAgentsEffortLowType`

      - `type BetaManagedAgentsEffortMedium`

        Medium effort. Balances latency and reasoning depth.

        - `Type BetaManagedAgentsEffortMediumType`

      - `type BetaManagedAgentsEffortHigh`

        High effort. Favors reasoning depth.

        - `Type BetaManagedAgentsEffortHighType`

      - `type BetaManagedAgentsEffortXhigh`

        Extra-high effort. Not all models accept this level.

        - `Type BetaManagedAgentsEffortXhighType`

      - `type BetaManagedAgentsEffortMax`

        Maximum effort. Favors reasoning depth over latency.

        - `Type BetaManagedAgentsEffortMaxType`

    - `InferenceGeo string Optional`

      Geographic region for model inference. When unset, requests fall through to the workspace's default_inference_geo.

    - `Speed BetaManagedAgentsModelConfigSpeed Optional`

      Inference speed mode. `fast` provides significantly faster output token generation at premium pricing. Defaults to `standard`. Not all models support `fast`; invalid combinations are rejected at create time.

      - `const BetaManagedAgentsModelConfigSpeedStandard BetaManagedAgentsModelConfigSpeed = "standard"`

      - `const BetaManagedAgentsModelConfigSpeedFast BetaManagedAgentsModelConfigSpeed = "fast"`

  - `Multiagent BetaManagedAgentsMultiagentUnion`

    Multiagent orchestration configuration. Null when the agent is single-threaded.

    - `type BetaManagedAgentsMultiagentCoordinator`

      Resolved coordinator topology with a concrete agent roster.

      - `Type BetaManagedAgentsMultiagentCoordinatorType`

      - `Agents []BetaManagedAgentsMultiagentCoordinatorAgentUnion`

        Agents the coordinator may spawn as session threads, each resolved to a specific version.

        - `type BetaManagedAgentsAgentReference`

          A resolved agent reference with a concrete version.

          - `Type BetaManagedAgentsAgentReferenceType`

          - `ID string`

          - `Version int64`

            format: int32

        - `type BetaManagedAgentsAdvisor`

          Platform advisor roster entry: a model the session's primary thread may consult mid-turn.

          - `Type BetaManagedAgentsAdvisorType`

          - `Model string`

            The advisor model id.

    - `type BetaManagedAgentsMultiagent20261001`

      Resolved multiagent configuration with three members, each enabled or disabled on its own.

      - `Type Multiagent20261001`

      - `Advisor BetaManagedAgentsMultiagentAdvisorUnion`

        Whether the session's primary thread can consult an advisor model.

        - `type BetaManagedAgentsMultiagentAdvisorEnabled`

          The session's primary thread can consult `model` mid-turn.

          - `Type Enabled`

          - `Model string`

            The advisor model id.

        - `type BetaManagedAgentsMultiagentAdvisorDisabled`

          The agent has no advisor.

          - `Type Disabled`

      - `Subagents BetaManagedAgentsMultiagentSubagentsUnion`

        Whether the agent can spawn session threads.

        - `type BetaManagedAgentsMultiagentSubagentsEnabled`

          The agent can spawn session threads.

          - `Type Enabled`

          - `InlineAgents BetaManagedAgentsMultiagentInlineAgentsUnion`

            Whether the agent can define inline agents, which are not saved, when it spawns session threads.

            - `type BetaManagedAgentsMultiagentInlineAgentsEnabled`

              The agent can define inline agents.

              - `Type Enabled`

            - `type BetaManagedAgentsMultiagentInlineAgentsDisabled`

              The agent cannot define inline agents.

              - `Type Disabled`

          - `PredefinedAgents []BetaManagedAgentsAgentReference`

            Predefined agents, which are saved agents that this agent can spawn as session threads, each resolved to a specific version.

            - `Type BetaManagedAgentsAgentReferenceType`

            - `ID string`

            - `Version int64`

              format: int32

        - `type BetaManagedAgentsMultiagentSubagentsDisabled`

          The agent cannot spawn session threads.

          - `Type Disabled`

      - `Workflows BetaManagedAgentsMultiagentWorkflowsUnion`

        Whether the agent can start workflow runs.

        - `type BetaManagedAgentsMultiagentWorkflowsEnabled`

          The agent can start workflow runs.

          - `Type Enabled`

          - `InlineAgents BetaManagedAgentsMultiagentInlineAgentsUnion`

            Whether a run's plan can define inline agents, which are not saved.

          - `PredefinedAgents []BetaManagedAgentsAgentReference`

            Predefined agents, which are saved agents that a run's plan can use, each resolved to a specific version.

            - `Type BetaManagedAgentsAgentReferenceType`

            - `ID string`

            - `Version int64`

              format: int32

        - `type BetaManagedAgentsMultiagentWorkflowsDisabled`

          The agent cannot start workflow runs.

          - `Type Disabled`

  - `Name string`

  - `Skills []BetaManagedAgentsAgentSkillUnion`

    - `type BetaManagedAgentsAnthropicSkill`

      A resolved Anthropic-managed skill.

      - `Type BetaManagedAgentsAnthropicSkillType`

      - `SkillID string`

      - `Version string`

    - `type BetaManagedAgentsCustomSkill`

      A resolved user-created custom skill.

      - `Type BetaManagedAgentsCustomSkillType`

      - `SkillID string`

      - `Version string`

  - `System string`

  - `Tools []BetaManagedAgentsAgentToolUnion`

    - `type BetaManagedAgentsAgentToolset20260401`

      - `Type BetaManagedAgentsAgentToolset20260401Type`

      - `Configs []BetaManagedAgentsAgentToolConfigUnion`

        - `type BetaManagedAgentsBashToolConfig`

          Configuration for the bash tool.

          - `Type Bash`

          - `Enabled bool`

          - `Name Bash`

          - `PermissionPolicy BetaManagedAgentsBashToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

              - `Type BetaManagedAgentsAlwaysAllowPolicyType`

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

              - `Type BetaManagedAgentsAlwaysAskPolicyType`

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

              - `Type Auto`

        - `type BetaManagedAgentsEditToolConfig`

          Configuration for the edit tool.

          - `Type Edit`

          - `Enabled bool`

          - `Name Edit`

          - `PermissionPolicy BetaManagedAgentsEditToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsReadToolConfig`

          Configuration for the read tool.

          - `Type Read`

          - `Enabled bool`

          - `Name Read`

          - `PermissionPolicy BetaManagedAgentsReadToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsWriteToolConfig`

          Configuration for the write tool.

          - `Type Write`

          - `Enabled bool`

          - `Name Write`

          - `PermissionPolicy BetaManagedAgentsWriteToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsGlobToolConfig`

          Configuration for the glob tool.

          - `Type Glob`

          - `Enabled bool`

          - `Name Glob`

          - `PermissionPolicy BetaManagedAgentsGlobToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsGrepToolConfig`

          Configuration for the grep tool.

          - `Type Grep`

          - `Enabled bool`

          - `Name Grep`

          - `PermissionPolicy BetaManagedAgentsGrepToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsWebFetchToolConfig`

          Configuration for the web_fetch tool.

          - `Type WebFetch`

          - `Enabled bool`

          - `Name WebFetch`

          - `PermissionPolicy BetaManagedAgentsWebFetchToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

          - `URLSources BetaManagedAgentsWebFetchURLSources`

            Which sources contribute URLs the tool may fetch, always in the object form. Null when not set, which allows every source.

            - `ClientToolResults BetaManagedAgentsWebFetchURLSourceToolFilterUnion`

              Which custom tools' results contribute URLs that may be fetched. Null when not set, which allows every custom tool's results.

              - `type BetaManagedAgentsWebFetchURLSourceAll`

                Every URL from this source may be fetched. This is the default.

                - `Type All`

              - `type BetaManagedAgentsWebFetchURLSourceNone`

                This source contributes no URLs that may be fetched.

                - `Type None`

              - `type BetaManagedAgentsWebFetchURLSourceOnly`

                Only the named tools' results contribute URLs that may be fetched.

                - `Type Only`

                - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

                  The tools whose results contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "none" to allow no tool's results.

                  - `Type ToolReference`

                    Must be "tool_reference".

                  - `Name string`

                    Name of the tool. Compared exactly, so upper and lower case letters are different.

                    minLength: 1, maxLength: 128

              - `type BetaManagedAgentsWebFetchURLSourceExcept`

                Every tool's results contribute URLs that may be fetched, except the named tools' results.

                - `Type Except`

                - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

                  The tools whose results do not contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "all" to leave out no tool's results.

                  - `Type ToolReference`

                    Must be "tool_reference".

                  - `Name string`

                    Name of the tool. Compared exactly, so upper and lower case letters are different.

                    minLength: 1, maxLength: 128

            - `ServerToolResults BetaManagedAgentsWebFetchURLSourceToolFilterUnion`

              Which of the web_search and web_fetch tools' results contribute URLs that may be fetched. Null when not set, which allows both.

            - `UserInput BetaManagedAgentsWebFetchURLSourceUserInputUnion`

              Whether URLs in the text of user messages may be fetched. Null when not set, which allows them.

              - `type BetaManagedAgentsWebFetchURLSourceAll`

                Every URL from this source may be fetched. This is the default.

              - `type BetaManagedAgentsWebFetchURLSourceNone`

                This source contributes no URLs that may be fetched.

          - `AllowedDomains []string Optional`

          - `BlockedDomains []string Optional`

          - `MaxContentTokens int64 Optional`

            format: int32

        - `type BetaManagedAgentsWebSearchToolConfig`

          Configuration for the web_search tool.

          - `Type WebSearch`

          - `Enabled bool`

          - `Name WebSearch`

          - `PermissionPolicy BetaManagedAgentsWebSearchToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

          - `AllowedDomains []string Optional`

          - `BlockedDomains []string Optional`

          - `UserLocation BetaManagedAgentsUserLocation Optional`

            Approximate user location for search result localization.

            - `Type Approximate`

              Location precision. Only "approximate" is supported.

            - `City string Optional`

              City name.

              minLength: 1, maxLength: 255

            - `Country string Optional`

              Two-letter ISO 3166-1 country code, uppercase.

            - `Region string Optional`

              Region or state name.

              minLength: 1, maxLength: 255

            - `Timezone string Optional`

              IANA timezone identifier, e.g. "America/Los_Angeles".

              minLength: 1, maxLength: 255

      - `DefaultConfig BetaManagedAgentsAgentToolsetDefaultConfig`

        Resolved default configuration for agent tools.

        - `Enabled bool`

        - `PermissionPolicy BetaManagedAgentsAgentToolsetDefaultConfigPermissionPolicyUnion`

          Permission policy for tool execution.

          - `type BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `type BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `type BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

    - `type BetaManagedAgentsMCPToolset`

      - `Type BetaManagedAgentsMCPToolsetType`

      - `Configs []BetaManagedAgentsMCPToolConfig`

        - `Enabled bool`

        - `Name string`

        - `PermissionPolicy BetaManagedAgentsMCPToolConfigPermissionPolicyUnion`

          Permission policy for tool execution.

          - `type BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `type BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `type BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `DefaultConfig BetaManagedAgentsMCPToolsetDefaultConfig`

        Resolved default configuration for all tools from an MCP server.

        - `Enabled bool`

        - `PermissionPolicy BetaManagedAgentsMCPToolsetDefaultConfigPermissionPolicyUnion`

          Permission policy for tool execution.

          - `type BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `type BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `type BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `MCPServerName string`

    - `type BetaManagedAgentsCustomTool`

      A custom tool as returned in API responses.

      - `Type BetaManagedAgentsCustomToolType`

      - `Description string`

      - `InputSchema BetaManagedAgentsCustomToolInputSchema`

        JSON Schema for custom tool input parameters.

        - `Type Object`

        - `Properties map[string, any] Optional`

        - `Required []string Optional`

      - `Name string`

  - `UpdatedAt Time`

    A timestamp in RFC 3339 format

    format: date-time

  - `Version int64`

    The agent's current version. Starts at 1 and increments when the agent is modified.

    format: int32

### Example

```go
package main

import (
	"context"
	"fmt"

	"github.com/anthropics/anthropic-sdk-go"
	"github.com/anthropics/anthropic-sdk-go/option"
)

func main() {
	client := anthropic.NewClient(
		option.WithAPIKey("my-anthropic-api-key"),
	)
	betaManagedAgentsAgent, err := client.Beta.Agents.Update(
		context.TODO(),
		"agent_011CZkYpogX7uDKUyvBTophP",
		anthropic.BetaAgentUpdateParams{
			Description: anthropic.String("updated"),
		},
	)
	if err != nil {
		panic(err.Error())
	}
	fmt.Printf("%+v\n", betaManagedAgentsAgent.ID)
}
```

#### Response (200)

```json
{
  "id": "agent_011CZkYpogX7uDKUyvBTophP",
  "archived_at": null,
  "created_at": "2026-03-15T10:00:00Z",
  "description": "A general-purpose starter agent.",
  "execution_identity": {
    "type": "service_account"
  },
  "mcp_servers": [
    {
      "name": "example-mcp",
      "type": "url",
      "url": "https://example-server.modelcontextprotocol.io/sse"
    }
  ],
  "metadata": {
    "foo": "bar"
  },
  "model": {
    "id": "claude-opus-5-5",
    "effort": {
      "type": "low"
    },
    "inference_geo": "inference_geo",
    "speed": "standard"
  },
  "multiagent": {
    "advisor": {
      "type": "disabled"
    },
    "subagents": {
      "inline_agents": {
        "type": "enabled"
      },
      "predefined_agents": [
        {
          "id": "agent_011CZkYqphY8vELVzwCUpqiQ",
          "type": "agent",
          "version": 1
        }
      ],
      "type": "enabled"
    },
    "type": "multiagent_20261001",
    "workflows": {
      "inline_agents": {
        "type": "enabled"
      },
      "predefined_agents": [
        {
          "id": "agent_011CZkYqphY8vELVzwCUpqiQ",
          "type": "agent",
          "version": 1
        }
      ],
      "type": "enabled"
    }
  },
  "name": "My First Agent",
  "skills": [
    {
      "skill_id": "xlsx",
      "type": "anthropic",
      "version": "1"
    },
    {
      "skill_id": "skill_011CZkZFNu9hAbo3jZPRgTmx",
      "type": "custom",
      "version": "2"
    }
  ],
  "system": "You are a general-purpose agent that can research, write code, run commands, and use connected tools to complete the user's task end to end.",
  "tools": [
    {
      "configs": [
        {
          "enabled": true,
          "name": "bash",
          "permission_policy": {
            "type": "always_allow"
          },
          "type": "bash"
        }
      ],
      "default_config": {
        "enabled": true,
        "permission_policy": {
          "type": "always_ask"
        }
      },
      "type": "agent_toolset_20260401"
    }
  ],
  "type": "agent",
  "updated_at": "2026-03-15T10:00:00Z",
  "version": 1
}
```

## Archive Agent

`client.Beta.Agents.Archive(ctx, agentID, body) (*BetaManagedAgentsAgent, error)`

**POST** `/v1/agents/{agent_id}/archive`

Archive Agent

### Parameters

- `agentID string` (path parameter)

  Unique identifier of the agent to archive.

- `body BetaAgentArchiveParams`

  - `Betas []AnthropicBeta Optional` (header parameter)

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

    - `const AnthropicBetaMessageBatches2024_09_24 AnthropicBeta = "message-batches-2024-09-24"`

    - `const AnthropicBetaPromptCaching2024_07_31 AnthropicBeta = "prompt-caching-2024-07-31"`

    - `const AnthropicBetaComputerUse2024_10_22 AnthropicBeta = "computer-use-2024-10-22"`

    - `const AnthropicBetaComputerUse2025_01_24 AnthropicBeta = "computer-use-2025-01-24"`

    - `const AnthropicBetaPDFs2024_09_25 AnthropicBeta = "pdfs-2024-09-25"`

    - `const AnthropicBetaTokenCounting2024_11_01 AnthropicBeta = "token-counting-2024-11-01"`

    - `const AnthropicBetaTokenEfficientTools2025_02_19 AnthropicBeta = "token-efficient-tools-2025-02-19"`

    - `const AnthropicBetaOutput128k2025_02_19 AnthropicBeta = "output-128k-2025-02-19"`

    - `const AnthropicBetaFilesAPI2025_04_14 AnthropicBeta = "files-api-2025-04-14"`

    - `const AnthropicBetaMCPClient2025_04_04 AnthropicBeta = "mcp-client-2025-04-04"`

    - `const AnthropicBetaMCPClient2025_11_20 AnthropicBeta = "mcp-client-2025-11-20"`

    - `const AnthropicBetaDevFullThinking2025_05_14 AnthropicBeta = "dev-full-thinking-2025-05-14"`

    - `const AnthropicBetaInterleavedThinking2025_05_14 AnthropicBeta = "interleaved-thinking-2025-05-14"`

    - `const AnthropicBetaCodeExecution2025_05_22 AnthropicBeta = "code-execution-2025-05-22"`

    - `const AnthropicBetaExtendedCacheTTL2025_04_11 AnthropicBeta = "extended-cache-ttl-2025-04-11"`

    - `const AnthropicBetaContext1m2025_08_07 AnthropicBeta = "context-1m-2025-08-07"`

    - `const AnthropicBetaContextManagement2025_06_27 AnthropicBeta = "context-management-2025-06-27"`

    - `const AnthropicBetaModelContextWindowExceeded2025_08_26 AnthropicBeta = "model-context-window-exceeded-2025-08-26"`

    - `const AnthropicBetaSkills2025_10_02 AnthropicBeta = "skills-2025-10-02"`

    - `const AnthropicBetaFastMode2026_02_01 AnthropicBeta = "fast-mode-2026-02-01"`

    - `const AnthropicBetaOutput300k2026_03_24 AnthropicBeta = "output-300k-2026-03-24"`

    - `const AnthropicBetaUserProfiles2026_03_24 AnthropicBeta = "user-profiles-2026-03-24"`

    - `const AnthropicBetaUserProfiles2026_08_18 AnthropicBeta = "user-profiles-2026-08-18"`

    - `const AnthropicBetaUserProfiles2026_09_04 AnthropicBeta = "user-profiles-2026-09-04"`

    - `const AnthropicBetaAdvisorTool2026_03_01 AnthropicBeta = "advisor-tool-2026-03-01"`

    - `const AnthropicBetaManagedAgents2026_04_01 AnthropicBeta = "managed-agents-2026-04-01"`

    - `const AnthropicBetaCacheDiagnosis2026_04_07 AnthropicBeta = "cache-diagnosis-2026-04-07"`

    - `const AnthropicBetaDreaming2026_04_21 AnthropicBeta = "dreaming-2026-04-21"`

    - `const AnthropicBetaThinkingTokenCount2026_05_13 AnthropicBeta = "thinking-token-count-2026-05-13"`

    - `const AnthropicBetaServerSideFallback2026_06_01 AnthropicBeta = "server-side-fallback-2026-06-01"`

    - `const AnthropicBetaServerSideFallback2026_07_01 AnthropicBeta = "server-side-fallback-2026-07-01"`

    - `const AnthropicBetaFallbackCredit2026_06_01 AnthropicBeta = "fallback-credit-2026-06-01"`

    - `const AnthropicBetaFallbackCredit2026_07_01 AnthropicBeta = "fallback-credit-2026-07-01"`

    - `const AnthropicBetaAgentMemory2026_07_22 AnthropicBeta = "agent-memory-2026-07-22"`

    - `const AnthropicBetaMidConversationToolChanges2026_07_01 AnthropicBeta = "mid-conversation-tool-changes-2026-07-01"`

    - `const AnthropicBetaCompact2026_01_12 AnthropicBeta = "compact-2026-01-12"`

    - `const AnthropicBetaComputerUse2025_11_24 AnthropicBeta = "computer-use-2025-11-24"`

    - `const AnthropicBetaMCPTunnels2026_06_22 AnthropicBeta = "mcp-tunnels-2026-06-22"`

    - `const AnthropicBetaStructuredOutputs2025_11_13 AnthropicBeta = "structured-outputs-2025-11-13"`

    - `const AnthropicBetaTaskBudgets2026_03_13 AnthropicBeta = "task-budgets-2026-03-13"`

    - `const AnthropicBetaThinkingDisplayUpdates2026_08_18 AnthropicBeta = "thinking-display-updates-2026-08-18"`

    - `const AnthropicBetaCEUserManagement2026_07_13 AnthropicBeta = "ce-user-management-2026-07-13"`

    - `const AnthropicBetaMidConversationOutputConfig2026_07_01 AnthropicBeta = "mid-conversation-output-config-2026-07-01"`

    - `const AnthropicBetaThinkingBindingControls2026_08_01 AnthropicBeta = "thinking-binding-controls-2026-08-01"`

    - `const AnthropicBetaMidConversationSystemClearAt2026_08_21 AnthropicBeta = "mid-conversation-system-clear-at-2026-08-21"`

    - `const AnthropicBetaCompact2026_09_04 AnthropicBeta = "compact-2026-09-04"`

    - `const AnthropicBetaInlineTools2026_09_15 AnthropicBeta = "inline-tools-2026-09-15"`

    - `const AnthropicBetaMCPClient2026_09_15 AnthropicBeta = "mcp-client-2026-09-15"`

    - `const AnthropicBetaCEPlugins2026_09_01 AnthropicBeta = "ce-plugins-2026-09-01"`

    - `const AnthropicBetaSpendLimitReads2026_09_26 AnthropicBeta = "spend-limit-reads-2026-09-26"`

    - `const AnthropicBetaTelemetryDestinations2026_08_11 AnthropicBeta = "telemetry-destinations-2026-08-11"`

  - `WorkspaceID param.Opt[string] Optional` (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

- `type BetaManagedAgentsAgent`

  A Managed Agents `agent`.

  - `Type BetaManagedAgentsAgentType`

  - `ID string`

  - `ArchivedAt Time`

    When the agent was archived. Null if not archived.

    format: date-time

  - `CreatedAt Time`

    A timestamp in RFC 3339 format

    format: date-time

  - `Description string`

  - `ExecutionIdentity BetaManagedAgentsExecutionIdentityUnion`

    Execution principal for runs of this agent. Always present; `{"type": "service_account"}` when runs carry no customer-named principal.

    - `type BetaManagedAgentsAWSRoleExecutionIdentity`

      An AWS IAM role principal as returned in API responses.

      - `Type AWSRole`

      - `RoleARN string`

        The IAM role's ARN.

    - `type BetaManagedAgentsServiceAccountExecutionIdentity`

      The Anthropic-managed service account as returned in API responses.

      - `Type ServiceAccount`

  - `MCPServers []BetaManagedAgentsMCPServerURLDefinition`

    - `Type BetaManagedAgentsMCPServerURLDefinitionType`

    - `Name string`

    - `URL string`

  - `Metadata map[string, string]`

  - `Model BetaManagedAgentsModelConfig`

    Model identifier and configuration.

    - `ID BetaManagedAgentsModel`

      The model that will power your agent.

      See [models](https://docs.anthropic.com/en/docs/models-overview) for additional details and options.

      - `const BetaManagedAgentsModelClaudeHaiku5_5 BetaManagedAgentsModel = "claude-haiku-5-5"`

        Fastest model for high-volume, real-time tasks

      - `const BetaManagedAgentsModelClaudeSonnet5_5 BetaManagedAgentsModel = "claude-sonnet-5-5"`

        Efficient model for coding and agents

      - `const BetaManagedAgentsModelClaudeOpus5_5 BetaManagedAgentsModel = "claude-opus-5-5"`

        Powerful intelligence for coding, knowledge work, and long-running agents

      - `const BetaManagedAgentsModelClaudeFable5_1 BetaManagedAgentsModel = "claude-fable-5-1"`

        Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows

      - `const BetaManagedAgentsModelClaudeSonnet5 BetaManagedAgentsModel = "claude-sonnet-5"`

        Efficient model for coding and agents

      - `const BetaManagedAgentsModelClaudeFable5 BetaManagedAgentsModel = "claude-fable-5"`

        Next generation of intelligence for the hardest knowledge work and coding problems

      - `const BetaManagedAgentsModelClaudeOpus5 BetaManagedAgentsModel = "claude-opus-5"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeOpus4_8 BetaManagedAgentsModel = "claude-opus-4-8"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeOpus4_7 BetaManagedAgentsModel = "claude-opus-4-7"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeOpus4_6 BetaManagedAgentsModel = "claude-opus-4-6"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeSonnet4_6 BetaManagedAgentsModel = "claude-sonnet-4-6"`

        Best combination of speed and intelligence

      - `const BetaManagedAgentsModelClaudeHaiku4_5 BetaManagedAgentsModel = "claude-haiku-4-5"`

      - `const BetaManagedAgentsModelClaudeHaiku4_5_20251001 BetaManagedAgentsModel = "claude-haiku-4-5-20251001"`

      - `const BetaManagedAgentsModelClaudeOpus4_5 BetaManagedAgentsModel = "claude-opus-4-5"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeOpus4_5_20251101 BetaManagedAgentsModel = "claude-opus-4-5-20251101"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeSonnet4_5 BetaManagedAgentsModel = "claude-sonnet-4-5"`

        **Deprecated**: Will reach end-of-life on November 30, 2026. Please migrate to claude-sonnet-5-5. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.

        High-performance model for agents and coding

      - `const BetaManagedAgentsModelClaudeSonnet4_5_20250929 BetaManagedAgentsModel = "claude-sonnet-4-5-20250929"`

        **Deprecated**: Will reach end-of-life on November 30, 2026. Please migrate to claude-sonnet-5-5. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.

        High-performance model for agents and coding

    - `Effort BetaManagedAgentsModelConfigEffortUnion Optional`

      How hard Claude works on each inference call. One of `low`, `medium`, `high`, `xhigh`, `max`. Always present; resolved to the per-model default at save time when not supplied.

      - `type BetaManagedAgentsEffortLow`

        Low effort. Favors latency over reasoning depth.

        - `Type BetaManagedAgentsEffortLowType`

      - `type BetaManagedAgentsEffortMedium`

        Medium effort. Balances latency and reasoning depth.

        - `Type BetaManagedAgentsEffortMediumType`

      - `type BetaManagedAgentsEffortHigh`

        High effort. Favors reasoning depth.

        - `Type BetaManagedAgentsEffortHighType`

      - `type BetaManagedAgentsEffortXhigh`

        Extra-high effort. Not all models accept this level.

        - `Type BetaManagedAgentsEffortXhighType`

      - `type BetaManagedAgentsEffortMax`

        Maximum effort. Favors reasoning depth over latency.

        - `Type BetaManagedAgentsEffortMaxType`

    - `InferenceGeo string Optional`

      Geographic region for model inference. When unset, requests fall through to the workspace's default_inference_geo.

    - `Speed BetaManagedAgentsModelConfigSpeed Optional`

      Inference speed mode. `fast` provides significantly faster output token generation at premium pricing. Defaults to `standard`. Not all models support `fast`; invalid combinations are rejected at create time.

      - `const BetaManagedAgentsModelConfigSpeedStandard BetaManagedAgentsModelConfigSpeed = "standard"`

      - `const BetaManagedAgentsModelConfigSpeedFast BetaManagedAgentsModelConfigSpeed = "fast"`

  - `Multiagent BetaManagedAgentsMultiagentUnion`

    Multiagent orchestration configuration. Null when the agent is single-threaded.

    - `type BetaManagedAgentsMultiagentCoordinator`

      Resolved coordinator topology with a concrete agent roster.

      - `Type BetaManagedAgentsMultiagentCoordinatorType`

      - `Agents []BetaManagedAgentsMultiagentCoordinatorAgentUnion`

        Agents the coordinator may spawn as session threads, each resolved to a specific version.

        - `type BetaManagedAgentsAgentReference`

          A resolved agent reference with a concrete version.

          - `Type BetaManagedAgentsAgentReferenceType`

          - `ID string`

          - `Version int64`

            format: int32

        - `type BetaManagedAgentsAdvisor`

          Platform advisor roster entry: a model the session's primary thread may consult mid-turn.

          - `Type BetaManagedAgentsAdvisorType`

          - `Model string`

            The advisor model id.

    - `type BetaManagedAgentsMultiagent20261001`

      Resolved multiagent configuration with three members, each enabled or disabled on its own.

      - `Type Multiagent20261001`

      - `Advisor BetaManagedAgentsMultiagentAdvisorUnion`

        Whether the session's primary thread can consult an advisor model.

        - `type BetaManagedAgentsMultiagentAdvisorEnabled`

          The session's primary thread can consult `model` mid-turn.

          - `Type Enabled`

          - `Model string`

            The advisor model id.

        - `type BetaManagedAgentsMultiagentAdvisorDisabled`

          The agent has no advisor.

          - `Type Disabled`

      - `Subagents BetaManagedAgentsMultiagentSubagentsUnion`

        Whether the agent can spawn session threads.

        - `type BetaManagedAgentsMultiagentSubagentsEnabled`

          The agent can spawn session threads.

          - `Type Enabled`

          - `InlineAgents BetaManagedAgentsMultiagentInlineAgentsUnion`

            Whether the agent can define inline agents, which are not saved, when it spawns session threads.

            - `type BetaManagedAgentsMultiagentInlineAgentsEnabled`

              The agent can define inline agents.

              - `Type Enabled`

            - `type BetaManagedAgentsMultiagentInlineAgentsDisabled`

              The agent cannot define inline agents.

              - `Type Disabled`

          - `PredefinedAgents []BetaManagedAgentsAgentReference`

            Predefined agents, which are saved agents that this agent can spawn as session threads, each resolved to a specific version.

            - `Type BetaManagedAgentsAgentReferenceType`

            - `ID string`

            - `Version int64`

              format: int32

        - `type BetaManagedAgentsMultiagentSubagentsDisabled`

          The agent cannot spawn session threads.

          - `Type Disabled`

      - `Workflows BetaManagedAgentsMultiagentWorkflowsUnion`

        Whether the agent can start workflow runs.

        - `type BetaManagedAgentsMultiagentWorkflowsEnabled`

          The agent can start workflow runs.

          - `Type Enabled`

          - `InlineAgents BetaManagedAgentsMultiagentInlineAgentsUnion`

            Whether a run's plan can define inline agents, which are not saved.

          - `PredefinedAgents []BetaManagedAgentsAgentReference`

            Predefined agents, which are saved agents that a run's plan can use, each resolved to a specific version.

            - `Type BetaManagedAgentsAgentReferenceType`

            - `ID string`

            - `Version int64`

              format: int32

        - `type BetaManagedAgentsMultiagentWorkflowsDisabled`

          The agent cannot start workflow runs.

          - `Type Disabled`

  - `Name string`

  - `Skills []BetaManagedAgentsAgentSkillUnion`

    - `type BetaManagedAgentsAnthropicSkill`

      A resolved Anthropic-managed skill.

      - `Type BetaManagedAgentsAnthropicSkillType`

      - `SkillID string`

      - `Version string`

    - `type BetaManagedAgentsCustomSkill`

      A resolved user-created custom skill.

      - `Type BetaManagedAgentsCustomSkillType`

      - `SkillID string`

      - `Version string`

  - `System string`

  - `Tools []BetaManagedAgentsAgentToolUnion`

    - `type BetaManagedAgentsAgentToolset20260401`

      - `Type BetaManagedAgentsAgentToolset20260401Type`

      - `Configs []BetaManagedAgentsAgentToolConfigUnion`

        - `type BetaManagedAgentsBashToolConfig`

          Configuration for the bash tool.

          - `Type Bash`

          - `Enabled bool`

          - `Name Bash`

          - `PermissionPolicy BetaManagedAgentsBashToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

              - `Type BetaManagedAgentsAlwaysAllowPolicyType`

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

              - `Type BetaManagedAgentsAlwaysAskPolicyType`

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

              - `Type Auto`

        - `type BetaManagedAgentsEditToolConfig`

          Configuration for the edit tool.

          - `Type Edit`

          - `Enabled bool`

          - `Name Edit`

          - `PermissionPolicy BetaManagedAgentsEditToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsReadToolConfig`

          Configuration for the read tool.

          - `Type Read`

          - `Enabled bool`

          - `Name Read`

          - `PermissionPolicy BetaManagedAgentsReadToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsWriteToolConfig`

          Configuration for the write tool.

          - `Type Write`

          - `Enabled bool`

          - `Name Write`

          - `PermissionPolicy BetaManagedAgentsWriteToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsGlobToolConfig`

          Configuration for the glob tool.

          - `Type Glob`

          - `Enabled bool`

          - `Name Glob`

          - `PermissionPolicy BetaManagedAgentsGlobToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsGrepToolConfig`

          Configuration for the grep tool.

          - `Type Grep`

          - `Enabled bool`

          - `Name Grep`

          - `PermissionPolicy BetaManagedAgentsGrepToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsWebFetchToolConfig`

          Configuration for the web_fetch tool.

          - `Type WebFetch`

          - `Enabled bool`

          - `Name WebFetch`

          - `PermissionPolicy BetaManagedAgentsWebFetchToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

          - `URLSources BetaManagedAgentsWebFetchURLSources`

            Which sources contribute URLs the tool may fetch, always in the object form. Null when not set, which allows every source.

            - `ClientToolResults BetaManagedAgentsWebFetchURLSourceToolFilterUnion`

              Which custom tools' results contribute URLs that may be fetched. Null when not set, which allows every custom tool's results.

              - `type BetaManagedAgentsWebFetchURLSourceAll`

                Every URL from this source may be fetched. This is the default.

                - `Type All`

              - `type BetaManagedAgentsWebFetchURLSourceNone`

                This source contributes no URLs that may be fetched.

                - `Type None`

              - `type BetaManagedAgentsWebFetchURLSourceOnly`

                Only the named tools' results contribute URLs that may be fetched.

                - `Type Only`

                - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

                  The tools whose results contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "none" to allow no tool's results.

                  - `Type ToolReference`

                    Must be "tool_reference".

                  - `Name string`

                    Name of the tool. Compared exactly, so upper and lower case letters are different.

                    minLength: 1, maxLength: 128

              - `type BetaManagedAgentsWebFetchURLSourceExcept`

                Every tool's results contribute URLs that may be fetched, except the named tools' results.

                - `Type Except`

                - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

                  The tools whose results do not contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "all" to leave out no tool's results.

                  - `Type ToolReference`

                    Must be "tool_reference".

                  - `Name string`

                    Name of the tool. Compared exactly, so upper and lower case letters are different.

                    minLength: 1, maxLength: 128

            - `ServerToolResults BetaManagedAgentsWebFetchURLSourceToolFilterUnion`

              Which of the web_search and web_fetch tools' results contribute URLs that may be fetched. Null when not set, which allows both.

            - `UserInput BetaManagedAgentsWebFetchURLSourceUserInputUnion`

              Whether URLs in the text of user messages may be fetched. Null when not set, which allows them.

              - `type BetaManagedAgentsWebFetchURLSourceAll`

                Every URL from this source may be fetched. This is the default.

              - `type BetaManagedAgentsWebFetchURLSourceNone`

                This source contributes no URLs that may be fetched.

          - `AllowedDomains []string Optional`

          - `BlockedDomains []string Optional`

          - `MaxContentTokens int64 Optional`

            format: int32

        - `type BetaManagedAgentsWebSearchToolConfig`

          Configuration for the web_search tool.

          - `Type WebSearch`

          - `Enabled bool`

          - `Name WebSearch`

          - `PermissionPolicy BetaManagedAgentsWebSearchToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

          - `AllowedDomains []string Optional`

          - `BlockedDomains []string Optional`

          - `UserLocation BetaManagedAgentsUserLocation Optional`

            Approximate user location for search result localization.

            - `Type Approximate`

              Location precision. Only "approximate" is supported.

            - `City string Optional`

              City name.

              minLength: 1, maxLength: 255

            - `Country string Optional`

              Two-letter ISO 3166-1 country code, uppercase.

            - `Region string Optional`

              Region or state name.

              minLength: 1, maxLength: 255

            - `Timezone string Optional`

              IANA timezone identifier, e.g. "America/Los_Angeles".

              minLength: 1, maxLength: 255

      - `DefaultConfig BetaManagedAgentsAgentToolsetDefaultConfig`

        Resolved default configuration for agent tools.

        - `Enabled bool`

        - `PermissionPolicy BetaManagedAgentsAgentToolsetDefaultConfigPermissionPolicyUnion`

          Permission policy for tool execution.

          - `type BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `type BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `type BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

    - `type BetaManagedAgentsMCPToolset`

      - `Type BetaManagedAgentsMCPToolsetType`

      - `Configs []BetaManagedAgentsMCPToolConfig`

        - `Enabled bool`

        - `Name string`

        - `PermissionPolicy BetaManagedAgentsMCPToolConfigPermissionPolicyUnion`

          Permission policy for tool execution.

          - `type BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `type BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `type BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `DefaultConfig BetaManagedAgentsMCPToolsetDefaultConfig`

        Resolved default configuration for all tools from an MCP server.

        - `Enabled bool`

        - `PermissionPolicy BetaManagedAgentsMCPToolsetDefaultConfigPermissionPolicyUnion`

          Permission policy for tool execution.

          - `type BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `type BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `type BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `MCPServerName string`

    - `type BetaManagedAgentsCustomTool`

      A custom tool as returned in API responses.

      - `Type BetaManagedAgentsCustomToolType`

      - `Description string`

      - `InputSchema BetaManagedAgentsCustomToolInputSchema`

        JSON Schema for custom tool input parameters.

        - `Type Object`

        - `Properties map[string, any] Optional`

        - `Required []string Optional`

      - `Name string`

  - `UpdatedAt Time`

    A timestamp in RFC 3339 format

    format: date-time

  - `Version int64`

    The agent's current version. Starts at 1 and increments when the agent is modified.

    format: int32

### Example

```go
package main

import (
	"context"
	"fmt"

	"github.com/anthropics/anthropic-sdk-go"
	"github.com/anthropics/anthropic-sdk-go/option"
)

func main() {
	client := anthropic.NewClient(
		option.WithAPIKey("my-anthropic-api-key"),
	)
	betaManagedAgentsAgent, err := client.Beta.Agents.Archive(
		context.TODO(),
		"agent_011CZkYpogX7uDKUyvBTophP",
		anthropic.BetaAgentArchiveParams{},
	)
	if err != nil {
		panic(err.Error())
	}
	fmt.Printf("%+v\n", betaManagedAgentsAgent.ID)
}
```

#### Response (200)

```json
{
  "id": "agent_011CZkYpogX7uDKUyvBTophP",
  "archived_at": null,
  "created_at": "2026-03-15T10:00:00Z",
  "description": "A general-purpose starter agent.",
  "execution_identity": {
    "type": "service_account"
  },
  "mcp_servers": [
    {
      "name": "example-mcp",
      "type": "url",
      "url": "https://example-server.modelcontextprotocol.io/sse"
    }
  ],
  "metadata": {
    "foo": "bar"
  },
  "model": {
    "id": "claude-opus-5-5",
    "effort": {
      "type": "low"
    },
    "inference_geo": "inference_geo",
    "speed": "standard"
  },
  "multiagent": {
    "advisor": {
      "type": "disabled"
    },
    "subagents": {
      "inline_agents": {
        "type": "enabled"
      },
      "predefined_agents": [
        {
          "id": "agent_011CZkYqphY8vELVzwCUpqiQ",
          "type": "agent",
          "version": 1
        }
      ],
      "type": "enabled"
    },
    "type": "multiagent_20261001",
    "workflows": {
      "inline_agents": {
        "type": "enabled"
      },
      "predefined_agents": [
        {
          "id": "agent_011CZkYqphY8vELVzwCUpqiQ",
          "type": "agent",
          "version": 1
        }
      ],
      "type": "enabled"
    }
  },
  "name": "My First Agent",
  "skills": [
    {
      "skill_id": "xlsx",
      "type": "anthropic",
      "version": "1"
    },
    {
      "skill_id": "skill_011CZkZFNu9hAbo3jZPRgTmx",
      "type": "custom",
      "version": "2"
    }
  ],
  "system": "You are a general-purpose agent that can research, write code, run commands, and use connected tools to complete the user's task end to end.",
  "tools": [
    {
      "configs": [
        {
          "enabled": true,
          "name": "bash",
          "permission_policy": {
            "type": "always_allow"
          },
          "type": "bash"
        }
      ],
      "default_config": {
        "enabled": true,
        "permission_policy": {
          "type": "always_ask"
        }
      },
      "type": "agent_toolset_20260401"
    }
  ],
  "type": "agent",
  "updated_at": "2026-03-15T10:00:00Z",
  "version": 1
}
```

## Domain types

### Beta Managed Agents Advisor

- `type BetaManagedAgentsAdvisor`

  Platform advisor roster entry: a model the session's primary thread may consult mid-turn.

  - `Type BetaManagedAgentsAdvisorType`

  - `Model string`

    The advisor model id.

### Beta Managed Agents Agent

- `type BetaManagedAgentsAgent`

  A Managed Agents `agent`.

  - `Type BetaManagedAgentsAgentType`

  - `ID string`

  - `ArchivedAt Time`

    When the agent was archived. Null if not archived.

    format: date-time

  - `CreatedAt Time`

    A timestamp in RFC 3339 format

    format: date-time

  - `Description string`

  - `ExecutionIdentity BetaManagedAgentsExecutionIdentityUnion`

    Execution principal for runs of this agent. Always present; `{"type": "service_account"}` when runs carry no customer-named principal.

    - `type BetaManagedAgentsAWSRoleExecutionIdentity`

      An AWS IAM role principal as returned in API responses.

      - `Type AWSRole`

      - `RoleARN string`

        The IAM role's ARN.

    - `type BetaManagedAgentsServiceAccountExecutionIdentity`

      The Anthropic-managed service account as returned in API responses.

      - `Type ServiceAccount`

  - `MCPServers []BetaManagedAgentsMCPServerURLDefinition`

    - `Type BetaManagedAgentsMCPServerURLDefinitionType`

    - `Name string`

    - `URL string`

  - `Metadata map[string, string]`

  - `Model BetaManagedAgentsModelConfig`

    Model identifier and configuration.

    - `ID BetaManagedAgentsModel`

      The model that will power your agent.

      See [models](https://docs.anthropic.com/en/docs/models-overview) for additional details and options.

      - `const BetaManagedAgentsModelClaudeHaiku5_5 BetaManagedAgentsModel = "claude-haiku-5-5"`

        Fastest model for high-volume, real-time tasks

      - `const BetaManagedAgentsModelClaudeSonnet5_5 BetaManagedAgentsModel = "claude-sonnet-5-5"`

        Efficient model for coding and agents

      - `const BetaManagedAgentsModelClaudeOpus5_5 BetaManagedAgentsModel = "claude-opus-5-5"`

        Powerful intelligence for coding, knowledge work, and long-running agents

      - `const BetaManagedAgentsModelClaudeFable5_1 BetaManagedAgentsModel = "claude-fable-5-1"`

        Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows

      - `const BetaManagedAgentsModelClaudeSonnet5 BetaManagedAgentsModel = "claude-sonnet-5"`

        Efficient model for coding and agents

      - `const BetaManagedAgentsModelClaudeFable5 BetaManagedAgentsModel = "claude-fable-5"`

        Next generation of intelligence for the hardest knowledge work and coding problems

      - `const BetaManagedAgentsModelClaudeOpus5 BetaManagedAgentsModel = "claude-opus-5"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeOpus4_8 BetaManagedAgentsModel = "claude-opus-4-8"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeOpus4_7 BetaManagedAgentsModel = "claude-opus-4-7"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeOpus4_6 BetaManagedAgentsModel = "claude-opus-4-6"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeSonnet4_6 BetaManagedAgentsModel = "claude-sonnet-4-6"`

        Best combination of speed and intelligence

      - `const BetaManagedAgentsModelClaudeHaiku4_5 BetaManagedAgentsModel = "claude-haiku-4-5"`

      - `const BetaManagedAgentsModelClaudeHaiku4_5_20251001 BetaManagedAgentsModel = "claude-haiku-4-5-20251001"`

      - `const BetaManagedAgentsModelClaudeOpus4_5 BetaManagedAgentsModel = "claude-opus-4-5"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeOpus4_5_20251101 BetaManagedAgentsModel = "claude-opus-4-5-20251101"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeSonnet4_5 BetaManagedAgentsModel = "claude-sonnet-4-5"`

        **Deprecated**: Will reach end-of-life on November 30, 2026. Please migrate to claude-sonnet-5-5. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.

        High-performance model for agents and coding

      - `const BetaManagedAgentsModelClaudeSonnet4_5_20250929 BetaManagedAgentsModel = "claude-sonnet-4-5-20250929"`

        **Deprecated**: Will reach end-of-life on November 30, 2026. Please migrate to claude-sonnet-5-5. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.

        High-performance model for agents and coding

    - `Effort BetaManagedAgentsModelConfigEffortUnion Optional`

      How hard Claude works on each inference call. One of `low`, `medium`, `high`, `xhigh`, `max`. Always present; resolved to the per-model default at save time when not supplied.

      - `type BetaManagedAgentsEffortLow`

        Low effort. Favors latency over reasoning depth.

        - `Type BetaManagedAgentsEffortLowType`

      - `type BetaManagedAgentsEffortMedium`

        Medium effort. Balances latency and reasoning depth.

        - `Type BetaManagedAgentsEffortMediumType`

      - `type BetaManagedAgentsEffortHigh`

        High effort. Favors reasoning depth.

        - `Type BetaManagedAgentsEffortHighType`

      - `type BetaManagedAgentsEffortXhigh`

        Extra-high effort. Not all models accept this level.

        - `Type BetaManagedAgentsEffortXhighType`

      - `type BetaManagedAgentsEffortMax`

        Maximum effort. Favors reasoning depth over latency.

        - `Type BetaManagedAgentsEffortMaxType`

    - `InferenceGeo string Optional`

      Geographic region for model inference. When unset, requests fall through to the workspace's default_inference_geo.

    - `Speed BetaManagedAgentsModelConfigSpeed Optional`

      Inference speed mode. `fast` provides significantly faster output token generation at premium pricing. Defaults to `standard`. Not all models support `fast`; invalid combinations are rejected at create time.

      - `const BetaManagedAgentsModelConfigSpeedStandard BetaManagedAgentsModelConfigSpeed = "standard"`

      - `const BetaManagedAgentsModelConfigSpeedFast BetaManagedAgentsModelConfigSpeed = "fast"`

  - `Multiagent BetaManagedAgentsMultiagentUnion`

    Multiagent orchestration configuration. Null when the agent is single-threaded.

    - `type BetaManagedAgentsMultiagentCoordinator`

      Resolved coordinator topology with a concrete agent roster.

      - `Type BetaManagedAgentsMultiagentCoordinatorType`

      - `Agents []BetaManagedAgentsMultiagentCoordinatorAgentUnion`

        Agents the coordinator may spawn as session threads, each resolved to a specific version.

        - `type BetaManagedAgentsAgentReference`

          A resolved agent reference with a concrete version.

          - `Type BetaManagedAgentsAgentReferenceType`

          - `ID string`

          - `Version int64`

            format: int32

        - `type BetaManagedAgentsAdvisor`

          Platform advisor roster entry: a model the session's primary thread may consult mid-turn.

          - `Type BetaManagedAgentsAdvisorType`

          - `Model string`

            The advisor model id.

    - `type BetaManagedAgentsMultiagent20261001`

      Resolved multiagent configuration with three members, each enabled or disabled on its own.

      - `Type Multiagent20261001`

      - `Advisor BetaManagedAgentsMultiagentAdvisorUnion`

        Whether the session's primary thread can consult an advisor model.

        - `type BetaManagedAgentsMultiagentAdvisorEnabled`

          The session's primary thread can consult `model` mid-turn.

          - `Type Enabled`

          - `Model string`

            The advisor model id.

        - `type BetaManagedAgentsMultiagentAdvisorDisabled`

          The agent has no advisor.

          - `Type Disabled`

      - `Subagents BetaManagedAgentsMultiagentSubagentsUnion`

        Whether the agent can spawn session threads.

        - `type BetaManagedAgentsMultiagentSubagentsEnabled`

          The agent can spawn session threads.

          - `Type Enabled`

          - `InlineAgents BetaManagedAgentsMultiagentInlineAgentsUnion`

            Whether the agent can define inline agents, which are not saved, when it spawns session threads.

            - `type BetaManagedAgentsMultiagentInlineAgentsEnabled`

              The agent can define inline agents.

              - `Type Enabled`

            - `type BetaManagedAgentsMultiagentInlineAgentsDisabled`

              The agent cannot define inline agents.

              - `Type Disabled`

          - `PredefinedAgents []BetaManagedAgentsAgentReference`

            Predefined agents, which are saved agents that this agent can spawn as session threads, each resolved to a specific version.

            - `Type BetaManagedAgentsAgentReferenceType`

            - `ID string`

            - `Version int64`

              format: int32

        - `type BetaManagedAgentsMultiagentSubagentsDisabled`

          The agent cannot spawn session threads.

          - `Type Disabled`

      - `Workflows BetaManagedAgentsMultiagentWorkflowsUnion`

        Whether the agent can start workflow runs.

        - `type BetaManagedAgentsMultiagentWorkflowsEnabled`

          The agent can start workflow runs.

          - `Type Enabled`

          - `InlineAgents BetaManagedAgentsMultiagentInlineAgentsUnion`

            Whether a run's plan can define inline agents, which are not saved.

          - `PredefinedAgents []BetaManagedAgentsAgentReference`

            Predefined agents, which are saved agents that a run's plan can use, each resolved to a specific version.

            - `Type BetaManagedAgentsAgentReferenceType`

            - `ID string`

            - `Version int64`

              format: int32

        - `type BetaManagedAgentsMultiagentWorkflowsDisabled`

          The agent cannot start workflow runs.

          - `Type Disabled`

  - `Name string`

  - `Skills []BetaManagedAgentsAgentSkillUnion`

    - `type BetaManagedAgentsAnthropicSkill`

      A resolved Anthropic-managed skill.

      - `Type BetaManagedAgentsAnthropicSkillType`

      - `SkillID string`

      - `Version string`

    - `type BetaManagedAgentsCustomSkill`

      A resolved user-created custom skill.

      - `Type BetaManagedAgentsCustomSkillType`

      - `SkillID string`

      - `Version string`

  - `System string`

  - `Tools []BetaManagedAgentsAgentToolUnion`

    - `type BetaManagedAgentsAgentToolset20260401`

      - `Type BetaManagedAgentsAgentToolset20260401Type`

      - `Configs []BetaManagedAgentsAgentToolConfigUnion`

        - `type BetaManagedAgentsBashToolConfig`

          Configuration for the bash tool.

          - `Type Bash`

          - `Enabled bool`

          - `Name Bash`

          - `PermissionPolicy BetaManagedAgentsBashToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

              - `Type BetaManagedAgentsAlwaysAllowPolicyType`

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

              - `Type BetaManagedAgentsAlwaysAskPolicyType`

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

              - `Type Auto`

        - `type BetaManagedAgentsEditToolConfig`

          Configuration for the edit tool.

          - `Type Edit`

          - `Enabled bool`

          - `Name Edit`

          - `PermissionPolicy BetaManagedAgentsEditToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsReadToolConfig`

          Configuration for the read tool.

          - `Type Read`

          - `Enabled bool`

          - `Name Read`

          - `PermissionPolicy BetaManagedAgentsReadToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsWriteToolConfig`

          Configuration for the write tool.

          - `Type Write`

          - `Enabled bool`

          - `Name Write`

          - `PermissionPolicy BetaManagedAgentsWriteToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsGlobToolConfig`

          Configuration for the glob tool.

          - `Type Glob`

          - `Enabled bool`

          - `Name Glob`

          - `PermissionPolicy BetaManagedAgentsGlobToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsGrepToolConfig`

          Configuration for the grep tool.

          - `Type Grep`

          - `Enabled bool`

          - `Name Grep`

          - `PermissionPolicy BetaManagedAgentsGrepToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsWebFetchToolConfig`

          Configuration for the web_fetch tool.

          - `Type WebFetch`

          - `Enabled bool`

          - `Name WebFetch`

          - `PermissionPolicy BetaManagedAgentsWebFetchToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

          - `URLSources BetaManagedAgentsWebFetchURLSources`

            Which sources contribute URLs the tool may fetch, always in the object form. Null when not set, which allows every source.

            - `ClientToolResults BetaManagedAgentsWebFetchURLSourceToolFilterUnion`

              Which custom tools' results contribute URLs that may be fetched. Null when not set, which allows every custom tool's results.

              - `type BetaManagedAgentsWebFetchURLSourceAll`

                Every URL from this source may be fetched. This is the default.

                - `Type All`

              - `type BetaManagedAgentsWebFetchURLSourceNone`

                This source contributes no URLs that may be fetched.

                - `Type None`

              - `type BetaManagedAgentsWebFetchURLSourceOnly`

                Only the named tools' results contribute URLs that may be fetched.

                - `Type Only`

                - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

                  The tools whose results contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "none" to allow no tool's results.

                  - `Type ToolReference`

                    Must be "tool_reference".

                  - `Name string`

                    Name of the tool. Compared exactly, so upper and lower case letters are different.

                    minLength: 1, maxLength: 128

              - `type BetaManagedAgentsWebFetchURLSourceExcept`

                Every tool's results contribute URLs that may be fetched, except the named tools' results.

                - `Type Except`

                - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

                  The tools whose results do not contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "all" to leave out no tool's results.

                  - `Type ToolReference`

                    Must be "tool_reference".

                  - `Name string`

                    Name of the tool. Compared exactly, so upper and lower case letters are different.

                    minLength: 1, maxLength: 128

            - `ServerToolResults BetaManagedAgentsWebFetchURLSourceToolFilterUnion`

              Which of the web_search and web_fetch tools' results contribute URLs that may be fetched. Null when not set, which allows both.

            - `UserInput BetaManagedAgentsWebFetchURLSourceUserInputUnion`

              Whether URLs in the text of user messages may be fetched. Null when not set, which allows them.

              - `type BetaManagedAgentsWebFetchURLSourceAll`

                Every URL from this source may be fetched. This is the default.

              - `type BetaManagedAgentsWebFetchURLSourceNone`

                This source contributes no URLs that may be fetched.

          - `AllowedDomains []string Optional`

          - `BlockedDomains []string Optional`

          - `MaxContentTokens int64 Optional`

            format: int32

        - `type BetaManagedAgentsWebSearchToolConfig`

          Configuration for the web_search tool.

          - `Type WebSearch`

          - `Enabled bool`

          - `Name WebSearch`

          - `PermissionPolicy BetaManagedAgentsWebSearchToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

          - `AllowedDomains []string Optional`

          - `BlockedDomains []string Optional`

          - `UserLocation BetaManagedAgentsUserLocation Optional`

            Approximate user location for search result localization.

            - `Type Approximate`

              Location precision. Only "approximate" is supported.

            - `City string Optional`

              City name.

              minLength: 1, maxLength: 255

            - `Country string Optional`

              Two-letter ISO 3166-1 country code, uppercase.

            - `Region string Optional`

              Region or state name.

              minLength: 1, maxLength: 255

            - `Timezone string Optional`

              IANA timezone identifier, e.g. "America/Los_Angeles".

              minLength: 1, maxLength: 255

      - `DefaultConfig BetaManagedAgentsAgentToolsetDefaultConfig`

        Resolved default configuration for agent tools.

        - `Enabled bool`

        - `PermissionPolicy BetaManagedAgentsAgentToolsetDefaultConfigPermissionPolicyUnion`

          Permission policy for tool execution.

          - `type BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `type BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `type BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

    - `type BetaManagedAgentsMCPToolset`

      - `Type BetaManagedAgentsMCPToolsetType`

      - `Configs []BetaManagedAgentsMCPToolConfig`

        - `Enabled bool`

        - `Name string`

        - `PermissionPolicy BetaManagedAgentsMCPToolConfigPermissionPolicyUnion`

          Permission policy for tool execution.

          - `type BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `type BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `type BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `DefaultConfig BetaManagedAgentsMCPToolsetDefaultConfig`

        Resolved default configuration for all tools from an MCP server.

        - `Enabled bool`

        - `PermissionPolicy BetaManagedAgentsMCPToolsetDefaultConfigPermissionPolicyUnion`

          Permission policy for tool execution.

          - `type BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `type BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `type BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `MCPServerName string`

    - `type BetaManagedAgentsCustomTool`

      A custom tool as returned in API responses.

      - `Type BetaManagedAgentsCustomToolType`

      - `Description string`

      - `InputSchema BetaManagedAgentsCustomToolInputSchema`

        JSON Schema for custom tool input parameters.

        - `Type Object`

        - `Properties map[string, any] Optional`

        - `Required []string Optional`

      - `Name string`

  - `UpdatedAt Time`

    A timestamp in RFC 3339 format

    format: date-time

  - `Version int64`

    The agent's current version. Starts at 1 and increments when the agent is modified.

    format: int32

### Beta Managed Agents Agent Reference

- `type BetaManagedAgentsAgentReference`

  A resolved agent reference with a concrete version.

  - `Type BetaManagedAgentsAgentReferenceType`

  - `ID string`

  - `Version int64`

    format: int32

### Beta Managed Agents Agent Tool Config

- `type BetaManagedAgentsAgentToolConfigUnion interface{…}`

  Configuration for a specific agent tool.

  - `type BetaManagedAgentsBashToolConfig`

    Configuration for the bash tool.

    - `Type Bash`

    - `Enabled bool`

    - `Name Bash`

    - `PermissionPolicy BetaManagedAgentsBashToolConfigPermissionPolicyUnion`

      Permission policy for tool execution.

      - `type BetaManagedAgentsAlwaysAllowPolicy`

        Tool calls are automatically approved without user confirmation.

        - `Type BetaManagedAgentsAlwaysAllowPolicyType`

      - `type BetaManagedAgentsAlwaysAskPolicy`

        Tool calls require user confirmation before execution.

        - `Type BetaManagedAgentsAlwaysAskPolicyType`

      - `type BetaManagedAgentsAutoPolicy`

        The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `Type Auto`

  - `type BetaManagedAgentsEditToolConfig`

    Configuration for the edit tool.

    - `Type Edit`

    - `Enabled bool`

    - `Name Edit`

    - `PermissionPolicy BetaManagedAgentsEditToolConfigPermissionPolicyUnion`

      Permission policy for tool execution.

      - `type BetaManagedAgentsAlwaysAllowPolicy`

        Tool calls are automatically approved without user confirmation.

      - `type BetaManagedAgentsAlwaysAskPolicy`

        Tool calls require user confirmation before execution.

      - `type BetaManagedAgentsAutoPolicy`

        The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

  - `type BetaManagedAgentsReadToolConfig`

    Configuration for the read tool.

    - `Type Read`

    - `Enabled bool`

    - `Name Read`

    - `PermissionPolicy BetaManagedAgentsReadToolConfigPermissionPolicyUnion`

      Permission policy for tool execution.

      - `type BetaManagedAgentsAlwaysAllowPolicy`

        Tool calls are automatically approved without user confirmation.

      - `type BetaManagedAgentsAlwaysAskPolicy`

        Tool calls require user confirmation before execution.

      - `type BetaManagedAgentsAutoPolicy`

        The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

  - `type BetaManagedAgentsWriteToolConfig`

    Configuration for the write tool.

    - `Type Write`

    - `Enabled bool`

    - `Name Write`

    - `PermissionPolicy BetaManagedAgentsWriteToolConfigPermissionPolicyUnion`

      Permission policy for tool execution.

      - `type BetaManagedAgentsAlwaysAllowPolicy`

        Tool calls are automatically approved without user confirmation.

      - `type BetaManagedAgentsAlwaysAskPolicy`

        Tool calls require user confirmation before execution.

      - `type BetaManagedAgentsAutoPolicy`

        The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

  - `type BetaManagedAgentsGlobToolConfig`

    Configuration for the glob tool.

    - `Type Glob`

    - `Enabled bool`

    - `Name Glob`

    - `PermissionPolicy BetaManagedAgentsGlobToolConfigPermissionPolicyUnion`

      Permission policy for tool execution.

      - `type BetaManagedAgentsAlwaysAllowPolicy`

        Tool calls are automatically approved without user confirmation.

      - `type BetaManagedAgentsAlwaysAskPolicy`

        Tool calls require user confirmation before execution.

      - `type BetaManagedAgentsAutoPolicy`

        The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

  - `type BetaManagedAgentsGrepToolConfig`

    Configuration for the grep tool.

    - `Type Grep`

    - `Enabled bool`

    - `Name Grep`

    - `PermissionPolicy BetaManagedAgentsGrepToolConfigPermissionPolicyUnion`

      Permission policy for tool execution.

      - `type BetaManagedAgentsAlwaysAllowPolicy`

        Tool calls are automatically approved without user confirmation.

      - `type BetaManagedAgentsAlwaysAskPolicy`

        Tool calls require user confirmation before execution.

      - `type BetaManagedAgentsAutoPolicy`

        The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

  - `type BetaManagedAgentsWebFetchToolConfig`

    Configuration for the web_fetch tool.

    - `Type WebFetch`

    - `Enabled bool`

    - `Name WebFetch`

    - `PermissionPolicy BetaManagedAgentsWebFetchToolConfigPermissionPolicyUnion`

      Permission policy for tool execution.

      - `type BetaManagedAgentsAlwaysAllowPolicy`

        Tool calls are automatically approved without user confirmation.

      - `type BetaManagedAgentsAlwaysAskPolicy`

        Tool calls require user confirmation before execution.

      - `type BetaManagedAgentsAutoPolicy`

        The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

    - `URLSources BetaManagedAgentsWebFetchURLSources`

      Which sources contribute URLs the tool may fetch, always in the object form. Null when not set, which allows every source.

      - `ClientToolResults BetaManagedAgentsWebFetchURLSourceToolFilterUnion`

        Which custom tools' results contribute URLs that may be fetched. Null when not set, which allows every custom tool's results.

        - `type BetaManagedAgentsWebFetchURLSourceAll`

          Every URL from this source may be fetched. This is the default.

          - `Type All`

        - `type BetaManagedAgentsWebFetchURLSourceNone`

          This source contributes no URLs that may be fetched.

          - `Type None`

        - `type BetaManagedAgentsWebFetchURLSourceOnly`

          Only the named tools' results contribute URLs that may be fetched.

          - `Type Only`

          - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

            The tools whose results contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "none" to allow no tool's results.

            - `Type ToolReference`

              Must be "tool_reference".

            - `Name string`

              Name of the tool. Compared exactly, so upper and lower case letters are different.

              minLength: 1, maxLength: 128

        - `type BetaManagedAgentsWebFetchURLSourceExcept`

          Every tool's results contribute URLs that may be fetched, except the named tools' results.

          - `Type Except`

          - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

            The tools whose results do not contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "all" to leave out no tool's results.

            - `Type ToolReference`

              Must be "tool_reference".

            - `Name string`

              Name of the tool. Compared exactly, so upper and lower case letters are different.

              minLength: 1, maxLength: 128

      - `ServerToolResults BetaManagedAgentsWebFetchURLSourceToolFilterUnion`

        Which of the web_search and web_fetch tools' results contribute URLs that may be fetched. Null when not set, which allows both.

      - `UserInput BetaManagedAgentsWebFetchURLSourceUserInputUnion`

        Whether URLs in the text of user messages may be fetched. Null when not set, which allows them.

        - `type BetaManagedAgentsWebFetchURLSourceAll`

          Every URL from this source may be fetched. This is the default.

        - `type BetaManagedAgentsWebFetchURLSourceNone`

          This source contributes no URLs that may be fetched.

    - `AllowedDomains []string Optional`

    - `BlockedDomains []string Optional`

    - `MaxContentTokens int64 Optional`

      format: int32

  - `type BetaManagedAgentsWebSearchToolConfig`

    Configuration for the web_search tool.

    - `Type WebSearch`

    - `Enabled bool`

    - `Name WebSearch`

    - `PermissionPolicy BetaManagedAgentsWebSearchToolConfigPermissionPolicyUnion`

      Permission policy for tool execution.

      - `type BetaManagedAgentsAlwaysAllowPolicy`

        Tool calls are automatically approved without user confirmation.

      - `type BetaManagedAgentsAlwaysAskPolicy`

        Tool calls require user confirmation before execution.

      - `type BetaManagedAgentsAutoPolicy`

        The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

    - `AllowedDomains []string Optional`

    - `BlockedDomains []string Optional`

    - `UserLocation BetaManagedAgentsUserLocation Optional`

      Approximate user location for search result localization.

      - `Type Approximate`

        Location precision. Only "approximate" is supported.

      - `City string Optional`

        City name.

        minLength: 1, maxLength: 255

      - `Country string Optional`

        Two-letter ISO 3166-1 country code, uppercase.

      - `Region string Optional`

        Region or state name.

        minLength: 1, maxLength: 255

      - `Timezone string Optional`

        IANA timezone identifier, e.g. "America/Los_Angeles".

        minLength: 1, maxLength: 255

### Beta Managed Agents Agent Tool Config Params

- `type BetaManagedAgentsAgentToolConfigParamsUnion interface{…}`

  Configuration override for a specific tool within a toolset.

  - `type BetaManagedAgentsBashToolConfigParams`

    Configuration override for the bash tool.

    - `Type BetaManagedAgentsBashToolConfigParamsType Optional`

    - `Name Bash`

      Must be "bash".

    - `Enabled bool Optional`

      Whether this tool is enabled and available to Claude. Overrides the default_config setting.

    - `PermissionPolicy BetaManagedAgentsBashToolConfigParamsPermissionPolicyUnion Optional`

      Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

      - `type BetaManagedAgentsAlwaysAllowPolicy`

        Tool calls are automatically approved without user confirmation.

        - `Type BetaManagedAgentsAlwaysAllowPolicyType`

      - `type BetaManagedAgentsAlwaysAskPolicy`

        Tool calls require user confirmation before execution.

        - `Type BetaManagedAgentsAlwaysAskPolicyType`

      - `type BetaManagedAgentsAutoPolicy`

        The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `Type Auto`

  - `type BetaManagedAgentsEditToolConfigParams`

    Configuration override for the edit tool.

    - `Type BetaManagedAgentsEditToolConfigParamsType Optional`

    - `Name Edit`

      Must be "edit".

    - `Enabled bool Optional`

      Whether this tool is enabled and available to Claude. Overrides the default_config setting.

    - `PermissionPolicy BetaManagedAgentsEditToolConfigParamsPermissionPolicyUnion Optional`

      Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

      - `type BetaManagedAgentsAlwaysAllowPolicy`

        Tool calls are automatically approved without user confirmation.

      - `type BetaManagedAgentsAlwaysAskPolicy`

        Tool calls require user confirmation before execution.

      - `type BetaManagedAgentsAutoPolicy`

        The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

  - `type BetaManagedAgentsReadToolConfigParams`

    Configuration override for the read tool.

    - `Type BetaManagedAgentsReadToolConfigParamsType Optional`

    - `Name Read`

      Must be "read".

    - `Enabled bool Optional`

      Whether this tool is enabled and available to Claude. Overrides the default_config setting.

    - `PermissionPolicy BetaManagedAgentsReadToolConfigParamsPermissionPolicyUnion Optional`

      Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

      - `type BetaManagedAgentsAlwaysAllowPolicy`

        Tool calls are automatically approved without user confirmation.

      - `type BetaManagedAgentsAlwaysAskPolicy`

        Tool calls require user confirmation before execution.

      - `type BetaManagedAgentsAutoPolicy`

        The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

  - `type BetaManagedAgentsWriteToolConfigParams`

    Configuration override for the write tool.

    - `Type BetaManagedAgentsWriteToolConfigParamsType Optional`

    - `Name Write`

      Must be "write".

    - `Enabled bool Optional`

      Whether this tool is enabled and available to Claude. Overrides the default_config setting.

    - `PermissionPolicy BetaManagedAgentsWriteToolConfigParamsPermissionPolicyUnion Optional`

      Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

      - `type BetaManagedAgentsAlwaysAllowPolicy`

        Tool calls are automatically approved without user confirmation.

      - `type BetaManagedAgentsAlwaysAskPolicy`

        Tool calls require user confirmation before execution.

      - `type BetaManagedAgentsAutoPolicy`

        The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

  - `type BetaManagedAgentsGlobToolConfigParams`

    Configuration override for the glob tool.

    - `Type BetaManagedAgentsGlobToolConfigParamsType Optional`

    - `Name Glob`

      Must be "glob".

    - `Enabled bool Optional`

      Whether this tool is enabled and available to Claude. Overrides the default_config setting.

    - `PermissionPolicy BetaManagedAgentsGlobToolConfigParamsPermissionPolicyUnion Optional`

      Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

      - `type BetaManagedAgentsAlwaysAllowPolicy`

        Tool calls are automatically approved without user confirmation.

      - `type BetaManagedAgentsAlwaysAskPolicy`

        Tool calls require user confirmation before execution.

      - `type BetaManagedAgentsAutoPolicy`

        The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

  - `type BetaManagedAgentsGrepToolConfigParams`

    Configuration override for the grep tool.

    - `Type BetaManagedAgentsGrepToolConfigParamsType Optional`

    - `Name Grep`

      Must be "grep".

    - `Enabled bool Optional`

      Whether this tool is enabled and available to Claude. Overrides the default_config setting.

    - `PermissionPolicy BetaManagedAgentsGrepToolConfigParamsPermissionPolicyUnion Optional`

      Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

      - `type BetaManagedAgentsAlwaysAllowPolicy`

        Tool calls are automatically approved without user confirmation.

      - `type BetaManagedAgentsAlwaysAskPolicy`

        Tool calls require user confirmation before execution.

      - `type BetaManagedAgentsAutoPolicy`

        The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

  - `type BetaManagedAgentsWebFetchToolConfigParams`

    Configuration override for the web_fetch tool.

    - `Type BetaManagedAgentsWebFetchToolConfigParamsType Optional`

    - `Name WebFetch`

      Must be "web_fetch".

    - `AllowedDomains []string Optional`

      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.

    - `BlockedDomains []string Optional`

      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.

    - `Enabled bool Optional`

      Whether this tool is enabled and available to Claude. Overrides the default_config setting.

    - `MaxContentTokens int64 Optional`

      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

    - `PermissionPolicy BetaManagedAgentsWebFetchToolConfigParamsPermissionPolicyUnion Optional`

      Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

      - `type BetaManagedAgentsAlwaysAllowPolicy`

        Tool calls are automatically approved without user confirmation.

      - `type BetaManagedAgentsAlwaysAskPolicy`

        Tool calls require user confirmation before execution.

      - `type BetaManagedAgentsAutoPolicy`

        The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

    - `URLSources BetaManagedAgentsWebFetchURLSourcesParams Optional`

      Which sources contribute URLs the tool may fetch. Omit to allow every source.

      - `ClientToolResults BetaManagedAgentsWebFetchURLSourceToolFilterParamsUnion Optional`

        Which custom tools' results contribute URLs that may be fetched: "all" (the default), "none", or an only or except list. Each name in a list must be a custom tool in the same tools array.

        - `type BetaManagedAgentsWebFetchURLSourceShorthand string`

          String form of a url_sources value that has no field other than its type: "all" means {"type": "all"} and "none" means {"type": "none"}.

          - `const BetaManagedAgentsWebFetchURLSourceShorthandAll BetaManagedAgentsWebFetchURLSourceShorthand = "all"`

          - `const BetaManagedAgentsWebFetchURLSourceShorthandNone BetaManagedAgentsWebFetchURLSourceShorthand = "none"`

        - `type BetaManagedAgentsWebFetchURLSourceToolFilterUnion interface{…}`

          Which tools' results contribute URLs that may be fetched.

          - `type BetaManagedAgentsWebFetchURLSourceAll`

            Every URL from this source may be fetched. This is the default.

            - `Type All`

          - `type BetaManagedAgentsWebFetchURLSourceNone`

            This source contributes no URLs that may be fetched.

            - `Type None`

          - `type BetaManagedAgentsWebFetchURLSourceOnly`

            Only the named tools' results contribute URLs that may be fetched.

            - `Type Only`

            - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

              The tools whose results contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "none" to allow no tool's results.

              - `Type ToolReference`

                Must be "tool_reference".

              - `Name string`

                Name of the tool. Compared exactly, so upper and lower case letters are different.

                minLength: 1, maxLength: 128

          - `type BetaManagedAgentsWebFetchURLSourceExcept`

            Every tool's results contribute URLs that may be fetched, except the named tools' results.

            - `Type Except`

            - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

              The tools whose results do not contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "all" to leave out no tool's results.

              - `Type ToolReference`

                Must be "tool_reference".

              - `Name string`

                Name of the tool. Compared exactly, so upper and lower case letters are different.

                minLength: 1, maxLength: 128

      - `ServerToolResults BetaManagedAgentsWebFetchURLSourceToolFilterParamsUnion Optional`

        Which of the web_search and web_fetch tools' results contribute URLs that may be fetched: "all" (the default), "none", or an only or except list. Each name in a list must be "web_search" or "web_fetch".

      - `UserInput BetaManagedAgentsWebFetchURLSourceUserInputParamsUnion Optional`

        Whether URLs in the text of user messages may be fetched: "all" (the default) or "none".

        - `type BetaManagedAgentsWebFetchURLSourceShorthand string`

          String form of a url_sources value that has no field other than its type: "all" means {"type": "all"} and "none" means {"type": "none"}.

        - `type BetaManagedAgentsWebFetchURLSourceUserInputUnion interface{…}`

          Whether URLs in the text of user messages may be fetched.

          - `type BetaManagedAgentsWebFetchURLSourceAll`

            Every URL from this source may be fetched. This is the default.

          - `type BetaManagedAgentsWebFetchURLSourceNone`

            This source contributes no URLs that may be fetched.

  - `type BetaManagedAgentsWebSearchToolConfigParams`

    Configuration override for the web_search tool.

    - `Type BetaManagedAgentsWebSearchToolConfigParamsType Optional`

    - `Name WebSearch`

      Must be "web_search".

    - `AllowedDomains []string Optional`

      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.

    - `BlockedDomains []string Optional`

      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.

    - `Enabled bool Optional`

      Whether this tool is enabled and available to Claude. Overrides the default_config setting.

    - `PermissionPolicy BetaManagedAgentsWebSearchToolConfigParamsPermissionPolicyUnion Optional`

      Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

      - `type BetaManagedAgentsAlwaysAllowPolicy`

        Tool calls are automatically approved without user confirmation.

      - `type BetaManagedAgentsAlwaysAskPolicy`

        Tool calls require user confirmation before execution.

      - `type BetaManagedAgentsAutoPolicy`

        The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

    - `UserLocation BetaManagedAgentsUserLocationParam Optional`

      Approximate user location for search result localization.

      - `Type Approximate`

        Location precision. Only "approximate" is supported.

      - `City string Optional`

        City name.

        minLength: 1, maxLength: 255

      - `Country string Optional`

        Two-letter ISO 3166-1 country code, uppercase.

      - `Region string Optional`

        Region or state name.

        minLength: 1, maxLength: 255

      - `Timezone string Optional`

        IANA timezone identifier, e.g. "America/Los_Angeles".

        minLength: 1, maxLength: 255

### Beta Managed Agents Agent Toolset Default Config

- `type BetaManagedAgentsAgentToolsetDefaultConfig`

  Resolved default configuration for agent tools.

  - `Enabled bool`

  - `PermissionPolicy BetaManagedAgentsAgentToolsetDefaultConfigPermissionPolicyUnion`

    Permission policy for tool execution.

    - `type BetaManagedAgentsAlwaysAllowPolicy`

      Tool calls are automatically approved without user confirmation.

      - `Type BetaManagedAgentsAlwaysAllowPolicyType`

    - `type BetaManagedAgentsAlwaysAskPolicy`

      Tool calls require user confirmation before execution.

      - `Type BetaManagedAgentsAlwaysAskPolicyType`

    - `type BetaManagedAgentsAutoPolicy`

      The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `Type Auto`

### Beta Managed Agents Agent Toolset Default Config Params

- `type BetaManagedAgentsAgentToolsetDefaultConfigParams`

  Default configuration for all tools in a toolset.

  - `Enabled bool Optional`

    Whether tools are enabled and available to Claude by default. Defaults to true if not specified.

  - `PermissionPolicy BetaManagedAgentsAgentToolsetDefaultConfigParamsPermissionPolicyUnion Optional`

    Default permission policy for tools. Controls whether tool calls are auto-approved or require confirmation.

    - `type BetaManagedAgentsAlwaysAllowPolicy`

      Tool calls are automatically approved without user confirmation.

      - `Type BetaManagedAgentsAlwaysAllowPolicyType`

    - `type BetaManagedAgentsAlwaysAskPolicy`

      Tool calls require user confirmation before execution.

      - `Type BetaManagedAgentsAlwaysAskPolicyType`

    - `type BetaManagedAgentsAutoPolicy`

      The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `Type Auto`

### Beta Managed Agents Agent Toolset20260401

- `type BetaManagedAgentsAgentToolset20260401`

  - `Type BetaManagedAgentsAgentToolset20260401Type`

  - `Configs []BetaManagedAgentsAgentToolConfigUnion`

    - `type BetaManagedAgentsBashToolConfig`

      Configuration for the bash tool.

      - `Type Bash`

      - `Enabled bool`

      - `Name Bash`

      - `PermissionPolicy BetaManagedAgentsBashToolConfigPermissionPolicyUnion`

        Permission policy for tool execution.

        - `type BetaManagedAgentsAlwaysAllowPolicy`

          Tool calls are automatically approved without user confirmation.

          - `Type BetaManagedAgentsAlwaysAllowPolicyType`

        - `type BetaManagedAgentsAlwaysAskPolicy`

          Tool calls require user confirmation before execution.

          - `Type BetaManagedAgentsAlwaysAskPolicyType`

        - `type BetaManagedAgentsAutoPolicy`

          The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

          - `Type Auto`

    - `type BetaManagedAgentsEditToolConfig`

      Configuration for the edit tool.

      - `Type Edit`

      - `Enabled bool`

      - `Name Edit`

      - `PermissionPolicy BetaManagedAgentsEditToolConfigPermissionPolicyUnion`

        Permission policy for tool execution.

        - `type BetaManagedAgentsAlwaysAllowPolicy`

          Tool calls are automatically approved without user confirmation.

        - `type BetaManagedAgentsAlwaysAskPolicy`

          Tool calls require user confirmation before execution.

        - `type BetaManagedAgentsAutoPolicy`

          The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

    - `type BetaManagedAgentsReadToolConfig`

      Configuration for the read tool.

      - `Type Read`

      - `Enabled bool`

      - `Name Read`

      - `PermissionPolicy BetaManagedAgentsReadToolConfigPermissionPolicyUnion`

        Permission policy for tool execution.

        - `type BetaManagedAgentsAlwaysAllowPolicy`

          Tool calls are automatically approved without user confirmation.

        - `type BetaManagedAgentsAlwaysAskPolicy`

          Tool calls require user confirmation before execution.

        - `type BetaManagedAgentsAutoPolicy`

          The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

    - `type BetaManagedAgentsWriteToolConfig`

      Configuration for the write tool.

      - `Type Write`

      - `Enabled bool`

      - `Name Write`

      - `PermissionPolicy BetaManagedAgentsWriteToolConfigPermissionPolicyUnion`

        Permission policy for tool execution.

        - `type BetaManagedAgentsAlwaysAllowPolicy`

          Tool calls are automatically approved without user confirmation.

        - `type BetaManagedAgentsAlwaysAskPolicy`

          Tool calls require user confirmation before execution.

        - `type BetaManagedAgentsAutoPolicy`

          The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

    - `type BetaManagedAgentsGlobToolConfig`

      Configuration for the glob tool.

      - `Type Glob`

      - `Enabled bool`

      - `Name Glob`

      - `PermissionPolicy BetaManagedAgentsGlobToolConfigPermissionPolicyUnion`

        Permission policy for tool execution.

        - `type BetaManagedAgentsAlwaysAllowPolicy`

          Tool calls are automatically approved without user confirmation.

        - `type BetaManagedAgentsAlwaysAskPolicy`

          Tool calls require user confirmation before execution.

        - `type BetaManagedAgentsAutoPolicy`

          The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

    - `type BetaManagedAgentsGrepToolConfig`

      Configuration for the grep tool.

      - `Type Grep`

      - `Enabled bool`

      - `Name Grep`

      - `PermissionPolicy BetaManagedAgentsGrepToolConfigPermissionPolicyUnion`

        Permission policy for tool execution.

        - `type BetaManagedAgentsAlwaysAllowPolicy`

          Tool calls are automatically approved without user confirmation.

        - `type BetaManagedAgentsAlwaysAskPolicy`

          Tool calls require user confirmation before execution.

        - `type BetaManagedAgentsAutoPolicy`

          The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

    - `type BetaManagedAgentsWebFetchToolConfig`

      Configuration for the web_fetch tool.

      - `Type WebFetch`

      - `Enabled bool`

      - `Name WebFetch`

      - `PermissionPolicy BetaManagedAgentsWebFetchToolConfigPermissionPolicyUnion`

        Permission policy for tool execution.

        - `type BetaManagedAgentsAlwaysAllowPolicy`

          Tool calls are automatically approved without user confirmation.

        - `type BetaManagedAgentsAlwaysAskPolicy`

          Tool calls require user confirmation before execution.

        - `type BetaManagedAgentsAutoPolicy`

          The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `URLSources BetaManagedAgentsWebFetchURLSources`

        Which sources contribute URLs the tool may fetch, always in the object form. Null when not set, which allows every source.

        - `ClientToolResults BetaManagedAgentsWebFetchURLSourceToolFilterUnion`

          Which custom tools' results contribute URLs that may be fetched. Null when not set, which allows every custom tool's results.

          - `type BetaManagedAgentsWebFetchURLSourceAll`

            Every URL from this source may be fetched. This is the default.

            - `Type All`

          - `type BetaManagedAgentsWebFetchURLSourceNone`

            This source contributes no URLs that may be fetched.

            - `Type None`

          - `type BetaManagedAgentsWebFetchURLSourceOnly`

            Only the named tools' results contribute URLs that may be fetched.

            - `Type Only`

            - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

              The tools whose results contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "none" to allow no tool's results.

              - `Type ToolReference`

                Must be "tool_reference".

              - `Name string`

                Name of the tool. Compared exactly, so upper and lower case letters are different.

                minLength: 1, maxLength: 128

          - `type BetaManagedAgentsWebFetchURLSourceExcept`

            Every tool's results contribute URLs that may be fetched, except the named tools' results.

            - `Type Except`

            - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

              The tools whose results do not contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "all" to leave out no tool's results.

              - `Type ToolReference`

                Must be "tool_reference".

              - `Name string`

                Name of the tool. Compared exactly, so upper and lower case letters are different.

                minLength: 1, maxLength: 128

        - `ServerToolResults BetaManagedAgentsWebFetchURLSourceToolFilterUnion`

          Which of the web_search and web_fetch tools' results contribute URLs that may be fetched. Null when not set, which allows both.

        - `UserInput BetaManagedAgentsWebFetchURLSourceUserInputUnion`

          Whether URLs in the text of user messages may be fetched. Null when not set, which allows them.

          - `type BetaManagedAgentsWebFetchURLSourceAll`

            Every URL from this source may be fetched. This is the default.

          - `type BetaManagedAgentsWebFetchURLSourceNone`

            This source contributes no URLs that may be fetched.

      - `AllowedDomains []string Optional`

      - `BlockedDomains []string Optional`

      - `MaxContentTokens int64 Optional`

        format: int32

    - `type BetaManagedAgentsWebSearchToolConfig`

      Configuration for the web_search tool.

      - `Type WebSearch`

      - `Enabled bool`

      - `Name WebSearch`

      - `PermissionPolicy BetaManagedAgentsWebSearchToolConfigPermissionPolicyUnion`

        Permission policy for tool execution.

        - `type BetaManagedAgentsAlwaysAllowPolicy`

          Tool calls are automatically approved without user confirmation.

        - `type BetaManagedAgentsAlwaysAskPolicy`

          Tool calls require user confirmation before execution.

        - `type BetaManagedAgentsAutoPolicy`

          The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `AllowedDomains []string Optional`

      - `BlockedDomains []string Optional`

      - `UserLocation BetaManagedAgentsUserLocation Optional`

        Approximate user location for search result localization.

        - `Type Approximate`

          Location precision. Only "approximate" is supported.

        - `City string Optional`

          City name.

          minLength: 1, maxLength: 255

        - `Country string Optional`

          Two-letter ISO 3166-1 country code, uppercase.

        - `Region string Optional`

          Region or state name.

          minLength: 1, maxLength: 255

        - `Timezone string Optional`

          IANA timezone identifier, e.g. "America/Los_Angeles".

          minLength: 1, maxLength: 255

  - `DefaultConfig BetaManagedAgentsAgentToolsetDefaultConfig`

    Resolved default configuration for agent tools.

    - `Enabled bool`

    - `PermissionPolicy BetaManagedAgentsAgentToolsetDefaultConfigPermissionPolicyUnion`

      Permission policy for tool execution.

      - `type BetaManagedAgentsAlwaysAllowPolicy`

        Tool calls are automatically approved without user confirmation.

      - `type BetaManagedAgentsAlwaysAskPolicy`

        Tool calls require user confirmation before execution.

      - `type BetaManagedAgentsAutoPolicy`

        The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

### Beta Managed Agents Agent Toolset20260401 Bash Input

- `type BetaManagedAgentsAgentToolset20260401BashInput`

  Input payload for the `bash` tool of the
  `agent_toolset_20260401` toolset. All fields are optional;
  a normal invocation supplies `command`, while `restart=true`
  (with no `command`) reboots the runner-side bash session.

  - `Command string Optional`

    Shell command to execute. Omit only when `restart` is true.

  - `Restart bool Optional`

    When true, restart the persistent bash session instead of
    running a command. Subsequent calls without `restart` will
    run against the fresh session.

  - `TimeoutMs int64 Optional`

    Per-call timeout in milliseconds. Defaults to the
    runner-wide tool timeout when omitted or zero.

    minimum: 0

### Beta Managed Agents Agent Toolset20260401 Edit Input

- `type BetaManagedAgentsAgentToolset20260401EditInput`

  Input payload for the `edit` tool. Performs a string
  replacement in the named file; by default `old_string` must
  occur exactly once.

  - `FilePath string`

    Path of the file to edit.

  - `NewString string`

    Replacement text.

  - `OldString string`

    Substring to find and replace.

  - `ReplaceAll bool Optional`

    When true, replace every occurrence of `old_string`
    instead of requiring a unique match.

### Beta Managed Agents Agent Toolset20260401 Glob Input

- `type BetaManagedAgentsAgentToolset20260401GlobInput`

  Input payload for the `glob` tool. Returns paths matching a
  doublestar glob pattern, newest first.

  - `Pattern string`

    Doublestar glob pattern (e.g. `**/*.go`). Absolute patterns
    are only permitted when the runner is configured to allow
    them.

  - `Path string Optional`

    Optional directory root to search under. Defaults to the
    runner's working directory.

### Beta Managed Agents Agent Toolset20260401 Grep Input

- `type BetaManagedAgentsAgentToolset20260401GrepInput`

  Input payload for the `grep` tool. Searches file contents for
  a regular expression, returning matching lines.

  - `Pattern string`

    Regular expression to search for.

  - `Path string Optional`

    Optional directory root to search under. Defaults to the
    runner's working directory.

### Beta Managed Agents Agent Toolset20260401 Params

- `type BetaManagedAgentsAgentToolset20260401Params`

  Configuration for built-in agent tools. Use this to enable or disable groups of tools available to the agent.

  - `Type BetaManagedAgentsAgentToolset20260401ParamsType`

  - `Configs []BetaManagedAgentsAgentToolConfigParamsUnion Optional`

    Per-tool configuration overrides.

    - `type BetaManagedAgentsBashToolConfigParams`

      Configuration override for the bash tool.

      - `Type BetaManagedAgentsBashToolConfigParamsType Optional`

      - `Name Bash`

        Must be "bash".

      - `Enabled bool Optional`

        Whether this tool is enabled and available to Claude. Overrides the default_config setting.

      - `PermissionPolicy BetaManagedAgentsBashToolConfigParamsPermissionPolicyUnion Optional`

        Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

        - `type BetaManagedAgentsAlwaysAllowPolicy`

          Tool calls are automatically approved without user confirmation.

          - `Type BetaManagedAgentsAlwaysAllowPolicyType`

        - `type BetaManagedAgentsAlwaysAskPolicy`

          Tool calls require user confirmation before execution.

          - `Type BetaManagedAgentsAlwaysAskPolicyType`

        - `type BetaManagedAgentsAutoPolicy`

          The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

          - `Type Auto`

    - `type BetaManagedAgentsEditToolConfigParams`

      Configuration override for the edit tool.

      - `Type BetaManagedAgentsEditToolConfigParamsType Optional`

      - `Name Edit`

        Must be "edit".

      - `Enabled bool Optional`

        Whether this tool is enabled and available to Claude. Overrides the default_config setting.

      - `PermissionPolicy BetaManagedAgentsEditToolConfigParamsPermissionPolicyUnion Optional`

        Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

        - `type BetaManagedAgentsAlwaysAllowPolicy`

          Tool calls are automatically approved without user confirmation.

        - `type BetaManagedAgentsAlwaysAskPolicy`

          Tool calls require user confirmation before execution.

        - `type BetaManagedAgentsAutoPolicy`

          The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

    - `type BetaManagedAgentsReadToolConfigParams`

      Configuration override for the read tool.

      - `Type BetaManagedAgentsReadToolConfigParamsType Optional`

      - `Name Read`

        Must be "read".

      - `Enabled bool Optional`

        Whether this tool is enabled and available to Claude. Overrides the default_config setting.

      - `PermissionPolicy BetaManagedAgentsReadToolConfigParamsPermissionPolicyUnion Optional`

        Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

        - `type BetaManagedAgentsAlwaysAllowPolicy`

          Tool calls are automatically approved without user confirmation.

        - `type BetaManagedAgentsAlwaysAskPolicy`

          Tool calls require user confirmation before execution.

        - `type BetaManagedAgentsAutoPolicy`

          The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

    - `type BetaManagedAgentsWriteToolConfigParams`

      Configuration override for the write tool.

      - `Type BetaManagedAgentsWriteToolConfigParamsType Optional`

      - `Name Write`

        Must be "write".

      - `Enabled bool Optional`

        Whether this tool is enabled and available to Claude. Overrides the default_config setting.

      - `PermissionPolicy BetaManagedAgentsWriteToolConfigParamsPermissionPolicyUnion Optional`

        Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

        - `type BetaManagedAgentsAlwaysAllowPolicy`

          Tool calls are automatically approved without user confirmation.

        - `type BetaManagedAgentsAlwaysAskPolicy`

          Tool calls require user confirmation before execution.

        - `type BetaManagedAgentsAutoPolicy`

          The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

    - `type BetaManagedAgentsGlobToolConfigParams`

      Configuration override for the glob tool.

      - `Type BetaManagedAgentsGlobToolConfigParamsType Optional`

      - `Name Glob`

        Must be "glob".

      - `Enabled bool Optional`

        Whether this tool is enabled and available to Claude. Overrides the default_config setting.

      - `PermissionPolicy BetaManagedAgentsGlobToolConfigParamsPermissionPolicyUnion Optional`

        Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

        - `type BetaManagedAgentsAlwaysAllowPolicy`

          Tool calls are automatically approved without user confirmation.

        - `type BetaManagedAgentsAlwaysAskPolicy`

          Tool calls require user confirmation before execution.

        - `type BetaManagedAgentsAutoPolicy`

          The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

    - `type BetaManagedAgentsGrepToolConfigParams`

      Configuration override for the grep tool.

      - `Type BetaManagedAgentsGrepToolConfigParamsType Optional`

      - `Name Grep`

        Must be "grep".

      - `Enabled bool Optional`

        Whether this tool is enabled and available to Claude. Overrides the default_config setting.

      - `PermissionPolicy BetaManagedAgentsGrepToolConfigParamsPermissionPolicyUnion Optional`

        Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

        - `type BetaManagedAgentsAlwaysAllowPolicy`

          Tool calls are automatically approved without user confirmation.

        - `type BetaManagedAgentsAlwaysAskPolicy`

          Tool calls require user confirmation before execution.

        - `type BetaManagedAgentsAutoPolicy`

          The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

    - `type BetaManagedAgentsWebFetchToolConfigParams`

      Configuration override for the web_fetch tool.

      - `Type BetaManagedAgentsWebFetchToolConfigParamsType Optional`

      - `Name WebFetch`

        Must be "web_fetch".

      - `AllowedDomains []string Optional`

        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.

      - `BlockedDomains []string Optional`

        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.

      - `Enabled bool Optional`

        Whether this tool is enabled and available to Claude. Overrides the default_config setting.

      - `MaxContentTokens int64 Optional`

        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

      - `PermissionPolicy BetaManagedAgentsWebFetchToolConfigParamsPermissionPolicyUnion Optional`

        Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

        - `type BetaManagedAgentsAlwaysAllowPolicy`

          Tool calls are automatically approved without user confirmation.

        - `type BetaManagedAgentsAlwaysAskPolicy`

          Tool calls require user confirmation before execution.

        - `type BetaManagedAgentsAutoPolicy`

          The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `URLSources BetaManagedAgentsWebFetchURLSourcesParams Optional`

        Which sources contribute URLs the tool may fetch. Omit to allow every source.

        - `ClientToolResults BetaManagedAgentsWebFetchURLSourceToolFilterParamsUnion Optional`

          Which custom tools' results contribute URLs that may be fetched: "all" (the default), "none", or an only or except list. Each name in a list must be a custom tool in the same tools array.

          - `type BetaManagedAgentsWebFetchURLSourceShorthand string`

            String form of a url_sources value that has no field other than its type: "all" means {"type": "all"} and "none" means {"type": "none"}.

            - `const BetaManagedAgentsWebFetchURLSourceShorthandAll BetaManagedAgentsWebFetchURLSourceShorthand = "all"`

            - `const BetaManagedAgentsWebFetchURLSourceShorthandNone BetaManagedAgentsWebFetchURLSourceShorthand = "none"`

          - `type BetaManagedAgentsWebFetchURLSourceToolFilterUnion interface{…}`

            Which tools' results contribute URLs that may be fetched.

            - `type BetaManagedAgentsWebFetchURLSourceAll`

              Every URL from this source may be fetched. This is the default.

              - `Type All`

            - `type BetaManagedAgentsWebFetchURLSourceNone`

              This source contributes no URLs that may be fetched.

              - `Type None`

            - `type BetaManagedAgentsWebFetchURLSourceOnly`

              Only the named tools' results contribute URLs that may be fetched.

              - `Type Only`

              - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

                The tools whose results contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "none" to allow no tool's results.

                - `Type ToolReference`

                  Must be "tool_reference".

                - `Name string`

                  Name of the tool. Compared exactly, so upper and lower case letters are different.

                  minLength: 1, maxLength: 128

            - `type BetaManagedAgentsWebFetchURLSourceExcept`

              Every tool's results contribute URLs that may be fetched, except the named tools' results.

              - `Type Except`

              - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

                The tools whose results do not contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "all" to leave out no tool's results.

                - `Type ToolReference`

                  Must be "tool_reference".

                - `Name string`

                  Name of the tool. Compared exactly, so upper and lower case letters are different.

                  minLength: 1, maxLength: 128

        - `ServerToolResults BetaManagedAgentsWebFetchURLSourceToolFilterParamsUnion Optional`

          Which of the web_search and web_fetch tools' results contribute URLs that may be fetched: "all" (the default), "none", or an only or except list. Each name in a list must be "web_search" or "web_fetch".

        - `UserInput BetaManagedAgentsWebFetchURLSourceUserInputParamsUnion Optional`

          Whether URLs in the text of user messages may be fetched: "all" (the default) or "none".

          - `type BetaManagedAgentsWebFetchURLSourceShorthand string`

            String form of a url_sources value that has no field other than its type: "all" means {"type": "all"} and "none" means {"type": "none"}.

          - `type BetaManagedAgentsWebFetchURLSourceUserInputUnion interface{…}`

            Whether URLs in the text of user messages may be fetched.

            - `type BetaManagedAgentsWebFetchURLSourceAll`

              Every URL from this source may be fetched. This is the default.

            - `type BetaManagedAgentsWebFetchURLSourceNone`

              This source contributes no URLs that may be fetched.

    - `type BetaManagedAgentsWebSearchToolConfigParams`

      Configuration override for the web_search tool.

      - `Type BetaManagedAgentsWebSearchToolConfigParamsType Optional`

      - `Name WebSearch`

        Must be "web_search".

      - `AllowedDomains []string Optional`

        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.

      - `BlockedDomains []string Optional`

        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.

      - `Enabled bool Optional`

        Whether this tool is enabled and available to Claude. Overrides the default_config setting.

      - `PermissionPolicy BetaManagedAgentsWebSearchToolConfigParamsPermissionPolicyUnion Optional`

        Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

        - `type BetaManagedAgentsAlwaysAllowPolicy`

          Tool calls are automatically approved without user confirmation.

        - `type BetaManagedAgentsAlwaysAskPolicy`

          Tool calls require user confirmation before execution.

        - `type BetaManagedAgentsAutoPolicy`

          The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `UserLocation BetaManagedAgentsUserLocationParam Optional`

        Approximate user location for search result localization.

        - `Type Approximate`

          Location precision. Only "approximate" is supported.

        - `City string Optional`

          City name.

          minLength: 1, maxLength: 255

        - `Country string Optional`

          Two-letter ISO 3166-1 country code, uppercase.

        - `Region string Optional`

          Region or state name.

          minLength: 1, maxLength: 255

        - `Timezone string Optional`

          IANA timezone identifier, e.g. "America/Los_Angeles".

          minLength: 1, maxLength: 255

  - `DefaultConfig BetaManagedAgentsAgentToolsetDefaultConfigParams Optional`

    Default configuration applied to all tools in this set.

    - `Enabled bool Optional`

      Whether tools are enabled and available to Claude by default. Defaults to true if not specified.

    - `PermissionPolicy BetaManagedAgentsAgentToolsetDefaultConfigParamsPermissionPolicyUnion Optional`

      Default permission policy for tools. Controls whether tool calls are auto-approved or require confirmation.

      - `type BetaManagedAgentsAlwaysAllowPolicy`

        Tool calls are automatically approved without user confirmation.

      - `type BetaManagedAgentsAlwaysAskPolicy`

        Tool calls require user confirmation before execution.

      - `type BetaManagedAgentsAutoPolicy`

        The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

### Beta Managed Agents Agent Toolset20260401 Read Input

- `type BetaManagedAgentsAgentToolset20260401ReadInput`

  Input payload for the `read` tool. Reads file contents
  relative to the runner's working directory (or absolute when
  the runner permits).

  - `FilePath string`

    Path of the file to read.

  - `ViewRange []int64 Optional`

    Optional `[start_line, end_line]` 1-indexed inclusive
    range. When omitted the entire file is returned.
    `end_line` of 0 or negative means "to end of file".

    minItems: 2, maxItems: 2

### Beta Managed Agents Agent Toolset20260401 Write Input

- `type BetaManagedAgentsAgentToolset20260401WriteInput`

  Input payload for the `write` tool. Writes (overwriting) the
  entire file contents.

  - `Content string`

    Full file contents to write.

  - `FilePath string`

    Path of the file to write.

### Beta Managed Agents Always Allow Policy

- `type BetaManagedAgentsAlwaysAllowPolicy`

  Tool calls are automatically approved without user confirmation.

  - `Type BetaManagedAgentsAlwaysAllowPolicyType`

### Beta Managed Agents Always Ask Policy

- `type BetaManagedAgentsAlwaysAskPolicy`

  Tool calls require user confirmation before execution.

  - `Type BetaManagedAgentsAlwaysAskPolicyType`

### Beta Managed Agents Anthropic Skill

- `type BetaManagedAgentsAnthropicSkill`

  A resolved Anthropic-managed skill.

  - `Type BetaManagedAgentsAnthropicSkillType`

  - `SkillID string`

  - `Version string`

### Beta Managed Agents Anthropic Skill Params

- `type BetaManagedAgentsAnthropicSkillParams`

  An Anthropic-managed skill.

  - `Type BetaManagedAgentsAnthropicSkillParamsType`

  - `SkillID string`

    Identifier of the Anthropic skill (e.g., "xlsx").

    minLength: 1, maxLength: 64

  - `Version string Optional`

    Version to pin. Defaults to latest if omitted.

    minLength: 1, maxLength: 64

### Beta Managed Agents Auto Policy

- `type BetaManagedAgentsAutoPolicy`

  The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

  - `Type Auto`

### Beta Managed Agents AWS Role Execution Identity

- `type BetaManagedAgentsAWSRoleExecutionIdentity`

  An AWS IAM role principal as returned in API responses.

  - `Type AWSRole`

  - `RoleARN string`

    The IAM role's ARN.

### Beta Managed Agents AWS Role Execution Identity Params

- `type BetaManagedAgentsAWSRoleExecutionIdentityParams`

  An AWS IAM role principal.

  - `Type AWSRole`

  - `RoleARN string`

    The IAM role's ARN, e.g. "arn:aws:iam::123456789012:role/my-agent-runner". Maximum 2048 characters.

    maxLength: 2048

### Beta Managed Agents Bash Tool Config

- `type BetaManagedAgentsBashToolConfig`

  Configuration for the bash tool.

  - `Type Bash`

  - `Enabled bool`

  - `Name Bash`

  - `PermissionPolicy BetaManagedAgentsBashToolConfigPermissionPolicyUnion`

    Permission policy for tool execution.

    - `type BetaManagedAgentsAlwaysAllowPolicy`

      Tool calls are automatically approved without user confirmation.

      - `Type BetaManagedAgentsAlwaysAllowPolicyType`

    - `type BetaManagedAgentsAlwaysAskPolicy`

      Tool calls require user confirmation before execution.

      - `Type BetaManagedAgentsAlwaysAskPolicyType`

    - `type BetaManagedAgentsAutoPolicy`

      The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `Type Auto`

### Beta Managed Agents Bash Tool Config Params

- `type BetaManagedAgentsBashToolConfigParams`

  Configuration override for the bash tool.

  - `Type BetaManagedAgentsBashToolConfigParamsType Optional`

  - `Name Bash`

    Must be "bash".

  - `Enabled bool Optional`

    Whether this tool is enabled and available to Claude. Overrides the default_config setting.

  - `PermissionPolicy BetaManagedAgentsBashToolConfigParamsPermissionPolicyUnion Optional`

    Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

    - `type BetaManagedAgentsAlwaysAllowPolicy`

      Tool calls are automatically approved without user confirmation.

      - `Type BetaManagedAgentsAlwaysAllowPolicyType`

    - `type BetaManagedAgentsAlwaysAskPolicy`

      Tool calls require user confirmation before execution.

      - `Type BetaManagedAgentsAlwaysAskPolicyType`

    - `type BetaManagedAgentsAutoPolicy`

      The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `Type Auto`

### Beta Managed Agents Custom Skill

- `type BetaManagedAgentsCustomSkill`

  A resolved user-created custom skill.

  - `Type BetaManagedAgentsCustomSkillType`

  - `SkillID string`

  - `Version string`

### Beta Managed Agents Custom Skill Params

- `type BetaManagedAgentsCustomSkillParams`

  A user-created custom skill.

  - `Type BetaManagedAgentsCustomSkillParamsType`

  - `SkillID string`

    Tagged ID of the custom skill (e.g., "skill_01XJ5...").

    minLength: 1, maxLength: 64

  - `Version string Optional`

    Version to pin. Defaults to latest if omitted.

    minLength: 1, maxLength: 64

### Beta Managed Agents Custom Tool

- `type BetaManagedAgentsCustomTool`

  A custom tool as returned in API responses.

  - `Type BetaManagedAgentsCustomToolType`

  - `Description string`

  - `InputSchema BetaManagedAgentsCustomToolInputSchema`

    JSON Schema for custom tool input parameters.

    - `Type Object`

    - `Properties map[string, any] Optional`

    - `Required []string Optional`

  - `Name string`

### Beta Managed Agents Custom Tool Input Schema

- `type BetaManagedAgentsCustomToolInputSchema`

  JSON Schema for custom tool input parameters.

  - `Type Object`

  - `Properties map[string, any] Optional`

  - `Required []string Optional`

### Beta Managed Agents Custom Tool Params

- `type BetaManagedAgentsCustomToolParams`

  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 BetaManagedAgentsCustomToolParamsType`

  - `Description string`

    Description of what the tool does, shown to the agent to help it decide when to use the tool.

    minLength: 1

  - `InputSchema BetaManagedAgentsCustomToolInputSchemaParam`

    JSON Schema defining the expected input parameters for the tool.

    - `Type Object`

    - `Properties map[string, any] Optional`

    - `Required []string Optional`

  - `Name string`

    Unique name for the tool. 1-128 characters; letters, digits, underscores, and hyphens.

    minLength: 1, maxLength: 128

### Beta Managed Agents Edit Tool Config

- `type BetaManagedAgentsEditToolConfig`

  Configuration for the edit tool.

  - `Type Edit`

  - `Enabled bool`

  - `Name Edit`

  - `PermissionPolicy BetaManagedAgentsEditToolConfigPermissionPolicyUnion`

    Permission policy for tool execution.

    - `type BetaManagedAgentsAlwaysAllowPolicy`

      Tool calls are automatically approved without user confirmation.

      - `Type BetaManagedAgentsAlwaysAllowPolicyType`

    - `type BetaManagedAgentsAlwaysAskPolicy`

      Tool calls require user confirmation before execution.

      - `Type BetaManagedAgentsAlwaysAskPolicyType`

    - `type BetaManagedAgentsAutoPolicy`

      The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `Type Auto`

### Beta Managed Agents Edit Tool Config Params

- `type BetaManagedAgentsEditToolConfigParams`

  Configuration override for the edit tool.

  - `Type BetaManagedAgentsEditToolConfigParamsType Optional`

  - `Name Edit`

    Must be "edit".

  - `Enabled bool Optional`

    Whether this tool is enabled and available to Claude. Overrides the default_config setting.

  - `PermissionPolicy BetaManagedAgentsEditToolConfigParamsPermissionPolicyUnion Optional`

    Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

    - `type BetaManagedAgentsAlwaysAllowPolicy`

      Tool calls are automatically approved without user confirmation.

      - `Type BetaManagedAgentsAlwaysAllowPolicyType`

    - `type BetaManagedAgentsAlwaysAskPolicy`

      Tool calls require user confirmation before execution.

      - `Type BetaManagedAgentsAlwaysAskPolicyType`

    - `type BetaManagedAgentsAutoPolicy`

      The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `Type Auto`

### Beta Managed Agents Effort High

- `type BetaManagedAgentsEffortHigh`

  High effort. Favors reasoning depth.

  - `Type BetaManagedAgentsEffortHighType`

### Beta Managed Agents Effort Low

- `type BetaManagedAgentsEffortLow`

  Low effort. Favors latency over reasoning depth.

  - `Type BetaManagedAgentsEffortLowType`

### Beta Managed Agents Effort Max

- `type BetaManagedAgentsEffortMax`

  Maximum effort. Favors reasoning depth over latency.

  - `Type BetaManagedAgentsEffortMaxType`

### Beta Managed Agents Effort Medium

- `type BetaManagedAgentsEffortMedium`

  Medium effort. Balances latency and reasoning depth.

  - `Type BetaManagedAgentsEffortMediumType`

### Beta Managed Agents Effort Xhigh

- `type BetaManagedAgentsEffortXhigh`

  Extra-high effort. Not all models accept this level.

  - `Type BetaManagedAgentsEffortXhighType`

### Beta Managed Agents Execution Identity

- `type BetaManagedAgentsExecutionIdentityUnion interface{…}`

  Execution principal for runs of this agent as returned in API responses.

  - `type BetaManagedAgentsAWSRoleExecutionIdentity`

    An AWS IAM role principal as returned in API responses.

    - `Type AWSRole`

    - `RoleARN string`

      The IAM role's ARN.

  - `type BetaManagedAgentsServiceAccountExecutionIdentity`

    The Anthropic-managed service account as returned in API responses.

    - `Type ServiceAccount`

### Beta Managed Agents Execution Identity Params

- `type BetaManagedAgentsExecutionIdentityParamsUnion interface{…}`

  Execution principal for runs of this agent: `service_account` (the default) or `aws_role`.

  - `type BetaManagedAgentsAWSRoleExecutionIdentityParams`

    An AWS IAM role principal.

    - `Type AWSRole`

    - `RoleARN string`

      The IAM role's ARN, e.g. "arn:aws:iam::123456789012:role/my-agent-runner". Maximum 2048 characters.

      maxLength: 2048

  - `type BetaManagedAgentsServiceAccountExecutionIdentityParams`

    The Anthropic-managed service account — the default execution principal. Carries no identifier.

    - `Type ServiceAccount`

### Beta Managed Agents Glob Tool Config

- `type BetaManagedAgentsGlobToolConfig`

  Configuration for the glob tool.

  - `Type Glob`

  - `Enabled bool`

  - `Name Glob`

  - `PermissionPolicy BetaManagedAgentsGlobToolConfigPermissionPolicyUnion`

    Permission policy for tool execution.

    - `type BetaManagedAgentsAlwaysAllowPolicy`

      Tool calls are automatically approved without user confirmation.

      - `Type BetaManagedAgentsAlwaysAllowPolicyType`

    - `type BetaManagedAgentsAlwaysAskPolicy`

      Tool calls require user confirmation before execution.

      - `Type BetaManagedAgentsAlwaysAskPolicyType`

    - `type BetaManagedAgentsAutoPolicy`

      The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `Type Auto`

### Beta Managed Agents Glob Tool Config Params

- `type BetaManagedAgentsGlobToolConfigParams`

  Configuration override for the glob tool.

  - `Type BetaManagedAgentsGlobToolConfigParamsType Optional`

  - `Name Glob`

    Must be "glob".

  - `Enabled bool Optional`

    Whether this tool is enabled and available to Claude. Overrides the default_config setting.

  - `PermissionPolicy BetaManagedAgentsGlobToolConfigParamsPermissionPolicyUnion Optional`

    Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

    - `type BetaManagedAgentsAlwaysAllowPolicy`

      Tool calls are automatically approved without user confirmation.

      - `Type BetaManagedAgentsAlwaysAllowPolicyType`

    - `type BetaManagedAgentsAlwaysAskPolicy`

      Tool calls require user confirmation before execution.

      - `Type BetaManagedAgentsAlwaysAskPolicyType`

    - `type BetaManagedAgentsAutoPolicy`

      The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `Type Auto`

### Beta Managed Agents Grep Tool Config

- `type BetaManagedAgentsGrepToolConfig`

  Configuration for the grep tool.

  - `Type Grep`

  - `Enabled bool`

  - `Name Grep`

  - `PermissionPolicy BetaManagedAgentsGrepToolConfigPermissionPolicyUnion`

    Permission policy for tool execution.

    - `type BetaManagedAgentsAlwaysAllowPolicy`

      Tool calls are automatically approved without user confirmation.

      - `Type BetaManagedAgentsAlwaysAllowPolicyType`

    - `type BetaManagedAgentsAlwaysAskPolicy`

      Tool calls require user confirmation before execution.

      - `Type BetaManagedAgentsAlwaysAskPolicyType`

    - `type BetaManagedAgentsAutoPolicy`

      The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `Type Auto`

### Beta Managed Agents Grep Tool Config Params

- `type BetaManagedAgentsGrepToolConfigParams`

  Configuration override for the grep tool.

  - `Type BetaManagedAgentsGrepToolConfigParamsType Optional`

  - `Name Grep`

    Must be "grep".

  - `Enabled bool Optional`

    Whether this tool is enabled and available to Claude. Overrides the default_config setting.

  - `PermissionPolicy BetaManagedAgentsGrepToolConfigParamsPermissionPolicyUnion Optional`

    Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

    - `type BetaManagedAgentsAlwaysAllowPolicy`

      Tool calls are automatically approved without user confirmation.

      - `Type BetaManagedAgentsAlwaysAllowPolicyType`

    - `type BetaManagedAgentsAlwaysAskPolicy`

      Tool calls require user confirmation before execution.

      - `Type BetaManagedAgentsAlwaysAskPolicyType`

    - `type BetaManagedAgentsAutoPolicy`

      The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `Type Auto`

### Beta Managed Agents MCP Server URL Definition

- `type BetaManagedAgentsMCPServerURLDefinition`

  URL-based MCP server connection as returned in API responses.

  - `Type BetaManagedAgentsMCPServerURLDefinitionType`

  - `Name string`

  - `URL string`

### Beta Managed Agents MCP Tool Config

- `type BetaManagedAgentsMCPToolConfig`

  Resolved configuration for a specific MCP tool.

  - `Enabled bool`

  - `Name string`

  - `PermissionPolicy BetaManagedAgentsMCPToolConfigPermissionPolicyUnion`

    Permission policy for tool execution.

    - `type BetaManagedAgentsAlwaysAllowPolicy`

      Tool calls are automatically approved without user confirmation.

      - `Type BetaManagedAgentsAlwaysAllowPolicyType`

    - `type BetaManagedAgentsAlwaysAskPolicy`

      Tool calls require user confirmation before execution.

      - `Type BetaManagedAgentsAlwaysAskPolicyType`

    - `type BetaManagedAgentsAutoPolicy`

      The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `Type Auto`

### Beta Managed Agents MCP Tool Config Params

- `type BetaManagedAgentsMCPToolConfigParams`

  Configuration override for a specific MCP tool.

  - `Name string`

    Name of the MCP tool to configure. 1-128 characters.

    minLength: 1, maxLength: 128

  - `Enabled bool Optional`

    Whether this tool is enabled. Overrides the `default_config` setting.

  - `PermissionPolicy BetaManagedAgentsMCPToolConfigParamsPermissionPolicyUnion Optional`

    Permission policy for this tool. Overrides the `default_config` setting.

    - `type BetaManagedAgentsAlwaysAllowPolicy`

      Tool calls are automatically approved without user confirmation.

      - `Type BetaManagedAgentsAlwaysAllowPolicyType`

    - `type BetaManagedAgentsAlwaysAskPolicy`

      Tool calls require user confirmation before execution.

      - `Type BetaManagedAgentsAlwaysAskPolicyType`

    - `type BetaManagedAgentsAutoPolicy`

      The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `Type Auto`

### Beta Managed Agents MCP Toolset

- `type BetaManagedAgentsMCPToolset`

  - `Type BetaManagedAgentsMCPToolsetType`

  - `Configs []BetaManagedAgentsMCPToolConfig`

    - `Enabled bool`

    - `Name string`

    - `PermissionPolicy BetaManagedAgentsMCPToolConfigPermissionPolicyUnion`

      Permission policy for tool execution.

      - `type BetaManagedAgentsAlwaysAllowPolicy`

        Tool calls are automatically approved without user confirmation.

        - `Type BetaManagedAgentsAlwaysAllowPolicyType`

      - `type BetaManagedAgentsAlwaysAskPolicy`

        Tool calls require user confirmation before execution.

        - `Type BetaManagedAgentsAlwaysAskPolicyType`

      - `type BetaManagedAgentsAutoPolicy`

        The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `Type Auto`

  - `DefaultConfig BetaManagedAgentsMCPToolsetDefaultConfig`

    Resolved default configuration for all tools from an MCP server.

    - `Enabled bool`

    - `PermissionPolicy BetaManagedAgentsMCPToolsetDefaultConfigPermissionPolicyUnion`

      Permission policy for tool execution.

      - `type BetaManagedAgentsAlwaysAllowPolicy`

        Tool calls are automatically approved without user confirmation.

      - `type BetaManagedAgentsAlwaysAskPolicy`

        Tool calls require user confirmation before execution.

      - `type BetaManagedAgentsAutoPolicy`

        The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

  - `MCPServerName string`

### Beta Managed Agents MCP Toolset Default Config

- `type BetaManagedAgentsMCPToolsetDefaultConfig`

  Resolved default configuration for all tools from an MCP server.

  - `Enabled bool`

  - `PermissionPolicy BetaManagedAgentsMCPToolsetDefaultConfigPermissionPolicyUnion`

    Permission policy for tool execution.

    - `type BetaManagedAgentsAlwaysAllowPolicy`

      Tool calls are automatically approved without user confirmation.

      - `Type BetaManagedAgentsAlwaysAllowPolicyType`

    - `type BetaManagedAgentsAlwaysAskPolicy`

      Tool calls require user confirmation before execution.

      - `Type BetaManagedAgentsAlwaysAskPolicyType`

    - `type BetaManagedAgentsAutoPolicy`

      The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `Type Auto`

### Beta Managed Agents MCP Toolset Default Config Params

- `type BetaManagedAgentsMCPToolsetDefaultConfigParams`

  Default configuration for all tools from an MCP server.

  - `Enabled bool Optional`

    Whether tools are enabled by default. Defaults to true if not specified.

  - `PermissionPolicy BetaManagedAgentsMCPToolsetDefaultConfigParamsPermissionPolicyUnion Optional`

    Default permission policy for tools from this server.

    - `type BetaManagedAgentsAlwaysAllowPolicy`

      Tool calls are automatically approved without user confirmation.

      - `Type BetaManagedAgentsAlwaysAllowPolicyType`

    - `type BetaManagedAgentsAlwaysAskPolicy`

      Tool calls require user confirmation before execution.

      - `Type BetaManagedAgentsAlwaysAskPolicyType`

    - `type BetaManagedAgentsAutoPolicy`

      The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `Type Auto`

### Beta Managed Agents MCP Toolset Params

- `type BetaManagedAgentsMCPToolsetParams`

  Configuration for tools from an MCP server defined in `mcp_servers`.

  - `Type BetaManagedAgentsMCPToolsetParamsType`

  - `MCPServerName string`

    Name of the MCP server. Must match a server name from the mcp_servers array. 1-255 characters.

    minLength: 1, maxLength: 255

  - `Configs []BetaManagedAgentsMCPToolConfigParams Optional`

    Per-tool configuration overrides.

    - `Name string`

      Name of the MCP tool to configure. 1-128 characters.

      minLength: 1, maxLength: 128

    - `Enabled bool Optional`

      Whether this tool is enabled. Overrides the `default_config` setting.

    - `PermissionPolicy BetaManagedAgentsMCPToolConfigParamsPermissionPolicyUnion Optional`

      Permission policy for this tool. Overrides the `default_config` setting.

      - `type BetaManagedAgentsAlwaysAllowPolicy`

        Tool calls are automatically approved without user confirmation.

        - `Type BetaManagedAgentsAlwaysAllowPolicyType`

      - `type BetaManagedAgentsAlwaysAskPolicy`

        Tool calls require user confirmation before execution.

        - `Type BetaManagedAgentsAlwaysAskPolicyType`

      - `type BetaManagedAgentsAutoPolicy`

        The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `Type Auto`

  - `DefaultConfig BetaManagedAgentsMCPToolsetDefaultConfigParams Optional`

    Default configuration for all tools from this server.

    - `Enabled bool Optional`

      Whether tools are enabled by default. Defaults to true if not specified.

    - `PermissionPolicy BetaManagedAgentsMCPToolsetDefaultConfigParamsPermissionPolicyUnion Optional`

      Default permission policy for tools from this server.

      - `type BetaManagedAgentsAlwaysAllowPolicy`

        Tool calls are automatically approved without user confirmation.

      - `type BetaManagedAgentsAlwaysAskPolicy`

        Tool calls require user confirmation before execution.

      - `type BetaManagedAgentsAutoPolicy`

        The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

### Beta Managed Agents Model

- `type BetaManagedAgentsModel string`

  The model that will power your agent.

  See [models](https://docs.anthropic.com/en/docs/models-overview) for additional details and options.

  - `const BetaManagedAgentsModelClaudeHaiku5_5 BetaManagedAgentsModel = "claude-haiku-5-5"`

    Fastest model for high-volume, real-time tasks

  - `const BetaManagedAgentsModelClaudeSonnet5_5 BetaManagedAgentsModel = "claude-sonnet-5-5"`

    Efficient model for coding and agents

  - `const BetaManagedAgentsModelClaudeOpus5_5 BetaManagedAgentsModel = "claude-opus-5-5"`

    Powerful intelligence for coding, knowledge work, and long-running agents

  - `const BetaManagedAgentsModelClaudeFable5_1 BetaManagedAgentsModel = "claude-fable-5-1"`

    Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows

  - `const BetaManagedAgentsModelClaudeSonnet5 BetaManagedAgentsModel = "claude-sonnet-5"`

    Efficient model for coding and agents

  - `const BetaManagedAgentsModelClaudeFable5 BetaManagedAgentsModel = "claude-fable-5"`

    Next generation of intelligence for the hardest knowledge work and coding problems

  - `const BetaManagedAgentsModelClaudeOpus5 BetaManagedAgentsModel = "claude-opus-5"`

    Powerful intelligence for long-running agents and coding

  - `const BetaManagedAgentsModelClaudeOpus4_8 BetaManagedAgentsModel = "claude-opus-4-8"`

    Powerful intelligence for long-running agents and coding

  - `const BetaManagedAgentsModelClaudeOpus4_7 BetaManagedAgentsModel = "claude-opus-4-7"`

    Powerful intelligence for long-running agents and coding

  - `const BetaManagedAgentsModelClaudeOpus4_6 BetaManagedAgentsModel = "claude-opus-4-6"`

    Powerful intelligence for long-running agents and coding

  - `const BetaManagedAgentsModelClaudeSonnet4_6 BetaManagedAgentsModel = "claude-sonnet-4-6"`

    Best combination of speed and intelligence

  - `const BetaManagedAgentsModelClaudeHaiku4_5 BetaManagedAgentsModel = "claude-haiku-4-5"`

  - `const BetaManagedAgentsModelClaudeHaiku4_5_20251001 BetaManagedAgentsModel = "claude-haiku-4-5-20251001"`

  - `const BetaManagedAgentsModelClaudeOpus4_5 BetaManagedAgentsModel = "claude-opus-4-5"`

    Powerful intelligence for long-running agents and coding

  - `const BetaManagedAgentsModelClaudeOpus4_5_20251101 BetaManagedAgentsModel = "claude-opus-4-5-20251101"`

    Powerful intelligence for long-running agents and coding

  - `const BetaManagedAgentsModelClaudeSonnet4_5 BetaManagedAgentsModel = "claude-sonnet-4-5"`

    **Deprecated**: Will reach end-of-life on November 30, 2026. Please migrate to claude-sonnet-5-5. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.

    High-performance model for agents and coding

  - `const BetaManagedAgentsModelClaudeSonnet4_5_20250929 BetaManagedAgentsModel = "claude-sonnet-4-5-20250929"`

    **Deprecated**: Will reach end-of-life on November 30, 2026. Please migrate to claude-sonnet-5-5. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.

    High-performance model for agents and coding

### Beta Managed Agents Model Config

- `type BetaManagedAgentsModelConfig`

  Model identifier and configuration.

  - `ID BetaManagedAgentsModel`

    The model that will power your agent.

    See [models](https://docs.anthropic.com/en/docs/models-overview) for additional details and options.

    - `const BetaManagedAgentsModelClaudeHaiku5_5 BetaManagedAgentsModel = "claude-haiku-5-5"`

      Fastest model for high-volume, real-time tasks

    - `const BetaManagedAgentsModelClaudeSonnet5_5 BetaManagedAgentsModel = "claude-sonnet-5-5"`

      Efficient model for coding and agents

    - `const BetaManagedAgentsModelClaudeOpus5_5 BetaManagedAgentsModel = "claude-opus-5-5"`

      Powerful intelligence for coding, knowledge work, and long-running agents

    - `const BetaManagedAgentsModelClaudeFable5_1 BetaManagedAgentsModel = "claude-fable-5-1"`

      Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows

    - `const BetaManagedAgentsModelClaudeSonnet5 BetaManagedAgentsModel = "claude-sonnet-5"`

      Efficient model for coding and agents

    - `const BetaManagedAgentsModelClaudeFable5 BetaManagedAgentsModel = "claude-fable-5"`

      Next generation of intelligence for the hardest knowledge work and coding problems

    - `const BetaManagedAgentsModelClaudeOpus5 BetaManagedAgentsModel = "claude-opus-5"`

      Powerful intelligence for long-running agents and coding

    - `const BetaManagedAgentsModelClaudeOpus4_8 BetaManagedAgentsModel = "claude-opus-4-8"`

      Powerful intelligence for long-running agents and coding

    - `const BetaManagedAgentsModelClaudeOpus4_7 BetaManagedAgentsModel = "claude-opus-4-7"`

      Powerful intelligence for long-running agents and coding

    - `const BetaManagedAgentsModelClaudeOpus4_6 BetaManagedAgentsModel = "claude-opus-4-6"`

      Powerful intelligence for long-running agents and coding

    - `const BetaManagedAgentsModelClaudeSonnet4_6 BetaManagedAgentsModel = "claude-sonnet-4-6"`

      Best combination of speed and intelligence

    - `const BetaManagedAgentsModelClaudeHaiku4_5 BetaManagedAgentsModel = "claude-haiku-4-5"`

    - `const BetaManagedAgentsModelClaudeHaiku4_5_20251001 BetaManagedAgentsModel = "claude-haiku-4-5-20251001"`

    - `const BetaManagedAgentsModelClaudeOpus4_5 BetaManagedAgentsModel = "claude-opus-4-5"`

      Powerful intelligence for long-running agents and coding

    - `const BetaManagedAgentsModelClaudeOpus4_5_20251101 BetaManagedAgentsModel = "claude-opus-4-5-20251101"`

      Powerful intelligence for long-running agents and coding

    - `const BetaManagedAgentsModelClaudeSonnet4_5 BetaManagedAgentsModel = "claude-sonnet-4-5"`

      **Deprecated**: Will reach end-of-life on November 30, 2026. Please migrate to claude-sonnet-5-5. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.

      High-performance model for agents and coding

    - `const BetaManagedAgentsModelClaudeSonnet4_5_20250929 BetaManagedAgentsModel = "claude-sonnet-4-5-20250929"`

      **Deprecated**: Will reach end-of-life on November 30, 2026. Please migrate to claude-sonnet-5-5. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.

      High-performance model for agents and coding

  - `Effort BetaManagedAgentsModelConfigEffortUnion Optional`

    How hard Claude works on each inference call. One of `low`, `medium`, `high`, `xhigh`, `max`. Always present; resolved to the per-model default at save time when not supplied.

    - `type BetaManagedAgentsEffortLow`

      Low effort. Favors latency over reasoning depth.

      - `Type BetaManagedAgentsEffortLowType`

    - `type BetaManagedAgentsEffortMedium`

      Medium effort. Balances latency and reasoning depth.

      - `Type BetaManagedAgentsEffortMediumType`

    - `type BetaManagedAgentsEffortHigh`

      High effort. Favors reasoning depth.

      - `Type BetaManagedAgentsEffortHighType`

    - `type BetaManagedAgentsEffortXhigh`

      Extra-high effort. Not all models accept this level.

      - `Type BetaManagedAgentsEffortXhighType`

    - `type BetaManagedAgentsEffortMax`

      Maximum effort. Favors reasoning depth over latency.

      - `Type BetaManagedAgentsEffortMaxType`

  - `InferenceGeo string Optional`

    Geographic region for model inference. When unset, requests fall through to the workspace's default_inference_geo.

  - `Speed BetaManagedAgentsModelConfigSpeed Optional`

    Inference speed mode. `fast` provides significantly faster output token generation at premium pricing. Defaults to `standard`. Not all models support `fast`; invalid combinations are rejected at create time.

    - `const BetaManagedAgentsModelConfigSpeedStandard BetaManagedAgentsModelConfigSpeed = "standard"`

    - `const BetaManagedAgentsModelConfigSpeedFast BetaManagedAgentsModelConfigSpeed = "fast"`

### Beta Managed Agents Model Config Params

- `type BetaManagedAgentsModelConfigParams`

  An object that defines additional configuration control over model use

  - `ID BetaManagedAgentsModel`

    The model that will power your agent.

    See [models](https://docs.anthropic.com/en/docs/models-overview) for additional details and options.

    - `const BetaManagedAgentsModelClaudeHaiku5_5 BetaManagedAgentsModel = "claude-haiku-5-5"`

      Fastest model for high-volume, real-time tasks

    - `const BetaManagedAgentsModelClaudeSonnet5_5 BetaManagedAgentsModel = "claude-sonnet-5-5"`

      Efficient model for coding and agents

    - `const BetaManagedAgentsModelClaudeOpus5_5 BetaManagedAgentsModel = "claude-opus-5-5"`

      Powerful intelligence for coding, knowledge work, and long-running agents

    - `const BetaManagedAgentsModelClaudeFable5_1 BetaManagedAgentsModel = "claude-fable-5-1"`

      Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows

    - `const BetaManagedAgentsModelClaudeSonnet5 BetaManagedAgentsModel = "claude-sonnet-5"`

      Efficient model for coding and agents

    - `const BetaManagedAgentsModelClaudeFable5 BetaManagedAgentsModel = "claude-fable-5"`

      Next generation of intelligence for the hardest knowledge work and coding problems

    - `const BetaManagedAgentsModelClaudeOpus5 BetaManagedAgentsModel = "claude-opus-5"`

      Powerful intelligence for long-running agents and coding

    - `const BetaManagedAgentsModelClaudeOpus4_8 BetaManagedAgentsModel = "claude-opus-4-8"`

      Powerful intelligence for long-running agents and coding

    - `const BetaManagedAgentsModelClaudeOpus4_7 BetaManagedAgentsModel = "claude-opus-4-7"`

      Powerful intelligence for long-running agents and coding

    - `const BetaManagedAgentsModelClaudeOpus4_6 BetaManagedAgentsModel = "claude-opus-4-6"`

      Powerful intelligence for long-running agents and coding

    - `const BetaManagedAgentsModelClaudeSonnet4_6 BetaManagedAgentsModel = "claude-sonnet-4-6"`

      Best combination of speed and intelligence

    - `const BetaManagedAgentsModelClaudeHaiku4_5 BetaManagedAgentsModel = "claude-haiku-4-5"`

    - `const BetaManagedAgentsModelClaudeHaiku4_5_20251001 BetaManagedAgentsModel = "claude-haiku-4-5-20251001"`

    - `const BetaManagedAgentsModelClaudeOpus4_5 BetaManagedAgentsModel = "claude-opus-4-5"`

      Powerful intelligence for long-running agents and coding

    - `const BetaManagedAgentsModelClaudeOpus4_5_20251101 BetaManagedAgentsModel = "claude-opus-4-5-20251101"`

      Powerful intelligence for long-running agents and coding

    - `const BetaManagedAgentsModelClaudeSonnet4_5 BetaManagedAgentsModel = "claude-sonnet-4-5"`

      **Deprecated**: Will reach end-of-life on November 30, 2026. Please migrate to claude-sonnet-5-5. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.

      High-performance model for agents and coding

    - `const BetaManagedAgentsModelClaudeSonnet4_5_20250929 BetaManagedAgentsModel = "claude-sonnet-4-5-20250929"`

      **Deprecated**: Will reach end-of-life on November 30, 2026. Please migrate to claude-sonnet-5-5. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.

      High-performance model for agents and coding

  - `Effort BetaManagedAgentsModelConfigParamsEffortUnion Optional`

    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.

    - `type BetaManagedAgentsModelConfigParamsEffortBetaManagedAgentsEffortLevel string`

      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.

      - `const BetaManagedAgentsModelConfigParamsEffortBetaManagedAgentsEffortLevelLow BetaManagedAgentsModelConfigParamsEffortBetaManagedAgentsEffortLevel = "low"`

        Low effort. Favors latency over reasoning depth.

      - `const BetaManagedAgentsModelConfigParamsEffortBetaManagedAgentsEffortLevelMedium BetaManagedAgentsModelConfigParamsEffortBetaManagedAgentsEffortLevel = "medium"`

        Medium effort. Balances latency and reasoning depth.

      - `const BetaManagedAgentsModelConfigParamsEffortBetaManagedAgentsEffortLevelHigh BetaManagedAgentsModelConfigParamsEffortBetaManagedAgentsEffortLevel = "high"`

        High effort. Favors reasoning depth.

      - `const BetaManagedAgentsModelConfigParamsEffortBetaManagedAgentsEffortLevelXhigh BetaManagedAgentsModelConfigParamsEffortBetaManagedAgentsEffortLevel = "xhigh"`

        Extra-high effort. Not all models accept this level.

      - `const BetaManagedAgentsModelConfigParamsEffortBetaManagedAgentsEffortLevelMax BetaManagedAgentsModelConfigParamsEffortBetaManagedAgentsEffortLevel = "max"`

        Maximum effort. Favors reasoning depth over latency.

    - `type BetaManagedAgentsEffortLow`

      Low effort. Favors latency over reasoning depth.

      - `Type BetaManagedAgentsEffortLowType`

    - `type BetaManagedAgentsEffortMedium`

      Medium effort. Balances latency and reasoning depth.

      - `Type BetaManagedAgentsEffortMediumType`

    - `type BetaManagedAgentsEffortHigh`

      High effort. Favors reasoning depth.

      - `Type BetaManagedAgentsEffortHighType`

    - `type BetaManagedAgentsEffortXhigh`

      Extra-high effort. Not all models accept this level.

      - `Type BetaManagedAgentsEffortXhighType`

    - `type BetaManagedAgentsEffortMax`

      Maximum effort. Favors reasoning depth over latency.

      - `Type BetaManagedAgentsEffortMaxType`

  - `InferenceGeo string Optional`

    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.

  - `Speed BetaManagedAgentsModelConfigParamsSpeed Optional`

    Inference speed mode. Defaults to `standard`.

    - `const BetaManagedAgentsModelConfigParamsSpeedStandard BetaManagedAgentsModelConfigParamsSpeed = "standard"`

    - `const BetaManagedAgentsModelConfigParamsSpeedFast BetaManagedAgentsModelConfigParamsSpeed = "fast"`

### Beta Managed Agents Multiagent Advisor

- `type BetaManagedAgentsMultiagentAdvisorUnion interface{…}`

  Whether the session's primary thread can consult an advisor model.

  - `type BetaManagedAgentsMultiagentAdvisorEnabled`

    The session's primary thread can consult `model` mid-turn.

    - `Type Enabled`

    - `Model string`

      The advisor model id.

  - `type BetaManagedAgentsMultiagentAdvisorDisabled`

    The agent has no advisor.

    - `Type Disabled`

### Beta Managed Agents Multiagent Advisor Disabled

- `type BetaManagedAgentsMultiagentAdvisorDisabled`

  The agent has no advisor.

  - `Type Disabled`

### Beta Managed Agents Multiagent Advisor Disabled Params

- `type BetaManagedAgentsMultiagentAdvisorDisabledParams`

  The agent has no advisor.

  - `Type Disabled`

### Beta Managed Agents Multiagent Advisor Enabled

- `type BetaManagedAgentsMultiagentAdvisorEnabled`

  The session's primary thread can consult `model` mid-turn.

  - `Type Enabled`

  - `Model string`

    The advisor model id.

### Beta Managed Agents Multiagent Advisor Enabled Params

- `type BetaManagedAgentsMultiagentAdvisorEnabledParams`

  The session's primary thread can consult `model` mid-turn.

  - `Type Enabled`

  - `Model string`

    A Claude model id. The model must be permitted as an advisor for this agent's model.

    minLength: 1, maxLength: 256

### Beta Managed Agents Multiagent Advisor Params

- `type BetaManagedAgentsMultiagentAdvisorParamsUnion interface{…}`

  Whether the session's primary thread can consult an advisor model.

  - `type BetaManagedAgentsMultiagentAdvisorEnabledParams`

    The session's primary thread can consult `model` mid-turn.

    - `Type Enabled`

    - `Model string`

      A Claude model id. The model must be permitted as an advisor for this agent's model.

      minLength: 1, maxLength: 256

  - `type BetaManagedAgentsMultiagentAdvisorDisabledParams`

    The agent has no advisor.

    - `Type Disabled`

### Beta Managed Agents Multiagent Coordinator

- `type BetaManagedAgentsMultiagentCoordinator`

  Resolved coordinator topology with a concrete agent roster.

  - `Type BetaManagedAgentsMultiagentCoordinatorType`

  - `Agents []BetaManagedAgentsMultiagentCoordinatorAgentUnion`

    Agents the coordinator may spawn as session threads, each resolved to a specific version.

    - `type BetaManagedAgentsAgentReference`

      A resolved agent reference with a concrete version.

      - `Type BetaManagedAgentsAgentReferenceType`

      - `ID string`

      - `Version int64`

        format: int32

    - `type BetaManagedAgentsAdvisor`

      Platform advisor roster entry: a model the session's primary thread may consult mid-turn.

      - `Type BetaManagedAgentsAdvisorType`

      - `Model string`

        The advisor model id.

### Beta Managed Agents Multiagent Coordinator Params

- `type BetaManagedAgentsMultiagentCoordinatorParams`

  A coordinator topology: the session's primary thread orchestrates work by spawning session threads, each running an agent drawn from the `agents` roster.

  - `Type BetaManagedAgentsMultiagentCoordinatorParamsType`

  - `Agents []BetaManagedAgentsMultiagentRosterEntryParamsUnion`

    Agents the coordinator may spawn as session threads. 1–20 entries. Each entry is an agent ID string, a versioned `{"type":"agent","id","version"}` reference, or `{"type":"self"}` to allow recursive self-invocation. Entries must reference distinct agents (after resolving `self` and string forms); at most one `self`. Referenced agents must exist, must not be archived, and must not themselves have `multiagent` set (depth limit 1).

    - `string`

    - `type BetaManagedAgentsAgentParams`

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

      - `Type BetaManagedAgentsAgentParamsType`

      - `ID string`

        The `agent` ID.

        minLength: 1, maxLength: 128

      - `Version int64 Optional`

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

        format: int32

    - `type BetaManagedAgentsMultiagentSelfParams`

      Sentinel roster entry meaning "the agent that owns this configuration". Resolved server-side to a concrete agent reference.

      - `Type BetaManagedAgentsMultiagentSelfParamsType`

    - `type BetaManagedAgentsAdvisorParams`

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

      - `Type BetaManagedAgentsAdvisorParamsType`

      - `Model string`

        A Claude model id. The model must be permitted as an advisor for this agent's model.

        minLength: 1, maxLength: 256

### Beta Managed Agents Multiagent Inline Agents

- `type BetaManagedAgentsMultiagentInlineAgentsUnion interface{…}`

  Whether the agent can define inline agents. The agent defines an inline agent itself, in a workflow run's plan or when it spawns a session thread, and the inline agent is not saved.

  - `type BetaManagedAgentsMultiagentInlineAgentsEnabled`

    The agent can define inline agents.

    - `Type Enabled`

  - `type BetaManagedAgentsMultiagentInlineAgentsDisabled`

    The agent cannot define inline agents.

    - `Type Disabled`

### Beta Managed Agents Multiagent Inline Agents Disabled

- `type BetaManagedAgentsMultiagentInlineAgentsDisabled`

  The agent cannot define inline agents.

  - `Type Disabled`

### Beta Managed Agents Multiagent Inline Agents Disabled Params

- `type BetaManagedAgentsMultiagentInlineAgentsDisabledParams`

  The agent cannot define inline agents.

  - `Type Disabled`

### Beta Managed Agents Multiagent Inline Agents Enabled

- `type BetaManagedAgentsMultiagentInlineAgentsEnabled`

  The agent can define inline agents.

  - `Type Enabled`

### Beta Managed Agents Multiagent Inline Agents Enabled Params

- `type BetaManagedAgentsMultiagentInlineAgentsEnabledParams`

  The agent can define inline agents.

  - `Type Enabled`

### Beta Managed Agents Multiagent Inline Agents Params

- `type BetaManagedAgentsMultiagentInlineAgentsParamsUnion interface{…}`

  Whether the agent can define inline agents. The agent defines an inline agent itself, in a workflow run's plan or when it spawns a session thread, and the inline agent is not saved.

  - `type BetaManagedAgentsMultiagentInlineAgentsEnabledParams`

    The agent can define inline agents.

    - `Type Enabled`

  - `type BetaManagedAgentsMultiagentInlineAgentsDisabledParams`

    The agent cannot define inline agents.

    - `Type Disabled`

### Beta Managed Agents Multiagent Predefined Agent Params

- `type BetaManagedAgentsMultiagentPredefinedAgentParamsUnion interface{…}`

  One agent in a `predefined_agents` list. It is an agent ID string, an `agent` reference with an optional `version`, or `self` for the agent that owns this configuration.

  - `string`

  - `type BetaManagedAgentsAgentParams`

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

    - `Type BetaManagedAgentsAgentParamsType`

    - `ID string`

      The `agent` ID.

      minLength: 1, maxLength: 128

    - `Version int64 Optional`

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

      format: int32

  - `type BetaManagedAgentsMultiagentSelfParams`

    Sentinel roster entry meaning "the agent that owns this configuration". Resolved server-side to a concrete agent reference.

    - `Type BetaManagedAgentsMultiagentSelfParamsType`

### Beta Managed Agents Multiagent Self Params

- `type BetaManagedAgentsMultiagentSelfParams`

  Sentinel roster entry meaning "the agent that owns this configuration". Resolved server-side to a concrete agent reference.

  - `Type BetaManagedAgentsMultiagentSelfParamsType`

### Beta Managed Agents Multiagent Subagents

- `type BetaManagedAgentsMultiagentSubagentsUnion interface{…}`

  Whether the agent can spawn session threads.

  - `type BetaManagedAgentsMultiagentSubagentsEnabled`

    The agent can spawn session threads.

    - `Type Enabled`

    - `InlineAgents BetaManagedAgentsMultiagentInlineAgentsUnion`

      Whether the agent can define inline agents, which are not saved, when it spawns session threads.

      - `type BetaManagedAgentsMultiagentInlineAgentsEnabled`

        The agent can define inline agents.

        - `Type Enabled`

      - `type BetaManagedAgentsMultiagentInlineAgentsDisabled`

        The agent cannot define inline agents.

        - `Type Disabled`

    - `PredefinedAgents []BetaManagedAgentsAgentReference`

      Predefined agents, which are saved agents that this agent can spawn as session threads, each resolved to a specific version.

      - `Type BetaManagedAgentsAgentReferenceType`

      - `ID string`

      - `Version int64`

        format: int32

  - `type BetaManagedAgentsMultiagentSubagentsDisabled`

    The agent cannot spawn session threads.

    - `Type Disabled`

### Beta Managed Agents Multiagent Subagents Disabled

- `type BetaManagedAgentsMultiagentSubagentsDisabled`

  The agent cannot spawn session threads.

  - `Type Disabled`

### Beta Managed Agents Multiagent Subagents Disabled Params

- `type BetaManagedAgentsMultiagentSubagentsDisabledParams`

  The agent cannot spawn session threads.

  - `Type Disabled`

### Beta Managed Agents Multiagent Subagents Enabled

- `type BetaManagedAgentsMultiagentSubagentsEnabled`

  The agent can spawn session threads.

  - `Type Enabled`

  - `InlineAgents BetaManagedAgentsMultiagentInlineAgentsUnion`

    Whether the agent can define inline agents, which are not saved, when it spawns session threads.

    - `type BetaManagedAgentsMultiagentInlineAgentsEnabled`

      The agent can define inline agents.

      - `Type Enabled`

    - `type BetaManagedAgentsMultiagentInlineAgentsDisabled`

      The agent cannot define inline agents.

      - `Type Disabled`

  - `PredefinedAgents []BetaManagedAgentsAgentReference`

    Predefined agents, which are saved agents that this agent can spawn as session threads, each resolved to a specific version.

    - `Type BetaManagedAgentsAgentReferenceType`

    - `ID string`

    - `Version int64`

      format: int32

### Beta Managed Agents Multiagent Subagents Enabled Params

- `type BetaManagedAgentsMultiagentSubagentsEnabledParams`

  The agent can spawn session threads. Each thread runs a predefined agent, which is a saved agent in `predefined_agents`, or an inline agent, which the agent defines when it spawns the thread and which is not saved. If `inline_agents` is disabled, `predefined_agents` must name at least one agent.

  - `Type Enabled`

  - `InlineAgents BetaManagedAgentsMultiagentInlineAgentsParamsUnion Optional`

    Whether the agent can define inline agents when it spawns session threads. Defaults to enabled.

    - `type BetaManagedAgentsMultiagentInlineAgentsEnabledParams`

      The agent can define inline agents.

      - `Type Enabled`

    - `type BetaManagedAgentsMultiagentInlineAgentsDisabledParams`

      The agent cannot define inline agents.

      - `Type Disabled`

  - `PredefinedAgents []BetaManagedAgentsMultiagentPredefinedAgentParamsUnion Optional`

    Predefined agents that this agent can spawn as session threads. At most 20. Defaults to null. Null and an empty list both mean no predefined agents. This list is separate from `workflows.predefined_agents`, and an agent in one list is not added to the other.

    - `string`

    - `type BetaManagedAgentsAgentParams`

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

      - `Type BetaManagedAgentsAgentParamsType`

      - `ID string`

        The `agent` ID.

        minLength: 1, maxLength: 128

      - `Version int64 Optional`

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

        format: int32

    - `type BetaManagedAgentsMultiagentSelfParams`

      Sentinel roster entry meaning "the agent that owns this configuration". Resolved server-side to a concrete agent reference.

      - `Type BetaManagedAgentsMultiagentSelfParamsType`

### Beta Managed Agents Multiagent Subagents Params

- `type BetaManagedAgentsMultiagentSubagentsParamsUnion interface{…}`

  Whether the agent can spawn session threads.

  - `type BetaManagedAgentsMultiagentSubagentsEnabledParams`

    The agent can spawn session threads. Each thread runs a predefined agent, which is a saved agent in `predefined_agents`, or an inline agent, which the agent defines when it spawns the thread and which is not saved. If `inline_agents` is disabled, `predefined_agents` must name at least one agent.

    - `Type Enabled`

    - `InlineAgents BetaManagedAgentsMultiagentInlineAgentsParamsUnion Optional`

      Whether the agent can define inline agents when it spawns session threads. Defaults to enabled.

      - `type BetaManagedAgentsMultiagentInlineAgentsEnabledParams`

        The agent can define inline agents.

        - `Type Enabled`

      - `type BetaManagedAgentsMultiagentInlineAgentsDisabledParams`

        The agent cannot define inline agents.

        - `Type Disabled`

    - `PredefinedAgents []BetaManagedAgentsMultiagentPredefinedAgentParamsUnion Optional`

      Predefined agents that this agent can spawn as session threads. At most 20. Defaults to null. Null and an empty list both mean no predefined agents. This list is separate from `workflows.predefined_agents`, and an agent in one list is not added to the other.

      - `string`

      - `type BetaManagedAgentsAgentParams`

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

        - `Type BetaManagedAgentsAgentParamsType`

        - `ID string`

          The `agent` ID.

          minLength: 1, maxLength: 128

        - `Version int64 Optional`

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

          format: int32

      - `type BetaManagedAgentsMultiagentSelfParams`

        Sentinel roster entry meaning "the agent that owns this configuration". Resolved server-side to a concrete agent reference.

        - `Type BetaManagedAgentsMultiagentSelfParamsType`

  - `type BetaManagedAgentsMultiagentSubagentsDisabledParams`

    The agent cannot spawn session threads.

    - `Type Disabled`

### Beta Managed Agents Multiagent Workflows

- `type BetaManagedAgentsMultiagentWorkflowsUnion interface{…}`

  Whether the agent can start workflow runs.

  - `type BetaManagedAgentsMultiagentWorkflowsEnabled`

    The agent can start workflow runs.

    - `Type Enabled`

    - `InlineAgents BetaManagedAgentsMultiagentInlineAgentsUnion`

      Whether a run's plan can define inline agents, which are not saved.

      - `type BetaManagedAgentsMultiagentInlineAgentsEnabled`

        The agent can define inline agents.

        - `Type Enabled`

      - `type BetaManagedAgentsMultiagentInlineAgentsDisabled`

        The agent cannot define inline agents.

        - `Type Disabled`

    - `PredefinedAgents []BetaManagedAgentsAgentReference`

      Predefined agents, which are saved agents that a run's plan can use, each resolved to a specific version.

      - `Type BetaManagedAgentsAgentReferenceType`

      - `ID string`

      - `Version int64`

        format: int32

  - `type BetaManagedAgentsMultiagentWorkflowsDisabled`

    The agent cannot start workflow runs.

    - `Type Disabled`

### Beta Managed Agents Multiagent Workflows Disabled

- `type BetaManagedAgentsMultiagentWorkflowsDisabled`

  The agent cannot start workflow runs.

  - `Type Disabled`

### Beta Managed Agents Multiagent Workflows Disabled Params

- `type BetaManagedAgentsMultiagentWorkflowsDisabledParams`

  The agent cannot start workflow runs.

  - `Type Disabled`

### Beta Managed Agents Multiagent Workflows Enabled

- `type BetaManagedAgentsMultiagentWorkflowsEnabled`

  The agent can start workflow runs.

  - `Type Enabled`

  - `InlineAgents BetaManagedAgentsMultiagentInlineAgentsUnion`

    Whether a run's plan can define inline agents, which are not saved.

    - `type BetaManagedAgentsMultiagentInlineAgentsEnabled`

      The agent can define inline agents.

      - `Type Enabled`

    - `type BetaManagedAgentsMultiagentInlineAgentsDisabled`

      The agent cannot define inline agents.

      - `Type Disabled`

  - `PredefinedAgents []BetaManagedAgentsAgentReference`

    Predefined agents, which are saved agents that a run's plan can use, each resolved to a specific version.

    - `Type BetaManagedAgentsAgentReferenceType`

    - `ID string`

    - `Version int64`

      format: int32

### Beta Managed Agents Multiagent Workflows Enabled Params

- `type BetaManagedAgentsMultiagentWorkflowsEnabledParams`

  The agent can start workflow runs. Each run follows a plan, a program that the agent writes. A plan can use predefined agents, which are the saved agents in `predefined_agents`, and inline agents, which it defines itself and which are not saved. If `inline_agents` is disabled, `predefined_agents` must name at least one agent.

  - `Type Enabled`

  - `InlineAgents BetaManagedAgentsMultiagentInlineAgentsParamsUnion Optional`

    Whether a run's plan can define inline agents. Defaults to enabled.

    - `type BetaManagedAgentsMultiagentInlineAgentsEnabledParams`

      The agent can define inline agents.

      - `Type Enabled`

    - `type BetaManagedAgentsMultiagentInlineAgentsDisabledParams`

      The agent cannot define inline agents.

      - `Type Disabled`

  - `PredefinedAgents []BetaManagedAgentsMultiagentPredefinedAgentParamsUnion Optional`

    Predefined agents that a run's plan can use. At most 20. Defaults to null. Null and an empty list both mean no predefined agents. This list is separate from `subagents.predefined_agents`, and an agent in one list is not added to the other.

    - `string`

    - `type BetaManagedAgentsAgentParams`

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

      - `Type BetaManagedAgentsAgentParamsType`

      - `ID string`

        The `agent` ID.

        minLength: 1, maxLength: 128

      - `Version int64 Optional`

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

        format: int32

    - `type BetaManagedAgentsMultiagentSelfParams`

      Sentinel roster entry meaning "the agent that owns this configuration". Resolved server-side to a concrete agent reference.

      - `Type BetaManagedAgentsMultiagentSelfParamsType`

### Beta Managed Agents Multiagent Workflows Params

- `type BetaManagedAgentsMultiagentWorkflowsParamsUnion interface{…}`

  Whether the agent can start workflow runs.

  - `type BetaManagedAgentsMultiagentWorkflowsEnabledParams`

    The agent can start workflow runs. Each run follows a plan, a program that the agent writes. A plan can use predefined agents, which are the saved agents in `predefined_agents`, and inline agents, which it defines itself and which are not saved. If `inline_agents` is disabled, `predefined_agents` must name at least one agent.

    - `Type Enabled`

    - `InlineAgents BetaManagedAgentsMultiagentInlineAgentsParamsUnion Optional`

      Whether a run's plan can define inline agents. Defaults to enabled.

      - `type BetaManagedAgentsMultiagentInlineAgentsEnabledParams`

        The agent can define inline agents.

        - `Type Enabled`

      - `type BetaManagedAgentsMultiagentInlineAgentsDisabledParams`

        The agent cannot define inline agents.

        - `Type Disabled`

    - `PredefinedAgents []BetaManagedAgentsMultiagentPredefinedAgentParamsUnion Optional`

      Predefined agents that a run's plan can use. At most 20. Defaults to null. Null and an empty list both mean no predefined agents. This list is separate from `subagents.predefined_agents`, and an agent in one list is not added to the other.

      - `string`

      - `type BetaManagedAgentsAgentParams`

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

        - `Type BetaManagedAgentsAgentParamsType`

        - `ID string`

          The `agent` ID.

          minLength: 1, maxLength: 128

        - `Version int64 Optional`

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

          format: int32

      - `type BetaManagedAgentsMultiagentSelfParams`

        Sentinel roster entry meaning "the agent that owns this configuration". Resolved server-side to a concrete agent reference.

        - `Type BetaManagedAgentsMultiagentSelfParamsType`

  - `type BetaManagedAgentsMultiagentWorkflowsDisabledParams`

    The agent cannot start workflow runs.

    - `Type Disabled`

### Beta Managed Agents Multiagent20261001

- `type BetaManagedAgentsMultiagent20261001`

  Resolved multiagent configuration with three members, each enabled or disabled on its own.

  - `Type Multiagent20261001`

  - `Advisor BetaManagedAgentsMultiagentAdvisorUnion`

    Whether the session's primary thread can consult an advisor model.

    - `type BetaManagedAgentsMultiagentAdvisorEnabled`

      The session's primary thread can consult `model` mid-turn.

      - `Type Enabled`

      - `Model string`

        The advisor model id.

    - `type BetaManagedAgentsMultiagentAdvisorDisabled`

      The agent has no advisor.

      - `Type Disabled`

  - `Subagents BetaManagedAgentsMultiagentSubagentsUnion`

    Whether the agent can spawn session threads.

    - `type BetaManagedAgentsMultiagentSubagentsEnabled`

      The agent can spawn session threads.

      - `Type Enabled`

      - `InlineAgents BetaManagedAgentsMultiagentInlineAgentsUnion`

        Whether the agent can define inline agents, which are not saved, when it spawns session threads.

        - `type BetaManagedAgentsMultiagentInlineAgentsEnabled`

          The agent can define inline agents.

          - `Type Enabled`

        - `type BetaManagedAgentsMultiagentInlineAgentsDisabled`

          The agent cannot define inline agents.

          - `Type Disabled`

      - `PredefinedAgents []BetaManagedAgentsAgentReference`

        Predefined agents, which are saved agents that this agent can spawn as session threads, each resolved to a specific version.

        - `Type BetaManagedAgentsAgentReferenceType`

        - `ID string`

        - `Version int64`

          format: int32

    - `type BetaManagedAgentsMultiagentSubagentsDisabled`

      The agent cannot spawn session threads.

      - `Type Disabled`

  - `Workflows BetaManagedAgentsMultiagentWorkflowsUnion`

    Whether the agent can start workflow runs.

    - `type BetaManagedAgentsMultiagentWorkflowsEnabled`

      The agent can start workflow runs.

      - `Type Enabled`

      - `InlineAgents BetaManagedAgentsMultiagentInlineAgentsUnion`

        Whether a run's plan can define inline agents, which are not saved.

      - `PredefinedAgents []BetaManagedAgentsAgentReference`

        Predefined agents, which are saved agents that a run's plan can use, each resolved to a specific version.

        - `Type BetaManagedAgentsAgentReferenceType`

        - `ID string`

        - `Version int64`

          format: int32

    - `type BetaManagedAgentsMultiagentWorkflowsDisabled`

      The agent cannot start workflow runs.

      - `Type Disabled`

### Beta Managed Agents Multiagent20261001 Params

- `type BetaManagedAgentsMultiagent20261001Params`

  Multiagent configuration with three members, each enabled or disabled on its own. On an update, if the agent's stored `multiagent` also has type `multiagent_20261001`, this configuration is merged into the stored one, level by level, instead of replacing it. A key that the update omits keeps its stored value. A key sent as null takes its default, on create as well, so `"workflows": null` enables workflows. An object sent with a `type` other than the stored one replaces the stored object, and the keys that it omits take their defaults. A `predefined_agents` list that is sent replaces the stored list. Every object that is sent needs its `type`, and an enabled `advisor` needs its `model`. Other validation applies to the merged result.

  - `Type Multiagent20261001`

  - `Advisor BetaManagedAgentsMultiagentAdvisorParamsUnion Optional`

    Whether the session's primary thread can consult an advisor model. Defaults to disabled.

    - `type BetaManagedAgentsMultiagentAdvisorEnabledParams`

      The session's primary thread can consult `model` mid-turn.

      - `Type Enabled`

      - `Model string`

        A Claude model id. The model must be permitted as an advisor for this agent's model.

        minLength: 1, maxLength: 256

    - `type BetaManagedAgentsMultiagentAdvisorDisabledParams`

      The agent has no advisor.

      - `Type Disabled`

  - `Subagents BetaManagedAgentsMultiagentSubagentsParamsUnion Optional`

    Whether the agent can spawn session threads. Defaults to enabled.

    - `type BetaManagedAgentsMultiagentSubagentsEnabledParams`

      The agent can spawn session threads. Each thread runs a predefined agent, which is a saved agent in `predefined_agents`, or an inline agent, which the agent defines when it spawns the thread and which is not saved. If `inline_agents` is disabled, `predefined_agents` must name at least one agent.

      - `Type Enabled`

      - `InlineAgents BetaManagedAgentsMultiagentInlineAgentsParamsUnion Optional`

        Whether the agent can define inline agents when it spawns session threads. Defaults to enabled.

        - `type BetaManagedAgentsMultiagentInlineAgentsEnabledParams`

          The agent can define inline agents.

          - `Type Enabled`

        - `type BetaManagedAgentsMultiagentInlineAgentsDisabledParams`

          The agent cannot define inline agents.

          - `Type Disabled`

      - `PredefinedAgents []BetaManagedAgentsMultiagentPredefinedAgentParamsUnion Optional`

        Predefined agents that this agent can spawn as session threads. At most 20. Defaults to null. Null and an empty list both mean no predefined agents. This list is separate from `workflows.predefined_agents`, and an agent in one list is not added to the other.

        - `string`

        - `type BetaManagedAgentsAgentParams`

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

          - `Type BetaManagedAgentsAgentParamsType`

          - `ID string`

            The `agent` ID.

            minLength: 1, maxLength: 128

          - `Version int64 Optional`

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

            format: int32

        - `type BetaManagedAgentsMultiagentSelfParams`

          Sentinel roster entry meaning "the agent that owns this configuration". Resolved server-side to a concrete agent reference.

          - `Type BetaManagedAgentsMultiagentSelfParamsType`

    - `type BetaManagedAgentsMultiagentSubagentsDisabledParams`

      The agent cannot spawn session threads.

      - `Type Disabled`

  - `Workflows BetaManagedAgentsMultiagentWorkflowsParamsUnion Optional`

    Whether the agent can start workflow runs. Defaults to enabled.

    - `type BetaManagedAgentsMultiagentWorkflowsEnabledParams`

      The agent can start workflow runs. Each run follows a plan, a program that the agent writes. A plan can use predefined agents, which are the saved agents in `predefined_agents`, and inline agents, which it defines itself and which are not saved. If `inline_agents` is disabled, `predefined_agents` must name at least one agent.

      - `Type Enabled`

      - `InlineAgents BetaManagedAgentsMultiagentInlineAgentsParamsUnion Optional`

        Whether a run's plan can define inline agents. Defaults to enabled.

      - `PredefinedAgents []BetaManagedAgentsMultiagentPredefinedAgentParamsUnion Optional`

        Predefined agents that a run's plan can use. At most 20. Defaults to null. Null and an empty list both mean no predefined agents. This list is separate from `subagents.predefined_agents`, and an agent in one list is not added to the other.

        - `string`

        - `type BetaManagedAgentsAgentParams`

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

        - `type BetaManagedAgentsMultiagentSelfParams`

          Sentinel roster entry meaning "the agent that owns this configuration". Resolved server-side to a concrete agent reference.

    - `type BetaManagedAgentsMultiagentWorkflowsDisabledParams`

      The agent cannot start workflow runs.

      - `Type Disabled`

### Beta Managed Agents Read Tool Config

- `type BetaManagedAgentsReadToolConfig`

  Configuration for the read tool.

  - `Type Read`

  - `Enabled bool`

  - `Name Read`

  - `PermissionPolicy BetaManagedAgentsReadToolConfigPermissionPolicyUnion`

    Permission policy for tool execution.

    - `type BetaManagedAgentsAlwaysAllowPolicy`

      Tool calls are automatically approved without user confirmation.

      - `Type BetaManagedAgentsAlwaysAllowPolicyType`

    - `type BetaManagedAgentsAlwaysAskPolicy`

      Tool calls require user confirmation before execution.

      - `Type BetaManagedAgentsAlwaysAskPolicyType`

    - `type BetaManagedAgentsAutoPolicy`

      The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `Type Auto`

### Beta Managed Agents Read Tool Config Params

- `type BetaManagedAgentsReadToolConfigParams`

  Configuration override for the read tool.

  - `Type BetaManagedAgentsReadToolConfigParamsType Optional`

  - `Name Read`

    Must be "read".

  - `Enabled bool Optional`

    Whether this tool is enabled and available to Claude. Overrides the default_config setting.

  - `PermissionPolicy BetaManagedAgentsReadToolConfigParamsPermissionPolicyUnion Optional`

    Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

    - `type BetaManagedAgentsAlwaysAllowPolicy`

      Tool calls are automatically approved without user confirmation.

      - `Type BetaManagedAgentsAlwaysAllowPolicyType`

    - `type BetaManagedAgentsAlwaysAskPolicy`

      Tool calls require user confirmation before execution.

      - `Type BetaManagedAgentsAlwaysAskPolicyType`

    - `type BetaManagedAgentsAutoPolicy`

      The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `Type Auto`

### Beta Managed Agents Service Account Execution Identity

- `type BetaManagedAgentsServiceAccountExecutionIdentity`

  The Anthropic-managed service account as returned in API responses.

  - `Type ServiceAccount`

### Beta Managed Agents Service Account Execution Identity Params

- `type BetaManagedAgentsServiceAccountExecutionIdentityParams`

  The Anthropic-managed service account — the default execution principal. Carries no identifier.

  - `Type ServiceAccount`

### Beta Managed Agents Session Thread Agent

- `type BetaManagedAgentsSessionThreadAgent`

  Resolved `agent` definition for a single `session_thread`. Snapshot of the agent at thread creation time. The multiagent roster is not repeated here; read it from `Session.agent`.

  - `Type BetaManagedAgentsSessionThreadAgentType`

  - `ID string`

  - `Description string`

  - `ExecutionIdentity BetaManagedAgentsExecutionIdentityUnion`

    Execution principal snapshotted from the agent at session creation. Always present; `{"type": "service_account"}` when runs carry no customer-named principal.

    - `type BetaManagedAgentsAWSRoleExecutionIdentity`

      An AWS IAM role principal as returned in API responses.

      - `Type AWSRole`

      - `RoleARN string`

        The IAM role's ARN.

    - `type BetaManagedAgentsServiceAccountExecutionIdentity`

      The Anthropic-managed service account as returned in API responses.

      - `Type ServiceAccount`

  - `MCPServers []BetaManagedAgentsMCPServerURLDefinition`

    - `Type BetaManagedAgentsMCPServerURLDefinitionType`

    - `Name string`

    - `URL string`

  - `Model BetaManagedAgentsModelConfig`

    Model identifier and configuration.

    - `ID BetaManagedAgentsModel`

      The model that will power your agent.

      See [models](https://docs.anthropic.com/en/docs/models-overview) for additional details and options.

      - `const BetaManagedAgentsModelClaudeHaiku5_5 BetaManagedAgentsModel = "claude-haiku-5-5"`

        Fastest model for high-volume, real-time tasks

      - `const BetaManagedAgentsModelClaudeSonnet5_5 BetaManagedAgentsModel = "claude-sonnet-5-5"`

        Efficient model for coding and agents

      - `const BetaManagedAgentsModelClaudeOpus5_5 BetaManagedAgentsModel = "claude-opus-5-5"`

        Powerful intelligence for coding, knowledge work, and long-running agents

      - `const BetaManagedAgentsModelClaudeFable5_1 BetaManagedAgentsModel = "claude-fable-5-1"`

        Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows

      - `const BetaManagedAgentsModelClaudeSonnet5 BetaManagedAgentsModel = "claude-sonnet-5"`

        Efficient model for coding and agents

      - `const BetaManagedAgentsModelClaudeFable5 BetaManagedAgentsModel = "claude-fable-5"`

        Next generation of intelligence for the hardest knowledge work and coding problems

      - `const BetaManagedAgentsModelClaudeOpus5 BetaManagedAgentsModel = "claude-opus-5"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeOpus4_8 BetaManagedAgentsModel = "claude-opus-4-8"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeOpus4_7 BetaManagedAgentsModel = "claude-opus-4-7"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeOpus4_6 BetaManagedAgentsModel = "claude-opus-4-6"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeSonnet4_6 BetaManagedAgentsModel = "claude-sonnet-4-6"`

        Best combination of speed and intelligence

      - `const BetaManagedAgentsModelClaudeHaiku4_5 BetaManagedAgentsModel = "claude-haiku-4-5"`

      - `const BetaManagedAgentsModelClaudeHaiku4_5_20251001 BetaManagedAgentsModel = "claude-haiku-4-5-20251001"`

      - `const BetaManagedAgentsModelClaudeOpus4_5 BetaManagedAgentsModel = "claude-opus-4-5"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeOpus4_5_20251101 BetaManagedAgentsModel = "claude-opus-4-5-20251101"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeSonnet4_5 BetaManagedAgentsModel = "claude-sonnet-4-5"`

        **Deprecated**: Will reach end-of-life on November 30, 2026. Please migrate to claude-sonnet-5-5. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.

        High-performance model for agents and coding

      - `const BetaManagedAgentsModelClaudeSonnet4_5_20250929 BetaManagedAgentsModel = "claude-sonnet-4-5-20250929"`

        **Deprecated**: Will reach end-of-life on November 30, 2026. Please migrate to claude-sonnet-5-5. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.

        High-performance model for agents and coding

    - `Effort BetaManagedAgentsModelConfigEffortUnion Optional`

      How hard Claude works on each inference call. One of `low`, `medium`, `high`, `xhigh`, `max`. Always present; resolved to the per-model default at save time when not supplied.

      - `type BetaManagedAgentsEffortLow`

        Low effort. Favors latency over reasoning depth.

        - `Type BetaManagedAgentsEffortLowType`

      - `type BetaManagedAgentsEffortMedium`

        Medium effort. Balances latency and reasoning depth.

        - `Type BetaManagedAgentsEffortMediumType`

      - `type BetaManagedAgentsEffortHigh`

        High effort. Favors reasoning depth.

        - `Type BetaManagedAgentsEffortHighType`

      - `type BetaManagedAgentsEffortXhigh`

        Extra-high effort. Not all models accept this level.

        - `Type BetaManagedAgentsEffortXhighType`

      - `type BetaManagedAgentsEffortMax`

        Maximum effort. Favors reasoning depth over latency.

        - `Type BetaManagedAgentsEffortMaxType`

    - `InferenceGeo string Optional`

      Geographic region for model inference. When unset, requests fall through to the workspace's default_inference_geo.

    - `Speed BetaManagedAgentsModelConfigSpeed Optional`

      Inference speed mode. `fast` provides significantly faster output token generation at premium pricing. Defaults to `standard`. Not all models support `fast`; invalid combinations are rejected at create time.

      - `const BetaManagedAgentsModelConfigSpeedStandard BetaManagedAgentsModelConfigSpeed = "standard"`

      - `const BetaManagedAgentsModelConfigSpeedFast BetaManagedAgentsModelConfigSpeed = "fast"`

  - `Name string`

  - `Skills []BetaManagedAgentsSessionThreadAgentSkillUnion`

    - `type BetaManagedAgentsAnthropicSkill`

      A resolved Anthropic-managed skill.

      - `Type BetaManagedAgentsAnthropicSkillType`

      - `SkillID string`

      - `Version string`

    - `type BetaManagedAgentsCustomSkill`

      A resolved user-created custom skill.

      - `Type BetaManagedAgentsCustomSkillType`

      - `SkillID string`

      - `Version string`

  - `System string`

  - `Tools []BetaManagedAgentsSessionThreadAgentToolUnion`

    - `type BetaManagedAgentsAgentToolset20260401`

      - `Type BetaManagedAgentsAgentToolset20260401Type`

      - `Configs []BetaManagedAgentsAgentToolConfigUnion`

        - `type BetaManagedAgentsBashToolConfig`

          Configuration for the bash tool.

          - `Type Bash`

          - `Enabled bool`

          - `Name Bash`

          - `PermissionPolicy BetaManagedAgentsBashToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

              - `Type BetaManagedAgentsAlwaysAllowPolicyType`

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

              - `Type BetaManagedAgentsAlwaysAskPolicyType`

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

              - `Type Auto`

        - `type BetaManagedAgentsEditToolConfig`

          Configuration for the edit tool.

          - `Type Edit`

          - `Enabled bool`

          - `Name Edit`

          - `PermissionPolicy BetaManagedAgentsEditToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsReadToolConfig`

          Configuration for the read tool.

          - `Type Read`

          - `Enabled bool`

          - `Name Read`

          - `PermissionPolicy BetaManagedAgentsReadToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsWriteToolConfig`

          Configuration for the write tool.

          - `Type Write`

          - `Enabled bool`

          - `Name Write`

          - `PermissionPolicy BetaManagedAgentsWriteToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsGlobToolConfig`

          Configuration for the glob tool.

          - `Type Glob`

          - `Enabled bool`

          - `Name Glob`

          - `PermissionPolicy BetaManagedAgentsGlobToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsGrepToolConfig`

          Configuration for the grep tool.

          - `Type Grep`

          - `Enabled bool`

          - `Name Grep`

          - `PermissionPolicy BetaManagedAgentsGrepToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsWebFetchToolConfig`

          Configuration for the web_fetch tool.

          - `Type WebFetch`

          - `Enabled bool`

          - `Name WebFetch`

          - `PermissionPolicy BetaManagedAgentsWebFetchToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

          - `URLSources BetaManagedAgentsWebFetchURLSources`

            Which sources contribute URLs the tool may fetch, always in the object form. Null when not set, which allows every source.

            - `ClientToolResults BetaManagedAgentsWebFetchURLSourceToolFilterUnion`

              Which custom tools' results contribute URLs that may be fetched. Null when not set, which allows every custom tool's results.

              - `type BetaManagedAgentsWebFetchURLSourceAll`

                Every URL from this source may be fetched. This is the default.

                - `Type All`

              - `type BetaManagedAgentsWebFetchURLSourceNone`

                This source contributes no URLs that may be fetched.

                - `Type None`

              - `type BetaManagedAgentsWebFetchURLSourceOnly`

                Only the named tools' results contribute URLs that may be fetched.

                - `Type Only`

                - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

                  The tools whose results contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "none" to allow no tool's results.

                  - `Type ToolReference`

                    Must be "tool_reference".

                  - `Name string`

                    Name of the tool. Compared exactly, so upper and lower case letters are different.

                    minLength: 1, maxLength: 128

              - `type BetaManagedAgentsWebFetchURLSourceExcept`

                Every tool's results contribute URLs that may be fetched, except the named tools' results.

                - `Type Except`

                - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

                  The tools whose results do not contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "all" to leave out no tool's results.

                  - `Type ToolReference`

                    Must be "tool_reference".

                  - `Name string`

                    Name of the tool. Compared exactly, so upper and lower case letters are different.

                    minLength: 1, maxLength: 128

            - `ServerToolResults BetaManagedAgentsWebFetchURLSourceToolFilterUnion`

              Which of the web_search and web_fetch tools' results contribute URLs that may be fetched. Null when not set, which allows both.

            - `UserInput BetaManagedAgentsWebFetchURLSourceUserInputUnion`

              Whether URLs in the text of user messages may be fetched. Null when not set, which allows them.

              - `type BetaManagedAgentsWebFetchURLSourceAll`

                Every URL from this source may be fetched. This is the default.

              - `type BetaManagedAgentsWebFetchURLSourceNone`

                This source contributes no URLs that may be fetched.

          - `AllowedDomains []string Optional`

          - `BlockedDomains []string Optional`

          - `MaxContentTokens int64 Optional`

            format: int32

        - `type BetaManagedAgentsWebSearchToolConfig`

          Configuration for the web_search tool.

          - `Type WebSearch`

          - `Enabled bool`

          - `Name WebSearch`

          - `PermissionPolicy BetaManagedAgentsWebSearchToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

          - `AllowedDomains []string Optional`

          - `BlockedDomains []string Optional`

          - `UserLocation BetaManagedAgentsUserLocation Optional`

            Approximate user location for search result localization.

            - `Type Approximate`

              Location precision. Only "approximate" is supported.

            - `City string Optional`

              City name.

              minLength: 1, maxLength: 255

            - `Country string Optional`

              Two-letter ISO 3166-1 country code, uppercase.

            - `Region string Optional`

              Region or state name.

              minLength: 1, maxLength: 255

            - `Timezone string Optional`

              IANA timezone identifier, e.g. "America/Los_Angeles".

              minLength: 1, maxLength: 255

      - `DefaultConfig BetaManagedAgentsAgentToolsetDefaultConfig`

        Resolved default configuration for agent tools.

        - `Enabled bool`

        - `PermissionPolicy BetaManagedAgentsAgentToolsetDefaultConfigPermissionPolicyUnion`

          Permission policy for tool execution.

          - `type BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `type BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `type BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

    - `type BetaManagedAgentsMCPToolset`

      - `Type BetaManagedAgentsMCPToolsetType`

      - `Configs []BetaManagedAgentsMCPToolConfig`

        - `Enabled bool`

        - `Name string`

        - `PermissionPolicy BetaManagedAgentsMCPToolConfigPermissionPolicyUnion`

          Permission policy for tool execution.

          - `type BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `type BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `type BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `DefaultConfig BetaManagedAgentsMCPToolsetDefaultConfig`

        Resolved default configuration for all tools from an MCP server.

        - `Enabled bool`

        - `PermissionPolicy BetaManagedAgentsMCPToolsetDefaultConfigPermissionPolicyUnion`

          Permission policy for tool execution.

          - `type BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `type BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `type BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `MCPServerName string`

    - `type BetaManagedAgentsCustomTool`

      A custom tool as returned in API responses.

      - `Type BetaManagedAgentsCustomToolType`

      - `Description string`

      - `InputSchema BetaManagedAgentsCustomToolInputSchema`

        JSON Schema for custom tool input parameters.

        - `Type Object`

        - `Properties map[string, any] Optional`

        - `Required []string Optional`

      - `Name string`

  - `Version int64`

    format: int32

### Beta Managed Agents Skill Params

- `type BetaManagedAgentsSkillParamsUnion interface{…}`

  Skill to load in the session container.

  - `type BetaManagedAgentsAnthropicSkillParams`

    An Anthropic-managed skill.

    - `Type BetaManagedAgentsAnthropicSkillParamsType`

    - `SkillID string`

      Identifier of the Anthropic skill (e.g., "xlsx").

      minLength: 1, maxLength: 64

    - `Version string Optional`

      Version to pin. Defaults to latest if omitted.

      minLength: 1, maxLength: 64

  - `type BetaManagedAgentsCustomSkillParams`

    A user-created custom skill.

    - `Type BetaManagedAgentsCustomSkillParamsType`

    - `SkillID string`

      Tagged ID of the custom skill (e.g., "skill_01XJ5...").

      minLength: 1, maxLength: 64

    - `Version string Optional`

      Version to pin. Defaults to latest if omitted.

      minLength: 1, maxLength: 64

### Beta Managed Agents URL MCP Server Params

- `type BetaManagedAgentsURLMCPServerParams`

  URL-based MCP server connection.

  - `Type BetaManagedAgentsURLMCPServerParamsType`

  - `Name string`

    Unique name for this server, referenced by mcp_toolset configurations. 1-255 characters.

    minLength: 1, maxLength: 255

  - `URL string`

    Endpoint URL for the MCP server.

    maxLength: 2048

### Beta Managed Agents User Location

- `type BetaManagedAgentsUserLocation`

  Approximate user location for search result localization.

  - `Type Approximate`

    Location precision. Only "approximate" is supported.

  - `City string Optional`

    City name.

    minLength: 1, maxLength: 255

  - `Country string Optional`

    Two-letter ISO 3166-1 country code, uppercase.

  - `Region string Optional`

    Region or state name.

    minLength: 1, maxLength: 255

  - `Timezone string Optional`

    IANA timezone identifier, e.g. "America/Los_Angeles".

    minLength: 1, maxLength: 255

### Beta Managed Agents Web Fetch Tool Config

- `type BetaManagedAgentsWebFetchToolConfig`

  Configuration for the web_fetch tool.

  - `Type WebFetch`

  - `Enabled bool`

  - `Name WebFetch`

  - `PermissionPolicy BetaManagedAgentsWebFetchToolConfigPermissionPolicyUnion`

    Permission policy for tool execution.

    - `type BetaManagedAgentsAlwaysAllowPolicy`

      Tool calls are automatically approved without user confirmation.

      - `Type BetaManagedAgentsAlwaysAllowPolicyType`

    - `type BetaManagedAgentsAlwaysAskPolicy`

      Tool calls require user confirmation before execution.

      - `Type BetaManagedAgentsAlwaysAskPolicyType`

    - `type BetaManagedAgentsAutoPolicy`

      The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `Type Auto`

  - `URLSources BetaManagedAgentsWebFetchURLSources`

    Which sources contribute URLs the tool may fetch, always in the object form. Null when not set, which allows every source.

    - `ClientToolResults BetaManagedAgentsWebFetchURLSourceToolFilterUnion`

      Which custom tools' results contribute URLs that may be fetched. Null when not set, which allows every custom tool's results.

      - `type BetaManagedAgentsWebFetchURLSourceAll`

        Every URL from this source may be fetched. This is the default.

        - `Type All`

      - `type BetaManagedAgentsWebFetchURLSourceNone`

        This source contributes no URLs that may be fetched.

        - `Type None`

      - `type BetaManagedAgentsWebFetchURLSourceOnly`

        Only the named tools' results contribute URLs that may be fetched.

        - `Type Only`

        - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

          The tools whose results contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "none" to allow no tool's results.

          - `Type ToolReference`

            Must be "tool_reference".

          - `Name string`

            Name of the tool. Compared exactly, so upper and lower case letters are different.

            minLength: 1, maxLength: 128

      - `type BetaManagedAgentsWebFetchURLSourceExcept`

        Every tool's results contribute URLs that may be fetched, except the named tools' results.

        - `Type Except`

        - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

          The tools whose results do not contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "all" to leave out no tool's results.

          - `Type ToolReference`

            Must be "tool_reference".

          - `Name string`

            Name of the tool. Compared exactly, so upper and lower case letters are different.

            minLength: 1, maxLength: 128

    - `ServerToolResults BetaManagedAgentsWebFetchURLSourceToolFilterUnion`

      Which of the web_search and web_fetch tools' results contribute URLs that may be fetched. Null when not set, which allows both.

    - `UserInput BetaManagedAgentsWebFetchURLSourceUserInputUnion`

      Whether URLs in the text of user messages may be fetched. Null when not set, which allows them.

      - `type BetaManagedAgentsWebFetchURLSourceAll`

        Every URL from this source may be fetched. This is the default.

      - `type BetaManagedAgentsWebFetchURLSourceNone`

        This source contributes no URLs that may be fetched.

  - `AllowedDomains []string Optional`

  - `BlockedDomains []string Optional`

  - `MaxContentTokens int64 Optional`

    format: int32

### Beta Managed Agents Web Fetch Tool Config Params

- `type BetaManagedAgentsWebFetchToolConfigParams`

  Configuration override for the web_fetch tool.

  - `Type BetaManagedAgentsWebFetchToolConfigParamsType Optional`

  - `Name WebFetch`

    Must be "web_fetch".

  - `AllowedDomains []string Optional`

    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.

  - `BlockedDomains []string Optional`

    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.

  - `Enabled bool Optional`

    Whether this tool is enabled and available to Claude. Overrides the default_config setting.

  - `MaxContentTokens int64 Optional`

    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

  - `PermissionPolicy BetaManagedAgentsWebFetchToolConfigParamsPermissionPolicyUnion Optional`

    Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

    - `type BetaManagedAgentsAlwaysAllowPolicy`

      Tool calls are automatically approved without user confirmation.

      - `Type BetaManagedAgentsAlwaysAllowPolicyType`

    - `type BetaManagedAgentsAlwaysAskPolicy`

      Tool calls require user confirmation before execution.

      - `Type BetaManagedAgentsAlwaysAskPolicyType`

    - `type BetaManagedAgentsAutoPolicy`

      The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `Type Auto`

  - `URLSources BetaManagedAgentsWebFetchURLSourcesParams Optional`

    Which sources contribute URLs the tool may fetch. Omit to allow every source.

    - `ClientToolResults BetaManagedAgentsWebFetchURLSourceToolFilterParamsUnion Optional`

      Which custom tools' results contribute URLs that may be fetched: "all" (the default), "none", or an only or except list. Each name in a list must be a custom tool in the same tools array.

      - `type BetaManagedAgentsWebFetchURLSourceShorthand string`

        String form of a url_sources value that has no field other than its type: "all" means {"type": "all"} and "none" means {"type": "none"}.

        - `const BetaManagedAgentsWebFetchURLSourceShorthandAll BetaManagedAgentsWebFetchURLSourceShorthand = "all"`

        - `const BetaManagedAgentsWebFetchURLSourceShorthandNone BetaManagedAgentsWebFetchURLSourceShorthand = "none"`

      - `type BetaManagedAgentsWebFetchURLSourceToolFilterUnion interface{…}`

        Which tools' results contribute URLs that may be fetched.

        - `type BetaManagedAgentsWebFetchURLSourceAll`

          Every URL from this source may be fetched. This is the default.

          - `Type All`

        - `type BetaManagedAgentsWebFetchURLSourceNone`

          This source contributes no URLs that may be fetched.

          - `Type None`

        - `type BetaManagedAgentsWebFetchURLSourceOnly`

          Only the named tools' results contribute URLs that may be fetched.

          - `Type Only`

          - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

            The tools whose results contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "none" to allow no tool's results.

            - `Type ToolReference`

              Must be "tool_reference".

            - `Name string`

              Name of the tool. Compared exactly, so upper and lower case letters are different.

              minLength: 1, maxLength: 128

        - `type BetaManagedAgentsWebFetchURLSourceExcept`

          Every tool's results contribute URLs that may be fetched, except the named tools' results.

          - `Type Except`

          - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

            The tools whose results do not contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "all" to leave out no tool's results.

            - `Type ToolReference`

              Must be "tool_reference".

            - `Name string`

              Name of the tool. Compared exactly, so upper and lower case letters are different.

              minLength: 1, maxLength: 128

    - `ServerToolResults BetaManagedAgentsWebFetchURLSourceToolFilterParamsUnion Optional`

      Which of the web_search and web_fetch tools' results contribute URLs that may be fetched: "all" (the default), "none", or an only or except list. Each name in a list must be "web_search" or "web_fetch".

    - `UserInput BetaManagedAgentsWebFetchURLSourceUserInputParamsUnion Optional`

      Whether URLs in the text of user messages may be fetched: "all" (the default) or "none".

      - `type BetaManagedAgentsWebFetchURLSourceShorthand string`

        String form of a url_sources value that has no field other than its type: "all" means {"type": "all"} and "none" means {"type": "none"}.

      - `type BetaManagedAgentsWebFetchURLSourceUserInputUnion interface{…}`

        Whether URLs in the text of user messages may be fetched.

        - `type BetaManagedAgentsWebFetchURLSourceAll`

          Every URL from this source may be fetched. This is the default.

        - `type BetaManagedAgentsWebFetchURLSourceNone`

          This source contributes no URLs that may be fetched.

### Beta Managed Agents Web Fetch URL Source All

- `type BetaManagedAgentsWebFetchURLSourceAll`

  Every URL from this source may be fetched. This is the default.

  - `Type All`

### Beta Managed Agents Web Fetch URL Source Except

- `type BetaManagedAgentsWebFetchURLSourceExcept`

  Every tool's results contribute URLs that may be fetched, except the named tools' results.

  - `Type Except`

  - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

    The tools whose results do not contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "all" to leave out no tool's results.

    - `Type ToolReference`

      Must be "tool_reference".

    - `Name string`

      Name of the tool. Compared exactly, so upper and lower case letters are different.

      minLength: 1, maxLength: 128

### Beta Managed Agents Web Fetch URL Source None

- `type BetaManagedAgentsWebFetchURLSourceNone`

  This source contributes no URLs that may be fetched.

  - `Type None`

### Beta Managed Agents Web Fetch URL Source Only

- `type BetaManagedAgentsWebFetchURLSourceOnly`

  Only the named tools' results contribute URLs that may be fetched.

  - `Type Only`

  - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

    The tools whose results contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "none" to allow no tool's results.

    - `Type ToolReference`

      Must be "tool_reference".

    - `Name string`

      Name of the tool. Compared exactly, so upper and lower case letters are different.

      minLength: 1, maxLength: 128

### Beta Managed Agents Web Fetch URL Source Shorthand

- `type BetaManagedAgentsWebFetchURLSourceShorthand string`

  String form of a url_sources value that has no field other than its type: "all" means {"type": "all"} and "none" means {"type": "none"}.

  - `const BetaManagedAgentsWebFetchURLSourceShorthandAll BetaManagedAgentsWebFetchURLSourceShorthand = "all"`

  - `const BetaManagedAgentsWebFetchURLSourceShorthandNone BetaManagedAgentsWebFetchURLSourceShorthand = "none"`

### Beta Managed Agents Web Fetch URL Source Tool Filter

- `type BetaManagedAgentsWebFetchURLSourceToolFilterUnion interface{…}`

  Which tools' results contribute URLs that may be fetched.

  - `type BetaManagedAgentsWebFetchURLSourceAll`

    Every URL from this source may be fetched. This is the default.

    - `Type All`

  - `type BetaManagedAgentsWebFetchURLSourceNone`

    This source contributes no URLs that may be fetched.

    - `Type None`

  - `type BetaManagedAgentsWebFetchURLSourceOnly`

    Only the named tools' results contribute URLs that may be fetched.

    - `Type Only`

    - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

      The tools whose results contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "none" to allow no tool's results.

      - `Type ToolReference`

        Must be "tool_reference".

      - `Name string`

        Name of the tool. Compared exactly, so upper and lower case letters are different.

        minLength: 1, maxLength: 128

  - `type BetaManagedAgentsWebFetchURLSourceExcept`

    Every tool's results contribute URLs that may be fetched, except the named tools' results.

    - `Type Except`

    - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

      The tools whose results do not contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "all" to leave out no tool's results.

      - `Type ToolReference`

        Must be "tool_reference".

      - `Name string`

        Name of the tool. Compared exactly, so upper and lower case letters are different.

        minLength: 1, maxLength: 128

### Beta Managed Agents Web Fetch URL Source Tool Filter Params

- `type BetaManagedAgentsWebFetchURLSourceToolFilterParamsUnion interface{…}`

  Which tools' results contribute URLs that may be fetched. Accepts the string "all" or "none", or an object whose type is "all", "none", "only" or "except". Responses use the object form.

  - `type BetaManagedAgentsWebFetchURLSourceShorthand string`

    String form of a url_sources value that has no field other than its type: "all" means {"type": "all"} and "none" means {"type": "none"}.

    - `const BetaManagedAgentsWebFetchURLSourceShorthandAll BetaManagedAgentsWebFetchURLSourceShorthand = "all"`

    - `const BetaManagedAgentsWebFetchURLSourceShorthandNone BetaManagedAgentsWebFetchURLSourceShorthand = "none"`

  - `type BetaManagedAgentsWebFetchURLSourceToolFilterUnion interface{…}`

    Which tools' results contribute URLs that may be fetched.

    - `type BetaManagedAgentsWebFetchURLSourceAll`

      Every URL from this source may be fetched. This is the default.

      - `Type All`

    - `type BetaManagedAgentsWebFetchURLSourceNone`

      This source contributes no URLs that may be fetched.

      - `Type None`

    - `type BetaManagedAgentsWebFetchURLSourceOnly`

      Only the named tools' results contribute URLs that may be fetched.

      - `Type Only`

      - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

        The tools whose results contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "none" to allow no tool's results.

        - `Type ToolReference`

          Must be "tool_reference".

        - `Name string`

          Name of the tool. Compared exactly, so upper and lower case letters are different.

          minLength: 1, maxLength: 128

    - `type BetaManagedAgentsWebFetchURLSourceExcept`

      Every tool's results contribute URLs that may be fetched, except the named tools' results.

      - `Type Except`

      - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

        The tools whose results do not contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "all" to leave out no tool's results.

        - `Type ToolReference`

          Must be "tool_reference".

        - `Name string`

          Name of the tool. Compared exactly, so upper and lower case letters are different.

          minLength: 1, maxLength: 128

### Beta Managed Agents Web Fetch URL Source Tool Reference

- `type BetaManagedAgentsWebFetchURLSourceToolReference`

  Names one tool in an only or except list.

  - `Type ToolReference`

    Must be "tool_reference".

  - `Name string`

    Name of the tool. Compared exactly, so upper and lower case letters are different.

    minLength: 1, maxLength: 128

### Beta Managed Agents Web Fetch URL Source User Input

- `type BetaManagedAgentsWebFetchURLSourceUserInputUnion interface{…}`

  Whether URLs in the text of user messages may be fetched.

  - `type BetaManagedAgentsWebFetchURLSourceAll`

    Every URL from this source may be fetched. This is the default.

    - `Type All`

  - `type BetaManagedAgentsWebFetchURLSourceNone`

    This source contributes no URLs that may be fetched.

    - `Type None`

### Beta Managed Agents Web Fetch URL Source User Input Params

- `type BetaManagedAgentsWebFetchURLSourceUserInputParamsUnion interface{…}`

  Whether URLs in the text of user messages may be fetched. Accepts the string "all" or "none", or the object {"type": "all"} or {"type": "none"}. Responses use the object form.

  - `type BetaManagedAgentsWebFetchURLSourceShorthand string`

    String form of a url_sources value that has no field other than its type: "all" means {"type": "all"} and "none" means {"type": "none"}.

    - `const BetaManagedAgentsWebFetchURLSourceShorthandAll BetaManagedAgentsWebFetchURLSourceShorthand = "all"`

    - `const BetaManagedAgentsWebFetchURLSourceShorthandNone BetaManagedAgentsWebFetchURLSourceShorthand = "none"`

  - `type BetaManagedAgentsWebFetchURLSourceUserInputUnion interface{…}`

    Whether URLs in the text of user messages may be fetched.

    - `type BetaManagedAgentsWebFetchURLSourceAll`

      Every URL from this source may be fetched. This is the default.

      - `Type All`

    - `type BetaManagedAgentsWebFetchURLSourceNone`

      This source contributes no URLs that may be fetched.

      - `Type None`

### Beta Managed Agents Web Fetch URL Sources

- `type BetaManagedAgentsWebFetchURLSources`

  Which sources contribute URLs the web_fetch tool may fetch. A key that is null was not set and allows every URL from that source.

  - `ClientToolResults BetaManagedAgentsWebFetchURLSourceToolFilterUnion`

    Which custom tools' results contribute URLs that may be fetched. Null when not set, which allows every custom tool's results.

    - `type BetaManagedAgentsWebFetchURLSourceAll`

      Every URL from this source may be fetched. This is the default.

      - `Type All`

    - `type BetaManagedAgentsWebFetchURLSourceNone`

      This source contributes no URLs that may be fetched.

      - `Type None`

    - `type BetaManagedAgentsWebFetchURLSourceOnly`

      Only the named tools' results contribute URLs that may be fetched.

      - `Type Only`

      - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

        The tools whose results contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "none" to allow no tool's results.

        - `Type ToolReference`

          Must be "tool_reference".

        - `Name string`

          Name of the tool. Compared exactly, so upper and lower case letters are different.

          minLength: 1, maxLength: 128

    - `type BetaManagedAgentsWebFetchURLSourceExcept`

      Every tool's results contribute URLs that may be fetched, except the named tools' results.

      - `Type Except`

      - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

        The tools whose results do not contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "all" to leave out no tool's results.

        - `Type ToolReference`

          Must be "tool_reference".

        - `Name string`

          Name of the tool. Compared exactly, so upper and lower case letters are different.

          minLength: 1, maxLength: 128

  - `ServerToolResults BetaManagedAgentsWebFetchURLSourceToolFilterUnion`

    Which of the web_search and web_fetch tools' results contribute URLs that may be fetched. Null when not set, which allows both.

  - `UserInput BetaManagedAgentsWebFetchURLSourceUserInputUnion`

    Whether URLs in the text of user messages may be fetched. Null when not set, which allows them.

    - `type BetaManagedAgentsWebFetchURLSourceAll`

      Every URL from this source may be fetched. This is the default.

    - `type BetaManagedAgentsWebFetchURLSourceNone`

      This source contributes no URLs that may be fetched.

### Beta Managed Agents Web Fetch URL Sources Params

- `type BetaManagedAgentsWebFetchURLSourcesParams`

  Which sources contribute URLs the web_fetch tool may fetch. When web_fetch is limited to URLs the conversation has already shown the model (in a user message, a custom tool's result, or an earlier web_search or web_fetch result), each key narrows one of those sources and defaults to "all". Setting all three keys to "none" is rejected.

  - `ClientToolResults BetaManagedAgentsWebFetchURLSourceToolFilterParamsUnion Optional`

    Which custom tools' results contribute URLs that may be fetched: "all" (the default), "none", or an only or except list. Each name in a list must be a custom tool in the same tools array.

    - `type BetaManagedAgentsWebFetchURLSourceShorthand string`

      String form of a url_sources value that has no field other than its type: "all" means {"type": "all"} and "none" means {"type": "none"}.

      - `const BetaManagedAgentsWebFetchURLSourceShorthandAll BetaManagedAgentsWebFetchURLSourceShorthand = "all"`

      - `const BetaManagedAgentsWebFetchURLSourceShorthandNone BetaManagedAgentsWebFetchURLSourceShorthand = "none"`

    - `type BetaManagedAgentsWebFetchURLSourceToolFilterUnion interface{…}`

      Which tools' results contribute URLs that may be fetched.

      - `type BetaManagedAgentsWebFetchURLSourceAll`

        Every URL from this source may be fetched. This is the default.

        - `Type All`

      - `type BetaManagedAgentsWebFetchURLSourceNone`

        This source contributes no URLs that may be fetched.

        - `Type None`

      - `type BetaManagedAgentsWebFetchURLSourceOnly`

        Only the named tools' results contribute URLs that may be fetched.

        - `Type Only`

        - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

          The tools whose results contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "none" to allow no tool's results.

          - `Type ToolReference`

            Must be "tool_reference".

          - `Name string`

            Name of the tool. Compared exactly, so upper and lower case letters are different.

            minLength: 1, maxLength: 128

      - `type BetaManagedAgentsWebFetchURLSourceExcept`

        Every tool's results contribute URLs that may be fetched, except the named tools' results.

        - `Type Except`

        - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

          The tools whose results do not contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "all" to leave out no tool's results.

          - `Type ToolReference`

            Must be "tool_reference".

          - `Name string`

            Name of the tool. Compared exactly, so upper and lower case letters are different.

            minLength: 1, maxLength: 128

  - `ServerToolResults BetaManagedAgentsWebFetchURLSourceToolFilterParamsUnion Optional`

    Which of the web_search and web_fetch tools' results contribute URLs that may be fetched: "all" (the default), "none", or an only or except list. Each name in a list must be "web_search" or "web_fetch".

  - `UserInput BetaManagedAgentsWebFetchURLSourceUserInputParamsUnion Optional`

    Whether URLs in the text of user messages may be fetched: "all" (the default) or "none".

    - `type BetaManagedAgentsWebFetchURLSourceShorthand string`

      String form of a url_sources value that has no field other than its type: "all" means {"type": "all"} and "none" means {"type": "none"}.

    - `type BetaManagedAgentsWebFetchURLSourceUserInputUnion interface{…}`

      Whether URLs in the text of user messages may be fetched.

      - `type BetaManagedAgentsWebFetchURLSourceAll`

        Every URL from this source may be fetched. This is the default.

      - `type BetaManagedAgentsWebFetchURLSourceNone`

        This source contributes no URLs that may be fetched.

### Beta Managed Agents Web Search Tool Config

- `type BetaManagedAgentsWebSearchToolConfig`

  Configuration for the web_search tool.

  - `Type WebSearch`

  - `Enabled bool`

  - `Name WebSearch`

  - `PermissionPolicy BetaManagedAgentsWebSearchToolConfigPermissionPolicyUnion`

    Permission policy for tool execution.

    - `type BetaManagedAgentsAlwaysAllowPolicy`

      Tool calls are automatically approved without user confirmation.

      - `Type BetaManagedAgentsAlwaysAllowPolicyType`

    - `type BetaManagedAgentsAlwaysAskPolicy`

      Tool calls require user confirmation before execution.

      - `Type BetaManagedAgentsAlwaysAskPolicyType`

    - `type BetaManagedAgentsAutoPolicy`

      The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `Type Auto`

  - `AllowedDomains []string Optional`

  - `BlockedDomains []string Optional`

  - `UserLocation BetaManagedAgentsUserLocation Optional`

    Approximate user location for search result localization.

    - `Type Approximate`

      Location precision. Only "approximate" is supported.

    - `City string Optional`

      City name.

      minLength: 1, maxLength: 255

    - `Country string Optional`

      Two-letter ISO 3166-1 country code, uppercase.

    - `Region string Optional`

      Region or state name.

      minLength: 1, maxLength: 255

    - `Timezone string Optional`

      IANA timezone identifier, e.g. "America/Los_Angeles".

      minLength: 1, maxLength: 255

### Beta Managed Agents Web Search Tool Config Params

- `type BetaManagedAgentsWebSearchToolConfigParams`

  Configuration override for the web_search tool.

  - `Type BetaManagedAgentsWebSearchToolConfigParamsType Optional`

  - `Name WebSearch`

    Must be "web_search".

  - `AllowedDomains []string Optional`

    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.

  - `BlockedDomains []string Optional`

    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.

  - `Enabled bool Optional`

    Whether this tool is enabled and available to Claude. Overrides the default_config setting.

  - `PermissionPolicy BetaManagedAgentsWebSearchToolConfigParamsPermissionPolicyUnion Optional`

    Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

    - `type BetaManagedAgentsAlwaysAllowPolicy`

      Tool calls are automatically approved without user confirmation.

      - `Type BetaManagedAgentsAlwaysAllowPolicyType`

    - `type BetaManagedAgentsAlwaysAskPolicy`

      Tool calls require user confirmation before execution.

      - `Type BetaManagedAgentsAlwaysAskPolicyType`

    - `type BetaManagedAgentsAutoPolicy`

      The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `Type Auto`

  - `UserLocation BetaManagedAgentsUserLocationParam Optional`

    Approximate user location for search result localization.

    - `Type Approximate`

      Location precision. Only "approximate" is supported.

    - `City string Optional`

      City name.

      minLength: 1, maxLength: 255

    - `Country string Optional`

      Two-letter ISO 3166-1 country code, uppercase.

    - `Region string Optional`

      Region or state name.

      minLength: 1, maxLength: 255

    - `Timezone string Optional`

      IANA timezone identifier, e.g. "America/Los_Angeles".

      minLength: 1, maxLength: 255

### Beta Managed Agents Write Tool Config

- `type BetaManagedAgentsWriteToolConfig`

  Configuration for the write tool.

  - `Type Write`

  - `Enabled bool`

  - `Name Write`

  - `PermissionPolicy BetaManagedAgentsWriteToolConfigPermissionPolicyUnion`

    Permission policy for tool execution.

    - `type BetaManagedAgentsAlwaysAllowPolicy`

      Tool calls are automatically approved without user confirmation.

      - `Type BetaManagedAgentsAlwaysAllowPolicyType`

    - `type BetaManagedAgentsAlwaysAskPolicy`

      Tool calls require user confirmation before execution.

      - `Type BetaManagedAgentsAlwaysAskPolicyType`

    - `type BetaManagedAgentsAutoPolicy`

      The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `Type Auto`

### Beta Managed Agents Write Tool Config Params

- `type BetaManagedAgentsWriteToolConfigParams`

  Configuration override for the write tool.

  - `Type BetaManagedAgentsWriteToolConfigParamsType Optional`

  - `Name Write`

    Must be "write".

  - `Enabled bool Optional`

    Whether this tool is enabled and available to Claude. Overrides the default_config setting.

  - `PermissionPolicy BetaManagedAgentsWriteToolConfigParamsPermissionPolicyUnion Optional`

    Permission policy for this tool. Controls whether tool calls are auto-approved or require confirmation.

    - `type BetaManagedAgentsAlwaysAllowPolicy`

      Tool calls are automatically approved without user confirmation.

      - `Type BetaManagedAgentsAlwaysAllowPolicyType`

    - `type BetaManagedAgentsAlwaysAskPolicy`

      Tool calls require user confirmation before execution.

      - `Type BetaManagedAgentsAlwaysAskPolicyType`

    - `type BetaManagedAgentsAutoPolicy`

      The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `Type Auto`

## Agents › Versions

### List Agent Versions

`client.Beta.Agents.Versions.List(ctx, agentID, params) (*PageCursor[BetaManagedAgentsAgent], error)`

**GET** `/v1/agents/{agent_id}/versions`

List Agent Versions

#### Parameters

- `agentID string` (path parameter)

  Agent ID to list versions for.

- `params BetaAgentVersionListParams`

  - `Limit param.Opt[int64] Optional` (query parameter)

    Maximum results per page. Default 20, maximum 100.

    format: int32

  - `Page param.Opt[string] Optional` (query parameter)

    Opaque pagination cursor.

  - `Betas []AnthropicBeta Optional` (header parameter)

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

    - `const AnthropicBetaMessageBatches2024_09_24 AnthropicBeta = "message-batches-2024-09-24"`

    - `const AnthropicBetaPromptCaching2024_07_31 AnthropicBeta = "prompt-caching-2024-07-31"`

    - `const AnthropicBetaComputerUse2024_10_22 AnthropicBeta = "computer-use-2024-10-22"`

    - `const AnthropicBetaComputerUse2025_01_24 AnthropicBeta = "computer-use-2025-01-24"`

    - `const AnthropicBetaPDFs2024_09_25 AnthropicBeta = "pdfs-2024-09-25"`

    - `const AnthropicBetaTokenCounting2024_11_01 AnthropicBeta = "token-counting-2024-11-01"`

    - `const AnthropicBetaTokenEfficientTools2025_02_19 AnthropicBeta = "token-efficient-tools-2025-02-19"`

    - `const AnthropicBetaOutput128k2025_02_19 AnthropicBeta = "output-128k-2025-02-19"`

    - `const AnthropicBetaFilesAPI2025_04_14 AnthropicBeta = "files-api-2025-04-14"`

    - `const AnthropicBetaMCPClient2025_04_04 AnthropicBeta = "mcp-client-2025-04-04"`

    - `const AnthropicBetaMCPClient2025_11_20 AnthropicBeta = "mcp-client-2025-11-20"`

    - `const AnthropicBetaDevFullThinking2025_05_14 AnthropicBeta = "dev-full-thinking-2025-05-14"`

    - `const AnthropicBetaInterleavedThinking2025_05_14 AnthropicBeta = "interleaved-thinking-2025-05-14"`

    - `const AnthropicBetaCodeExecution2025_05_22 AnthropicBeta = "code-execution-2025-05-22"`

    - `const AnthropicBetaExtendedCacheTTL2025_04_11 AnthropicBeta = "extended-cache-ttl-2025-04-11"`

    - `const AnthropicBetaContext1m2025_08_07 AnthropicBeta = "context-1m-2025-08-07"`

    - `const AnthropicBetaContextManagement2025_06_27 AnthropicBeta = "context-management-2025-06-27"`

    - `const AnthropicBetaModelContextWindowExceeded2025_08_26 AnthropicBeta = "model-context-window-exceeded-2025-08-26"`

    - `const AnthropicBetaSkills2025_10_02 AnthropicBeta = "skills-2025-10-02"`

    - `const AnthropicBetaFastMode2026_02_01 AnthropicBeta = "fast-mode-2026-02-01"`

    - `const AnthropicBetaOutput300k2026_03_24 AnthropicBeta = "output-300k-2026-03-24"`

    - `const AnthropicBetaUserProfiles2026_03_24 AnthropicBeta = "user-profiles-2026-03-24"`

    - `const AnthropicBetaUserProfiles2026_08_18 AnthropicBeta = "user-profiles-2026-08-18"`

    - `const AnthropicBetaUserProfiles2026_09_04 AnthropicBeta = "user-profiles-2026-09-04"`

    - `const AnthropicBetaAdvisorTool2026_03_01 AnthropicBeta = "advisor-tool-2026-03-01"`

    - `const AnthropicBetaManagedAgents2026_04_01 AnthropicBeta = "managed-agents-2026-04-01"`

    - `const AnthropicBetaCacheDiagnosis2026_04_07 AnthropicBeta = "cache-diagnosis-2026-04-07"`

    - `const AnthropicBetaDreaming2026_04_21 AnthropicBeta = "dreaming-2026-04-21"`

    - `const AnthropicBetaThinkingTokenCount2026_05_13 AnthropicBeta = "thinking-token-count-2026-05-13"`

    - `const AnthropicBetaServerSideFallback2026_06_01 AnthropicBeta = "server-side-fallback-2026-06-01"`

    - `const AnthropicBetaServerSideFallback2026_07_01 AnthropicBeta = "server-side-fallback-2026-07-01"`

    - `const AnthropicBetaFallbackCredit2026_06_01 AnthropicBeta = "fallback-credit-2026-06-01"`

    - `const AnthropicBetaFallbackCredit2026_07_01 AnthropicBeta = "fallback-credit-2026-07-01"`

    - `const AnthropicBetaAgentMemory2026_07_22 AnthropicBeta = "agent-memory-2026-07-22"`

    - `const AnthropicBetaMidConversationToolChanges2026_07_01 AnthropicBeta = "mid-conversation-tool-changes-2026-07-01"`

    - `const AnthropicBetaCompact2026_01_12 AnthropicBeta = "compact-2026-01-12"`

    - `const AnthropicBetaComputerUse2025_11_24 AnthropicBeta = "computer-use-2025-11-24"`

    - `const AnthropicBetaMCPTunnels2026_06_22 AnthropicBeta = "mcp-tunnels-2026-06-22"`

    - `const AnthropicBetaStructuredOutputs2025_11_13 AnthropicBeta = "structured-outputs-2025-11-13"`

    - `const AnthropicBetaTaskBudgets2026_03_13 AnthropicBeta = "task-budgets-2026-03-13"`

    - `const AnthropicBetaThinkingDisplayUpdates2026_08_18 AnthropicBeta = "thinking-display-updates-2026-08-18"`

    - `const AnthropicBetaCEUserManagement2026_07_13 AnthropicBeta = "ce-user-management-2026-07-13"`

    - `const AnthropicBetaMidConversationOutputConfig2026_07_01 AnthropicBeta = "mid-conversation-output-config-2026-07-01"`

    - `const AnthropicBetaThinkingBindingControls2026_08_01 AnthropicBeta = "thinking-binding-controls-2026-08-01"`

    - `const AnthropicBetaMidConversationSystemClearAt2026_08_21 AnthropicBeta = "mid-conversation-system-clear-at-2026-08-21"`

    - `const AnthropicBetaCompact2026_09_04 AnthropicBeta = "compact-2026-09-04"`

    - `const AnthropicBetaInlineTools2026_09_15 AnthropicBeta = "inline-tools-2026-09-15"`

    - `const AnthropicBetaMCPClient2026_09_15 AnthropicBeta = "mcp-client-2026-09-15"`

    - `const AnthropicBetaCEPlugins2026_09_01 AnthropicBeta = "ce-plugins-2026-09-01"`

    - `const AnthropicBetaSpendLimitReads2026_09_26 AnthropicBeta = "spend-limit-reads-2026-09-26"`

    - `const AnthropicBetaTelemetryDestinations2026_08_11 AnthropicBeta = "telemetry-destinations-2026-08-11"`

  - `WorkspaceID param.Opt[string] Optional` (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

- `type BetaManagedAgentsAgent`

  A Managed Agents `agent`.

  - `Type BetaManagedAgentsAgentType`

  - `ID string`

  - `ArchivedAt Time`

    When the agent was archived. Null if not archived.

    format: date-time

  - `CreatedAt Time`

    A timestamp in RFC 3339 format

    format: date-time

  - `Description string`

  - `ExecutionIdentity BetaManagedAgentsExecutionIdentityUnion`

    Execution principal for runs of this agent. Always present; `{"type": "service_account"}` when runs carry no customer-named principal.

    - `type BetaManagedAgentsAWSRoleExecutionIdentity`

      An AWS IAM role principal as returned in API responses.

      - `Type AWSRole`

      - `RoleARN string`

        The IAM role's ARN.

    - `type BetaManagedAgentsServiceAccountExecutionIdentity`

      The Anthropic-managed service account as returned in API responses.

      - `Type ServiceAccount`

  - `MCPServers []BetaManagedAgentsMCPServerURLDefinition`

    - `Type BetaManagedAgentsMCPServerURLDefinitionType`

    - `Name string`

    - `URL string`

  - `Metadata map[string, string]`

  - `Model BetaManagedAgentsModelConfig`

    Model identifier and configuration.

    - `ID BetaManagedAgentsModel`

      The model that will power your agent.

      See [models](https://docs.anthropic.com/en/docs/models-overview) for additional details and options.

      - `const BetaManagedAgentsModelClaudeHaiku5_5 BetaManagedAgentsModel = "claude-haiku-5-5"`

        Fastest model for high-volume, real-time tasks

      - `const BetaManagedAgentsModelClaudeSonnet5_5 BetaManagedAgentsModel = "claude-sonnet-5-5"`

        Efficient model for coding and agents

      - `const BetaManagedAgentsModelClaudeOpus5_5 BetaManagedAgentsModel = "claude-opus-5-5"`

        Powerful intelligence for coding, knowledge work, and long-running agents

      - `const BetaManagedAgentsModelClaudeFable5_1 BetaManagedAgentsModel = "claude-fable-5-1"`

        Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows

      - `const BetaManagedAgentsModelClaudeSonnet5 BetaManagedAgentsModel = "claude-sonnet-5"`

        Efficient model for coding and agents

      - `const BetaManagedAgentsModelClaudeFable5 BetaManagedAgentsModel = "claude-fable-5"`

        Next generation of intelligence for the hardest knowledge work and coding problems

      - `const BetaManagedAgentsModelClaudeOpus5 BetaManagedAgentsModel = "claude-opus-5"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeOpus4_8 BetaManagedAgentsModel = "claude-opus-4-8"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeOpus4_7 BetaManagedAgentsModel = "claude-opus-4-7"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeOpus4_6 BetaManagedAgentsModel = "claude-opus-4-6"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeSonnet4_6 BetaManagedAgentsModel = "claude-sonnet-4-6"`

        Best combination of speed and intelligence

      - `const BetaManagedAgentsModelClaudeHaiku4_5 BetaManagedAgentsModel = "claude-haiku-4-5"`

      - `const BetaManagedAgentsModelClaudeHaiku4_5_20251001 BetaManagedAgentsModel = "claude-haiku-4-5-20251001"`

      - `const BetaManagedAgentsModelClaudeOpus4_5 BetaManagedAgentsModel = "claude-opus-4-5"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeOpus4_5_20251101 BetaManagedAgentsModel = "claude-opus-4-5-20251101"`

        Powerful intelligence for long-running agents and coding

      - `const BetaManagedAgentsModelClaudeSonnet4_5 BetaManagedAgentsModel = "claude-sonnet-4-5"`

        **Deprecated**: Will reach end-of-life on November 30, 2026. Please migrate to claude-sonnet-5-5. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.

        High-performance model for agents and coding

      - `const BetaManagedAgentsModelClaudeSonnet4_5_20250929 BetaManagedAgentsModel = "claude-sonnet-4-5-20250929"`

        **Deprecated**: Will reach end-of-life on November 30, 2026. Please migrate to claude-sonnet-5-5. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information.

        High-performance model for agents and coding

    - `Effort BetaManagedAgentsModelConfigEffortUnion Optional`

      How hard Claude works on each inference call. One of `low`, `medium`, `high`, `xhigh`, `max`. Always present; resolved to the per-model default at save time when not supplied.

      - `type BetaManagedAgentsEffortLow`

        Low effort. Favors latency over reasoning depth.

        - `Type BetaManagedAgentsEffortLowType`

      - `type BetaManagedAgentsEffortMedium`

        Medium effort. Balances latency and reasoning depth.

        - `Type BetaManagedAgentsEffortMediumType`

      - `type BetaManagedAgentsEffortHigh`

        High effort. Favors reasoning depth.

        - `Type BetaManagedAgentsEffortHighType`

      - `type BetaManagedAgentsEffortXhigh`

        Extra-high effort. Not all models accept this level.

        - `Type BetaManagedAgentsEffortXhighType`

      - `type BetaManagedAgentsEffortMax`

        Maximum effort. Favors reasoning depth over latency.

        - `Type BetaManagedAgentsEffortMaxType`

    - `InferenceGeo string Optional`

      Geographic region for model inference. When unset, requests fall through to the workspace's default_inference_geo.

    - `Speed BetaManagedAgentsModelConfigSpeed Optional`

      Inference speed mode. `fast` provides significantly faster output token generation at premium pricing. Defaults to `standard`. Not all models support `fast`; invalid combinations are rejected at create time.

      - `const BetaManagedAgentsModelConfigSpeedStandard BetaManagedAgentsModelConfigSpeed = "standard"`

      - `const BetaManagedAgentsModelConfigSpeedFast BetaManagedAgentsModelConfigSpeed = "fast"`

  - `Multiagent BetaManagedAgentsMultiagentUnion`

    Multiagent orchestration configuration. Null when the agent is single-threaded.

    - `type BetaManagedAgentsMultiagentCoordinator`

      Resolved coordinator topology with a concrete agent roster.

      - `Type BetaManagedAgentsMultiagentCoordinatorType`

      - `Agents []BetaManagedAgentsMultiagentCoordinatorAgentUnion`

        Agents the coordinator may spawn as session threads, each resolved to a specific version.

        - `type BetaManagedAgentsAgentReference`

          A resolved agent reference with a concrete version.

          - `Type BetaManagedAgentsAgentReferenceType`

          - `ID string`

          - `Version int64`

            format: int32

        - `type BetaManagedAgentsAdvisor`

          Platform advisor roster entry: a model the session's primary thread may consult mid-turn.

          - `Type BetaManagedAgentsAdvisorType`

          - `Model string`

            The advisor model id.

    - `type BetaManagedAgentsMultiagent20261001`

      Resolved multiagent configuration with three members, each enabled or disabled on its own.

      - `Type Multiagent20261001`

      - `Advisor BetaManagedAgentsMultiagentAdvisorUnion`

        Whether the session's primary thread can consult an advisor model.

        - `type BetaManagedAgentsMultiagentAdvisorEnabled`

          The session's primary thread can consult `model` mid-turn.

          - `Type Enabled`

          - `Model string`

            The advisor model id.

        - `type BetaManagedAgentsMultiagentAdvisorDisabled`

          The agent has no advisor.

          - `Type Disabled`

      - `Subagents BetaManagedAgentsMultiagentSubagentsUnion`

        Whether the agent can spawn session threads.

        - `type BetaManagedAgentsMultiagentSubagentsEnabled`

          The agent can spawn session threads.

          - `Type Enabled`

          - `InlineAgents BetaManagedAgentsMultiagentInlineAgentsUnion`

            Whether the agent can define inline agents, which are not saved, when it spawns session threads.

            - `type BetaManagedAgentsMultiagentInlineAgentsEnabled`

              The agent can define inline agents.

              - `Type Enabled`

            - `type BetaManagedAgentsMultiagentInlineAgentsDisabled`

              The agent cannot define inline agents.

              - `Type Disabled`

          - `PredefinedAgents []BetaManagedAgentsAgentReference`

            Predefined agents, which are saved agents that this agent can spawn as session threads, each resolved to a specific version.

            - `Type BetaManagedAgentsAgentReferenceType`

            - `ID string`

            - `Version int64`

              format: int32

        - `type BetaManagedAgentsMultiagentSubagentsDisabled`

          The agent cannot spawn session threads.

          - `Type Disabled`

      - `Workflows BetaManagedAgentsMultiagentWorkflowsUnion`

        Whether the agent can start workflow runs.

        - `type BetaManagedAgentsMultiagentWorkflowsEnabled`

          The agent can start workflow runs.

          - `Type Enabled`

          - `InlineAgents BetaManagedAgentsMultiagentInlineAgentsUnion`

            Whether a run's plan can define inline agents, which are not saved.

          - `PredefinedAgents []BetaManagedAgentsAgentReference`

            Predefined agents, which are saved agents that a run's plan can use, each resolved to a specific version.

            - `Type BetaManagedAgentsAgentReferenceType`

            - `ID string`

            - `Version int64`

              format: int32

        - `type BetaManagedAgentsMultiagentWorkflowsDisabled`

          The agent cannot start workflow runs.

          - `Type Disabled`

  - `Name string`

  - `Skills []BetaManagedAgentsAgentSkillUnion`

    - `type BetaManagedAgentsAnthropicSkill`

      A resolved Anthropic-managed skill.

      - `Type BetaManagedAgentsAnthropicSkillType`

      - `SkillID string`

      - `Version string`

    - `type BetaManagedAgentsCustomSkill`

      A resolved user-created custom skill.

      - `Type BetaManagedAgentsCustomSkillType`

      - `SkillID string`

      - `Version string`

  - `System string`

  - `Tools []BetaManagedAgentsAgentToolUnion`

    - `type BetaManagedAgentsAgentToolset20260401`

      - `Type BetaManagedAgentsAgentToolset20260401Type`

      - `Configs []BetaManagedAgentsAgentToolConfigUnion`

        - `type BetaManagedAgentsBashToolConfig`

          Configuration for the bash tool.

          - `Type Bash`

          - `Enabled bool`

          - `Name Bash`

          - `PermissionPolicy BetaManagedAgentsBashToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

              - `Type BetaManagedAgentsAlwaysAllowPolicyType`

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

              - `Type BetaManagedAgentsAlwaysAskPolicyType`

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

              - `Type Auto`

        - `type BetaManagedAgentsEditToolConfig`

          Configuration for the edit tool.

          - `Type Edit`

          - `Enabled bool`

          - `Name Edit`

          - `PermissionPolicy BetaManagedAgentsEditToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsReadToolConfig`

          Configuration for the read tool.

          - `Type Read`

          - `Enabled bool`

          - `Name Read`

          - `PermissionPolicy BetaManagedAgentsReadToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsWriteToolConfig`

          Configuration for the write tool.

          - `Type Write`

          - `Enabled bool`

          - `Name Write`

          - `PermissionPolicy BetaManagedAgentsWriteToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsGlobToolConfig`

          Configuration for the glob tool.

          - `Type Glob`

          - `Enabled bool`

          - `Name Glob`

          - `PermissionPolicy BetaManagedAgentsGlobToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsGrepToolConfig`

          Configuration for the grep tool.

          - `Type Grep`

          - `Enabled bool`

          - `Name Grep`

          - `PermissionPolicy BetaManagedAgentsGrepToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

        - `type BetaManagedAgentsWebFetchToolConfig`

          Configuration for the web_fetch tool.

          - `Type WebFetch`

          - `Enabled bool`

          - `Name WebFetch`

          - `PermissionPolicy BetaManagedAgentsWebFetchToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

          - `URLSources BetaManagedAgentsWebFetchURLSources`

            Which sources contribute URLs the tool may fetch, always in the object form. Null when not set, which allows every source.

            - `ClientToolResults BetaManagedAgentsWebFetchURLSourceToolFilterUnion`

              Which custom tools' results contribute URLs that may be fetched. Null when not set, which allows every custom tool's results.

              - `type BetaManagedAgentsWebFetchURLSourceAll`

                Every URL from this source may be fetched. This is the default.

                - `Type All`

              - `type BetaManagedAgentsWebFetchURLSourceNone`

                This source contributes no URLs that may be fetched.

                - `Type None`

              - `type BetaManagedAgentsWebFetchURLSourceOnly`

                Only the named tools' results contribute URLs that may be fetched.

                - `Type Only`

                - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

                  The tools whose results contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "none" to allow no tool's results.

                  - `Type ToolReference`

                    Must be "tool_reference".

                  - `Name string`

                    Name of the tool. Compared exactly, so upper and lower case letters are different.

                    minLength: 1, maxLength: 128

              - `type BetaManagedAgentsWebFetchURLSourceExcept`

                Every tool's results contribute URLs that may be fetched, except the named tools' results.

                - `Type Except`

                - `Tools []BetaManagedAgentsWebFetchURLSourceToolReference`

                  The tools whose results do not contribute. Between 1 and 128 entries, each with a different name. An empty list is rejected; use "all" to leave out no tool's results.

                  - `Type ToolReference`

                    Must be "tool_reference".

                  - `Name string`

                    Name of the tool. Compared exactly, so upper and lower case letters are different.

                    minLength: 1, maxLength: 128

            - `ServerToolResults BetaManagedAgentsWebFetchURLSourceToolFilterUnion`

              Which of the web_search and web_fetch tools' results contribute URLs that may be fetched. Null when not set, which allows both.

            - `UserInput BetaManagedAgentsWebFetchURLSourceUserInputUnion`

              Whether URLs in the text of user messages may be fetched. Null when not set, which allows them.

              - `type BetaManagedAgentsWebFetchURLSourceAll`

                Every URL from this source may be fetched. This is the default.

              - `type BetaManagedAgentsWebFetchURLSourceNone`

                This source contributes no URLs that may be fetched.

          - `AllowedDomains []string Optional`

          - `BlockedDomains []string Optional`

          - `MaxContentTokens int64 Optional`

            format: int32

        - `type BetaManagedAgentsWebSearchToolConfig`

          Configuration for the web_search tool.

          - `Type WebSearch`

          - `Enabled bool`

          - `Name WebSearch`

          - `PermissionPolicy BetaManagedAgentsWebSearchToolConfigPermissionPolicyUnion`

            Permission policy for tool execution.

            - `type BetaManagedAgentsAlwaysAllowPolicy`

              Tool calls are automatically approved without user confirmation.

            - `type BetaManagedAgentsAlwaysAskPolicy`

              Tool calls require user confirmation before execution.

            - `type BetaManagedAgentsAutoPolicy`

              The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

          - `AllowedDomains []string Optional`

          - `BlockedDomains []string Optional`

          - `UserLocation BetaManagedAgentsUserLocation Optional`

            Approximate user location for search result localization.

            - `Type Approximate`

              Location precision. Only "approximate" is supported.

            - `City string Optional`

              City name.

              minLength: 1, maxLength: 255

            - `Country string Optional`

              Two-letter ISO 3166-1 country code, uppercase.

            - `Region string Optional`

              Region or state name.

              minLength: 1, maxLength: 255

            - `Timezone string Optional`

              IANA timezone identifier, e.g. "America/Los_Angeles".

              minLength: 1, maxLength: 255

      - `DefaultConfig BetaManagedAgentsAgentToolsetDefaultConfig`

        Resolved default configuration for agent tools.

        - `Enabled bool`

        - `PermissionPolicy BetaManagedAgentsAgentToolsetDefaultConfigPermissionPolicyUnion`

          Permission policy for tool execution.

          - `type BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `type BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `type BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

    - `type BetaManagedAgentsMCPToolset`

      - `Type BetaManagedAgentsMCPToolsetType`

      - `Configs []BetaManagedAgentsMCPToolConfig`

        - `Enabled bool`

        - `Name string`

        - `PermissionPolicy BetaManagedAgentsMCPToolConfigPermissionPolicyUnion`

          Permission policy for tool execution.

          - `type BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `type BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `type BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `DefaultConfig BetaManagedAgentsMCPToolsetDefaultConfig`

        Resolved default configuration for all tools from an MCP server.

        - `Enabled bool`

        - `PermissionPolicy BetaManagedAgentsMCPToolsetDefaultConfigPermissionPolicyUnion`

          Permission policy for tool execution.

          - `type BetaManagedAgentsAlwaysAllowPolicy`

            Tool calls are automatically approved without user confirmation.

          - `type BetaManagedAgentsAlwaysAskPolicy`

            Tool calls require user confirmation before execution.

          - `type BetaManagedAgentsAutoPolicy`

            The server decides each tool call individually: it judges, from the tool, its input, and the session content so far, whether the call is safe to execute or high-risk, and evaluates it to allow when judged safe and to deny when judged high-risk. A call the server cannot reach a judgement on evaluates to ask.

      - `MCPServerName string`

    - `type BetaManagedAgentsCustomTool`

      A custom tool as returned in API responses.

      - `Type BetaManagedAgentsCustomToolType`

      - `Description string`

      - `InputSchema BetaManagedAgentsCustomToolInputSchema`

        JSON Schema for custom tool input parameters.

        - `Type Object`

        - `Properties map[string, any] Optional`

        - `Required []string Optional`

      - `Name string`

  - `UpdatedAt Time`

    A timestamp in RFC 3339 format

    format: date-time

  - `Version int64`

    The agent's current version. Starts at 1 and increments when the agent is modified.

    format: int32

#### Example

```go
package main

import (
	"context"
	"fmt"

	"github.com/anthropics/anthropic-sdk-go"
	"github.com/anthropics/anthropic-sdk-go/option"
)

func main() {
	client := anthropic.NewClient(
		option.WithAPIKey("my-anthropic-api-key"),
	)
	page, err := client.Beta.Agents.Versions.List(
		context.TODO(),
		"agent_011CZkYpogX7uDKUyvBTophP",
		anthropic.BetaAgentVersionListParams{},
	)
	if err != nil {
		panic(err.Error())
	}
	fmt.Printf("%+v\n", page)
}
```

##### Response (200)

```json
{
  "data": [
    {
      "id": "agent_011CZkYpogX7uDKUyvBTophP",
      "archived_at": null,
      "created_at": "2026-03-15T10:00:00Z",
      "description": "A general-purpose starter agent.",
      "execution_identity": {
        "type": "service_account"
      },
      "mcp_servers": [
        {
          "name": "example-mcp",
          "type": "url",
          "url": "https://example-server.modelcontextprotocol.io/sse"
        }
      ],
      "metadata": {
        "foo": "bar"
      },
      "model": {
        "id": "claude-opus-5-5",
        "effort": {
          "type": "low"
        },
        "inference_geo": "inference_geo",
        "speed": "standard"
      },
      "multiagent": {
        "advisor": {
          "type": "disabled"
        },
        "subagents": {
          "inline_agents": {
            "type": "enabled"
          },
          "predefined_agents": [
            {
              "id": "agent_011CZkYqphY8vELVzwCUpqiQ",
              "type": "agent",
              "version": 1
            }
          ],
          "type": "enabled"
        },
        "type": "multiagent_20261001",
        "workflows": {
          "inline_agents": {
            "type": "enabled"
          },
          "predefined_agents": [
            {
              "id": "agent_011CZkYqphY8vELVzwCUpqiQ",
              "type": "agent",
              "version": 1
            }
          ],
          "type": "enabled"
        }
      },
      "name": "My First Agent",
      "skills": [
        {
          "skill_id": "xlsx",
          "type": "anthropic",
          "version": "1"
        },
        {
          "skill_id": "skill_011CZkZFNu9hAbo3jZPRgTmx",
          "type": "custom",
          "version": "2"
        }
      ],
      "system": "You are a general-purpose agent that can research, write code, run commands, and use connected tools to complete the user's task end to end.",
      "tools": [
        {
          "configs": [
            {
              "enabled": true,
              "name": "bash",
              "permission_policy": {
                "type": "always_allow"
              },
              "type": "bash"
            }
          ],
          "default_config": {
            "enabled": true,
            "permission_policy": {
              "type": "always_ask"
            }
          },
          "type": "agent_toolset_20260401"
        }
      ],
      "type": "agent",
      "updated_at": "2026-03-15T10:00:00Z",
      "version": 1
    }
  ],
  "next_page": "next_page"
}
```
