title: Sessions url: https://platform.claude.com/docs/en/api/beta/sessions
Sessions
Create Session
POST /v1/sessions
Create Session
Headers
-
"anthropic-beta": optional array of AnthropicBetaOptional header to specify the beta version(s) you want to use.
-
string -
"message-batches-2024-09-24" or "prompt-caching-2024-07-31" or "computer-use-2024-10-22" or 43 more-
"message-batches-2024-09-24" -
"prompt-caching-2024-07-31" -
"computer-use-2024-10-22" -
"computer-use-2025-01-24" -
"pdfs-2024-09-25" -
"token-counting-2024-11-01" -
"token-efficient-tools-2025-02-19" -
"output-128k-2025-02-19" -
"files-api-2025-04-14" -
"mcp-client-2025-04-04" -
"mcp-client-2025-11-20" -
"dev-full-thinking-2025-05-14" -
"interleaved-thinking-2025-05-14" -
"code-execution-2025-05-22" -
"extended-cache-ttl-2025-04-11" -
"context-1m-2025-08-07" -
"context-management-2025-06-27" -
"model-context-window-exceeded-2025-08-26" -
"skills-2025-10-02" -
"fast-mode-2026-02-01" -
"output-300k-2026-03-24" -
"user-profiles-2026-03-24" -
"user-profiles-2026-08-18" -
"user-profiles-2026-09-04" -
"advisor-tool-2026-03-01" -
"managed-agents-2026-04-01" -
"cache-diagnosis-2026-04-07" -
"dreaming-2026-04-21" -
"thinking-token-count-2026-05-13" -
"server-side-fallback-2026-06-01" -
"server-side-fallback-2026-07-01" -
"fallback-credit-2026-06-01" -
"fallback-credit-2026-07-01" -
"agent-memory-2026-07-22" -
"mid-conversation-tool-changes-2026-07-01" -
"compact-2026-01-12" -
"computer-use-2025-11-24" -
"mcp-tunnels-2026-06-22" -
"structured-outputs-2025-11-13" -
"task-budgets-2026-03-13" -
"thinking-display-updates-2026-08-18" -
"ce-user-management-2026-07-13" -
"mid-conversation-output-config-2026-07-01" -
"thinking-binding-controls-2026-08-01" -
"mid-conversation-system-clear-at-2026-08-21" -
"compact-2026-09-04"
-
-
-
"anthropic-workspace-id": optional string
Body parameters
-
agent: string or BetaManagedAgentsAgentParams or BetaManagedAgentsAgentWithOverridesParamsAgent identifier. Accepts the
agentID string, which pins the latest version for the session, or anagentobject with both id and version specified.-
string -
BetaManagedAgentsAgentParams objectSpecification for an Agent. Provide a specific
versionor use the short-formagent="agent_id"for the most recent version-
type: "agent" -
id: stringThe
agentID.minLength: 1, maxLength: 128
-
version: optional numberThe specific
agentversion to use. Omit to use the latest version. Must be at least 1 if specified.format: int32
-
-
BetaManagedAgentsAgentWithOverridesParams objectReference to an
agentplus optional configuration overrides. Each provided field replaces the agent's value for the caller's use; the agent resource is unchanged.-
type: "agent_with_overrides" -
id: stringThe
agentID.minLength: 1, maxLength: 128
-
mcp_servers: optional array of BetaManagedAgentsURLMCPServerParamsReplacement MCP server list. Full replacement: the provided array becomes the MCP servers. Send an empty array to clear; omit to preserve the agent's servers.
-
type: "url" -
name: stringUnique name for this server, referenced by mcp_toolset configurations. 1-255 characters.
minLength: 1, maxLength: 255
-
url: stringEndpoint URL for the MCP server.
maxLength: 2048
-
-
model: optional BetaManagedAgentsModel or BetaManagedAgentsModelConfigParamsReplacement model. Accepts the model string, e.g.
claude-opus-5, or amodel_configobject. Omit to use the agent's model.-
BetaManagedAgentsModel = "claude-fable-5-1" or "claude-sonnet-5" or "claude-fable-5" or 11 more or stringThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1" or "claude-sonnet-5" or "claude-fable-5" or 11 moreThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1"Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows
-
"claude-sonnet-5"High-performance model for coding and agents
-
"claude-fable-5"Next generation of intelligence for the hardest knowledge work and coding problems
-
"claude-opus-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-8"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-7"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-6"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-6"Best combination of speed and intelligence
-
"claude-haiku-4-5"Fastest model with near-frontier intelligence
-
"claude-haiku-4-5-20251001"Fastest model with near-frontier intelligence
-
"claude-opus-4-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-5-20251101"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-5"High-performance model for agents and coding
-
"claude-sonnet-4-5-20250929"High-performance model for agents and coding
-
-
string
-
-
BetaManagedAgentsModelConfigParams objectAn object that defines additional configuration control over model use
-
id: BetaManagedAgentsModelThe model that will power your agent.
See models for additional details and options.
-
effort: optional "low" or "medium" or "high" or 2 more or BetaManagedAgentsEffortLow or BetaManagedAgentsEffortMedium or 3 more or nullHow 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.-
BetaManagedAgentsEffortLevel = "low" or "medium" or "high" or 2 moreHow 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.
-
"low" -
"medium" -
"high" -
"xhigh" -
"max"
-
-
BetaManagedAgentsEffortLow objectLow effort. Favors latency over reasoning depth.
type: "low"
-
BetaManagedAgentsEffortMedium objectMedium effort. Balances latency and reasoning depth.
type: "medium"
-
BetaManagedAgentsEffortHigh objectHigh effort. Favors reasoning depth.
type: "high"
-
BetaManagedAgentsEffortXhigh objectExtra-high effort. Not all models accept this level.
type: "xhigh"
-
BetaManagedAgentsEffortMax objectMaximum effort. Favors reasoning depth over latency.
type: "max"
-
-
inference_geo: optional string or nullGeographic region for model inference. When unset, requests fall through to the workspace's default_inference_geo. On update,
modelis whole-object replacement — omitting inference_geo clears it. -
speed: optional "standard" or "fast" or nullInference speed mode.
fastprovides significantly faster output token generation at premium pricing. Not all models supportfast; invalid combinations are rejected at create time.-
"standard" -
"fast"
-
-
-
-
skills: optional array of BetaManagedAgentsSkillParamsReplacement skill list. Full replacement: the provided array becomes the skills. Send an empty array to clear; omit to preserve the agent's skills.
-
BetaManagedAgentsAnthropicSkillParams objectAn Anthropic-managed skill.
-
type: "anthropic" -
skill_id: stringIdentifier of the Anthropic skill (e.g., "xlsx").
minLength: 1, maxLength: 64
-
version: optional string or nullVersion to pin. Defaults to latest if omitted.
minLength: 1, maxLength: 64
-
-
BetaManagedAgentsCustomSkillParams objectA user-created custom skill.
-
type: "custom" -
skill_id: stringTagged ID of the custom skill (e.g., "skill_01XJ5...").
minLength: 1, maxLength: 64
-
version: optional string or nullVersion to pin. Defaults to latest if omitted.
minLength: 1, maxLength: 64
-
-
-
system: optional string or nullReplacement system prompt. Up to 100,000 characters. Set to null to clear the agent's system prompt; omit to preserve it.
maxLength: 100000
-
tools: optional array of BetaManagedAgentsAgentToolset20260401Params or BetaManagedAgentsMCPToolsetParams or BetaManagedAgentsCustomToolParamsReplacement tool list. Full replacement: the provided array becomes the tool configuration. Send an empty array to clear; omit to preserve the agent's tools.
-
BetaManagedAgentsAgentToolset20260401Params objectConfiguration for built-in agent tools. Use this to enable or disable groups of tools available to the agent.
-
type: "agent_toolset_20260401" -
configs: optional array of BetaManagedAgentsAgentToolConfigParamsPer-tool configuration overrides.
-
BetaManagedAgentsBashToolConfigParams objectConfiguration override for the bash tool.
-
type: optional "bash" -
name: "bash"Must be "bash".
-
enabled: optional boolean or nullWhether this tool is enabled and available to Claude. Overrides the default_config setting.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
type: "always_allow"
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
type: "always_ask"
-
BetaManagedAgentsAutoPolicy objectThe 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"
-
-
-
BetaManagedAgentsEditToolConfigParams objectConfiguration override for the edit tool.
-
type: optional "edit" -
name: "edit"Must be "edit".
-
enabled: optional boolean or nullWhether this tool is enabled and available to Claude. Overrides the default_config setting.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsReadToolConfigParams objectConfiguration override for the read tool.
-
type: optional "read" -
name: "read"Must be "read".
-
enabled: optional boolean or nullWhether this tool is enabled and available to Claude. Overrides the default_config setting.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWriteToolConfigParams objectConfiguration override for the write tool.
-
type: optional "write" -
name: "write"Must be "write".
-
enabled: optional boolean or nullWhether this tool is enabled and available to Claude. Overrides the default_config setting.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGlobToolConfigParams objectConfiguration override for the glob tool.
-
type: optional "glob" -
name: "glob"Must be "glob".
-
enabled: optional boolean or nullWhether this tool is enabled and available to Claude. Overrides the default_config setting.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGrepToolConfigParams objectConfiguration override for the grep tool.
-
type: optional "grep" -
name: "grep"Must be "grep".
-
enabled: optional boolean or nullWhether this tool is enabled and available to Claude. Overrides the default_config setting.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWebFetchToolConfigParams objectConfiguration override for the web_fetch tool.
-
type: optional "web_fetch" -
name: "web_fetch"Must be "web_fetch".
-
allowed_domains: optional array of stringOnly 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.
-
blocked_domains: optional array of stringNever 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: optional boolean or nullWhether this tool is enabled and available to Claude. Overrides the default_config setting.
-
max_content_tokens: optional number or nullMaximum number of tokens of fetched text content to include in context per call. Does not apply to binary content such as PDFs.
format: int32
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWebSearchToolConfigParams objectConfiguration override for the web_search tool.
-
type: optional "web_search" -
name: "web_search"Must be "web_search".
-
allowed_domains: optional array of stringOnly 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.
-
blocked_domains: optional array of stringNever 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: optional boolean or nullWhether this tool is enabled and available to Claude. Overrides the default_config setting.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
user_location: optional BetaManagedAgentsUserLocation or nullApproximate user location for search result localization.
-
type: "approximate"Location precision. Only "approximate" is supported.
-
city: optional string or nullCity name.
minLength: 1, maxLength: 255
-
country: optional string or nullTwo-letter ISO 3166-1 country code, uppercase.
-
region: optional string or nullRegion or state name.
minLength: 1, maxLength: 255
-
timezone: optional string or nullIANA timezone identifier, e.g. "America/Los_Angeles".
minLength: 1, maxLength: 255
-
-
-
-
default_config: optional BetaManagedAgentsAgentToolsetDefaultConfigParams or nullDefault configuration for all tools in a toolset.
-
enabled: optional boolean or nullWhether tools are enabled and available to Claude by default. Defaults to true if not specified.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
-
BetaManagedAgentsMCPToolsetParams objectConfiguration for tools from an MCP server defined in
mcp_servers.-
type: "mcp_toolset" -
mcp_server_name: stringName of the MCP server. Must match a server name from the mcp_servers array. 1-255 characters.
minLength: 1, maxLength: 255
-
configs: optional array of BetaManagedAgentsMCPToolConfigParamsPer-tool configuration overrides.
-
name: stringName of the MCP tool to configure. 1-128 characters.
minLength: 1, maxLength: 128
-
enabled: optional boolean or nullWhether this tool is enabled. Overrides the
default_configsetting. -
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
default_config: optional BetaManagedAgentsMCPToolsetDefaultConfigParams or nullDefault configuration for all tools from an MCP server.
-
enabled: optional boolean or nullWhether tools are enabled by default. Defaults to true if not specified.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
-
BetaManagedAgentsCustomToolParams objectA custom tool that is executed by the API client rather than the agent. When the agent calls this tool, an
agent.custom_tool_useevent is emitted and the session goes idle, waiting for the client to provide the result via auser.custom_tool_resultevent.-
type: "custom" -
description: stringDescription of what the tool does, shown to the agent to help it decide when to use the tool.
minLength: 1
-
input_schema: BetaManagedAgentsCustomToolInputSchemaJSON Schema for custom tool input parameters.
-
type: "object" -
properties: optional map[unknown] or null -
required: optional array of string or null
-
-
name: stringUnique name for the tool. 1-128 characters; letters, digits, underscores, and hyphens.
minLength: 1, maxLength: 128
-
-
-
version: optional numberThe specific
agentversion to use. Omit to use the latest version.format: int32
-
-
-
environment_id: stringID of the
environmentdefining the container configuration for this session.minLength: 1, maxLength: 128
-
budget: optional BetaManagedAgentsBudgetLimitA hard spend ceiling. The session stops issuing new model requests once the tracked list cost reaches
max_list_cost.-
type: "limit" -
max_list_cost: BetaMonetaryAmountA monetary amount in a specific currency.
-
amount: stringAmount in minor units of the currency, as an integer decimal string with no leading zeros: "2500" is $25.00 and "50" is fifty cents. A string rather than a number so no float rounding is ever applied.
-
currency: BetaCurrencyUppercase ISO-4217 currency code.
USDis the only currency currently supported; the accepted set is closed and grows only when a new currency is priced.
-
-
-
initial_events: optional array of BetaManagedAgentsUserMessageEventParams or BetaManagedAgentsUserDefineOutcomeEventParamsInitial events to send to the
sessionat creation, processed in order. Supportsuser.messageanduser.define_outcomeevents. Maximum 50 events.-
BetaManagedAgentsUserMessageEventParams objectParameters for sending a user message to the session.
-
type: "user.message" -
content: array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsRedactedBlockArray of content blocks for the user message.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
type: "text" -
text: stringThe text content.
minLength: 1
-
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
type: "image" -
source: BetaManagedAgentsBase64ImageSource or BetaManagedAgentsURLImageSource or BetaManagedAgentsFileImageSourceUnion type for image source variants.
-
BetaManagedAgentsBase64ImageSource objectBase64-encoded image data.
-
type: "base64" -
data: stringBase64-encoded image data.
minLength: 1
-
media_type: stringMIME type of the image (e.g., "image/png", "image/jpeg", "image/gif", "image/webp").
minLength: 1
-
-
BetaManagedAgentsURLImageSource objectImage referenced by URL.
-
type: "url" -
url: stringURL of the image to fetch.
minLength: 1
-
-
BetaManagedAgentsFileImageSource objectImage referenced by file ID.
-
type: "file" -
file_id: stringID of a previously uploaded file.
minLength: 1
-
-
-
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
type: "document" -
source: BetaManagedAgentsBase64DocumentSource or BetaManagedAgentsPlainTextDocumentSource or BetaManagedAgentsURLDocumentSource or BetaManagedAgentsFileDocumentSourceUnion type for document source variants.
-
BetaManagedAgentsBase64DocumentSource objectBase64-encoded document data.
-
type: "base64" -
data: stringBase64-encoded document data.
minLength: 1
-
media_type: stringMIME type of the document (e.g., "application/pdf").
minLength: 1
-
-
BetaManagedAgentsPlainTextDocumentSource objectPlain text document content.
-
type: "text" -
data: stringThe plain text content.
minLength: 1
-
media_type: "text/plain"MIME type of the text content. Must be "text/plain".
-
-
BetaManagedAgentsURLDocumentSource objectDocument referenced by URL.
-
type: "url" -
url: stringURL of the document to fetch.
minLength: 1
-
-
BetaManagedAgentsFileDocumentSource objectDocument referenced by file ID.
-
type: "file" -
file_id: stringID of a previously uploaded file.
minLength: 1
-
-
-
context: optional string or nullAdditional context about the document for the model.
-
title: optional string or nullThe title of the document.
-
-
BetaManagedAgentsRedactedBlock objectPlaceholder for content withheld by Anthropic model policy.
type: "redacted"
-
-
-
BetaManagedAgentsUserDefineOutcomeEventParams objectParameters for defining an outcome the agent should work toward. The agent begins work on receipt.
-
type: "user.define_outcome" -
description: stringWhat the agent should produce. This is the task specification.
-
rubric: BetaManagedAgentsFileRubricParams or BetaManagedAgentsTextRubricParamsRubric for grading the quality of an outcome.
-
BetaManagedAgentsFileRubricParams objectRubric referenced by a file uploaded via the Files API.
-
type: "file" -
file_id: stringID of the rubric file.
-
-
BetaManagedAgentsTextRubricParams objectRubric content provided inline as text.
-
type: "text" -
content: stringRubric content. Plain text or markdown — the grader treats it as freeform text. Maximum 262144 characters.
maxLength: 262144
-
-
-
max_iterations: optional number or nullEval→revision cycles before giving up. Default 3, max 20.
format: int32
-
-
-
metadata: optional map[string]Arbitrary key-value metadata attached to the session. Maximum 16 pairs, keys up to 64 chars, values up to 512 chars.
-
resources: optional array of BetaManagedAgentsGitHubRepositoryResourceParams or BetaManagedAgentsFileResourceParams or BetaManagedAgentsMemoryStoreResourceParamResources (e.g. repositories, files) to mount into the session's container.
-
BetaManagedAgentsGitHubRepositoryResourceParams objectMount a GitHub repository into the session's container.
-
type: "github_repository" -
url: stringGithub URL of the repository
minLength: 1, maxLength: 2048
-
authorization_token: optional stringGitHub authorization token used to clone the repository. Required for private repositories; optional for public ones.
minLength: 1, maxLength: 4096
-
checkout: optional BetaManagedAgentsBranchCheckout or BetaManagedAgentsCommitCheckout or nullBranch or commit to check out. Defaults to the repository's default branch.
-
BetaManagedAgentsBranchCheckout object-
type: "branch" -
name: stringBranch name to check out.
minLength: 1, maxLength: 255
-
-
BetaManagedAgentsCommitCheckout object-
type: "commit" -
sha: stringFull commit SHA to check out.
minLength: 7, maxLength: 64
-
-
-
mount_path: optional string or nullMount path in the container. Defaults to
/workspace/<repo-name>.minLength: 1, maxLength: 4096
-
-
BetaManagedAgentsFileResourceParams objectMount a file uploaded via the Files API into the session.
-
type: "file" -
file_id: stringID of a previously uploaded file.
minLength: 1, maxLength: 128
-
mount_path: optional string or nullMount path in the container. Defaults to
/mnt/session/uploads/<file_id>.minLength: 1, maxLength: 4096
-
-
BetaManagedAgentsMemoryStoreResourceParam objectParameters for attaching a memory store to an agent session.
-
type: "memory_store" -
memory_store_id: stringThe memory store ID (memstore_...). Must belong to the caller's organization and workspace.
-
access: optional "read_write" or "read_only" or nullAccess mode for an attached memory store.
-
"read_write" -
"read_only"
-
-
instructions: optional string or nullPer-attachment guidance for the agent on how to use this store. Rendered into the memory section of the system prompt. Max 4096 chars.
maxLength: 4096
-
-
-
title: optional string or nullHuman-readable session title.
maxLength: 500
-
vault_ids: optional array of stringVault IDs for stored credentials the agent can use during the session.
Returns
-
BetaManagedAgentsSession objectA Managed Agents
session.-
type: "session" -
id: string -
agent: BetaManagedAgentsSessionAgentResolved
agentdefinition for asession. Snapshot of theagentatsessioncreation time.-
type: "agent" -
id: string -
description: string or null -
mcp_servers: array of BetaManagedAgentsMCPServerURLDefinition-
type: "url" -
name: string -
url: string
-
-
model: BetaManagedAgentsModelConfigModel identifier and configuration.
-
id: BetaManagedAgentsModelThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1" or "claude-sonnet-5" or "claude-fable-5" or 11 moreThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1"Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows
-
"claude-sonnet-5"High-performance model for coding and agents
-
"claude-fable-5"Next generation of intelligence for the hardest knowledge work and coding problems
-
"claude-opus-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-8"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-7"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-6"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-6"Best combination of speed and intelligence
-
"claude-haiku-4-5"Fastest model with near-frontier intelligence
-
"claude-haiku-4-5-20251001"Fastest model with near-frontier intelligence
-
"claude-opus-4-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-5-20251101"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-5"High-performance model for agents and coding
-
"claude-sonnet-4-5-20250929"High-performance model for agents and coding
-
-
string
-
-
effort: optional BetaManagedAgentsEffortLow or BetaManagedAgentsEffortMedium or BetaManagedAgentsEffortHigh or 2 moreHow hard Claude works on each turn. Sets
output_config.efforton every Messages call the session makes.-
BetaManagedAgentsEffortLow objectLow effort. Favors latency over reasoning depth.
type: "low"
-
BetaManagedAgentsEffortMedium objectMedium effort. Balances latency and reasoning depth.
type: "medium"
-
BetaManagedAgentsEffortHigh objectHigh effort. Favors reasoning depth.
type: "high"
-
BetaManagedAgentsEffortXhigh objectExtra-high effort. Not all models accept this level.
type: "xhigh"
-
BetaManagedAgentsEffortMax objectMaximum effort. Favors reasoning depth over latency.
type: "max"
-
-
inference_geo: optional stringGeographic region for model inference. When unset, requests fall through to the workspace's default_inference_geo.
-
speed: optional "standard" or "fast"Inference speed mode.
fastprovides significantly faster output token generation at premium pricing. Not all models supportfast; invalid combinations are rejected at create time.-
"standard" -
"fast"
-
-
-
multiagent: BetaManagedAgentsSessionMultiagentCoordinator or nullResolved coordinator topology with full agent definitions for each roster member.
-
type: "coordinator" -
agents: array of BetaManagedAgentsSessionThreadAgent or BetaManagedAgentsAdvisorFull
agentdefinitions the coordinator may spawn as session threads.-
BetaManagedAgentsSessionThreadAgent objectResolved
agentdefinition for a singlesession_thread. Snapshot of the agent at thread creation time. The multiagent roster is not repeated here; read it fromSession.agent.-
type: "agent" -
id: string -
description: string or null -
mcp_servers: array of BetaManagedAgentsMCPServerURLDefinition-
type: "url" -
name: string -
url: string
-
-
model: BetaManagedAgentsModelConfigModel identifier and configuration.
-
name: string -
skills: array of BetaManagedAgentsAnthropicSkill or BetaManagedAgentsCustomSkill-
BetaManagedAgentsAnthropicSkill objectA resolved Anthropic-managed skill.
-
type: "anthropic" -
skill_id: string -
version: string
-
-
BetaManagedAgentsCustomSkill objectA resolved user-created custom skill.
-
type: "custom" -
skill_id: string -
version: string
-
-
-
system: string or null -
tools: array of BetaManagedAgentsAgentToolset20260401 or BetaManagedAgentsMCPToolset or BetaManagedAgentsCustomTool-
BetaManagedAgentsAgentToolset20260401 object-
type: "agent_toolset_20260401" -
configs: array of BetaManagedAgentsAgentToolConfig-
BetaManagedAgentsBashToolConfig objectConfiguration for the bash tool.
-
type: "bash" -
enabled: boolean -
name: "bash" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
type: "always_allow"
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
type: "always_ask"
-
BetaManagedAgentsAutoPolicy objectThe 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"
-
-
-
BetaManagedAgentsEditToolConfig objectConfiguration for the edit tool.
-
type: "edit" -
enabled: boolean -
name: "edit" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsReadToolConfig objectConfiguration for the read tool.
-
type: "read" -
enabled: boolean -
name: "read" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWriteToolConfig objectConfiguration for the write tool.
-
type: "write" -
enabled: boolean -
name: "write" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGlobToolConfig objectConfiguration for the glob tool.
-
type: "glob" -
enabled: boolean -
name: "glob" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGrepToolConfig objectConfiguration for the grep tool.
-
type: "grep" -
enabled: boolean -
name: "grep" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWebFetchToolConfig objectConfiguration for the web_fetch tool.
-
type: "web_fetch" -
enabled: boolean -
name: "web_fetch" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
allowed_domains: optional array of string -
blocked_domains: optional array of string -
max_content_tokens: optional number or nullformat: int32
-
-
BetaManagedAgentsWebSearchToolConfig objectConfiguration for the web_search tool.
-
type: "web_search" -
enabled: boolean -
name: "web_search" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
allowed_domains: optional array of string -
blocked_domains: optional array of string -
user_location: optional BetaManagedAgentsUserLocation or nullApproximate user location for search result localization.
-
type: "approximate"Location precision. Only "approximate" is supported.
-
city: optional string or nullCity name.
minLength: 1, maxLength: 255
-
country: optional string or nullTwo-letter ISO 3166-1 country code, uppercase.
-
region: optional string or nullRegion or state name.
minLength: 1, maxLength: 255
-
timezone: optional string or nullIANA timezone identifier, e.g. "America/Los_Angeles".
minLength: 1, maxLength: 255
-
-
-
-
default_config: BetaManagedAgentsAgentToolsetDefaultConfigResolved default configuration for agent tools.
-
enabled: boolean -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
-
BetaManagedAgentsMCPToolset object-
type: "mcp_toolset" -
configs: array of BetaManagedAgentsMCPToolConfig-
enabled: boolean -
name: string -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
default_config: BetaManagedAgentsMCPToolsetDefaultConfigResolved default configuration for all tools from an MCP server.
-
enabled: boolean -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
mcp_server_name: string
-
-
BetaManagedAgentsCustomTool objectA custom tool as returned in API responses.
-
type: "custom" -
description: string -
input_schema: BetaManagedAgentsCustomToolInputSchemaJSON Schema for custom tool input parameters.
-
type: "object" -
properties: optional map[unknown] or null -
required: optional array of string or null
-
-
name: string
-
-
-
version: numberformat: int32
-
-
BetaManagedAgentsAdvisor objectPlatform advisor roster entry: a model the session's primary thread may consult mid-turn.
-
type: "advisor" -
model: stringThe advisor model id.
-
-
-
-
name: string -
skills: array of BetaManagedAgentsAnthropicSkill or BetaManagedAgentsCustomSkill-
BetaManagedAgentsAnthropicSkill objectA resolved Anthropic-managed skill.
-
BetaManagedAgentsCustomSkill objectA resolved user-created custom skill.
-
-
system: string or null -
tools: array of BetaManagedAgentsAgentToolset20260401 or BetaManagedAgentsMCPToolset or BetaManagedAgentsCustomTool-
BetaManagedAgentsAgentToolset20260401 object -
BetaManagedAgentsMCPToolset object -
BetaManagedAgentsCustomTool objectA custom tool as returned in API responses.
-
-
version: numberformat: int32
-
-
archived_at: string or nullA timestamp in RFC 3339 format
format: date-time
-
budget: BetaManagedAgentsBudgetLimit or nullA hard spend ceiling. The session stops issuing new model requests once the tracked list cost reaches
max_list_cost.-
type: "limit" -
max_list_cost: BetaMonetaryAmountA monetary amount in a specific currency.
-
amount: stringAmount in minor units of the currency, as an integer decimal string with no leading zeros: "2500" is $25.00 and "50" is fifty cents. A string rather than a number so no float rounding is ever applied.
-
currency: BetaCurrencyUppercase ISO-4217 currency code.
USDis the only currency currently supported; the accepted set is closed and grows only when a new currency is priced.
-
-
-
created_at: stringA timestamp in RFC 3339 format
format: date-time
-
environment_id: string -
metadata: map[string] -
outcome_evaluations: array of BetaManagedAgentsOutcomeEvaluationResourcePer-outcome evaluation state. One entry per
define_outcomeevent sent to the session.-
type: "outcome_evaluation" -
completed_at: string or nullA timestamp in RFC 3339 format
format: date-time
-
description: stringWhat the agent should produce.
-
explanation: string or nullGrader's verdict text from the most recent evaluation. For
satisfied, explains why criteria are met; forneeds_revision(intermediate), what's missing; forfailed, why unrecoverable. -
iteration: number0-indexed revision cycle the outcome is currently on.
format: int32
-
outcome_id: stringServer-generated outc_ ID for this outcome.
-
result: stringCurrent evaluation state.
pendingbefore the agent begins work;runningwhile producing or revising;evaluatingwhile the grader scores;satisfied/max_iterations_reached/failed/interruptedare terminal.
-
-
resources: array of BetaManagedAgentsSessionResource-
BetaManagedAgentsGitHubRepositoryResource object-
type: "github_repository" -
id: string -
created_at: stringA timestamp in RFC 3339 format
format: date-time
-
mount_path: string -
updated_at: stringA timestamp in RFC 3339 format
format: date-time
-
url: string -
checkout: optional BetaManagedAgentsBranchCheckout or BetaManagedAgentsCommitCheckout or null-
BetaManagedAgentsBranchCheckout object-
type: "branch" -
name: stringBranch name to check out.
minLength: 1, maxLength: 255
-
-
BetaManagedAgentsCommitCheckout object-
type: "commit" -
sha: stringFull commit SHA to check out.
minLength: 7, maxLength: 64
-
-
-
-
BetaManagedAgentsFileResource object-
type: "file" -
id: string -
created_at: stringA timestamp in RFC 3339 format
format: date-time
-
file_id: string -
mount_path: string -
updated_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsMemoryStoreResource objectA memory store attached to an agent session.
-
type: "memory_store" -
memory_store_id: stringThe memory store ID (memstore_...). Must belong to the caller's organization and workspace.
-
access: optional "read_write" or "read_only" or nullAccess mode for an attached memory store.
-
"read_write" -
"read_only"
-
-
description: optional stringDescription of the memory store, snapshotted at attach time. Rendered into the agent's system prompt. Empty string when the store has no description.
-
instructions: optional string or nullPer-attachment guidance for the agent on how to use this store. Rendered into the memory section of the system prompt. Max 4096 chars.
maxLength: 4096
-
mount_path: optional string or nullFilesystem path where the store is mounted in the session container, e.g. /mnt/memory/user-preferences. Derived from the store's name. Output-only.
-
name: optional string or nullDisplay name of the memory store, snapshotted at attach time. Later edits to the store's name do not propagate to this resource.
-
-
-
stats: BetaManagedAgentsSessionStatsTiming statistics for a session.
-
active_seconds: optional numberCumulative time in seconds the session spent in
runningstatus. Excludes idle time.format: double
-
duration_seconds: optional numberElapsed time since session creation in seconds. For terminated sessions, frozen at the final update.
format: double
-
-
status: "rescheduling" or "running" or "idle" or "terminated"SessionStatus enum
-
"rescheduling" -
"running" -
"idle" -
"terminated"
-
-
title: string or null -
updated_at: stringA timestamp in RFC 3339 format
format: date-time
-
usage: BetaManagedAgentsSessionUsageCumulative token usage for a session across all turns.
-
active_seconds: optional numberCumulative time in seconds during which the session had at least one thread in running status. Overlapping activity from concurrent threads is counted once, unlike
stats.active_seconds, which sums each thread's own active time. This is the duration the session's runtime cost is priced on.format: double
-
cache_creation: optional BetaManagedAgentsCacheCreationUsagePrompt-cache creation token usage broken down by cache lifetime.
-
ephemeral_1h_input_tokens: optional numberTokens used to create 1-hour ephemeral cache entries.
format: int32
-
ephemeral_5m_input_tokens: optional numberTokens used to create 5-minute ephemeral cache entries.
format: int32
-
-
cache_read_input_tokens: optional numberTotal tokens read from prompt cache.
format: int32
-
input_tokens: optional numberTotal input tokens consumed across all turns.
format: int32
-
list_cost: optional BetaMonetaryAmount or nullA monetary amount in a specific currency.
-
output_tokens: optional numberTotal output tokens generated across all turns.
format: int32
-
server_tool_use: optional BetaManagedAgentsServerToolUsage or nullCumulative count of server-executed tool invocations, broken down by tool.
-
web_fetch_requests: optional numberNumber of server-executed web fetch requests.
format: int32
-
web_search_requests: optional numberNumber of server-executed web search requests.
format: int32
-
-
-
vault_ids: array of stringVault IDs attached to the session at creation. Empty when no vaults were supplied.
-
deployment_id: optional string or nullDeployment ID when the session was created from a deployment reference. Null otherwise.
-
Example
curl https://api.anthropic.com/v1/sessions \
-H 'Content-Type: application/json' \
-H 'anthropic-version: 2023-06-01' \
-H 'anthropic-beta: managed-agents-2026-04-01' \
-H "X-Api-Key: $ANTHROPIC_API_KEY" \
-d '{
"agent": "agent_011CZkYpogX7uDKUyvBTophP",
"environment_id": "env_011CZkZ9X2dpNyB7HsEFoRfW",
"title": "Order #1234 inquiry"
}'Response (200)
{
"id": "sesn_011CZkZAtmR3yMPDzynEDxu7",
"agent": {
"id": "agent_011CZkYpogX7uDKUyvBTophP",
"description": "A general-purpose starter agent.",
"mcp_servers": [
{
"name": "example-mcp",
"type": "url",
"url": "https://example-server.modelcontextprotocol.io/sse"
}
],
"model": {
"id": "claude-opus-5",
"effort": {
"type": "low"
},
"inference_geo": "inference_geo",
"speed": "standard"
},
"multiagent": {
"agents": [
{
"id": "agent_011CZkYqphY8vELVzwCUpqiQ",
"description": "A focused research subagent.",
"mcp_servers": [
{
"name": "example-mcp",
"type": "url",
"url": "https://example-server.modelcontextprotocol.io/sse"
}
],
"model": {
"id": "claude-opus-5",
"effort": {
"type": "low"
},
"inference_geo": "inference_geo",
"speed": "standard"
},
"name": "Researcher",
"skills": [
{
"skill_id": "xlsx",
"type": "anthropic",
"version": "1"
}
],
"system": "You are a research subagent that gathers and summarises sources for the coordinating agent.",
"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",
"version": 1
}
],
"type": "coordinator"
},
"name": "My First Agent",
"skills": [
{
"skill_id": "xlsx",
"type": "anthropic",
"version": "1"
},
{
"skill_id": "skill_011CZkZFNu9hAbo3jZPRgTlx",
"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",
"version": 1
},
"archived_at": null,
"budget": {
"max_list_cost": {
"amount": "2500",
"currency": "USD"
},
"type": "limit"
},
"created_at": "2026-03-15T10:00:00Z",
"environment_id": "env_011CZkZ9X2dpNyB7HsEFoRfW",
"metadata": {},
"outcome_evaluations": [
{
"completed_at": "2026-03-15T10:02:31Z",
"description": "Produce a 2-page summary as summary.md",
"explanation": "All five sections present with inline citations.",
"iteration": 0,
"outcome_id": "outc_011CZkZRSw2kEfs6ncTVljxP",
"result": "satisfied",
"type": "outcome_evaluation"
}
],
"resources": [
{
"id": "sesrsc_011CZkZBJq5dWxk9fVLNcPht",
"created_at": "2026-03-15T10:00:00Z",
"file_id": "file_011CNha8iCJcU1wXNR6q4V8w",
"mount_path": "/uploads/receipt.pdf",
"type": "file",
"updated_at": "2026-03-15T10:00:00Z"
},
{
"id": "sesrsc_011CZkZCKr6eXyl0gWMOdQiu",
"created_at": "2026-03-15T10:00:00Z",
"mount_path": "/workspace/example-repo",
"type": "github_repository",
"updated_at": "2026-03-15T10:00:00Z",
"url": "https://github.com/example-org/example-repo",
"checkout": {
"name": "main",
"type": "branch"
}
}
],
"stats": {
"active_seconds": 0,
"duration_seconds": 0
},
"status": "idle",
"title": "Order #1234 inquiry",
"type": "session",
"updated_at": "2026-03-15T10:00:00Z",
"usage": {
"active_seconds": 0,
"cache_creation": {
"ephemeral_1h_input_tokens": 0,
"ephemeral_5m_input_tokens": 0
},
"cache_read_input_tokens": 0,
"input_tokens": 0,
"list_cost": {
"amount": "2500",
"currency": "USD"
},
"output_tokens": 0,
"server_tool_use": {
"web_fetch_requests": 0,
"web_search_requests": 3
}
},
"vault_ids": [
"vlt_011CZkZDLs7fYzm1hXNPeRjv"
],
"deployment_id": "deployment_id"
}List Sessions
GET /v1/sessions
List Sessions
Query parameters
-
agent_id: optional stringFilter sessions created with this agent ID.
-
agent_version: optional numberFilter by agent version. Only applies when
agent_idis also set.format: int32
-
"created_at[gt]": optional stringReturn sessions created after this time (exclusive).
format: date-time
-
"created_at[gte]": optional stringReturn sessions created at or after this time (inclusive).
format: date-time
-
"created_at[lt]": optional stringReturn sessions created before this time (exclusive).
format: date-time
-
"created_at[lte]": optional stringReturn sessions created at or before this time (inclusive).
format: date-time
-
deployment_id: optional stringFilter sessions created by this deployment ID.
-
include_archived: optional booleanWhen true, includes archived sessions. Default: false (exclude archived).
-
limit: optional numberMaximum number of results to return.
format: int32
-
memory_store_id: optional stringFilter sessions whose resources contain a
memory_storewith this memory store ID. -
order: optional "asc" or "desc"Sort direction for results, ordered by
created_at. Defaults todesc(newest first).-
"asc" -
"desc"
-
-
page: optional stringOpaque pagination cursor from a previous response.
-
statuses: optional array of "rescheduling" or "running" or "idle" or "terminated"Filter by session status. Repeat the parameter to match any of multiple statuses.
-
"rescheduling" -
"running" -
"idle" -
"terminated"
-
Headers
-
"anthropic-beta": optional array of AnthropicBetaOptional header to specify the beta version(s) you want to use.
-
string -
"message-batches-2024-09-24" or "prompt-caching-2024-07-31" or "computer-use-2024-10-22" or 43 more-
"message-batches-2024-09-24" -
"prompt-caching-2024-07-31" -
"computer-use-2024-10-22" -
"computer-use-2025-01-24" -
"pdfs-2024-09-25" -
"token-counting-2024-11-01" -
"token-efficient-tools-2025-02-19" -
"output-128k-2025-02-19" -
"files-api-2025-04-14" -
"mcp-client-2025-04-04" -
"mcp-client-2025-11-20" -
"dev-full-thinking-2025-05-14" -
"interleaved-thinking-2025-05-14" -
"code-execution-2025-05-22" -
"extended-cache-ttl-2025-04-11" -
"context-1m-2025-08-07" -
"context-management-2025-06-27" -
"model-context-window-exceeded-2025-08-26" -
"skills-2025-10-02" -
"fast-mode-2026-02-01" -
"output-300k-2026-03-24" -
"user-profiles-2026-03-24" -
"user-profiles-2026-08-18" -
"user-profiles-2026-09-04" -
"advisor-tool-2026-03-01" -
"managed-agents-2026-04-01" -
"cache-diagnosis-2026-04-07" -
"dreaming-2026-04-21" -
"thinking-token-count-2026-05-13" -
"server-side-fallback-2026-06-01" -
"server-side-fallback-2026-07-01" -
"fallback-credit-2026-06-01" -
"fallback-credit-2026-07-01" -
"agent-memory-2026-07-22" -
"mid-conversation-tool-changes-2026-07-01" -
"compact-2026-01-12" -
"computer-use-2025-11-24" -
"mcp-tunnels-2026-06-22" -
"structured-outputs-2025-11-13" -
"task-budgets-2026-03-13" -
"thinking-display-updates-2026-08-18" -
"ce-user-management-2026-07-13" -
"mid-conversation-output-config-2026-07-01" -
"thinking-binding-controls-2026-08-01" -
"mid-conversation-system-clear-at-2026-08-21" -
"compact-2026-09-04"
-
-
-
"anthropic-workspace-id": optional string
Returns
-
data: optional array of BetaManagedAgentsSessionList of sessions.
-
type: "session" -
id: string -
agent: BetaManagedAgentsSessionAgentResolved
agentdefinition for asession. Snapshot of theagentatsessioncreation time.-
type: "agent" -
id: string -
description: string or null -
mcp_servers: array of BetaManagedAgentsMCPServerURLDefinition-
type: "url" -
name: string -
url: string
-
-
model: BetaManagedAgentsModelConfigModel identifier and configuration.
-
id: BetaManagedAgentsModelThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1" or "claude-sonnet-5" or "claude-fable-5" or 11 moreThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1"Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows
-
"claude-sonnet-5"High-performance model for coding and agents
-
"claude-fable-5"Next generation of intelligence for the hardest knowledge work and coding problems
-
"claude-opus-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-8"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-7"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-6"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-6"Best combination of speed and intelligence
-
"claude-haiku-4-5"Fastest model with near-frontier intelligence
-
"claude-haiku-4-5-20251001"Fastest model with near-frontier intelligence
-
"claude-opus-4-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-5-20251101"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-5"High-performance model for agents and coding
-
"claude-sonnet-4-5-20250929"High-performance model for agents and coding
-
-
string
-
-
effort: optional BetaManagedAgentsEffortLow or BetaManagedAgentsEffortMedium or BetaManagedAgentsEffortHigh or 2 moreHow hard Claude works on each turn. Sets
output_config.efforton every Messages call the session makes.-
BetaManagedAgentsEffortLow objectLow effort. Favors latency over reasoning depth.
type: "low"
-
BetaManagedAgentsEffortMedium objectMedium effort. Balances latency and reasoning depth.
type: "medium"
-
BetaManagedAgentsEffortHigh objectHigh effort. Favors reasoning depth.
type: "high"
-
BetaManagedAgentsEffortXhigh objectExtra-high effort. Not all models accept this level.
type: "xhigh"
-
BetaManagedAgentsEffortMax objectMaximum effort. Favors reasoning depth over latency.
type: "max"
-
-
inference_geo: optional stringGeographic region for model inference. When unset, requests fall through to the workspace's default_inference_geo.
-
speed: optional "standard" or "fast"Inference speed mode.
fastprovides significantly faster output token generation at premium pricing. Not all models supportfast; invalid combinations are rejected at create time.-
"standard" -
"fast"
-
-
-
multiagent: BetaManagedAgentsSessionMultiagentCoordinator or nullResolved coordinator topology with full agent definitions for each roster member.
-
type: "coordinator" -
agents: array of BetaManagedAgentsSessionThreadAgent or BetaManagedAgentsAdvisorFull
agentdefinitions the coordinator may spawn as session threads.-
BetaManagedAgentsSessionThreadAgent objectResolved
agentdefinition for a singlesession_thread. Snapshot of the agent at thread creation time. The multiagent roster is not repeated here; read it fromSession.agent.-
type: "agent" -
id: string -
description: string or null -
mcp_servers: array of BetaManagedAgentsMCPServerURLDefinition-
type: "url" -
name: string -
url: string
-
-
model: BetaManagedAgentsModelConfigModel identifier and configuration.
-
name: string -
skills: array of BetaManagedAgentsAnthropicSkill or BetaManagedAgentsCustomSkill-
BetaManagedAgentsAnthropicSkill objectA resolved Anthropic-managed skill.
-
type: "anthropic" -
skill_id: string -
version: string
-
-
BetaManagedAgentsCustomSkill objectA resolved user-created custom skill.
-
type: "custom" -
skill_id: string -
version: string
-
-
-
system: string or null -
tools: array of BetaManagedAgentsAgentToolset20260401 or BetaManagedAgentsMCPToolset or BetaManagedAgentsCustomTool-
BetaManagedAgentsAgentToolset20260401 object-
type: "agent_toolset_20260401" -
configs: array of BetaManagedAgentsAgentToolConfig-
BetaManagedAgentsBashToolConfig objectConfiguration for the bash tool.
-
type: "bash" -
enabled: boolean -
name: "bash" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
type: "always_allow"
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
type: "always_ask"
-
BetaManagedAgentsAutoPolicy objectThe 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"
-
-
-
BetaManagedAgentsEditToolConfig objectConfiguration for the edit tool.
-
type: "edit" -
enabled: boolean -
name: "edit" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsReadToolConfig objectConfiguration for the read tool.
-
type: "read" -
enabled: boolean -
name: "read" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWriteToolConfig objectConfiguration for the write tool.
-
type: "write" -
enabled: boolean -
name: "write" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGlobToolConfig objectConfiguration for the glob tool.
-
type: "glob" -
enabled: boolean -
name: "glob" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGrepToolConfig objectConfiguration for the grep tool.
-
type: "grep" -
enabled: boolean -
name: "grep" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWebFetchToolConfig objectConfiguration for the web_fetch tool.
-
type: "web_fetch" -
enabled: boolean -
name: "web_fetch" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
allowed_domains: optional array of string -
blocked_domains: optional array of string -
max_content_tokens: optional number or nullformat: int32
-
-
BetaManagedAgentsWebSearchToolConfig objectConfiguration for the web_search tool.
-
type: "web_search" -
enabled: boolean -
name: "web_search" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
allowed_domains: optional array of string -
blocked_domains: optional array of string -
user_location: optional BetaManagedAgentsUserLocation or nullApproximate user location for search result localization.
-
type: "approximate"Location precision. Only "approximate" is supported.
-
city: optional string or nullCity name.
minLength: 1, maxLength: 255
-
country: optional string or nullTwo-letter ISO 3166-1 country code, uppercase.
-
region: optional string or nullRegion or state name.
minLength: 1, maxLength: 255
-
timezone: optional string or nullIANA timezone identifier, e.g. "America/Los_Angeles".
minLength: 1, maxLength: 255
-
-
-
-
default_config: BetaManagedAgentsAgentToolsetDefaultConfigResolved default configuration for agent tools.
-
enabled: boolean -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
-
BetaManagedAgentsMCPToolset object-
type: "mcp_toolset" -
configs: array of BetaManagedAgentsMCPToolConfig-
enabled: boolean -
name: string -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
default_config: BetaManagedAgentsMCPToolsetDefaultConfigResolved default configuration for all tools from an MCP server.
-
enabled: boolean -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
mcp_server_name: string
-
-
BetaManagedAgentsCustomTool objectA custom tool as returned in API responses.
-
type: "custom" -
description: string -
input_schema: BetaManagedAgentsCustomToolInputSchemaJSON Schema for custom tool input parameters.
-
type: "object" -
properties: optional map[unknown] or null -
required: optional array of string or null
-
-
name: string
-
-
-
version: numberformat: int32
-
-
BetaManagedAgentsAdvisor objectPlatform advisor roster entry: a model the session's primary thread may consult mid-turn.
-
type: "advisor" -
model: stringThe advisor model id.
-
-
-
-
name: string -
skills: array of BetaManagedAgentsAnthropicSkill or BetaManagedAgentsCustomSkill-
BetaManagedAgentsAnthropicSkill objectA resolved Anthropic-managed skill.
-
BetaManagedAgentsCustomSkill objectA resolved user-created custom skill.
-
-
system: string or null -
tools: array of BetaManagedAgentsAgentToolset20260401 or BetaManagedAgentsMCPToolset or BetaManagedAgentsCustomTool-
BetaManagedAgentsAgentToolset20260401 object -
BetaManagedAgentsMCPToolset object -
BetaManagedAgentsCustomTool objectA custom tool as returned in API responses.
-
-
version: numberformat: int32
-
-
archived_at: string or nullA timestamp in RFC 3339 format
format: date-time
-
budget: BetaManagedAgentsBudgetLimit or nullA hard spend ceiling. The session stops issuing new model requests once the tracked list cost reaches
max_list_cost.-
type: "limit" -
max_list_cost: BetaMonetaryAmountA monetary amount in a specific currency.
-
amount: stringAmount in minor units of the currency, as an integer decimal string with no leading zeros: "2500" is $25.00 and "50" is fifty cents. A string rather than a number so no float rounding is ever applied.
-
currency: BetaCurrencyUppercase ISO-4217 currency code.
USDis the only currency currently supported; the accepted set is closed and grows only when a new currency is priced.
-
-
-
created_at: stringA timestamp in RFC 3339 format
format: date-time
-
environment_id: string -
metadata: map[string] -
outcome_evaluations: array of BetaManagedAgentsOutcomeEvaluationResourcePer-outcome evaluation state. One entry per
define_outcomeevent sent to the session.-
type: "outcome_evaluation" -
completed_at: string or nullA timestamp in RFC 3339 format
format: date-time
-
description: stringWhat the agent should produce.
-
explanation: string or nullGrader's verdict text from the most recent evaluation. For
satisfied, explains why criteria are met; forneeds_revision(intermediate), what's missing; forfailed, why unrecoverable. -
iteration: number0-indexed revision cycle the outcome is currently on.
format: int32
-
outcome_id: stringServer-generated outc_ ID for this outcome.
-
result: stringCurrent evaluation state.
pendingbefore the agent begins work;runningwhile producing or revising;evaluatingwhile the grader scores;satisfied/max_iterations_reached/failed/interruptedare terminal.
-
-
resources: array of BetaManagedAgentsSessionResource-
BetaManagedAgentsGitHubRepositoryResource object-
type: "github_repository" -
id: string -
created_at: stringA timestamp in RFC 3339 format
format: date-time
-
mount_path: string -
updated_at: stringA timestamp in RFC 3339 format
format: date-time
-
url: string -
checkout: optional BetaManagedAgentsBranchCheckout or BetaManagedAgentsCommitCheckout or null-
BetaManagedAgentsBranchCheckout object-
type: "branch" -
name: stringBranch name to check out.
minLength: 1, maxLength: 255
-
-
BetaManagedAgentsCommitCheckout object-
type: "commit" -
sha: stringFull commit SHA to check out.
minLength: 7, maxLength: 64
-
-
-
-
BetaManagedAgentsFileResource object-
type: "file" -
id: string -
created_at: stringA timestamp in RFC 3339 format
format: date-time
-
file_id: string -
mount_path: string -
updated_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsMemoryStoreResource objectA memory store attached to an agent session.
-
type: "memory_store" -
memory_store_id: stringThe memory store ID (memstore_...). Must belong to the caller's organization and workspace.
-
access: optional "read_write" or "read_only" or nullAccess mode for an attached memory store.
-
"read_write" -
"read_only"
-
-
description: optional stringDescription of the memory store, snapshotted at attach time. Rendered into the agent's system prompt. Empty string when the store has no description.
-
instructions: optional string or nullPer-attachment guidance for the agent on how to use this store. Rendered into the memory section of the system prompt. Max 4096 chars.
maxLength: 4096
-
mount_path: optional string or nullFilesystem path where the store is mounted in the session container, e.g. /mnt/memory/user-preferences. Derived from the store's name. Output-only.
-
name: optional string or nullDisplay name of the memory store, snapshotted at attach time. Later edits to the store's name do not propagate to this resource.
-
-
-
stats: BetaManagedAgentsSessionStatsTiming statistics for a session.
-
active_seconds: optional numberCumulative time in seconds the session spent in
runningstatus. Excludes idle time.format: double
-
duration_seconds: optional numberElapsed time since session creation in seconds. For terminated sessions, frozen at the final update.
format: double
-
-
status: "rescheduling" or "running" or "idle" or "terminated"SessionStatus enum
-
"rescheduling" -
"running" -
"idle" -
"terminated"
-
-
title: string or null -
updated_at: stringA timestamp in RFC 3339 format
format: date-time
-
usage: BetaManagedAgentsSessionUsageCumulative token usage for a session across all turns.
-
active_seconds: optional numberCumulative time in seconds during which the session had at least one thread in running status. Overlapping activity from concurrent threads is counted once, unlike
stats.active_seconds, which sums each thread's own active time. This is the duration the session's runtime cost is priced on.format: double
-
cache_creation: optional BetaManagedAgentsCacheCreationUsagePrompt-cache creation token usage broken down by cache lifetime.
-
ephemeral_1h_input_tokens: optional numberTokens used to create 1-hour ephemeral cache entries.
format: int32
-
ephemeral_5m_input_tokens: optional numberTokens used to create 5-minute ephemeral cache entries.
format: int32
-
-
cache_read_input_tokens: optional numberTotal tokens read from prompt cache.
format: int32
-
input_tokens: optional numberTotal input tokens consumed across all turns.
format: int32
-
list_cost: optional BetaMonetaryAmount or nullA monetary amount in a specific currency.
-
output_tokens: optional numberTotal output tokens generated across all turns.
format: int32
-
server_tool_use: optional BetaManagedAgentsServerToolUsage or nullCumulative count of server-executed tool invocations, broken down by tool.
-
web_fetch_requests: optional numberNumber of server-executed web fetch requests.
format: int32
-
web_search_requests: optional numberNumber of server-executed web search requests.
format: int32
-
-
-
vault_ids: array of stringVault IDs attached to the session at creation. Empty when no vaults were supplied.
-
deployment_id: optional string or nullDeployment ID when the session was created from a deployment reference. Null otherwise.
-
-
next_page: optional string or nullOpaque cursor for the next page. Null when no more results.
-
prev_page: optional string or nullOpaque cursor for the previous page. Null when on the first page. Pass as the
pageparameter to navigate backward.
Example
curl https://api.anthropic.com/v1/sessions \
-H 'anthropic-version: 2023-06-01' \
-H 'anthropic-beta: managed-agents-2026-04-01' \
-H "X-Api-Key: $ANTHROPIC_API_KEY"Response (200)
{
"data": [
{
"id": "sesn_011CZkZAtmR3yMPDzynEDxu7",
"agent": {
"id": "agent_011CZkYpogX7uDKUyvBTophP",
"description": "A general-purpose starter agent.",
"mcp_servers": [
{
"name": "example-mcp",
"type": "url",
"url": "https://example-server.modelcontextprotocol.io/sse"
}
],
"model": {
"id": "claude-opus-5",
"effort": {
"type": "low"
},
"inference_geo": "inference_geo",
"speed": "standard"
},
"multiagent": {
"agents": [
{
"id": "agent_011CZkYqphY8vELVzwCUpqiQ",
"description": "A focused research subagent.",
"mcp_servers": [
{
"name": "example-mcp",
"type": "url",
"url": "https://example-server.modelcontextprotocol.io/sse"
}
],
"model": {
"id": "claude-opus-5",
"effort": {
"type": "low"
},
"inference_geo": "inference_geo",
"speed": "standard"
},
"name": "Researcher",
"skills": [
{
"skill_id": "xlsx",
"type": "anthropic",
"version": "1"
}
],
"system": "You are a research subagent that gathers and summarises sources for the coordinating agent.",
"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",
"version": 1
}
],
"type": "coordinator"
},
"name": "My First Agent",
"skills": [
{
"skill_id": "xlsx",
"type": "anthropic",
"version": "1"
},
{
"skill_id": "skill_011CZkZFNu9hAbo3jZPRgTlx",
"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",
"version": 1
},
"archived_at": null,
"budget": {
"max_list_cost": {
"amount": "2500",
"currency": "USD"
},
"type": "limit"
},
"created_at": "2026-03-15T10:00:00Z",
"environment_id": "env_011CZkZ9X2dpNyB7HsEFoRfW",
"metadata": {},
"outcome_evaluations": [
{
"completed_at": "2026-03-15T10:02:31Z",
"description": "Produce a 2-page summary as summary.md",
"explanation": "All five sections present with inline citations.",
"iteration": 0,
"outcome_id": "outc_011CZkZRSw2kEfs6ncTVljxP",
"result": "satisfied",
"type": "outcome_evaluation"
}
],
"resources": [
{
"id": "sesrsc_011CZkZBJq5dWxk9fVLNcPht",
"created_at": "2026-03-15T10:00:00Z",
"file_id": "file_011CNha8iCJcU1wXNR6q4V8w",
"mount_path": "/uploads/receipt.pdf",
"type": "file",
"updated_at": "2026-03-15T10:00:00Z"
},
{
"id": "sesrsc_011CZkZCKr6eXyl0gWMOdQiu",
"created_at": "2026-03-15T10:00:00Z",
"mount_path": "/workspace/example-repo",
"type": "github_repository",
"updated_at": "2026-03-15T10:00:00Z",
"url": "https://github.com/example-org/example-repo",
"checkout": {
"name": "main",
"type": "branch"
}
}
],
"stats": {
"active_seconds": 0,
"duration_seconds": 0
},
"status": "idle",
"title": "Order #1234 inquiry",
"type": "session",
"updated_at": "2026-03-15T10:00:00Z",
"usage": {
"active_seconds": 0,
"cache_creation": {
"ephemeral_1h_input_tokens": 0,
"ephemeral_5m_input_tokens": 0
},
"cache_read_input_tokens": 0,
"input_tokens": 0,
"list_cost": {
"amount": "2500",
"currency": "USD"
},
"output_tokens": 0,
"server_tool_use": {
"web_fetch_requests": 0,
"web_search_requests": 3
}
},
"vault_ids": [
"vlt_011CZkZDLs7fYzm1hXNPeRjv"
],
"deployment_id": "deployment_id"
}
],
"next_page": "page_MjAyNS0wNS0xNFQwMDowMDowMFo=",
"prev_page": "page_MjAyNS0wNS0xM1QwMDowMDowMFo="
}Get Session
GET /v1/sessions/{session_id}
Get Session
Path parameters
session_id: string
Headers
-
"anthropic-beta": optional array of AnthropicBetaOptional header to specify the beta version(s) you want to use.
-
string -
"message-batches-2024-09-24" or "prompt-caching-2024-07-31" or "computer-use-2024-10-22" or 43 more-
"message-batches-2024-09-24" -
"prompt-caching-2024-07-31" -
"computer-use-2024-10-22" -
"computer-use-2025-01-24" -
"pdfs-2024-09-25" -
"token-counting-2024-11-01" -
"token-efficient-tools-2025-02-19" -
"output-128k-2025-02-19" -
"files-api-2025-04-14" -
"mcp-client-2025-04-04" -
"mcp-client-2025-11-20" -
"dev-full-thinking-2025-05-14" -
"interleaved-thinking-2025-05-14" -
"code-execution-2025-05-22" -
"extended-cache-ttl-2025-04-11" -
"context-1m-2025-08-07" -
"context-management-2025-06-27" -
"model-context-window-exceeded-2025-08-26" -
"skills-2025-10-02" -
"fast-mode-2026-02-01" -
"output-300k-2026-03-24" -
"user-profiles-2026-03-24" -
"user-profiles-2026-08-18" -
"user-profiles-2026-09-04" -
"advisor-tool-2026-03-01" -
"managed-agents-2026-04-01" -
"cache-diagnosis-2026-04-07" -
"dreaming-2026-04-21" -
"thinking-token-count-2026-05-13" -
"server-side-fallback-2026-06-01" -
"server-side-fallback-2026-07-01" -
"fallback-credit-2026-06-01" -
"fallback-credit-2026-07-01" -
"agent-memory-2026-07-22" -
"mid-conversation-tool-changes-2026-07-01" -
"compact-2026-01-12" -
"computer-use-2025-11-24" -
"mcp-tunnels-2026-06-22" -
"structured-outputs-2025-11-13" -
"task-budgets-2026-03-13" -
"thinking-display-updates-2026-08-18" -
"ce-user-management-2026-07-13" -
"mid-conversation-output-config-2026-07-01" -
"thinking-binding-controls-2026-08-01" -
"mid-conversation-system-clear-at-2026-08-21" -
"compact-2026-09-04"
-
-
-
"anthropic-workspace-id": optional string
Returns
-
BetaManagedAgentsSession objectA Managed Agents
session.-
type: "session" -
id: string -
agent: BetaManagedAgentsSessionAgentResolved
agentdefinition for asession. Snapshot of theagentatsessioncreation time.-
type: "agent" -
id: string -
description: string or null -
mcp_servers: array of BetaManagedAgentsMCPServerURLDefinition-
type: "url" -
name: string -
url: string
-
-
model: BetaManagedAgentsModelConfigModel identifier and configuration.
-
id: BetaManagedAgentsModelThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1" or "claude-sonnet-5" or "claude-fable-5" or 11 moreThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1"Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows
-
"claude-sonnet-5"High-performance model for coding and agents
-
"claude-fable-5"Next generation of intelligence for the hardest knowledge work and coding problems
-
"claude-opus-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-8"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-7"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-6"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-6"Best combination of speed and intelligence
-
"claude-haiku-4-5"Fastest model with near-frontier intelligence
-
"claude-haiku-4-5-20251001"Fastest model with near-frontier intelligence
-
"claude-opus-4-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-5-20251101"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-5"High-performance model for agents and coding
-
"claude-sonnet-4-5-20250929"High-performance model for agents and coding
-
-
string
-
-
effort: optional BetaManagedAgentsEffortLow or BetaManagedAgentsEffortMedium or BetaManagedAgentsEffortHigh or 2 moreHow hard Claude works on each turn. Sets
output_config.efforton every Messages call the session makes.-
BetaManagedAgentsEffortLow objectLow effort. Favors latency over reasoning depth.
type: "low"
-
BetaManagedAgentsEffortMedium objectMedium effort. Balances latency and reasoning depth.
type: "medium"
-
BetaManagedAgentsEffortHigh objectHigh effort. Favors reasoning depth.
type: "high"
-
BetaManagedAgentsEffortXhigh objectExtra-high effort. Not all models accept this level.
type: "xhigh"
-
BetaManagedAgentsEffortMax objectMaximum effort. Favors reasoning depth over latency.
type: "max"
-
-
inference_geo: optional stringGeographic region for model inference. When unset, requests fall through to the workspace's default_inference_geo.
-
speed: optional "standard" or "fast"Inference speed mode.
fastprovides significantly faster output token generation at premium pricing. Not all models supportfast; invalid combinations are rejected at create time.-
"standard" -
"fast"
-
-
-
multiagent: BetaManagedAgentsSessionMultiagentCoordinator or nullResolved coordinator topology with full agent definitions for each roster member.
-
type: "coordinator" -
agents: array of BetaManagedAgentsSessionThreadAgent or BetaManagedAgentsAdvisorFull
agentdefinitions the coordinator may spawn as session threads.-
BetaManagedAgentsSessionThreadAgent objectResolved
agentdefinition for a singlesession_thread. Snapshot of the agent at thread creation time. The multiagent roster is not repeated here; read it fromSession.agent.-
type: "agent" -
id: string -
description: string or null -
mcp_servers: array of BetaManagedAgentsMCPServerURLDefinition-
type: "url" -
name: string -
url: string
-
-
model: BetaManagedAgentsModelConfigModel identifier and configuration.
-
name: string -
skills: array of BetaManagedAgentsAnthropicSkill or BetaManagedAgentsCustomSkill-
BetaManagedAgentsAnthropicSkill objectA resolved Anthropic-managed skill.
-
type: "anthropic" -
skill_id: string -
version: string
-
-
BetaManagedAgentsCustomSkill objectA resolved user-created custom skill.
-
type: "custom" -
skill_id: string -
version: string
-
-
-
system: string or null -
tools: array of BetaManagedAgentsAgentToolset20260401 or BetaManagedAgentsMCPToolset or BetaManagedAgentsCustomTool-
BetaManagedAgentsAgentToolset20260401 object-
type: "agent_toolset_20260401" -
configs: array of BetaManagedAgentsAgentToolConfig-
BetaManagedAgentsBashToolConfig objectConfiguration for the bash tool.
-
type: "bash" -
enabled: boolean -
name: "bash" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
type: "always_allow"
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
type: "always_ask"
-
BetaManagedAgentsAutoPolicy objectThe 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"
-
-
-
BetaManagedAgentsEditToolConfig objectConfiguration for the edit tool.
-
type: "edit" -
enabled: boolean -
name: "edit" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsReadToolConfig objectConfiguration for the read tool.
-
type: "read" -
enabled: boolean -
name: "read" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWriteToolConfig objectConfiguration for the write tool.
-
type: "write" -
enabled: boolean -
name: "write" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGlobToolConfig objectConfiguration for the glob tool.
-
type: "glob" -
enabled: boolean -
name: "glob" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGrepToolConfig objectConfiguration for the grep tool.
-
type: "grep" -
enabled: boolean -
name: "grep" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWebFetchToolConfig objectConfiguration for the web_fetch tool.
-
type: "web_fetch" -
enabled: boolean -
name: "web_fetch" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
allowed_domains: optional array of string -
blocked_domains: optional array of string -
max_content_tokens: optional number or nullformat: int32
-
-
BetaManagedAgentsWebSearchToolConfig objectConfiguration for the web_search tool.
-
type: "web_search" -
enabled: boolean -
name: "web_search" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
allowed_domains: optional array of string -
blocked_domains: optional array of string -
user_location: optional BetaManagedAgentsUserLocation or nullApproximate user location for search result localization.
-
type: "approximate"Location precision. Only "approximate" is supported.
-
city: optional string or nullCity name.
minLength: 1, maxLength: 255
-
country: optional string or nullTwo-letter ISO 3166-1 country code, uppercase.
-
region: optional string or nullRegion or state name.
minLength: 1, maxLength: 255
-
timezone: optional string or nullIANA timezone identifier, e.g. "America/Los_Angeles".
minLength: 1, maxLength: 255
-
-
-
-
default_config: BetaManagedAgentsAgentToolsetDefaultConfigResolved default configuration for agent tools.
-
enabled: boolean -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
-
BetaManagedAgentsMCPToolset object-
type: "mcp_toolset" -
configs: array of BetaManagedAgentsMCPToolConfig-
enabled: boolean -
name: string -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
default_config: BetaManagedAgentsMCPToolsetDefaultConfigResolved default configuration for all tools from an MCP server.
-
enabled: boolean -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
mcp_server_name: string
-
-
BetaManagedAgentsCustomTool objectA custom tool as returned in API responses.
-
type: "custom" -
description: string -
input_schema: BetaManagedAgentsCustomToolInputSchemaJSON Schema for custom tool input parameters.
-
type: "object" -
properties: optional map[unknown] or null -
required: optional array of string or null
-
-
name: string
-
-
-
version: numberformat: int32
-
-
BetaManagedAgentsAdvisor objectPlatform advisor roster entry: a model the session's primary thread may consult mid-turn.
-
type: "advisor" -
model: stringThe advisor model id.
-
-
-
-
name: string -
skills: array of BetaManagedAgentsAnthropicSkill or BetaManagedAgentsCustomSkill-
BetaManagedAgentsAnthropicSkill objectA resolved Anthropic-managed skill.
-
BetaManagedAgentsCustomSkill objectA resolved user-created custom skill.
-
-
system: string or null -
tools: array of BetaManagedAgentsAgentToolset20260401 or BetaManagedAgentsMCPToolset or BetaManagedAgentsCustomTool-
BetaManagedAgentsAgentToolset20260401 object -
BetaManagedAgentsMCPToolset object -
BetaManagedAgentsCustomTool objectA custom tool as returned in API responses.
-
-
version: numberformat: int32
-
-
archived_at: string or nullA timestamp in RFC 3339 format
format: date-time
-
budget: BetaManagedAgentsBudgetLimit or nullA hard spend ceiling. The session stops issuing new model requests once the tracked list cost reaches
max_list_cost.-
type: "limit" -
max_list_cost: BetaMonetaryAmountA monetary amount in a specific currency.
-
amount: stringAmount in minor units of the currency, as an integer decimal string with no leading zeros: "2500" is $25.00 and "50" is fifty cents. A string rather than a number so no float rounding is ever applied.
-
currency: BetaCurrencyUppercase ISO-4217 currency code.
USDis the only currency currently supported; the accepted set is closed and grows only when a new currency is priced.
-
-
-
created_at: stringA timestamp in RFC 3339 format
format: date-time
-
environment_id: string -
metadata: map[string] -
outcome_evaluations: array of BetaManagedAgentsOutcomeEvaluationResourcePer-outcome evaluation state. One entry per
define_outcomeevent sent to the session.-
type: "outcome_evaluation" -
completed_at: string or nullA timestamp in RFC 3339 format
format: date-time
-
description: stringWhat the agent should produce.
-
explanation: string or nullGrader's verdict text from the most recent evaluation. For
satisfied, explains why criteria are met; forneeds_revision(intermediate), what's missing; forfailed, why unrecoverable. -
iteration: number0-indexed revision cycle the outcome is currently on.
format: int32
-
outcome_id: stringServer-generated outc_ ID for this outcome.
-
result: stringCurrent evaluation state.
pendingbefore the agent begins work;runningwhile producing or revising;evaluatingwhile the grader scores;satisfied/max_iterations_reached/failed/interruptedare terminal.
-
-
resources: array of BetaManagedAgentsSessionResource-
BetaManagedAgentsGitHubRepositoryResource object-
type: "github_repository" -
id: string -
created_at: stringA timestamp in RFC 3339 format
format: date-time
-
mount_path: string -
updated_at: stringA timestamp in RFC 3339 format
format: date-time
-
url: string -
checkout: optional BetaManagedAgentsBranchCheckout or BetaManagedAgentsCommitCheckout or null-
BetaManagedAgentsBranchCheckout object-
type: "branch" -
name: stringBranch name to check out.
minLength: 1, maxLength: 255
-
-
BetaManagedAgentsCommitCheckout object-
type: "commit" -
sha: stringFull commit SHA to check out.
minLength: 7, maxLength: 64
-
-
-
-
BetaManagedAgentsFileResource object-
type: "file" -
id: string -
created_at: stringA timestamp in RFC 3339 format
format: date-time
-
file_id: string -
mount_path: string -
updated_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsMemoryStoreResource objectA memory store attached to an agent session.
-
type: "memory_store" -
memory_store_id: stringThe memory store ID (memstore_...). Must belong to the caller's organization and workspace.
-
access: optional "read_write" or "read_only" or nullAccess mode for an attached memory store.
-
"read_write" -
"read_only"
-
-
description: optional stringDescription of the memory store, snapshotted at attach time. Rendered into the agent's system prompt. Empty string when the store has no description.
-
instructions: optional string or nullPer-attachment guidance for the agent on how to use this store. Rendered into the memory section of the system prompt. Max 4096 chars.
maxLength: 4096
-
mount_path: optional string or nullFilesystem path where the store is mounted in the session container, e.g. /mnt/memory/user-preferences. Derived from the store's name. Output-only.
-
name: optional string or nullDisplay name of the memory store, snapshotted at attach time. Later edits to the store's name do not propagate to this resource.
-
-
-
stats: BetaManagedAgentsSessionStatsTiming statistics for a session.
-
active_seconds: optional numberCumulative time in seconds the session spent in
runningstatus. Excludes idle time.format: double
-
duration_seconds: optional numberElapsed time since session creation in seconds. For terminated sessions, frozen at the final update.
format: double
-
-
status: "rescheduling" or "running" or "idle" or "terminated"SessionStatus enum
-
"rescheduling" -
"running" -
"idle" -
"terminated"
-
-
title: string or null -
updated_at: stringA timestamp in RFC 3339 format
format: date-time
-
usage: BetaManagedAgentsSessionUsageCumulative token usage for a session across all turns.
-
active_seconds: optional numberCumulative time in seconds during which the session had at least one thread in running status. Overlapping activity from concurrent threads is counted once, unlike
stats.active_seconds, which sums each thread's own active time. This is the duration the session's runtime cost is priced on.format: double
-
cache_creation: optional BetaManagedAgentsCacheCreationUsagePrompt-cache creation token usage broken down by cache lifetime.
-
ephemeral_1h_input_tokens: optional numberTokens used to create 1-hour ephemeral cache entries.
format: int32
-
ephemeral_5m_input_tokens: optional numberTokens used to create 5-minute ephemeral cache entries.
format: int32
-
-
cache_read_input_tokens: optional numberTotal tokens read from prompt cache.
format: int32
-
input_tokens: optional numberTotal input tokens consumed across all turns.
format: int32
-
list_cost: optional BetaMonetaryAmount or nullA monetary amount in a specific currency.
-
output_tokens: optional numberTotal output tokens generated across all turns.
format: int32
-
server_tool_use: optional BetaManagedAgentsServerToolUsage or nullCumulative count of server-executed tool invocations, broken down by tool.
-
web_fetch_requests: optional numberNumber of server-executed web fetch requests.
format: int32
-
web_search_requests: optional numberNumber of server-executed web search requests.
format: int32
-
-
-
vault_ids: array of stringVault IDs attached to the session at creation. Empty when no vaults were supplied.
-
deployment_id: optional string or nullDeployment ID when the session was created from a deployment reference. Null otherwise.
-
Example
curl https://api.anthropic.com/v1/sessions/$SESSION_ID \
-H 'anthropic-version: 2023-06-01' \
-H 'anthropic-beta: managed-agents-2026-04-01' \
-H "X-Api-Key: $ANTHROPIC_API_KEY"Response (200)
{
"id": "sesn_011CZkZAtmR3yMPDzynEDxu7",
"agent": {
"id": "agent_011CZkYpogX7uDKUyvBTophP",
"description": "A general-purpose starter agent.",
"mcp_servers": [
{
"name": "example-mcp",
"type": "url",
"url": "https://example-server.modelcontextprotocol.io/sse"
}
],
"model": {
"id": "claude-opus-5",
"effort": {
"type": "low"
},
"inference_geo": "inference_geo",
"speed": "standard"
},
"multiagent": {
"agents": [
{
"id": "agent_011CZkYqphY8vELVzwCUpqiQ",
"description": "A focused research subagent.",
"mcp_servers": [
{
"name": "example-mcp",
"type": "url",
"url": "https://example-server.modelcontextprotocol.io/sse"
}
],
"model": {
"id": "claude-opus-5",
"effort": {
"type": "low"
},
"inference_geo": "inference_geo",
"speed": "standard"
},
"name": "Researcher",
"skills": [
{
"skill_id": "xlsx",
"type": "anthropic",
"version": "1"
}
],
"system": "You are a research subagent that gathers and summarises sources for the coordinating agent.",
"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",
"version": 1
}
],
"type": "coordinator"
},
"name": "My First Agent",
"skills": [
{
"skill_id": "xlsx",
"type": "anthropic",
"version": "1"
},
{
"skill_id": "skill_011CZkZFNu9hAbo3jZPRgTlx",
"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",
"version": 1
},
"archived_at": null,
"budget": {
"max_list_cost": {
"amount": "2500",
"currency": "USD"
},
"type": "limit"
},
"created_at": "2026-03-15T10:00:00Z",
"environment_id": "env_011CZkZ9X2dpNyB7HsEFoRfW",
"metadata": {},
"outcome_evaluations": [
{
"completed_at": "2026-03-15T10:02:31Z",
"description": "Produce a 2-page summary as summary.md",
"explanation": "All five sections present with inline citations.",
"iteration": 0,
"outcome_id": "outc_011CZkZRSw2kEfs6ncTVljxP",
"result": "satisfied",
"type": "outcome_evaluation"
}
],
"resources": [
{
"id": "sesrsc_011CZkZBJq5dWxk9fVLNcPht",
"created_at": "2026-03-15T10:00:00Z",
"file_id": "file_011CNha8iCJcU1wXNR6q4V8w",
"mount_path": "/uploads/receipt.pdf",
"type": "file",
"updated_at": "2026-03-15T10:00:00Z"
},
{
"id": "sesrsc_011CZkZCKr6eXyl0gWMOdQiu",
"created_at": "2026-03-15T10:00:00Z",
"mount_path": "/workspace/example-repo",
"type": "github_repository",
"updated_at": "2026-03-15T10:00:00Z",
"url": "https://github.com/example-org/example-repo",
"checkout": {
"name": "main",
"type": "branch"
}
}
],
"stats": {
"active_seconds": 0,
"duration_seconds": 0
},
"status": "idle",
"title": "Order #1234 inquiry",
"type": "session",
"updated_at": "2026-03-15T10:00:00Z",
"usage": {
"active_seconds": 0,
"cache_creation": {
"ephemeral_1h_input_tokens": 0,
"ephemeral_5m_input_tokens": 0
},
"cache_read_input_tokens": 0,
"input_tokens": 0,
"list_cost": {
"amount": "2500",
"currency": "USD"
},
"output_tokens": 0,
"server_tool_use": {
"web_fetch_requests": 0,
"web_search_requests": 3
}
},
"vault_ids": [
"vlt_011CZkZDLs7fYzm1hXNPeRjv"
],
"deployment_id": "deployment_id"
}Update Session
POST /v1/sessions/{session_id}
Update Session
Path parameters
session_id: string
Headers
-
"anthropic-beta": optional array of AnthropicBetaOptional header to specify the beta version(s) you want to use.
-
string -
"message-batches-2024-09-24" or "prompt-caching-2024-07-31" or "computer-use-2024-10-22" or 43 more-
"message-batches-2024-09-24" -
"prompt-caching-2024-07-31" -
"computer-use-2024-10-22" -
"computer-use-2025-01-24" -
"pdfs-2024-09-25" -
"token-counting-2024-11-01" -
"token-efficient-tools-2025-02-19" -
"output-128k-2025-02-19" -
"files-api-2025-04-14" -
"mcp-client-2025-04-04" -
"mcp-client-2025-11-20" -
"dev-full-thinking-2025-05-14" -
"interleaved-thinking-2025-05-14" -
"code-execution-2025-05-22" -
"extended-cache-ttl-2025-04-11" -
"context-1m-2025-08-07" -
"context-management-2025-06-27" -
"model-context-window-exceeded-2025-08-26" -
"skills-2025-10-02" -
"fast-mode-2026-02-01" -
"output-300k-2026-03-24" -
"user-profiles-2026-03-24" -
"user-profiles-2026-08-18" -
"user-profiles-2026-09-04" -
"advisor-tool-2026-03-01" -
"managed-agents-2026-04-01" -
"cache-diagnosis-2026-04-07" -
"dreaming-2026-04-21" -
"thinking-token-count-2026-05-13" -
"server-side-fallback-2026-06-01" -
"server-side-fallback-2026-07-01" -
"fallback-credit-2026-06-01" -
"fallback-credit-2026-07-01" -
"agent-memory-2026-07-22" -
"mid-conversation-tool-changes-2026-07-01" -
"compact-2026-01-12" -
"computer-use-2025-11-24" -
"mcp-tunnels-2026-06-22" -
"structured-outputs-2025-11-13" -
"task-budgets-2026-03-13" -
"thinking-display-updates-2026-08-18" -
"ce-user-management-2026-07-13" -
"mid-conversation-output-config-2026-07-01" -
"thinking-binding-controls-2026-08-01" -
"mid-conversation-system-clear-at-2026-08-21" -
"compact-2026-09-04"
-
-
-
"anthropic-workspace-id": optional string
Body parameters
-
agent: optional BetaManagedAgentsSessionAgentUpdateMid-session agent configuration update. Only
toolsandmcp_serversare updatable. Full replacement: the provided array becomes the new value. To preserve existing entries, GET the session, modify the array, and POST it back.-
mcp_servers: optional array of BetaManagedAgentsURLMCPServerParamsReplacement MCP server list. Full replacement: the provided array becomes the new value. Send an empty array to clear; omit to preserve.
-
type: "url" -
name: stringUnique name for this server, referenced by mcp_toolset configurations. 1-255 characters.
minLength: 1, maxLength: 255
-
url: stringEndpoint URL for the MCP server.
maxLength: 2048
-
-
tools: optional array of BetaManagedAgentsAgentToolset20260401Params or BetaManagedAgentsMCPToolsetParams or BetaManagedAgentsCustomToolParamsReplacement tool list. Full replacement: the provided array becomes the new value. Send an empty array to clear; omit to preserve.
-
BetaManagedAgentsAgentToolset20260401Params objectConfiguration for built-in agent tools. Use this to enable or disable groups of tools available to the agent.
-
type: "agent_toolset_20260401" -
configs: optional array of BetaManagedAgentsAgentToolConfigParamsPer-tool configuration overrides.
-
BetaManagedAgentsBashToolConfigParams objectConfiguration override for the bash tool.
-
type: optional "bash" -
name: "bash"Must be "bash".
-
enabled: optional boolean or nullWhether this tool is enabled and available to Claude. Overrides the default_config setting.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
type: "always_allow"
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
type: "always_ask"
-
BetaManagedAgentsAutoPolicy objectThe 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"
-
-
-
BetaManagedAgentsEditToolConfigParams objectConfiguration override for the edit tool.
-
type: optional "edit" -
name: "edit"Must be "edit".
-
enabled: optional boolean or nullWhether this tool is enabled and available to Claude. Overrides the default_config setting.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsReadToolConfigParams objectConfiguration override for the read tool.
-
type: optional "read" -
name: "read"Must be "read".
-
enabled: optional boolean or nullWhether this tool is enabled and available to Claude. Overrides the default_config setting.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWriteToolConfigParams objectConfiguration override for the write tool.
-
type: optional "write" -
name: "write"Must be "write".
-
enabled: optional boolean or nullWhether this tool is enabled and available to Claude. Overrides the default_config setting.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGlobToolConfigParams objectConfiguration override for the glob tool.
-
type: optional "glob" -
name: "glob"Must be "glob".
-
enabled: optional boolean or nullWhether this tool is enabled and available to Claude. Overrides the default_config setting.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGrepToolConfigParams objectConfiguration override for the grep tool.
-
type: optional "grep" -
name: "grep"Must be "grep".
-
enabled: optional boolean or nullWhether this tool is enabled and available to Claude. Overrides the default_config setting.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWebFetchToolConfigParams objectConfiguration override for the web_fetch tool.
-
type: optional "web_fetch" -
name: "web_fetch"Must be "web_fetch".
-
allowed_domains: optional array of stringOnly 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.
-
blocked_domains: optional array of stringNever 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: optional boolean or nullWhether this tool is enabled and available to Claude. Overrides the default_config setting.
-
max_content_tokens: optional number or nullMaximum number of tokens of fetched text content to include in context per call. Does not apply to binary content such as PDFs.
format: int32
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWebSearchToolConfigParams objectConfiguration override for the web_search tool.
-
type: optional "web_search" -
name: "web_search"Must be "web_search".
-
allowed_domains: optional array of stringOnly 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.
-
blocked_domains: optional array of stringNever 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: optional boolean or nullWhether this tool is enabled and available to Claude. Overrides the default_config setting.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
user_location: optional BetaManagedAgentsUserLocation or nullApproximate user location for search result localization.
-
type: "approximate"Location precision. Only "approximate" is supported.
-
city: optional string or nullCity name.
minLength: 1, maxLength: 255
-
country: optional string or nullTwo-letter ISO 3166-1 country code, uppercase.
-
region: optional string or nullRegion or state name.
minLength: 1, maxLength: 255
-
timezone: optional string or nullIANA timezone identifier, e.g. "America/Los_Angeles".
minLength: 1, maxLength: 255
-
-
-
-
default_config: optional BetaManagedAgentsAgentToolsetDefaultConfigParams or nullDefault configuration for all tools in a toolset.
-
enabled: optional boolean or nullWhether tools are enabled and available to Claude by default. Defaults to true if not specified.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
-
BetaManagedAgentsMCPToolsetParams objectConfiguration for tools from an MCP server defined in
mcp_servers.-
type: "mcp_toolset" -
mcp_server_name: stringName of the MCP server. Must match a server name from the mcp_servers array. 1-255 characters.
minLength: 1, maxLength: 255
-
configs: optional array of BetaManagedAgentsMCPToolConfigParamsPer-tool configuration overrides.
-
name: stringName of the MCP tool to configure. 1-128 characters.
minLength: 1, maxLength: 128
-
enabled: optional boolean or nullWhether this tool is enabled. Overrides the
default_configsetting. -
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
default_config: optional BetaManagedAgentsMCPToolsetDefaultConfigParams or nullDefault configuration for all tools from an MCP server.
-
enabled: optional boolean or nullWhether tools are enabled by default. Defaults to true if not specified.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
-
BetaManagedAgentsCustomToolParams objectA custom tool that is executed by the API client rather than the agent. When the agent calls this tool, an
agent.custom_tool_useevent is emitted and the session goes idle, waiting for the client to provide the result via auser.custom_tool_resultevent.-
type: "custom" -
description: stringDescription of what the tool does, shown to the agent to help it decide when to use the tool.
minLength: 1
-
input_schema: BetaManagedAgentsCustomToolInputSchemaJSON Schema for custom tool input parameters.
-
type: "object" -
properties: optional map[unknown] or null -
required: optional array of string or null
-
-
name: stringUnique name for the tool. 1-128 characters; letters, digits, underscores, and hyphens.
minLength: 1, maxLength: 128
-
-
-
-
budget: optional BetaManagedAgentsBudgetLimit or nullA hard spend ceiling. The session stops issuing new model requests once the tracked list cost reaches
max_list_cost.-
type: "limit" -
max_list_cost: BetaMonetaryAmountA monetary amount in a specific currency.
-
amount: stringAmount in minor units of the currency, as an integer decimal string with no leading zeros: "2500" is $25.00 and "50" is fifty cents. A string rather than a number so no float rounding is ever applied.
-
currency: BetaCurrencyUppercase ISO-4217 currency code.
USDis the only currency currently supported; the accepted set is closed and grows only when a new currency is priced.
-
-
-
metadata: optional map[string] or nullMetadata patch. Set a key to a string to upsert it, or to null to delete it. Omit the field to preserve.
-
title: optional string or nullHuman-readable session title.
minLength: 1, maxLength: 500
-
vault_ids: optional array of stringVault IDs (
vlt_*) to attach to the session. Not yet supported; requests setting this field are rejected. Reserved for future use.
Returns
-
BetaManagedAgentsSession objectA Managed Agents
session.-
type: "session" -
id: string -
agent: BetaManagedAgentsSessionAgentResolved
agentdefinition for asession. Snapshot of theagentatsessioncreation time.-
type: "agent" -
id: string -
description: string or null -
mcp_servers: array of BetaManagedAgentsMCPServerURLDefinition-
type: "url" -
name: string -
url: string
-
-
model: BetaManagedAgentsModelConfigModel identifier and configuration.
-
id: BetaManagedAgentsModelThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1" or "claude-sonnet-5" or "claude-fable-5" or 11 moreThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1"Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows
-
"claude-sonnet-5"High-performance model for coding and agents
-
"claude-fable-5"Next generation of intelligence for the hardest knowledge work and coding problems
-
"claude-opus-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-8"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-7"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-6"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-6"Best combination of speed and intelligence
-
"claude-haiku-4-5"Fastest model with near-frontier intelligence
-
"claude-haiku-4-5-20251001"Fastest model with near-frontier intelligence
-
"claude-opus-4-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-5-20251101"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-5"High-performance model for agents and coding
-
"claude-sonnet-4-5-20250929"High-performance model for agents and coding
-
-
string
-
-
effort: optional BetaManagedAgentsEffortLow or BetaManagedAgentsEffortMedium or BetaManagedAgentsEffortHigh or 2 moreHow hard Claude works on each turn. Sets
output_config.efforton every Messages call the session makes.-
BetaManagedAgentsEffortLow objectLow effort. Favors latency over reasoning depth.
type: "low"
-
BetaManagedAgentsEffortMedium objectMedium effort. Balances latency and reasoning depth.
type: "medium"
-
BetaManagedAgentsEffortHigh objectHigh effort. Favors reasoning depth.
type: "high"
-
BetaManagedAgentsEffortXhigh objectExtra-high effort. Not all models accept this level.
type: "xhigh"
-
BetaManagedAgentsEffortMax objectMaximum effort. Favors reasoning depth over latency.
type: "max"
-
-
inference_geo: optional stringGeographic region for model inference. When unset, requests fall through to the workspace's default_inference_geo.
-
speed: optional "standard" or "fast"Inference speed mode.
fastprovides significantly faster output token generation at premium pricing. Not all models supportfast; invalid combinations are rejected at create time.-
"standard" -
"fast"
-
-
-
multiagent: BetaManagedAgentsSessionMultiagentCoordinator or nullResolved coordinator topology with full agent definitions for each roster member.
-
type: "coordinator" -
agents: array of BetaManagedAgentsSessionThreadAgent or BetaManagedAgentsAdvisorFull
agentdefinitions the coordinator may spawn as session threads.-
BetaManagedAgentsSessionThreadAgent objectResolved
agentdefinition for a singlesession_thread. Snapshot of the agent at thread creation time. The multiagent roster is not repeated here; read it fromSession.agent.-
type: "agent" -
id: string -
description: string or null -
mcp_servers: array of BetaManagedAgentsMCPServerURLDefinition-
type: "url" -
name: string -
url: string
-
-
model: BetaManagedAgentsModelConfigModel identifier and configuration.
-
name: string -
skills: array of BetaManagedAgentsAnthropicSkill or BetaManagedAgentsCustomSkill-
BetaManagedAgentsAnthropicSkill objectA resolved Anthropic-managed skill.
-
type: "anthropic" -
skill_id: string -
version: string
-
-
BetaManagedAgentsCustomSkill objectA resolved user-created custom skill.
-
type: "custom" -
skill_id: string -
version: string
-
-
-
system: string or null -
tools: array of BetaManagedAgentsAgentToolset20260401 or BetaManagedAgentsMCPToolset or BetaManagedAgentsCustomTool-
BetaManagedAgentsAgentToolset20260401 object-
type: "agent_toolset_20260401" -
configs: array of BetaManagedAgentsAgentToolConfig-
BetaManagedAgentsBashToolConfig objectConfiguration for the bash tool.
-
type: "bash" -
enabled: boolean -
name: "bash" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
type: "always_allow"
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
type: "always_ask"
-
BetaManagedAgentsAutoPolicy objectThe 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"
-
-
-
BetaManagedAgentsEditToolConfig objectConfiguration for the edit tool.
-
type: "edit" -
enabled: boolean -
name: "edit" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsReadToolConfig objectConfiguration for the read tool.
-
type: "read" -
enabled: boolean -
name: "read" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWriteToolConfig objectConfiguration for the write tool.
-
type: "write" -
enabled: boolean -
name: "write" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGlobToolConfig objectConfiguration for the glob tool.
-
type: "glob" -
enabled: boolean -
name: "glob" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGrepToolConfig objectConfiguration for the grep tool.
-
type: "grep" -
enabled: boolean -
name: "grep" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWebFetchToolConfig objectConfiguration for the web_fetch tool.
-
type: "web_fetch" -
enabled: boolean -
name: "web_fetch" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
allowed_domains: optional array of string -
blocked_domains: optional array of string -
max_content_tokens: optional number or nullformat: int32
-
-
BetaManagedAgentsWebSearchToolConfig objectConfiguration for the web_search tool.
-
type: "web_search" -
enabled: boolean -
name: "web_search" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
allowed_domains: optional array of string -
blocked_domains: optional array of string -
user_location: optional BetaManagedAgentsUserLocation or nullApproximate user location for search result localization.
-
type: "approximate"Location precision. Only "approximate" is supported.
-
city: optional string or nullCity name.
minLength: 1, maxLength: 255
-
country: optional string or nullTwo-letter ISO 3166-1 country code, uppercase.
-
region: optional string or nullRegion or state name.
minLength: 1, maxLength: 255
-
timezone: optional string or nullIANA timezone identifier, e.g. "America/Los_Angeles".
minLength: 1, maxLength: 255
-
-
-
-
default_config: BetaManagedAgentsAgentToolsetDefaultConfigResolved default configuration for agent tools.
-
enabled: boolean -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
-
BetaManagedAgentsMCPToolset object-
type: "mcp_toolset" -
configs: array of BetaManagedAgentsMCPToolConfig-
enabled: boolean -
name: string -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
default_config: BetaManagedAgentsMCPToolsetDefaultConfigResolved default configuration for all tools from an MCP server.
-
enabled: boolean -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
mcp_server_name: string
-
-
BetaManagedAgentsCustomTool objectA custom tool as returned in API responses.
-
type: "custom" -
description: string -
input_schema: BetaManagedAgentsCustomToolInputSchemaJSON Schema for custom tool input parameters.
-
type: "object" -
properties: optional map[unknown] or null -
required: optional array of string or null
-
-
name: string
-
-
-
version: numberformat: int32
-
-
BetaManagedAgentsAdvisor objectPlatform advisor roster entry: a model the session's primary thread may consult mid-turn.
-
type: "advisor" -
model: stringThe advisor model id.
-
-
-
-
name: string -
skills: array of BetaManagedAgentsAnthropicSkill or BetaManagedAgentsCustomSkill-
BetaManagedAgentsAnthropicSkill objectA resolved Anthropic-managed skill.
-
BetaManagedAgentsCustomSkill objectA resolved user-created custom skill.
-
-
system: string or null -
tools: array of BetaManagedAgentsAgentToolset20260401 or BetaManagedAgentsMCPToolset or BetaManagedAgentsCustomTool-
BetaManagedAgentsAgentToolset20260401 object -
BetaManagedAgentsMCPToolset object -
BetaManagedAgentsCustomTool objectA custom tool as returned in API responses.
-
-
version: numberformat: int32
-
-
archived_at: string or nullA timestamp in RFC 3339 format
format: date-time
-
budget: BetaManagedAgentsBudgetLimit or nullA hard spend ceiling. The session stops issuing new model requests once the tracked list cost reaches
max_list_cost.-
type: "limit" -
max_list_cost: BetaMonetaryAmountA monetary amount in a specific currency.
-
amount: stringAmount in minor units of the currency, as an integer decimal string with no leading zeros: "2500" is $25.00 and "50" is fifty cents. A string rather than a number so no float rounding is ever applied.
-
currency: BetaCurrencyUppercase ISO-4217 currency code.
USDis the only currency currently supported; the accepted set is closed and grows only when a new currency is priced.
-
-
-
created_at: stringA timestamp in RFC 3339 format
format: date-time
-
environment_id: string -
metadata: map[string] -
outcome_evaluations: array of BetaManagedAgentsOutcomeEvaluationResourcePer-outcome evaluation state. One entry per
define_outcomeevent sent to the session.-
type: "outcome_evaluation" -
completed_at: string or nullA timestamp in RFC 3339 format
format: date-time
-
description: stringWhat the agent should produce.
-
explanation: string or nullGrader's verdict text from the most recent evaluation. For
satisfied, explains why criteria are met; forneeds_revision(intermediate), what's missing; forfailed, why unrecoverable. -
iteration: number0-indexed revision cycle the outcome is currently on.
format: int32
-
outcome_id: stringServer-generated outc_ ID for this outcome.
-
result: stringCurrent evaluation state.
pendingbefore the agent begins work;runningwhile producing or revising;evaluatingwhile the grader scores;satisfied/max_iterations_reached/failed/interruptedare terminal.
-
-
resources: array of BetaManagedAgentsSessionResource-
BetaManagedAgentsGitHubRepositoryResource object-
type: "github_repository" -
id: string -
created_at: stringA timestamp in RFC 3339 format
format: date-time
-
mount_path: string -
updated_at: stringA timestamp in RFC 3339 format
format: date-time
-
url: string -
checkout: optional BetaManagedAgentsBranchCheckout or BetaManagedAgentsCommitCheckout or null-
BetaManagedAgentsBranchCheckout object-
type: "branch" -
name: stringBranch name to check out.
minLength: 1, maxLength: 255
-
-
BetaManagedAgentsCommitCheckout object-
type: "commit" -
sha: stringFull commit SHA to check out.
minLength: 7, maxLength: 64
-
-
-
-
BetaManagedAgentsFileResource object-
type: "file" -
id: string -
created_at: stringA timestamp in RFC 3339 format
format: date-time
-
file_id: string -
mount_path: string -
updated_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsMemoryStoreResource objectA memory store attached to an agent session.
-
type: "memory_store" -
memory_store_id: stringThe memory store ID (memstore_...). Must belong to the caller's organization and workspace.
-
access: optional "read_write" or "read_only" or nullAccess mode for an attached memory store.
-
"read_write" -
"read_only"
-
-
description: optional stringDescription of the memory store, snapshotted at attach time. Rendered into the agent's system prompt. Empty string when the store has no description.
-
instructions: optional string or nullPer-attachment guidance for the agent on how to use this store. Rendered into the memory section of the system prompt. Max 4096 chars.
maxLength: 4096
-
mount_path: optional string or nullFilesystem path where the store is mounted in the session container, e.g. /mnt/memory/user-preferences. Derived from the store's name. Output-only.
-
name: optional string or nullDisplay name of the memory store, snapshotted at attach time. Later edits to the store's name do not propagate to this resource.
-
-
-
stats: BetaManagedAgentsSessionStatsTiming statistics for a session.
-
active_seconds: optional numberCumulative time in seconds the session spent in
runningstatus. Excludes idle time.format: double
-
duration_seconds: optional numberElapsed time since session creation in seconds. For terminated sessions, frozen at the final update.
format: double
-
-
status: "rescheduling" or "running" or "idle" or "terminated"SessionStatus enum
-
"rescheduling" -
"running" -
"idle" -
"terminated"
-
-
title: string or null -
updated_at: stringA timestamp in RFC 3339 format
format: date-time
-
usage: BetaManagedAgentsSessionUsageCumulative token usage for a session across all turns.
-
active_seconds: optional numberCumulative time in seconds during which the session had at least one thread in running status. Overlapping activity from concurrent threads is counted once, unlike
stats.active_seconds, which sums each thread's own active time. This is the duration the session's runtime cost is priced on.format: double
-
cache_creation: optional BetaManagedAgentsCacheCreationUsagePrompt-cache creation token usage broken down by cache lifetime.
-
ephemeral_1h_input_tokens: optional numberTokens used to create 1-hour ephemeral cache entries.
format: int32
-
ephemeral_5m_input_tokens: optional numberTokens used to create 5-minute ephemeral cache entries.
format: int32
-
-
cache_read_input_tokens: optional numberTotal tokens read from prompt cache.
format: int32
-
input_tokens: optional numberTotal input tokens consumed across all turns.
format: int32
-
list_cost: optional BetaMonetaryAmount or nullA monetary amount in a specific currency.
-
output_tokens: optional numberTotal output tokens generated across all turns.
format: int32
-
server_tool_use: optional BetaManagedAgentsServerToolUsage or nullCumulative count of server-executed tool invocations, broken down by tool.
-
web_fetch_requests: optional numberNumber of server-executed web fetch requests.
format: int32
-
web_search_requests: optional numberNumber of server-executed web search requests.
format: int32
-
-
-
vault_ids: array of stringVault IDs attached to the session at creation. Empty when no vaults were supplied.
-
deployment_id: optional string or nullDeployment ID when the session was created from a deployment reference. Null otherwise.
-
Example
curl https://api.anthropic.com/v1/sessions/$SESSION_ID \
-H 'Content-Type: application/json' \
-H 'anthropic-version: 2023-06-01' \
-H 'anthropic-beta: managed-agents-2026-04-01' \
-H "X-Api-Key: $ANTHROPIC_API_KEY" \
-d '{
"title": "Order #1234 inquiry"
}'Response (200)
{
"id": "sesn_011CZkZAtmR3yMPDzynEDxu7",
"agent": {
"id": "agent_011CZkYpogX7uDKUyvBTophP",
"description": "A general-purpose starter agent.",
"mcp_servers": [
{
"name": "example-mcp",
"type": "url",
"url": "https://example-server.modelcontextprotocol.io/sse"
}
],
"model": {
"id": "claude-opus-5",
"effort": {
"type": "low"
},
"inference_geo": "inference_geo",
"speed": "standard"
},
"multiagent": {
"agents": [
{
"id": "agent_011CZkYqphY8vELVzwCUpqiQ",
"description": "A focused research subagent.",
"mcp_servers": [
{
"name": "example-mcp",
"type": "url",
"url": "https://example-server.modelcontextprotocol.io/sse"
}
],
"model": {
"id": "claude-opus-5",
"effort": {
"type": "low"
},
"inference_geo": "inference_geo",
"speed": "standard"
},
"name": "Researcher",
"skills": [
{
"skill_id": "xlsx",
"type": "anthropic",
"version": "1"
}
],
"system": "You are a research subagent that gathers and summarises sources for the coordinating agent.",
"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",
"version": 1
}
],
"type": "coordinator"
},
"name": "My First Agent",
"skills": [
{
"skill_id": "xlsx",
"type": "anthropic",
"version": "1"
},
{
"skill_id": "skill_011CZkZFNu9hAbo3jZPRgTlx",
"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",
"version": 1
},
"archived_at": null,
"budget": {
"max_list_cost": {
"amount": "2500",
"currency": "USD"
},
"type": "limit"
},
"created_at": "2026-03-15T10:00:00Z",
"environment_id": "env_011CZkZ9X2dpNyB7HsEFoRfW",
"metadata": {},
"outcome_evaluations": [
{
"completed_at": "2026-03-15T10:02:31Z",
"description": "Produce a 2-page summary as summary.md",
"explanation": "All five sections present with inline citations.",
"iteration": 0,
"outcome_id": "outc_011CZkZRSw2kEfs6ncTVljxP",
"result": "satisfied",
"type": "outcome_evaluation"
}
],
"resources": [
{
"id": "sesrsc_011CZkZBJq5dWxk9fVLNcPht",
"created_at": "2026-03-15T10:00:00Z",
"file_id": "file_011CNha8iCJcU1wXNR6q4V8w",
"mount_path": "/uploads/receipt.pdf",
"type": "file",
"updated_at": "2026-03-15T10:00:00Z"
},
{
"id": "sesrsc_011CZkZCKr6eXyl0gWMOdQiu",
"created_at": "2026-03-15T10:00:00Z",
"mount_path": "/workspace/example-repo",
"type": "github_repository",
"updated_at": "2026-03-15T10:00:00Z",
"url": "https://github.com/example-org/example-repo",
"checkout": {
"name": "main",
"type": "branch"
}
}
],
"stats": {
"active_seconds": 0,
"duration_seconds": 0
},
"status": "idle",
"title": "Order #1234 inquiry",
"type": "session",
"updated_at": "2026-03-15T10:00:00Z",
"usage": {
"active_seconds": 0,
"cache_creation": {
"ephemeral_1h_input_tokens": 0,
"ephemeral_5m_input_tokens": 0
},
"cache_read_input_tokens": 0,
"input_tokens": 0,
"list_cost": {
"amount": "2500",
"currency": "USD"
},
"output_tokens": 0,
"server_tool_use": {
"web_fetch_requests": 0,
"web_search_requests": 3
}
},
"vault_ids": [
"vlt_011CZkZDLs7fYzm1hXNPeRjv"
],
"deployment_id": "deployment_id"
}Delete Session
DELETE /v1/sessions/{session_id}
Delete Session
Path parameters
session_id: string
Headers
-
"anthropic-beta": optional array of AnthropicBetaOptional header to specify the beta version(s) you want to use.
-
string -
"message-batches-2024-09-24" or "prompt-caching-2024-07-31" or "computer-use-2024-10-22" or 43 more-
"message-batches-2024-09-24" -
"prompt-caching-2024-07-31" -
"computer-use-2024-10-22" -
"computer-use-2025-01-24" -
"pdfs-2024-09-25" -
"token-counting-2024-11-01" -
"token-efficient-tools-2025-02-19" -
"output-128k-2025-02-19" -
"files-api-2025-04-14" -
"mcp-client-2025-04-04" -
"mcp-client-2025-11-20" -
"dev-full-thinking-2025-05-14" -
"interleaved-thinking-2025-05-14" -
"code-execution-2025-05-22" -
"extended-cache-ttl-2025-04-11" -
"context-1m-2025-08-07" -
"context-management-2025-06-27" -
"model-context-window-exceeded-2025-08-26" -
"skills-2025-10-02" -
"fast-mode-2026-02-01" -
"output-300k-2026-03-24" -
"user-profiles-2026-03-24" -
"user-profiles-2026-08-18" -
"user-profiles-2026-09-04" -
"advisor-tool-2026-03-01" -
"managed-agents-2026-04-01" -
"cache-diagnosis-2026-04-07" -
"dreaming-2026-04-21" -
"thinking-token-count-2026-05-13" -
"server-side-fallback-2026-06-01" -
"server-side-fallback-2026-07-01" -
"fallback-credit-2026-06-01" -
"fallback-credit-2026-07-01" -
"agent-memory-2026-07-22" -
"mid-conversation-tool-changes-2026-07-01" -
"compact-2026-01-12" -
"computer-use-2025-11-24" -
"mcp-tunnels-2026-06-22" -
"structured-outputs-2025-11-13" -
"task-budgets-2026-03-13" -
"thinking-display-updates-2026-08-18" -
"ce-user-management-2026-07-13" -
"mid-conversation-output-config-2026-07-01" -
"thinking-binding-controls-2026-08-01" -
"mid-conversation-system-clear-at-2026-08-21" -
"compact-2026-09-04"
-
-
-
"anthropic-workspace-id": optional string
Returns
-
BetaManagedAgentsDeletedSession objectConfirmation that a
sessionhas been permanently deleted.-
type: "session_deleted" -
id: string
-
Example
curl https://api.anthropic.com/v1/sessions/$SESSION_ID \
-X DELETE \
-H 'anthropic-version: 2023-06-01' \
-H 'anthropic-beta: managed-agents-2026-04-01' \
-H "X-Api-Key: $ANTHROPIC_API_KEY"Response (200)
{
"id": "sesn_011CZkZAtmR3yMPDzynEDxu7",
"type": "session_deleted"
}Archive Session
POST /v1/sessions/{session_id}/archive
Archive Session
Path parameters
session_id: string
Headers
-
"anthropic-beta": optional array of AnthropicBetaOptional header to specify the beta version(s) you want to use.
-
string -
"message-batches-2024-09-24" or "prompt-caching-2024-07-31" or "computer-use-2024-10-22" or 43 more-
"message-batches-2024-09-24" -
"prompt-caching-2024-07-31" -
"computer-use-2024-10-22" -
"computer-use-2025-01-24" -
"pdfs-2024-09-25" -
"token-counting-2024-11-01" -
"token-efficient-tools-2025-02-19" -
"output-128k-2025-02-19" -
"files-api-2025-04-14" -
"mcp-client-2025-04-04" -
"mcp-client-2025-11-20" -
"dev-full-thinking-2025-05-14" -
"interleaved-thinking-2025-05-14" -
"code-execution-2025-05-22" -
"extended-cache-ttl-2025-04-11" -
"context-1m-2025-08-07" -
"context-management-2025-06-27" -
"model-context-window-exceeded-2025-08-26" -
"skills-2025-10-02" -
"fast-mode-2026-02-01" -
"output-300k-2026-03-24" -
"user-profiles-2026-03-24" -
"user-profiles-2026-08-18" -
"user-profiles-2026-09-04" -
"advisor-tool-2026-03-01" -
"managed-agents-2026-04-01" -
"cache-diagnosis-2026-04-07" -
"dreaming-2026-04-21" -
"thinking-token-count-2026-05-13" -
"server-side-fallback-2026-06-01" -
"server-side-fallback-2026-07-01" -
"fallback-credit-2026-06-01" -
"fallback-credit-2026-07-01" -
"agent-memory-2026-07-22" -
"mid-conversation-tool-changes-2026-07-01" -
"compact-2026-01-12" -
"computer-use-2025-11-24" -
"mcp-tunnels-2026-06-22" -
"structured-outputs-2025-11-13" -
"task-budgets-2026-03-13" -
"thinking-display-updates-2026-08-18" -
"ce-user-management-2026-07-13" -
"mid-conversation-output-config-2026-07-01" -
"thinking-binding-controls-2026-08-01" -
"mid-conversation-system-clear-at-2026-08-21" -
"compact-2026-09-04"
-
-
-
"anthropic-workspace-id": optional string
Returns
-
BetaManagedAgentsSession objectA Managed Agents
session.-
type: "session" -
id: string -
agent: BetaManagedAgentsSessionAgentResolved
agentdefinition for asession. Snapshot of theagentatsessioncreation time.-
type: "agent" -
id: string -
description: string or null -
mcp_servers: array of BetaManagedAgentsMCPServerURLDefinition-
type: "url" -
name: string -
url: string
-
-
model: BetaManagedAgentsModelConfigModel identifier and configuration.
-
id: BetaManagedAgentsModelThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1" or "claude-sonnet-5" or "claude-fable-5" or 11 moreThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1"Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows
-
"claude-sonnet-5"High-performance model for coding and agents
-
"claude-fable-5"Next generation of intelligence for the hardest knowledge work and coding problems
-
"claude-opus-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-8"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-7"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-6"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-6"Best combination of speed and intelligence
-
"claude-haiku-4-5"Fastest model with near-frontier intelligence
-
"claude-haiku-4-5-20251001"Fastest model with near-frontier intelligence
-
"claude-opus-4-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-5-20251101"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-5"High-performance model for agents and coding
-
"claude-sonnet-4-5-20250929"High-performance model for agents and coding
-
-
string
-
-
effort: optional BetaManagedAgentsEffortLow or BetaManagedAgentsEffortMedium or BetaManagedAgentsEffortHigh or 2 moreHow hard Claude works on each turn. Sets
output_config.efforton every Messages call the session makes.-
BetaManagedAgentsEffortLow objectLow effort. Favors latency over reasoning depth.
type: "low"
-
BetaManagedAgentsEffortMedium objectMedium effort. Balances latency and reasoning depth.
type: "medium"
-
BetaManagedAgentsEffortHigh objectHigh effort. Favors reasoning depth.
type: "high"
-
BetaManagedAgentsEffortXhigh objectExtra-high effort. Not all models accept this level.
type: "xhigh"
-
BetaManagedAgentsEffortMax objectMaximum effort. Favors reasoning depth over latency.
type: "max"
-
-
inference_geo: optional stringGeographic region for model inference. When unset, requests fall through to the workspace's default_inference_geo.
-
speed: optional "standard" or "fast"Inference speed mode.
fastprovides significantly faster output token generation at premium pricing. Not all models supportfast; invalid combinations are rejected at create time.-
"standard" -
"fast"
-
-
-
multiagent: BetaManagedAgentsSessionMultiagentCoordinator or nullResolved coordinator topology with full agent definitions for each roster member.
-
type: "coordinator" -
agents: array of BetaManagedAgentsSessionThreadAgent or BetaManagedAgentsAdvisorFull
agentdefinitions the coordinator may spawn as session threads.-
BetaManagedAgentsSessionThreadAgent objectResolved
agentdefinition for a singlesession_thread. Snapshot of the agent at thread creation time. The multiagent roster is not repeated here; read it fromSession.agent.-
type: "agent" -
id: string -
description: string or null -
mcp_servers: array of BetaManagedAgentsMCPServerURLDefinition-
type: "url" -
name: string -
url: string
-
-
model: BetaManagedAgentsModelConfigModel identifier and configuration.
-
name: string -
skills: array of BetaManagedAgentsAnthropicSkill or BetaManagedAgentsCustomSkill-
BetaManagedAgentsAnthropicSkill objectA resolved Anthropic-managed skill.
-
type: "anthropic" -
skill_id: string -
version: string
-
-
BetaManagedAgentsCustomSkill objectA resolved user-created custom skill.
-
type: "custom" -
skill_id: string -
version: string
-
-
-
system: string or null -
tools: array of BetaManagedAgentsAgentToolset20260401 or BetaManagedAgentsMCPToolset or BetaManagedAgentsCustomTool-
BetaManagedAgentsAgentToolset20260401 object-
type: "agent_toolset_20260401" -
configs: array of BetaManagedAgentsAgentToolConfig-
BetaManagedAgentsBashToolConfig objectConfiguration for the bash tool.
-
type: "bash" -
enabled: boolean -
name: "bash" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
type: "always_allow"
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
type: "always_ask"
-
BetaManagedAgentsAutoPolicy objectThe 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"
-
-
-
BetaManagedAgentsEditToolConfig objectConfiguration for the edit tool.
-
type: "edit" -
enabled: boolean -
name: "edit" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsReadToolConfig objectConfiguration for the read tool.
-
type: "read" -
enabled: boolean -
name: "read" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWriteToolConfig objectConfiguration for the write tool.
-
type: "write" -
enabled: boolean -
name: "write" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGlobToolConfig objectConfiguration for the glob tool.
-
type: "glob" -
enabled: boolean -
name: "glob" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGrepToolConfig objectConfiguration for the grep tool.
-
type: "grep" -
enabled: boolean -
name: "grep" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWebFetchToolConfig objectConfiguration for the web_fetch tool.
-
type: "web_fetch" -
enabled: boolean -
name: "web_fetch" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
allowed_domains: optional array of string -
blocked_domains: optional array of string -
max_content_tokens: optional number or nullformat: int32
-
-
BetaManagedAgentsWebSearchToolConfig objectConfiguration for the web_search tool.
-
type: "web_search" -
enabled: boolean -
name: "web_search" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
allowed_domains: optional array of string -
blocked_domains: optional array of string -
user_location: optional BetaManagedAgentsUserLocation or nullApproximate user location for search result localization.
-
type: "approximate"Location precision. Only "approximate" is supported.
-
city: optional string or nullCity name.
minLength: 1, maxLength: 255
-
country: optional string or nullTwo-letter ISO 3166-1 country code, uppercase.
-
region: optional string or nullRegion or state name.
minLength: 1, maxLength: 255
-
timezone: optional string or nullIANA timezone identifier, e.g. "America/Los_Angeles".
minLength: 1, maxLength: 255
-
-
-
-
default_config: BetaManagedAgentsAgentToolsetDefaultConfigResolved default configuration for agent tools.
-
enabled: boolean -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
-
BetaManagedAgentsMCPToolset object-
type: "mcp_toolset" -
configs: array of BetaManagedAgentsMCPToolConfig-
enabled: boolean -
name: string -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
default_config: BetaManagedAgentsMCPToolsetDefaultConfigResolved default configuration for all tools from an MCP server.
-
enabled: boolean -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
mcp_server_name: string
-
-
BetaManagedAgentsCustomTool objectA custom tool as returned in API responses.
-
type: "custom" -
description: string -
input_schema: BetaManagedAgentsCustomToolInputSchemaJSON Schema for custom tool input parameters.
-
type: "object" -
properties: optional map[unknown] or null -
required: optional array of string or null
-
-
name: string
-
-
-
version: numberformat: int32
-
-
BetaManagedAgentsAdvisor objectPlatform advisor roster entry: a model the session's primary thread may consult mid-turn.
-
type: "advisor" -
model: stringThe advisor model id.
-
-
-
-
name: string -
skills: array of BetaManagedAgentsAnthropicSkill or BetaManagedAgentsCustomSkill-
BetaManagedAgentsAnthropicSkill objectA resolved Anthropic-managed skill.
-
BetaManagedAgentsCustomSkill objectA resolved user-created custom skill.
-
-
system: string or null -
tools: array of BetaManagedAgentsAgentToolset20260401 or BetaManagedAgentsMCPToolset or BetaManagedAgentsCustomTool-
BetaManagedAgentsAgentToolset20260401 object -
BetaManagedAgentsMCPToolset object -
BetaManagedAgentsCustomTool objectA custom tool as returned in API responses.
-
-
version: numberformat: int32
-
-
archived_at: string or nullA timestamp in RFC 3339 format
format: date-time
-
budget: BetaManagedAgentsBudgetLimit or nullA hard spend ceiling. The session stops issuing new model requests once the tracked list cost reaches
max_list_cost.-
type: "limit" -
max_list_cost: BetaMonetaryAmountA monetary amount in a specific currency.
-
amount: stringAmount in minor units of the currency, as an integer decimal string with no leading zeros: "2500" is $25.00 and "50" is fifty cents. A string rather than a number so no float rounding is ever applied.
-
currency: BetaCurrencyUppercase ISO-4217 currency code.
USDis the only currency currently supported; the accepted set is closed and grows only when a new currency is priced.
-
-
-
created_at: stringA timestamp in RFC 3339 format
format: date-time
-
environment_id: string -
metadata: map[string] -
outcome_evaluations: array of BetaManagedAgentsOutcomeEvaluationResourcePer-outcome evaluation state. One entry per
define_outcomeevent sent to the session.-
type: "outcome_evaluation" -
completed_at: string or nullA timestamp in RFC 3339 format
format: date-time
-
description: stringWhat the agent should produce.
-
explanation: string or nullGrader's verdict text from the most recent evaluation. For
satisfied, explains why criteria are met; forneeds_revision(intermediate), what's missing; forfailed, why unrecoverable. -
iteration: number0-indexed revision cycle the outcome is currently on.
format: int32
-
outcome_id: stringServer-generated outc_ ID for this outcome.
-
result: stringCurrent evaluation state.
pendingbefore the agent begins work;runningwhile producing or revising;evaluatingwhile the grader scores;satisfied/max_iterations_reached/failed/interruptedare terminal.
-
-
resources: array of BetaManagedAgentsSessionResource-
BetaManagedAgentsGitHubRepositoryResource object-
type: "github_repository" -
id: string -
created_at: stringA timestamp in RFC 3339 format
format: date-time
-
mount_path: string -
updated_at: stringA timestamp in RFC 3339 format
format: date-time
-
url: string -
checkout: optional BetaManagedAgentsBranchCheckout or BetaManagedAgentsCommitCheckout or null-
BetaManagedAgentsBranchCheckout object-
type: "branch" -
name: stringBranch name to check out.
minLength: 1, maxLength: 255
-
-
BetaManagedAgentsCommitCheckout object-
type: "commit" -
sha: stringFull commit SHA to check out.
minLength: 7, maxLength: 64
-
-
-
-
BetaManagedAgentsFileResource object-
type: "file" -
id: string -
created_at: stringA timestamp in RFC 3339 format
format: date-time
-
file_id: string -
mount_path: string -
updated_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsMemoryStoreResource objectA memory store attached to an agent session.
-
type: "memory_store" -
memory_store_id: stringThe memory store ID (memstore_...). Must belong to the caller's organization and workspace.
-
access: optional "read_write" or "read_only" or nullAccess mode for an attached memory store.
-
"read_write" -
"read_only"
-
-
description: optional stringDescription of the memory store, snapshotted at attach time. Rendered into the agent's system prompt. Empty string when the store has no description.
-
instructions: optional string or nullPer-attachment guidance for the agent on how to use this store. Rendered into the memory section of the system prompt. Max 4096 chars.
maxLength: 4096
-
mount_path: optional string or nullFilesystem path where the store is mounted in the session container, e.g. /mnt/memory/user-preferences. Derived from the store's name. Output-only.
-
name: optional string or nullDisplay name of the memory store, snapshotted at attach time. Later edits to the store's name do not propagate to this resource.
-
-
-
stats: BetaManagedAgentsSessionStatsTiming statistics for a session.
-
active_seconds: optional numberCumulative time in seconds the session spent in
runningstatus. Excludes idle time.format: double
-
duration_seconds: optional numberElapsed time since session creation in seconds. For terminated sessions, frozen at the final update.
format: double
-
-
status: "rescheduling" or "running" or "idle" or "terminated"SessionStatus enum
-
"rescheduling" -
"running" -
"idle" -
"terminated"
-
-
title: string or null -
updated_at: stringA timestamp in RFC 3339 format
format: date-time
-
usage: BetaManagedAgentsSessionUsageCumulative token usage for a session across all turns.
-
active_seconds: optional numberCumulative time in seconds during which the session had at least one thread in running status. Overlapping activity from concurrent threads is counted once, unlike
stats.active_seconds, which sums each thread's own active time. This is the duration the session's runtime cost is priced on.format: double
-
cache_creation: optional BetaManagedAgentsCacheCreationUsagePrompt-cache creation token usage broken down by cache lifetime.
-
ephemeral_1h_input_tokens: optional numberTokens used to create 1-hour ephemeral cache entries.
format: int32
-
ephemeral_5m_input_tokens: optional numberTokens used to create 5-minute ephemeral cache entries.
format: int32
-
-
cache_read_input_tokens: optional numberTotal tokens read from prompt cache.
format: int32
-
input_tokens: optional numberTotal input tokens consumed across all turns.
format: int32
-
list_cost: optional BetaMonetaryAmount or nullA monetary amount in a specific currency.
-
output_tokens: optional numberTotal output tokens generated across all turns.
format: int32
-
server_tool_use: optional BetaManagedAgentsServerToolUsage or nullCumulative count of server-executed tool invocations, broken down by tool.
-
web_fetch_requests: optional numberNumber of server-executed web fetch requests.
format: int32
-
web_search_requests: optional numberNumber of server-executed web search requests.
format: int32
-
-
-
vault_ids: array of stringVault IDs attached to the session at creation. Empty when no vaults were supplied.
-
deployment_id: optional string or nullDeployment ID when the session was created from a deployment reference. Null otherwise.
-
Example
curl https://api.anthropic.com/v1/sessions/$SESSION_ID/archive \
-X POST \
-H 'anthropic-version: 2023-06-01' \
-H 'anthropic-beta: managed-agents-2026-04-01' \
-H "X-Api-Key: $ANTHROPIC_API_KEY"Response (200)
{
"id": "sesn_011CZkZAtmR3yMPDzynEDxu7",
"agent": {
"id": "agent_011CZkYpogX7uDKUyvBTophP",
"description": "A general-purpose starter agent.",
"mcp_servers": [
{
"name": "example-mcp",
"type": "url",
"url": "https://example-server.modelcontextprotocol.io/sse"
}
],
"model": {
"id": "claude-opus-5",
"effort": {
"type": "low"
},
"inference_geo": "inference_geo",
"speed": "standard"
},
"multiagent": {
"agents": [
{
"id": "agent_011CZkYqphY8vELVzwCUpqiQ",
"description": "A focused research subagent.",
"mcp_servers": [
{
"name": "example-mcp",
"type": "url",
"url": "https://example-server.modelcontextprotocol.io/sse"
}
],
"model": {
"id": "claude-opus-5",
"effort": {
"type": "low"
},
"inference_geo": "inference_geo",
"speed": "standard"
},
"name": "Researcher",
"skills": [
{
"skill_id": "xlsx",
"type": "anthropic",
"version": "1"
}
],
"system": "You are a research subagent that gathers and summarises sources for the coordinating agent.",
"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",
"version": 1
}
],
"type": "coordinator"
},
"name": "My First Agent",
"skills": [
{
"skill_id": "xlsx",
"type": "anthropic",
"version": "1"
},
{
"skill_id": "skill_011CZkZFNu9hAbo3jZPRgTlx",
"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",
"version": 1
},
"archived_at": null,
"budget": {
"max_list_cost": {
"amount": "2500",
"currency": "USD"
},
"type": "limit"
},
"created_at": "2026-03-15T10:00:00Z",
"environment_id": "env_011CZkZ9X2dpNyB7HsEFoRfW",
"metadata": {},
"outcome_evaluations": [
{
"completed_at": "2026-03-15T10:02:31Z",
"description": "Produce a 2-page summary as summary.md",
"explanation": "All five sections present with inline citations.",
"iteration": 0,
"outcome_id": "outc_011CZkZRSw2kEfs6ncTVljxP",
"result": "satisfied",
"type": "outcome_evaluation"
}
],
"resources": [
{
"id": "sesrsc_011CZkZBJq5dWxk9fVLNcPht",
"created_at": "2026-03-15T10:00:00Z",
"file_id": "file_011CNha8iCJcU1wXNR6q4V8w",
"mount_path": "/uploads/receipt.pdf",
"type": "file",
"updated_at": "2026-03-15T10:00:00Z"
},
{
"id": "sesrsc_011CZkZCKr6eXyl0gWMOdQiu",
"created_at": "2026-03-15T10:00:00Z",
"mount_path": "/workspace/example-repo",
"type": "github_repository",
"updated_at": "2026-03-15T10:00:00Z",
"url": "https://github.com/example-org/example-repo",
"checkout": {
"name": "main",
"type": "branch"
}
}
],
"stats": {
"active_seconds": 0,
"duration_seconds": 0
},
"status": "idle",
"title": "Order #1234 inquiry",
"type": "session",
"updated_at": "2026-03-15T10:00:00Z",
"usage": {
"active_seconds": 0,
"cache_creation": {
"ephemeral_1h_input_tokens": 0,
"ephemeral_5m_input_tokens": 0
},
"cache_read_input_tokens": 0,
"input_tokens": 0,
"list_cost": {
"amount": "2500",
"currency": "USD"
},
"output_tokens": 0,
"server_tool_use": {
"web_fetch_requests": 0,
"web_search_requests": 3
}
},
"vault_ids": [
"vlt_011CZkZDLs7fYzm1hXNPeRjv"
],
"deployment_id": "deployment_id"
}Domain types
Beta Managed Agents Advisor Params
-
BetaManagedAgentsAdvisorParams objectPlatform 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: "advisor" -
model: stringA Claude model id. The model must be permitted as an advisor for this agent's model — see the sessions/threads/advisor spec.
minLength: 1, maxLength: 256
-
Beta Managed Agents Agent Message Preview
-
BetaManagedAgentsAgentMessagePreview object-
type: "agent.message" -
id: stringThe id the buffered agent.message will carry if it is emitted. Matches the event_id on this preview's event_delta events.
-
Beta Managed Agents Agent Params
-
BetaManagedAgentsAgentParams objectSpecification for an Agent. Provide a specific
versionor use the short-formagent="agent_id"for the most recent version-
type: "agent" -
id: stringThe
agentID.minLength: 1, maxLength: 128
-
version: optional numberThe specific
agentversion to use. Omit to use the latest version. Must be at least 1 if specified.format: int32
-
Beta Managed Agents Agent Thinking Preview
-
BetaManagedAgentsAgentThinkingPreview object-
type: "agent.thinking" -
id: stringThe id the buffered agent.thinking will carry if it is emitted. Start-only — no event_delta events follow.
-
Beta Managed Agents Agent With Overrides Params
-
BetaManagedAgentsAgentWithOverridesParams objectReference to an
agentplus optional configuration overrides. Each provided field replaces the agent's value for the caller's use; the agent resource is unchanged.-
type: "agent_with_overrides" -
id: stringThe
agentID.minLength: 1, maxLength: 128
-
mcp_servers: optional array of BetaManagedAgentsURLMCPServerParamsReplacement MCP server list. Full replacement: the provided array becomes the MCP servers. Send an empty array to clear; omit to preserve the agent's servers.
-
type: "url" -
name: stringUnique name for this server, referenced by mcp_toolset configurations. 1-255 characters.
minLength: 1, maxLength: 255
-
url: stringEndpoint URL for the MCP server.
maxLength: 2048
-
-
model: optional BetaManagedAgentsModel or BetaManagedAgentsModelConfigParamsReplacement model. Accepts the model string, e.g.
claude-opus-5, or amodel_configobject. Omit to use the agent's model.-
BetaManagedAgentsModel = "claude-fable-5-1" or "claude-sonnet-5" or "claude-fable-5" or 11 more or stringThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1" or "claude-sonnet-5" or "claude-fable-5" or 11 moreThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1"Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows
-
"claude-sonnet-5"High-performance model for coding and agents
-
"claude-fable-5"Next generation of intelligence for the hardest knowledge work and coding problems
-
"claude-opus-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-8"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-7"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-6"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-6"Best combination of speed and intelligence
-
"claude-haiku-4-5"Fastest model with near-frontier intelligence
-
"claude-haiku-4-5-20251001"Fastest model with near-frontier intelligence
-
"claude-opus-4-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-5-20251101"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-5"High-performance model for agents and coding
-
"claude-sonnet-4-5-20250929"High-performance model for agents and coding
-
-
string
-
-
BetaManagedAgentsModelConfigParams objectAn object that defines additional configuration control over model use
-
id: BetaManagedAgentsModelThe model that will power your agent.
See models for additional details and options.
-
effort: optional "low" or "medium" or "high" or 2 more or BetaManagedAgentsEffortLow or BetaManagedAgentsEffortMedium or 3 more or nullHow 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.-
BetaManagedAgentsEffortLevel = "low" or "medium" or "high" or 2 moreHow 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.
-
"low" -
"medium" -
"high" -
"xhigh" -
"max"
-
-
BetaManagedAgentsEffortLow objectLow effort. Favors latency over reasoning depth.
type: "low"
-
BetaManagedAgentsEffortMedium objectMedium effort. Balances latency and reasoning depth.
type: "medium"
-
BetaManagedAgentsEffortHigh objectHigh effort. Favors reasoning depth.
type: "high"
-
BetaManagedAgentsEffortXhigh objectExtra-high effort. Not all models accept this level.
type: "xhigh"
-
BetaManagedAgentsEffortMax objectMaximum effort. Favors reasoning depth over latency.
type: "max"
-
-
inference_geo: optional string or nullGeographic region for model inference. When unset, requests fall through to the workspace's default_inference_geo. On update,
modelis whole-object replacement — omitting inference_geo clears it. -
speed: optional "standard" or "fast" or nullInference speed mode.
fastprovides significantly faster output token generation at premium pricing. Not all models supportfast; invalid combinations are rejected at create time.-
"standard" -
"fast"
-
-
-
-
skills: optional array of BetaManagedAgentsSkillParamsReplacement skill list. Full replacement: the provided array becomes the skills. Send an empty array to clear; omit to preserve the agent's skills.
-
BetaManagedAgentsAnthropicSkillParams objectAn Anthropic-managed skill.
-
type: "anthropic" -
skill_id: stringIdentifier of the Anthropic skill (e.g., "xlsx").
minLength: 1, maxLength: 64
-
version: optional string or nullVersion to pin. Defaults to latest if omitted.
minLength: 1, maxLength: 64
-
-
BetaManagedAgentsCustomSkillParams objectA user-created custom skill.
-
type: "custom" -
skill_id: stringTagged ID of the custom skill (e.g., "skill_01XJ5...").
minLength: 1, maxLength: 64
-
version: optional string or nullVersion to pin. Defaults to latest if omitted.
minLength: 1, maxLength: 64
-
-
-
system: optional string or nullReplacement system prompt. Up to 100,000 characters. Set to null to clear the agent's system prompt; omit to preserve it.
maxLength: 100000
-
tools: optional array of BetaManagedAgentsAgentToolset20260401Params or BetaManagedAgentsMCPToolsetParams or BetaManagedAgentsCustomToolParamsReplacement tool list. Full replacement: the provided array becomes the tool configuration. Send an empty array to clear; omit to preserve the agent's tools.
-
BetaManagedAgentsAgentToolset20260401Params objectConfiguration for built-in agent tools. Use this to enable or disable groups of tools available to the agent.
-
type: "agent_toolset_20260401" -
configs: optional array of BetaManagedAgentsAgentToolConfigParamsPer-tool configuration overrides.
-
BetaManagedAgentsBashToolConfigParams objectConfiguration override for the bash tool.
-
type: optional "bash" -
name: "bash"Must be "bash".
-
enabled: optional boolean or nullWhether this tool is enabled and available to Claude. Overrides the default_config setting.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
type: "always_allow"
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
type: "always_ask"
-
BetaManagedAgentsAutoPolicy objectThe 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"
-
-
-
BetaManagedAgentsEditToolConfigParams objectConfiguration override for the edit tool.
-
type: optional "edit" -
name: "edit"Must be "edit".
-
enabled: optional boolean or nullWhether this tool is enabled and available to Claude. Overrides the default_config setting.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsReadToolConfigParams objectConfiguration override for the read tool.
-
type: optional "read" -
name: "read"Must be "read".
-
enabled: optional boolean or nullWhether this tool is enabled and available to Claude. Overrides the default_config setting.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWriteToolConfigParams objectConfiguration override for the write tool.
-
type: optional "write" -
name: "write"Must be "write".
-
enabled: optional boolean or nullWhether this tool is enabled and available to Claude. Overrides the default_config setting.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGlobToolConfigParams objectConfiguration override for the glob tool.
-
type: optional "glob" -
name: "glob"Must be "glob".
-
enabled: optional boolean or nullWhether this tool is enabled and available to Claude. Overrides the default_config setting.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGrepToolConfigParams objectConfiguration override for the grep tool.
-
type: optional "grep" -
name: "grep"Must be "grep".
-
enabled: optional boolean or nullWhether this tool is enabled and available to Claude. Overrides the default_config setting.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWebFetchToolConfigParams objectConfiguration override for the web_fetch tool.
-
type: optional "web_fetch" -
name: "web_fetch"Must be "web_fetch".
-
allowed_domains: optional array of stringOnly 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.
-
blocked_domains: optional array of stringNever 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: optional boolean or nullWhether this tool is enabled and available to Claude. Overrides the default_config setting.
-
max_content_tokens: optional number or nullMaximum number of tokens of fetched text content to include in context per call. Does not apply to binary content such as PDFs.
format: int32
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWebSearchToolConfigParams objectConfiguration override for the web_search tool.
-
type: optional "web_search" -
name: "web_search"Must be "web_search".
-
allowed_domains: optional array of stringOnly 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.
-
blocked_domains: optional array of stringNever 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: optional boolean or nullWhether this tool is enabled and available to Claude. Overrides the default_config setting.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
user_location: optional BetaManagedAgentsUserLocation or nullApproximate user location for search result localization.
-
type: "approximate"Location precision. Only "approximate" is supported.
-
city: optional string or nullCity name.
minLength: 1, maxLength: 255
-
country: optional string or nullTwo-letter ISO 3166-1 country code, uppercase.
-
region: optional string or nullRegion or state name.
minLength: 1, maxLength: 255
-
timezone: optional string or nullIANA timezone identifier, e.g. "America/Los_Angeles".
minLength: 1, maxLength: 255
-
-
-
-
default_config: optional BetaManagedAgentsAgentToolsetDefaultConfigParams or nullDefault configuration for all tools in a toolset.
-
enabled: optional boolean or nullWhether tools are enabled and available to Claude by default. Defaults to true if not specified.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
-
BetaManagedAgentsMCPToolsetParams objectConfiguration for tools from an MCP server defined in
mcp_servers.-
type: "mcp_toolset" -
mcp_server_name: stringName of the MCP server. Must match a server name from the mcp_servers array. 1-255 characters.
minLength: 1, maxLength: 255
-
configs: optional array of BetaManagedAgentsMCPToolConfigParamsPer-tool configuration overrides.
-
name: stringName of the MCP tool to configure. 1-128 characters.
minLength: 1, maxLength: 128
-
enabled: optional boolean or nullWhether this tool is enabled. Overrides the
default_configsetting. -
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
default_config: optional BetaManagedAgentsMCPToolsetDefaultConfigParams or nullDefault configuration for all tools from an MCP server.
-
enabled: optional boolean or nullWhether tools are enabled by default. Defaults to true if not specified.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
-
BetaManagedAgentsCustomToolParams objectA custom tool that is executed by the API client rather than the agent. When the agent calls this tool, an
agent.custom_tool_useevent is emitted and the session goes idle, waiting for the client to provide the result via auser.custom_tool_resultevent.-
type: "custom" -
description: stringDescription of what the tool does, shown to the agent to help it decide when to use the tool.
minLength: 1
-
input_schema: BetaManagedAgentsCustomToolInputSchemaJSON Schema for custom tool input parameters.
-
type: "object" -
properties: optional map[unknown] or null -
required: optional array of string or null
-
-
name: stringUnique name for the tool. 1-128 characters; letters, digits, underscores, and hyphens.
minLength: 1, maxLength: 128
-
-
-
version: optional numberThe specific
agentversion to use. Omit to use the latest version.format: int32
-
Beta Managed Agents Branch Checkout
-
BetaManagedAgentsBranchCheckout object-
type: "branch" -
name: stringBranch name to check out.
minLength: 1, maxLength: 255
-
Beta Managed Agents Budget Limit
-
BetaManagedAgentsBudgetLimit objectA hard spend ceiling. The session stops issuing new model requests once the tracked list cost reaches
max_list_cost.-
type: "limit" -
max_list_cost: BetaMonetaryAmountA monetary amount in a specific currency.
-
amount: stringAmount in minor units of the currency, as an integer decimal string with no leading zeros: "2500" is $25.00 and "50" is fifty cents. A string rather than a number so no float rounding is ever applied.
-
currency: BetaCurrencyUppercase ISO-4217 currency code.
USDis the only currency currently supported; the accepted set is closed and grows only when a new currency is priced.
-
-
Beta Managed Agents Cache Creation Usage
-
BetaManagedAgentsCacheCreationUsage objectPrompt-cache creation token usage broken down by cache lifetime.
-
ephemeral_1h_input_tokens: optional numberTokens used to create 1-hour ephemeral cache entries.
format: int32
-
ephemeral_5m_input_tokens: optional numberTokens used to create 5-minute ephemeral cache entries.
format: int32
-
Beta Managed Agents Commit Checkout
-
BetaManagedAgentsCommitCheckout object-
type: "commit" -
sha: stringFull commit SHA to check out.
minLength: 7, maxLength: 64
-
Beta Managed Agents Deleted Session
-
BetaManagedAgentsDeletedSession objectConfirmation that a
sessionhas been permanently deleted.-
type: "session_deleted" -
id: string
-
Beta Managed Agents Delta Content
-
BetaManagedAgentsDeltaContent object-
type: "content_delta" -
content: BetaManagedAgentsTextBlockRegular text content.
-
type: "text" -
text: stringThe text content.
minLength: 1
-
-
index: optional numberWhich entry in the previewed event's content array this fragment lands in. Insert content as that entry when the index is new; append to the existing entry otherwise.
format: uint32
-
Beta Managed Agents Delta Event
-
BetaManagedAgentsDeltaEvent objectAn incremental update to an event that is still being streamed. Deltas are best-effort and may stop early; when the buffered event with id == event_id is produced it carries the complete content. A model request that ends early (an error or interrupt) produces no buffered event — its terminal span.model_request_end closes the preview. Only sent on stream connections that opt in via event_deltas; never appears in event history.
-
type: "event_delta" -
delta: BetaManagedAgentsDeltaContentOne fragment of the previewed event. The delta type is named for the previewed event's field it streams into: agent.message events stream content_delta fragments, each a partial element of the content array.
-
type: "content_delta" -
content: BetaManagedAgentsTextBlockRegular text content.
-
type: "text" -
text: stringThe text content.
minLength: 1
-
-
index: optional numberWhich entry in the previewed event's content array this fragment lands in. Insert content as that entry when the index is new; append to the existing entry otherwise.
format: uint32
-
-
event_id: stringThe id of the event being previewed. Matches event.id on the corresponding event_start and the buffered event that reconciles the preview.
-
Beta Managed Agents Delta Type
-
BetaManagedAgentsDeltaType = "agent.message" or "agent.thinking"EventDeltaType enum
-
"agent.message" -
"agent.thinking"
-
Beta Managed Agents File Resource Params
-
BetaManagedAgentsFileResourceParams objectMount a file uploaded via the Files API into the session.
-
type: "file" -
file_id: stringID of a previously uploaded file.
minLength: 1, maxLength: 128
-
mount_path: optional string or nullMount path in the container. Defaults to
/mnt/session/uploads/<file_id>.minLength: 1, maxLength: 4096
-
Beta Managed Agents GitHub Repository Resource Params
-
BetaManagedAgentsGitHubRepositoryResourceParams objectMount a GitHub repository into the session's container.
-
type: "github_repository" -
url: stringGithub URL of the repository
minLength: 1, maxLength: 2048
-
authorization_token: optional stringGitHub authorization token used to clone the repository. Required for private repositories; optional for public ones.
minLength: 1, maxLength: 4096
-
checkout: optional BetaManagedAgentsBranchCheckout or BetaManagedAgentsCommitCheckout or nullBranch or commit to check out. Defaults to the repository's default branch.
-
BetaManagedAgentsBranchCheckout object-
type: "branch" -
name: stringBranch name to check out.
minLength: 1, maxLength: 255
-
-
BetaManagedAgentsCommitCheckout object-
type: "commit" -
sha: stringFull commit SHA to check out.
minLength: 7, maxLength: 64
-
-
-
mount_path: optional string or nullMount path in the container. Defaults to
/workspace/<repo-name>.minLength: 1, maxLength: 4096
-
Beta Managed Agents Memory Store Resource Param
-
BetaManagedAgentsMemoryStoreResourceParam objectParameters for attaching a memory store to an agent session.
-
type: "memory_store" -
memory_store_id: stringThe memory store ID (memstore_...). Must belong to the caller's organization and workspace.
-
access: optional "read_write" or "read_only" or nullAccess mode for an attached memory store.
-
"read_write" -
"read_only"
-
-
instructions: optional string or nullPer-attachment guidance for the agent on how to use this store. Rendered into the memory section of the system prompt. Max 4096 chars.
maxLength: 4096
-
Beta Managed Agents Multiagent
-
BetaManagedAgentsMultiagent objectResolved coordinator topology with a concrete agent roster.
-
type: "coordinator" -
agents: array of BetaManagedAgentsAgentReference or BetaManagedAgentsAdvisorAgents the coordinator may spawn as session threads, each resolved to a specific version.
-
BetaManagedAgentsAgentReference objectA resolved agent reference with a concrete version.
-
type: "agent" -
id: string -
version: numberformat: int32
-
-
BetaManagedAgentsAdvisor objectPlatform advisor roster entry: a model the session's primary thread may consult mid-turn.
-
type: "advisor" -
model: stringThe advisor model id.
-
-
-
Beta Managed Agents Multiagent Params
-
BetaManagedAgentsMultiagentParams objectA coordinator topology: the session's primary thread orchestrates work by spawning session threads, each running an agent drawn from the
agentsroster.-
type: "coordinator" -
agents: array of BetaManagedAgentsMultiagentRosterEntryParamsAgents 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 resolvingselfand string forms); at most oneself. Referenced agents must exist, must not be archived, and must not themselves havemultiagentset (depth limit 1).-
string -
BetaManagedAgentsAgentParams objectSpecification for an Agent. Provide a specific
versionor use the short-formagent="agent_id"for the most recent version-
type: "agent" -
id: stringThe
agentID.minLength: 1, maxLength: 128
-
version: optional numberThe specific
agentversion to use. Omit to use the latest version. Must be at least 1 if specified.format: int32
-
-
BetaManagedAgentsMultiagentSelfParams objectSentinel roster entry meaning "the agent that owns this configuration". Resolved server-side to a concrete agent reference.
type: "self"
-
BetaManagedAgentsAdvisorParams objectPlatform 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: "advisor" -
model: stringA Claude model id. The model must be permitted as an advisor for this agent's model — see the sessions/threads/advisor spec.
minLength: 1, maxLength: 256
-
-
-
Beta Managed Agents Multiagent Roster Entry Params
-
BetaManagedAgentsMultiagentRosterEntryParams = string or BetaManagedAgentsAgentParams or BetaManagedAgentsMultiagentSelfParams or BetaManagedAgentsAdvisorParamsAn entry in a multiagent roster: an agent ID string, a versioned agent reference, or
self.-
string -
BetaManagedAgentsAgentParams objectSpecification for an Agent. Provide a specific
versionor use the short-formagent="agent_id"for the most recent version-
type: "agent" -
id: stringThe
agentID.minLength: 1, maxLength: 128
-
version: optional numberThe specific
agentversion to use. Omit to use the latest version. Must be at least 1 if specified.format: int32
-
-
BetaManagedAgentsMultiagentSelfParams objectSentinel roster entry meaning "the agent that owns this configuration". Resolved server-side to a concrete agent reference.
type: "self"
-
BetaManagedAgentsAdvisorParams objectPlatform 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: "advisor" -
model: stringA Claude model id. The model must be permitted as an advisor for this agent's model — see the sessions/threads/advisor spec.
minLength: 1, maxLength: 256
-
-
Beta Managed Agents Outcome Evaluation Resource
-
BetaManagedAgentsOutcomeEvaluationResource objectEvaluation state for a single outcome defined via a
define_outcomeevent.-
type: "outcome_evaluation" -
completed_at: string or nullA timestamp in RFC 3339 format
format: date-time
-
description: stringWhat the agent should produce.
-
explanation: string or nullGrader's verdict text from the most recent evaluation. For
satisfied, explains why criteria are met; forneeds_revision(intermediate), what's missing; forfailed, why unrecoverable. -
iteration: number0-indexed revision cycle the outcome is currently on.
format: int32
-
outcome_id: stringServer-generated outc_ ID for this outcome.
-
result: stringCurrent evaluation state.
pendingbefore the agent begins work;runningwhile producing or revising;evaluatingwhile the grader scores;satisfied/max_iterations_reached/failed/interruptedare terminal.
-
Beta Managed Agents Server Tool Usage
-
BetaManagedAgentsServerToolUsage objectCumulative count of server-executed tool invocations, broken down by tool.
-
web_fetch_requests: optional numberNumber of server-executed web fetch requests.
format: int32
-
web_search_requests: optional numberNumber of server-executed web search requests.
format: int32
-
Beta Managed Agents Session
-
BetaManagedAgentsSession objectA Managed Agents
session.-
type: "session" -
id: string -
agent: BetaManagedAgentsSessionAgentResolved
agentdefinition for asession. Snapshot of theagentatsessioncreation time.-
type: "agent" -
id: string -
description: string or null -
mcp_servers: array of BetaManagedAgentsMCPServerURLDefinition-
type: "url" -
name: string -
url: string
-
-
model: BetaManagedAgentsModelConfigModel identifier and configuration.
-
id: BetaManagedAgentsModelThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1" or "claude-sonnet-5" or "claude-fable-5" or 11 moreThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1"Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows
-
"claude-sonnet-5"High-performance model for coding and agents
-
"claude-fable-5"Next generation of intelligence for the hardest knowledge work and coding problems
-
"claude-opus-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-8"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-7"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-6"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-6"Best combination of speed and intelligence
-
"claude-haiku-4-5"Fastest model with near-frontier intelligence
-
"claude-haiku-4-5-20251001"Fastest model with near-frontier intelligence
-
"claude-opus-4-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-5-20251101"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-5"High-performance model for agents and coding
-
"claude-sonnet-4-5-20250929"High-performance model for agents and coding
-
-
string
-
-
effort: optional BetaManagedAgentsEffortLow or BetaManagedAgentsEffortMedium or BetaManagedAgentsEffortHigh or 2 moreHow hard Claude works on each turn. Sets
output_config.efforton every Messages call the session makes.-
BetaManagedAgentsEffortLow objectLow effort. Favors latency over reasoning depth.
type: "low"
-
BetaManagedAgentsEffortMedium objectMedium effort. Balances latency and reasoning depth.
type: "medium"
-
BetaManagedAgentsEffortHigh objectHigh effort. Favors reasoning depth.
type: "high"
-
BetaManagedAgentsEffortXhigh objectExtra-high effort. Not all models accept this level.
type: "xhigh"
-
BetaManagedAgentsEffortMax objectMaximum effort. Favors reasoning depth over latency.
type: "max"
-
-
inference_geo: optional stringGeographic region for model inference. When unset, requests fall through to the workspace's default_inference_geo.
-
speed: optional "standard" or "fast"Inference speed mode.
fastprovides significantly faster output token generation at premium pricing. Not all models supportfast; invalid combinations are rejected at create time.-
"standard" -
"fast"
-
-
-
multiagent: BetaManagedAgentsSessionMultiagentCoordinator or nullResolved coordinator topology with full agent definitions for each roster member.
-
type: "coordinator" -
agents: array of BetaManagedAgentsSessionThreadAgent or BetaManagedAgentsAdvisorFull
agentdefinitions the coordinator may spawn as session threads.-
BetaManagedAgentsSessionThreadAgent objectResolved
agentdefinition for a singlesession_thread. Snapshot of the agent at thread creation time. The multiagent roster is not repeated here; read it fromSession.agent.-
type: "agent" -
id: string -
description: string or null -
mcp_servers: array of BetaManagedAgentsMCPServerURLDefinition-
type: "url" -
name: string -
url: string
-
-
model: BetaManagedAgentsModelConfigModel identifier and configuration.
-
name: string -
skills: array of BetaManagedAgentsAnthropicSkill or BetaManagedAgentsCustomSkill-
BetaManagedAgentsAnthropicSkill objectA resolved Anthropic-managed skill.
-
type: "anthropic" -
skill_id: string -
version: string
-
-
BetaManagedAgentsCustomSkill objectA resolved user-created custom skill.
-
type: "custom" -
skill_id: string -
version: string
-
-
-
system: string or null -
tools: array of BetaManagedAgentsAgentToolset20260401 or BetaManagedAgentsMCPToolset or BetaManagedAgentsCustomTool-
BetaManagedAgentsAgentToolset20260401 object-
type: "agent_toolset_20260401" -
configs: array of BetaManagedAgentsAgentToolConfig-
BetaManagedAgentsBashToolConfig objectConfiguration for the bash tool.
-
type: "bash" -
enabled: boolean -
name: "bash" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
type: "always_allow"
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
type: "always_ask"
-
BetaManagedAgentsAutoPolicy objectThe 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"
-
-
-
BetaManagedAgentsEditToolConfig objectConfiguration for the edit tool.
-
type: "edit" -
enabled: boolean -
name: "edit" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsReadToolConfig objectConfiguration for the read tool.
-
type: "read" -
enabled: boolean -
name: "read" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWriteToolConfig objectConfiguration for the write tool.
-
type: "write" -
enabled: boolean -
name: "write" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGlobToolConfig objectConfiguration for the glob tool.
-
type: "glob" -
enabled: boolean -
name: "glob" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGrepToolConfig objectConfiguration for the grep tool.
-
type: "grep" -
enabled: boolean -
name: "grep" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWebFetchToolConfig objectConfiguration for the web_fetch tool.
-
type: "web_fetch" -
enabled: boolean -
name: "web_fetch" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
allowed_domains: optional array of string -
blocked_domains: optional array of string -
max_content_tokens: optional number or nullformat: int32
-
-
BetaManagedAgentsWebSearchToolConfig objectConfiguration for the web_search tool.
-
type: "web_search" -
enabled: boolean -
name: "web_search" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
allowed_domains: optional array of string -
blocked_domains: optional array of string -
user_location: optional BetaManagedAgentsUserLocation or nullApproximate user location for search result localization.
-
type: "approximate"Location precision. Only "approximate" is supported.
-
city: optional string or nullCity name.
minLength: 1, maxLength: 255
-
country: optional string or nullTwo-letter ISO 3166-1 country code, uppercase.
-
region: optional string or nullRegion or state name.
minLength: 1, maxLength: 255
-
timezone: optional string or nullIANA timezone identifier, e.g. "America/Los_Angeles".
minLength: 1, maxLength: 255
-
-
-
-
default_config: BetaManagedAgentsAgentToolsetDefaultConfigResolved default configuration for agent tools.
-
enabled: boolean -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
-
BetaManagedAgentsMCPToolset object-
type: "mcp_toolset" -
configs: array of BetaManagedAgentsMCPToolConfig-
enabled: boolean -
name: string -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
default_config: BetaManagedAgentsMCPToolsetDefaultConfigResolved default configuration for all tools from an MCP server.
-
enabled: boolean -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
mcp_server_name: string
-
-
BetaManagedAgentsCustomTool objectA custom tool as returned in API responses.
-
type: "custom" -
description: string -
input_schema: BetaManagedAgentsCustomToolInputSchemaJSON Schema for custom tool input parameters.
-
type: "object" -
properties: optional map[unknown] or null -
required: optional array of string or null
-
-
name: string
-
-
-
version: numberformat: int32
-
-
BetaManagedAgentsAdvisor objectPlatform advisor roster entry: a model the session's primary thread may consult mid-turn.
-
type: "advisor" -
model: stringThe advisor model id.
-
-
-
-
name: string -
skills: array of BetaManagedAgentsAnthropicSkill or BetaManagedAgentsCustomSkill-
BetaManagedAgentsAnthropicSkill objectA resolved Anthropic-managed skill.
-
BetaManagedAgentsCustomSkill objectA resolved user-created custom skill.
-
-
system: string or null -
tools: array of BetaManagedAgentsAgentToolset20260401 or BetaManagedAgentsMCPToolset or BetaManagedAgentsCustomTool-
BetaManagedAgentsAgentToolset20260401 object -
BetaManagedAgentsMCPToolset object -
BetaManagedAgentsCustomTool objectA custom tool as returned in API responses.
-
-
version: numberformat: int32
-
-
archived_at: string or nullA timestamp in RFC 3339 format
format: date-time
-
budget: BetaManagedAgentsBudgetLimit or nullA hard spend ceiling. The session stops issuing new model requests once the tracked list cost reaches
max_list_cost.-
type: "limit" -
max_list_cost: BetaMonetaryAmountA monetary amount in a specific currency.
-
amount: stringAmount in minor units of the currency, as an integer decimal string with no leading zeros: "2500" is $25.00 and "50" is fifty cents. A string rather than a number so no float rounding is ever applied.
-
currency: BetaCurrencyUppercase ISO-4217 currency code.
USDis the only currency currently supported; the accepted set is closed and grows only when a new currency is priced.
-
-
-
created_at: stringA timestamp in RFC 3339 format
format: date-time
-
environment_id: string -
metadata: map[string] -
outcome_evaluations: array of BetaManagedAgentsOutcomeEvaluationResourcePer-outcome evaluation state. One entry per
define_outcomeevent sent to the session.-
type: "outcome_evaluation" -
completed_at: string or nullA timestamp in RFC 3339 format
format: date-time
-
description: stringWhat the agent should produce.
-
explanation: string or nullGrader's verdict text from the most recent evaluation. For
satisfied, explains why criteria are met; forneeds_revision(intermediate), what's missing; forfailed, why unrecoverable. -
iteration: number0-indexed revision cycle the outcome is currently on.
format: int32
-
outcome_id: stringServer-generated outc_ ID for this outcome.
-
result: stringCurrent evaluation state.
pendingbefore the agent begins work;runningwhile producing or revising;evaluatingwhile the grader scores;satisfied/max_iterations_reached/failed/interruptedare terminal.
-
-
resources: array of BetaManagedAgentsSessionResource-
BetaManagedAgentsGitHubRepositoryResource object-
type: "github_repository" -
id: string -
created_at: stringA timestamp in RFC 3339 format
format: date-time
-
mount_path: string -
updated_at: stringA timestamp in RFC 3339 format
format: date-time
-
url: string -
checkout: optional BetaManagedAgentsBranchCheckout or BetaManagedAgentsCommitCheckout or null-
BetaManagedAgentsBranchCheckout object-
type: "branch" -
name: stringBranch name to check out.
minLength: 1, maxLength: 255
-
-
BetaManagedAgentsCommitCheckout object-
type: "commit" -
sha: stringFull commit SHA to check out.
minLength: 7, maxLength: 64
-
-
-
-
BetaManagedAgentsFileResource object-
type: "file" -
id: string -
created_at: stringA timestamp in RFC 3339 format
format: date-time
-
file_id: string -
mount_path: string -
updated_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsMemoryStoreResource objectA memory store attached to an agent session.
-
type: "memory_store" -
memory_store_id: stringThe memory store ID (memstore_...). Must belong to the caller's organization and workspace.
-
access: optional "read_write" or "read_only" or nullAccess mode for an attached memory store.
-
"read_write" -
"read_only"
-
-
description: optional stringDescription of the memory store, snapshotted at attach time. Rendered into the agent's system prompt. Empty string when the store has no description.
-
instructions: optional string or nullPer-attachment guidance for the agent on how to use this store. Rendered into the memory section of the system prompt. Max 4096 chars.
maxLength: 4096
-
mount_path: optional string or nullFilesystem path where the store is mounted in the session container, e.g. /mnt/memory/user-preferences. Derived from the store's name. Output-only.
-
name: optional string or nullDisplay name of the memory store, snapshotted at attach time. Later edits to the store's name do not propagate to this resource.
-
-
-
stats: BetaManagedAgentsSessionStatsTiming statistics for a session.
-
active_seconds: optional numberCumulative time in seconds the session spent in
runningstatus. Excludes idle time.format: double
-
duration_seconds: optional numberElapsed time since session creation in seconds. For terminated sessions, frozen at the final update.
format: double
-
-
status: "rescheduling" or "running" or "idle" or "terminated"SessionStatus enum
-
"rescheduling" -
"running" -
"idle" -
"terminated"
-
-
title: string or null -
updated_at: stringA timestamp in RFC 3339 format
format: date-time
-
usage: BetaManagedAgentsSessionUsageCumulative token usage for a session across all turns.
-
active_seconds: optional numberCumulative time in seconds during which the session had at least one thread in running status. Overlapping activity from concurrent threads is counted once, unlike
stats.active_seconds, which sums each thread's own active time. This is the duration the session's runtime cost is priced on.format: double
-
cache_creation: optional BetaManagedAgentsCacheCreationUsagePrompt-cache creation token usage broken down by cache lifetime.
-
ephemeral_1h_input_tokens: optional numberTokens used to create 1-hour ephemeral cache entries.
format: int32
-
ephemeral_5m_input_tokens: optional numberTokens used to create 5-minute ephemeral cache entries.
format: int32
-
-
cache_read_input_tokens: optional numberTotal tokens read from prompt cache.
format: int32
-
input_tokens: optional numberTotal input tokens consumed across all turns.
format: int32
-
list_cost: optional BetaMonetaryAmount or nullA monetary amount in a specific currency.
-
output_tokens: optional numberTotal output tokens generated across all turns.
format: int32
-
server_tool_use: optional BetaManagedAgentsServerToolUsage or nullCumulative count of server-executed tool invocations, broken down by tool.
-
web_fetch_requests: optional numberNumber of server-executed web fetch requests.
format: int32
-
web_search_requests: optional numberNumber of server-executed web search requests.
format: int32
-
-
-
vault_ids: array of stringVault IDs attached to the session at creation. Empty when no vaults were supplied.
-
deployment_id: optional string or nullDeployment ID when the session was created from a deployment reference. Null otherwise.
-
Beta Managed Agents Session Agent
-
BetaManagedAgentsSessionAgent objectResolved
agentdefinition for asession. Snapshot of theagentatsessioncreation time.-
type: "agent" -
id: string -
description: string or null -
mcp_servers: array of BetaManagedAgentsMCPServerURLDefinition-
type: "url" -
name: string -
url: string
-
-
model: BetaManagedAgentsModelConfigModel identifier and configuration.
-
id: BetaManagedAgentsModelThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1" or "claude-sonnet-5" or "claude-fable-5" or 11 moreThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1"Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows
-
"claude-sonnet-5"High-performance model for coding and agents
-
"claude-fable-5"Next generation of intelligence for the hardest knowledge work and coding problems
-
"claude-opus-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-8"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-7"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-6"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-6"Best combination of speed and intelligence
-
"claude-haiku-4-5"Fastest model with near-frontier intelligence
-
"claude-haiku-4-5-20251001"Fastest model with near-frontier intelligence
-
"claude-opus-4-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-5-20251101"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-5"High-performance model for agents and coding
-
"claude-sonnet-4-5-20250929"High-performance model for agents and coding
-
-
string
-
-
effort: optional BetaManagedAgentsEffortLow or BetaManagedAgentsEffortMedium or BetaManagedAgentsEffortHigh or 2 moreHow hard Claude works on each turn. Sets
output_config.efforton every Messages call the session makes.-
BetaManagedAgentsEffortLow objectLow effort. Favors latency over reasoning depth.
type: "low"
-
BetaManagedAgentsEffortMedium objectMedium effort. Balances latency and reasoning depth.
type: "medium"
-
BetaManagedAgentsEffortHigh objectHigh effort. Favors reasoning depth.
type: "high"
-
BetaManagedAgentsEffortXhigh objectExtra-high effort. Not all models accept this level.
type: "xhigh"
-
BetaManagedAgentsEffortMax objectMaximum effort. Favors reasoning depth over latency.
type: "max"
-
-
inference_geo: optional stringGeographic region for model inference. When unset, requests fall through to the workspace's default_inference_geo.
-
speed: optional "standard" or "fast"Inference speed mode.
fastprovides significantly faster output token generation at premium pricing. Not all models supportfast; invalid combinations are rejected at create time.-
"standard" -
"fast"
-
-
-
multiagent: BetaManagedAgentsSessionMultiagentCoordinator or nullResolved coordinator topology with full agent definitions for each roster member.
-
type: "coordinator" -
agents: array of BetaManagedAgentsSessionThreadAgent or BetaManagedAgentsAdvisorFull
agentdefinitions the coordinator may spawn as session threads.-
BetaManagedAgentsSessionThreadAgent objectResolved
agentdefinition for a singlesession_thread. Snapshot of the agent at thread creation time. The multiagent roster is not repeated here; read it fromSession.agent.-
type: "agent" -
id: string -
description: string or null -
mcp_servers: array of BetaManagedAgentsMCPServerURLDefinition-
type: "url" -
name: string -
url: string
-
-
model: BetaManagedAgentsModelConfigModel identifier and configuration.
-
name: string -
skills: array of BetaManagedAgentsAnthropicSkill or BetaManagedAgentsCustomSkill-
BetaManagedAgentsAnthropicSkill objectA resolved Anthropic-managed skill.
-
type: "anthropic" -
skill_id: string -
version: string
-
-
BetaManagedAgentsCustomSkill objectA resolved user-created custom skill.
-
type: "custom" -
skill_id: string -
version: string
-
-
-
system: string or null -
tools: array of BetaManagedAgentsAgentToolset20260401 or BetaManagedAgentsMCPToolset or BetaManagedAgentsCustomTool-
BetaManagedAgentsAgentToolset20260401 object-
type: "agent_toolset_20260401" -
configs: array of BetaManagedAgentsAgentToolConfig-
BetaManagedAgentsBashToolConfig objectConfiguration for the bash tool.
-
type: "bash" -
enabled: boolean -
name: "bash" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
type: "always_allow"
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
type: "always_ask"
-
BetaManagedAgentsAutoPolicy objectThe 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"
-
-
-
BetaManagedAgentsEditToolConfig objectConfiguration for the edit tool.
-
type: "edit" -
enabled: boolean -
name: "edit" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsReadToolConfig objectConfiguration for the read tool.
-
type: "read" -
enabled: boolean -
name: "read" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWriteToolConfig objectConfiguration for the write tool.
-
type: "write" -
enabled: boolean -
name: "write" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGlobToolConfig objectConfiguration for the glob tool.
-
type: "glob" -
enabled: boolean -
name: "glob" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGrepToolConfig objectConfiguration for the grep tool.
-
type: "grep" -
enabled: boolean -
name: "grep" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWebFetchToolConfig objectConfiguration for the web_fetch tool.
-
type: "web_fetch" -
enabled: boolean -
name: "web_fetch" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
allowed_domains: optional array of string -
blocked_domains: optional array of string -
max_content_tokens: optional number or nullformat: int32
-
-
BetaManagedAgentsWebSearchToolConfig objectConfiguration for the web_search tool.
-
type: "web_search" -
enabled: boolean -
name: "web_search" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
allowed_domains: optional array of string -
blocked_domains: optional array of string -
user_location: optional BetaManagedAgentsUserLocation or nullApproximate user location for search result localization.
-
type: "approximate"Location precision. Only "approximate" is supported.
-
city: optional string or nullCity name.
minLength: 1, maxLength: 255
-
country: optional string or nullTwo-letter ISO 3166-1 country code, uppercase.
-
region: optional string or nullRegion or state name.
minLength: 1, maxLength: 255
-
timezone: optional string or nullIANA timezone identifier, e.g. "America/Los_Angeles".
minLength: 1, maxLength: 255
-
-
-
-
default_config: BetaManagedAgentsAgentToolsetDefaultConfigResolved default configuration for agent tools.
-
enabled: boolean -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
-
BetaManagedAgentsMCPToolset object-
type: "mcp_toolset" -
configs: array of BetaManagedAgentsMCPToolConfig-
enabled: boolean -
name: string -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
default_config: BetaManagedAgentsMCPToolsetDefaultConfigResolved default configuration for all tools from an MCP server.
-
enabled: boolean -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
mcp_server_name: string
-
-
BetaManagedAgentsCustomTool objectA custom tool as returned in API responses.
-
type: "custom" -
description: string -
input_schema: BetaManagedAgentsCustomToolInputSchemaJSON Schema for custom tool input parameters.
-
type: "object" -
properties: optional map[unknown] or null -
required: optional array of string or null
-
-
name: string
-
-
-
version: numberformat: int32
-
-
BetaManagedAgentsAdvisor objectPlatform advisor roster entry: a model the session's primary thread may consult mid-turn.
-
type: "advisor" -
model: stringThe advisor model id.
-
-
-
-
name: string -
skills: array of BetaManagedAgentsAnthropicSkill or BetaManagedAgentsCustomSkill-
BetaManagedAgentsAnthropicSkill objectA resolved Anthropic-managed skill.
-
BetaManagedAgentsCustomSkill objectA resolved user-created custom skill.
-
-
system: string or null -
tools: array of BetaManagedAgentsAgentToolset20260401 or BetaManagedAgentsMCPToolset or BetaManagedAgentsCustomTool-
BetaManagedAgentsAgentToolset20260401 object -
BetaManagedAgentsMCPToolset object -
BetaManagedAgentsCustomTool objectA custom tool as returned in API responses.
-
-
version: numberformat: int32
-
Beta Managed Agents Session Agent Update
-
BetaManagedAgentsSessionAgentUpdate objectMid-session agent configuration update. Only
toolsandmcp_serversare updatable. Full replacement: the provided array becomes the new value. To preserve existing entries, GET the session, modify the array, and POST it back.-
mcp_servers: optional array of BetaManagedAgentsURLMCPServerParamsReplacement MCP server list. Full replacement: the provided array becomes the new value. Send an empty array to clear; omit to preserve.
-
type: "url" -
name: stringUnique name for this server, referenced by mcp_toolset configurations. 1-255 characters.
minLength: 1, maxLength: 255
-
url: stringEndpoint URL for the MCP server.
maxLength: 2048
-
-
tools: optional array of BetaManagedAgentsAgentToolset20260401Params or BetaManagedAgentsMCPToolsetParams or BetaManagedAgentsCustomToolParamsReplacement tool list. Full replacement: the provided array becomes the new value. Send an empty array to clear; omit to preserve.
-
BetaManagedAgentsAgentToolset20260401Params objectConfiguration for built-in agent tools. Use this to enable or disable groups of tools available to the agent.
-
type: "agent_toolset_20260401" -
configs: optional array of BetaManagedAgentsAgentToolConfigParamsPer-tool configuration overrides.
-
BetaManagedAgentsBashToolConfigParams objectConfiguration override for the bash tool.
-
type: optional "bash" -
name: "bash"Must be "bash".
-
enabled: optional boolean or nullWhether this tool is enabled and available to Claude. Overrides the default_config setting.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
type: "always_allow"
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
type: "always_ask"
-
BetaManagedAgentsAutoPolicy objectThe 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"
-
-
-
BetaManagedAgentsEditToolConfigParams objectConfiguration override for the edit tool.
-
type: optional "edit" -
name: "edit"Must be "edit".
-
enabled: optional boolean or nullWhether this tool is enabled and available to Claude. Overrides the default_config setting.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsReadToolConfigParams objectConfiguration override for the read tool.
-
type: optional "read" -
name: "read"Must be "read".
-
enabled: optional boolean or nullWhether this tool is enabled and available to Claude. Overrides the default_config setting.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWriteToolConfigParams objectConfiguration override for the write tool.
-
type: optional "write" -
name: "write"Must be "write".
-
enabled: optional boolean or nullWhether this tool is enabled and available to Claude. Overrides the default_config setting.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGlobToolConfigParams objectConfiguration override for the glob tool.
-
type: optional "glob" -
name: "glob"Must be "glob".
-
enabled: optional boolean or nullWhether this tool is enabled and available to Claude. Overrides the default_config setting.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGrepToolConfigParams objectConfiguration override for the grep tool.
-
type: optional "grep" -
name: "grep"Must be "grep".
-
enabled: optional boolean or nullWhether this tool is enabled and available to Claude. Overrides the default_config setting.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWebFetchToolConfigParams objectConfiguration override for the web_fetch tool.
-
type: optional "web_fetch" -
name: "web_fetch"Must be "web_fetch".
-
allowed_domains: optional array of stringOnly 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.
-
blocked_domains: optional array of stringNever 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: optional boolean or nullWhether this tool is enabled and available to Claude. Overrides the default_config setting.
-
max_content_tokens: optional number or nullMaximum number of tokens of fetched text content to include in context per call. Does not apply to binary content such as PDFs.
format: int32
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWebSearchToolConfigParams objectConfiguration override for the web_search tool.
-
type: optional "web_search" -
name: "web_search"Must be "web_search".
-
allowed_domains: optional array of stringOnly 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.
-
blocked_domains: optional array of stringNever 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: optional boolean or nullWhether this tool is enabled and available to Claude. Overrides the default_config setting.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
user_location: optional BetaManagedAgentsUserLocation or nullApproximate user location for search result localization.
-
type: "approximate"Location precision. Only "approximate" is supported.
-
city: optional string or nullCity name.
minLength: 1, maxLength: 255
-
country: optional string or nullTwo-letter ISO 3166-1 country code, uppercase.
-
region: optional string or nullRegion or state name.
minLength: 1, maxLength: 255
-
timezone: optional string or nullIANA timezone identifier, e.g. "America/Los_Angeles".
minLength: 1, maxLength: 255
-
-
-
-
default_config: optional BetaManagedAgentsAgentToolsetDefaultConfigParams or nullDefault configuration for all tools in a toolset.
-
enabled: optional boolean or nullWhether tools are enabled and available to Claude by default. Defaults to true if not specified.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
-
BetaManagedAgentsMCPToolsetParams objectConfiguration for tools from an MCP server defined in
mcp_servers.-
type: "mcp_toolset" -
mcp_server_name: stringName of the MCP server. Must match a server name from the mcp_servers array. 1-255 characters.
minLength: 1, maxLength: 255
-
configs: optional array of BetaManagedAgentsMCPToolConfigParamsPer-tool configuration overrides.
-
name: stringName of the MCP tool to configure. 1-128 characters.
minLength: 1, maxLength: 128
-
enabled: optional boolean or nullWhether this tool is enabled. Overrides the
default_configsetting. -
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
default_config: optional BetaManagedAgentsMCPToolsetDefaultConfigParams or nullDefault configuration for all tools from an MCP server.
-
enabled: optional boolean or nullWhether tools are enabled by default. Defaults to true if not specified.
-
permission_policy: optional BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicy or nullPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
-
BetaManagedAgentsCustomToolParams objectA custom tool that is executed by the API client rather than the agent. When the agent calls this tool, an
agent.custom_tool_useevent is emitted and the session goes idle, waiting for the client to provide the result via auser.custom_tool_resultevent.-
type: "custom" -
description: stringDescription of what the tool does, shown to the agent to help it decide when to use the tool.
minLength: 1
-
input_schema: BetaManagedAgentsCustomToolInputSchemaJSON Schema for custom tool input parameters.
-
type: "object" -
properties: optional map[unknown] or null -
required: optional array of string or null
-
-
name: stringUnique name for the tool. 1-128 characters; letters, digits, underscores, and hyphens.
minLength: 1, maxLength: 128
-
-
-
Beta Managed Agents Session Multiagent Coordinator
-
BetaManagedAgentsSessionMultiagentCoordinator objectResolved coordinator topology with full agent definitions for each roster member.
-
type: "coordinator" -
agents: array of BetaManagedAgentsSessionThreadAgent or BetaManagedAgentsAdvisorFull
agentdefinitions the coordinator may spawn as session threads.-
BetaManagedAgentsSessionThreadAgent objectResolved
agentdefinition for a singlesession_thread. Snapshot of the agent at thread creation time. The multiagent roster is not repeated here; read it fromSession.agent.-
type: "agent" -
id: string -
description: string or null -
mcp_servers: array of BetaManagedAgentsMCPServerURLDefinition-
type: "url" -
name: string -
url: string
-
-
model: BetaManagedAgentsModelConfigModel identifier and configuration.
-
id: BetaManagedAgentsModelThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1" or "claude-sonnet-5" or "claude-fable-5" or 11 moreThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1"Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows
-
"claude-sonnet-5"High-performance model for coding and agents
-
"claude-fable-5"Next generation of intelligence for the hardest knowledge work and coding problems
-
"claude-opus-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-8"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-7"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-6"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-6"Best combination of speed and intelligence
-
"claude-haiku-4-5"Fastest model with near-frontier intelligence
-
"claude-haiku-4-5-20251001"Fastest model with near-frontier intelligence
-
"claude-opus-4-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-5-20251101"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-5"High-performance model for agents and coding
-
"claude-sonnet-4-5-20250929"High-performance model for agents and coding
-
-
string
-
-
effort: optional BetaManagedAgentsEffortLow or BetaManagedAgentsEffortMedium or BetaManagedAgentsEffortHigh or 2 moreHow hard Claude works on each turn. Sets
output_config.efforton every Messages call the session makes.-
BetaManagedAgentsEffortLow objectLow effort. Favors latency over reasoning depth.
type: "low"
-
BetaManagedAgentsEffortMedium objectMedium effort. Balances latency and reasoning depth.
type: "medium"
-
BetaManagedAgentsEffortHigh objectHigh effort. Favors reasoning depth.
type: "high"
-
BetaManagedAgentsEffortXhigh objectExtra-high effort. Not all models accept this level.
type: "xhigh"
-
BetaManagedAgentsEffortMax objectMaximum effort. Favors reasoning depth over latency.
type: "max"
-
-
inference_geo: optional stringGeographic region for model inference. When unset, requests fall through to the workspace's default_inference_geo.
-
speed: optional "standard" or "fast"Inference speed mode.
fastprovides significantly faster output token generation at premium pricing. Not all models supportfast; invalid combinations are rejected at create time.-
"standard" -
"fast"
-
-
-
name: string -
skills: array of BetaManagedAgentsAnthropicSkill or BetaManagedAgentsCustomSkill-
BetaManagedAgentsAnthropicSkill objectA resolved Anthropic-managed skill.
-
type: "anthropic" -
skill_id: string -
version: string
-
-
BetaManagedAgentsCustomSkill objectA resolved user-created custom skill.
-
type: "custom" -
skill_id: string -
version: string
-
-
-
system: string or null -
tools: array of BetaManagedAgentsAgentToolset20260401 or BetaManagedAgentsMCPToolset or BetaManagedAgentsCustomTool-
BetaManagedAgentsAgentToolset20260401 object-
type: "agent_toolset_20260401" -
configs: array of BetaManagedAgentsAgentToolConfig-
BetaManagedAgentsBashToolConfig objectConfiguration for the bash tool.
-
type: "bash" -
enabled: boolean -
name: "bash" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
type: "always_allow"
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
type: "always_ask"
-
BetaManagedAgentsAutoPolicy objectThe 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"
-
-
-
BetaManagedAgentsEditToolConfig objectConfiguration for the edit tool.
-
type: "edit" -
enabled: boolean -
name: "edit" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsReadToolConfig objectConfiguration for the read tool.
-
type: "read" -
enabled: boolean -
name: "read" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWriteToolConfig objectConfiguration for the write tool.
-
type: "write" -
enabled: boolean -
name: "write" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGlobToolConfig objectConfiguration for the glob tool.
-
type: "glob" -
enabled: boolean -
name: "glob" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGrepToolConfig objectConfiguration for the grep tool.
-
type: "grep" -
enabled: boolean -
name: "grep" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWebFetchToolConfig objectConfiguration for the web_fetch tool.
-
type: "web_fetch" -
enabled: boolean -
name: "web_fetch" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
allowed_domains: optional array of string -
blocked_domains: optional array of string -
max_content_tokens: optional number or nullformat: int32
-
-
BetaManagedAgentsWebSearchToolConfig objectConfiguration for the web_search tool.
-
type: "web_search" -
enabled: boolean -
name: "web_search" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
allowed_domains: optional array of string -
blocked_domains: optional array of string -
user_location: optional BetaManagedAgentsUserLocation or nullApproximate user location for search result localization.
-
type: "approximate"Location precision. Only "approximate" is supported.
-
city: optional string or nullCity name.
minLength: 1, maxLength: 255
-
country: optional string or nullTwo-letter ISO 3166-1 country code, uppercase.
-
region: optional string or nullRegion or state name.
minLength: 1, maxLength: 255
-
timezone: optional string or nullIANA timezone identifier, e.g. "America/Los_Angeles".
minLength: 1, maxLength: 255
-
-
-
-
default_config: BetaManagedAgentsAgentToolsetDefaultConfigResolved default configuration for agent tools.
-
enabled: boolean -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
-
BetaManagedAgentsMCPToolset object-
type: "mcp_toolset" -
configs: array of BetaManagedAgentsMCPToolConfig-
enabled: boolean -
name: string -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
default_config: BetaManagedAgentsMCPToolsetDefaultConfigResolved default configuration for all tools from an MCP server.
-
enabled: boolean -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
mcp_server_name: string
-
-
BetaManagedAgentsCustomTool objectA custom tool as returned in API responses.
-
type: "custom" -
description: string -
input_schema: BetaManagedAgentsCustomToolInputSchemaJSON Schema for custom tool input parameters.
-
type: "object" -
properties: optional map[unknown] or null -
required: optional array of string or null
-
-
name: string
-
-
-
version: numberformat: int32
-
-
BetaManagedAgentsAdvisor objectPlatform advisor roster entry: a model the session's primary thread may consult mid-turn.
-
type: "advisor" -
model: stringThe advisor model id.
-
-
-
Beta Managed Agents Session Stats
-
BetaManagedAgentsSessionStats objectTiming statistics for a session.
-
active_seconds: optional numberCumulative time in seconds the session spent in
runningstatus. Excludes idle time.format: double
-
duration_seconds: optional numberElapsed time since session creation in seconds. For terminated sessions, frozen at the final update.
format: double
-
Beta Managed Agents Session Updated Event
-
BetaManagedAgentsSessionUpdatedEvent objectEmitted when an UpdateSession request changed at least one field. Carries only the fields that changed; absent fields were not part of the update. The new configuration applies from the next turn.
-
type: "session.updated" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
agent: optional BetaManagedAgentsSessionAgent or nullResolved
agentdefinition for asession. Snapshot of theagentatsessioncreation time.-
type: "agent" -
id: string -
description: string or null -
mcp_servers: array of BetaManagedAgentsMCPServerURLDefinition-
type: "url" -
name: string -
url: string
-
-
model: BetaManagedAgentsModelConfigModel identifier and configuration.
-
id: BetaManagedAgentsModelThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1" or "claude-sonnet-5" or "claude-fable-5" or 11 moreThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1"Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows
-
"claude-sonnet-5"High-performance model for coding and agents
-
"claude-fable-5"Next generation of intelligence for the hardest knowledge work and coding problems
-
"claude-opus-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-8"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-7"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-6"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-6"Best combination of speed and intelligence
-
"claude-haiku-4-5"Fastest model with near-frontier intelligence
-
"claude-haiku-4-5-20251001"Fastest model with near-frontier intelligence
-
"claude-opus-4-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-5-20251101"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-5"High-performance model for agents and coding
-
"claude-sonnet-4-5-20250929"High-performance model for agents and coding
-
-
string
-
-
effort: optional BetaManagedAgentsEffortLow or BetaManagedAgentsEffortMedium or BetaManagedAgentsEffortHigh or 2 moreHow hard Claude works on each turn. Sets
output_config.efforton every Messages call the session makes.-
BetaManagedAgentsEffortLow objectLow effort. Favors latency over reasoning depth.
type: "low"
-
BetaManagedAgentsEffortMedium objectMedium effort. Balances latency and reasoning depth.
type: "medium"
-
BetaManagedAgentsEffortHigh objectHigh effort. Favors reasoning depth.
type: "high"
-
BetaManagedAgentsEffortXhigh objectExtra-high effort. Not all models accept this level.
type: "xhigh"
-
BetaManagedAgentsEffortMax objectMaximum effort. Favors reasoning depth over latency.
type: "max"
-
-
inference_geo: optional stringGeographic region for model inference. When unset, requests fall through to the workspace's default_inference_geo.
-
speed: optional "standard" or "fast"Inference speed mode.
fastprovides significantly faster output token generation at premium pricing. Not all models supportfast; invalid combinations are rejected at create time.-
"standard" -
"fast"
-
-
-
multiagent: BetaManagedAgentsSessionMultiagentCoordinator or nullResolved coordinator topology with full agent definitions for each roster member.
-
type: "coordinator" -
agents: array of BetaManagedAgentsSessionThreadAgent or BetaManagedAgentsAdvisorFull
agentdefinitions the coordinator may spawn as session threads.-
BetaManagedAgentsSessionThreadAgent objectResolved
agentdefinition for a singlesession_thread. Snapshot of the agent at thread creation time. The multiagent roster is not repeated here; read it fromSession.agent.-
type: "agent" -
id: string -
description: string or null -
mcp_servers: array of BetaManagedAgentsMCPServerURLDefinition-
type: "url" -
name: string -
url: string
-
-
model: BetaManagedAgentsModelConfigModel identifier and configuration.
-
name: string -
skills: array of BetaManagedAgentsAnthropicSkill or BetaManagedAgentsCustomSkill-
BetaManagedAgentsAnthropicSkill objectA resolved Anthropic-managed skill.
-
type: "anthropic" -
skill_id: string -
version: string
-
-
BetaManagedAgentsCustomSkill objectA resolved user-created custom skill.
-
type: "custom" -
skill_id: string -
version: string
-
-
-
system: string or null -
tools: array of BetaManagedAgentsAgentToolset20260401 or BetaManagedAgentsMCPToolset or BetaManagedAgentsCustomTool-
BetaManagedAgentsAgentToolset20260401 object-
type: "agent_toolset_20260401" -
configs: array of BetaManagedAgentsAgentToolConfig-
BetaManagedAgentsBashToolConfig objectConfiguration for the bash tool.
-
type: "bash" -
enabled: boolean -
name: "bash" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
type: "always_allow"
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
type: "always_ask"
-
BetaManagedAgentsAutoPolicy objectThe 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"
-
-
-
BetaManagedAgentsEditToolConfig objectConfiguration for the edit tool.
-
type: "edit" -
enabled: boolean -
name: "edit" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsReadToolConfig objectConfiguration for the read tool.
-
type: "read" -
enabled: boolean -
name: "read" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWriteToolConfig objectConfiguration for the write tool.
-
type: "write" -
enabled: boolean -
name: "write" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGlobToolConfig objectConfiguration for the glob tool.
-
type: "glob" -
enabled: boolean -
name: "glob" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGrepToolConfig objectConfiguration for the grep tool.
-
type: "grep" -
enabled: boolean -
name: "grep" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWebFetchToolConfig objectConfiguration for the web_fetch tool.
-
type: "web_fetch" -
enabled: boolean -
name: "web_fetch" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
allowed_domains: optional array of string -
blocked_domains: optional array of string -
max_content_tokens: optional number or nullformat: int32
-
-
BetaManagedAgentsWebSearchToolConfig objectConfiguration for the web_search tool.
-
type: "web_search" -
enabled: boolean -
name: "web_search" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
allowed_domains: optional array of string -
blocked_domains: optional array of string -
user_location: optional BetaManagedAgentsUserLocation or nullApproximate user location for search result localization.
-
type: "approximate"Location precision. Only "approximate" is supported.
-
city: optional string or nullCity name.
minLength: 1, maxLength: 255
-
country: optional string or nullTwo-letter ISO 3166-1 country code, uppercase.
-
region: optional string or nullRegion or state name.
minLength: 1, maxLength: 255
-
timezone: optional string or nullIANA timezone identifier, e.g. "America/Los_Angeles".
minLength: 1, maxLength: 255
-
-
-
-
default_config: BetaManagedAgentsAgentToolsetDefaultConfigResolved default configuration for agent tools.
-
enabled: boolean -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
-
BetaManagedAgentsMCPToolset object-
type: "mcp_toolset" -
configs: array of BetaManagedAgentsMCPToolConfig-
enabled: boolean -
name: string -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
default_config: BetaManagedAgentsMCPToolsetDefaultConfigResolved default configuration for all tools from an MCP server.
-
enabled: boolean -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
mcp_server_name: string
-
-
BetaManagedAgentsCustomTool objectA custom tool as returned in API responses.
-
type: "custom" -
description: string -
input_schema: BetaManagedAgentsCustomToolInputSchemaJSON Schema for custom tool input parameters.
-
type: "object" -
properties: optional map[unknown] or null -
required: optional array of string or null
-
-
name: string
-
-
-
version: numberformat: int32
-
-
BetaManagedAgentsAdvisor objectPlatform advisor roster entry: a model the session's primary thread may consult mid-turn.
-
type: "advisor" -
model: stringThe advisor model id.
-
-
-
-
name: string -
skills: array of BetaManagedAgentsAnthropicSkill or BetaManagedAgentsCustomSkill-
BetaManagedAgentsAnthropicSkill objectA resolved Anthropic-managed skill.
-
BetaManagedAgentsCustomSkill objectA resolved user-created custom skill.
-
-
system: string or null -
tools: array of BetaManagedAgentsAgentToolset20260401 or BetaManagedAgentsMCPToolset or BetaManagedAgentsCustomTool-
BetaManagedAgentsAgentToolset20260401 object -
BetaManagedAgentsMCPToolset object -
BetaManagedAgentsCustomTool objectA custom tool as returned in API responses.
-
-
version: numberformat: int32
-
-
budget: optional BetaManagedAgentsBudgetLimit or nullA hard spend ceiling. The session stops issuing new model requests once the tracked list cost reaches
max_list_cost.-
type: "limit" -
max_list_cost: BetaMonetaryAmountA monetary amount in a specific currency.
-
amount: stringAmount in minor units of the currency, as an integer decimal string with no leading zeros: "2500" is $25.00 and "50" is fifty cents. A string rather than a number so no float rounding is ever applied.
-
currency: BetaCurrencyUppercase ISO-4217 currency code.
USDis the only currency currently supported; the accepted set is closed and grows only when a new currency is priced.
-
-
-
metadata: optional map[string]The session's full metadata bag after the update. Present when the update set non-empty metadata; absent when metadata was unchanged or cleared to empty.
-
title: optional string or nullThe session's new title. Present only when the update changed it.
-
Beta Managed Agents Session Usage
-
BetaManagedAgentsSessionUsage objectCumulative token usage for a session across all turns.
-
active_seconds: optional numberCumulative time in seconds during which the session had at least one thread in running status. Overlapping activity from concurrent threads is counted once, unlike
stats.active_seconds, which sums each thread's own active time. This is the duration the session's runtime cost is priced on.format: double
-
cache_creation: optional BetaManagedAgentsCacheCreationUsagePrompt-cache creation token usage broken down by cache lifetime.
-
ephemeral_1h_input_tokens: optional numberTokens used to create 1-hour ephemeral cache entries.
format: int32
-
ephemeral_5m_input_tokens: optional numberTokens used to create 5-minute ephemeral cache entries.
format: int32
-
-
cache_read_input_tokens: optional numberTotal tokens read from prompt cache.
format: int32
-
input_tokens: optional numberTotal input tokens consumed across all turns.
format: int32
-
list_cost: optional BetaMonetaryAmount or nullA monetary amount in a specific currency.
-
amount: stringAmount in minor units of the currency, as an integer decimal string with no leading zeros: "2500" is $25.00 and "50" is fifty cents. A string rather than a number so no float rounding is ever applied.
-
currency: BetaCurrencyUppercase ISO-4217 currency code.
USDis the only currency currently supported; the accepted set is closed and grows only when a new currency is priced.
-
-
output_tokens: optional numberTotal output tokens generated across all turns.
format: int32
-
server_tool_use: optional BetaManagedAgentsServerToolUsage or nullCumulative count of server-executed tool invocations, broken down by tool.
-
web_fetch_requests: optional numberNumber of server-executed web fetch requests.
format: int32
-
web_search_requests: optional numberNumber of server-executed web search requests.
format: int32
-
-
Beta Managed Agents Session Usage Event
-
BetaManagedAgentsSessionUsageEvent objectPeriodic snapshot of the session's cumulative usage and tracked list cost.
-
type: "session.usage" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
usage: BetaManagedAgentsSessionUsageSnapshotPoint-in-time snapshot of a session's cumulative usage.
-
active_seconds: optional numberCumulative time in seconds during which the session had at least one thread in running status. Overlapping activity from concurrent threads is counted once. This is the duration the session's runtime cost is priced on.
format: double
-
cache_creation: optional BetaManagedAgentsCacheCreationUsagePrompt-cache creation token usage broken down by cache lifetime.
-
ephemeral_1h_input_tokens: optional numberTokens used to create 1-hour ephemeral cache entries.
format: int32
-
ephemeral_5m_input_tokens: optional numberTokens used to create 5-minute ephemeral cache entries.
format: int32
-
-
cache_read_input_tokens: optional numberTotal tokens read from prompt cache.
format: int32
-
input_tokens: optional numberTotal input tokens consumed across all turns.
format: int32
-
list_cost: optional BetaMonetaryAmountA monetary amount in a specific currency.
-
amount: stringAmount in minor units of the currency, as an integer decimal string with no leading zeros: "2500" is $25.00 and "50" is fifty cents. A string rather than a number so no float rounding is ever applied.
-
currency: BetaCurrencyUppercase ISO-4217 currency code.
USDis the only currency currently supported; the accepted set is closed and grows only when a new currency is priced.
-
-
output_tokens: optional numberTotal output tokens generated across all turns.
format: int32
-
server_tool_use: optional BetaManagedAgentsServerToolUsageCumulative count of server-executed tool invocations, broken down by tool.
-
web_fetch_requests: optional numberNumber of server-executed web fetch requests.
format: int32
-
web_search_requests: optional numberNumber of server-executed web search requests.
format: int32
-
-
-
budget: optional BetaManagedAgentsBudgetLimit or nullA hard spend ceiling. The session stops issuing new model requests once the tracked list cost reaches
max_list_cost.-
type: "limit" -
max_list_cost: BetaMonetaryAmountA monetary amount in a specific currency.
-
-
Beta Managed Agents Start Event
-
BetaManagedAgentsStartEvent objectOpens a preview of a buffered event. Carries the previewed event's type and id only. Followed by zero or more event_delta events with the same event id, normally concluded by the buffered event carrying that id. If the producing model request ends without that event (an error or interrupt mid-stream), its terminal span.model_request_end closes the preview. Only sent on stream connections that opt in via event_deltas; never appears in event history.
-
type: "event_start" -
event: BetaManagedAgentsStartEventPreviewThe previewed event's type and id. The event type determines which delta types the preview's event_delta events carry: agent.message events stream content_delta fragments; agent.thinking previews are start-only — no deltas follow, and the buffered agent.thinking with the same id concludes them.
-
BetaManagedAgentsAgentMessagePreview object-
type: "agent.message" -
id: stringThe id the buffered agent.message will carry if it is emitted. Matches the event_id on this preview's event_delta events.
-
-
BetaManagedAgentsAgentThinkingPreview object-
type: "agent.thinking" -
id: stringThe id the buffered agent.thinking will carry if it is emitted. Start-only — no event_delta events follow.
-
-
-
Beta Managed Agents Start Event Preview
-
BetaManagedAgentsStartEventPreview = BetaManagedAgentsAgentMessagePreview or BetaManagedAgentsAgentThinkingPreview-
BetaManagedAgentsAgentMessagePreview object-
type: "agent.message" -
id: stringThe id the buffered agent.message will carry if it is emitted. Matches the event_id on this preview's event_delta events.
-
-
BetaManagedAgentsAgentThinkingPreview object-
type: "agent.thinking" -
id: stringThe id the buffered agent.thinking will carry if it is emitted. Start-only — no event_delta events follow.
-
-
Beta Managed Agents System Content Block
-
BetaManagedAgentsSystemContentBlock objectRegular text content.
-
type: "text" -
text: stringThe text content.
minLength: 1
-
Beta Managed Agents System Message Event
-
BetaManagedAgentsSystemMessageEvent objectA mid-conversation system message event. Carries system-role content that is appended to the session as a
role: "system"turn.-
type: "system.message" -
id: stringUnique identifier for this event.
-
content: array of BetaManagedAgentsSystemContentBlockSystem content blocks. Text-only.
-
type: "text" -
text: stringThe text content.
minLength: 1
-
-
processed_at: optional string or nullA timestamp in RFC 3339 format
format: date-time
-
Beta Managed Agents User Tool Result Event
-
BetaManagedAgentsUserToolResultEvent objectEvent sent by the client providing the result of an agent-toolset tool execution. Only valid on
self_hostedenvironments, where sandbox-routed tools are executed by the client rather than the server.-
type: "user.tool_result" -
id: stringUnique identifier for this event.
-
tool_use_id: stringThe id of the
agent.tool_useevent this result corresponds to, which can be found in the lastsession.status_idleevent'sstop_reason.event_idsfield. -
content: optional array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsSearchResultBlockThe result content returned by the tool.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
type: "text" -
text: stringThe text content.
minLength: 1
-
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
type: "image" -
source: BetaManagedAgentsBase64ImageSource or BetaManagedAgentsURLImageSource or BetaManagedAgentsFileImageSourceUnion type for image source variants.
-
BetaManagedAgentsBase64ImageSource objectBase64-encoded image data.
-
type: "base64" -
data: stringBase64-encoded image data.
minLength: 1
-
media_type: stringMIME type of the image (e.g., "image/png", "image/jpeg", "image/gif", "image/webp").
minLength: 1
-
-
BetaManagedAgentsURLImageSource objectImage referenced by URL.
-
type: "url" -
url: stringURL of the image to fetch.
minLength: 1
-
-
BetaManagedAgentsFileImageSource objectImage referenced by file ID.
-
type: "file" -
file_id: stringID of a previously uploaded file.
minLength: 1
-
-
-
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
type: "document" -
source: BetaManagedAgentsBase64DocumentSource or BetaManagedAgentsPlainTextDocumentSource or BetaManagedAgentsURLDocumentSource or BetaManagedAgentsFileDocumentSourceUnion type for document source variants.
-
BetaManagedAgentsBase64DocumentSource objectBase64-encoded document data.
-
type: "base64" -
data: stringBase64-encoded document data.
minLength: 1
-
media_type: stringMIME type of the document (e.g., "application/pdf").
minLength: 1
-
-
BetaManagedAgentsPlainTextDocumentSource objectPlain text document content.
-
type: "text" -
data: stringThe plain text content.
minLength: 1
-
media_type: "text/plain"MIME type of the text content. Must be "text/plain".
-
-
BetaManagedAgentsURLDocumentSource objectDocument referenced by URL.
-
type: "url" -
url: stringURL of the document to fetch.
minLength: 1
-
-
BetaManagedAgentsFileDocumentSource objectDocument referenced by file ID.
-
type: "file" -
file_id: stringID of a previously uploaded file.
minLength: 1
-
-
-
context: optional string or nullAdditional context about the document for the model.
-
title: optional string or nullThe title of the document.
-
-
BetaManagedAgentsSearchResultBlock objectA block containing a web search result.
-
type: "search_result" -
citations: BetaManagedAgentsSearchResultCitationsCitation settings for a search result.
-
enabled: booleanWhether citations are enabled for this search result.
-
-
content: array of BetaManagedAgentsSearchResultContentArray of text content blocks from the search result.
-
type: "text" -
text: stringThe text content.
minLength: 1
-
-
source: stringThe URL source of the search result.
minLength: 1
-
title: stringThe title of the search result.
minLength: 1
-
-
-
is_error: optional boolean or nullWhether the tool execution resulted in an error.
-
processed_at: optional string or nullA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: optional string or nullSet by the server to the subagent thread this result was routed to. Omitted when it was routed to the primary thread.
-
Sessions › Events
List Events
GET /v1/sessions/{session_id}/events
List Events
Path parameters
session_id: string
Query parameters
-
"created_at[gt]": optional stringReturn events created after this time (exclusive). Compared against the event's
processed_atvalue.format: date-time
-
"created_at[gte]": optional stringReturn events created at or after this time (inclusive). Compared against the event's
processed_atvalue.format: date-time
-
"created_at[lt]": optional stringReturn events created before this time (exclusive). Compared against the event's
processed_atvalue.format: date-time
-
"created_at[lte]": optional stringReturn events created at or before this time (inclusive). Compared against the event's
processed_atvalue.format: date-time
-
limit: optional numberQuery parameter for limit
format: int32
-
order: optional "asc" or "desc"Sort direction for results, ordered by the event's
processed_at. Defaults toasc(chronological).-
"asc" -
"desc"
-
-
page: optional stringOpaque pagination cursor from a previous response's
next_page. -
types: optional array of stringFilter by event type. Values match the
typefield on returned events (for example,user.messageoragent.tool_use). Omit to return all event types.
Headers
-
"anthropic-beta": optional array of AnthropicBetaOptional header to specify the beta version(s) you want to use.
-
string -
"message-batches-2024-09-24" or "prompt-caching-2024-07-31" or "computer-use-2024-10-22" or 43 more-
"message-batches-2024-09-24" -
"prompt-caching-2024-07-31" -
"computer-use-2024-10-22" -
"computer-use-2025-01-24" -
"pdfs-2024-09-25" -
"token-counting-2024-11-01" -
"token-efficient-tools-2025-02-19" -
"output-128k-2025-02-19" -
"files-api-2025-04-14" -
"mcp-client-2025-04-04" -
"mcp-client-2025-11-20" -
"dev-full-thinking-2025-05-14" -
"interleaved-thinking-2025-05-14" -
"code-execution-2025-05-22" -
"extended-cache-ttl-2025-04-11" -
"context-1m-2025-08-07" -
"context-management-2025-06-27" -
"model-context-window-exceeded-2025-08-26" -
"skills-2025-10-02" -
"fast-mode-2026-02-01" -
"output-300k-2026-03-24" -
"user-profiles-2026-03-24" -
"user-profiles-2026-08-18" -
"user-profiles-2026-09-04" -
"advisor-tool-2026-03-01" -
"managed-agents-2026-04-01" -
"cache-diagnosis-2026-04-07" -
"dreaming-2026-04-21" -
"thinking-token-count-2026-05-13" -
"server-side-fallback-2026-06-01" -
"server-side-fallback-2026-07-01" -
"fallback-credit-2026-06-01" -
"fallback-credit-2026-07-01" -
"agent-memory-2026-07-22" -
"mid-conversation-tool-changes-2026-07-01" -
"compact-2026-01-12" -
"computer-use-2025-11-24" -
"mcp-tunnels-2026-06-22" -
"structured-outputs-2025-11-13" -
"task-budgets-2026-03-13" -
"thinking-display-updates-2026-08-18" -
"ce-user-management-2026-07-13" -
"mid-conversation-output-config-2026-07-01" -
"thinking-binding-controls-2026-08-01" -
"mid-conversation-system-clear-at-2026-08-21" -
"compact-2026-09-04"
-
-
-
"anthropic-workspace-id": optional string
Returns
-
data: optional array of BetaManagedAgentsSessionEventEvents for the session, ordered by
processed_at.-
BetaManagedAgentsUserMessageEvent objectA user message event in the session conversation.
-
type: "user.message" -
id: stringUnique identifier for this event.
-
content: array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsRedactedBlockArray of content blocks comprising the user message.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
type: "text" -
text: stringThe text content.
minLength: 1
-
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
type: "image" -
source: BetaManagedAgentsBase64ImageSource or BetaManagedAgentsURLImageSource or BetaManagedAgentsFileImageSourceUnion type for image source variants.
-
BetaManagedAgentsBase64ImageSource objectBase64-encoded image data.
-
type: "base64" -
data: stringBase64-encoded image data.
minLength: 1
-
media_type: stringMIME type of the image (e.g., "image/png", "image/jpeg", "image/gif", "image/webp").
minLength: 1
-
-
BetaManagedAgentsURLImageSource objectImage referenced by URL.
-
type: "url" -
url: stringURL of the image to fetch.
minLength: 1
-
-
BetaManagedAgentsFileImageSource objectImage referenced by file ID.
-
type: "file" -
file_id: stringID of a previously uploaded file.
minLength: 1
-
-
-
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
type: "document" -
source: BetaManagedAgentsBase64DocumentSource or BetaManagedAgentsPlainTextDocumentSource or BetaManagedAgentsURLDocumentSource or BetaManagedAgentsFileDocumentSourceUnion type for document source variants.
-
BetaManagedAgentsBase64DocumentSource objectBase64-encoded document data.
-
type: "base64" -
data: stringBase64-encoded document data.
minLength: 1
-
media_type: stringMIME type of the document (e.g., "application/pdf").
minLength: 1
-
-
BetaManagedAgentsPlainTextDocumentSource objectPlain text document content.
-
type: "text" -
data: stringThe plain text content.
minLength: 1
-
media_type: "text/plain"MIME type of the text content. Must be "text/plain".
-
-
BetaManagedAgentsURLDocumentSource objectDocument referenced by URL.
-
type: "url" -
url: stringURL of the document to fetch.
minLength: 1
-
-
BetaManagedAgentsFileDocumentSource objectDocument referenced by file ID.
-
type: "file" -
file_id: stringID of a previously uploaded file.
minLength: 1
-
-
-
context: optional string or nullAdditional context about the document for the model.
-
title: optional string or nullThe title of the document.
-
-
BetaManagedAgentsRedactedBlock objectPlaceholder for content withheld by Anthropic model policy.
type: "redacted"
-
-
processed_at: optional string or nullA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsUserInterruptEvent objectAn interrupt event that pauses agent execution and returns control to the user.
-
type: "user.interrupt" -
id: stringUnique identifier for this event.
-
processed_at: optional string or nullA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: optional string or nullIf absent, interrupts every non-archived thread in a multiagent session (or the primary alone in a single-agent session). If present, interrupts only the named thread.
-
-
BetaManagedAgentsUserToolConfirmationEvent objectA tool confirmation event that approves or denies a pending tool execution.
-
type: "user.tool_confirmation" -
id: stringUnique identifier for this event.
-
result: "allow" or "deny"UserToolConfirmationResult enum
-
"allow" -
"deny"
-
-
tool_use_id: stringThe id of the
agent.tool_useoragent.mcp_tool_useevent this result corresponds to, which can be found in the lastsession.status_idleevent'sstop_reason.event_idsfield. -
deny_message: optional string or nullOptional message providing context for a 'deny' decision. Only allowed when result is 'deny'.
maxLength: 10000
-
processed_at: optional string or nullA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: optional string or nullSet by the server to the subagent thread this confirmation was routed to. Omitted when it was routed to the primary thread.
-
-
BetaManagedAgentsUserCustomToolResultEvent objectEvent sent by the client providing the result of a custom tool execution.
-
type: "user.custom_tool_result" -
id: stringUnique identifier for this event.
-
custom_tool_use_id: stringThe id of the
agent.custom_tool_useevent this result corresponds to, which can be found in the lastsession.status_idleevent'sstop_reason.event_idsfield. -
content: optional array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsSearchResultBlockThe result content returned by the tool.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
BetaManagedAgentsSearchResultBlock objectA block containing a web search result.
-
type: "search_result" -
citations: BetaManagedAgentsSearchResultCitationsCitation settings for a search result.
-
enabled: booleanWhether citations are enabled for this search result.
-
-
content: array of BetaManagedAgentsSearchResultContentArray of text content blocks from the search result.
-
type: "text" -
text: stringThe text content.
minLength: 1
-
-
source: stringThe URL source of the search result.
minLength: 1
-
title: stringThe title of the search result.
minLength: 1
-
-
-
is_error: optional boolean or nullWhether the tool execution resulted in an error.
-
processed_at: optional string or nullA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: optional string or nullSet by the server to the subagent thread this result was routed to. Omitted when it was routed to the primary thread.
-
-
BetaManagedAgentsAgentCustomToolUseEvent objectEvent emitted when the agent calls a custom tool. The session goes idle until the client sends a
user.custom_tool_resultevent with the result.-
type: "agent.custom_tool_use" -
id: stringUnique identifier for this event.
-
input: map[unknown]Input parameters for the tool call.
-
name: stringName of the custom tool being called.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: optional string or nullWhen set, this event was cross-posted from a subagent's thread to surface its custom tool use on the primary thread's stream. Empty on the thread's own events. Informational only: the server routes the matching
user.custom_tool_resultbycustom_tool_use_id, so clients do not send it back.
-
-
BetaManagedAgentsAgentMessageEvent objectAn agent response event in the session conversation.
-
type: "agent.message" -
id: stringUnique identifier for this event.
-
content: array of BetaManagedAgentsTextBlock or BetaManagedAgentsRedactedBlockArray of text blocks comprising the agent response.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
BetaManagedAgentsRedactedBlock objectPlaceholder for content withheld by Anthropic model policy.
-
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsAgentThinkingEvent objectIndicates the agent is making forward progress via extended thinking. A progress signal, not a content carrier.
-
type: "agent.thinking" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsAgentMCPToolUseEvent objectEvent emitted when the agent invokes a tool provided by an MCP server.
-
type: "agent.mcp_tool_use" -
id: stringUnique identifier for this event.
-
input: map[unknown]Input parameters for the tool call.
-
mcp_server_name: stringName of the MCP server providing the tool.
-
name: stringName of the MCP tool being used.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
evaluated_permission: optional "allow" or "ask" or "deny"AgentEvaluatedPermission enum
-
"allow" -
"ask" -
"deny"
-
-
evaluation: optional BetaManagedAgentsAgentToolEvaluationNames the resolved permission_policy that produced evaluated_permission, and under auto carries the judgement. Open union: clients must tolerate unknown variants.
-
BetaManagedAgentsAgentToolEvaluationAlwaysAllow objectThe resolved permission_policy was always_allow; accompanies evaluated_permission "allow".
type: "always_allow"
-
BetaManagedAgentsAgentToolEvaluationAlwaysAsk objectThe resolved permission_policy was always_ask; accompanies evaluated_permission "ask".
type: "always_ask"
-
BetaManagedAgentsAgentToolEvaluationAuto objectThe resolved permission_policy was auto: the server judged this invocation individually.
-
type: "auto" -
evaluated_permission: BetaManagedAgentsAgentAutoEvaluatedPermissionThe server's per-invocation judgement under the auto permission policy. Its type always equals the event's top-level evaluated_permission. Open union: clients must tolerate unknown variants.
-
BetaManagedAgentsAgentAutoEvaluatedPermissionAllow objectThe server judged the invocation safe to execute without client approval.
type: "allow"
-
BetaManagedAgentsAgentAutoEvaluatedPermissionAsk objectThe server reached no judgement; the invocation is held for client approval.
-
type: "ask" -
reason_code: stringThe judgement's grounds in registry-bound terms, for client branching and audit rather than end-user display. Open registry; currently "indeterminate" (no judgement was reached). Clients must tolerate values outside this set.
maxLength: 64
-
-
BetaManagedAgentsAgentAutoEvaluatedPermissionDeny objectThe server judged the invocation high-risk; it does not execute and a synthetic error tool result is appended.
-
type: "deny" -
reason_code: stringThe judgement's grounds in registry-bound terms. Open registry; currently "high_risk" (judged high-risk; the call does not run). Clients must tolerate values outside this set.
maxLength: 64
-
-
-
-
-
session_thread_id: optional string or nullWhen set, this event was cross-posted from a subagent's thread to surface its permission request on the primary thread's stream. Empty on the thread's own events. Informational only: the server routes the matching
user.tool_confirmationbytool_use_id, so clients do not send it back.
-
-
BetaManagedAgentsAgentMCPToolResultEvent objectEvent representing the result of an MCP tool execution.
-
type: "agent.mcp_tool_result" -
id: stringUnique identifier for this event.
-
mcp_tool_use_id: stringThe id of the
agent.mcp_tool_useevent this result corresponds to. -
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
content: optional array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsSearchResultBlockThe result content returned by the tool.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
BetaManagedAgentsSearchResultBlock objectA block containing a web search result.
-
-
is_error: optional boolean or nullWhether the tool execution resulted in an error.
-
-
BetaManagedAgentsAgentToolUseEvent objectEvent emitted when the agent invokes a built-in agent tool.
-
type: "agent.tool_use" -
id: stringUnique identifier for this event.
-
input: map[unknown]Input parameters for the tool call.
-
name: stringName of the agent tool being used.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
evaluated_permission: optional "allow" or "ask" or "deny"AgentEvaluatedPermission enum
-
"allow" -
"ask" -
"deny"
-
-
evaluation: optional BetaManagedAgentsAgentToolEvaluationNames the resolved permission_policy that produced evaluated_permission, and under auto carries the judgement. Open union: clients must tolerate unknown variants.
-
session_thread_id: optional string or nullWhen set, this event was cross-posted from a subagent's thread to surface its permission request on the primary thread's stream. Empty on the thread's own events. Informational only: the server routes the matching
user.tool_confirmationoruser.tool_resultbytool_use_id, so clients do not send it back.
-
-
BetaManagedAgentsAgentToolResultEvent objectEvent representing the result of an agent tool execution.
-
type: "agent.tool_result" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
tool_use_id: stringThe id of the
agent.tool_useevent this result corresponds to. -
content: optional array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsSearchResultBlockThe result content returned by the tool.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
BetaManagedAgentsSearchResultBlock objectA block containing a web search result.
-
-
is_error: optional boolean or nullWhether the tool execution resulted in an error.
-
-
BetaManagedAgentsAgentThreadMessageReceivedEvent objectDelivery event written to the target thread's input stream when an agent-to-agent message arrives.
-
type: "agent.thread_message_received" -
id: stringUnique identifier for this event.
-
content: array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsRedactedBlockMessage content blocks.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
BetaManagedAgentsRedactedBlock objectPlaceholder for content withheld by Anthropic model policy.
-
-
from_session_thread_id: stringPublic
sthr_ID of the thread that sent the message. -
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
from_agent_name: optional string or nullName of the callable agent this message came from. Absent when received from the primary agent.
-
-
BetaManagedAgentsAgentThreadMessageSentEvent objectObservability event emitted to the sender's output stream when an agent-to-agent message is sent.
-
type: "agent.thread_message_sent" -
id: stringUnique identifier for this event.
-
content: array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsRedactedBlockMessage content blocks.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
BetaManagedAgentsRedactedBlock objectPlaceholder for content withheld by Anthropic model policy.
-
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
to_session_thread_id: stringPublic
sthr_ID of the thread the message was sent to. -
to_agent_name: optional string or nullName of the callable agent this message was sent to. Absent when sent to the primary agent.
-
-
BetaManagedAgentsAgentThreadContextCompactedEvent objectIndicates that context compaction (summarization) occurred during the session.
-
type: "agent.thread_context_compacted" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSessionErrorEvent objectAn error event indicating a problem occurred during session execution.
-
type: "session.error" -
id: stringUnique identifier for this event.
-
error: BetaManagedAgentsUnknownError or BetaManagedAgentsModelOverloadedError or BetaManagedAgentsModelRateLimitedError or 5 more-
BetaManagedAgentsUnknownError objectAn unknown or unexpected error occurred during session execution. A fallback variant; clients that don't recognize a new error code can match on
retry_statusandmessagealone.-
type: "unknown_error" -
message: stringHuman-readable error description.
-
retry_status: BetaManagedAgentsRetryStatusRetrying or BetaManagedAgentsRetryStatusExhausted or BetaManagedAgentsRetryStatusTerminalWhat the client should do next in response to this error.
-
BetaManagedAgentsRetryStatusRetrying objectThe server is retrying automatically. Client should wait; the same error type may fire again as retrying, then once as exhausted when the retry budget runs out.
type: "retrying"
-
BetaManagedAgentsRetryStatusExhausted objectThis turn is dead; queued inputs are flushed and the session returns to idle. Client may send a new prompt.
type: "exhausted"
-
BetaManagedAgentsRetryStatusTerminal objectThe session encountered a terminal error and will transition to
terminatedstate.type: "terminal"
-
-
-
BetaManagedAgentsModelOverloadedError objectThe model is currently overloaded. Emitted after automatic retries are exhausted.
-
type: "model_overloaded_error" -
message: stringHuman-readable error description.
-
retry_status: BetaManagedAgentsRetryStatusRetrying or BetaManagedAgentsRetryStatusExhausted or BetaManagedAgentsRetryStatusTerminalWhat the client should do next in response to this error.
-
BetaManagedAgentsRetryStatusRetrying objectThe server is retrying automatically. Client should wait; the same error type may fire again as retrying, then once as exhausted when the retry budget runs out.
-
BetaManagedAgentsRetryStatusExhausted objectThis turn is dead; queued inputs are flushed and the session returns to idle. Client may send a new prompt.
-
BetaManagedAgentsRetryStatusTerminal objectThe session encountered a terminal error and will transition to
terminatedstate.
-
-
-
BetaManagedAgentsModelRateLimitedError objectThe model request was rate-limited.
-
type: "model_rate_limited_error" -
message: stringHuman-readable error description.
-
retry_status: BetaManagedAgentsRetryStatusRetrying or BetaManagedAgentsRetryStatusExhausted or BetaManagedAgentsRetryStatusTerminalWhat the client should do next in response to this error.
-
BetaManagedAgentsRetryStatusRetrying objectThe server is retrying automatically. Client should wait; the same error type may fire again as retrying, then once as exhausted when the retry budget runs out.
-
BetaManagedAgentsRetryStatusExhausted objectThis turn is dead; queued inputs are flushed and the session returns to idle. Client may send a new prompt.
-
BetaManagedAgentsRetryStatusTerminal objectThe session encountered a terminal error and will transition to
terminatedstate.
-
-
-
BetaManagedAgentsModelRequestFailedError objectA model request failed for a reason other than overload or rate-limiting.
-
type: "model_request_failed_error" -
message: stringHuman-readable error description.
-
retry_status: BetaManagedAgentsRetryStatusRetrying or BetaManagedAgentsRetryStatusExhausted or BetaManagedAgentsRetryStatusTerminalWhat the client should do next in response to this error.
-
BetaManagedAgentsRetryStatusRetrying objectThe server is retrying automatically. Client should wait; the same error type may fire again as retrying, then once as exhausted when the retry budget runs out.
-
BetaManagedAgentsRetryStatusExhausted objectThis turn is dead; queued inputs are flushed and the session returns to idle. Client may send a new prompt.
-
BetaManagedAgentsRetryStatusTerminal objectThe session encountered a terminal error and will transition to
terminatedstate.
-
-
-
BetaManagedAgentsMCPConnectionFailedError objectFailed to connect to an MCP server.
-
type: "mcp_connection_failed_error" -
mcp_server_name: stringName of the MCP server that failed to connect.
-
message: stringHuman-readable error description.
-
retry_status: BetaManagedAgentsRetryStatusRetrying or BetaManagedAgentsRetryStatusExhausted or BetaManagedAgentsRetryStatusTerminalWhat the client should do next in response to this error.
-
BetaManagedAgentsRetryStatusRetrying objectThe server is retrying automatically. Client should wait; the same error type may fire again as retrying, then once as exhausted when the retry budget runs out.
-
BetaManagedAgentsRetryStatusExhausted objectThis turn is dead; queued inputs are flushed and the session returns to idle. Client may send a new prompt.
-
BetaManagedAgentsRetryStatusTerminal objectThe session encountered a terminal error and will transition to
terminatedstate.
-
-
-
BetaManagedAgentsMCPAuthenticationFailedError objectAuthentication to an MCP server failed.
-
type: "mcp_authentication_failed_error" -
mcp_server_name: stringName of the MCP server that failed authentication.
-
message: stringHuman-readable error description.
-
retry_status: BetaManagedAgentsRetryStatusRetrying or BetaManagedAgentsRetryStatusExhausted or BetaManagedAgentsRetryStatusTerminalWhat the client should do next in response to this error.
-
BetaManagedAgentsRetryStatusRetrying objectThe server is retrying automatically. Client should wait; the same error type may fire again as retrying, then once as exhausted when the retry budget runs out.
-
BetaManagedAgentsRetryStatusExhausted objectThis turn is dead; queued inputs are flushed and the session returns to idle. Client may send a new prompt.
-
BetaManagedAgentsRetryStatusTerminal objectThe session encountered a terminal error and will transition to
terminatedstate.
-
-
-
BetaManagedAgentsBillingError objectThe caller's organization or workspace cannot make model requests — out of credits or spend limit reached. Retrying with the same credentials will not succeed; the caller must resolve the billing state.
-
type: "billing_error" -
message: stringHuman-readable error description.
-
retry_status: BetaManagedAgentsRetryStatusRetrying or BetaManagedAgentsRetryStatusExhausted or BetaManagedAgentsRetryStatusTerminalWhat the client should do next in response to this error.
-
BetaManagedAgentsRetryStatusRetrying objectThe server is retrying automatically. Client should wait; the same error type may fire again as retrying, then once as exhausted when the retry budget runs out.
-
BetaManagedAgentsRetryStatusExhausted objectThis turn is dead; queued inputs are flushed and the session returns to idle. Client may send a new prompt.
-
BetaManagedAgentsRetryStatusTerminal objectThe session encountered a terminal error and will transition to
terminatedstate.
-
-
-
BetaManagedAgentsCredentialHostUnreachableError objectAn
environment_variablecredential'sauth.networking.allowed_hostsincludes a host the environment's network policy does not permit.-
type: "credential_host_unreachable_error" -
credential_id: stringID of the affected credential.
-
message: stringHuman-readable error description.
-
retry_status: BetaManagedAgentsRetryStatusRetrying or BetaManagedAgentsRetryStatusExhausted or BetaManagedAgentsRetryStatusTerminalWhat the client should do next in response to this error.
-
BetaManagedAgentsRetryStatusRetrying objectThe server is retrying automatically. Client should wait; the same error type may fire again as retrying, then once as exhausted when the retry budget runs out.
-
BetaManagedAgentsRetryStatusExhausted objectThis turn is dead; queued inputs are flushed and the session returns to idle. Client may send a new prompt.
-
BetaManagedAgentsRetryStatusTerminal objectThe session encountered a terminal error and will transition to
terminatedstate.
-
-
vault_id: stringID of the vault containing the affected credential.
-
-
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSessionStatusRescheduledEvent objectIndicates the session is recovering from an error state and is rescheduled for execution.
-
type: "session.status_rescheduled" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSessionStatusRunningEvent objectIndicates the session is actively running and the agent is working.
-
type: "session.status_running" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSessionStatusIdleEvent objectIndicates the agent has paused and is awaiting user input.
-
type: "session.status_idle" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
stop_reason: BetaManagedAgentsSessionEndTurn or BetaManagedAgentsSessionRequiresAction or BetaManagedAgentsSessionRetriesExhausted or BetaManagedAgentsSessionBudgetReached-
BetaManagedAgentsSessionEndTurn objectThe agent completed its turn naturally and is ready for the next user message.
type: "end_turn"
-
BetaManagedAgentsSessionRequiresAction objectThe agent is idle waiting on one or more blocking user-input events (tool confirmation, custom tool result, etc.). Resolving all of them transitions the session back to running.
-
type: "requires_action" -
event_ids: array of stringThe ids of events the agent is blocked on. Resolving fewer than all re-emits
session.status_idlewith the remainder.
-
-
BetaManagedAgentsSessionRetriesExhausted objectThe turn ended because repeated errors exhausted the retry budget or an error escalated to
retry_status: 'exhausted'.type: "retries_exhausted"
-
BetaManagedAgentsSessionBudgetReached objectThe agent stopped because the session's tracked list cost reached its budget, or because its usage includes a model with no list price (which the budget cannot measure). Raise the budget to continue — or, if raising is rejected because a model has no list price, remove the budget.
type: "budget_reached"
-
-
-
BetaManagedAgentsSessionStatusTerminatedEvent objectIndicates the session has terminated, either due to an error or completion.
-
type: "session.status_terminated" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSessionThreadCreatedEvent objectEmitted when a subagent is spawned as a new thread. Written to the parent thread's output stream so clients observing the session see child creation.
-
type: "session.thread_created" -
id: stringUnique identifier for this event.
-
agent_name: stringName of the callable agent the thread runs.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: stringPublic
sthr_ID of the newly created thread.
-
-
BetaManagedAgentsSpanOutcomeEvaluationStartEvent objectEmitted when an outcome evaluation cycle begins.
-
type: "span.outcome_evaluation_start" -
id: stringUnique identifier for this event.
-
iteration: number0-indexed revision cycle. 0 is the first evaluation; 1 is the re-evaluation after the first revision; etc.
format: int32
-
outcome_id: stringThe
outc_ID of the outcome being evaluated. -
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSpanOutcomeEvaluationEndEvent objectEmitted when an outcome evaluation cycle completes. Carries the verdict and aggregate token usage. A verdict of
needs_revisionmeans another evaluation cycle follows;satisfied,max_iterations_reached,failed, orinterruptedare terminal — no further evaluation cycles follow.-
type: "span.outcome_evaluation_end" -
id: stringUnique identifier for this event.
-
explanation: stringHuman-readable explanation of the verdict. For
needs_revision, describes which criteria failed and why. -
iteration: number0-indexed revision cycle, matching the corresponding
span.outcome_evaluation_start.format: int32
-
outcome_evaluation_start_id: stringThe id of the corresponding
span.outcome_evaluation_startevent. -
outcome_id: stringThe
outc_ID of the outcome being evaluated. -
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
result: stringEvaluation verdict. 'satisfied': criteria met, session goes idle. 'needs_revision': criteria not met, another revision cycle follows. 'max_iterations_reached': evaluation budget exhausted with criteria still unmet — one final acknowledgment turn follows before the session goes idle, but no further evaluation runs. 'failed': grader determined the rubric does not apply to the deliverables. 'interrupted': user sent an interrupt while evaluation was in progress.
-
usage: BetaManagedAgentsSpanModelUsageToken usage for a single model request.
-
cache_creation_input_tokens: numberTokens used to create prompt cache in this request.
format: int32
-
cache_read_input_tokens: numberTokens read from prompt cache in this request.
format: int32
-
input_tokens: numberInput tokens consumed by this request.
format: int32
-
output_tokens: numberOutput tokens generated by this request.
format: int32
-
speed: optional "standard" or "fast" or nullInference speed mode.
fastprovides significantly faster output token generation at premium pricing. Not all models supportfast; invalid combinations are rejected at create time.-
"standard" -
"fast"
-
-
-
-
BetaManagedAgentsSpanModelRequestStartEvent objectEmitted when a model request is initiated by the agent.
-
type: "span.model_request_start" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSpanModelRequestEndEvent objectEmitted when a model request completes.
-
type: "span.model_request_end" -
id: stringUnique identifier for this event.
-
is_error: boolean or nullWhether the model request resulted in an error.
-
model_request_start_id: stringThe id of the corresponding
span.model_request_startevent. -
model_usage: BetaManagedAgentsSpanModelUsageToken usage for a single model request.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSpanOutcomeEvaluationOngoingEvent objectPeriodic heartbeat emitted while an outcome evaluation cycle is in progress. Distinguishes 'evaluation is actively running' from 'evaluation is stuck' between the corresponding
span.outcome_evaluation_startandspan.outcome_evaluation_endevents.-
type: "span.outcome_evaluation_ongoing" -
id: stringUnique identifier for this event.
-
iteration: number0-indexed revision cycle, matching the corresponding
span.outcome_evaluation_start.format: int32
-
outcome_id: stringThe
outc_ID of the outcome being evaluated. -
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsUserDefineOutcomeEvent objectEcho of a
user.define_outcomeinput event. Carries the server-generatedoutcome_idthat subsequentspan.outcome_evaluation_*events reference.-
type: "user.define_outcome" -
id: stringUnique identifier for this event.
-
description: stringWhat the agent should produce. Copied from the input event.
-
max_iterations: number or nullEvaluate-then-revise cycles before giving up. Default 3, max 20.
format: int32
-
outcome_id: stringServer-generated
outc_ID for this outcome. Referenced byspan.outcome_evaluation_*events and the session'soutcome_evaluationslist. -
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
rubric: BetaManagedAgentsFileRubric or BetaManagedAgentsTextRubricRubric for grading the quality of an outcome.
-
BetaManagedAgentsFileRubric objectRubric referenced by a file uploaded via the Files API.
-
type: "file" -
file_id: stringID of the rubric file.
-
-
BetaManagedAgentsTextRubric objectRubric content provided inline as text.
-
type: "text" -
content: stringRubric content. Plain text or markdown — the grader treats it as freeform text.
-
-
-
-
BetaManagedAgentsSessionDeletedEvent objectEmitted when a session has been deleted. Terminates any active event stream — no further events will be emitted for this session.
-
type: "session.deleted" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSessionThreadStatusRunningEvent objectA session thread has begun executing. Emitted on the thread's own stream and cross-posted to the primary stream for child threads.
-
type: "session.thread_status_running" -
id: stringUnique identifier for this event.
-
agent_name: stringName of the agent the thread runs.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: stringPublic sthr_ ID of the thread that started running.
-
-
BetaManagedAgentsSessionThreadStatusIdleEvent objectA session thread has yielded and is awaiting input. Emitted on the thread's own stream and cross-posted to the primary stream for child threads.
-
type: "session.thread_status_idle" -
id: stringUnique identifier for this event.
-
agent_name: stringName of the agent the thread runs.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: stringPublic sthr_ ID of the thread that went idle.
-
stop_reason: BetaManagedAgentsSessionEndTurn or BetaManagedAgentsSessionRequiresAction or BetaManagedAgentsSessionRetriesExhausted or BetaManagedAgentsSessionBudgetReached-
BetaManagedAgentsSessionEndTurn objectThe agent completed its turn naturally and is ready for the next user message.
-
BetaManagedAgentsSessionRequiresAction objectThe agent is idle waiting on one or more blocking user-input events (tool confirmation, custom tool result, etc.). Resolving all of them transitions the session back to running.
-
BetaManagedAgentsSessionRetriesExhausted objectThe turn ended because repeated errors exhausted the retry budget or an error escalated to
retry_status: 'exhausted'. -
BetaManagedAgentsSessionBudgetReached objectThe agent stopped because the session's tracked list cost reached its budget, or because its usage includes a model with no list price (which the budget cannot measure). Raise the budget to continue — or, if raising is rejected because a model has no list price, remove the budget.
-
-
-
BetaManagedAgentsSessionThreadStatusTerminatedEvent objectA session thread has terminated and will accept no further input. Emitted on the thread's own stream and cross-posted to the primary stream for child threads.
-
type: "session.thread_status_terminated" -
id: stringUnique identifier for this event.
-
agent_name: stringName of the agent the thread runs.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: stringPublic sthr_ ID of the thread that terminated.
-
-
BetaManagedAgentsUserToolResultEvent objectEvent sent by the client providing the result of an agent-toolset tool execution. Only valid on
self_hostedenvironments, where sandbox-routed tools are executed by the client rather than the server.-
type: "user.tool_result" -
id: stringUnique identifier for this event.
-
tool_use_id: stringThe id of the
agent.tool_useevent this result corresponds to, which can be found in the lastsession.status_idleevent'sstop_reason.event_idsfield. -
content: optional array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsSearchResultBlockThe result content returned by the tool.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
BetaManagedAgentsSearchResultBlock objectA block containing a web search result.
-
-
is_error: optional boolean or nullWhether the tool execution resulted in an error.
-
processed_at: optional string or nullA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: optional string or nullSet by the server to the subagent thread this result was routed to. Omitted when it was routed to the primary thread.
-
-
BetaManagedAgentsSessionThreadStatusRescheduledEvent objectA session thread hit a transient error and is retrying automatically. Emitted on the thread's own stream and cross-posted to the primary stream for child threads.
-
type: "session.thread_status_rescheduled" -
id: stringUnique identifier for this event.
-
agent_name: stringName of the agent the thread runs.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: stringPublic sthr_ ID of the thread that is retrying.
-
-
BetaManagedAgentsSessionUpdatedEvent objectEmitted when an UpdateSession request changed at least one field. Carries only the fields that changed; absent fields were not part of the update. The new configuration applies from the next turn.
-
type: "session.updated" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
agent: optional BetaManagedAgentsSessionAgent or nullResolved
agentdefinition for asession. Snapshot of theagentatsessioncreation time.-
type: "agent" -
id: string -
description: string or null -
mcp_servers: array of BetaManagedAgentsMCPServerURLDefinition-
type: "url" -
name: string -
url: string
-
-
model: BetaManagedAgentsModelConfigModel identifier and configuration.
-
id: BetaManagedAgentsModelThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1" or "claude-sonnet-5" or "claude-fable-5" or 11 moreThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1"Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows
-
"claude-sonnet-5"High-performance model for coding and agents
-
"claude-fable-5"Next generation of intelligence for the hardest knowledge work and coding problems
-
"claude-opus-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-8"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-7"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-6"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-6"Best combination of speed and intelligence
-
"claude-haiku-4-5"Fastest model with near-frontier intelligence
-
"claude-haiku-4-5-20251001"Fastest model with near-frontier intelligence
-
"claude-opus-4-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-5-20251101"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-5"High-performance model for agents and coding
-
"claude-sonnet-4-5-20250929"High-performance model for agents and coding
-
-
string
-
-
effort: optional BetaManagedAgentsEffortLow or BetaManagedAgentsEffortMedium or BetaManagedAgentsEffortHigh or 2 moreHow hard Claude works on each turn. Sets
output_config.efforton every Messages call the session makes.-
BetaManagedAgentsEffortLow objectLow effort. Favors latency over reasoning depth.
type: "low"
-
BetaManagedAgentsEffortMedium objectMedium effort. Balances latency and reasoning depth.
type: "medium"
-
BetaManagedAgentsEffortHigh objectHigh effort. Favors reasoning depth.
type: "high"
-
BetaManagedAgentsEffortXhigh objectExtra-high effort. Not all models accept this level.
type: "xhigh"
-
BetaManagedAgentsEffortMax objectMaximum effort. Favors reasoning depth over latency.
type: "max"
-
-
inference_geo: optional stringGeographic region for model inference. When unset, requests fall through to the workspace's default_inference_geo.
-
speed: optional "standard" or "fast"Inference speed mode.
fastprovides significantly faster output token generation at premium pricing. Not all models supportfast; invalid combinations are rejected at create time.-
"standard" -
"fast"
-
-
-
multiagent: BetaManagedAgentsSessionMultiagentCoordinator or nullResolved coordinator topology with full agent definitions for each roster member.
-
type: "coordinator" -
agents: array of BetaManagedAgentsSessionThreadAgent or BetaManagedAgentsAdvisorFull
agentdefinitions the coordinator may spawn as session threads.-
BetaManagedAgentsSessionThreadAgent objectResolved
agentdefinition for a singlesession_thread. Snapshot of the agent at thread creation time. The multiagent roster is not repeated here; read it fromSession.agent.-
type: "agent" -
id: string -
description: string or null -
mcp_servers: array of BetaManagedAgentsMCPServerURLDefinition-
type: "url" -
name: string -
url: string
-
-
model: BetaManagedAgentsModelConfigModel identifier and configuration.
-
name: string -
skills: array of BetaManagedAgentsAnthropicSkill or BetaManagedAgentsCustomSkill-
BetaManagedAgentsAnthropicSkill objectA resolved Anthropic-managed skill.
-
type: "anthropic" -
skill_id: string -
version: string
-
-
BetaManagedAgentsCustomSkill objectA resolved user-created custom skill.
-
type: "custom" -
skill_id: string -
version: string
-
-
-
system: string or null -
tools: array of BetaManagedAgentsAgentToolset20260401 or BetaManagedAgentsMCPToolset or BetaManagedAgentsCustomTool-
BetaManagedAgentsAgentToolset20260401 object-
type: "agent_toolset_20260401" -
configs: array of BetaManagedAgentsAgentToolConfig-
BetaManagedAgentsBashToolConfig objectConfiguration for the bash tool.
-
type: "bash" -
enabled: boolean -
name: "bash" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
type: "always_allow"
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
type: "always_ask"
-
BetaManagedAgentsAutoPolicy objectThe 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"
-
-
-
BetaManagedAgentsEditToolConfig objectConfiguration for the edit tool.
-
type: "edit" -
enabled: boolean -
name: "edit" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsReadToolConfig objectConfiguration for the read tool.
-
type: "read" -
enabled: boolean -
name: "read" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWriteToolConfig objectConfiguration for the write tool.
-
type: "write" -
enabled: boolean -
name: "write" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGlobToolConfig objectConfiguration for the glob tool.
-
type: "glob" -
enabled: boolean -
name: "glob" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGrepToolConfig objectConfiguration for the grep tool.
-
type: "grep" -
enabled: boolean -
name: "grep" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWebFetchToolConfig objectConfiguration for the web_fetch tool.
-
type: "web_fetch" -
enabled: boolean -
name: "web_fetch" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
allowed_domains: optional array of string -
blocked_domains: optional array of string -
max_content_tokens: optional number or nullformat: int32
-
-
BetaManagedAgentsWebSearchToolConfig objectConfiguration for the web_search tool.
-
type: "web_search" -
enabled: boolean -
name: "web_search" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
allowed_domains: optional array of string -
blocked_domains: optional array of string -
user_location: optional BetaManagedAgentsUserLocation or nullApproximate user location for search result localization.
-
type: "approximate"Location precision. Only "approximate" is supported.
-
city: optional string or nullCity name.
minLength: 1, maxLength: 255
-
country: optional string or nullTwo-letter ISO 3166-1 country code, uppercase.
-
region: optional string or nullRegion or state name.
minLength: 1, maxLength: 255
-
timezone: optional string or nullIANA timezone identifier, e.g. "America/Los_Angeles".
minLength: 1, maxLength: 255
-
-
-
-
default_config: BetaManagedAgentsAgentToolsetDefaultConfigResolved default configuration for agent tools.
-
enabled: boolean -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
-
BetaManagedAgentsMCPToolset object-
type: "mcp_toolset" -
configs: array of BetaManagedAgentsMCPToolConfig-
enabled: boolean -
name: string -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
default_config: BetaManagedAgentsMCPToolsetDefaultConfigResolved default configuration for all tools from an MCP server.
-
enabled: boolean -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
mcp_server_name: string
-
-
BetaManagedAgentsCustomTool objectA custom tool as returned in API responses.
-
type: "custom" -
description: string -
input_schema: BetaManagedAgentsCustomToolInputSchemaJSON Schema for custom tool input parameters.
-
type: "object" -
properties: optional map[unknown] or null -
required: optional array of string or null
-
-
name: string
-
-
-
version: numberformat: int32
-
-
BetaManagedAgentsAdvisor objectPlatform advisor roster entry: a model the session's primary thread may consult mid-turn.
-
type: "advisor" -
model: stringThe advisor model id.
-
-
-
-
name: string -
skills: array of BetaManagedAgentsAnthropicSkill or BetaManagedAgentsCustomSkill-
BetaManagedAgentsAnthropicSkill objectA resolved Anthropic-managed skill.
-
BetaManagedAgentsCustomSkill objectA resolved user-created custom skill.
-
-
system: string or null -
tools: array of BetaManagedAgentsAgentToolset20260401 or BetaManagedAgentsMCPToolset or BetaManagedAgentsCustomTool-
BetaManagedAgentsAgentToolset20260401 object -
BetaManagedAgentsMCPToolset object -
BetaManagedAgentsCustomTool objectA custom tool as returned in API responses.
-
-
version: numberformat: int32
-
-
budget: optional BetaManagedAgentsBudgetLimit or nullA hard spend ceiling. The session stops issuing new model requests once the tracked list cost reaches
max_list_cost.-
type: "limit" -
max_list_cost: BetaMonetaryAmountA monetary amount in a specific currency.
-
amount: stringAmount in minor units of the currency, as an integer decimal string with no leading zeros: "2500" is $25.00 and "50" is fifty cents. A string rather than a number so no float rounding is ever applied.
-
currency: BetaCurrencyUppercase ISO-4217 currency code.
USDis the only currency currently supported; the accepted set is closed and grows only when a new currency is priced.
-
-
-
metadata: optional map[string]The session's full metadata bag after the update. Present when the update set non-empty metadata; absent when metadata was unchanged or cleared to empty.
-
title: optional string or nullThe session's new title. Present only when the update changed it.
-
-
BetaManagedAgentsSystemMessageEvent objectA mid-conversation system message event. Carries system-role content that is appended to the session as a
role: "system"turn.-
type: "system.message" -
id: stringUnique identifier for this event.
-
content: array of BetaManagedAgentsSystemContentBlockSystem content blocks. Text-only.
-
type: "text" -
text: stringThe text content.
minLength: 1
-
-
processed_at: optional string or nullA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSessionUsageEvent objectPeriodic snapshot of the session's cumulative usage and tracked list cost.
-
type: "session.usage" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
usage: BetaManagedAgentsSessionUsageSnapshotPoint-in-time snapshot of a session's cumulative usage.
-
active_seconds: optional numberCumulative time in seconds during which the session had at least one thread in running status. Overlapping activity from concurrent threads is counted once. This is the duration the session's runtime cost is priced on.
format: double
-
cache_creation: optional BetaManagedAgentsCacheCreationUsagePrompt-cache creation token usage broken down by cache lifetime.
-
ephemeral_1h_input_tokens: optional numberTokens used to create 1-hour ephemeral cache entries.
format: int32
-
ephemeral_5m_input_tokens: optional numberTokens used to create 5-minute ephemeral cache entries.
format: int32
-
-
cache_read_input_tokens: optional numberTotal tokens read from prompt cache.
format: int32
-
input_tokens: optional numberTotal input tokens consumed across all turns.
format: int32
-
list_cost: optional BetaMonetaryAmountA monetary amount in a specific currency.
-
output_tokens: optional numberTotal output tokens generated across all turns.
format: int32
-
server_tool_use: optional BetaManagedAgentsServerToolUsageCumulative count of server-executed tool invocations, broken down by tool.
-
web_fetch_requests: optional numberNumber of server-executed web fetch requests.
format: int32
-
web_search_requests: optional numberNumber of server-executed web search requests.
format: int32
-
-
-
budget: optional BetaManagedAgentsBudgetLimit or nullA hard spend ceiling. The session stops issuing new model requests once the tracked list cost reaches
max_list_cost.
-
-
-
next_page: optional string or nullOpaque cursor for the next page. Null when no more results.
Example
curl https://api.anthropic.com/v1/sessions/$SESSION_ID/events \
-H 'anthropic-version: 2023-06-01' \
-H 'anthropic-beta: managed-agents-2026-04-01' \
-H "X-Api-Key: $ANTHROPIC_API_KEY"Response (200)
{
"data": [
{
"id": "sevt_011CZkZGOp0iBcp4kaQSihUmy",
"content": [
{
"text": "Where is my order #1234?",
"type": "text"
}
],
"type": "user.message",
"processed_at": "2026-03-15T10:00:00Z"
},
{
"id": "sevt_011CZkZHPq1jCdq5lbRTjiVnz",
"content": [
{
"text": "Let me look up order #1234 for you.",
"type": "text"
}
],
"processed_at": "2026-03-15T10:00:00Z",
"type": "agent.message"
}
],
"next_page": "page_MjAyNS0wNS0xNFQwMDowMDowMFo="
}Send Events
POST /v1/sessions/{session_id}/events
Send Events
Path parameters
session_id: string
Headers
-
"anthropic-beta": optional array of AnthropicBetaOptional header to specify the beta version(s) you want to use.
-
string -
"message-batches-2024-09-24" or "prompt-caching-2024-07-31" or "computer-use-2024-10-22" or 43 more-
"message-batches-2024-09-24" -
"prompt-caching-2024-07-31" -
"computer-use-2024-10-22" -
"computer-use-2025-01-24" -
"pdfs-2024-09-25" -
"token-counting-2024-11-01" -
"token-efficient-tools-2025-02-19" -
"output-128k-2025-02-19" -
"files-api-2025-04-14" -
"mcp-client-2025-04-04" -
"mcp-client-2025-11-20" -
"dev-full-thinking-2025-05-14" -
"interleaved-thinking-2025-05-14" -
"code-execution-2025-05-22" -
"extended-cache-ttl-2025-04-11" -
"context-1m-2025-08-07" -
"context-management-2025-06-27" -
"model-context-window-exceeded-2025-08-26" -
"skills-2025-10-02" -
"fast-mode-2026-02-01" -
"output-300k-2026-03-24" -
"user-profiles-2026-03-24" -
"user-profiles-2026-08-18" -
"user-profiles-2026-09-04" -
"advisor-tool-2026-03-01" -
"managed-agents-2026-04-01" -
"cache-diagnosis-2026-04-07" -
"dreaming-2026-04-21" -
"thinking-token-count-2026-05-13" -
"server-side-fallback-2026-06-01" -
"server-side-fallback-2026-07-01" -
"fallback-credit-2026-06-01" -
"fallback-credit-2026-07-01" -
"agent-memory-2026-07-22" -
"mid-conversation-tool-changes-2026-07-01" -
"compact-2026-01-12" -
"computer-use-2025-11-24" -
"mcp-tunnels-2026-06-22" -
"structured-outputs-2025-11-13" -
"task-budgets-2026-03-13" -
"thinking-display-updates-2026-08-18" -
"ce-user-management-2026-07-13" -
"mid-conversation-output-config-2026-07-01" -
"thinking-binding-controls-2026-08-01" -
"mid-conversation-system-clear-at-2026-08-21" -
"compact-2026-09-04"
-
-
-
"anthropic-workspace-id": optional string
Body parameters
-
events: array of BetaManagedAgentsEventParamsEvents to send to the
session.-
BetaManagedAgentsUserMessageEventParams objectParameters for sending a user message to the session.
-
type: "user.message" -
content: array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsRedactedBlockArray of content blocks for the user message.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
type: "text" -
text: stringThe text content.
minLength: 1
-
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
type: "image" -
source: BetaManagedAgentsBase64ImageSource or BetaManagedAgentsURLImageSource or BetaManagedAgentsFileImageSourceUnion type for image source variants.
-
BetaManagedAgentsBase64ImageSource objectBase64-encoded image data.
-
type: "base64" -
data: stringBase64-encoded image data.
minLength: 1
-
media_type: stringMIME type of the image (e.g., "image/png", "image/jpeg", "image/gif", "image/webp").
minLength: 1
-
-
BetaManagedAgentsURLImageSource objectImage referenced by URL.
-
type: "url" -
url: stringURL of the image to fetch.
minLength: 1
-
-
BetaManagedAgentsFileImageSource objectImage referenced by file ID.
-
type: "file" -
file_id: stringID of a previously uploaded file.
minLength: 1
-
-
-
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
type: "document" -
source: BetaManagedAgentsBase64DocumentSource or BetaManagedAgentsPlainTextDocumentSource or BetaManagedAgentsURLDocumentSource or BetaManagedAgentsFileDocumentSourceUnion type for document source variants.
-
BetaManagedAgentsBase64DocumentSource objectBase64-encoded document data.
-
type: "base64" -
data: stringBase64-encoded document data.
minLength: 1
-
media_type: stringMIME type of the document (e.g., "application/pdf").
minLength: 1
-
-
BetaManagedAgentsPlainTextDocumentSource objectPlain text document content.
-
type: "text" -
data: stringThe plain text content.
minLength: 1
-
media_type: "text/plain"MIME type of the text content. Must be "text/plain".
-
-
BetaManagedAgentsURLDocumentSource objectDocument referenced by URL.
-
type: "url" -
url: stringURL of the document to fetch.
minLength: 1
-
-
BetaManagedAgentsFileDocumentSource objectDocument referenced by file ID.
-
type: "file" -
file_id: stringID of a previously uploaded file.
minLength: 1
-
-
-
context: optional string or nullAdditional context about the document for the model.
-
title: optional string or nullThe title of the document.
-
-
BetaManagedAgentsRedactedBlock objectPlaceholder for content withheld by Anthropic model policy.
type: "redacted"
-
-
-
BetaManagedAgentsUserInterruptEventParams objectParameters for sending an interrupt to pause the agent.
-
type: "user.interrupt" -
session_thread_id: optional string or nullIf absent, interrupts every non-archived thread in a multiagent session (or the primary alone in a single-agent session). If present, interrupts only the named thread.
-
-
BetaManagedAgentsUserToolConfirmationEventParams objectParameters for confirming or denying a tool execution request.
-
type: "user.tool_confirmation" -
result: "allow" or "deny"UserToolConfirmationResult enum
-
"allow" -
"deny"
-
-
tool_use_id: stringThe id of the
agent.tool_useoragent.mcp_tool_useevent this result corresponds to, which can be found in the lastsession.status_idleevent'sstop_reason.event_idsfield.minLength: 1, maxLength: 128
-
deny_message: optional string or nullOptional message providing context for a 'deny' decision. Only allowed when result is 'deny'.
maxLength: 10000
-
-
BetaManagedAgentsUserCustomToolResultEventParams objectParameters for providing the result of a custom tool execution.
-
type: "user.custom_tool_result" -
custom_tool_use_id: stringThe id of the
agent.custom_tool_useevent this result corresponds to, which can be found in the lastsession.status_idleevent'sstop_reason.event_idsfield.minLength: 1, maxLength: 128
-
content: optional array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsSearchResultBlockThe result content returned by the tool.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
BetaManagedAgentsSearchResultBlock objectA block containing a web search result.
-
type: "search_result" -
citations: BetaManagedAgentsSearchResultCitationsCitation settings for a search result.
-
enabled: booleanWhether citations are enabled for this search result.
-
-
content: array of BetaManagedAgentsSearchResultContentArray of text content blocks from the search result.
-
type: "text" -
text: stringThe text content.
minLength: 1
-
-
source: stringThe URL source of the search result.
minLength: 1
-
title: stringThe title of the search result.
minLength: 1
-
-
-
is_error: optional boolean or nullWhether the tool execution resulted in an error.
-
-
BetaManagedAgentsUserDefineOutcomeEventParams objectParameters for defining an outcome the agent should work toward. The agent begins work on receipt.
-
type: "user.define_outcome" -
description: stringWhat the agent should produce. This is the task specification.
-
rubric: BetaManagedAgentsFileRubricParams or BetaManagedAgentsTextRubricParamsRubric for grading the quality of an outcome.
-
BetaManagedAgentsFileRubricParams objectRubric referenced by a file uploaded via the Files API.
-
type: "file" -
file_id: stringID of the rubric file.
-
-
BetaManagedAgentsTextRubricParams objectRubric content provided inline as text.
-
type: "text" -
content: stringRubric content. Plain text or markdown — the grader treats it as freeform text. Maximum 262144 characters.
maxLength: 262144
-
-
-
max_iterations: optional number or nullEval→revision cycles before giving up. Default 3, max 20.
format: int32
-
-
BetaManagedAgentsUserToolResultEventParams objectParameters for providing the result of an agent-toolset tool execution. Only valid on
self_hostedenvironments, where sandbox-routed tools are executed by the client rather than the server.-
type: "user.tool_result" -
tool_use_id: stringThe id of the
agent.tool_useevent this result corresponds to, which can be found in the lastsession.status_idleevent'sstop_reason.event_idsfield.minLength: 1, maxLength: 128
-
content: optional array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsSearchResultBlockThe result content returned by the tool.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
BetaManagedAgentsSearchResultBlock objectA block containing a web search result.
-
-
is_error: optional boolean or nullWhether the tool execution resulted in an error.
-
-
BetaManagedAgentsSystemMessageEventParams objectPrivileged context for the accompanying turn and all subsequent turns, appended to the session's system context as a
role: "system"turn rather than replacing the top-level system prompt. At most one per request: it must be the final event and immediately follow theuser.message,user.tool_result, oruser.custom_tool_resultit accompanies. Only supported on models that accept mid-conversation system messages.-
type: "system.message" -
content: array of BetaManagedAgentsSystemContentBlockSystem content blocks to append. Text-only.
-
type: "text" -
text: stringThe text content.
minLength: 1
-
-
-
Returns
-
BetaManagedAgentsSendSessionEvents objectEvents that were successfully sent to the session.
-
data: optional array of BetaManagedAgentsUserMessageEvent or BetaManagedAgentsUserInterruptEvent or BetaManagedAgentsUserToolConfirmationEvent or 4 moreSent events
-
BetaManagedAgentsUserMessageEvent objectA user message event in the session conversation.
-
type: "user.message" -
id: stringUnique identifier for this event.
-
content: array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsRedactedBlockArray of content blocks comprising the user message.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
type: "text" -
text: stringThe text content.
minLength: 1
-
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
type: "image" -
source: BetaManagedAgentsBase64ImageSource or BetaManagedAgentsURLImageSource or BetaManagedAgentsFileImageSourceUnion type for image source variants.
-
BetaManagedAgentsBase64ImageSource objectBase64-encoded image data.
-
type: "base64" -
data: stringBase64-encoded image data.
minLength: 1
-
media_type: stringMIME type of the image (e.g., "image/png", "image/jpeg", "image/gif", "image/webp").
minLength: 1
-
-
BetaManagedAgentsURLImageSource objectImage referenced by URL.
-
type: "url" -
url: stringURL of the image to fetch.
minLength: 1
-
-
BetaManagedAgentsFileImageSource objectImage referenced by file ID.
-
type: "file" -
file_id: stringID of a previously uploaded file.
minLength: 1
-
-
-
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
type: "document" -
source: BetaManagedAgentsBase64DocumentSource or BetaManagedAgentsPlainTextDocumentSource or BetaManagedAgentsURLDocumentSource or BetaManagedAgentsFileDocumentSourceUnion type for document source variants.
-
BetaManagedAgentsBase64DocumentSource objectBase64-encoded document data.
-
type: "base64" -
data: stringBase64-encoded document data.
minLength: 1
-
media_type: stringMIME type of the document (e.g., "application/pdf").
minLength: 1
-
-
BetaManagedAgentsPlainTextDocumentSource objectPlain text document content.
-
type: "text" -
data: stringThe plain text content.
minLength: 1
-
media_type: "text/plain"MIME type of the text content. Must be "text/plain".
-
-
BetaManagedAgentsURLDocumentSource objectDocument referenced by URL.
-
type: "url" -
url: stringURL of the document to fetch.
minLength: 1
-
-
BetaManagedAgentsFileDocumentSource objectDocument referenced by file ID.
-
type: "file" -
file_id: stringID of a previously uploaded file.
minLength: 1
-
-
-
context: optional string or nullAdditional context about the document for the model.
-
title: optional string or nullThe title of the document.
-
-
BetaManagedAgentsRedactedBlock objectPlaceholder for content withheld by Anthropic model policy.
type: "redacted"
-
-
processed_at: optional string or nullA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsUserInterruptEvent objectAn interrupt event that pauses agent execution and returns control to the user.
-
type: "user.interrupt" -
id: stringUnique identifier for this event.
-
processed_at: optional string or nullA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: optional string or nullIf absent, interrupts every non-archived thread in a multiagent session (or the primary alone in a single-agent session). If present, interrupts only the named thread.
-
-
BetaManagedAgentsUserToolConfirmationEvent objectA tool confirmation event that approves or denies a pending tool execution.
-
type: "user.tool_confirmation" -
id: stringUnique identifier for this event.
-
result: "allow" or "deny"UserToolConfirmationResult enum
-
"allow" -
"deny"
-
-
tool_use_id: stringThe id of the
agent.tool_useoragent.mcp_tool_useevent this result corresponds to, which can be found in the lastsession.status_idleevent'sstop_reason.event_idsfield. -
deny_message: optional string or nullOptional message providing context for a 'deny' decision. Only allowed when result is 'deny'.
maxLength: 10000
-
processed_at: optional string or nullA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: optional string or nullSet by the server to the subagent thread this confirmation was routed to. Omitted when it was routed to the primary thread.
-
-
BetaManagedAgentsUserCustomToolResultEvent objectEvent sent by the client providing the result of a custom tool execution.
-
type: "user.custom_tool_result" -
id: stringUnique identifier for this event.
-
custom_tool_use_id: stringThe id of the
agent.custom_tool_useevent this result corresponds to, which can be found in the lastsession.status_idleevent'sstop_reason.event_idsfield. -
content: optional array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsSearchResultBlockThe result content returned by the tool.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
BetaManagedAgentsSearchResultBlock objectA block containing a web search result.
-
type: "search_result" -
citations: BetaManagedAgentsSearchResultCitationsCitation settings for a search result.
-
enabled: booleanWhether citations are enabled for this search result.
-
-
content: array of BetaManagedAgentsSearchResultContentArray of text content blocks from the search result.
-
type: "text" -
text: stringThe text content.
minLength: 1
-
-
source: stringThe URL source of the search result.
minLength: 1
-
title: stringThe title of the search result.
minLength: 1
-
-
-
is_error: optional boolean or nullWhether the tool execution resulted in an error.
-
processed_at: optional string or nullA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: optional string or nullSet by the server to the subagent thread this result was routed to. Omitted when it was routed to the primary thread.
-
-
BetaManagedAgentsUserDefineOutcomeEvent objectEcho of a
user.define_outcomeinput event. Carries the server-generatedoutcome_idthat subsequentspan.outcome_evaluation_*events reference.-
type: "user.define_outcome" -
id: stringUnique identifier for this event.
-
description: stringWhat the agent should produce. Copied from the input event.
-
max_iterations: number or nullEvaluate-then-revise cycles before giving up. Default 3, max 20.
format: int32
-
outcome_id: stringServer-generated
outc_ID for this outcome. Referenced byspan.outcome_evaluation_*events and the session'soutcome_evaluationslist. -
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
rubric: BetaManagedAgentsFileRubric or BetaManagedAgentsTextRubricRubric for grading the quality of an outcome.
-
BetaManagedAgentsFileRubric objectRubric referenced by a file uploaded via the Files API.
-
type: "file" -
file_id: stringID of the rubric file.
-
-
BetaManagedAgentsTextRubric objectRubric content provided inline as text.
-
type: "text" -
content: stringRubric content. Plain text or markdown — the grader treats it as freeform text.
-
-
-
-
BetaManagedAgentsUserToolResultEvent objectEvent sent by the client providing the result of an agent-toolset tool execution. Only valid on
self_hostedenvironments, where sandbox-routed tools are executed by the client rather than the server.-
type: "user.tool_result" -
id: stringUnique identifier for this event.
-
tool_use_id: stringThe id of the
agent.tool_useevent this result corresponds to, which can be found in the lastsession.status_idleevent'sstop_reason.event_idsfield. -
content: optional array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsSearchResultBlockThe result content returned by the tool.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
BetaManagedAgentsSearchResultBlock objectA block containing a web search result.
-
-
is_error: optional boolean or nullWhether the tool execution resulted in an error.
-
processed_at: optional string or nullA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: optional string or nullSet by the server to the subagent thread this result was routed to. Omitted when it was routed to the primary thread.
-
-
BetaManagedAgentsSystemMessageEvent objectA mid-conversation system message event. Carries system-role content that is appended to the session as a
role: "system"turn.-
type: "system.message" -
id: stringUnique identifier for this event.
-
content: array of BetaManagedAgentsSystemContentBlockSystem content blocks. Text-only.
-
type: "text" -
text: stringThe text content.
minLength: 1
-
-
processed_at: optional string or nullA timestamp in RFC 3339 format
format: date-time
-
-
-
Example
curl https://api.anthropic.com/v1/sessions/$SESSION_ID/events \
-H 'Content-Type: application/json' \
-H 'anthropic-version: 2023-06-01' \
-H 'anthropic-beta: managed-agents-2026-04-01' \
-H "X-Api-Key: $ANTHROPIC_API_KEY" \
-d '{
"events": [
{
"content": [
{
"text": "Where is my order #1234?",
"type": "text"
}
],
"type": "user.message"
}
]
}'Response (200)
{
"data": [
{
"id": "sevt_011CZkZGOp0iBcp4kaQSihUmy",
"content": [
{
"text": "Where is my order #1234?",
"type": "text"
}
],
"type": "user.message",
"processed_at": "2026-03-15T10:00:00Z"
}
]
}Stream Events
GET /v1/sessions/{session_id}/events/stream
Stream Events
Path parameters
session_id: string
Query parameters
-
event_deltas: optional array of BetaManagedAgentsDeltaTypeWhen set, this connection also receives streaming deltas (
event_start,event_delta) while an event is being produced, before the event itself arrives. Deltas are best-effort; when the final event is produced it carries the complete content. A model request that ends early (an error or interrupt) produces no final event — its terminalspan.model_request_endcloses the preview. Accepts one or more event types to preview and may be repeated:agent.messagestreamscontent_deltafragments;agent.thinkingis start-only — a signal that the agent has begun extended thinking, concluded by theagent.thinkingevent itself. Only previews of the requested event types are sent.-
"agent.message" -
"agent.thinking"
-
Headers
-
"anthropic-beta": optional array of AnthropicBetaOptional header to specify the beta version(s) you want to use.
-
string -
"message-batches-2024-09-24" or "prompt-caching-2024-07-31" or "computer-use-2024-10-22" or 43 more-
"message-batches-2024-09-24" -
"prompt-caching-2024-07-31" -
"computer-use-2024-10-22" -
"computer-use-2025-01-24" -
"pdfs-2024-09-25" -
"token-counting-2024-11-01" -
"token-efficient-tools-2025-02-19" -
"output-128k-2025-02-19" -
"files-api-2025-04-14" -
"mcp-client-2025-04-04" -
"mcp-client-2025-11-20" -
"dev-full-thinking-2025-05-14" -
"interleaved-thinking-2025-05-14" -
"code-execution-2025-05-22" -
"extended-cache-ttl-2025-04-11" -
"context-1m-2025-08-07" -
"context-management-2025-06-27" -
"model-context-window-exceeded-2025-08-26" -
"skills-2025-10-02" -
"fast-mode-2026-02-01" -
"output-300k-2026-03-24" -
"user-profiles-2026-03-24" -
"user-profiles-2026-08-18" -
"user-profiles-2026-09-04" -
"advisor-tool-2026-03-01" -
"managed-agents-2026-04-01" -
"cache-diagnosis-2026-04-07" -
"dreaming-2026-04-21" -
"thinking-token-count-2026-05-13" -
"server-side-fallback-2026-06-01" -
"server-side-fallback-2026-07-01" -
"fallback-credit-2026-06-01" -
"fallback-credit-2026-07-01" -
"agent-memory-2026-07-22" -
"mid-conversation-tool-changes-2026-07-01" -
"compact-2026-01-12" -
"computer-use-2025-11-24" -
"mcp-tunnels-2026-06-22" -
"structured-outputs-2025-11-13" -
"task-budgets-2026-03-13" -
"thinking-display-updates-2026-08-18" -
"ce-user-management-2026-07-13" -
"mid-conversation-output-config-2026-07-01" -
"thinking-binding-controls-2026-08-01" -
"mid-conversation-system-clear-at-2026-08-21" -
"compact-2026-09-04"
-
-
-
"anthropic-workspace-id": optional string
Returns
-
BetaManagedAgentsStreamSessionEvents = BetaManagedAgentsUserMessageEvent or BetaManagedAgentsUserInterruptEvent or BetaManagedAgentsUserToolConfirmationEvent or 34 moreServer-sent event in the session stream.
-
BetaManagedAgentsUserMessageEvent objectA user message event in the session conversation.
-
type: "user.message" -
id: stringUnique identifier for this event.
-
content: array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsRedactedBlockArray of content blocks comprising the user message.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
type: "text" -
text: stringThe text content.
minLength: 1
-
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
type: "image" -
source: BetaManagedAgentsBase64ImageSource or BetaManagedAgentsURLImageSource or BetaManagedAgentsFileImageSourceUnion type for image source variants.
-
BetaManagedAgentsBase64ImageSource objectBase64-encoded image data.
-
type: "base64" -
data: stringBase64-encoded image data.
minLength: 1
-
media_type: stringMIME type of the image (e.g., "image/png", "image/jpeg", "image/gif", "image/webp").
minLength: 1
-
-
BetaManagedAgentsURLImageSource objectImage referenced by URL.
-
type: "url" -
url: stringURL of the image to fetch.
minLength: 1
-
-
BetaManagedAgentsFileImageSource objectImage referenced by file ID.
-
type: "file" -
file_id: stringID of a previously uploaded file.
minLength: 1
-
-
-
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
type: "document" -
source: BetaManagedAgentsBase64DocumentSource or BetaManagedAgentsPlainTextDocumentSource or BetaManagedAgentsURLDocumentSource or BetaManagedAgentsFileDocumentSourceUnion type for document source variants.
-
BetaManagedAgentsBase64DocumentSource objectBase64-encoded document data.
-
type: "base64" -
data: stringBase64-encoded document data.
minLength: 1
-
media_type: stringMIME type of the document (e.g., "application/pdf").
minLength: 1
-
-
BetaManagedAgentsPlainTextDocumentSource objectPlain text document content.
-
type: "text" -
data: stringThe plain text content.
minLength: 1
-
media_type: "text/plain"MIME type of the text content. Must be "text/plain".
-
-
BetaManagedAgentsURLDocumentSource objectDocument referenced by URL.
-
type: "url" -
url: stringURL of the document to fetch.
minLength: 1
-
-
BetaManagedAgentsFileDocumentSource objectDocument referenced by file ID.
-
type: "file" -
file_id: stringID of a previously uploaded file.
minLength: 1
-
-
-
context: optional string or nullAdditional context about the document for the model.
-
title: optional string or nullThe title of the document.
-
-
BetaManagedAgentsRedactedBlock objectPlaceholder for content withheld by Anthropic model policy.
type: "redacted"
-
-
processed_at: optional string or nullA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsUserInterruptEvent objectAn interrupt event that pauses agent execution and returns control to the user.
-
type: "user.interrupt" -
id: stringUnique identifier for this event.
-
processed_at: optional string or nullA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: optional string or nullIf absent, interrupts every non-archived thread in a multiagent session (or the primary alone in a single-agent session). If present, interrupts only the named thread.
-
-
BetaManagedAgentsUserToolConfirmationEvent objectA tool confirmation event that approves or denies a pending tool execution.
-
type: "user.tool_confirmation" -
id: stringUnique identifier for this event.
-
result: "allow" or "deny"UserToolConfirmationResult enum
-
"allow" -
"deny"
-
-
tool_use_id: stringThe id of the
agent.tool_useoragent.mcp_tool_useevent this result corresponds to, which can be found in the lastsession.status_idleevent'sstop_reason.event_idsfield. -
deny_message: optional string or nullOptional message providing context for a 'deny' decision. Only allowed when result is 'deny'.
maxLength: 10000
-
processed_at: optional string or nullA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: optional string or nullSet by the server to the subagent thread this confirmation was routed to. Omitted when it was routed to the primary thread.
-
-
BetaManagedAgentsUserCustomToolResultEvent objectEvent sent by the client providing the result of a custom tool execution.
-
type: "user.custom_tool_result" -
id: stringUnique identifier for this event.
-
custom_tool_use_id: stringThe id of the
agent.custom_tool_useevent this result corresponds to, which can be found in the lastsession.status_idleevent'sstop_reason.event_idsfield. -
content: optional array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsSearchResultBlockThe result content returned by the tool.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
BetaManagedAgentsSearchResultBlock objectA block containing a web search result.
-
type: "search_result" -
citations: BetaManagedAgentsSearchResultCitationsCitation settings for a search result.
-
enabled: booleanWhether citations are enabled for this search result.
-
-
content: array of BetaManagedAgentsSearchResultContentArray of text content blocks from the search result.
-
type: "text" -
text: stringThe text content.
minLength: 1
-
-
source: stringThe URL source of the search result.
minLength: 1
-
title: stringThe title of the search result.
minLength: 1
-
-
-
is_error: optional boolean or nullWhether the tool execution resulted in an error.
-
processed_at: optional string or nullA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: optional string or nullSet by the server to the subagent thread this result was routed to. Omitted when it was routed to the primary thread.
-
-
BetaManagedAgentsAgentCustomToolUseEvent objectEvent emitted when the agent calls a custom tool. The session goes idle until the client sends a
user.custom_tool_resultevent with the result.-
type: "agent.custom_tool_use" -
id: stringUnique identifier for this event.
-
input: map[unknown]Input parameters for the tool call.
-
name: stringName of the custom tool being called.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: optional string or nullWhen set, this event was cross-posted from a subagent's thread to surface its custom tool use on the primary thread's stream. Empty on the thread's own events. Informational only: the server routes the matching
user.custom_tool_resultbycustom_tool_use_id, so clients do not send it back.
-
-
BetaManagedAgentsAgentMessageEvent objectAn agent response event in the session conversation.
-
type: "agent.message" -
id: stringUnique identifier for this event.
-
content: array of BetaManagedAgentsTextBlock or BetaManagedAgentsRedactedBlockArray of text blocks comprising the agent response.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
BetaManagedAgentsRedactedBlock objectPlaceholder for content withheld by Anthropic model policy.
-
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsAgentThinkingEvent objectIndicates the agent is making forward progress via extended thinking. A progress signal, not a content carrier.
-
type: "agent.thinking" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsAgentMCPToolUseEvent objectEvent emitted when the agent invokes a tool provided by an MCP server.
-
type: "agent.mcp_tool_use" -
id: stringUnique identifier for this event.
-
input: map[unknown]Input parameters for the tool call.
-
mcp_server_name: stringName of the MCP server providing the tool.
-
name: stringName of the MCP tool being used.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
evaluated_permission: optional "allow" or "ask" or "deny"AgentEvaluatedPermission enum
-
"allow" -
"ask" -
"deny"
-
-
evaluation: optional BetaManagedAgentsAgentToolEvaluationNames the resolved permission_policy that produced evaluated_permission, and under auto carries the judgement. Open union: clients must tolerate unknown variants.
-
BetaManagedAgentsAgentToolEvaluationAlwaysAllow objectThe resolved permission_policy was always_allow; accompanies evaluated_permission "allow".
type: "always_allow"
-
BetaManagedAgentsAgentToolEvaluationAlwaysAsk objectThe resolved permission_policy was always_ask; accompanies evaluated_permission "ask".
type: "always_ask"
-
BetaManagedAgentsAgentToolEvaluationAuto objectThe resolved permission_policy was auto: the server judged this invocation individually.
-
type: "auto" -
evaluated_permission: BetaManagedAgentsAgentAutoEvaluatedPermissionThe server's per-invocation judgement under the auto permission policy. Its type always equals the event's top-level evaluated_permission. Open union: clients must tolerate unknown variants.
-
BetaManagedAgentsAgentAutoEvaluatedPermissionAllow objectThe server judged the invocation safe to execute without client approval.
type: "allow"
-
BetaManagedAgentsAgentAutoEvaluatedPermissionAsk objectThe server reached no judgement; the invocation is held for client approval.
-
type: "ask" -
reason_code: stringThe judgement's grounds in registry-bound terms, for client branching and audit rather than end-user display. Open registry; currently "indeterminate" (no judgement was reached). Clients must tolerate values outside this set.
maxLength: 64
-
-
BetaManagedAgentsAgentAutoEvaluatedPermissionDeny objectThe server judged the invocation high-risk; it does not execute and a synthetic error tool result is appended.
-
type: "deny" -
reason_code: stringThe judgement's grounds in registry-bound terms. Open registry; currently "high_risk" (judged high-risk; the call does not run). Clients must tolerate values outside this set.
maxLength: 64
-
-
-
-
-
session_thread_id: optional string or nullWhen set, this event was cross-posted from a subagent's thread to surface its permission request on the primary thread's stream. Empty on the thread's own events. Informational only: the server routes the matching
user.tool_confirmationbytool_use_id, so clients do not send it back.
-
-
BetaManagedAgentsAgentMCPToolResultEvent objectEvent representing the result of an MCP tool execution.
-
type: "agent.mcp_tool_result" -
id: stringUnique identifier for this event.
-
mcp_tool_use_id: stringThe id of the
agent.mcp_tool_useevent this result corresponds to. -
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
content: optional array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsSearchResultBlockThe result content returned by the tool.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
BetaManagedAgentsSearchResultBlock objectA block containing a web search result.
-
-
is_error: optional boolean or nullWhether the tool execution resulted in an error.
-
-
BetaManagedAgentsAgentToolUseEvent objectEvent emitted when the agent invokes a built-in agent tool.
-
type: "agent.tool_use" -
id: stringUnique identifier for this event.
-
input: map[unknown]Input parameters for the tool call.
-
name: stringName of the agent tool being used.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
evaluated_permission: optional "allow" or "ask" or "deny"AgentEvaluatedPermission enum
-
"allow" -
"ask" -
"deny"
-
-
evaluation: optional BetaManagedAgentsAgentToolEvaluationNames the resolved permission_policy that produced evaluated_permission, and under auto carries the judgement. Open union: clients must tolerate unknown variants.
-
session_thread_id: optional string or nullWhen set, this event was cross-posted from a subagent's thread to surface its permission request on the primary thread's stream. Empty on the thread's own events. Informational only: the server routes the matching
user.tool_confirmationoruser.tool_resultbytool_use_id, so clients do not send it back.
-
-
BetaManagedAgentsAgentToolResultEvent objectEvent representing the result of an agent tool execution.
-
type: "agent.tool_result" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
tool_use_id: stringThe id of the
agent.tool_useevent this result corresponds to. -
content: optional array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsSearchResultBlockThe result content returned by the tool.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
BetaManagedAgentsSearchResultBlock objectA block containing a web search result.
-
-
is_error: optional boolean or nullWhether the tool execution resulted in an error.
-
-
BetaManagedAgentsAgentThreadMessageReceivedEvent objectDelivery event written to the target thread's input stream when an agent-to-agent message arrives.
-
type: "agent.thread_message_received" -
id: stringUnique identifier for this event.
-
content: array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsRedactedBlockMessage content blocks.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
BetaManagedAgentsRedactedBlock objectPlaceholder for content withheld by Anthropic model policy.
-
-
from_session_thread_id: stringPublic
sthr_ID of the thread that sent the message. -
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
from_agent_name: optional string or nullName of the callable agent this message came from. Absent when received from the primary agent.
-
-
BetaManagedAgentsAgentThreadMessageSentEvent objectObservability event emitted to the sender's output stream when an agent-to-agent message is sent.
-
type: "agent.thread_message_sent" -
id: stringUnique identifier for this event.
-
content: array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsRedactedBlockMessage content blocks.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
BetaManagedAgentsRedactedBlock objectPlaceholder for content withheld by Anthropic model policy.
-
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
to_session_thread_id: stringPublic
sthr_ID of the thread the message was sent to. -
to_agent_name: optional string or nullName of the callable agent this message was sent to. Absent when sent to the primary agent.
-
-
BetaManagedAgentsAgentThreadContextCompactedEvent objectIndicates that context compaction (summarization) occurred during the session.
-
type: "agent.thread_context_compacted" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSessionErrorEvent objectAn error event indicating a problem occurred during session execution.
-
type: "session.error" -
id: stringUnique identifier for this event.
-
error: BetaManagedAgentsUnknownError or BetaManagedAgentsModelOverloadedError or BetaManagedAgentsModelRateLimitedError or 5 more-
BetaManagedAgentsUnknownError objectAn unknown or unexpected error occurred during session execution. A fallback variant; clients that don't recognize a new error code can match on
retry_statusandmessagealone.-
type: "unknown_error" -
message: stringHuman-readable error description.
-
retry_status: BetaManagedAgentsRetryStatusRetrying or BetaManagedAgentsRetryStatusExhausted or BetaManagedAgentsRetryStatusTerminalWhat the client should do next in response to this error.
-
BetaManagedAgentsRetryStatusRetrying objectThe server is retrying automatically. Client should wait; the same error type may fire again as retrying, then once as exhausted when the retry budget runs out.
type: "retrying"
-
BetaManagedAgentsRetryStatusExhausted objectThis turn is dead; queued inputs are flushed and the session returns to idle. Client may send a new prompt.
type: "exhausted"
-
BetaManagedAgentsRetryStatusTerminal objectThe session encountered a terminal error and will transition to
terminatedstate.type: "terminal"
-
-
-
BetaManagedAgentsModelOverloadedError objectThe model is currently overloaded. Emitted after automatic retries are exhausted.
-
type: "model_overloaded_error" -
message: stringHuman-readable error description.
-
retry_status: BetaManagedAgentsRetryStatusRetrying or BetaManagedAgentsRetryStatusExhausted or BetaManagedAgentsRetryStatusTerminalWhat the client should do next in response to this error.
-
BetaManagedAgentsRetryStatusRetrying objectThe server is retrying automatically. Client should wait; the same error type may fire again as retrying, then once as exhausted when the retry budget runs out.
-
BetaManagedAgentsRetryStatusExhausted objectThis turn is dead; queued inputs are flushed and the session returns to idle. Client may send a new prompt.
-
BetaManagedAgentsRetryStatusTerminal objectThe session encountered a terminal error and will transition to
terminatedstate.
-
-
-
BetaManagedAgentsModelRateLimitedError objectThe model request was rate-limited.
-
type: "model_rate_limited_error" -
message: stringHuman-readable error description.
-
retry_status: BetaManagedAgentsRetryStatusRetrying or BetaManagedAgentsRetryStatusExhausted or BetaManagedAgentsRetryStatusTerminalWhat the client should do next in response to this error.
-
BetaManagedAgentsRetryStatusRetrying objectThe server is retrying automatically. Client should wait; the same error type may fire again as retrying, then once as exhausted when the retry budget runs out.
-
BetaManagedAgentsRetryStatusExhausted objectThis turn is dead; queued inputs are flushed and the session returns to idle. Client may send a new prompt.
-
BetaManagedAgentsRetryStatusTerminal objectThe session encountered a terminal error and will transition to
terminatedstate.
-
-
-
BetaManagedAgentsModelRequestFailedError objectA model request failed for a reason other than overload or rate-limiting.
-
type: "model_request_failed_error" -
message: stringHuman-readable error description.
-
retry_status: BetaManagedAgentsRetryStatusRetrying or BetaManagedAgentsRetryStatusExhausted or BetaManagedAgentsRetryStatusTerminalWhat the client should do next in response to this error.
-
BetaManagedAgentsRetryStatusRetrying objectThe server is retrying automatically. Client should wait; the same error type may fire again as retrying, then once as exhausted when the retry budget runs out.
-
BetaManagedAgentsRetryStatusExhausted objectThis turn is dead; queued inputs are flushed and the session returns to idle. Client may send a new prompt.
-
BetaManagedAgentsRetryStatusTerminal objectThe session encountered a terminal error and will transition to
terminatedstate.
-
-
-
BetaManagedAgentsMCPConnectionFailedError objectFailed to connect to an MCP server.
-
type: "mcp_connection_failed_error" -
mcp_server_name: stringName of the MCP server that failed to connect.
-
message: stringHuman-readable error description.
-
retry_status: BetaManagedAgentsRetryStatusRetrying or BetaManagedAgentsRetryStatusExhausted or BetaManagedAgentsRetryStatusTerminalWhat the client should do next in response to this error.
-
BetaManagedAgentsRetryStatusRetrying objectThe server is retrying automatically. Client should wait; the same error type may fire again as retrying, then once as exhausted when the retry budget runs out.
-
BetaManagedAgentsRetryStatusExhausted objectThis turn is dead; queued inputs are flushed and the session returns to idle. Client may send a new prompt.
-
BetaManagedAgentsRetryStatusTerminal objectThe session encountered a terminal error and will transition to
terminatedstate.
-
-
-
BetaManagedAgentsMCPAuthenticationFailedError objectAuthentication to an MCP server failed.
-
type: "mcp_authentication_failed_error" -
mcp_server_name: stringName of the MCP server that failed authentication.
-
message: stringHuman-readable error description.
-
retry_status: BetaManagedAgentsRetryStatusRetrying or BetaManagedAgentsRetryStatusExhausted or BetaManagedAgentsRetryStatusTerminalWhat the client should do next in response to this error.
-
BetaManagedAgentsRetryStatusRetrying objectThe server is retrying automatically. Client should wait; the same error type may fire again as retrying, then once as exhausted when the retry budget runs out.
-
BetaManagedAgentsRetryStatusExhausted objectThis turn is dead; queued inputs are flushed and the session returns to idle. Client may send a new prompt.
-
BetaManagedAgentsRetryStatusTerminal objectThe session encountered a terminal error and will transition to
terminatedstate.
-
-
-
BetaManagedAgentsBillingError objectThe caller's organization or workspace cannot make model requests — out of credits or spend limit reached. Retrying with the same credentials will not succeed; the caller must resolve the billing state.
-
type: "billing_error" -
message: stringHuman-readable error description.
-
retry_status: BetaManagedAgentsRetryStatusRetrying or BetaManagedAgentsRetryStatusExhausted or BetaManagedAgentsRetryStatusTerminalWhat the client should do next in response to this error.
-
BetaManagedAgentsRetryStatusRetrying objectThe server is retrying automatically. Client should wait; the same error type may fire again as retrying, then once as exhausted when the retry budget runs out.
-
BetaManagedAgentsRetryStatusExhausted objectThis turn is dead; queued inputs are flushed and the session returns to idle. Client may send a new prompt.
-
BetaManagedAgentsRetryStatusTerminal objectThe session encountered a terminal error and will transition to
terminatedstate.
-
-
-
BetaManagedAgentsCredentialHostUnreachableError objectAn
environment_variablecredential'sauth.networking.allowed_hostsincludes a host the environment's network policy does not permit.-
type: "credential_host_unreachable_error" -
credential_id: stringID of the affected credential.
-
message: stringHuman-readable error description.
-
retry_status: BetaManagedAgentsRetryStatusRetrying or BetaManagedAgentsRetryStatusExhausted or BetaManagedAgentsRetryStatusTerminalWhat the client should do next in response to this error.
-
BetaManagedAgentsRetryStatusRetrying objectThe server is retrying automatically. Client should wait; the same error type may fire again as retrying, then once as exhausted when the retry budget runs out.
-
BetaManagedAgentsRetryStatusExhausted objectThis turn is dead; queued inputs are flushed and the session returns to idle. Client may send a new prompt.
-
BetaManagedAgentsRetryStatusTerminal objectThe session encountered a terminal error and will transition to
terminatedstate.
-
-
vault_id: stringID of the vault containing the affected credential.
-
-
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSessionStatusRescheduledEvent objectIndicates the session is recovering from an error state and is rescheduled for execution.
-
type: "session.status_rescheduled" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSessionStatusRunningEvent objectIndicates the session is actively running and the agent is working.
-
type: "session.status_running" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSessionStatusIdleEvent objectIndicates the agent has paused and is awaiting user input.
-
type: "session.status_idle" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
stop_reason: BetaManagedAgentsSessionEndTurn or BetaManagedAgentsSessionRequiresAction or BetaManagedAgentsSessionRetriesExhausted or BetaManagedAgentsSessionBudgetReached-
BetaManagedAgentsSessionEndTurn objectThe agent completed its turn naturally and is ready for the next user message.
type: "end_turn"
-
BetaManagedAgentsSessionRequiresAction objectThe agent is idle waiting on one or more blocking user-input events (tool confirmation, custom tool result, etc.). Resolving all of them transitions the session back to running.
-
type: "requires_action" -
event_ids: array of stringThe ids of events the agent is blocked on. Resolving fewer than all re-emits
session.status_idlewith the remainder.
-
-
BetaManagedAgentsSessionRetriesExhausted objectThe turn ended because repeated errors exhausted the retry budget or an error escalated to
retry_status: 'exhausted'.type: "retries_exhausted"
-
BetaManagedAgentsSessionBudgetReached objectThe agent stopped because the session's tracked list cost reached its budget, or because its usage includes a model with no list price (which the budget cannot measure). Raise the budget to continue — or, if raising is rejected because a model has no list price, remove the budget.
type: "budget_reached"
-
-
-
BetaManagedAgentsSessionStatusTerminatedEvent objectIndicates the session has terminated, either due to an error or completion.
-
type: "session.status_terminated" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSessionThreadCreatedEvent objectEmitted when a subagent is spawned as a new thread. Written to the parent thread's output stream so clients observing the session see child creation.
-
type: "session.thread_created" -
id: stringUnique identifier for this event.
-
agent_name: stringName of the callable agent the thread runs.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: stringPublic
sthr_ID of the newly created thread.
-
-
BetaManagedAgentsSpanOutcomeEvaluationStartEvent objectEmitted when an outcome evaluation cycle begins.
-
type: "span.outcome_evaluation_start" -
id: stringUnique identifier for this event.
-
iteration: number0-indexed revision cycle. 0 is the first evaluation; 1 is the re-evaluation after the first revision; etc.
format: int32
-
outcome_id: stringThe
outc_ID of the outcome being evaluated. -
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSpanOutcomeEvaluationEndEvent objectEmitted when an outcome evaluation cycle completes. Carries the verdict and aggregate token usage. A verdict of
needs_revisionmeans another evaluation cycle follows;satisfied,max_iterations_reached,failed, orinterruptedare terminal — no further evaluation cycles follow.-
type: "span.outcome_evaluation_end" -
id: stringUnique identifier for this event.
-
explanation: stringHuman-readable explanation of the verdict. For
needs_revision, describes which criteria failed and why. -
iteration: number0-indexed revision cycle, matching the corresponding
span.outcome_evaluation_start.format: int32
-
outcome_evaluation_start_id: stringThe id of the corresponding
span.outcome_evaluation_startevent. -
outcome_id: stringThe
outc_ID of the outcome being evaluated. -
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
result: stringEvaluation verdict. 'satisfied': criteria met, session goes idle. 'needs_revision': criteria not met, another revision cycle follows. 'max_iterations_reached': evaluation budget exhausted with criteria still unmet — one final acknowledgment turn follows before the session goes idle, but no further evaluation runs. 'failed': grader determined the rubric does not apply to the deliverables. 'interrupted': user sent an interrupt while evaluation was in progress.
-
usage: BetaManagedAgentsSpanModelUsageToken usage for a single model request.
-
cache_creation_input_tokens: numberTokens used to create prompt cache in this request.
format: int32
-
cache_read_input_tokens: numberTokens read from prompt cache in this request.
format: int32
-
input_tokens: numberInput tokens consumed by this request.
format: int32
-
output_tokens: numberOutput tokens generated by this request.
format: int32
-
speed: optional "standard" or "fast" or nullInference speed mode.
fastprovides significantly faster output token generation at premium pricing. Not all models supportfast; invalid combinations are rejected at create time.-
"standard" -
"fast"
-
-
-
-
BetaManagedAgentsSpanModelRequestStartEvent objectEmitted when a model request is initiated by the agent.
-
type: "span.model_request_start" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSpanModelRequestEndEvent objectEmitted when a model request completes.
-
type: "span.model_request_end" -
id: stringUnique identifier for this event.
-
is_error: boolean or nullWhether the model request resulted in an error.
-
model_request_start_id: stringThe id of the corresponding
span.model_request_startevent. -
model_usage: BetaManagedAgentsSpanModelUsageToken usage for a single model request.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSpanOutcomeEvaluationOngoingEvent objectPeriodic heartbeat emitted while an outcome evaluation cycle is in progress. Distinguishes 'evaluation is actively running' from 'evaluation is stuck' between the corresponding
span.outcome_evaluation_startandspan.outcome_evaluation_endevents.-
type: "span.outcome_evaluation_ongoing" -
id: stringUnique identifier for this event.
-
iteration: number0-indexed revision cycle, matching the corresponding
span.outcome_evaluation_start.format: int32
-
outcome_id: stringThe
outc_ID of the outcome being evaluated. -
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsUserDefineOutcomeEvent objectEcho of a
user.define_outcomeinput event. Carries the server-generatedoutcome_idthat subsequentspan.outcome_evaluation_*events reference.-
type: "user.define_outcome" -
id: stringUnique identifier for this event.
-
description: stringWhat the agent should produce. Copied from the input event.
-
max_iterations: number or nullEvaluate-then-revise cycles before giving up. Default 3, max 20.
format: int32
-
outcome_id: stringServer-generated
outc_ID for this outcome. Referenced byspan.outcome_evaluation_*events and the session'soutcome_evaluationslist. -
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
rubric: BetaManagedAgentsFileRubric or BetaManagedAgentsTextRubricRubric for grading the quality of an outcome.
-
BetaManagedAgentsFileRubric objectRubric referenced by a file uploaded via the Files API.
-
type: "file" -
file_id: stringID of the rubric file.
-
-
BetaManagedAgentsTextRubric objectRubric content provided inline as text.
-
type: "text" -
content: stringRubric content. Plain text or markdown — the grader treats it as freeform text.
-
-
-
-
BetaManagedAgentsSessionDeletedEvent objectEmitted when a session has been deleted. Terminates any active event stream — no further events will be emitted for this session.
-
type: "session.deleted" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSessionThreadStatusRunningEvent objectA session thread has begun executing. Emitted on the thread's own stream and cross-posted to the primary stream for child threads.
-
type: "session.thread_status_running" -
id: stringUnique identifier for this event.
-
agent_name: stringName of the agent the thread runs.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: stringPublic sthr_ ID of the thread that started running.
-
-
BetaManagedAgentsSessionThreadStatusIdleEvent objectA session thread has yielded and is awaiting input. Emitted on the thread's own stream and cross-posted to the primary stream for child threads.
-
type: "session.thread_status_idle" -
id: stringUnique identifier for this event.
-
agent_name: stringName of the agent the thread runs.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: stringPublic sthr_ ID of the thread that went idle.
-
stop_reason: BetaManagedAgentsSessionEndTurn or BetaManagedAgentsSessionRequiresAction or BetaManagedAgentsSessionRetriesExhausted or BetaManagedAgentsSessionBudgetReached-
BetaManagedAgentsSessionEndTurn objectThe agent completed its turn naturally and is ready for the next user message.
-
BetaManagedAgentsSessionRequiresAction objectThe agent is idle waiting on one or more blocking user-input events (tool confirmation, custom tool result, etc.). Resolving all of them transitions the session back to running.
-
BetaManagedAgentsSessionRetriesExhausted objectThe turn ended because repeated errors exhausted the retry budget or an error escalated to
retry_status: 'exhausted'. -
BetaManagedAgentsSessionBudgetReached objectThe agent stopped because the session's tracked list cost reached its budget, or because its usage includes a model with no list price (which the budget cannot measure). Raise the budget to continue — or, if raising is rejected because a model has no list price, remove the budget.
-
-
-
BetaManagedAgentsSessionThreadStatusTerminatedEvent objectA session thread has terminated and will accept no further input. Emitted on the thread's own stream and cross-posted to the primary stream for child threads.
-
type: "session.thread_status_terminated" -
id: stringUnique identifier for this event.
-
agent_name: stringName of the agent the thread runs.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: stringPublic sthr_ ID of the thread that terminated.
-
-
BetaManagedAgentsUserToolResultEvent objectEvent sent by the client providing the result of an agent-toolset tool execution. Only valid on
self_hostedenvironments, where sandbox-routed tools are executed by the client rather than the server.-
type: "user.tool_result" -
id: stringUnique identifier for this event.
-
tool_use_id: stringThe id of the
agent.tool_useevent this result corresponds to, which can be found in the lastsession.status_idleevent'sstop_reason.event_idsfield. -
content: optional array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsSearchResultBlockThe result content returned by the tool.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
BetaManagedAgentsSearchResultBlock objectA block containing a web search result.
-
-
is_error: optional boolean or nullWhether the tool execution resulted in an error.
-
processed_at: optional string or nullA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: optional string or nullSet by the server to the subagent thread this result was routed to. Omitted when it was routed to the primary thread.
-
-
BetaManagedAgentsSessionThreadStatusRescheduledEvent objectA session thread hit a transient error and is retrying automatically. Emitted on the thread's own stream and cross-posted to the primary stream for child threads.
-
type: "session.thread_status_rescheduled" -
id: stringUnique identifier for this event.
-
agent_name: stringName of the agent the thread runs.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: stringPublic sthr_ ID of the thread that is retrying.
-
-
BetaManagedAgentsSessionUpdatedEvent objectEmitted when an UpdateSession request changed at least one field. Carries only the fields that changed; absent fields were not part of the update. The new configuration applies from the next turn.
-
type: "session.updated" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
agent: optional BetaManagedAgentsSessionAgent or nullResolved
agentdefinition for asession. Snapshot of theagentatsessioncreation time.-
type: "agent" -
id: string -
description: string or null -
mcp_servers: array of BetaManagedAgentsMCPServerURLDefinition-
type: "url" -
name: string -
url: string
-
-
model: BetaManagedAgentsModelConfigModel identifier and configuration.
-
id: BetaManagedAgentsModelThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1" or "claude-sonnet-5" or "claude-fable-5" or 11 moreThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1"Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows
-
"claude-sonnet-5"High-performance model for coding and agents
-
"claude-fable-5"Next generation of intelligence for the hardest knowledge work and coding problems
-
"claude-opus-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-8"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-7"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-6"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-6"Best combination of speed and intelligence
-
"claude-haiku-4-5"Fastest model with near-frontier intelligence
-
"claude-haiku-4-5-20251001"Fastest model with near-frontier intelligence
-
"claude-opus-4-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-5-20251101"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-5"High-performance model for agents and coding
-
"claude-sonnet-4-5-20250929"High-performance model for agents and coding
-
-
string
-
-
effort: optional BetaManagedAgentsEffortLow or BetaManagedAgentsEffortMedium or BetaManagedAgentsEffortHigh or 2 moreHow hard Claude works on each turn. Sets
output_config.efforton every Messages call the session makes.-
BetaManagedAgentsEffortLow objectLow effort. Favors latency over reasoning depth.
type: "low"
-
BetaManagedAgentsEffortMedium objectMedium effort. Balances latency and reasoning depth.
type: "medium"
-
BetaManagedAgentsEffortHigh objectHigh effort. Favors reasoning depth.
type: "high"
-
BetaManagedAgentsEffortXhigh objectExtra-high effort. Not all models accept this level.
type: "xhigh"
-
BetaManagedAgentsEffortMax objectMaximum effort. Favors reasoning depth over latency.
type: "max"
-
-
inference_geo: optional stringGeographic region for model inference. When unset, requests fall through to the workspace's default_inference_geo.
-
speed: optional "standard" or "fast"Inference speed mode.
fastprovides significantly faster output token generation at premium pricing. Not all models supportfast; invalid combinations are rejected at create time.-
"standard" -
"fast"
-
-
-
multiagent: BetaManagedAgentsSessionMultiagentCoordinator or nullResolved coordinator topology with full agent definitions for each roster member.
-
type: "coordinator" -
agents: array of BetaManagedAgentsSessionThreadAgent or BetaManagedAgentsAdvisorFull
agentdefinitions the coordinator may spawn as session threads.-
BetaManagedAgentsSessionThreadAgent objectResolved
agentdefinition for a singlesession_thread. Snapshot of the agent at thread creation time. The multiagent roster is not repeated here; read it fromSession.agent.-
type: "agent" -
id: string -
description: string or null -
mcp_servers: array of BetaManagedAgentsMCPServerURLDefinition-
type: "url" -
name: string -
url: string
-
-
model: BetaManagedAgentsModelConfigModel identifier and configuration.
-
name: string -
skills: array of BetaManagedAgentsAnthropicSkill or BetaManagedAgentsCustomSkill-
BetaManagedAgentsAnthropicSkill objectA resolved Anthropic-managed skill.
-
type: "anthropic" -
skill_id: string -
version: string
-
-
BetaManagedAgentsCustomSkill objectA resolved user-created custom skill.
-
type: "custom" -
skill_id: string -
version: string
-
-
-
system: string or null -
tools: array of BetaManagedAgentsAgentToolset20260401 or BetaManagedAgentsMCPToolset or BetaManagedAgentsCustomTool-
BetaManagedAgentsAgentToolset20260401 object-
type: "agent_toolset_20260401" -
configs: array of BetaManagedAgentsAgentToolConfig-
BetaManagedAgentsBashToolConfig objectConfiguration for the bash tool.
-
type: "bash" -
enabled: boolean -
name: "bash" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
type: "always_allow"
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
type: "always_ask"
-
BetaManagedAgentsAutoPolicy objectThe 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"
-
-
-
BetaManagedAgentsEditToolConfig objectConfiguration for the edit tool.
-
type: "edit" -
enabled: boolean -
name: "edit" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsReadToolConfig objectConfiguration for the read tool.
-
type: "read" -
enabled: boolean -
name: "read" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWriteToolConfig objectConfiguration for the write tool.
-
type: "write" -
enabled: boolean -
name: "write" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGlobToolConfig objectConfiguration for the glob tool.
-
type: "glob" -
enabled: boolean -
name: "glob" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGrepToolConfig objectConfiguration for the grep tool.
-
type: "grep" -
enabled: boolean -
name: "grep" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWebFetchToolConfig objectConfiguration for the web_fetch tool.
-
type: "web_fetch" -
enabled: boolean -
name: "web_fetch" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
allowed_domains: optional array of string -
blocked_domains: optional array of string -
max_content_tokens: optional number or nullformat: int32
-
-
BetaManagedAgentsWebSearchToolConfig objectConfiguration for the web_search tool.
-
type: "web_search" -
enabled: boolean -
name: "web_search" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
allowed_domains: optional array of string -
blocked_domains: optional array of string -
user_location: optional BetaManagedAgentsUserLocation or nullApproximate user location for search result localization.
-
type: "approximate"Location precision. Only "approximate" is supported.
-
city: optional string or nullCity name.
minLength: 1, maxLength: 255
-
country: optional string or nullTwo-letter ISO 3166-1 country code, uppercase.
-
region: optional string or nullRegion or state name.
minLength: 1, maxLength: 255
-
timezone: optional string or nullIANA timezone identifier, e.g. "America/Los_Angeles".
minLength: 1, maxLength: 255
-
-
-
-
default_config: BetaManagedAgentsAgentToolsetDefaultConfigResolved default configuration for agent tools.
-
enabled: boolean -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
-
BetaManagedAgentsMCPToolset object-
type: "mcp_toolset" -
configs: array of BetaManagedAgentsMCPToolConfig-
enabled: boolean -
name: string -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
default_config: BetaManagedAgentsMCPToolsetDefaultConfigResolved default configuration for all tools from an MCP server.
-
enabled: boolean -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
mcp_server_name: string
-
-
BetaManagedAgentsCustomTool objectA custom tool as returned in API responses.
-
type: "custom" -
description: string -
input_schema: BetaManagedAgentsCustomToolInputSchemaJSON Schema for custom tool input parameters.
-
type: "object" -
properties: optional map[unknown] or null -
required: optional array of string or null
-
-
name: string
-
-
-
version: numberformat: int32
-
-
BetaManagedAgentsAdvisor objectPlatform advisor roster entry: a model the session's primary thread may consult mid-turn.
-
type: "advisor" -
model: stringThe advisor model id.
-
-
-
-
name: string -
skills: array of BetaManagedAgentsAnthropicSkill or BetaManagedAgentsCustomSkill-
BetaManagedAgentsAnthropicSkill objectA resolved Anthropic-managed skill.
-
BetaManagedAgentsCustomSkill objectA resolved user-created custom skill.
-
-
system: string or null -
tools: array of BetaManagedAgentsAgentToolset20260401 or BetaManagedAgentsMCPToolset or BetaManagedAgentsCustomTool-
BetaManagedAgentsAgentToolset20260401 object -
BetaManagedAgentsMCPToolset object -
BetaManagedAgentsCustomTool objectA custom tool as returned in API responses.
-
-
version: numberformat: int32
-
-
budget: optional BetaManagedAgentsBudgetLimit or nullA hard spend ceiling. The session stops issuing new model requests once the tracked list cost reaches
max_list_cost.-
type: "limit" -
max_list_cost: BetaMonetaryAmountA monetary amount in a specific currency.
-
amount: stringAmount in minor units of the currency, as an integer decimal string with no leading zeros: "2500" is $25.00 and "50" is fifty cents. A string rather than a number so no float rounding is ever applied.
-
currency: BetaCurrencyUppercase ISO-4217 currency code.
USDis the only currency currently supported; the accepted set is closed and grows only when a new currency is priced.
-
-
-
metadata: optional map[string]The session's full metadata bag after the update. Present when the update set non-empty metadata; absent when metadata was unchanged or cleared to empty.
-
title: optional string or nullThe session's new title. Present only when the update changed it.
-
-
BetaManagedAgentsStartEvent objectOpens a preview of a buffered event. Carries the previewed event's type and id only. Followed by zero or more event_delta events with the same event id, normally concluded by the buffered event carrying that id. If the producing model request ends without that event (an error or interrupt mid-stream), its terminal span.model_request_end closes the preview. Only sent on stream connections that opt in via event_deltas; never appears in event history.
-
type: "event_start" -
event: BetaManagedAgentsStartEventPreviewThe previewed event's type and id. The event type determines which delta types the preview's event_delta events carry: agent.message events stream content_delta fragments; agent.thinking previews are start-only — no deltas follow, and the buffered agent.thinking with the same id concludes them.
-
BetaManagedAgentsAgentMessagePreview object-
type: "agent.message" -
id: stringThe id the buffered agent.message will carry if it is emitted. Matches the event_id on this preview's event_delta events.
-
-
BetaManagedAgentsAgentThinkingPreview object-
type: "agent.thinking" -
id: stringThe id the buffered agent.thinking will carry if it is emitted. Start-only — no event_delta events follow.
-
-
-
-
BetaManagedAgentsDeltaEvent objectAn incremental update to an event that is still being streamed. Deltas are best-effort and may stop early; when the buffered event with id == event_id is produced it carries the complete content. A model request that ends early (an error or interrupt) produces no buffered event — its terminal span.model_request_end closes the preview. Only sent on stream connections that opt in via event_deltas; never appears in event history.
-
type: "event_delta" -
delta: BetaManagedAgentsDeltaContentOne fragment of the previewed event. The delta type is named for the previewed event's field it streams into: agent.message events stream content_delta fragments, each a partial element of the content array.
-
type: "content_delta" -
content: BetaManagedAgentsTextBlockRegular text content.
-
index: optional numberWhich entry in the previewed event's content array this fragment lands in. Insert content as that entry when the index is new; append to the existing entry otherwise.
format: uint32
-
-
event_id: stringThe id of the event being previewed. Matches event.id on the corresponding event_start and the buffered event that reconciles the preview.
-
-
BetaManagedAgentsSystemMessageEvent objectA mid-conversation system message event. Carries system-role content that is appended to the session as a
role: "system"turn.-
type: "system.message" -
id: stringUnique identifier for this event.
-
content: array of BetaManagedAgentsSystemContentBlockSystem content blocks. Text-only.
-
type: "text" -
text: stringThe text content.
minLength: 1
-
-
processed_at: optional string or nullA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSessionUsageEvent objectPeriodic snapshot of the session's cumulative usage and tracked list cost.
-
type: "session.usage" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
usage: BetaManagedAgentsSessionUsageSnapshotPoint-in-time snapshot of a session's cumulative usage.
-
active_seconds: optional numberCumulative time in seconds during which the session had at least one thread in running status. Overlapping activity from concurrent threads is counted once. This is the duration the session's runtime cost is priced on.
format: double
-
cache_creation: optional BetaManagedAgentsCacheCreationUsagePrompt-cache creation token usage broken down by cache lifetime.
-
ephemeral_1h_input_tokens: optional numberTokens used to create 1-hour ephemeral cache entries.
format: int32
-
ephemeral_5m_input_tokens: optional numberTokens used to create 5-minute ephemeral cache entries.
format: int32
-
-
cache_read_input_tokens: optional numberTotal tokens read from prompt cache.
format: int32
-
input_tokens: optional numberTotal input tokens consumed across all turns.
format: int32
-
list_cost: optional BetaMonetaryAmountA monetary amount in a specific currency.
-
output_tokens: optional numberTotal output tokens generated across all turns.
format: int32
-
server_tool_use: optional BetaManagedAgentsServerToolUsageCumulative count of server-executed tool invocations, broken down by tool.
-
web_fetch_requests: optional numberNumber of server-executed web fetch requests.
format: int32
-
web_search_requests: optional numberNumber of server-executed web search requests.
format: int32
-
-
-
budget: optional BetaManagedAgentsBudgetLimit or nullA hard spend ceiling. The session stops issuing new model requests once the tracked list cost reaches
max_list_cost.
-
-
Example
curl https://api.anthropic.com/v1/sessions/$SESSION_ID/events/stream \
-H 'anthropic-version: 2023-06-01' \
-H 'anthropic-beta: managed-agents-2026-04-01' \
-H "X-Api-Key: $ANTHROPIC_API_KEY"Response (200)
{
"id": "sevt_011CZkZGOp0iBcp4kaQSihUmy",
"content": [
{
"text": "Where is my order #1234?",
"type": "text"
}
],
"type": "user.message",
"processed_at": "2026-03-15T10:00:00Z"
}Sessions › Resources
Add Session Resource
POST /v1/sessions/{session_id}/resources
Add Session Resource
Path parameters
session_id: string
Headers
-
"anthropic-beta": optional array of AnthropicBetaOptional header to specify the beta version(s) you want to use.
-
string -
"message-batches-2024-09-24" or "prompt-caching-2024-07-31" or "computer-use-2024-10-22" or 43 more-
"message-batches-2024-09-24" -
"prompt-caching-2024-07-31" -
"computer-use-2024-10-22" -
"computer-use-2025-01-24" -
"pdfs-2024-09-25" -
"token-counting-2024-11-01" -
"token-efficient-tools-2025-02-19" -
"output-128k-2025-02-19" -
"files-api-2025-04-14" -
"mcp-client-2025-04-04" -
"mcp-client-2025-11-20" -
"dev-full-thinking-2025-05-14" -
"interleaved-thinking-2025-05-14" -
"code-execution-2025-05-22" -
"extended-cache-ttl-2025-04-11" -
"context-1m-2025-08-07" -
"context-management-2025-06-27" -
"model-context-window-exceeded-2025-08-26" -
"skills-2025-10-02" -
"fast-mode-2026-02-01" -
"output-300k-2026-03-24" -
"user-profiles-2026-03-24" -
"user-profiles-2026-08-18" -
"user-profiles-2026-09-04" -
"advisor-tool-2026-03-01" -
"managed-agents-2026-04-01" -
"cache-diagnosis-2026-04-07" -
"dreaming-2026-04-21" -
"thinking-token-count-2026-05-13" -
"server-side-fallback-2026-06-01" -
"server-side-fallback-2026-07-01" -
"fallback-credit-2026-06-01" -
"fallback-credit-2026-07-01" -
"agent-memory-2026-07-22" -
"mid-conversation-tool-changes-2026-07-01" -
"compact-2026-01-12" -
"computer-use-2025-11-24" -
"mcp-tunnels-2026-06-22" -
"structured-outputs-2025-11-13" -
"task-budgets-2026-03-13" -
"thinking-display-updates-2026-08-18" -
"ce-user-management-2026-07-13" -
"mid-conversation-output-config-2026-07-01" -
"thinking-binding-controls-2026-08-01" -
"mid-conversation-system-clear-at-2026-08-21" -
"compact-2026-09-04"
-
-
-
"anthropic-workspace-id": optional string
Body parameters
-
file_id: stringID of a previously uploaded file.
minLength: 1, maxLength: 128
-
type: "file" -
mount_path: optional string or nullMount path in the container. Defaults to
/mnt/session/uploads/<file_id>.minLength: 1, maxLength: 4096
Returns
-
BetaManagedAgentsFileResource object-
type: "file" -
id: string -
created_at: stringA timestamp in RFC 3339 format
format: date-time
-
file_id: string -
mount_path: string -
updated_at: stringA timestamp in RFC 3339 format
format: date-time
-
Example
curl https://api.anthropic.com/v1/sessions/$SESSION_ID/resources \
-H 'Content-Type: application/json' \
-H 'anthropic-version: 2023-06-01' \
-H 'anthropic-beta: managed-agents-2026-04-01' \
-H "X-Api-Key: $ANTHROPIC_API_KEY" \
-d '{
"file_id": "file_011CNha8iCJcU1wXNR6q4V8w",
"type": "file",
"mount_path": "/uploads/receipt.pdf"
}'Response (200)
{
"id": "sesrsc_011CZkZBJq5dWxk9fVLNcPht",
"created_at": "2026-03-15T10:00:00Z",
"file_id": "file_011CNha8iCJcU1wXNR6q4V8w",
"mount_path": "/uploads/receipt.pdf",
"type": "file",
"updated_at": "2026-03-15T10:00:00Z"
}List Session Resources
GET /v1/sessions/{session_id}/resources
List Session Resources
Path parameters
session_id: string
Query parameters
-
limit: optional numberMaximum number of resources to return per page (max 1000). If omitted, returns all resources.
format: int32
-
page: optional stringOpaque cursor from a previous response's
next_pagefield.
Headers
-
"anthropic-beta": optional array of AnthropicBetaOptional header to specify the beta version(s) you want to use.
-
string -
"message-batches-2024-09-24" or "prompt-caching-2024-07-31" or "computer-use-2024-10-22" or 43 more-
"message-batches-2024-09-24" -
"prompt-caching-2024-07-31" -
"computer-use-2024-10-22" -
"computer-use-2025-01-24" -
"pdfs-2024-09-25" -
"token-counting-2024-11-01" -
"token-efficient-tools-2025-02-19" -
"output-128k-2025-02-19" -
"files-api-2025-04-14" -
"mcp-client-2025-04-04" -
"mcp-client-2025-11-20" -
"dev-full-thinking-2025-05-14" -
"interleaved-thinking-2025-05-14" -
"code-execution-2025-05-22" -
"extended-cache-ttl-2025-04-11" -
"context-1m-2025-08-07" -
"context-management-2025-06-27" -
"model-context-window-exceeded-2025-08-26" -
"skills-2025-10-02" -
"fast-mode-2026-02-01" -
"output-300k-2026-03-24" -
"user-profiles-2026-03-24" -
"user-profiles-2026-08-18" -
"user-profiles-2026-09-04" -
"advisor-tool-2026-03-01" -
"managed-agents-2026-04-01" -
"cache-diagnosis-2026-04-07" -
"dreaming-2026-04-21" -
"thinking-token-count-2026-05-13" -
"server-side-fallback-2026-06-01" -
"server-side-fallback-2026-07-01" -
"fallback-credit-2026-06-01" -
"fallback-credit-2026-07-01" -
"agent-memory-2026-07-22" -
"mid-conversation-tool-changes-2026-07-01" -
"compact-2026-01-12" -
"computer-use-2025-11-24" -
"mcp-tunnels-2026-06-22" -
"structured-outputs-2025-11-13" -
"task-budgets-2026-03-13" -
"thinking-display-updates-2026-08-18" -
"ce-user-management-2026-07-13" -
"mid-conversation-output-config-2026-07-01" -
"thinking-binding-controls-2026-08-01" -
"mid-conversation-system-clear-at-2026-08-21" -
"compact-2026-09-04"
-
-
-
"anthropic-workspace-id": optional string
Returns
-
data: array of BetaManagedAgentsSessionResourceResources for the session, ordered by
created_at.-
BetaManagedAgentsGitHubRepositoryResource object-
type: "github_repository" -
id: string -
created_at: stringA timestamp in RFC 3339 format
format: date-time
-
mount_path: string -
updated_at: stringA timestamp in RFC 3339 format
format: date-time
-
url: string -
checkout: optional BetaManagedAgentsBranchCheckout or BetaManagedAgentsCommitCheckout or null-
BetaManagedAgentsBranchCheckout object-
type: "branch" -
name: stringBranch name to check out.
minLength: 1, maxLength: 255
-
-
BetaManagedAgentsCommitCheckout object-
type: "commit" -
sha: stringFull commit SHA to check out.
minLength: 7, maxLength: 64
-
-
-
-
BetaManagedAgentsFileResource object-
type: "file" -
id: string -
created_at: stringA timestamp in RFC 3339 format
format: date-time
-
file_id: string -
mount_path: string -
updated_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsMemoryStoreResource objectA memory store attached to an agent session.
-
type: "memory_store" -
memory_store_id: stringThe memory store ID (memstore_...). Must belong to the caller's organization and workspace.
-
access: optional "read_write" or "read_only" or nullAccess mode for an attached memory store.
-
"read_write" -
"read_only"
-
-
description: optional stringDescription of the memory store, snapshotted at attach time. Rendered into the agent's system prompt. Empty string when the store has no description.
-
instructions: optional string or nullPer-attachment guidance for the agent on how to use this store. Rendered into the memory section of the system prompt. Max 4096 chars.
maxLength: 4096
-
mount_path: optional string or nullFilesystem path where the store is mounted in the session container, e.g. /mnt/memory/user-preferences. Derived from the store's name. Output-only.
-
name: optional string or nullDisplay name of the memory store, snapshotted at attach time. Later edits to the store's name do not propagate to this resource.
-
-
-
next_page: optional string or nullOpaque cursor for the next page. Null when no more results.
Example
curl https://api.anthropic.com/v1/sessions/$SESSION_ID/resources \
-H 'anthropic-version: 2023-06-01' \
-H 'anthropic-beta: managed-agents-2026-04-01' \
-H "X-Api-Key: $ANTHROPIC_API_KEY"Response (200)
{
"data": [
{
"id": "sesrsc_011CZkZBJq5dWxk9fVLNcPht",
"created_at": "2026-03-15T10:00:00Z",
"file_id": "file_011CNha8iCJcU1wXNR6q4V8w",
"mount_path": "/uploads/receipt.pdf",
"type": "file",
"updated_at": "2026-03-15T10:00:00Z"
},
{
"id": "sesrsc_011CZkZCKr6eXyl0gWMOdQiu",
"created_at": "2026-03-15T10:00:00Z",
"mount_path": "/workspace/example-repo",
"type": "github_repository",
"updated_at": "2026-03-15T10:00:00Z",
"url": "https://github.com/example-org/example-repo",
"checkout": {
"name": "main",
"type": "branch"
}
}
],
"next_page": "page_MjAyNS0wNS0xNFQwMDowMDowMFo="
}Get Session Resource
GET /v1/sessions/{session_id}/resources/{resource_id}
Get Session Resource
Path parameters
-
session_id: string -
resource_id: string
Headers
-
"anthropic-beta": optional array of AnthropicBetaOptional header to specify the beta version(s) you want to use.
-
string -
"message-batches-2024-09-24" or "prompt-caching-2024-07-31" or "computer-use-2024-10-22" or 43 more-
"message-batches-2024-09-24" -
"prompt-caching-2024-07-31" -
"computer-use-2024-10-22" -
"computer-use-2025-01-24" -
"pdfs-2024-09-25" -
"token-counting-2024-11-01" -
"token-efficient-tools-2025-02-19" -
"output-128k-2025-02-19" -
"files-api-2025-04-14" -
"mcp-client-2025-04-04" -
"mcp-client-2025-11-20" -
"dev-full-thinking-2025-05-14" -
"interleaved-thinking-2025-05-14" -
"code-execution-2025-05-22" -
"extended-cache-ttl-2025-04-11" -
"context-1m-2025-08-07" -
"context-management-2025-06-27" -
"model-context-window-exceeded-2025-08-26" -
"skills-2025-10-02" -
"fast-mode-2026-02-01" -
"output-300k-2026-03-24" -
"user-profiles-2026-03-24" -
"user-profiles-2026-08-18" -
"user-profiles-2026-09-04" -
"advisor-tool-2026-03-01" -
"managed-agents-2026-04-01" -
"cache-diagnosis-2026-04-07" -
"dreaming-2026-04-21" -
"thinking-token-count-2026-05-13" -
"server-side-fallback-2026-06-01" -
"server-side-fallback-2026-07-01" -
"fallback-credit-2026-06-01" -
"fallback-credit-2026-07-01" -
"agent-memory-2026-07-22" -
"mid-conversation-tool-changes-2026-07-01" -
"compact-2026-01-12" -
"computer-use-2025-11-24" -
"mcp-tunnels-2026-06-22" -
"structured-outputs-2025-11-13" -
"task-budgets-2026-03-13" -
"thinking-display-updates-2026-08-18" -
"ce-user-management-2026-07-13" -
"mid-conversation-output-config-2026-07-01" -
"thinking-binding-controls-2026-08-01" -
"mid-conversation-system-clear-at-2026-08-21" -
"compact-2026-09-04"
-
-
-
"anthropic-workspace-id": optional string
Returns
-
BetaManagedAgentsGitHubRepositoryResource object-
type: "github_repository" -
id: string -
created_at: stringA timestamp in RFC 3339 format
format: date-time
-
mount_path: string -
updated_at: stringA timestamp in RFC 3339 format
format: date-time
-
url: string -
checkout: optional BetaManagedAgentsBranchCheckout or BetaManagedAgentsCommitCheckout or null-
BetaManagedAgentsBranchCheckout object-
type: "branch" -
name: stringBranch name to check out.
minLength: 1, maxLength: 255
-
-
BetaManagedAgentsCommitCheckout object-
type: "commit" -
sha: stringFull commit SHA to check out.
minLength: 7, maxLength: 64
-
-
-
-
BetaManagedAgentsFileResource object-
type: "file" -
id: string -
created_at: stringA timestamp in RFC 3339 format
format: date-time
-
file_id: string -
mount_path: string -
updated_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsMemoryStoreResource objectA memory store attached to an agent session.
-
type: "memory_store" -
memory_store_id: stringThe memory store ID (memstore_...). Must belong to the caller's organization and workspace.
-
access: optional "read_write" or "read_only" or nullAccess mode for an attached memory store.
-
"read_write" -
"read_only"
-
-
description: optional stringDescription of the memory store, snapshotted at attach time. Rendered into the agent's system prompt. Empty string when the store has no description.
-
instructions: optional string or nullPer-attachment guidance for the agent on how to use this store. Rendered into the memory section of the system prompt. Max 4096 chars.
maxLength: 4096
-
mount_path: optional string or nullFilesystem path where the store is mounted in the session container, e.g. /mnt/memory/user-preferences. Derived from the store's name. Output-only.
-
name: optional string or nullDisplay name of the memory store, snapshotted at attach time. Later edits to the store's name do not propagate to this resource.
-
Example
curl https://api.anthropic.com/v1/sessions/$SESSION_ID/resources/$RESOURCE_ID \
-H 'anthropic-version: 2023-06-01' \
-H 'anthropic-beta: managed-agents-2026-04-01' \
-H "X-Api-Key: $ANTHROPIC_API_KEY"Response (200)
{
"id": "sesrsc_011CZkZCKr6eXyl0gWMOdQiu",
"created_at": "2026-03-15T10:00:00Z",
"mount_path": "/workspace/example-repo",
"type": "github_repository",
"updated_at": "2026-03-15T10:00:00Z",
"url": "https://github.com/example-org/example-repo",
"checkout": {
"name": "main",
"type": "branch"
}
}Update Session Resource
POST /v1/sessions/{session_id}/resources/{resource_id}
Update Session Resource
Path parameters
-
session_id: string -
resource_id: string
Headers
-
"anthropic-beta": optional array of AnthropicBetaOptional header to specify the beta version(s) you want to use.
-
string -
"message-batches-2024-09-24" or "prompt-caching-2024-07-31" or "computer-use-2024-10-22" or 43 more-
"message-batches-2024-09-24" -
"prompt-caching-2024-07-31" -
"computer-use-2024-10-22" -
"computer-use-2025-01-24" -
"pdfs-2024-09-25" -
"token-counting-2024-11-01" -
"token-efficient-tools-2025-02-19" -
"output-128k-2025-02-19" -
"files-api-2025-04-14" -
"mcp-client-2025-04-04" -
"mcp-client-2025-11-20" -
"dev-full-thinking-2025-05-14" -
"interleaved-thinking-2025-05-14" -
"code-execution-2025-05-22" -
"extended-cache-ttl-2025-04-11" -
"context-1m-2025-08-07" -
"context-management-2025-06-27" -
"model-context-window-exceeded-2025-08-26" -
"skills-2025-10-02" -
"fast-mode-2026-02-01" -
"output-300k-2026-03-24" -
"user-profiles-2026-03-24" -
"user-profiles-2026-08-18" -
"user-profiles-2026-09-04" -
"advisor-tool-2026-03-01" -
"managed-agents-2026-04-01" -
"cache-diagnosis-2026-04-07" -
"dreaming-2026-04-21" -
"thinking-token-count-2026-05-13" -
"server-side-fallback-2026-06-01" -
"server-side-fallback-2026-07-01" -
"fallback-credit-2026-06-01" -
"fallback-credit-2026-07-01" -
"agent-memory-2026-07-22" -
"mid-conversation-tool-changes-2026-07-01" -
"compact-2026-01-12" -
"computer-use-2025-11-24" -
"mcp-tunnels-2026-06-22" -
"structured-outputs-2025-11-13" -
"task-budgets-2026-03-13" -
"thinking-display-updates-2026-08-18" -
"ce-user-management-2026-07-13" -
"mid-conversation-output-config-2026-07-01" -
"thinking-binding-controls-2026-08-01" -
"mid-conversation-system-clear-at-2026-08-21" -
"compact-2026-09-04"
-
-
-
"anthropic-workspace-id": optional string
Body parameters
-
authorization_token: stringNew authorization token for the resource. Currently only
github_repositoryresources support token rotation.minLength: 1, maxLength: 4096
Returns
-
BetaManagedAgentsGitHubRepositoryResource object-
type: "github_repository" -
id: string -
created_at: stringA timestamp in RFC 3339 format
format: date-time
-
mount_path: string -
updated_at: stringA timestamp in RFC 3339 format
format: date-time
-
url: string -
checkout: optional BetaManagedAgentsBranchCheckout or BetaManagedAgentsCommitCheckout or null-
BetaManagedAgentsBranchCheckout object-
type: "branch" -
name: stringBranch name to check out.
minLength: 1, maxLength: 255
-
-
BetaManagedAgentsCommitCheckout object-
type: "commit" -
sha: stringFull commit SHA to check out.
minLength: 7, maxLength: 64
-
-
-
-
BetaManagedAgentsFileResource object-
type: "file" -
id: string -
created_at: stringA timestamp in RFC 3339 format
format: date-time
-
file_id: string -
mount_path: string -
updated_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsMemoryStoreResource objectA memory store attached to an agent session.
-
type: "memory_store" -
memory_store_id: stringThe memory store ID (memstore_...). Must belong to the caller's organization and workspace.
-
access: optional "read_write" or "read_only" or nullAccess mode for an attached memory store.
-
"read_write" -
"read_only"
-
-
description: optional stringDescription of the memory store, snapshotted at attach time. Rendered into the agent's system prompt. Empty string when the store has no description.
-
instructions: optional string or nullPer-attachment guidance for the agent on how to use this store. Rendered into the memory section of the system prompt. Max 4096 chars.
maxLength: 4096
-
mount_path: optional string or nullFilesystem path where the store is mounted in the session container, e.g. /mnt/memory/user-preferences. Derived from the store's name. Output-only.
-
name: optional string or nullDisplay name of the memory store, snapshotted at attach time. Later edits to the store's name do not propagate to this resource.
-
Example
curl https://api.anthropic.com/v1/sessions/$SESSION_ID/resources/$RESOURCE_ID \
-H 'Content-Type: application/json' \
-H 'anthropic-version: 2023-06-01' \
-H 'anthropic-beta: managed-agents-2026-04-01' \
-H "X-Api-Key: $ANTHROPIC_API_KEY" \
-d '{
"authorization_token": "ghp_exampletoken"
}'Response (200)
{
"id": "sesrsc_011CZkZCKr6eXyl0gWMOdQiu",
"created_at": "2026-03-15T10:00:00Z",
"mount_path": "/workspace/example-repo",
"type": "github_repository",
"updated_at": "2026-03-15T10:00:00Z",
"url": "https://github.com/example-org/example-repo",
"checkout": {
"name": "main",
"type": "branch"
}
}Delete Session Resource
DELETE /v1/sessions/{session_id}/resources/{resource_id}
Delete Session Resource
Path parameters
-
session_id: string -
resource_id: string
Headers
-
"anthropic-beta": optional array of AnthropicBetaOptional header to specify the beta version(s) you want to use.
-
string -
"message-batches-2024-09-24" or "prompt-caching-2024-07-31" or "computer-use-2024-10-22" or 43 more-
"message-batches-2024-09-24" -
"prompt-caching-2024-07-31" -
"computer-use-2024-10-22" -
"computer-use-2025-01-24" -
"pdfs-2024-09-25" -
"token-counting-2024-11-01" -
"token-efficient-tools-2025-02-19" -
"output-128k-2025-02-19" -
"files-api-2025-04-14" -
"mcp-client-2025-04-04" -
"mcp-client-2025-11-20" -
"dev-full-thinking-2025-05-14" -
"interleaved-thinking-2025-05-14" -
"code-execution-2025-05-22" -
"extended-cache-ttl-2025-04-11" -
"context-1m-2025-08-07" -
"context-management-2025-06-27" -
"model-context-window-exceeded-2025-08-26" -
"skills-2025-10-02" -
"fast-mode-2026-02-01" -
"output-300k-2026-03-24" -
"user-profiles-2026-03-24" -
"user-profiles-2026-08-18" -
"user-profiles-2026-09-04" -
"advisor-tool-2026-03-01" -
"managed-agents-2026-04-01" -
"cache-diagnosis-2026-04-07" -
"dreaming-2026-04-21" -
"thinking-token-count-2026-05-13" -
"server-side-fallback-2026-06-01" -
"server-side-fallback-2026-07-01" -
"fallback-credit-2026-06-01" -
"fallback-credit-2026-07-01" -
"agent-memory-2026-07-22" -
"mid-conversation-tool-changes-2026-07-01" -
"compact-2026-01-12" -
"computer-use-2025-11-24" -
"mcp-tunnels-2026-06-22" -
"structured-outputs-2025-11-13" -
"task-budgets-2026-03-13" -
"thinking-display-updates-2026-08-18" -
"ce-user-management-2026-07-13" -
"mid-conversation-output-config-2026-07-01" -
"thinking-binding-controls-2026-08-01" -
"mid-conversation-system-clear-at-2026-08-21" -
"compact-2026-09-04"
-
-
-
"anthropic-workspace-id": optional string
Returns
-
BetaManagedAgentsDeleteSessionResource objectConfirmation of resource deletion.
-
type: "session_resource_deleted" -
id: string
-
Example
curl https://api.anthropic.com/v1/sessions/$SESSION_ID/resources/$RESOURCE_ID \
-X DELETE \
-H 'anthropic-version: 2023-06-01' \
-H 'anthropic-beta: managed-agents-2026-04-01' \
-H "X-Api-Key: $ANTHROPIC_API_KEY"Response (200)
{
"id": "sesrsc_011CZkZBJq5dWxk9fVLNcPht",
"type": "session_resource_deleted"
}Sessions › Threads
List Session Threads
GET /v1/sessions/{session_id}/threads
List Session Threads
Path parameters
session_id: string
Query parameters
-
limit: optional numberMaximum results per page. Defaults to 1000.
format: int32
-
page: optional stringOpaque pagination cursor from a previous response's
next_page. Forward-only.
Headers
-
"anthropic-beta": optional array of AnthropicBetaOptional header to specify the beta version(s) you want to use.
-
string -
"message-batches-2024-09-24" or "prompt-caching-2024-07-31" or "computer-use-2024-10-22" or 43 more-
"message-batches-2024-09-24" -
"prompt-caching-2024-07-31" -
"computer-use-2024-10-22" -
"computer-use-2025-01-24" -
"pdfs-2024-09-25" -
"token-counting-2024-11-01" -
"token-efficient-tools-2025-02-19" -
"output-128k-2025-02-19" -
"files-api-2025-04-14" -
"mcp-client-2025-04-04" -
"mcp-client-2025-11-20" -
"dev-full-thinking-2025-05-14" -
"interleaved-thinking-2025-05-14" -
"code-execution-2025-05-22" -
"extended-cache-ttl-2025-04-11" -
"context-1m-2025-08-07" -
"context-management-2025-06-27" -
"model-context-window-exceeded-2025-08-26" -
"skills-2025-10-02" -
"fast-mode-2026-02-01" -
"output-300k-2026-03-24" -
"user-profiles-2026-03-24" -
"user-profiles-2026-08-18" -
"user-profiles-2026-09-04" -
"advisor-tool-2026-03-01" -
"managed-agents-2026-04-01" -
"cache-diagnosis-2026-04-07" -
"dreaming-2026-04-21" -
"thinking-token-count-2026-05-13" -
"server-side-fallback-2026-06-01" -
"server-side-fallback-2026-07-01" -
"fallback-credit-2026-06-01" -
"fallback-credit-2026-07-01" -
"agent-memory-2026-07-22" -
"mid-conversation-tool-changes-2026-07-01" -
"compact-2026-01-12" -
"computer-use-2025-11-24" -
"mcp-tunnels-2026-06-22" -
"structured-outputs-2025-11-13" -
"task-budgets-2026-03-13" -
"thinking-display-updates-2026-08-18" -
"ce-user-management-2026-07-13" -
"mid-conversation-output-config-2026-07-01" -
"thinking-binding-controls-2026-08-01" -
"mid-conversation-system-clear-at-2026-08-21" -
"compact-2026-09-04"
-
-
-
"anthropic-workspace-id": optional string
Returns
-
data: optional array of BetaManagedAgentsSessionThreadThreads in the session, primary first then children in spawn order.
-
type: "session_thread" -
id: stringUnique identifier for this thread.
-
agent: BetaManagedAgentsSessionThreadAgent or BetaManagedAgentsAdvisorThe resolved agent a session thread runs: a saved-agent snapshot, the platform advisor entry, or an inline-defined (ephemeral) agent snapshot.
-
BetaManagedAgentsSessionThreadAgent objectResolved
agentdefinition for a singlesession_thread. Snapshot of the agent at thread creation time. The multiagent roster is not repeated here; read it fromSession.agent.-
type: "agent" -
id: string -
description: string or null -
mcp_servers: array of BetaManagedAgentsMCPServerURLDefinition-
type: "url" -
name: string -
url: string
-
-
model: BetaManagedAgentsModelConfigModel identifier and configuration.
-
id: BetaManagedAgentsModelThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1" or "claude-sonnet-5" or "claude-fable-5" or 11 moreThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1"Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows
-
"claude-sonnet-5"High-performance model for coding and agents
-
"claude-fable-5"Next generation of intelligence for the hardest knowledge work and coding problems
-
"claude-opus-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-8"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-7"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-6"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-6"Best combination of speed and intelligence
-
"claude-haiku-4-5"Fastest model with near-frontier intelligence
-
"claude-haiku-4-5-20251001"Fastest model with near-frontier intelligence
-
"claude-opus-4-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-5-20251101"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-5"High-performance model for agents and coding
-
"claude-sonnet-4-5-20250929"High-performance model for agents and coding
-
-
string
-
-
effort: optional BetaManagedAgentsEffortLow or BetaManagedAgentsEffortMedium or BetaManagedAgentsEffortHigh or 2 moreHow hard Claude works on each turn. Sets
output_config.efforton every Messages call the session makes.-
BetaManagedAgentsEffortLow objectLow effort. Favors latency over reasoning depth.
type: "low"
-
BetaManagedAgentsEffortMedium objectMedium effort. Balances latency and reasoning depth.
type: "medium"
-
BetaManagedAgentsEffortHigh objectHigh effort. Favors reasoning depth.
type: "high"
-
BetaManagedAgentsEffortXhigh objectExtra-high effort. Not all models accept this level.
type: "xhigh"
-
BetaManagedAgentsEffortMax objectMaximum effort. Favors reasoning depth over latency.
type: "max"
-
-
inference_geo: optional stringGeographic region for model inference. When unset, requests fall through to the workspace's default_inference_geo.
-
speed: optional "standard" or "fast"Inference speed mode.
fastprovides significantly faster output token generation at premium pricing. Not all models supportfast; invalid combinations are rejected at create time.-
"standard" -
"fast"
-
-
-
name: string -
skills: array of BetaManagedAgentsAnthropicSkill or BetaManagedAgentsCustomSkill-
BetaManagedAgentsAnthropicSkill objectA resolved Anthropic-managed skill.
-
type: "anthropic" -
skill_id: string -
version: string
-
-
BetaManagedAgentsCustomSkill objectA resolved user-created custom skill.
-
type: "custom" -
skill_id: string -
version: string
-
-
-
system: string or null -
tools: array of BetaManagedAgentsAgentToolset20260401 or BetaManagedAgentsMCPToolset or BetaManagedAgentsCustomTool-
BetaManagedAgentsAgentToolset20260401 object-
type: "agent_toolset_20260401" -
configs: array of BetaManagedAgentsAgentToolConfig-
BetaManagedAgentsBashToolConfig objectConfiguration for the bash tool.
-
type: "bash" -
enabled: boolean -
name: "bash" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
type: "always_allow"
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
type: "always_ask"
-
BetaManagedAgentsAutoPolicy objectThe 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"
-
-
-
BetaManagedAgentsEditToolConfig objectConfiguration for the edit tool.
-
type: "edit" -
enabled: boolean -
name: "edit" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsReadToolConfig objectConfiguration for the read tool.
-
type: "read" -
enabled: boolean -
name: "read" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWriteToolConfig objectConfiguration for the write tool.
-
type: "write" -
enabled: boolean -
name: "write" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGlobToolConfig objectConfiguration for the glob tool.
-
type: "glob" -
enabled: boolean -
name: "glob" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGrepToolConfig objectConfiguration for the grep tool.
-
type: "grep" -
enabled: boolean -
name: "grep" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWebFetchToolConfig objectConfiguration for the web_fetch tool.
-
type: "web_fetch" -
enabled: boolean -
name: "web_fetch" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
allowed_domains: optional array of string -
blocked_domains: optional array of string -
max_content_tokens: optional number or nullformat: int32
-
-
BetaManagedAgentsWebSearchToolConfig objectConfiguration for the web_search tool.
-
type: "web_search" -
enabled: boolean -
name: "web_search" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
allowed_domains: optional array of string -
blocked_domains: optional array of string -
user_location: optional BetaManagedAgentsUserLocation or nullApproximate user location for search result localization.
-
type: "approximate"Location precision. Only "approximate" is supported.
-
city: optional string or nullCity name.
minLength: 1, maxLength: 255
-
country: optional string or nullTwo-letter ISO 3166-1 country code, uppercase.
-
region: optional string or nullRegion or state name.
minLength: 1, maxLength: 255
-
timezone: optional string or nullIANA timezone identifier, e.g. "America/Los_Angeles".
minLength: 1, maxLength: 255
-
-
-
-
default_config: BetaManagedAgentsAgentToolsetDefaultConfigResolved default configuration for agent tools.
-
enabled: boolean -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
-
BetaManagedAgentsMCPToolset object-
type: "mcp_toolset" -
configs: array of BetaManagedAgentsMCPToolConfig-
enabled: boolean -
name: string -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
default_config: BetaManagedAgentsMCPToolsetDefaultConfigResolved default configuration for all tools from an MCP server.
-
enabled: boolean -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
mcp_server_name: string
-
-
BetaManagedAgentsCustomTool objectA custom tool as returned in API responses.
-
type: "custom" -
description: string -
input_schema: BetaManagedAgentsCustomToolInputSchemaJSON Schema for custom tool input parameters.
-
type: "object" -
properties: optional map[unknown] or null -
required: optional array of string or null
-
-
name: string
-
-
-
version: numberformat: int32
-
-
BetaManagedAgentsAdvisor objectPlatform advisor roster entry: a model the session's primary thread may consult mid-turn.
-
type: "advisor" -
model: stringThe advisor model id.
-
-
-
archived_at: string or nullA timestamp in RFC 3339 format
format: date-time
-
created_at: stringA timestamp in RFC 3339 format
format: date-time
-
parent_thread_id: string or nullParent thread that spawned this thread. Null for the primary thread.
-
session_id: stringThe session this thread belongs to.
-
stats: BetaManagedAgentsSessionThreadStats or nullTiming statistics for a session thread.
-
active_seconds: optional numberCumulative time in seconds the thread spent actively running. Excludes idle time.
format: double
-
duration_seconds: optional numberElapsed time since thread creation in seconds. For archived threads, frozen at the final update.
format: double
-
startup_seconds: optional numberTime in seconds for the thread to begin running. Zero for child threads, which start immediately.
format: double
-
-
status: BetaManagedAgentsSessionThreadStatusSessionThreadStatus enum
-
"running" -
"idle" -
"rescheduling" -
"terminated"
-
-
updated_at: stringA timestamp in RFC 3339 format
format: date-time
-
usage: BetaManagedAgentsSessionThreadUsage or nullCumulative token usage for a session thread across all turns.
-
active_seconds: optional numberCumulative time in seconds this thread spent in running status. Equal to
stats.active_seconds; surfaced here so a thread's usage carries every quantity its cost is priced on.format: double
-
cache_creation: optional BetaManagedAgentsCacheCreationUsagePrompt-cache creation token usage broken down by cache lifetime.
-
ephemeral_1h_input_tokens: optional numberTokens used to create 1-hour ephemeral cache entries.
format: int32
-
ephemeral_5m_input_tokens: optional numberTokens used to create 5-minute ephemeral cache entries.
format: int32
-
-
cache_read_input_tokens: optional numberTotal tokens read from prompt cache.
format: int32
-
input_tokens: optional numberTotal input tokens consumed across all turns.
format: int32
-
list_cost: optional BetaMonetaryAmount or nullA monetary amount in a specific currency.
-
amount: stringAmount in minor units of the currency, as an integer decimal string with no leading zeros: "2500" is $25.00 and "50" is fifty cents. A string rather than a number so no float rounding is ever applied.
-
currency: BetaCurrencyUppercase ISO-4217 currency code.
USDis the only currency currently supported; the accepted set is closed and grows only when a new currency is priced.
-
-
output_tokens: optional numberTotal output tokens generated across all turns.
format: int32
-
server_tool_use: optional BetaManagedAgentsServerToolUsage or nullCumulative count of server-executed tool invocations, broken down by tool.
-
web_fetch_requests: optional numberNumber of server-executed web fetch requests.
format: int32
-
web_search_requests: optional numberNumber of server-executed web search requests.
format: int32
-
-
-
-
next_page: optional string or nullOpaque cursor for the next page. Null when no more results.
Example
curl https://api.anthropic.com/v1/sessions/$SESSION_ID/threads \
-H 'anthropic-version: 2023-06-01' \
-H 'anthropic-beta: managed-agents-2026-04-01' \
-H "X-Api-Key: $ANTHROPIC_API_KEY"Response (200)
{
"data": [
{
"id": "sthr_011CZkZVWa6oIjw0rgXZpnBt",
"agent": {
"id": "agent_011CZkYqphY8vELVzwCUpqiQ",
"description": "A focused research subagent.",
"mcp_servers": [
{
"name": "example-mcp",
"type": "url",
"url": "https://example-server.modelcontextprotocol.io/sse"
}
],
"model": {
"id": "claude-opus-5",
"effort": {
"type": "low"
},
"inference_geo": "inference_geo",
"speed": "standard"
},
"name": "Researcher",
"skills": [
{
"skill_id": "xlsx",
"type": "anthropic",
"version": "1"
}
],
"system": "You are a research subagent that gathers and summarises sources for the coordinating agent.",
"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",
"version": 1
},
"archived_at": null,
"created_at": "2026-03-15T10:00:00Z",
"parent_thread_id": null,
"session_id": "sesn_011CZkZAtmR3yMPDzynEDxu7",
"stats": {
"active_seconds": 0,
"duration_seconds": 0,
"startup_seconds": 0
},
"status": "idle",
"type": "session_thread",
"updated_at": "2026-03-15T10:00:00Z",
"usage": {
"active_seconds": 0,
"cache_creation": {
"ephemeral_1h_input_tokens": 0,
"ephemeral_5m_input_tokens": 0
},
"cache_read_input_tokens": 0,
"input_tokens": 0,
"list_cost": {
"amount": "2500",
"currency": "USD"
},
"output_tokens": 0,
"server_tool_use": {
"web_fetch_requests": 0,
"web_search_requests": 3
}
}
}
],
"next_page": "page_MjAyNS0wNS0xNFQwMDowMDowMFo="
}Get Session Thread
GET /v1/sessions/{session_id}/threads/{thread_id}
Get Session Thread
Path parameters
-
session_id: string -
thread_id: string
Headers
-
"anthropic-beta": optional array of AnthropicBetaOptional header to specify the beta version(s) you want to use.
-
string -
"message-batches-2024-09-24" or "prompt-caching-2024-07-31" or "computer-use-2024-10-22" or 43 more-
"message-batches-2024-09-24" -
"prompt-caching-2024-07-31" -
"computer-use-2024-10-22" -
"computer-use-2025-01-24" -
"pdfs-2024-09-25" -
"token-counting-2024-11-01" -
"token-efficient-tools-2025-02-19" -
"output-128k-2025-02-19" -
"files-api-2025-04-14" -
"mcp-client-2025-04-04" -
"mcp-client-2025-11-20" -
"dev-full-thinking-2025-05-14" -
"interleaved-thinking-2025-05-14" -
"code-execution-2025-05-22" -
"extended-cache-ttl-2025-04-11" -
"context-1m-2025-08-07" -
"context-management-2025-06-27" -
"model-context-window-exceeded-2025-08-26" -
"skills-2025-10-02" -
"fast-mode-2026-02-01" -
"output-300k-2026-03-24" -
"user-profiles-2026-03-24" -
"user-profiles-2026-08-18" -
"user-profiles-2026-09-04" -
"advisor-tool-2026-03-01" -
"managed-agents-2026-04-01" -
"cache-diagnosis-2026-04-07" -
"dreaming-2026-04-21" -
"thinking-token-count-2026-05-13" -
"server-side-fallback-2026-06-01" -
"server-side-fallback-2026-07-01" -
"fallback-credit-2026-06-01" -
"fallback-credit-2026-07-01" -
"agent-memory-2026-07-22" -
"mid-conversation-tool-changes-2026-07-01" -
"compact-2026-01-12" -
"computer-use-2025-11-24" -
"mcp-tunnels-2026-06-22" -
"structured-outputs-2025-11-13" -
"task-budgets-2026-03-13" -
"thinking-display-updates-2026-08-18" -
"ce-user-management-2026-07-13" -
"mid-conversation-output-config-2026-07-01" -
"thinking-binding-controls-2026-08-01" -
"mid-conversation-system-clear-at-2026-08-21" -
"compact-2026-09-04"
-
-
-
"anthropic-workspace-id": optional string
Returns
-
BetaManagedAgentsSessionThread objectAn execution thread within a
session. Each session has one primary thread plus zero or more child threads spawned by the coordinator.-
type: "session_thread" -
id: stringUnique identifier for this thread.
-
agent: BetaManagedAgentsSessionThreadAgent or BetaManagedAgentsAdvisorThe resolved agent a session thread runs: a saved-agent snapshot, the platform advisor entry, or an inline-defined (ephemeral) agent snapshot.
-
BetaManagedAgentsSessionThreadAgent objectResolved
agentdefinition for a singlesession_thread. Snapshot of the agent at thread creation time. The multiagent roster is not repeated here; read it fromSession.agent.-
type: "agent" -
id: string -
description: string or null -
mcp_servers: array of BetaManagedAgentsMCPServerURLDefinition-
type: "url" -
name: string -
url: string
-
-
model: BetaManagedAgentsModelConfigModel identifier and configuration.
-
id: BetaManagedAgentsModelThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1" or "claude-sonnet-5" or "claude-fable-5" or 11 moreThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1"Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows
-
"claude-sonnet-5"High-performance model for coding and agents
-
"claude-fable-5"Next generation of intelligence for the hardest knowledge work and coding problems
-
"claude-opus-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-8"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-7"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-6"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-6"Best combination of speed and intelligence
-
"claude-haiku-4-5"Fastest model with near-frontier intelligence
-
"claude-haiku-4-5-20251001"Fastest model with near-frontier intelligence
-
"claude-opus-4-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-5-20251101"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-5"High-performance model for agents and coding
-
"claude-sonnet-4-5-20250929"High-performance model for agents and coding
-
-
string
-
-
effort: optional BetaManagedAgentsEffortLow or BetaManagedAgentsEffortMedium or BetaManagedAgentsEffortHigh or 2 moreHow hard Claude works on each turn. Sets
output_config.efforton every Messages call the session makes.-
BetaManagedAgentsEffortLow objectLow effort. Favors latency over reasoning depth.
type: "low"
-
BetaManagedAgentsEffortMedium objectMedium effort. Balances latency and reasoning depth.
type: "medium"
-
BetaManagedAgentsEffortHigh objectHigh effort. Favors reasoning depth.
type: "high"
-
BetaManagedAgentsEffortXhigh objectExtra-high effort. Not all models accept this level.
type: "xhigh"
-
BetaManagedAgentsEffortMax objectMaximum effort. Favors reasoning depth over latency.
type: "max"
-
-
inference_geo: optional stringGeographic region for model inference. When unset, requests fall through to the workspace's default_inference_geo.
-
speed: optional "standard" or "fast"Inference speed mode.
fastprovides significantly faster output token generation at premium pricing. Not all models supportfast; invalid combinations are rejected at create time.-
"standard" -
"fast"
-
-
-
name: string -
skills: array of BetaManagedAgentsAnthropicSkill or BetaManagedAgentsCustomSkill-
BetaManagedAgentsAnthropicSkill objectA resolved Anthropic-managed skill.
-
type: "anthropic" -
skill_id: string -
version: string
-
-
BetaManagedAgentsCustomSkill objectA resolved user-created custom skill.
-
type: "custom" -
skill_id: string -
version: string
-
-
-
system: string or null -
tools: array of BetaManagedAgentsAgentToolset20260401 or BetaManagedAgentsMCPToolset or BetaManagedAgentsCustomTool-
BetaManagedAgentsAgentToolset20260401 object-
type: "agent_toolset_20260401" -
configs: array of BetaManagedAgentsAgentToolConfig-
BetaManagedAgentsBashToolConfig objectConfiguration for the bash tool.
-
type: "bash" -
enabled: boolean -
name: "bash" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
type: "always_allow"
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
type: "always_ask"
-
BetaManagedAgentsAutoPolicy objectThe 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"
-
-
-
BetaManagedAgentsEditToolConfig objectConfiguration for the edit tool.
-
type: "edit" -
enabled: boolean -
name: "edit" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsReadToolConfig objectConfiguration for the read tool.
-
type: "read" -
enabled: boolean -
name: "read" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWriteToolConfig objectConfiguration for the write tool.
-
type: "write" -
enabled: boolean -
name: "write" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGlobToolConfig objectConfiguration for the glob tool.
-
type: "glob" -
enabled: boolean -
name: "glob" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGrepToolConfig objectConfiguration for the grep tool.
-
type: "grep" -
enabled: boolean -
name: "grep" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWebFetchToolConfig objectConfiguration for the web_fetch tool.
-
type: "web_fetch" -
enabled: boolean -
name: "web_fetch" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
allowed_domains: optional array of string -
blocked_domains: optional array of string -
max_content_tokens: optional number or nullformat: int32
-
-
BetaManagedAgentsWebSearchToolConfig objectConfiguration for the web_search tool.
-
type: "web_search" -
enabled: boolean -
name: "web_search" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
allowed_domains: optional array of string -
blocked_domains: optional array of string -
user_location: optional BetaManagedAgentsUserLocation or nullApproximate user location for search result localization.
-
type: "approximate"Location precision. Only "approximate" is supported.
-
city: optional string or nullCity name.
minLength: 1, maxLength: 255
-
country: optional string or nullTwo-letter ISO 3166-1 country code, uppercase.
-
region: optional string or nullRegion or state name.
minLength: 1, maxLength: 255
-
timezone: optional string or nullIANA timezone identifier, e.g. "America/Los_Angeles".
minLength: 1, maxLength: 255
-
-
-
-
default_config: BetaManagedAgentsAgentToolsetDefaultConfigResolved default configuration for agent tools.
-
enabled: boolean -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
-
BetaManagedAgentsMCPToolset object-
type: "mcp_toolset" -
configs: array of BetaManagedAgentsMCPToolConfig-
enabled: boolean -
name: string -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
default_config: BetaManagedAgentsMCPToolsetDefaultConfigResolved default configuration for all tools from an MCP server.
-
enabled: boolean -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
mcp_server_name: string
-
-
BetaManagedAgentsCustomTool objectA custom tool as returned in API responses.
-
type: "custom" -
description: string -
input_schema: BetaManagedAgentsCustomToolInputSchemaJSON Schema for custom tool input parameters.
-
type: "object" -
properties: optional map[unknown] or null -
required: optional array of string or null
-
-
name: string
-
-
-
version: numberformat: int32
-
-
BetaManagedAgentsAdvisor objectPlatform advisor roster entry: a model the session's primary thread may consult mid-turn.
-
type: "advisor" -
model: stringThe advisor model id.
-
-
-
archived_at: string or nullA timestamp in RFC 3339 format
format: date-time
-
created_at: stringA timestamp in RFC 3339 format
format: date-time
-
parent_thread_id: string or nullParent thread that spawned this thread. Null for the primary thread.
-
session_id: stringThe session this thread belongs to.
-
stats: BetaManagedAgentsSessionThreadStats or nullTiming statistics for a session thread.
-
active_seconds: optional numberCumulative time in seconds the thread spent actively running. Excludes idle time.
format: double
-
duration_seconds: optional numberElapsed time since thread creation in seconds. For archived threads, frozen at the final update.
format: double
-
startup_seconds: optional numberTime in seconds for the thread to begin running. Zero for child threads, which start immediately.
format: double
-
-
status: BetaManagedAgentsSessionThreadStatusSessionThreadStatus enum
-
"running" -
"idle" -
"rescheduling" -
"terminated"
-
-
updated_at: stringA timestamp in RFC 3339 format
format: date-time
-
usage: BetaManagedAgentsSessionThreadUsage or nullCumulative token usage for a session thread across all turns.
-
active_seconds: optional numberCumulative time in seconds this thread spent in running status. Equal to
stats.active_seconds; surfaced here so a thread's usage carries every quantity its cost is priced on.format: double
-
cache_creation: optional BetaManagedAgentsCacheCreationUsagePrompt-cache creation token usage broken down by cache lifetime.
-
ephemeral_1h_input_tokens: optional numberTokens used to create 1-hour ephemeral cache entries.
format: int32
-
ephemeral_5m_input_tokens: optional numberTokens used to create 5-minute ephemeral cache entries.
format: int32
-
-
cache_read_input_tokens: optional numberTotal tokens read from prompt cache.
format: int32
-
input_tokens: optional numberTotal input tokens consumed across all turns.
format: int32
-
list_cost: optional BetaMonetaryAmount or nullA monetary amount in a specific currency.
-
amount: stringAmount in minor units of the currency, as an integer decimal string with no leading zeros: "2500" is $25.00 and "50" is fifty cents. A string rather than a number so no float rounding is ever applied.
-
currency: BetaCurrencyUppercase ISO-4217 currency code.
USDis the only currency currently supported; the accepted set is closed and grows only when a new currency is priced.
-
-
output_tokens: optional numberTotal output tokens generated across all turns.
format: int32
-
server_tool_use: optional BetaManagedAgentsServerToolUsage or nullCumulative count of server-executed tool invocations, broken down by tool.
-
web_fetch_requests: optional numberNumber of server-executed web fetch requests.
format: int32
-
web_search_requests: optional numberNumber of server-executed web search requests.
format: int32
-
-
-
Example
curl https://api.anthropic.com/v1/sessions/$SESSION_ID/threads/$THREAD_ID \
-H 'anthropic-version: 2023-06-01' \
-H 'anthropic-beta: managed-agents-2026-04-01' \
-H "X-Api-Key: $ANTHROPIC_API_KEY"Response (200)
{
"id": "sthr_011CZkZVWa6oIjw0rgXZpnBt",
"agent": {
"id": "agent_011CZkYqphY8vELVzwCUpqiQ",
"description": "A focused research subagent.",
"mcp_servers": [
{
"name": "example-mcp",
"type": "url",
"url": "https://example-server.modelcontextprotocol.io/sse"
}
],
"model": {
"id": "claude-opus-5",
"effort": {
"type": "low"
},
"inference_geo": "inference_geo",
"speed": "standard"
},
"name": "Researcher",
"skills": [
{
"skill_id": "xlsx",
"type": "anthropic",
"version": "1"
}
],
"system": "You are a research subagent that gathers and summarises sources for the coordinating agent.",
"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",
"version": 1
},
"archived_at": null,
"created_at": "2026-03-15T10:00:00Z",
"parent_thread_id": null,
"session_id": "sesn_011CZkZAtmR3yMPDzynEDxu7",
"stats": {
"active_seconds": 0,
"duration_seconds": 0,
"startup_seconds": 0
},
"status": "idle",
"type": "session_thread",
"updated_at": "2026-03-15T10:00:00Z",
"usage": {
"active_seconds": 0,
"cache_creation": {
"ephemeral_1h_input_tokens": 0,
"ephemeral_5m_input_tokens": 0
},
"cache_read_input_tokens": 0,
"input_tokens": 0,
"list_cost": {
"amount": "2500",
"currency": "USD"
},
"output_tokens": 0,
"server_tool_use": {
"web_fetch_requests": 0,
"web_search_requests": 3
}
}
}Archive Session Thread
POST /v1/sessions/{session_id}/threads/{thread_id}/archive
Archive Session Thread
Path parameters
-
session_id: string -
thread_id: string
Headers
-
"anthropic-beta": optional array of AnthropicBetaOptional header to specify the beta version(s) you want to use.
-
string -
"message-batches-2024-09-24" or "prompt-caching-2024-07-31" or "computer-use-2024-10-22" or 43 more-
"message-batches-2024-09-24" -
"prompt-caching-2024-07-31" -
"computer-use-2024-10-22" -
"computer-use-2025-01-24" -
"pdfs-2024-09-25" -
"token-counting-2024-11-01" -
"token-efficient-tools-2025-02-19" -
"output-128k-2025-02-19" -
"files-api-2025-04-14" -
"mcp-client-2025-04-04" -
"mcp-client-2025-11-20" -
"dev-full-thinking-2025-05-14" -
"interleaved-thinking-2025-05-14" -
"code-execution-2025-05-22" -
"extended-cache-ttl-2025-04-11" -
"context-1m-2025-08-07" -
"context-management-2025-06-27" -
"model-context-window-exceeded-2025-08-26" -
"skills-2025-10-02" -
"fast-mode-2026-02-01" -
"output-300k-2026-03-24" -
"user-profiles-2026-03-24" -
"user-profiles-2026-08-18" -
"user-profiles-2026-09-04" -
"advisor-tool-2026-03-01" -
"managed-agents-2026-04-01" -
"cache-diagnosis-2026-04-07" -
"dreaming-2026-04-21" -
"thinking-token-count-2026-05-13" -
"server-side-fallback-2026-06-01" -
"server-side-fallback-2026-07-01" -
"fallback-credit-2026-06-01" -
"fallback-credit-2026-07-01" -
"agent-memory-2026-07-22" -
"mid-conversation-tool-changes-2026-07-01" -
"compact-2026-01-12" -
"computer-use-2025-11-24" -
"mcp-tunnels-2026-06-22" -
"structured-outputs-2025-11-13" -
"task-budgets-2026-03-13" -
"thinking-display-updates-2026-08-18" -
"ce-user-management-2026-07-13" -
"mid-conversation-output-config-2026-07-01" -
"thinking-binding-controls-2026-08-01" -
"mid-conversation-system-clear-at-2026-08-21" -
"compact-2026-09-04"
-
-
-
"anthropic-workspace-id": optional string
Returns
-
BetaManagedAgentsSessionThread objectAn execution thread within a
session. Each session has one primary thread plus zero or more child threads spawned by the coordinator.-
type: "session_thread" -
id: stringUnique identifier for this thread.
-
agent: BetaManagedAgentsSessionThreadAgent or BetaManagedAgentsAdvisorThe resolved agent a session thread runs: a saved-agent snapshot, the platform advisor entry, or an inline-defined (ephemeral) agent snapshot.
-
BetaManagedAgentsSessionThreadAgent objectResolved
agentdefinition for a singlesession_thread. Snapshot of the agent at thread creation time. The multiagent roster is not repeated here; read it fromSession.agent.-
type: "agent" -
id: string -
description: string or null -
mcp_servers: array of BetaManagedAgentsMCPServerURLDefinition-
type: "url" -
name: string -
url: string
-
-
model: BetaManagedAgentsModelConfigModel identifier and configuration.
-
id: BetaManagedAgentsModelThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1" or "claude-sonnet-5" or "claude-fable-5" or 11 moreThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1"Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows
-
"claude-sonnet-5"High-performance model for coding and agents
-
"claude-fable-5"Next generation of intelligence for the hardest knowledge work and coding problems
-
"claude-opus-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-8"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-7"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-6"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-6"Best combination of speed and intelligence
-
"claude-haiku-4-5"Fastest model with near-frontier intelligence
-
"claude-haiku-4-5-20251001"Fastest model with near-frontier intelligence
-
"claude-opus-4-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-5-20251101"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-5"High-performance model for agents and coding
-
"claude-sonnet-4-5-20250929"High-performance model for agents and coding
-
-
string
-
-
effort: optional BetaManagedAgentsEffortLow or BetaManagedAgentsEffortMedium or BetaManagedAgentsEffortHigh or 2 moreHow hard Claude works on each turn. Sets
output_config.efforton every Messages call the session makes.-
BetaManagedAgentsEffortLow objectLow effort. Favors latency over reasoning depth.
type: "low"
-
BetaManagedAgentsEffortMedium objectMedium effort. Balances latency and reasoning depth.
type: "medium"
-
BetaManagedAgentsEffortHigh objectHigh effort. Favors reasoning depth.
type: "high"
-
BetaManagedAgentsEffortXhigh objectExtra-high effort. Not all models accept this level.
type: "xhigh"
-
BetaManagedAgentsEffortMax objectMaximum effort. Favors reasoning depth over latency.
type: "max"
-
-
inference_geo: optional stringGeographic region for model inference. When unset, requests fall through to the workspace's default_inference_geo.
-
speed: optional "standard" or "fast"Inference speed mode.
fastprovides significantly faster output token generation at premium pricing. Not all models supportfast; invalid combinations are rejected at create time.-
"standard" -
"fast"
-
-
-
name: string -
skills: array of BetaManagedAgentsAnthropicSkill or BetaManagedAgentsCustomSkill-
BetaManagedAgentsAnthropicSkill objectA resolved Anthropic-managed skill.
-
type: "anthropic" -
skill_id: string -
version: string
-
-
BetaManagedAgentsCustomSkill objectA resolved user-created custom skill.
-
type: "custom" -
skill_id: string -
version: string
-
-
-
system: string or null -
tools: array of BetaManagedAgentsAgentToolset20260401 or BetaManagedAgentsMCPToolset or BetaManagedAgentsCustomTool-
BetaManagedAgentsAgentToolset20260401 object-
type: "agent_toolset_20260401" -
configs: array of BetaManagedAgentsAgentToolConfig-
BetaManagedAgentsBashToolConfig objectConfiguration for the bash tool.
-
type: "bash" -
enabled: boolean -
name: "bash" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
type: "always_allow"
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
type: "always_ask"
-
BetaManagedAgentsAutoPolicy objectThe 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"
-
-
-
BetaManagedAgentsEditToolConfig objectConfiguration for the edit tool.
-
type: "edit" -
enabled: boolean -
name: "edit" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsReadToolConfig objectConfiguration for the read tool.
-
type: "read" -
enabled: boolean -
name: "read" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWriteToolConfig objectConfiguration for the write tool.
-
type: "write" -
enabled: boolean -
name: "write" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGlobToolConfig objectConfiguration for the glob tool.
-
type: "glob" -
enabled: boolean -
name: "glob" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGrepToolConfig objectConfiguration for the grep tool.
-
type: "grep" -
enabled: boolean -
name: "grep" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWebFetchToolConfig objectConfiguration for the web_fetch tool.
-
type: "web_fetch" -
enabled: boolean -
name: "web_fetch" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
allowed_domains: optional array of string -
blocked_domains: optional array of string -
max_content_tokens: optional number or nullformat: int32
-
-
BetaManagedAgentsWebSearchToolConfig objectConfiguration for the web_search tool.
-
type: "web_search" -
enabled: boolean -
name: "web_search" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
allowed_domains: optional array of string -
blocked_domains: optional array of string -
user_location: optional BetaManagedAgentsUserLocation or nullApproximate user location for search result localization.
-
type: "approximate"Location precision. Only "approximate" is supported.
-
city: optional string or nullCity name.
minLength: 1, maxLength: 255
-
country: optional string or nullTwo-letter ISO 3166-1 country code, uppercase.
-
region: optional string or nullRegion or state name.
minLength: 1, maxLength: 255
-
timezone: optional string or nullIANA timezone identifier, e.g. "America/Los_Angeles".
minLength: 1, maxLength: 255
-
-
-
-
default_config: BetaManagedAgentsAgentToolsetDefaultConfigResolved default configuration for agent tools.
-
enabled: boolean -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
-
BetaManagedAgentsMCPToolset object-
type: "mcp_toolset" -
configs: array of BetaManagedAgentsMCPToolConfig-
enabled: boolean -
name: string -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
default_config: BetaManagedAgentsMCPToolsetDefaultConfigResolved default configuration for all tools from an MCP server.
-
enabled: boolean -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
mcp_server_name: string
-
-
BetaManagedAgentsCustomTool objectA custom tool as returned in API responses.
-
type: "custom" -
description: string -
input_schema: BetaManagedAgentsCustomToolInputSchemaJSON Schema for custom tool input parameters.
-
type: "object" -
properties: optional map[unknown] or null -
required: optional array of string or null
-
-
name: string
-
-
-
version: numberformat: int32
-
-
BetaManagedAgentsAdvisor objectPlatform advisor roster entry: a model the session's primary thread may consult mid-turn.
-
type: "advisor" -
model: stringThe advisor model id.
-
-
-
archived_at: string or nullA timestamp in RFC 3339 format
format: date-time
-
created_at: stringA timestamp in RFC 3339 format
format: date-time
-
parent_thread_id: string or nullParent thread that spawned this thread. Null for the primary thread.
-
session_id: stringThe session this thread belongs to.
-
stats: BetaManagedAgentsSessionThreadStats or nullTiming statistics for a session thread.
-
active_seconds: optional numberCumulative time in seconds the thread spent actively running. Excludes idle time.
format: double
-
duration_seconds: optional numberElapsed time since thread creation in seconds. For archived threads, frozen at the final update.
format: double
-
startup_seconds: optional numberTime in seconds for the thread to begin running. Zero for child threads, which start immediately.
format: double
-
-
status: BetaManagedAgentsSessionThreadStatusSessionThreadStatus enum
-
"running" -
"idle" -
"rescheduling" -
"terminated"
-
-
updated_at: stringA timestamp in RFC 3339 format
format: date-time
-
usage: BetaManagedAgentsSessionThreadUsage or nullCumulative token usage for a session thread across all turns.
-
active_seconds: optional numberCumulative time in seconds this thread spent in running status. Equal to
stats.active_seconds; surfaced here so a thread's usage carries every quantity its cost is priced on.format: double
-
cache_creation: optional BetaManagedAgentsCacheCreationUsagePrompt-cache creation token usage broken down by cache lifetime.
-
ephemeral_1h_input_tokens: optional numberTokens used to create 1-hour ephemeral cache entries.
format: int32
-
ephemeral_5m_input_tokens: optional numberTokens used to create 5-minute ephemeral cache entries.
format: int32
-
-
cache_read_input_tokens: optional numberTotal tokens read from prompt cache.
format: int32
-
input_tokens: optional numberTotal input tokens consumed across all turns.
format: int32
-
list_cost: optional BetaMonetaryAmount or nullA monetary amount in a specific currency.
-
amount: stringAmount in minor units of the currency, as an integer decimal string with no leading zeros: "2500" is $25.00 and "50" is fifty cents. A string rather than a number so no float rounding is ever applied.
-
currency: BetaCurrencyUppercase ISO-4217 currency code.
USDis the only currency currently supported; the accepted set is closed and grows only when a new currency is priced.
-
-
output_tokens: optional numberTotal output tokens generated across all turns.
format: int32
-
server_tool_use: optional BetaManagedAgentsServerToolUsage or nullCumulative count of server-executed tool invocations, broken down by tool.
-
web_fetch_requests: optional numberNumber of server-executed web fetch requests.
format: int32
-
web_search_requests: optional numberNumber of server-executed web search requests.
format: int32
-
-
-
Example
curl https://api.anthropic.com/v1/sessions/$SESSION_ID/threads/$THREAD_ID/archive \
-X POST \
-H 'anthropic-version: 2023-06-01' \
-H 'anthropic-beta: managed-agents-2026-04-01' \
-H "X-Api-Key: $ANTHROPIC_API_KEY"Response (200)
{
"id": "sthr_011CZkZVWa6oIjw0rgXZpnBt",
"agent": {
"id": "agent_011CZkYqphY8vELVzwCUpqiQ",
"description": "A focused research subagent.",
"mcp_servers": [
{
"name": "example-mcp",
"type": "url",
"url": "https://example-server.modelcontextprotocol.io/sse"
}
],
"model": {
"id": "claude-opus-5",
"effort": {
"type": "low"
},
"inference_geo": "inference_geo",
"speed": "standard"
},
"name": "Researcher",
"skills": [
{
"skill_id": "xlsx",
"type": "anthropic",
"version": "1"
}
],
"system": "You are a research subagent that gathers and summarises sources for the coordinating agent.",
"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",
"version": 1
},
"archived_at": null,
"created_at": "2026-03-15T10:00:00Z",
"parent_thread_id": null,
"session_id": "sesn_011CZkZAtmR3yMPDzynEDxu7",
"stats": {
"active_seconds": 0,
"duration_seconds": 0,
"startup_seconds": 0
},
"status": "idle",
"type": "session_thread",
"updated_at": "2026-03-15T10:00:00Z",
"usage": {
"active_seconds": 0,
"cache_creation": {
"ephemeral_1h_input_tokens": 0,
"ephemeral_5m_input_tokens": 0
},
"cache_read_input_tokens": 0,
"input_tokens": 0,
"list_cost": {
"amount": "2500",
"currency": "USD"
},
"output_tokens": 0,
"server_tool_use": {
"web_fetch_requests": 0,
"web_search_requests": 3
}
}
}Sessions › Threads › Events
List Session Thread Events
GET /v1/sessions/{session_id}/threads/{thread_id}/events
List Session Thread Events
Path parameters
-
session_id: string -
thread_id: string
Query parameters
-
limit: optional numberQuery parameter for limit
format: int32
-
page: optional stringQuery parameter for page
Headers
-
"anthropic-beta": optional array of AnthropicBetaOptional header to specify the beta version(s) you want to use.
-
string -
"message-batches-2024-09-24" or "prompt-caching-2024-07-31" or "computer-use-2024-10-22" or 43 more-
"message-batches-2024-09-24" -
"prompt-caching-2024-07-31" -
"computer-use-2024-10-22" -
"computer-use-2025-01-24" -
"pdfs-2024-09-25" -
"token-counting-2024-11-01" -
"token-efficient-tools-2025-02-19" -
"output-128k-2025-02-19" -
"files-api-2025-04-14" -
"mcp-client-2025-04-04" -
"mcp-client-2025-11-20" -
"dev-full-thinking-2025-05-14" -
"interleaved-thinking-2025-05-14" -
"code-execution-2025-05-22" -
"extended-cache-ttl-2025-04-11" -
"context-1m-2025-08-07" -
"context-management-2025-06-27" -
"model-context-window-exceeded-2025-08-26" -
"skills-2025-10-02" -
"fast-mode-2026-02-01" -
"output-300k-2026-03-24" -
"user-profiles-2026-03-24" -
"user-profiles-2026-08-18" -
"user-profiles-2026-09-04" -
"advisor-tool-2026-03-01" -
"managed-agents-2026-04-01" -
"cache-diagnosis-2026-04-07" -
"dreaming-2026-04-21" -
"thinking-token-count-2026-05-13" -
"server-side-fallback-2026-06-01" -
"server-side-fallback-2026-07-01" -
"fallback-credit-2026-06-01" -
"fallback-credit-2026-07-01" -
"agent-memory-2026-07-22" -
"mid-conversation-tool-changes-2026-07-01" -
"compact-2026-01-12" -
"computer-use-2025-11-24" -
"mcp-tunnels-2026-06-22" -
"structured-outputs-2025-11-13" -
"task-budgets-2026-03-13" -
"thinking-display-updates-2026-08-18" -
"ce-user-management-2026-07-13" -
"mid-conversation-output-config-2026-07-01" -
"thinking-binding-controls-2026-08-01" -
"mid-conversation-system-clear-at-2026-08-21" -
"compact-2026-09-04"
-
-
-
"anthropic-workspace-id": optional string
Returns
-
data: optional array of BetaManagedAgentsSessionEventEvents for the thread, ordered by
processed_at.-
BetaManagedAgentsUserMessageEvent objectA user message event in the session conversation.
-
type: "user.message" -
id: stringUnique identifier for this event.
-
content: array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsRedactedBlockArray of content blocks comprising the user message.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
type: "text" -
text: stringThe text content.
minLength: 1
-
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
type: "image" -
source: BetaManagedAgentsBase64ImageSource or BetaManagedAgentsURLImageSource or BetaManagedAgentsFileImageSourceUnion type for image source variants.
-
BetaManagedAgentsBase64ImageSource objectBase64-encoded image data.
-
type: "base64" -
data: stringBase64-encoded image data.
minLength: 1
-
media_type: stringMIME type of the image (e.g., "image/png", "image/jpeg", "image/gif", "image/webp").
minLength: 1
-
-
BetaManagedAgentsURLImageSource objectImage referenced by URL.
-
type: "url" -
url: stringURL of the image to fetch.
minLength: 1
-
-
BetaManagedAgentsFileImageSource objectImage referenced by file ID.
-
type: "file" -
file_id: stringID of a previously uploaded file.
minLength: 1
-
-
-
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
type: "document" -
source: BetaManagedAgentsBase64DocumentSource or BetaManagedAgentsPlainTextDocumentSource or BetaManagedAgentsURLDocumentSource or BetaManagedAgentsFileDocumentSourceUnion type for document source variants.
-
BetaManagedAgentsBase64DocumentSource objectBase64-encoded document data.
-
type: "base64" -
data: stringBase64-encoded document data.
minLength: 1
-
media_type: stringMIME type of the document (e.g., "application/pdf").
minLength: 1
-
-
BetaManagedAgentsPlainTextDocumentSource objectPlain text document content.
-
type: "text" -
data: stringThe plain text content.
minLength: 1
-
media_type: "text/plain"MIME type of the text content. Must be "text/plain".
-
-
BetaManagedAgentsURLDocumentSource objectDocument referenced by URL.
-
type: "url" -
url: stringURL of the document to fetch.
minLength: 1
-
-
BetaManagedAgentsFileDocumentSource objectDocument referenced by file ID.
-
type: "file" -
file_id: stringID of a previously uploaded file.
minLength: 1
-
-
-
context: optional string or nullAdditional context about the document for the model.
-
title: optional string or nullThe title of the document.
-
-
BetaManagedAgentsRedactedBlock objectPlaceholder for content withheld by Anthropic model policy.
type: "redacted"
-
-
processed_at: optional string or nullA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsUserInterruptEvent objectAn interrupt event that pauses agent execution and returns control to the user.
-
type: "user.interrupt" -
id: stringUnique identifier for this event.
-
processed_at: optional string or nullA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: optional string or nullIf absent, interrupts every non-archived thread in a multiagent session (or the primary alone in a single-agent session). If present, interrupts only the named thread.
-
-
BetaManagedAgentsUserToolConfirmationEvent objectA tool confirmation event that approves or denies a pending tool execution.
-
type: "user.tool_confirmation" -
id: stringUnique identifier for this event.
-
result: "allow" or "deny"UserToolConfirmationResult enum
-
"allow" -
"deny"
-
-
tool_use_id: stringThe id of the
agent.tool_useoragent.mcp_tool_useevent this result corresponds to, which can be found in the lastsession.status_idleevent'sstop_reason.event_idsfield. -
deny_message: optional string or nullOptional message providing context for a 'deny' decision. Only allowed when result is 'deny'.
maxLength: 10000
-
processed_at: optional string or nullA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: optional string or nullSet by the server to the subagent thread this confirmation was routed to. Omitted when it was routed to the primary thread.
-
-
BetaManagedAgentsUserCustomToolResultEvent objectEvent sent by the client providing the result of a custom tool execution.
-
type: "user.custom_tool_result" -
id: stringUnique identifier for this event.
-
custom_tool_use_id: stringThe id of the
agent.custom_tool_useevent this result corresponds to, which can be found in the lastsession.status_idleevent'sstop_reason.event_idsfield. -
content: optional array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsSearchResultBlockThe result content returned by the tool.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
BetaManagedAgentsSearchResultBlock objectA block containing a web search result.
-
type: "search_result" -
citations: BetaManagedAgentsSearchResultCitationsCitation settings for a search result.
-
enabled: booleanWhether citations are enabled for this search result.
-
-
content: array of BetaManagedAgentsSearchResultContentArray of text content blocks from the search result.
-
type: "text" -
text: stringThe text content.
minLength: 1
-
-
source: stringThe URL source of the search result.
minLength: 1
-
title: stringThe title of the search result.
minLength: 1
-
-
-
is_error: optional boolean or nullWhether the tool execution resulted in an error.
-
processed_at: optional string or nullA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: optional string or nullSet by the server to the subagent thread this result was routed to. Omitted when it was routed to the primary thread.
-
-
BetaManagedAgentsAgentCustomToolUseEvent objectEvent emitted when the agent calls a custom tool. The session goes idle until the client sends a
user.custom_tool_resultevent with the result.-
type: "agent.custom_tool_use" -
id: stringUnique identifier for this event.
-
input: map[unknown]Input parameters for the tool call.
-
name: stringName of the custom tool being called.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: optional string or nullWhen set, this event was cross-posted from a subagent's thread to surface its custom tool use on the primary thread's stream. Empty on the thread's own events. Informational only: the server routes the matching
user.custom_tool_resultbycustom_tool_use_id, so clients do not send it back.
-
-
BetaManagedAgentsAgentMessageEvent objectAn agent response event in the session conversation.
-
type: "agent.message" -
id: stringUnique identifier for this event.
-
content: array of BetaManagedAgentsTextBlock or BetaManagedAgentsRedactedBlockArray of text blocks comprising the agent response.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
BetaManagedAgentsRedactedBlock objectPlaceholder for content withheld by Anthropic model policy.
-
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsAgentThinkingEvent objectIndicates the agent is making forward progress via extended thinking. A progress signal, not a content carrier.
-
type: "agent.thinking" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsAgentMCPToolUseEvent objectEvent emitted when the agent invokes a tool provided by an MCP server.
-
type: "agent.mcp_tool_use" -
id: stringUnique identifier for this event.
-
input: map[unknown]Input parameters for the tool call.
-
mcp_server_name: stringName of the MCP server providing the tool.
-
name: stringName of the MCP tool being used.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
evaluated_permission: optional "allow" or "ask" or "deny"AgentEvaluatedPermission enum
-
"allow" -
"ask" -
"deny"
-
-
evaluation: optional BetaManagedAgentsAgentToolEvaluationNames the resolved permission_policy that produced evaluated_permission, and under auto carries the judgement. Open union: clients must tolerate unknown variants.
-
BetaManagedAgentsAgentToolEvaluationAlwaysAllow objectThe resolved permission_policy was always_allow; accompanies evaluated_permission "allow".
type: "always_allow"
-
BetaManagedAgentsAgentToolEvaluationAlwaysAsk objectThe resolved permission_policy was always_ask; accompanies evaluated_permission "ask".
type: "always_ask"
-
BetaManagedAgentsAgentToolEvaluationAuto objectThe resolved permission_policy was auto: the server judged this invocation individually.
-
type: "auto" -
evaluated_permission: BetaManagedAgentsAgentAutoEvaluatedPermissionThe server's per-invocation judgement under the auto permission policy. Its type always equals the event's top-level evaluated_permission. Open union: clients must tolerate unknown variants.
-
BetaManagedAgentsAgentAutoEvaluatedPermissionAllow objectThe server judged the invocation safe to execute without client approval.
type: "allow"
-
BetaManagedAgentsAgentAutoEvaluatedPermissionAsk objectThe server reached no judgement; the invocation is held for client approval.
-
type: "ask" -
reason_code: stringThe judgement's grounds in registry-bound terms, for client branching and audit rather than end-user display. Open registry; currently "indeterminate" (no judgement was reached). Clients must tolerate values outside this set.
maxLength: 64
-
-
BetaManagedAgentsAgentAutoEvaluatedPermissionDeny objectThe server judged the invocation high-risk; it does not execute and a synthetic error tool result is appended.
-
type: "deny" -
reason_code: stringThe judgement's grounds in registry-bound terms. Open registry; currently "high_risk" (judged high-risk; the call does not run). Clients must tolerate values outside this set.
maxLength: 64
-
-
-
-
-
session_thread_id: optional string or nullWhen set, this event was cross-posted from a subagent's thread to surface its permission request on the primary thread's stream. Empty on the thread's own events. Informational only: the server routes the matching
user.tool_confirmationbytool_use_id, so clients do not send it back.
-
-
BetaManagedAgentsAgentMCPToolResultEvent objectEvent representing the result of an MCP tool execution.
-
type: "agent.mcp_tool_result" -
id: stringUnique identifier for this event.
-
mcp_tool_use_id: stringThe id of the
agent.mcp_tool_useevent this result corresponds to. -
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
content: optional array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsSearchResultBlockThe result content returned by the tool.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
BetaManagedAgentsSearchResultBlock objectA block containing a web search result.
-
-
is_error: optional boolean or nullWhether the tool execution resulted in an error.
-
-
BetaManagedAgentsAgentToolUseEvent objectEvent emitted when the agent invokes a built-in agent tool.
-
type: "agent.tool_use" -
id: stringUnique identifier for this event.
-
input: map[unknown]Input parameters for the tool call.
-
name: stringName of the agent tool being used.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
evaluated_permission: optional "allow" or "ask" or "deny"AgentEvaluatedPermission enum
-
"allow" -
"ask" -
"deny"
-
-
evaluation: optional BetaManagedAgentsAgentToolEvaluationNames the resolved permission_policy that produced evaluated_permission, and under auto carries the judgement. Open union: clients must tolerate unknown variants.
-
session_thread_id: optional string or nullWhen set, this event was cross-posted from a subagent's thread to surface its permission request on the primary thread's stream. Empty on the thread's own events. Informational only: the server routes the matching
user.tool_confirmationoruser.tool_resultbytool_use_id, so clients do not send it back.
-
-
BetaManagedAgentsAgentToolResultEvent objectEvent representing the result of an agent tool execution.
-
type: "agent.tool_result" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
tool_use_id: stringThe id of the
agent.tool_useevent this result corresponds to. -
content: optional array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsSearchResultBlockThe result content returned by the tool.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
BetaManagedAgentsSearchResultBlock objectA block containing a web search result.
-
-
is_error: optional boolean or nullWhether the tool execution resulted in an error.
-
-
BetaManagedAgentsAgentThreadMessageReceivedEvent objectDelivery event written to the target thread's input stream when an agent-to-agent message arrives.
-
type: "agent.thread_message_received" -
id: stringUnique identifier for this event.
-
content: array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsRedactedBlockMessage content blocks.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
BetaManagedAgentsRedactedBlock objectPlaceholder for content withheld by Anthropic model policy.
-
-
from_session_thread_id: stringPublic
sthr_ID of the thread that sent the message. -
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
from_agent_name: optional string or nullName of the callable agent this message came from. Absent when received from the primary agent.
-
-
BetaManagedAgentsAgentThreadMessageSentEvent objectObservability event emitted to the sender's output stream when an agent-to-agent message is sent.
-
type: "agent.thread_message_sent" -
id: stringUnique identifier for this event.
-
content: array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsRedactedBlockMessage content blocks.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
BetaManagedAgentsRedactedBlock objectPlaceholder for content withheld by Anthropic model policy.
-
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
to_session_thread_id: stringPublic
sthr_ID of the thread the message was sent to. -
to_agent_name: optional string or nullName of the callable agent this message was sent to. Absent when sent to the primary agent.
-
-
BetaManagedAgentsAgentThreadContextCompactedEvent objectIndicates that context compaction (summarization) occurred during the session.
-
type: "agent.thread_context_compacted" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSessionErrorEvent objectAn error event indicating a problem occurred during session execution.
-
type: "session.error" -
id: stringUnique identifier for this event.
-
error: BetaManagedAgentsUnknownError or BetaManagedAgentsModelOverloadedError or BetaManagedAgentsModelRateLimitedError or 5 more-
BetaManagedAgentsUnknownError objectAn unknown or unexpected error occurred during session execution. A fallback variant; clients that don't recognize a new error code can match on
retry_statusandmessagealone.-
type: "unknown_error" -
message: stringHuman-readable error description.
-
retry_status: BetaManagedAgentsRetryStatusRetrying or BetaManagedAgentsRetryStatusExhausted or BetaManagedAgentsRetryStatusTerminalWhat the client should do next in response to this error.
-
BetaManagedAgentsRetryStatusRetrying objectThe server is retrying automatically. Client should wait; the same error type may fire again as retrying, then once as exhausted when the retry budget runs out.
type: "retrying"
-
BetaManagedAgentsRetryStatusExhausted objectThis turn is dead; queued inputs are flushed and the session returns to idle. Client may send a new prompt.
type: "exhausted"
-
BetaManagedAgentsRetryStatusTerminal objectThe session encountered a terminal error and will transition to
terminatedstate.type: "terminal"
-
-
-
BetaManagedAgentsModelOverloadedError objectThe model is currently overloaded. Emitted after automatic retries are exhausted.
-
type: "model_overloaded_error" -
message: stringHuman-readable error description.
-
retry_status: BetaManagedAgentsRetryStatusRetrying or BetaManagedAgentsRetryStatusExhausted or BetaManagedAgentsRetryStatusTerminalWhat the client should do next in response to this error.
-
BetaManagedAgentsRetryStatusRetrying objectThe server is retrying automatically. Client should wait; the same error type may fire again as retrying, then once as exhausted when the retry budget runs out.
-
BetaManagedAgentsRetryStatusExhausted objectThis turn is dead; queued inputs are flushed and the session returns to idle. Client may send a new prompt.
-
BetaManagedAgentsRetryStatusTerminal objectThe session encountered a terminal error and will transition to
terminatedstate.
-
-
-
BetaManagedAgentsModelRateLimitedError objectThe model request was rate-limited.
-
type: "model_rate_limited_error" -
message: stringHuman-readable error description.
-
retry_status: BetaManagedAgentsRetryStatusRetrying or BetaManagedAgentsRetryStatusExhausted or BetaManagedAgentsRetryStatusTerminalWhat the client should do next in response to this error.
-
BetaManagedAgentsRetryStatusRetrying objectThe server is retrying automatically. Client should wait; the same error type may fire again as retrying, then once as exhausted when the retry budget runs out.
-
BetaManagedAgentsRetryStatusExhausted objectThis turn is dead; queued inputs are flushed and the session returns to idle. Client may send a new prompt.
-
BetaManagedAgentsRetryStatusTerminal objectThe session encountered a terminal error and will transition to
terminatedstate.
-
-
-
BetaManagedAgentsModelRequestFailedError objectA model request failed for a reason other than overload or rate-limiting.
-
type: "model_request_failed_error" -
message: stringHuman-readable error description.
-
retry_status: BetaManagedAgentsRetryStatusRetrying or BetaManagedAgentsRetryStatusExhausted or BetaManagedAgentsRetryStatusTerminalWhat the client should do next in response to this error.
-
BetaManagedAgentsRetryStatusRetrying objectThe server is retrying automatically. Client should wait; the same error type may fire again as retrying, then once as exhausted when the retry budget runs out.
-
BetaManagedAgentsRetryStatusExhausted objectThis turn is dead; queued inputs are flushed and the session returns to idle. Client may send a new prompt.
-
BetaManagedAgentsRetryStatusTerminal objectThe session encountered a terminal error and will transition to
terminatedstate.
-
-
-
BetaManagedAgentsMCPConnectionFailedError objectFailed to connect to an MCP server.
-
type: "mcp_connection_failed_error" -
mcp_server_name: stringName of the MCP server that failed to connect.
-
message: stringHuman-readable error description.
-
retry_status: BetaManagedAgentsRetryStatusRetrying or BetaManagedAgentsRetryStatusExhausted or BetaManagedAgentsRetryStatusTerminalWhat the client should do next in response to this error.
-
BetaManagedAgentsRetryStatusRetrying objectThe server is retrying automatically. Client should wait; the same error type may fire again as retrying, then once as exhausted when the retry budget runs out.
-
BetaManagedAgentsRetryStatusExhausted objectThis turn is dead; queued inputs are flushed and the session returns to idle. Client may send a new prompt.
-
BetaManagedAgentsRetryStatusTerminal objectThe session encountered a terminal error and will transition to
terminatedstate.
-
-
-
BetaManagedAgentsMCPAuthenticationFailedError objectAuthentication to an MCP server failed.
-
type: "mcp_authentication_failed_error" -
mcp_server_name: stringName of the MCP server that failed authentication.
-
message: stringHuman-readable error description.
-
retry_status: BetaManagedAgentsRetryStatusRetrying or BetaManagedAgentsRetryStatusExhausted or BetaManagedAgentsRetryStatusTerminalWhat the client should do next in response to this error.
-
BetaManagedAgentsRetryStatusRetrying objectThe server is retrying automatically. Client should wait; the same error type may fire again as retrying, then once as exhausted when the retry budget runs out.
-
BetaManagedAgentsRetryStatusExhausted objectThis turn is dead; queued inputs are flushed and the session returns to idle. Client may send a new prompt.
-
BetaManagedAgentsRetryStatusTerminal objectThe session encountered a terminal error and will transition to
terminatedstate.
-
-
-
BetaManagedAgentsBillingError objectThe caller's organization or workspace cannot make model requests — out of credits or spend limit reached. Retrying with the same credentials will not succeed; the caller must resolve the billing state.
-
type: "billing_error" -
message: stringHuman-readable error description.
-
retry_status: BetaManagedAgentsRetryStatusRetrying or BetaManagedAgentsRetryStatusExhausted or BetaManagedAgentsRetryStatusTerminalWhat the client should do next in response to this error.
-
BetaManagedAgentsRetryStatusRetrying objectThe server is retrying automatically. Client should wait; the same error type may fire again as retrying, then once as exhausted when the retry budget runs out.
-
BetaManagedAgentsRetryStatusExhausted objectThis turn is dead; queued inputs are flushed and the session returns to idle. Client may send a new prompt.
-
BetaManagedAgentsRetryStatusTerminal objectThe session encountered a terminal error and will transition to
terminatedstate.
-
-
-
BetaManagedAgentsCredentialHostUnreachableError objectAn
environment_variablecredential'sauth.networking.allowed_hostsincludes a host the environment's network policy does not permit.-
type: "credential_host_unreachable_error" -
credential_id: stringID of the affected credential.
-
message: stringHuman-readable error description.
-
retry_status: BetaManagedAgentsRetryStatusRetrying or BetaManagedAgentsRetryStatusExhausted or BetaManagedAgentsRetryStatusTerminalWhat the client should do next in response to this error.
-
BetaManagedAgentsRetryStatusRetrying objectThe server is retrying automatically. Client should wait; the same error type may fire again as retrying, then once as exhausted when the retry budget runs out.
-
BetaManagedAgentsRetryStatusExhausted objectThis turn is dead; queued inputs are flushed and the session returns to idle. Client may send a new prompt.
-
BetaManagedAgentsRetryStatusTerminal objectThe session encountered a terminal error and will transition to
terminatedstate.
-
-
vault_id: stringID of the vault containing the affected credential.
-
-
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSessionStatusRescheduledEvent objectIndicates the session is recovering from an error state and is rescheduled for execution.
-
type: "session.status_rescheduled" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSessionStatusRunningEvent objectIndicates the session is actively running and the agent is working.
-
type: "session.status_running" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSessionStatusIdleEvent objectIndicates the agent has paused and is awaiting user input.
-
type: "session.status_idle" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
stop_reason: BetaManagedAgentsSessionEndTurn or BetaManagedAgentsSessionRequiresAction or BetaManagedAgentsSessionRetriesExhausted or BetaManagedAgentsSessionBudgetReached-
BetaManagedAgentsSessionEndTurn objectThe agent completed its turn naturally and is ready for the next user message.
type: "end_turn"
-
BetaManagedAgentsSessionRequiresAction objectThe agent is idle waiting on one or more blocking user-input events (tool confirmation, custom tool result, etc.). Resolving all of them transitions the session back to running.
-
type: "requires_action" -
event_ids: array of stringThe ids of events the agent is blocked on. Resolving fewer than all re-emits
session.status_idlewith the remainder.
-
-
BetaManagedAgentsSessionRetriesExhausted objectThe turn ended because repeated errors exhausted the retry budget or an error escalated to
retry_status: 'exhausted'.type: "retries_exhausted"
-
BetaManagedAgentsSessionBudgetReached objectThe agent stopped because the session's tracked list cost reached its budget, or because its usage includes a model with no list price (which the budget cannot measure). Raise the budget to continue — or, if raising is rejected because a model has no list price, remove the budget.
type: "budget_reached"
-
-
-
BetaManagedAgentsSessionStatusTerminatedEvent objectIndicates the session has terminated, either due to an error or completion.
-
type: "session.status_terminated" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSessionThreadCreatedEvent objectEmitted when a subagent is spawned as a new thread. Written to the parent thread's output stream so clients observing the session see child creation.
-
type: "session.thread_created" -
id: stringUnique identifier for this event.
-
agent_name: stringName of the callable agent the thread runs.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: stringPublic
sthr_ID of the newly created thread.
-
-
BetaManagedAgentsSpanOutcomeEvaluationStartEvent objectEmitted when an outcome evaluation cycle begins.
-
type: "span.outcome_evaluation_start" -
id: stringUnique identifier for this event.
-
iteration: number0-indexed revision cycle. 0 is the first evaluation; 1 is the re-evaluation after the first revision; etc.
format: int32
-
outcome_id: stringThe
outc_ID of the outcome being evaluated. -
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSpanOutcomeEvaluationEndEvent objectEmitted when an outcome evaluation cycle completes. Carries the verdict and aggregate token usage. A verdict of
needs_revisionmeans another evaluation cycle follows;satisfied,max_iterations_reached,failed, orinterruptedare terminal — no further evaluation cycles follow.-
type: "span.outcome_evaluation_end" -
id: stringUnique identifier for this event.
-
explanation: stringHuman-readable explanation of the verdict. For
needs_revision, describes which criteria failed and why. -
iteration: number0-indexed revision cycle, matching the corresponding
span.outcome_evaluation_start.format: int32
-
outcome_evaluation_start_id: stringThe id of the corresponding
span.outcome_evaluation_startevent. -
outcome_id: stringThe
outc_ID of the outcome being evaluated. -
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
result: stringEvaluation verdict. 'satisfied': criteria met, session goes idle. 'needs_revision': criteria not met, another revision cycle follows. 'max_iterations_reached': evaluation budget exhausted with criteria still unmet — one final acknowledgment turn follows before the session goes idle, but no further evaluation runs. 'failed': grader determined the rubric does not apply to the deliverables. 'interrupted': user sent an interrupt while evaluation was in progress.
-
usage: BetaManagedAgentsSpanModelUsageToken usage for a single model request.
-
cache_creation_input_tokens: numberTokens used to create prompt cache in this request.
format: int32
-
cache_read_input_tokens: numberTokens read from prompt cache in this request.
format: int32
-
input_tokens: numberInput tokens consumed by this request.
format: int32
-
output_tokens: numberOutput tokens generated by this request.
format: int32
-
speed: optional "standard" or "fast" or nullInference speed mode.
fastprovides significantly faster output token generation at premium pricing. Not all models supportfast; invalid combinations are rejected at create time.-
"standard" -
"fast"
-
-
-
-
BetaManagedAgentsSpanModelRequestStartEvent objectEmitted when a model request is initiated by the agent.
-
type: "span.model_request_start" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSpanModelRequestEndEvent objectEmitted when a model request completes.
-
type: "span.model_request_end" -
id: stringUnique identifier for this event.
-
is_error: boolean or nullWhether the model request resulted in an error.
-
model_request_start_id: stringThe id of the corresponding
span.model_request_startevent. -
model_usage: BetaManagedAgentsSpanModelUsageToken usage for a single model request.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSpanOutcomeEvaluationOngoingEvent objectPeriodic heartbeat emitted while an outcome evaluation cycle is in progress. Distinguishes 'evaluation is actively running' from 'evaluation is stuck' between the corresponding
span.outcome_evaluation_startandspan.outcome_evaluation_endevents.-
type: "span.outcome_evaluation_ongoing" -
id: stringUnique identifier for this event.
-
iteration: number0-indexed revision cycle, matching the corresponding
span.outcome_evaluation_start.format: int32
-
outcome_id: stringThe
outc_ID of the outcome being evaluated. -
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsUserDefineOutcomeEvent objectEcho of a
user.define_outcomeinput event. Carries the server-generatedoutcome_idthat subsequentspan.outcome_evaluation_*events reference.-
type: "user.define_outcome" -
id: stringUnique identifier for this event.
-
description: stringWhat the agent should produce. Copied from the input event.
-
max_iterations: number or nullEvaluate-then-revise cycles before giving up. Default 3, max 20.
format: int32
-
outcome_id: stringServer-generated
outc_ID for this outcome. Referenced byspan.outcome_evaluation_*events and the session'soutcome_evaluationslist. -
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
rubric: BetaManagedAgentsFileRubric or BetaManagedAgentsTextRubricRubric for grading the quality of an outcome.
-
BetaManagedAgentsFileRubric objectRubric referenced by a file uploaded via the Files API.
-
type: "file" -
file_id: stringID of the rubric file.
-
-
BetaManagedAgentsTextRubric objectRubric content provided inline as text.
-
type: "text" -
content: stringRubric content. Plain text or markdown — the grader treats it as freeform text.
-
-
-
-
BetaManagedAgentsSessionDeletedEvent objectEmitted when a session has been deleted. Terminates any active event stream — no further events will be emitted for this session.
-
type: "session.deleted" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSessionThreadStatusRunningEvent objectA session thread has begun executing. Emitted on the thread's own stream and cross-posted to the primary stream for child threads.
-
type: "session.thread_status_running" -
id: stringUnique identifier for this event.
-
agent_name: stringName of the agent the thread runs.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: stringPublic sthr_ ID of the thread that started running.
-
-
BetaManagedAgentsSessionThreadStatusIdleEvent objectA session thread has yielded and is awaiting input. Emitted on the thread's own stream and cross-posted to the primary stream for child threads.
-
type: "session.thread_status_idle" -
id: stringUnique identifier for this event.
-
agent_name: stringName of the agent the thread runs.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: stringPublic sthr_ ID of the thread that went idle.
-
stop_reason: BetaManagedAgentsSessionEndTurn or BetaManagedAgentsSessionRequiresAction or BetaManagedAgentsSessionRetriesExhausted or BetaManagedAgentsSessionBudgetReached-
BetaManagedAgentsSessionEndTurn objectThe agent completed its turn naturally and is ready for the next user message.
-
BetaManagedAgentsSessionRequiresAction objectThe agent is idle waiting on one or more blocking user-input events (tool confirmation, custom tool result, etc.). Resolving all of them transitions the session back to running.
-
BetaManagedAgentsSessionRetriesExhausted objectThe turn ended because repeated errors exhausted the retry budget or an error escalated to
retry_status: 'exhausted'. -
BetaManagedAgentsSessionBudgetReached objectThe agent stopped because the session's tracked list cost reached its budget, or because its usage includes a model with no list price (which the budget cannot measure). Raise the budget to continue — or, if raising is rejected because a model has no list price, remove the budget.
-
-
-
BetaManagedAgentsSessionThreadStatusTerminatedEvent objectA session thread has terminated and will accept no further input. Emitted on the thread's own stream and cross-posted to the primary stream for child threads.
-
type: "session.thread_status_terminated" -
id: stringUnique identifier for this event.
-
agent_name: stringName of the agent the thread runs.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: stringPublic sthr_ ID of the thread that terminated.
-
-
BetaManagedAgentsUserToolResultEvent objectEvent sent by the client providing the result of an agent-toolset tool execution. Only valid on
self_hostedenvironments, where sandbox-routed tools are executed by the client rather than the server.-
type: "user.tool_result" -
id: stringUnique identifier for this event.
-
tool_use_id: stringThe id of the
agent.tool_useevent this result corresponds to, which can be found in the lastsession.status_idleevent'sstop_reason.event_idsfield. -
content: optional array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsSearchResultBlockThe result content returned by the tool.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
BetaManagedAgentsSearchResultBlock objectA block containing a web search result.
-
-
is_error: optional boolean or nullWhether the tool execution resulted in an error.
-
processed_at: optional string or nullA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: optional string or nullSet by the server to the subagent thread this result was routed to. Omitted when it was routed to the primary thread.
-
-
BetaManagedAgentsSessionThreadStatusRescheduledEvent objectA session thread hit a transient error and is retrying automatically. Emitted on the thread's own stream and cross-posted to the primary stream for child threads.
-
type: "session.thread_status_rescheduled" -
id: stringUnique identifier for this event.
-
agent_name: stringName of the agent the thread runs.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: stringPublic sthr_ ID of the thread that is retrying.
-
-
BetaManagedAgentsSessionUpdatedEvent objectEmitted when an UpdateSession request changed at least one field. Carries only the fields that changed; absent fields were not part of the update. The new configuration applies from the next turn.
-
type: "session.updated" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
agent: optional BetaManagedAgentsSessionAgent or nullResolved
agentdefinition for asession. Snapshot of theagentatsessioncreation time.-
type: "agent" -
id: string -
description: string or null -
mcp_servers: array of BetaManagedAgentsMCPServerURLDefinition-
type: "url" -
name: string -
url: string
-
-
model: BetaManagedAgentsModelConfigModel identifier and configuration.
-
id: BetaManagedAgentsModelThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1" or "claude-sonnet-5" or "claude-fable-5" or 11 moreThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1"Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows
-
"claude-sonnet-5"High-performance model for coding and agents
-
"claude-fable-5"Next generation of intelligence for the hardest knowledge work and coding problems
-
"claude-opus-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-8"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-7"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-6"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-6"Best combination of speed and intelligence
-
"claude-haiku-4-5"Fastest model with near-frontier intelligence
-
"claude-haiku-4-5-20251001"Fastest model with near-frontier intelligence
-
"claude-opus-4-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-5-20251101"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-5"High-performance model for agents and coding
-
"claude-sonnet-4-5-20250929"High-performance model for agents and coding
-
-
string
-
-
effort: optional BetaManagedAgentsEffortLow or BetaManagedAgentsEffortMedium or BetaManagedAgentsEffortHigh or 2 moreHow hard Claude works on each turn. Sets
output_config.efforton every Messages call the session makes.-
BetaManagedAgentsEffortLow objectLow effort. Favors latency over reasoning depth.
type: "low"
-
BetaManagedAgentsEffortMedium objectMedium effort. Balances latency and reasoning depth.
type: "medium"
-
BetaManagedAgentsEffortHigh objectHigh effort. Favors reasoning depth.
type: "high"
-
BetaManagedAgentsEffortXhigh objectExtra-high effort. Not all models accept this level.
type: "xhigh"
-
BetaManagedAgentsEffortMax objectMaximum effort. Favors reasoning depth over latency.
type: "max"
-
-
inference_geo: optional stringGeographic region for model inference. When unset, requests fall through to the workspace's default_inference_geo.
-
speed: optional "standard" or "fast"Inference speed mode.
fastprovides significantly faster output token generation at premium pricing. Not all models supportfast; invalid combinations are rejected at create time.-
"standard" -
"fast"
-
-
-
multiagent: BetaManagedAgentsSessionMultiagentCoordinator or nullResolved coordinator topology with full agent definitions for each roster member.
-
type: "coordinator" -
agents: array of BetaManagedAgentsSessionThreadAgent or BetaManagedAgentsAdvisorFull
agentdefinitions the coordinator may spawn as session threads.-
BetaManagedAgentsSessionThreadAgent objectResolved
agentdefinition for a singlesession_thread. Snapshot of the agent at thread creation time. The multiagent roster is not repeated here; read it fromSession.agent.-
type: "agent" -
id: string -
description: string or null -
mcp_servers: array of BetaManagedAgentsMCPServerURLDefinition-
type: "url" -
name: string -
url: string
-
-
model: BetaManagedAgentsModelConfigModel identifier and configuration.
-
name: string -
skills: array of BetaManagedAgentsAnthropicSkill or BetaManagedAgentsCustomSkill-
BetaManagedAgentsAnthropicSkill objectA resolved Anthropic-managed skill.
-
type: "anthropic" -
skill_id: string -
version: string
-
-
BetaManagedAgentsCustomSkill objectA resolved user-created custom skill.
-
type: "custom" -
skill_id: string -
version: string
-
-
-
system: string or null -
tools: array of BetaManagedAgentsAgentToolset20260401 or BetaManagedAgentsMCPToolset or BetaManagedAgentsCustomTool-
BetaManagedAgentsAgentToolset20260401 object-
type: "agent_toolset_20260401" -
configs: array of BetaManagedAgentsAgentToolConfig-
BetaManagedAgentsBashToolConfig objectConfiguration for the bash tool.
-
type: "bash" -
enabled: boolean -
name: "bash" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
type: "always_allow"
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
type: "always_ask"
-
BetaManagedAgentsAutoPolicy objectThe 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"
-
-
-
BetaManagedAgentsEditToolConfig objectConfiguration for the edit tool.
-
type: "edit" -
enabled: boolean -
name: "edit" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsReadToolConfig objectConfiguration for the read tool.
-
type: "read" -
enabled: boolean -
name: "read" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWriteToolConfig objectConfiguration for the write tool.
-
type: "write" -
enabled: boolean -
name: "write" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGlobToolConfig objectConfiguration for the glob tool.
-
type: "glob" -
enabled: boolean -
name: "glob" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGrepToolConfig objectConfiguration for the grep tool.
-
type: "grep" -
enabled: boolean -
name: "grep" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWebFetchToolConfig objectConfiguration for the web_fetch tool.
-
type: "web_fetch" -
enabled: boolean -
name: "web_fetch" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
allowed_domains: optional array of string -
blocked_domains: optional array of string -
max_content_tokens: optional number or nullformat: int32
-
-
BetaManagedAgentsWebSearchToolConfig objectConfiguration for the web_search tool.
-
type: "web_search" -
enabled: boolean -
name: "web_search" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
allowed_domains: optional array of string -
blocked_domains: optional array of string -
user_location: optional BetaManagedAgentsUserLocation or nullApproximate user location for search result localization.
-
type: "approximate"Location precision. Only "approximate" is supported.
-
city: optional string or nullCity name.
minLength: 1, maxLength: 255
-
country: optional string or nullTwo-letter ISO 3166-1 country code, uppercase.
-
region: optional string or nullRegion or state name.
minLength: 1, maxLength: 255
-
timezone: optional string or nullIANA timezone identifier, e.g. "America/Los_Angeles".
minLength: 1, maxLength: 255
-
-
-
-
default_config: BetaManagedAgentsAgentToolsetDefaultConfigResolved default configuration for agent tools.
-
enabled: boolean -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
-
BetaManagedAgentsMCPToolset object-
type: "mcp_toolset" -
configs: array of BetaManagedAgentsMCPToolConfig-
enabled: boolean -
name: string -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
default_config: BetaManagedAgentsMCPToolsetDefaultConfigResolved default configuration for all tools from an MCP server.
-
enabled: boolean -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
mcp_server_name: string
-
-
BetaManagedAgentsCustomTool objectA custom tool as returned in API responses.
-
type: "custom" -
description: string -
input_schema: BetaManagedAgentsCustomToolInputSchemaJSON Schema for custom tool input parameters.
-
type: "object" -
properties: optional map[unknown] or null -
required: optional array of string or null
-
-
name: string
-
-
-
version: numberformat: int32
-
-
BetaManagedAgentsAdvisor objectPlatform advisor roster entry: a model the session's primary thread may consult mid-turn.
-
type: "advisor" -
model: stringThe advisor model id.
-
-
-
-
name: string -
skills: array of BetaManagedAgentsAnthropicSkill or BetaManagedAgentsCustomSkill-
BetaManagedAgentsAnthropicSkill objectA resolved Anthropic-managed skill.
-
BetaManagedAgentsCustomSkill objectA resolved user-created custom skill.
-
-
system: string or null -
tools: array of BetaManagedAgentsAgentToolset20260401 or BetaManagedAgentsMCPToolset or BetaManagedAgentsCustomTool-
BetaManagedAgentsAgentToolset20260401 object -
BetaManagedAgentsMCPToolset object -
BetaManagedAgentsCustomTool objectA custom tool as returned in API responses.
-
-
version: numberformat: int32
-
-
budget: optional BetaManagedAgentsBudgetLimit or nullA hard spend ceiling. The session stops issuing new model requests once the tracked list cost reaches
max_list_cost.-
type: "limit" -
max_list_cost: BetaMonetaryAmountA monetary amount in a specific currency.
-
amount: stringAmount in minor units of the currency, as an integer decimal string with no leading zeros: "2500" is $25.00 and "50" is fifty cents. A string rather than a number so no float rounding is ever applied.
-
currency: BetaCurrencyUppercase ISO-4217 currency code.
USDis the only currency currently supported; the accepted set is closed and grows only when a new currency is priced.
-
-
-
metadata: optional map[string]The session's full metadata bag after the update. Present when the update set non-empty metadata; absent when metadata was unchanged or cleared to empty.
-
title: optional string or nullThe session's new title. Present only when the update changed it.
-
-
BetaManagedAgentsSystemMessageEvent objectA mid-conversation system message event. Carries system-role content that is appended to the session as a
role: "system"turn.-
type: "system.message" -
id: stringUnique identifier for this event.
-
content: array of BetaManagedAgentsSystemContentBlockSystem content blocks. Text-only.
-
type: "text" -
text: stringThe text content.
minLength: 1
-
-
processed_at: optional string or nullA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSessionUsageEvent objectPeriodic snapshot of the session's cumulative usage and tracked list cost.
-
type: "session.usage" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
usage: BetaManagedAgentsSessionUsageSnapshotPoint-in-time snapshot of a session's cumulative usage.
-
active_seconds: optional numberCumulative time in seconds during which the session had at least one thread in running status. Overlapping activity from concurrent threads is counted once. This is the duration the session's runtime cost is priced on.
format: double
-
cache_creation: optional BetaManagedAgentsCacheCreationUsagePrompt-cache creation token usage broken down by cache lifetime.
-
ephemeral_1h_input_tokens: optional numberTokens used to create 1-hour ephemeral cache entries.
format: int32
-
ephemeral_5m_input_tokens: optional numberTokens used to create 5-minute ephemeral cache entries.
format: int32
-
-
cache_read_input_tokens: optional numberTotal tokens read from prompt cache.
format: int32
-
input_tokens: optional numberTotal input tokens consumed across all turns.
format: int32
-
list_cost: optional BetaMonetaryAmountA monetary amount in a specific currency.
-
output_tokens: optional numberTotal output tokens generated across all turns.
format: int32
-
server_tool_use: optional BetaManagedAgentsServerToolUsageCumulative count of server-executed tool invocations, broken down by tool.
-
web_fetch_requests: optional numberNumber of server-executed web fetch requests.
format: int32
-
web_search_requests: optional numberNumber of server-executed web search requests.
format: int32
-
-
-
budget: optional BetaManagedAgentsBudgetLimit or nullA hard spend ceiling. The session stops issuing new model requests once the tracked list cost reaches
max_list_cost.
-
-
-
next_page: optional string or nullOpaque cursor for the next page. Null when no more results.
Example
curl https://api.anthropic.com/v1/sessions/$SESSION_ID/threads/$THREAD_ID/events \
-H 'anthropic-version: 2023-06-01' \
-H 'anthropic-beta: managed-agents-2026-04-01' \
-H "X-Api-Key: $ANTHROPIC_API_KEY"Response (200)
{
"data": [
{
"id": "sevt_011CZkZGOp0iBcp4kaQSihUmy",
"content": [
{
"text": "Where is my order #1234?",
"type": "text"
}
],
"type": "user.message",
"processed_at": "2026-03-15T10:00:00Z"
}
],
"next_page": "next_page"
}Stream Session Thread Events
GET /v1/sessions/{session_id}/threads/{thread_id}/stream
Stream Session Thread Events
Path parameters
-
session_id: string -
thread_id: string
Query parameters
-
event_deltas: optional array of BetaManagedAgentsDeltaTypeWhen set, this connection also receives streaming deltas (
event_start,event_delta) while an event is being produced, before the event itself arrives. Deltas are best-effort; when the final event is produced it carries the complete content. A model request that ends early (an error or interrupt) produces no final event — its terminalspan.model_request_endcloses the preview. Accepts one or more event types to preview and may be repeated:agent.messagestreamscontent_deltafragments;agent.thinkingis start-only — a signal that the agent has begun extended thinking, concluded by theagent.thinkingevent itself. Only previews of the requested event types are sent.-
"agent.message" -
"agent.thinking"
-
Headers
-
"anthropic-beta": optional array of AnthropicBetaOptional header to specify the beta version(s) you want to use.
-
string -
"message-batches-2024-09-24" or "prompt-caching-2024-07-31" or "computer-use-2024-10-22" or 43 more-
"message-batches-2024-09-24" -
"prompt-caching-2024-07-31" -
"computer-use-2024-10-22" -
"computer-use-2025-01-24" -
"pdfs-2024-09-25" -
"token-counting-2024-11-01" -
"token-efficient-tools-2025-02-19" -
"output-128k-2025-02-19" -
"files-api-2025-04-14" -
"mcp-client-2025-04-04" -
"mcp-client-2025-11-20" -
"dev-full-thinking-2025-05-14" -
"interleaved-thinking-2025-05-14" -
"code-execution-2025-05-22" -
"extended-cache-ttl-2025-04-11" -
"context-1m-2025-08-07" -
"context-management-2025-06-27" -
"model-context-window-exceeded-2025-08-26" -
"skills-2025-10-02" -
"fast-mode-2026-02-01" -
"output-300k-2026-03-24" -
"user-profiles-2026-03-24" -
"user-profiles-2026-08-18" -
"user-profiles-2026-09-04" -
"advisor-tool-2026-03-01" -
"managed-agents-2026-04-01" -
"cache-diagnosis-2026-04-07" -
"dreaming-2026-04-21" -
"thinking-token-count-2026-05-13" -
"server-side-fallback-2026-06-01" -
"server-side-fallback-2026-07-01" -
"fallback-credit-2026-06-01" -
"fallback-credit-2026-07-01" -
"agent-memory-2026-07-22" -
"mid-conversation-tool-changes-2026-07-01" -
"compact-2026-01-12" -
"computer-use-2025-11-24" -
"mcp-tunnels-2026-06-22" -
"structured-outputs-2025-11-13" -
"task-budgets-2026-03-13" -
"thinking-display-updates-2026-08-18" -
"ce-user-management-2026-07-13" -
"mid-conversation-output-config-2026-07-01" -
"thinking-binding-controls-2026-08-01" -
"mid-conversation-system-clear-at-2026-08-21" -
"compact-2026-09-04"
-
-
-
"anthropic-workspace-id": optional string
Returns
-
BetaManagedAgentsStreamSessionThreadEvents = BetaManagedAgentsUserMessageEvent or BetaManagedAgentsUserInterruptEvent or BetaManagedAgentsUserToolConfirmationEvent or 34 moreServer-sent event in a single thread's stream.
-
BetaManagedAgentsUserMessageEvent objectA user message event in the session conversation.
-
type: "user.message" -
id: stringUnique identifier for this event.
-
content: array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsRedactedBlockArray of content blocks comprising the user message.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
type: "text" -
text: stringThe text content.
minLength: 1
-
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
type: "image" -
source: BetaManagedAgentsBase64ImageSource or BetaManagedAgentsURLImageSource or BetaManagedAgentsFileImageSourceUnion type for image source variants.
-
BetaManagedAgentsBase64ImageSource objectBase64-encoded image data.
-
type: "base64" -
data: stringBase64-encoded image data.
minLength: 1
-
media_type: stringMIME type of the image (e.g., "image/png", "image/jpeg", "image/gif", "image/webp").
minLength: 1
-
-
BetaManagedAgentsURLImageSource objectImage referenced by URL.
-
type: "url" -
url: stringURL of the image to fetch.
minLength: 1
-
-
BetaManagedAgentsFileImageSource objectImage referenced by file ID.
-
type: "file" -
file_id: stringID of a previously uploaded file.
minLength: 1
-
-
-
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
type: "document" -
source: BetaManagedAgentsBase64DocumentSource or BetaManagedAgentsPlainTextDocumentSource or BetaManagedAgentsURLDocumentSource or BetaManagedAgentsFileDocumentSourceUnion type for document source variants.
-
BetaManagedAgentsBase64DocumentSource objectBase64-encoded document data.
-
type: "base64" -
data: stringBase64-encoded document data.
minLength: 1
-
media_type: stringMIME type of the document (e.g., "application/pdf").
minLength: 1
-
-
BetaManagedAgentsPlainTextDocumentSource objectPlain text document content.
-
type: "text" -
data: stringThe plain text content.
minLength: 1
-
media_type: "text/plain"MIME type of the text content. Must be "text/plain".
-
-
BetaManagedAgentsURLDocumentSource objectDocument referenced by URL.
-
type: "url" -
url: stringURL of the document to fetch.
minLength: 1
-
-
BetaManagedAgentsFileDocumentSource objectDocument referenced by file ID.
-
type: "file" -
file_id: stringID of a previously uploaded file.
minLength: 1
-
-
-
context: optional string or nullAdditional context about the document for the model.
-
title: optional string or nullThe title of the document.
-
-
BetaManagedAgentsRedactedBlock objectPlaceholder for content withheld by Anthropic model policy.
type: "redacted"
-
-
processed_at: optional string or nullA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsUserInterruptEvent objectAn interrupt event that pauses agent execution and returns control to the user.
-
type: "user.interrupt" -
id: stringUnique identifier for this event.
-
processed_at: optional string or nullA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: optional string or nullIf absent, interrupts every non-archived thread in a multiagent session (or the primary alone in a single-agent session). If present, interrupts only the named thread.
-
-
BetaManagedAgentsUserToolConfirmationEvent objectA tool confirmation event that approves or denies a pending tool execution.
-
type: "user.tool_confirmation" -
id: stringUnique identifier for this event.
-
result: "allow" or "deny"UserToolConfirmationResult enum
-
"allow" -
"deny"
-
-
tool_use_id: stringThe id of the
agent.tool_useoragent.mcp_tool_useevent this result corresponds to, which can be found in the lastsession.status_idleevent'sstop_reason.event_idsfield. -
deny_message: optional string or nullOptional message providing context for a 'deny' decision. Only allowed when result is 'deny'.
maxLength: 10000
-
processed_at: optional string or nullA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: optional string or nullSet by the server to the subagent thread this confirmation was routed to. Omitted when it was routed to the primary thread.
-
-
BetaManagedAgentsUserCustomToolResultEvent objectEvent sent by the client providing the result of a custom tool execution.
-
type: "user.custom_tool_result" -
id: stringUnique identifier for this event.
-
custom_tool_use_id: stringThe id of the
agent.custom_tool_useevent this result corresponds to, which can be found in the lastsession.status_idleevent'sstop_reason.event_idsfield. -
content: optional array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsSearchResultBlockThe result content returned by the tool.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
BetaManagedAgentsSearchResultBlock objectA block containing a web search result.
-
type: "search_result" -
citations: BetaManagedAgentsSearchResultCitationsCitation settings for a search result.
-
enabled: booleanWhether citations are enabled for this search result.
-
-
content: array of BetaManagedAgentsSearchResultContentArray of text content blocks from the search result.
-
type: "text" -
text: stringThe text content.
minLength: 1
-
-
source: stringThe URL source of the search result.
minLength: 1
-
title: stringThe title of the search result.
minLength: 1
-
-
-
is_error: optional boolean or nullWhether the tool execution resulted in an error.
-
processed_at: optional string or nullA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: optional string or nullSet by the server to the subagent thread this result was routed to. Omitted when it was routed to the primary thread.
-
-
BetaManagedAgentsAgentCustomToolUseEvent objectEvent emitted when the agent calls a custom tool. The session goes idle until the client sends a
user.custom_tool_resultevent with the result.-
type: "agent.custom_tool_use" -
id: stringUnique identifier for this event.
-
input: map[unknown]Input parameters for the tool call.
-
name: stringName of the custom tool being called.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: optional string or nullWhen set, this event was cross-posted from a subagent's thread to surface its custom tool use on the primary thread's stream. Empty on the thread's own events. Informational only: the server routes the matching
user.custom_tool_resultbycustom_tool_use_id, so clients do not send it back.
-
-
BetaManagedAgentsAgentMessageEvent objectAn agent response event in the session conversation.
-
type: "agent.message" -
id: stringUnique identifier for this event.
-
content: array of BetaManagedAgentsTextBlock or BetaManagedAgentsRedactedBlockArray of text blocks comprising the agent response.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
BetaManagedAgentsRedactedBlock objectPlaceholder for content withheld by Anthropic model policy.
-
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsAgentThinkingEvent objectIndicates the agent is making forward progress via extended thinking. A progress signal, not a content carrier.
-
type: "agent.thinking" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsAgentMCPToolUseEvent objectEvent emitted when the agent invokes a tool provided by an MCP server.
-
type: "agent.mcp_tool_use" -
id: stringUnique identifier for this event.
-
input: map[unknown]Input parameters for the tool call.
-
mcp_server_name: stringName of the MCP server providing the tool.
-
name: stringName of the MCP tool being used.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
evaluated_permission: optional "allow" or "ask" or "deny"AgentEvaluatedPermission enum
-
"allow" -
"ask" -
"deny"
-
-
evaluation: optional BetaManagedAgentsAgentToolEvaluationNames the resolved permission_policy that produced evaluated_permission, and under auto carries the judgement. Open union: clients must tolerate unknown variants.
-
BetaManagedAgentsAgentToolEvaluationAlwaysAllow objectThe resolved permission_policy was always_allow; accompanies evaluated_permission "allow".
type: "always_allow"
-
BetaManagedAgentsAgentToolEvaluationAlwaysAsk objectThe resolved permission_policy was always_ask; accompanies evaluated_permission "ask".
type: "always_ask"
-
BetaManagedAgentsAgentToolEvaluationAuto objectThe resolved permission_policy was auto: the server judged this invocation individually.
-
type: "auto" -
evaluated_permission: BetaManagedAgentsAgentAutoEvaluatedPermissionThe server's per-invocation judgement under the auto permission policy. Its type always equals the event's top-level evaluated_permission. Open union: clients must tolerate unknown variants.
-
BetaManagedAgentsAgentAutoEvaluatedPermissionAllow objectThe server judged the invocation safe to execute without client approval.
type: "allow"
-
BetaManagedAgentsAgentAutoEvaluatedPermissionAsk objectThe server reached no judgement; the invocation is held for client approval.
-
type: "ask" -
reason_code: stringThe judgement's grounds in registry-bound terms, for client branching and audit rather than end-user display. Open registry; currently "indeterminate" (no judgement was reached). Clients must tolerate values outside this set.
maxLength: 64
-
-
BetaManagedAgentsAgentAutoEvaluatedPermissionDeny objectThe server judged the invocation high-risk; it does not execute and a synthetic error tool result is appended.
-
type: "deny" -
reason_code: stringThe judgement's grounds in registry-bound terms. Open registry; currently "high_risk" (judged high-risk; the call does not run). Clients must tolerate values outside this set.
maxLength: 64
-
-
-
-
-
session_thread_id: optional string or nullWhen set, this event was cross-posted from a subagent's thread to surface its permission request on the primary thread's stream. Empty on the thread's own events. Informational only: the server routes the matching
user.tool_confirmationbytool_use_id, so clients do not send it back.
-
-
BetaManagedAgentsAgentMCPToolResultEvent objectEvent representing the result of an MCP tool execution.
-
type: "agent.mcp_tool_result" -
id: stringUnique identifier for this event.
-
mcp_tool_use_id: stringThe id of the
agent.mcp_tool_useevent this result corresponds to. -
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
content: optional array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsSearchResultBlockThe result content returned by the tool.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
BetaManagedAgentsSearchResultBlock objectA block containing a web search result.
-
-
is_error: optional boolean or nullWhether the tool execution resulted in an error.
-
-
BetaManagedAgentsAgentToolUseEvent objectEvent emitted when the agent invokes a built-in agent tool.
-
type: "agent.tool_use" -
id: stringUnique identifier for this event.
-
input: map[unknown]Input parameters for the tool call.
-
name: stringName of the agent tool being used.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
evaluated_permission: optional "allow" or "ask" or "deny"AgentEvaluatedPermission enum
-
"allow" -
"ask" -
"deny"
-
-
evaluation: optional BetaManagedAgentsAgentToolEvaluationNames the resolved permission_policy that produced evaluated_permission, and under auto carries the judgement. Open union: clients must tolerate unknown variants.
-
session_thread_id: optional string or nullWhen set, this event was cross-posted from a subagent's thread to surface its permission request on the primary thread's stream. Empty on the thread's own events. Informational only: the server routes the matching
user.tool_confirmationoruser.tool_resultbytool_use_id, so clients do not send it back.
-
-
BetaManagedAgentsAgentToolResultEvent objectEvent representing the result of an agent tool execution.
-
type: "agent.tool_result" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
tool_use_id: stringThe id of the
agent.tool_useevent this result corresponds to. -
content: optional array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsSearchResultBlockThe result content returned by the tool.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
BetaManagedAgentsSearchResultBlock objectA block containing a web search result.
-
-
is_error: optional boolean or nullWhether the tool execution resulted in an error.
-
-
BetaManagedAgentsAgentThreadMessageReceivedEvent objectDelivery event written to the target thread's input stream when an agent-to-agent message arrives.
-
type: "agent.thread_message_received" -
id: stringUnique identifier for this event.
-
content: array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsRedactedBlockMessage content blocks.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
BetaManagedAgentsRedactedBlock objectPlaceholder for content withheld by Anthropic model policy.
-
-
from_session_thread_id: stringPublic
sthr_ID of the thread that sent the message. -
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
from_agent_name: optional string or nullName of the callable agent this message came from. Absent when received from the primary agent.
-
-
BetaManagedAgentsAgentThreadMessageSentEvent objectObservability event emitted to the sender's output stream when an agent-to-agent message is sent.
-
type: "agent.thread_message_sent" -
id: stringUnique identifier for this event.
-
content: array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsRedactedBlockMessage content blocks.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
BetaManagedAgentsRedactedBlock objectPlaceholder for content withheld by Anthropic model policy.
-
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
to_session_thread_id: stringPublic
sthr_ID of the thread the message was sent to. -
to_agent_name: optional string or nullName of the callable agent this message was sent to. Absent when sent to the primary agent.
-
-
BetaManagedAgentsAgentThreadContextCompactedEvent objectIndicates that context compaction (summarization) occurred during the session.
-
type: "agent.thread_context_compacted" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSessionErrorEvent objectAn error event indicating a problem occurred during session execution.
-
type: "session.error" -
id: stringUnique identifier for this event.
-
error: BetaManagedAgentsUnknownError or BetaManagedAgentsModelOverloadedError or BetaManagedAgentsModelRateLimitedError or 5 more-
BetaManagedAgentsUnknownError objectAn unknown or unexpected error occurred during session execution. A fallback variant; clients that don't recognize a new error code can match on
retry_statusandmessagealone.-
type: "unknown_error" -
message: stringHuman-readable error description.
-
retry_status: BetaManagedAgentsRetryStatusRetrying or BetaManagedAgentsRetryStatusExhausted or BetaManagedAgentsRetryStatusTerminalWhat the client should do next in response to this error.
-
BetaManagedAgentsRetryStatusRetrying objectThe server is retrying automatically. Client should wait; the same error type may fire again as retrying, then once as exhausted when the retry budget runs out.
type: "retrying"
-
BetaManagedAgentsRetryStatusExhausted objectThis turn is dead; queued inputs are flushed and the session returns to idle. Client may send a new prompt.
type: "exhausted"
-
BetaManagedAgentsRetryStatusTerminal objectThe session encountered a terminal error and will transition to
terminatedstate.type: "terminal"
-
-
-
BetaManagedAgentsModelOverloadedError objectThe model is currently overloaded. Emitted after automatic retries are exhausted.
-
type: "model_overloaded_error" -
message: stringHuman-readable error description.
-
retry_status: BetaManagedAgentsRetryStatusRetrying or BetaManagedAgentsRetryStatusExhausted or BetaManagedAgentsRetryStatusTerminalWhat the client should do next in response to this error.
-
BetaManagedAgentsRetryStatusRetrying objectThe server is retrying automatically. Client should wait; the same error type may fire again as retrying, then once as exhausted when the retry budget runs out.
-
BetaManagedAgentsRetryStatusExhausted objectThis turn is dead; queued inputs are flushed and the session returns to idle. Client may send a new prompt.
-
BetaManagedAgentsRetryStatusTerminal objectThe session encountered a terminal error and will transition to
terminatedstate.
-
-
-
BetaManagedAgentsModelRateLimitedError objectThe model request was rate-limited.
-
type: "model_rate_limited_error" -
message: stringHuman-readable error description.
-
retry_status: BetaManagedAgentsRetryStatusRetrying or BetaManagedAgentsRetryStatusExhausted or BetaManagedAgentsRetryStatusTerminalWhat the client should do next in response to this error.
-
BetaManagedAgentsRetryStatusRetrying objectThe server is retrying automatically. Client should wait; the same error type may fire again as retrying, then once as exhausted when the retry budget runs out.
-
BetaManagedAgentsRetryStatusExhausted objectThis turn is dead; queued inputs are flushed and the session returns to idle. Client may send a new prompt.
-
BetaManagedAgentsRetryStatusTerminal objectThe session encountered a terminal error and will transition to
terminatedstate.
-
-
-
BetaManagedAgentsModelRequestFailedError objectA model request failed for a reason other than overload or rate-limiting.
-
type: "model_request_failed_error" -
message: stringHuman-readable error description.
-
retry_status: BetaManagedAgentsRetryStatusRetrying or BetaManagedAgentsRetryStatusExhausted or BetaManagedAgentsRetryStatusTerminalWhat the client should do next in response to this error.
-
BetaManagedAgentsRetryStatusRetrying objectThe server is retrying automatically. Client should wait; the same error type may fire again as retrying, then once as exhausted when the retry budget runs out.
-
BetaManagedAgentsRetryStatusExhausted objectThis turn is dead; queued inputs are flushed and the session returns to idle. Client may send a new prompt.
-
BetaManagedAgentsRetryStatusTerminal objectThe session encountered a terminal error and will transition to
terminatedstate.
-
-
-
BetaManagedAgentsMCPConnectionFailedError objectFailed to connect to an MCP server.
-
type: "mcp_connection_failed_error" -
mcp_server_name: stringName of the MCP server that failed to connect.
-
message: stringHuman-readable error description.
-
retry_status: BetaManagedAgentsRetryStatusRetrying or BetaManagedAgentsRetryStatusExhausted or BetaManagedAgentsRetryStatusTerminalWhat the client should do next in response to this error.
-
BetaManagedAgentsRetryStatusRetrying objectThe server is retrying automatically. Client should wait; the same error type may fire again as retrying, then once as exhausted when the retry budget runs out.
-
BetaManagedAgentsRetryStatusExhausted objectThis turn is dead; queued inputs are flushed and the session returns to idle. Client may send a new prompt.
-
BetaManagedAgentsRetryStatusTerminal objectThe session encountered a terminal error and will transition to
terminatedstate.
-
-
-
BetaManagedAgentsMCPAuthenticationFailedError objectAuthentication to an MCP server failed.
-
type: "mcp_authentication_failed_error" -
mcp_server_name: stringName of the MCP server that failed authentication.
-
message: stringHuman-readable error description.
-
retry_status: BetaManagedAgentsRetryStatusRetrying or BetaManagedAgentsRetryStatusExhausted or BetaManagedAgentsRetryStatusTerminalWhat the client should do next in response to this error.
-
BetaManagedAgentsRetryStatusRetrying objectThe server is retrying automatically. Client should wait; the same error type may fire again as retrying, then once as exhausted when the retry budget runs out.
-
BetaManagedAgentsRetryStatusExhausted objectThis turn is dead; queued inputs are flushed and the session returns to idle. Client may send a new prompt.
-
BetaManagedAgentsRetryStatusTerminal objectThe session encountered a terminal error and will transition to
terminatedstate.
-
-
-
BetaManagedAgentsBillingError objectThe caller's organization or workspace cannot make model requests — out of credits or spend limit reached. Retrying with the same credentials will not succeed; the caller must resolve the billing state.
-
type: "billing_error" -
message: stringHuman-readable error description.
-
retry_status: BetaManagedAgentsRetryStatusRetrying or BetaManagedAgentsRetryStatusExhausted or BetaManagedAgentsRetryStatusTerminalWhat the client should do next in response to this error.
-
BetaManagedAgentsRetryStatusRetrying objectThe server is retrying automatically. Client should wait; the same error type may fire again as retrying, then once as exhausted when the retry budget runs out.
-
BetaManagedAgentsRetryStatusExhausted objectThis turn is dead; queued inputs are flushed and the session returns to idle. Client may send a new prompt.
-
BetaManagedAgentsRetryStatusTerminal objectThe session encountered a terminal error and will transition to
terminatedstate.
-
-
-
BetaManagedAgentsCredentialHostUnreachableError objectAn
environment_variablecredential'sauth.networking.allowed_hostsincludes a host the environment's network policy does not permit.-
type: "credential_host_unreachable_error" -
credential_id: stringID of the affected credential.
-
message: stringHuman-readable error description.
-
retry_status: BetaManagedAgentsRetryStatusRetrying or BetaManagedAgentsRetryStatusExhausted or BetaManagedAgentsRetryStatusTerminalWhat the client should do next in response to this error.
-
BetaManagedAgentsRetryStatusRetrying objectThe server is retrying automatically. Client should wait; the same error type may fire again as retrying, then once as exhausted when the retry budget runs out.
-
BetaManagedAgentsRetryStatusExhausted objectThis turn is dead; queued inputs are flushed and the session returns to idle. Client may send a new prompt.
-
BetaManagedAgentsRetryStatusTerminal objectThe session encountered a terminal error and will transition to
terminatedstate.
-
-
vault_id: stringID of the vault containing the affected credential.
-
-
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSessionStatusRescheduledEvent objectIndicates the session is recovering from an error state and is rescheduled for execution.
-
type: "session.status_rescheduled" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSessionStatusRunningEvent objectIndicates the session is actively running and the agent is working.
-
type: "session.status_running" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSessionStatusIdleEvent objectIndicates the agent has paused and is awaiting user input.
-
type: "session.status_idle" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
stop_reason: BetaManagedAgentsSessionEndTurn or BetaManagedAgentsSessionRequiresAction or BetaManagedAgentsSessionRetriesExhausted or BetaManagedAgentsSessionBudgetReached-
BetaManagedAgentsSessionEndTurn objectThe agent completed its turn naturally and is ready for the next user message.
type: "end_turn"
-
BetaManagedAgentsSessionRequiresAction objectThe agent is idle waiting on one or more blocking user-input events (tool confirmation, custom tool result, etc.). Resolving all of them transitions the session back to running.
-
type: "requires_action" -
event_ids: array of stringThe ids of events the agent is blocked on. Resolving fewer than all re-emits
session.status_idlewith the remainder.
-
-
BetaManagedAgentsSessionRetriesExhausted objectThe turn ended because repeated errors exhausted the retry budget or an error escalated to
retry_status: 'exhausted'.type: "retries_exhausted"
-
BetaManagedAgentsSessionBudgetReached objectThe agent stopped because the session's tracked list cost reached its budget, or because its usage includes a model with no list price (which the budget cannot measure). Raise the budget to continue — or, if raising is rejected because a model has no list price, remove the budget.
type: "budget_reached"
-
-
-
BetaManagedAgentsSessionStatusTerminatedEvent objectIndicates the session has terminated, either due to an error or completion.
-
type: "session.status_terminated" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSessionThreadCreatedEvent objectEmitted when a subagent is spawned as a new thread. Written to the parent thread's output stream so clients observing the session see child creation.
-
type: "session.thread_created" -
id: stringUnique identifier for this event.
-
agent_name: stringName of the callable agent the thread runs.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: stringPublic
sthr_ID of the newly created thread.
-
-
BetaManagedAgentsSpanOutcomeEvaluationStartEvent objectEmitted when an outcome evaluation cycle begins.
-
type: "span.outcome_evaluation_start" -
id: stringUnique identifier for this event.
-
iteration: number0-indexed revision cycle. 0 is the first evaluation; 1 is the re-evaluation after the first revision; etc.
format: int32
-
outcome_id: stringThe
outc_ID of the outcome being evaluated. -
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSpanOutcomeEvaluationEndEvent objectEmitted when an outcome evaluation cycle completes. Carries the verdict and aggregate token usage. A verdict of
needs_revisionmeans another evaluation cycle follows;satisfied,max_iterations_reached,failed, orinterruptedare terminal — no further evaluation cycles follow.-
type: "span.outcome_evaluation_end" -
id: stringUnique identifier for this event.
-
explanation: stringHuman-readable explanation of the verdict. For
needs_revision, describes which criteria failed and why. -
iteration: number0-indexed revision cycle, matching the corresponding
span.outcome_evaluation_start.format: int32
-
outcome_evaluation_start_id: stringThe id of the corresponding
span.outcome_evaluation_startevent. -
outcome_id: stringThe
outc_ID of the outcome being evaluated. -
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
result: stringEvaluation verdict. 'satisfied': criteria met, session goes idle. 'needs_revision': criteria not met, another revision cycle follows. 'max_iterations_reached': evaluation budget exhausted with criteria still unmet — one final acknowledgment turn follows before the session goes idle, but no further evaluation runs. 'failed': grader determined the rubric does not apply to the deliverables. 'interrupted': user sent an interrupt while evaluation was in progress.
-
usage: BetaManagedAgentsSpanModelUsageToken usage for a single model request.
-
cache_creation_input_tokens: numberTokens used to create prompt cache in this request.
format: int32
-
cache_read_input_tokens: numberTokens read from prompt cache in this request.
format: int32
-
input_tokens: numberInput tokens consumed by this request.
format: int32
-
output_tokens: numberOutput tokens generated by this request.
format: int32
-
speed: optional "standard" or "fast" or nullInference speed mode.
fastprovides significantly faster output token generation at premium pricing. Not all models supportfast; invalid combinations are rejected at create time.-
"standard" -
"fast"
-
-
-
-
BetaManagedAgentsSpanModelRequestStartEvent objectEmitted when a model request is initiated by the agent.
-
type: "span.model_request_start" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSpanModelRequestEndEvent objectEmitted when a model request completes.
-
type: "span.model_request_end" -
id: stringUnique identifier for this event.
-
is_error: boolean or nullWhether the model request resulted in an error.
-
model_request_start_id: stringThe id of the corresponding
span.model_request_startevent. -
model_usage: BetaManagedAgentsSpanModelUsageToken usage for a single model request.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSpanOutcomeEvaluationOngoingEvent objectPeriodic heartbeat emitted while an outcome evaluation cycle is in progress. Distinguishes 'evaluation is actively running' from 'evaluation is stuck' between the corresponding
span.outcome_evaluation_startandspan.outcome_evaluation_endevents.-
type: "span.outcome_evaluation_ongoing" -
id: stringUnique identifier for this event.
-
iteration: number0-indexed revision cycle, matching the corresponding
span.outcome_evaluation_start.format: int32
-
outcome_id: stringThe
outc_ID of the outcome being evaluated. -
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsUserDefineOutcomeEvent objectEcho of a
user.define_outcomeinput event. Carries the server-generatedoutcome_idthat subsequentspan.outcome_evaluation_*events reference.-
type: "user.define_outcome" -
id: stringUnique identifier for this event.
-
description: stringWhat the agent should produce. Copied from the input event.
-
max_iterations: number or nullEvaluate-then-revise cycles before giving up. Default 3, max 20.
format: int32
-
outcome_id: stringServer-generated
outc_ID for this outcome. Referenced byspan.outcome_evaluation_*events and the session'soutcome_evaluationslist. -
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
rubric: BetaManagedAgentsFileRubric or BetaManagedAgentsTextRubricRubric for grading the quality of an outcome.
-
BetaManagedAgentsFileRubric objectRubric referenced by a file uploaded via the Files API.
-
type: "file" -
file_id: stringID of the rubric file.
-
-
BetaManagedAgentsTextRubric objectRubric content provided inline as text.
-
type: "text" -
content: stringRubric content. Plain text or markdown — the grader treats it as freeform text.
-
-
-
-
BetaManagedAgentsSessionDeletedEvent objectEmitted when a session has been deleted. Terminates any active event stream — no further events will be emitted for this session.
-
type: "session.deleted" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSessionThreadStatusRunningEvent objectA session thread has begun executing. Emitted on the thread's own stream and cross-posted to the primary stream for child threads.
-
type: "session.thread_status_running" -
id: stringUnique identifier for this event.
-
agent_name: stringName of the agent the thread runs.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: stringPublic sthr_ ID of the thread that started running.
-
-
BetaManagedAgentsSessionThreadStatusIdleEvent objectA session thread has yielded and is awaiting input. Emitted on the thread's own stream and cross-posted to the primary stream for child threads.
-
type: "session.thread_status_idle" -
id: stringUnique identifier for this event.
-
agent_name: stringName of the agent the thread runs.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: stringPublic sthr_ ID of the thread that went idle.
-
stop_reason: BetaManagedAgentsSessionEndTurn or BetaManagedAgentsSessionRequiresAction or BetaManagedAgentsSessionRetriesExhausted or BetaManagedAgentsSessionBudgetReached-
BetaManagedAgentsSessionEndTurn objectThe agent completed its turn naturally and is ready for the next user message.
-
BetaManagedAgentsSessionRequiresAction objectThe agent is idle waiting on one or more blocking user-input events (tool confirmation, custom tool result, etc.). Resolving all of them transitions the session back to running.
-
BetaManagedAgentsSessionRetriesExhausted objectThe turn ended because repeated errors exhausted the retry budget or an error escalated to
retry_status: 'exhausted'. -
BetaManagedAgentsSessionBudgetReached objectThe agent stopped because the session's tracked list cost reached its budget, or because its usage includes a model with no list price (which the budget cannot measure). Raise the budget to continue — or, if raising is rejected because a model has no list price, remove the budget.
-
-
-
BetaManagedAgentsSessionThreadStatusTerminatedEvent objectA session thread has terminated and will accept no further input. Emitted on the thread's own stream and cross-posted to the primary stream for child threads.
-
type: "session.thread_status_terminated" -
id: stringUnique identifier for this event.
-
agent_name: stringName of the agent the thread runs.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: stringPublic sthr_ ID of the thread that terminated.
-
-
BetaManagedAgentsUserToolResultEvent objectEvent sent by the client providing the result of an agent-toolset tool execution. Only valid on
self_hostedenvironments, where sandbox-routed tools are executed by the client rather than the server.-
type: "user.tool_result" -
id: stringUnique identifier for this event.
-
tool_use_id: stringThe id of the
agent.tool_useevent this result corresponds to, which can be found in the lastsession.status_idleevent'sstop_reason.event_idsfield. -
content: optional array of BetaManagedAgentsTextBlock or BetaManagedAgentsImageBlock or BetaManagedAgentsDocumentBlock or BetaManagedAgentsSearchResultBlockThe result content returned by the tool.
-
BetaManagedAgentsTextBlock objectRegular text content.
-
BetaManagedAgentsImageBlock objectImage content specified directly as base64 data or as a reference via a URL.
-
BetaManagedAgentsDocumentBlock objectDocument content, either specified directly as base64 data, as text, or as a reference via a URL.
-
BetaManagedAgentsSearchResultBlock objectA block containing a web search result.
-
-
is_error: optional boolean or nullWhether the tool execution resulted in an error.
-
processed_at: optional string or nullA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: optional string or nullSet by the server to the subagent thread this result was routed to. Omitted when it was routed to the primary thread.
-
-
BetaManagedAgentsSessionThreadStatusRescheduledEvent objectA session thread hit a transient error and is retrying automatically. Emitted on the thread's own stream and cross-posted to the primary stream for child threads.
-
type: "session.thread_status_rescheduled" -
id: stringUnique identifier for this event.
-
agent_name: stringName of the agent the thread runs.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
session_thread_id: stringPublic sthr_ ID of the thread that is retrying.
-
-
BetaManagedAgentsSessionUpdatedEvent objectEmitted when an UpdateSession request changed at least one field. Carries only the fields that changed; absent fields were not part of the update. The new configuration applies from the next turn.
-
type: "session.updated" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
agent: optional BetaManagedAgentsSessionAgent or nullResolved
agentdefinition for asession. Snapshot of theagentatsessioncreation time.-
type: "agent" -
id: string -
description: string or null -
mcp_servers: array of BetaManagedAgentsMCPServerURLDefinition-
type: "url" -
name: string -
url: string
-
-
model: BetaManagedAgentsModelConfigModel identifier and configuration.
-
id: BetaManagedAgentsModelThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1" or "claude-sonnet-5" or "claude-fable-5" or 11 moreThe model that will power your agent.
See models for additional details and options.
-
"claude-fable-5-1"Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows
-
"claude-sonnet-5"High-performance model for coding and agents
-
"claude-fable-5"Next generation of intelligence for the hardest knowledge work and coding problems
-
"claude-opus-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-8"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-7"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-6"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-6"Best combination of speed and intelligence
-
"claude-haiku-4-5"Fastest model with near-frontier intelligence
-
"claude-haiku-4-5-20251001"Fastest model with near-frontier intelligence
-
"claude-opus-4-5"Powerful intelligence for long-running agents and coding
-
"claude-opus-4-5-20251101"Powerful intelligence for long-running agents and coding
-
"claude-sonnet-4-5"High-performance model for agents and coding
-
"claude-sonnet-4-5-20250929"High-performance model for agents and coding
-
-
string
-
-
effort: optional BetaManagedAgentsEffortLow or BetaManagedAgentsEffortMedium or BetaManagedAgentsEffortHigh or 2 moreHow hard Claude works on each turn. Sets
output_config.efforton every Messages call the session makes.-
BetaManagedAgentsEffortLow objectLow effort. Favors latency over reasoning depth.
type: "low"
-
BetaManagedAgentsEffortMedium objectMedium effort. Balances latency and reasoning depth.
type: "medium"
-
BetaManagedAgentsEffortHigh objectHigh effort. Favors reasoning depth.
type: "high"
-
BetaManagedAgentsEffortXhigh objectExtra-high effort. Not all models accept this level.
type: "xhigh"
-
BetaManagedAgentsEffortMax objectMaximum effort. Favors reasoning depth over latency.
type: "max"
-
-
inference_geo: optional stringGeographic region for model inference. When unset, requests fall through to the workspace's default_inference_geo.
-
speed: optional "standard" or "fast"Inference speed mode.
fastprovides significantly faster output token generation at premium pricing. Not all models supportfast; invalid combinations are rejected at create time.-
"standard" -
"fast"
-
-
-
multiagent: BetaManagedAgentsSessionMultiagentCoordinator or nullResolved coordinator topology with full agent definitions for each roster member.
-
type: "coordinator" -
agents: array of BetaManagedAgentsSessionThreadAgent or BetaManagedAgentsAdvisorFull
agentdefinitions the coordinator may spawn as session threads.-
BetaManagedAgentsSessionThreadAgent objectResolved
agentdefinition for a singlesession_thread. Snapshot of the agent at thread creation time. The multiagent roster is not repeated here; read it fromSession.agent.-
type: "agent" -
id: string -
description: string or null -
mcp_servers: array of BetaManagedAgentsMCPServerURLDefinition-
type: "url" -
name: string -
url: string
-
-
model: BetaManagedAgentsModelConfigModel identifier and configuration.
-
name: string -
skills: array of BetaManagedAgentsAnthropicSkill or BetaManagedAgentsCustomSkill-
BetaManagedAgentsAnthropicSkill objectA resolved Anthropic-managed skill.
-
type: "anthropic" -
skill_id: string -
version: string
-
-
BetaManagedAgentsCustomSkill objectA resolved user-created custom skill.
-
type: "custom" -
skill_id: string -
version: string
-
-
-
system: string or null -
tools: array of BetaManagedAgentsAgentToolset20260401 or BetaManagedAgentsMCPToolset or BetaManagedAgentsCustomTool-
BetaManagedAgentsAgentToolset20260401 object-
type: "agent_toolset_20260401" -
configs: array of BetaManagedAgentsAgentToolConfig-
BetaManagedAgentsBashToolConfig objectConfiguration for the bash tool.
-
type: "bash" -
enabled: boolean -
name: "bash" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
type: "always_allow"
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
type: "always_ask"
-
BetaManagedAgentsAutoPolicy objectThe 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"
-
-
-
BetaManagedAgentsEditToolConfig objectConfiguration for the edit tool.
-
type: "edit" -
enabled: boolean -
name: "edit" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsReadToolConfig objectConfiguration for the read tool.
-
type: "read" -
enabled: boolean -
name: "read" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWriteToolConfig objectConfiguration for the write tool.
-
type: "write" -
enabled: boolean -
name: "write" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGlobToolConfig objectConfiguration for the glob tool.
-
type: "glob" -
enabled: boolean -
name: "glob" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsGrepToolConfig objectConfiguration for the grep tool.
-
type: "grep" -
enabled: boolean -
name: "grep" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
BetaManagedAgentsWebFetchToolConfig objectConfiguration for the web_fetch tool.
-
type: "web_fetch" -
enabled: boolean -
name: "web_fetch" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
allowed_domains: optional array of string -
blocked_domains: optional array of string -
max_content_tokens: optional number or nullformat: int32
-
-
BetaManagedAgentsWebSearchToolConfig objectConfiguration for the web_search tool.
-
type: "web_search" -
enabled: boolean -
name: "web_search" -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
allowed_domains: optional array of string -
blocked_domains: optional array of string -
user_location: optional BetaManagedAgentsUserLocation or nullApproximate user location for search result localization.
-
type: "approximate"Location precision. Only "approximate" is supported.
-
city: optional string or nullCity name.
minLength: 1, maxLength: 255
-
country: optional string or nullTwo-letter ISO 3166-1 country code, uppercase.
-
region: optional string or nullRegion or state name.
minLength: 1, maxLength: 255
-
timezone: optional string or nullIANA timezone identifier, e.g. "America/Los_Angeles".
minLength: 1, maxLength: 255
-
-
-
-
default_config: BetaManagedAgentsAgentToolsetDefaultConfigResolved default configuration for agent tools.
-
enabled: boolean -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
-
BetaManagedAgentsMCPToolset object-
type: "mcp_toolset" -
configs: array of BetaManagedAgentsMCPToolConfig-
enabled: boolean -
name: string -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
default_config: BetaManagedAgentsMCPToolsetDefaultConfigResolved default configuration for all tools from an MCP server.
-
enabled: boolean -
permission_policy: BetaManagedAgentsAlwaysAllowPolicy or BetaManagedAgentsAlwaysAskPolicy or BetaManagedAgentsAutoPolicyPermission policy for tool execution.
-
BetaManagedAgentsAlwaysAllowPolicy objectTool calls are automatically approved without user confirmation.
-
BetaManagedAgentsAlwaysAskPolicy objectTool calls require user confirmation before execution.
-
BetaManagedAgentsAutoPolicy objectThe 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.
-
-
-
mcp_server_name: string
-
-
BetaManagedAgentsCustomTool objectA custom tool as returned in API responses.
-
type: "custom" -
description: string -
input_schema: BetaManagedAgentsCustomToolInputSchemaJSON Schema for custom tool input parameters.
-
type: "object" -
properties: optional map[unknown] or null -
required: optional array of string or null
-
-
name: string
-
-
-
version: numberformat: int32
-
-
BetaManagedAgentsAdvisor objectPlatform advisor roster entry: a model the session's primary thread may consult mid-turn.
-
type: "advisor" -
model: stringThe advisor model id.
-
-
-
-
name: string -
skills: array of BetaManagedAgentsAnthropicSkill or BetaManagedAgentsCustomSkill-
BetaManagedAgentsAnthropicSkill objectA resolved Anthropic-managed skill.
-
BetaManagedAgentsCustomSkill objectA resolved user-created custom skill.
-
-
system: string or null -
tools: array of BetaManagedAgentsAgentToolset20260401 or BetaManagedAgentsMCPToolset or BetaManagedAgentsCustomTool-
BetaManagedAgentsAgentToolset20260401 object -
BetaManagedAgentsMCPToolset object -
BetaManagedAgentsCustomTool objectA custom tool as returned in API responses.
-
-
version: numberformat: int32
-
-
budget: optional BetaManagedAgentsBudgetLimit or nullA hard spend ceiling. The session stops issuing new model requests once the tracked list cost reaches
max_list_cost.-
type: "limit" -
max_list_cost: BetaMonetaryAmountA monetary amount in a specific currency.
-
amount: stringAmount in minor units of the currency, as an integer decimal string with no leading zeros: "2500" is $25.00 and "50" is fifty cents. A string rather than a number so no float rounding is ever applied.
-
currency: BetaCurrencyUppercase ISO-4217 currency code.
USDis the only currency currently supported; the accepted set is closed and grows only when a new currency is priced.
-
-
-
metadata: optional map[string]The session's full metadata bag after the update. Present when the update set non-empty metadata; absent when metadata was unchanged or cleared to empty.
-
title: optional string or nullThe session's new title. Present only when the update changed it.
-
-
BetaManagedAgentsStartEvent objectOpens a preview of a buffered event. Carries the previewed event's type and id only. Followed by zero or more event_delta events with the same event id, normally concluded by the buffered event carrying that id. If the producing model request ends without that event (an error or interrupt mid-stream), its terminal span.model_request_end closes the preview. Only sent on stream connections that opt in via event_deltas; never appears in event history.
-
type: "event_start" -
event: BetaManagedAgentsStartEventPreviewThe previewed event's type and id. The event type determines which delta types the preview's event_delta events carry: agent.message events stream content_delta fragments; agent.thinking previews are start-only — no deltas follow, and the buffered agent.thinking with the same id concludes them.
-
BetaManagedAgentsAgentMessagePreview object-
type: "agent.message" -
id: stringThe id the buffered agent.message will carry if it is emitted. Matches the event_id on this preview's event_delta events.
-
-
BetaManagedAgentsAgentThinkingPreview object-
type: "agent.thinking" -
id: stringThe id the buffered agent.thinking will carry if it is emitted. Start-only — no event_delta events follow.
-
-
-
-
BetaManagedAgentsDeltaEvent objectAn incremental update to an event that is still being streamed. Deltas are best-effort and may stop early; when the buffered event with id == event_id is produced it carries the complete content. A model request that ends early (an error or interrupt) produces no buffered event — its terminal span.model_request_end closes the preview. Only sent on stream connections that opt in via event_deltas; never appears in event history.
-
type: "event_delta" -
delta: BetaManagedAgentsDeltaContentOne fragment of the previewed event. The delta type is named for the previewed event's field it streams into: agent.message events stream content_delta fragments, each a partial element of the content array.
-
type: "content_delta" -
content: BetaManagedAgentsTextBlockRegular text content.
-
index: optional numberWhich entry in the previewed event's content array this fragment lands in. Insert content as that entry when the index is new; append to the existing entry otherwise.
format: uint32
-
-
event_id: stringThe id of the event being previewed. Matches event.id on the corresponding event_start and the buffered event that reconciles the preview.
-
-
BetaManagedAgentsSystemMessageEvent objectA mid-conversation system message event. Carries system-role content that is appended to the session as a
role: "system"turn.-
type: "system.message" -
id: stringUnique identifier for this event.
-
content: array of BetaManagedAgentsSystemContentBlockSystem content blocks. Text-only.
-
type: "text" -
text: stringThe text content.
minLength: 1
-
-
processed_at: optional string or nullA timestamp in RFC 3339 format
format: date-time
-
-
BetaManagedAgentsSessionUsageEvent objectPeriodic snapshot of the session's cumulative usage and tracked list cost.
-
type: "session.usage" -
id: stringUnique identifier for this event.
-
processed_at: stringA timestamp in RFC 3339 format
format: date-time
-
usage: BetaManagedAgentsSessionUsageSnapshotPoint-in-time snapshot of a session's cumulative usage.
-
active_seconds: optional numberCumulative time in seconds during which the session had at least one thread in running status. Overlapping activity from concurrent threads is counted once. This is the duration the session's runtime cost is priced on.
format: double
-
cache_creation: optional BetaManagedAgentsCacheCreationUsagePrompt-cache creation token usage broken down by cache lifetime.
-
ephemeral_1h_input_tokens: optional numberTokens used to create 1-hour ephemeral cache entries.
format: int32
-
ephemeral_5m_input_tokens: optional numberTokens used to create 5-minute ephemeral cache entries.
format: int32
-
-
cache_read_input_tokens: optional numberTotal tokens read from prompt cache.
format: int32
-
input_tokens: optional numberTotal input tokens consumed across all turns.
format: int32
-
list_cost: optional BetaMonetaryAmountA monetary amount in a specific currency.
-
output_tokens: optional numberTotal output tokens generated across all turns.
format: int32
-
server_tool_use: optional BetaManagedAgentsServerToolUsageCumulative count of server-executed tool invocations, broken down by tool.
-
web_fetch_requests: optional numberNumber of server-executed web fetch requests.
format: int32
-
web_search_requests: optional numberNumber of server-executed web search requests.
format: int32
-
-
-
budget: optional BetaManagedAgentsBudgetLimit or nullA hard spend ceiling. The session stops issuing new model requests once the tracked list cost reaches
max_list_cost.
-
-
Example
curl https://api.anthropic.com/v1/sessions/$SESSION_ID/threads/$THREAD_ID/stream \
-H 'anthropic-version: 2023-06-01' \
-H 'anthropic-beta: managed-agents-2026-04-01' \
-H "X-Api-Key: $ANTHROPIC_API_KEY"Response (200)
{
"id": "sevt_011CZkZGOp0iBcp4kaQSihUmy",
"content": [
{
"text": "Where is my order #1234?",
"type": "text"
}
],
"type": "user.message",
"processed_at": "2026-03-15T10:00:00Z"
}