Claude Platform Docs

Agents

Create Agent
beta.agents.create(**kwargs) -> BetaManagedAgentsAgent
POST/v1/agents
List Agents
beta.agents.list(**kwargs) -> SyncPageCursor[BetaManagedAgentsAgent]
GET/v1/agents
Get Agent
beta.agents.retrieve(agent_id, **kwargs) -> BetaManagedAgentsAgent
GET/v1/agents/{agent_id}
Update Agent
beta.agents.update(agent_id, **kwargs) -> BetaManagedAgentsAgent
POST/v1/agents/{agent_id}
Archive Agent
beta.agents.archive(agent_id, **kwargs) -> BetaManagedAgentsAgent
POST/v1/agents/{agent_id}/archive
Models
class BetaManagedAgentsAdvisor: type: "advisor"; model

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

type: Literal["advisor"]
model: str

The advisor model id.

class BetaManagedAgentsAgent: type: "agent"; id; archived_at; ... # 12 more

A Managed Agents agent.

class BetaManagedAgentsAgentReference: type: "agent"; id; version

A resolved agent reference with a concrete version.

type: Literal["agent"]
id: str
version: int
formatint32
type BetaManagedAgentsAgentToolConfig = ...

Configuration for a specific agent tool.

One of the following:
type BetaManagedAgentsAgentToolConfigParams = ...

Configuration override for a specific tool within a toolset.

One of the following:
class BetaManagedAgentsAgentToolsetDefaultConfig: enabled; permission_policy

Resolved default configuration for agent tools.

enabled: bool
permission_policy: PermissionPolicy

Permission policy for tool execution.

One of the following:
class BetaManagedAgentsAlwaysAllowPolicy: type: "always_allow"

Tool calls are automatically approved without user confirmation.

type: Literal["always_allow"]
class BetaManagedAgentsAlwaysAskPolicy: type: "always_ask"

Tool calls require user confirmation before execution.

type: Literal["always_ask"]
class BetaManagedAgentsAutoPolicy: type: "auto"

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: Literal["auto"]
class BetaManagedAgentsAgentToolsetDefaultConfigParams: enabled; permission_policy

Default configuration for all tools in a toolset.

class BetaManagedAgentsAgentToolset20260401: type: "agent_toolset_20260401"; configs; default_config
class BetaManagedAgentsAgentToolset20260401BashInput: command; restart; timeout_ms

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: Optional[str]

Shell command to execute. Omit only when restart is true.

restart: Optional[bool]

When true, restart the persistent bash session instead of running a command. Subsequent calls without restart will run against the fresh session.

timeout_ms: Optional[int]

Per-call timeout in milliseconds. Defaults to the runner-wide tool timeout when omitted or zero.

minimum0
class BetaManagedAgentsAgentToolset20260401EditInput: file_path; new_string; old_string; replace_all

Input payload for the edit tool. Performs a string replacement in the named file; by default old_string must occur exactly once.

file_path: str

Path of the file to edit.

new_string: str

Replacement text.

old_string: str

Substring to find and replace.

replace_all: Optional[bool]

When true, replace every occurrence of old_string instead of requiring a unique match.

class BetaManagedAgentsAgentToolset20260401GlobInput: pattern; path

Input payload for the glob tool. Returns paths matching a doublestar glob pattern, newest first.

pattern: str

Doublestar glob pattern (e.g. **/*.go). Absolute patterns are only permitted when the runner is configured to allow them.

path: Optional[str]

Optional directory root to search under. Defaults to the runner's working directory.

class BetaManagedAgentsAgentToolset20260401GrepInput: pattern; path

Input payload for the grep tool. Searches file contents for a regular expression, returning matching lines.

pattern: str

Regular expression to search for.

path: Optional[str]

Optional directory root to search under. Defaults to the runner's working directory.

class BetaManagedAgentsAgentToolset20260401Params: type: "agent_toolset_20260401"; configs; default_config

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

class BetaManagedAgentsAgentToolset20260401ReadInput: file_path; view_range

Input payload for the read tool. Reads file contents relative to the runner's working directory (or absolute when the runner permits).

file_path: str

Path of the file to read.

view_range: Optional[List[int]]

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

minItems2
maxItems2
class BetaManagedAgentsAgentToolset20260401WriteInput: content; file_path

Input payload for the write tool. Writes (overwriting) the entire file contents.

content: str

Full file contents to write.

file_path: str

Path of the file to write.

class BetaManagedAgentsAlwaysAllowPolicy: type: "always_allow"

Tool calls are automatically approved without user confirmation.

type: Literal["always_allow"]
class BetaManagedAgentsAlwaysAskPolicy: type: "always_ask"

Tool calls require user confirmation before execution.

type: Literal["always_ask"]
class BetaManagedAgentsAnthropicSkill: type: "anthropic"; skill_id; version

A resolved Anthropic-managed skill.

type: Literal["anthropic"]
skill_id: str
version: str
class BetaManagedAgentsAnthropicSkillParams: type: "anthropic"; skill_id; version

An Anthropic-managed skill.

type: Literal["anthropic"]
skill_id: str

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

minLength1
maxLength64
version: Optional[str]

Version to pin. Defaults to latest if omitted.

minLength1
maxLength64
class BetaManagedAgentsAutoPolicy: type: "auto"

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: Literal["auto"]
class BetaManagedAgentsBashToolConfig: type: "bash"; enabled; name; permission_policy

Configuration for the bash tool.

class BetaManagedAgentsBashToolConfigParams: type; name; enabled; permission_policy

Configuration override for the bash tool.

class BetaManagedAgentsCustomSkill: type: "custom"; skill_id; version

A resolved user-created custom skill.

type: Literal["custom"]
skill_id: str
version: str
class BetaManagedAgentsCustomSkillParams: type: "custom"; skill_id; version

A user-created custom skill.

type: Literal["custom"]
skill_id: str

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

minLength1
maxLength64
version: Optional[str]

Version to pin. Defaults to latest if omitted.

minLength1
maxLength64
class BetaManagedAgentsCustomTool: type: "custom"; description; input_schema; name

A custom tool as returned in API responses.

type: Literal["custom"]
description: str

JSON Schema for custom tool input parameters.

type: Literal["object"]
properties: Optional[Dict[str, object]]
required: Optional[List[str]]
name: str
class BetaManagedAgentsCustomToolInputSchema: type: "object"; properties; required

JSON Schema for custom tool input parameters.

type: Literal["object"]
properties: Optional[Dict[str, object]]
required: Optional[List[str]]
class BetaManagedAgentsCustomToolParams: type: "custom"; description; input_schema; name

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: Literal["custom"]
description: str

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

minLength1

JSON Schema defining the expected input parameters for the tool.

type: Literal["object"]
properties: Optional[Dict[str, object]]
required: Optional[List[str]]
name: str

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

minLength1
maxLength128
class BetaManagedAgentsEditToolConfig: type: "edit"; enabled; name; permission_policy

Configuration for the edit tool.

class BetaManagedAgentsEditToolConfigParams: type; name; enabled; permission_policy

Configuration override for the edit tool.

class BetaManagedAgentsEffortHigh: type: "high"

High effort. Favors reasoning depth.

type: Literal["high"]
class BetaManagedAgentsEffortLow: type: "low"

Low effort. Favors latency over reasoning depth.

type: Literal["low"]
class BetaManagedAgentsEffortMax: type: "max"

Maximum effort. Favors reasoning depth over latency.

type: Literal["max"]
class BetaManagedAgentsEffortMedium: type: "medium"

Medium effort. Balances latency and reasoning depth.

type: Literal["medium"]
class BetaManagedAgentsEffortXhigh: type: "xhigh"

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

type: Literal["xhigh"]
class BetaManagedAgentsGlobToolConfig: type: "glob"; enabled; name; permission_policy

Configuration for the glob tool.

class BetaManagedAgentsGlobToolConfigParams: type; name; enabled; permission_policy

Configuration override for the glob tool.

class BetaManagedAgentsGrepToolConfig: type: "grep"; enabled; name; permission_policy

Configuration for the grep tool.

class BetaManagedAgentsGrepToolConfigParams: type; name; enabled; permission_policy

Configuration override for the grep tool.

class BetaManagedAgentsMCPServerURLDefinition: type: "url"; name; url

URL-based MCP server connection as returned in API responses.

type: Literal["url"]
name: str
url: str
class BetaManagedAgentsMCPToolConfig: enabled; name; permission_policy

Resolved configuration for a specific MCP tool.

class BetaManagedAgentsMCPToolConfigParams: name; enabled; permission_policy

Configuration override for a specific MCP tool.

class BetaManagedAgentsMCPToolset: type: "mcp_toolset"; configs; default_config; mcp_server_name
class BetaManagedAgentsMCPToolsetDefaultConfig: enabled; permission_policy

Resolved default configuration for all tools from an MCP server.

enabled: bool
permission_policy: PermissionPolicy

Permission policy for tool execution.

One of the following:
class BetaManagedAgentsAlwaysAllowPolicy: type: "always_allow"

Tool calls are automatically approved without user confirmation.

type: Literal["always_allow"]
class BetaManagedAgentsAlwaysAskPolicy: type: "always_ask"

Tool calls require user confirmation before execution.

type: Literal["always_ask"]
class BetaManagedAgentsAutoPolicy: type: "auto"

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: Literal["auto"]
class BetaManagedAgentsMCPToolsetDefaultConfigParams: enabled; permission_policy

Default configuration for all tools from an MCP server.

class BetaManagedAgentsMCPToolsetParams: type: "mcp_toolset"; mcp_server_name; configs; default_config

Configuration for tools from an MCP server defined in mcp_servers.

type BetaManagedAgentsModel = Union[Literal["claude-haiku-5-5", "claude-sonnet-5-5", "claude-opus-5-5", 14 more], str]

The model that will power your agent.

See models for additional details and options.

One of the following:
class BetaManagedAgentsModelConfig: id; effort; inference_geo; speed

Model identifier and configuration.

class BetaManagedAgentsModelConfigParams: id; effort; inference_geo; speed

An object that defines additional configuration control over model use

type BetaManagedAgentsMultiagentAdvisor = ...

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

One of the following:
class BetaManagedAgentsMultiagentAdvisorEnabled: type: "enabled"; model

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

type: Literal["enabled"]
model: str

The advisor model id.

class BetaManagedAgentsMultiagentAdvisorDisabled: type: "disabled"

The agent has no advisor.

type: Literal["disabled"]
class BetaManagedAgentsMultiagentAdvisorDisabled: type: "disabled"

The agent has no advisor.

type: Literal["disabled"]
class BetaManagedAgentsMultiagentAdvisorDisabledParams: type: "disabled"

The agent has no advisor.

type: Literal["disabled"]
class BetaManagedAgentsMultiagentAdvisorEnabled: type: "enabled"; model

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

type: Literal["enabled"]
model: str

The advisor model id.

class BetaManagedAgentsMultiagentAdvisorEnabledParams: type: "enabled"; model

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

type: Literal["enabled"]
model: str

A Claude model id. The model must be permitted as an advisor for this agent's model.

minLength1
maxLength256
type BetaManagedAgentsMultiagentAdvisorParams = ...

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

One of the following:
class BetaManagedAgentsMultiagentAdvisorEnabledParams: type: "enabled"; model

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

type: Literal["enabled"]
model: str

A Claude model id. The model must be permitted as an advisor for this agent's model.

minLength1
maxLength256
class BetaManagedAgentsMultiagentAdvisorDisabledParams: type: "disabled"

The agent has no advisor.

type: Literal["disabled"]
class BetaManagedAgentsMultiagentCoordinator: type: "coordinator"; agents

Resolved coordinator topology with a concrete agent roster.

class BetaManagedAgentsMultiagentCoordinatorParams: type: "coordinator"; agents

A coordinator topology: the session's primary thread orchestrates work by spawning session threads, each running an agent drawn from the agents roster.

type BetaManagedAgentsMultiagentInlineAgents = ...

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.

One of the following:
class BetaManagedAgentsMultiagentInlineAgentsEnabled: type: "enabled"

The agent can define inline agents.

type: Literal["enabled"]
class BetaManagedAgentsMultiagentInlineAgentsDisabled: type: "disabled"

The agent cannot define inline agents.

type: Literal["disabled"]
class BetaManagedAgentsMultiagentInlineAgentsDisabled: type: "disabled"

The agent cannot define inline agents.

type: Literal["disabled"]
class BetaManagedAgentsMultiagentInlineAgentsDisabledParams: type: "disabled"

The agent cannot define inline agents.

type: Literal["disabled"]
class BetaManagedAgentsMultiagentInlineAgentsEnabled: type: "enabled"

The agent can define inline agents.

type: Literal["enabled"]
class BetaManagedAgentsMultiagentInlineAgentsEnabledParams: type: "enabled"

The agent can define inline agents.

type: Literal["enabled"]
type BetaManagedAgentsMultiagentInlineAgentsParams = ...

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.

One of the following:
class BetaManagedAgentsMultiagentInlineAgentsEnabledParams: type: "enabled"

The agent can define inline agents.

type: Literal["enabled"]
class BetaManagedAgentsMultiagentInlineAgentsDisabledParams: type: "disabled"

The agent cannot define inline agents.

type: Literal["disabled"]
type BetaManagedAgentsMultiagentPredefinedAgentParams = ...

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.

One of the following:
str
class BetaManagedAgentsAgentParams: type: "agent"; id; version

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

type: Literal["agent"]
id: str

The agent ID.

minLength1
maxLength128
version: Optional[int]

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

formatint32
class BetaManagedAgentsMultiagentSelfParams: type: "self"

Sentinel roster entry meaning "the agent that owns this configuration". Resolved server-side to a concrete agent reference.

type: Literal["self"]
class BetaManagedAgentsMultiagentSelfParams: type: "self"

Sentinel roster entry meaning "the agent that owns this configuration". Resolved server-side to a concrete agent reference.

type: Literal["self"]
type BetaManagedAgentsMultiagentSubagents = ...

Whether the agent can spawn session threads.

One of the following:
class BetaManagedAgentsMultiagentSubagentsEnabled: type: "enabled"; inline_agents; predefined_agents

The agent can spawn session threads.

class BetaManagedAgentsMultiagentSubagentsDisabled: type: "disabled"

The agent cannot spawn session threads.

type: Literal["disabled"]
class BetaManagedAgentsMultiagentSubagentsDisabled: type: "disabled"

The agent cannot spawn session threads.

type: Literal["disabled"]
class BetaManagedAgentsMultiagentSubagentsDisabledParams: type: "disabled"

The agent cannot spawn session threads.

type: Literal["disabled"]
class BetaManagedAgentsMultiagentSubagentsEnabled: type: "enabled"; inline_agents; predefined_agents

The agent can spawn session threads.

class BetaManagedAgentsMultiagentSubagentsEnabledParams: type: "enabled"; inline_agents; predefined_agents

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 BetaManagedAgentsMultiagentSubagentsParams = ...

Whether the agent can spawn session threads.

One of the following:
class BetaManagedAgentsMultiagentSubagentsEnabledParams: type: "enabled"; inline_agents; predefined_agents

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.

class BetaManagedAgentsMultiagentSubagentsDisabledParams: type: "disabled"

The agent cannot spawn session threads.

type: Literal["disabled"]
type BetaManagedAgentsMultiagentWorkflows = ...

Whether the agent can start workflow runs.

One of the following:
class BetaManagedAgentsMultiagentWorkflowsEnabled: type: "enabled"; inline_agents; predefined_agents

The agent can start workflow runs.

class BetaManagedAgentsMultiagentWorkflowsDisabled: type: "disabled"

The agent cannot start workflow runs.

type: Literal["disabled"]
class BetaManagedAgentsMultiagentWorkflowsDisabled: type: "disabled"

The agent cannot start workflow runs.

type: Literal["disabled"]
class BetaManagedAgentsMultiagentWorkflowsDisabledParams: type: "disabled"

The agent cannot start workflow runs.

type: Literal["disabled"]
class BetaManagedAgentsMultiagentWorkflowsEnabled: type: "enabled"; inline_agents; predefined_agents

The agent can start workflow runs.

class BetaManagedAgentsMultiagentWorkflowsEnabledParams: type: "enabled"; inline_agents; predefined_agents

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 BetaManagedAgentsMultiagentWorkflowsParams = ...

Whether the agent can start workflow runs.

One of the following:
class BetaManagedAgentsMultiagentWorkflowsEnabledParams: type: "enabled"; inline_agents; predefined_agents

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.

class BetaManagedAgentsMultiagentWorkflowsDisabledParams: type: "disabled"

The agent cannot start workflow runs.

type: Literal["disabled"]
class BetaManagedAgentsMultiagent20261001: type: "multiagent_20261001"; advisor; subagents; workflows

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

class BetaManagedAgentsMultiagent20261001Params: type: "multiagent_20261001"; advisor; subagents; workflows

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.

class BetaManagedAgentsReadToolConfig: type: "read"; enabled; name; permission_policy

Configuration for the read tool.

class BetaManagedAgentsReadToolConfigParams: type; name; enabled; permission_policy

Configuration override for the read tool.

class BetaManagedAgentsSessionThreadAgent: type: "agent"; id; description; ... # 7 more

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 BetaManagedAgentsSkillParams = ...

Skill to load in the session container.

One of the following:
class BetaManagedAgentsAnthropicSkillParams: type: "anthropic"; skill_id; version

An Anthropic-managed skill.

type: Literal["anthropic"]
skill_id: str

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

minLength1
maxLength64
version: Optional[str]

Version to pin. Defaults to latest if omitted.

minLength1
maxLength64
class BetaManagedAgentsCustomSkillParams: type: "custom"; skill_id; version

A user-created custom skill.

type: Literal["custom"]
skill_id: str

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

minLength1
maxLength64
version: Optional[str]

Version to pin. Defaults to latest if omitted.

minLength1
maxLength64
class BetaManagedAgentsURLMCPServerParams: type: "url"; name; url

URL-based MCP server connection.

type: Literal["url"]
name: str

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

minLength1
maxLength255
url: str

Endpoint URL for the MCP server.

maxLength2048
class BetaManagedAgentsUserLocation: type: "approximate"; city; country; ... # 2 more

Approximate user location for search result localization.

type: Literal["approximate"]

Location precision. Only "approximate" is supported.

city: Optional[str]

City name.

minLength1
maxLength255
country: Optional[str]

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

region: Optional[str]

Region or state name.

minLength1
maxLength255
timezone: Optional[str]

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

minLength1
maxLength255
class BetaManagedAgentsWebFetchToolConfig: type: "web_fetch"; enabled; name; ... # 5 more

Configuration for the web_fetch tool.

class BetaManagedAgentsWebFetchToolConfigParams: type; name; allowed_domains; ... # 5 more

Configuration override for the web_fetch tool.

class BetaManagedAgentsWebFetchURLSourceAll: type: "all"

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

type: Literal["all"]
class BetaManagedAgentsWebFetchURLSourceExcept: type: "except"; tools

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

type: Literal["except"]

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: Literal["tool_reference"]

Must be "tool_reference".

name: str

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

minLength1
maxLength128
class BetaManagedAgentsWebFetchURLSourceNone: type: "none"

This source contributes no URLs that may be fetched.

type: Literal["none"]
class BetaManagedAgentsWebFetchURLSourceOnly: type: "only"; tools

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

type: Literal["only"]

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: Literal["tool_reference"]

Must be "tool_reference".

name: str

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

minLength1
maxLength128
type BetaManagedAgentsWebFetchURLSourceShorthand = Literal["all", "none"]

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

One of the following:
"all"
"none"
type BetaManagedAgentsWebFetchURLSourceToolFilter = ...

Which tools' results contribute URLs that may be fetched.

One of the following:
type BetaManagedAgentsWebFetchURLSourceToolFilterParams = Union[BetaManagedAgentsWebFetchURLSourceShorthand, BetaManagedAgentsWebFetchURLSourceToolFilter]

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.

One of the following:
Literal["all", "none"]
One of the following:
"all"
"none"
type BetaManagedAgentsWebFetchURLSourceToolFilter = ...

Which tools' results contribute URLs that may be fetched.

One of the following:
class BetaManagedAgentsWebFetchURLSourceToolReference: type: "tool_reference"; name

Names one tool in an only or except list.

type: Literal["tool_reference"]

Must be "tool_reference".

name: str

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

minLength1
maxLength128
type BetaManagedAgentsWebFetchURLSourceUserInput = ...

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

One of the following:
class BetaManagedAgentsWebFetchURLSourceAll: type: "all"

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

type: Literal["all"]
class BetaManagedAgentsWebFetchURLSourceNone: type: "none"

This source contributes no URLs that may be fetched.

type: Literal["none"]
type BetaManagedAgentsWebFetchURLSourceUserInputParams = Union[BetaManagedAgentsWebFetchURLSourceShorthand, BetaManagedAgentsWebFetchURLSourceUserInput]

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.

One of the following:
Literal["all", "none"]
One of the following:
"all"
"none"
type BetaManagedAgentsWebFetchURLSourceUserInput = ...

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

One of the following:
class BetaManagedAgentsWebFetchURLSourceAll: type: "all"

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

type: Literal["all"]
class BetaManagedAgentsWebFetchURLSourceNone: type: "none"

This source contributes no URLs that may be fetched.

type: Literal["none"]
class BetaManagedAgentsWebFetchURLSources: client_tool_results; server_tool_results; user_input

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.

class BetaManagedAgentsWebFetchURLSourcesParams: client_tool_results; server_tool_results; user_input

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.

class BetaManagedAgentsWebSearchToolConfig: type: "web_search"; enabled; name; ... # 4 more

Configuration for the web_search tool.

class BetaManagedAgentsWebSearchToolConfigParams: type; name; allowed_domains; ... # 4 more

Configuration override for the web_search tool.

class BetaManagedAgentsWriteToolConfig: type: "write"; enabled; name; permission_policy

Configuration for the write tool.

class BetaManagedAgentsWriteToolConfigParams: type; name; enabled; permission_policy

Configuration override for the write tool.

AgentsVersions

List Agent Versions
beta.agents.versions.list(agent_id, **kwargs) -> SyncPageCursor[BetaManagedAgentsAgent]
GET/v1/agents/{agent_id}/versions