Pesan
Models
beta_advisor_message_iteration_usage: object{ cache_creation, cache_creation_input_tokens, cache_read_input_tokens, 4 more }Token usage for an advisor sub-inference iteration.
Token usage for an advisor sub-inference iteration.
beta_advisor_redacted_result_block: object{ encrypted_content, stop_reason, type }
Opaque blob containing the advisor's output. Round-trip verbatim; do not inspect or modify.
The advisor sub-inference's stop reason (same values as the top-level message stop_reason).
beta_advisor_redacted_result_block_param: object{ encrypted_content, type, stop_reason }
Opaque blob produced by a prior response; must be round-tripped verbatim.
beta_advisor_result_block: object{ stop_reason, text, type }
The advisor sub-inference's stop reason (same values as the top-level message stop_reason). max_tokens indicates the advisor's output was truncated at the tool's max_tokens value or the advisor model's policy cap.
beta_advisor_result_block_param: object{ text, type, stop_reason }
beta_advisor_tool_20260301: object{ model, name, type, 7 more }
beta_advisor_tool_result_block: object{ content, tool_use_id, type }
beta_advisor_tool_result_block_param: object{ content, tool_use_id, type, cache_control }
beta_advisor_tool_result_error: object{ error_code, type }
error_code: "max_uses_exceeded" or "prompt_too_long" or "too_many_requests" or 4 more
beta_advisor_tool_result_error_param: object{ error_code, type }
error_code: "max_uses_exceeded" or "prompt_too_long" or "too_many_requests" or 4 more
beta_all_thinking_turns: object{ type }
beta_base64_image_source: object{ data, media_type, type }
data: string
media_type: "image/jpeg" or "image/png" or "image/gif" or "image/webp"
beta_base64_pdf_source: object{ data, media_type, type }
data: string
beta_bash_code_execution_output_block: object{ file_id, type }
beta_bash_code_execution_output_block_param: object{ file_id, type }
beta_bash_code_execution_result_block: object{ content, return_code, stderr, 2 more }
content: array of BetaBashCodeExecutionOutputBlock { file_id, type }
beta_bash_code_execution_result_block_param: object{ content, return_code, stderr, 2 more }
content: array of BetaBashCodeExecutionOutputBlockParam { file_id, type }
beta_bash_code_execution_tool_result_block: object{ content, tool_use_id, type }
beta_bash_code_execution_tool_result_block_param: object{ content, tool_use_id, type, cache_control }
beta_bash_code_execution_tool_result_error: object{ error_code, type }
error_code: "invalid_tool_input" or "unavailable" or "too_many_requests" or 2 more
beta_bash_code_execution_tool_result_error_param: object{ error_code, type }
error_code: "invalid_tool_input" or "unavailable" or "too_many_requests" or 2 more
beta_browser_close_tab_config: object{ defer_loading, enabled }close_tab's config overrides.
close_tab's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_browser_double_click_config: object{ defer_loading, enabled }double_click's config overrides.
double_click's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_browser_file_upload_config: object{ defer_loading, enabled }file_upload's config overrides.
file_upload's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_browser_find_config: object{ defer_loading, enabled }find's config overrides.
find's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_browser_form_input_config: object{ defer_loading, enabled }form_input's config overrides.
form_input's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_browser_get_page_text_config: object{ defer_loading, enabled }get_page_text's config overrides.
get_page_text's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_browser_hold_key_config: object{ defer_loading, enabled }hold_key's config overrides.
hold_key's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_browser_hover_config: object{ defer_loading, enabled }hover's config overrides.
hover's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_browser_javascript_exec_config: object{ defer_loading, enabled }javascript_exec's config overrides.
javascript_exec's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_browser_key_config: object{ defer_loading, enabled }key's config overrides.
key's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_browser_left_click_config: object{ defer_loading, enabled }left_click's config overrides.
left_click's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_browser_left_click_drag_config: object{ defer_loading, enabled }left_click_drag's config overrides.
left_click_drag's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_browser_left_mouse_down_config: object{ defer_loading, enabled }left_mouse_down's config overrides.
left_mouse_down's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_browser_left_mouse_up_config: object{ defer_loading, enabled }left_mouse_up's config overrides.
left_mouse_up's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_browser_list_tabs_config: object{ defer_loading, enabled }list_tabs's config overrides.
list_tabs's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_browser_middle_click_config: object{ defer_loading, enabled }middle_click's config overrides.
middle_click's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_browser_mouse_move_config: object{ defer_loading, enabled }mouse_move's config overrides.
mouse_move's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_browser_navigate_config: object{ defer_loading, enabled }navigate's config overrides.
navigate's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_browser_new_tab_config: object{ defer_loading, enabled }new_tab's config overrides.
new_tab's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_browser_read_console_config: object{ defer_loading, enabled }read_console's config overrides.
read_console's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_browser_read_network_config: object{ defer_loading, enabled }read_network's config overrides.
read_network's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_browser_read_page_config: object{ defer_loading, enabled }read_page's config overrides.
read_page's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_browser_right_click_config: object{ defer_loading, enabled }right_click's config overrides.
right_click's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_browser_screenshot_config: object{ defer_loading, enabled }screenshot's config overrides.
screenshot's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_browser_scroll_config: object{ defer_loading, enabled }scroll's config overrides.
scroll's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_browser_scroll_to_config: object{ defer_loading, enabled }scroll_to's config overrides.
scroll_to's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_browser_state_block_param: object{ tabs, type, cache_control, state_changes }The caller's browser state after a browser toolset member call —
the full inventory of open tabs, which tab is active, and any side
effects (tabs opened, download state changes) the call produced.
The caller's browser state after a browser toolset member call — the full inventory of open tabs, which tab is active, and any side effects (tabs opened, download state changes) the call produced.
At most one per tool_result, only on a non-error result answering a
browser toolset member tool_use. The server renders the
model-visible text from it; the model never sees the raw fields.
beta_browser_state_change: BetaBrowserStateChangeTabOpened { tab_id, type } or BetaBrowserStateChangeDownloadStarted { download_id, type, url } or BetaBrowserStateChangeDownloadCompleted { download_id, type, url, 2 more } or BetaBrowserStateChangeDownloadFailed { download_id, type, url, error }A tab this call's execution opened that remains open at its end —
the creation delta of the tabs inventory, not an event log.
A tab this call's execution opened that remains open at its end —
the creation delta of the tabs inventory, not an event log.
Carries only the tab_id; the tab's title and url live on its
tabs entry, which must include the same tab_id. A tab opened
during a failed call gets no deferred tab_opened; it simply appears
in the next result's tabs inventory.
beta_browser_state_change_download_completed: object{ download_id, type, url, 2 more }A file download that finished during this call, reported with the
same download_id as its download_started — or without a prior
download_started, when the download finished during the call that
started it (at most one state change per download_id per result).
A file download that finished during this call, reported with the
same download_id as its download_started — or without a prior
download_started, when the download finished during the call that
started it (at most one state change per download_id per result).
download_id: stringThe caller-assigned identifier for this download, stable across the state changes reporting it.
The caller-assigned identifier for this download, stable across the state changes reporting it.
url: stringThe final post-redirect URL the download was served from.
The final post-redirect URL the download was served from.
path: optional stringWhere the executor saved the file, on the executor's filesystem. Only included when another tool in the same environment can read the file at that path.
Where the executor saved the file, on the executor's filesystem. Only included when another tool in the same environment can read the file at that path.
size_bytes: optional numberThe completed download's size.
The completed download's size.
beta_browser_state_change_download_failed: object{ download_id, type, url, error }A file download that failed — or was cancelled — during this call.
A file download that failed — or was cancelled — during this call.
download_id: stringThe caller-assigned identifier for this download, stable across the state changes reporting it.
The caller-assigned identifier for this download, stable across the state changes reporting it.
url: stringThe final post-redirect URL the download was served from.
The final post-redirect URL the download was served from.
error: optional stringThe failure or cancellation detail, when known.
The failure or cancellation detail, when known.
beta_browser_state_change_download_started: object{ download_id, type, url }A file download that started during this call.
A file download that started during this call.
download_id: stringThe caller-assigned identifier for this download, stable across the state changes reporting it.
The caller-assigned identifier for this download, stable across the state changes reporting it.
url: stringThe final post-redirect URL the download was served from.
The final post-redirect URL the download was served from.
beta_browser_state_change_tab_opened: object{ tab_id, type }A tab this call's execution opened that remains open at its end —
the creation delta of the tabs inventory, not an event log.
A tab this call's execution opened that remains open at its end —
the creation delta of the tabs inventory, not an event log.
Carries only the tab_id; the tab's title and url live on its
tabs entry, which must include the same tab_id. A tab opened
during a failed call gets no deferred tab_opened; it simply appears
in the next result's tabs inventory.
tab_id: stringThe tab_id of the opened tab, present in tabs.
The tab_id of the opened tab, present in tabs.
beta_browser_state_tab_entry: object{ tab_id, title, url, active }One open browser tab reported in a browser_state block's tabs
inventory.
One open browser tab reported in a browser_state block's tabs
inventory.
tab_id is the caller-assigned identifier for the tab; title and
url describe the page the tab is currently showing and may be empty
strings (a blank tab legitimately has both empty). active marks the
tab that is active after this call; whenever tabs is non-empty,
exactly one entry is marked.
tab_id: stringThe caller-assigned identifier for this tab, unique within the inventory.
The caller-assigned identifier for this tab, unique within the inventory.
title: stringThe title of the page the tab is showing. May be empty.
The title of the page the tab is showing. May be empty.
url: stringThe URL of the page the tab is showing. May be empty.
The URL of the page the tab is showing. May be empty.
Whether this tab is the active tab after this call. Whenever tabs is non-empty, exactly one entry is marked active: true.
beta_browser_switch_tab_config: object{ defer_loading, enabled }switch_tab's config overrides.
switch_tab's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_browser_toolset_20260801: object{ type, cache_control, configs }The browser toolset: a single tools[] entry (carrying no
name) that declares the browser tool family. The model is served
the family's tool with any members disabled via configs removed
from its schema.
The browser toolset: a single tools[] entry (carrying no
name) that declares the browser tool family. The model is served
the family's tool with any members disabled via configs removed
from its schema.
beta_browser_toolset_configs: object{ close_tab, double_click, file_upload, 28 more }Per-member configuration for browser_toolset_20260801: one
optional field per member tool, keyed by the member name — the same
name the member's tool_use blocks carry. Every member is an
accepted key, and a member's defaults apply wherever its key is
absent. Unknown keys are rejected: the field set is this toolset
version's complete member set.
Per-member configuration for browser_toolset_20260801: one
optional field per member tool, keyed by the member name — the same
name the member's tool_use blocks carry. Every member is an
accepted key, and a member's defaults apply wherever its key is
absent. Unknown keys are rejected: the field set is this toolset
version's complete member set.
beta_browser_triple_click_config: object{ defer_loading, enabled }triple_click's config overrides.
triple_click's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_browser_type_config: object{ defer_loading, enabled }type's config overrides.
type's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_browser_wait_config: object{ defer_loading, enabled }wait's config overrides.
wait's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_browser_zoom_config: object{ defer_loading, enabled }zoom's config overrides.
zoom's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_cache_control_ephemeral: object{ type, ttl }
ttl: optional "5m" or "1h"The time-to-live for the cache control breakpoint.
The time-to-live for the cache control breakpoint.
This may be one the following values:
5m: 5 minutes1h: 1 hour
Defaults to 5m. See prompt caching pricing for details.
beta_cache_creation: object{ ephemeral_1h_input_tokens, ephemeral_5m_input_tokens }
ephemeral_1h_input_tokens: numberThe number of input tokens used to create the 1 hour cache entry.
The number of input tokens used to create the 1 hour cache entry.
ephemeral_5m_input_tokens: numberThe number of input tokens used to create the 5 minute cache entry.
The number of input tokens used to create the 5 minute cache entry.
beta_cache_miss_messages_changed: object{ cache_missed_input_tokens, type }
Approximate number of input tokens that would have been read from cache had the prefix matched the previous request.
beta_cache_miss_model_changed: object{ cache_missed_input_tokens, type }
Approximate number of input tokens that would have been read from cache had the prefix matched the previous request.
beta_cache_miss_previous_message_not_found: object{ type }
beta_cache_miss_system_changed: object{ cache_missed_input_tokens, type }
Approximate number of input tokens that would have been read from cache had the prefix matched the previous request.
beta_cache_miss_tools_changed: object{ cache_missed_input_tokens, type }
Approximate number of input tokens that would have been read from cache had the prefix matched the previous request.
beta_cache_miss_unavailable: object{ type }
beta_citation_char_location: object{ cited_text, document_index, document_title, 4 more }
document_index: number
start_char_index: number
beta_citation_char_location_param: object{ cited_text, document_index, document_title, 3 more }
document_index: number
document_title: string
start_char_index: number
beta_citation_config: object{ enabled }
beta_citation_content_block_location: object{ cited_text, document_index, document_title, 4 more }
cited_text: stringThe full text of the cited block range, concatenated.
The full text of the cited block range, concatenated.
Always equals the contents of content[start_block_index:end_block_index] joined together. The text block is the minimal citable unit; this field is never a substring of a single block. Not counted toward output tokens, and not counted toward input tokens when sent back in subsequent turns.
document_index: number
end_block_index: numberExclusive 0-based end index of the cited block range in the source's content array.
Exclusive 0-based end index of the cited block range in the source's content array.
Always greater than start_block_index; a single-block citation has end_block_index = start_block_index + 1.
start_block_index: number0-based index of the first cited block in the source's content array.
0-based index of the first cited block in the source's content array.
beta_citation_content_block_location_param: object{ cited_text, document_index, document_title, 3 more }
cited_text: stringThe full text of the cited block range, concatenated.
The full text of the cited block range, concatenated.
Always equals the contents of content[start_block_index:end_block_index] joined together. The text block is the minimal citable unit; this field is never a substring of a single block. Not counted toward output tokens, and not counted toward input tokens when sent back in subsequent turns.
document_index: number
document_title: string
end_block_index: numberExclusive 0-based end index of the cited block range in the source's content array.
Exclusive 0-based end index of the cited block range in the source's content array.
Always greater than start_block_index; a single-block citation has end_block_index = start_block_index + 1.
start_block_index: number0-based index of the first cited block in the source's content array.
0-based index of the first cited block in the source's content array.
beta_citation_page_location: object{ cited_text, document_index, document_title, 4 more }
document_index: number
start_page_number: number
beta_citation_page_location_param: object{ cited_text, document_index, document_title, 3 more }
document_index: number
document_title: string
start_page_number: number
beta_citation_search_result_location: object{ cited_text, end_block_index, search_result_index, 4 more }
cited_text: stringThe full text of the cited block range, concatenated.
The full text of the cited block range, concatenated.
Always equals the contents of content[start_block_index:end_block_index] joined together. The text block is the minimal citable unit; this field is never a substring of a single block. Not counted toward output tokens, and not counted toward input tokens when sent back in subsequent turns.
end_block_index: numberExclusive 0-based end index of the cited block range in the source's content array.
Exclusive 0-based end index of the cited block range in the source's content array.
Always greater than start_block_index; a single-block citation has end_block_index = start_block_index + 1.
search_result_index: number0-based index of the cited search result among all search_result content blocks in the request, in the order they appear across messages and tool results.
0-based index of the cited search result among all search_result content blocks in the request, in the order they appear across messages and tool results.
Counted separately from document_index; server-side web search results are not included in this count.
start_block_index: number0-based index of the first cited block in the source's content array.
0-based index of the first cited block in the source's content array.
beta_citation_search_result_location_param: object{ cited_text, end_block_index, search_result_index, 4 more }
cited_text: stringThe full text of the cited block range, concatenated.
The full text of the cited block range, concatenated.
Always equals the contents of content[start_block_index:end_block_index] joined together. The text block is the minimal citable unit; this field is never a substring of a single block. Not counted toward output tokens, and not counted toward input tokens when sent back in subsequent turns.
end_block_index: numberExclusive 0-based end index of the cited block range in the source's content array.
Exclusive 0-based end index of the cited block range in the source's content array.
Always greater than start_block_index; a single-block citation has end_block_index = start_block_index + 1.
search_result_index: number0-based index of the cited search result among all search_result content blocks in the request, in the order they appear across messages and tool results.
0-based index of the cited search result among all search_result content blocks in the request, in the order they appear across messages and tool results.
Counted separately from document_index; server-side web search results are not included in this count.
start_block_index: number0-based index of the first cited block in the source's content array.
0-based index of the first cited block in the source's content array.
beta_citation_web_search_result_location_param: object{ cited_text, encrypted_index, title, 2 more }
title: string
url: string
beta_citations_config_param: object{ enabled }
beta_citations_delta: object{ citation, type }
beta_citations_web_search_result_location: object{ cited_text, encrypted_index, title, 2 more }
title: string
beta_clear_thinking_20251015_edit: object{ type, keep }
beta_clear_thinking_20251015_edit_response: object{ cleared_input_tokens, cleared_thinking_turns, type }
cleared_input_tokens: numberNumber of input tokens cleared by this edit.
Number of input tokens cleared by this edit.
cleared_thinking_turns: numberNumber of thinking turns that were cleared.
Number of thinking turns that were cleared.
The type of context management edit applied.
beta_clear_tool_uses_20250919_edit: object{ type, clear_at_least, clear_tool_inputs, 3 more }
beta_clear_tool_uses_20250919_edit_response: object{ cleared_input_tokens, cleared_tool_uses, type }
cleared_input_tokens: numberNumber of input tokens cleared by this edit.
Number of input tokens cleared by this edit.
cleared_tool_uses: numberNumber of tool uses that were cleared.
Number of tool uses that were cleared.
The type of context management edit applied.
beta_code_execution_output_block: object{ file_id, type }
beta_code_execution_output_block_param: object{ file_id, type }
beta_code_execution_result_block: object{ content, return_code, stderr, 2 more }
content: array of BetaCodeExecutionOutputBlock { file_id, type }
beta_code_execution_result_block_param: object{ content, return_code, stderr, 2 more }
content: array of BetaCodeExecutionOutputBlockParam { file_id, type }
beta_code_execution_tool_20250522: object{ name, type, allowed_callers, 3 more }
beta_code_execution_tool_20250825: object{ name, type, allowed_callers, 3 more }
beta_code_execution_tool_20260120: object{ name, type, allowed_callers, 3 more }Code execution tool with REPL state persistence (daemon mode + gVisor checkpoint).
Code execution tool with REPL state persistence (daemon mode + gVisor checkpoint).
beta_code_execution_tool_20260521: object{ name, type, allowed_callers, 3 more }Code execution tool with REPL state persistence.
Code execution tool with REPL state persistence.
beta_code_execution_tool_result_block: object{ content, tool_use_id, type }
beta_code_execution_tool_result_block_content: BetaCodeExecutionToolResultError { error_code, type } or BetaCodeExecutionResultBlock { content, return_code, stderr, 2 more } or BetaEncryptedCodeExecutionResultBlock { content, encrypted_stdout, return_code, 2 more }Code execution result with encrypted stdout for PFC + web_search results.
Code execution result with encrypted stdout for PFC + web_search results.
beta_code_execution_tool_result_block_param: object{ content, tool_use_id, type, cache_control }
beta_code_execution_tool_result_block_param_content: BetaCodeExecutionToolResultErrorParam { error_code, type } or BetaCodeExecutionResultBlockParam { content, return_code, stderr, 2 more } or BetaEncryptedCodeExecutionResultBlockParam { content, encrypted_stdout, return_code, 2 more }Code execution result with encrypted stdout for PFC + web_search results.
Code execution result with encrypted stdout for PFC + web_search results.
beta_code_execution_tool_result_error: object{ error_code, type }
error_code: "invalid_tool_input" or "unavailable" or "too_many_requests" or "execution_time_exceeded"
beta_code_execution_tool_result_error_code: "invalid_tool_input" or "unavailable" or "too_many_requests" or "execution_time_exceeded"
beta_code_execution_tool_result_error_param: object{ error_code, type }
error_code: "invalid_tool_input" or "unavailable" or "too_many_requests" or "execution_time_exceeded"
beta_compact_20260112_edit: object{ type, instructions, pause_after_compaction, trigger }Automatically compact older context when reaching the configured trigger threshold.
Automatically compact older context when reaching the configured trigger threshold.
Additional instructions for summarization.
Whether to pause after compaction and return the compaction block to the user.
trigger: optional object{ type, value }When to trigger compaction. Defaults to 150000 input tokens.
When to trigger compaction. Defaults to 150000 input tokens.
value: number
beta_compaction_block: object{ content, encrypted_content, type }A compaction block returned when autocompact is triggered.
A compaction block returned when autocompact is triggered.
When content is None, it indicates the compaction failed to produce a valid summary (e.g., malformed output from the model). Clients may round-trip compaction blocks with null content; the server treats them as no-ops.
Summary of compacted content, or null if compaction failed
Opaque metadata from prior compaction, to be round-tripped verbatim
beta_compaction_block_param: object{ type, cache_control, content, encrypted_content }A compaction block containing summary of previous context.
A compaction block containing summary of previous context.
Users should round-trip these blocks from responses to subsequent requests to maintain context across compaction boundaries.
When content is None, the block represents a failed compaction. The server treats these as no-ops. Empty string content is not allowed.
cache_control: optional object{ type, ttl }Create a cache control breakpoint at this content block.
Create a cache control breakpoint at this content block.
ttl: optional "5m" or "1h"The time-to-live for the cache control breakpoint.
The time-to-live for the cache control breakpoint.
This may be one the following values:
5m: 5 minutes1h: 1 hour
Defaults to 5m. See prompt caching pricing for details.
Summary of previously compacted content, or null if compaction failed
Opaque metadata from prior compaction, to be round-tripped verbatim
beta_compaction_content_block_delta: object{ content, encrypted_content, type }
Opaque metadata from prior compaction, to be round-tripped verbatim
beta_compaction_iteration_usage: object{ cache_creation, cache_creation_input_tokens, cache_read_input_tokens, 3 more }Token usage for a compaction iteration.
Token usage for a compaction iteration.
cache_creation: object{ ephemeral_1h_input_tokens, ephemeral_5m_input_tokens }Breakdown of cached tokens by TTL
Breakdown of cached tokens by TTL
ephemeral_1h_input_tokens: numberThe number of input tokens used to create the 1 hour cache entry.
The number of input tokens used to create the 1 hour cache entry.
ephemeral_5m_input_tokens: numberThe number of input tokens used to create the 5 minute cache entry.
The number of input tokens used to create the 5 minute cache entry.
cache_creation_input_tokens: numberThe number of input tokens used to create the cache entry.
The number of input tokens used to create the cache entry.
cache_read_input_tokens: numberThe number of input tokens read from the cache.
The number of input tokens read from the cache.
input_tokens: numberThe number of input tokens which were used.
The number of input tokens which were used.
output_tokens: numberThe number of output tokens which were used.
The number of output tokens which were used.
Usage for a compaction iteration
beta_computer_cursor_position_config: object{ defer_loading, enabled }cursor_position's config overrides.
cursor_position's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_computer_double_click_config: object{ defer_loading, enabled }double_click's config overrides.
double_click's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_computer_hold_key_config: object{ defer_loading, enabled }hold_key's config overrides.
hold_key's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_computer_key_config: object{ defer_loading, enabled }key's config overrides.
key's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_computer_left_click_config: object{ defer_loading, enabled }left_click's config overrides.
left_click's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_computer_left_click_drag_config: object{ defer_loading, enabled }left_click_drag's config overrides.
left_click_drag's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_computer_left_mouse_down_config: object{ defer_loading, enabled }left_mouse_down's config overrides.
left_mouse_down's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_computer_left_mouse_up_config: object{ defer_loading, enabled }left_mouse_up's config overrides.
left_mouse_up's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_computer_middle_click_config: object{ defer_loading, enabled }middle_click's config overrides.
middle_click's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_computer_mouse_move_config: object{ defer_loading, enabled }mouse_move's config overrides.
mouse_move's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_computer_right_click_config: object{ defer_loading, enabled }right_click's config overrides.
right_click's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_computer_screenshot_config: object{ defer_loading, enabled }screenshot's config overrides.
screenshot's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_computer_scroll_config: object{ defer_loading, enabled }scroll's config overrides.
scroll's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_computer_toolset_20260801: object{ type, cache_control, configs }The computer toolset: a single tools[] entry (carrying no
name) that declares the computer tool family. The model is
served the family's tool with any members disabled via configs
removed from its schema. Every member is enabled by default, zoom
included. The single-tool options display_number and
enable_zoom are not fields of a toolset entry — it carries only
type, configs, and cache_control; zoom is controlled
via configs.zoom.enabled.
The computer toolset: a single tools[] entry (carrying no
name) that declares the computer tool family. The model is
served the family's tool with any members disabled via configs
removed from its schema. Every member is enabled by default, zoom
included. The single-tool options display_number and
enable_zoom are not fields of a toolset entry — it carries only
type, configs, and cache_control; zoom is controlled
via configs.zoom.enabled.
beta_computer_toolset_configs: object{ cursor_position, double_click, hold_key, 14 more }Per-member configuration for computer_toolset_20260801: one
optional field per member tool, keyed by the member name — the same
name the member's tool_use blocks carry. Every member is an
accepted key, and a member's defaults apply wherever its key is
absent. Unknown keys are rejected: the field set is this toolset
version's complete member set.
Per-member configuration for computer_toolset_20260801: one
optional field per member tool, keyed by the member name — the same
name the member's tool_use blocks carry. Every member is an
accepted key, and a member's defaults apply wherever its key is
absent. Unknown keys are rejected: the field set is this toolset
version's complete member set.
beta_computer_triple_click_config: object{ defer_loading, enabled }triple_click's config overrides.
triple_click's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_computer_type_config: object{ defer_loading, enabled }type's config overrides.
type's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_computer_wait_config: object{ defer_loading, enabled }wait's config overrides.
wait's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_computer_zoom_config: object{ defer_loading, enabled }zoom's config overrides.
zoom's config overrides.
Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.
Whether this member is offered to the model. Default is per member, per the toolset's documentation. A member whose enabled resolves false is withheld from the served schema.
beta_container: object{ id, expires_at, skills }Information about the container used in the request (for the code execution tool)
Information about the container used in the request (for the code execution tool)
Identifier for the container used in this request
expires_at: stringThe time at which the container will expire.
The time at which the container will expire.
skills: array of BetaContainerSkill { skill_id, type, version }Skills loaded in the container
Skills loaded in the container
skill_id: stringSkill ID
Skill ID
type: "anthropic" or "custom"Type of skill - either 'anthropic' (built-in) or 'custom' (user-defined)
Type of skill - either 'anthropic' (built-in) or 'custom' (user-defined)
version: stringThe resolved version: a skill version ID for custom skills.
The resolved version: a skill version ID for custom skills.
beta_container_params: object{ id, skills }Container parameters with skills to be loaded.
Container parameters with skills to be loaded.
Container id
skills: optional array of BetaSkillParams { skill_id, type, version }List of skills to load in the container
List of skills to load in the container
skill_id: stringSkill ID
Skill ID
type: "anthropic" or "custom"Type of skill - either 'anthropic' (built-in) or 'custom' (user-defined)
Type of skill - either 'anthropic' (built-in) or 'custom' (user-defined)
version: optional stringSkill version or 'latest' for most recent version
Skill version or 'latest' for most recent version
beta_container_skill: object{ skill_id, type, version }A skill that was loaded in a container (response model).
A skill that was loaded in a container (response model).
skill_id: stringSkill ID
Skill ID
type: "anthropic" or "custom"Type of skill - either 'anthropic' (built-in) or 'custom' (user-defined)
Type of skill - either 'anthropic' (built-in) or 'custom' (user-defined)
version: stringThe resolved version: a skill version ID for custom skills.
The resolved version: a skill version ID for custom skills.
beta_container_upload_block: object{ file_id, type }Response model for a file uploaded to the container.
Response model for a file uploaded to the container.
beta_container_upload_block_param: object{ file_id, type, cache_control }A content block that represents a file to be uploaded to the container
Files uploaded via this block will be available in the container's input directory.
A content block that represents a file to be uploaded to the container Files uploaded via this block will be available in the container's input directory.
cache_control: optional object{ type, ttl }Create a cache control breakpoint at this content block.
Create a cache control breakpoint at this content block.
ttl: optional "5m" or "1h"The time-to-live for the cache control breakpoint.
The time-to-live for the cache control breakpoint.
This may be one the following values:
5m: 5 minutes1h: 1 hour
Defaults to 5m. See prompt caching pricing for details.
beta_content_block: BetaTextBlock { citations, text, type } or BetaThinkingBlock { signature, thinking, type } or BetaRedactedThinkingBlock { data, type } or 14 moreResponse model for a file uploaded to the container.
Response model for a file uploaded to the container.
beta_content_block_param: BetaTextBlockParam { text, type, cache_control, citations } or BetaImageBlockParam { source, type, cache_control, transformations } or BetaRequestDocumentBlock { source, type, cache_control, 3 more } or 20 moreRegular text content.
Regular text content.
beta_content_block_source: object{ content, type }
beta_content_block_source_content: BetaTextBlockParam { text, type, cache_control, citations } or BetaImageBlockParam { source, type, cache_control, transformations }
beta_context_management_config: object{ edits }
beta_context_management_response: object{ applied_edits }
beta_count_tokens_context_management_response: object{ original_input_tokens }
The original token count before context management was applied
beta_diagnostics: object{ cache_miss_reason }Response envelope for request-level diagnostics. Present (possibly
null) whenever the caller supplied diagnostics on the request.
Response envelope for request-level diagnostics. Present (possibly
null) whenever the caller supplied diagnostics on the request.
beta_diagnostics_param: object{ previous_message_id }Request-level diagnostics. Currently carries the previous response
id for prompt-cache divergence reporting.
Request-level diagnostics. Currently carries the previous response id for prompt-cache divergence reporting.
previous_message_id: optional stringThe id (msg_...) from this client's previous /v1/messages response. The server compares that request's prompt fingerprint against this one and returns diagnostics.cache_miss_reason when the prompt-cache prefix could not be reused. Pass null on the first turn to opt in without a prior message to compare.
The id (msg_...) from this client's previous /v1/messages response. The server compares that request's prompt fingerprint against this one and returns diagnostics.cache_miss_reason when the prompt-cache prefix could not be reused. Pass null on the first turn to opt in without a prior message to compare.
beta_direct_caller: object{ type }Tool invocation directly from the model.
Tool invocation directly from the model.
beta_document_block: object{ citations, source, title, type }
beta_encrypted_code_execution_result_block: object{ content, encrypted_stdout, return_code, 2 more }Code execution result with encrypted stdout for PFC + web_search results.
Code execution result with encrypted stdout for PFC + web_search results.
content: array of BetaCodeExecutionOutputBlock { file_id, type }
beta_encrypted_code_execution_result_block_param: object{ content, encrypted_stdout, return_code, 2 more }Code execution result with encrypted stdout for PFC + web_search results.
Code execution result with encrypted stdout for PFC + web_search results.
content: array of BetaCodeExecutionOutputBlockParam { file_id, type }
beta_fallback_block: object{ from, to, trigger, type }Marks the point in content where one model's output gives way to the next.
Marks the point in content where one model's output gives way to the next.
One block appears per hop where a preceding model actually ran this turn and
declined. A turn where no preceding model ran and declined has no such
boundary and carries no block — the signal for whether a fallback model
served the response is the presence of a fallback_message entry in
usage.iterations, not this block.
The block is treated like a server-tool content block for streaming: it
arrives via the standard content_block_start / content_block_stop
pair and carries no deltas.
beta_fallback_block_param: object{ from, to, type, trigger }A fallback block echoed back from a prior response.
A fallback block echoed back from a prior response.
Accepted in messages[].content and not rendered into the prompt; not
validated against the request's fallbacks chain or top-level model.
Echo the assistant turn back verbatim, including this block in its original position. The block marks the boundary between content produced before and after a fallback hop, and the server relies on that boundary to validate the turn: when thinking runs flank the boundary, omitting the block merges them into one span the server cannot validate (the request is rejected), and moving it into the middle of a single run is likewise rejected; between non-thinking blocks the block's placement has no validation effect.
beta_fallback_credit_not_applied: object{ reason, type, remove_to_redeem }No reprice was applied; reason says why.
No reprice was applied; reason says why.
reason: "body_mismatch" or "continuation_excluded" or "continuation_only" or 9 moreWhy the reprice was not applied.
Why the reprice was not applied.
A closed enum; additions to the redemption-check vocabulary arrive as deliberate schema updates.
remove_to_redeem: optional array of stringRequest fields to remove before retrying, so the retry can redeem this
token.
Request fields to remove before retrying, so the retry can redeem this token.
Present exactly when reason is variant_fields_present — never null,
never an empty array; absent otherwise. Fields are named only from your own request, and only after
the sealed variant hash matched. A served best-effort retry has already
been billed at normal price; nothing redeems retroactively, but a corrected
re-send inside the token's five-minute window can still redeem.
beta_fallback_credit_redeemed: object{ type }The reprice was applied: the retry is billed as if the conversation
had been on the retry model all along.
The reprice was applied: the retry is billed as if the conversation had been on the retry model all along.
beta_fallback_credit_token_param: object{ token, mode }Object form of fallback_credit_token: the token plus a redemption
mode.
Object form of fallback_credit_token: the token plus a redemption
mode.
Requires anthropic-beta: fallback-credit-2026-07-01; without that
header the field accepts the bare string only. The bare string and the
mode-less object are equivalent (both select strict), so wrapping
an existing token changes nothing by itself.
token: stringThe opaque fallback_credit_token from a prior refusal's stop_details — the same string the bare-string form carries.
The opaque fallback_credit_token from a prior refusal's stop_details — the same string the bare-string form carries.
mode: optional "strict" or "best_effort"How a failing token affects the retry. strict (the default, and the bare-string behavior): a failing redemption is a 400 and the retry is not served. best_effort: the retry is served either way — a token-layer failure no longer rejects the request; the retry proceeds at normal price and the outcome is reported on the response's usage.fallback_credit. Two failures stay hard in both modes: a malformed token, and combining fallback_credit_token with fallbacks.
How a failing token affects the retry. strict (the default, and the bare-string behavior): a failing redemption is a 400 and the retry is not served. best_effort: the retry is served either way — a token-layer failure no longer rejects the request; the retry proceeds at normal price and the outcome is reported on the response's usage.fallback_credit. Two failures stay hard in both modes: a malformed token, and combining fallback_credit_token with fallbacks.
beta_fallback_credit_usage: object{ status }Outcome of the fallback_credit_token presented on this request.
Outcome of the fallback_credit_token presented on this request.
beta_fallback_info: object{ model }Identifies one hop of a fallback transition.
Identifies one hop of a fallback transition.
beta_fallback_info_param: object{ model }Identifies one hop of a fallback transition.
Identifies one hop of a fallback transition.
beta_fallback_message_iteration_usage: object{ cache_creation, cache_creation_input_tokens, cache_read_input_tokens, 4 more }Token usage for the fallback-model attempt of a server-side fallback request.
Token usage for the fallback-model attempt of a server-side fallback request.
Produced in place of a message entry for whichever hop served the
response. A declined hop produces the existing message entry. Whether
a fallback model served the response is signalled by the presence of this
entry in usage.iterations.
beta_fallback_param: object{ model, max_tokens, output_config, 2 more }One entry in the fallbacks chain on a /v1/messages request.
One entry in the fallbacks chain on a /v1/messages request.
model is required. The override fields (max_tokens, thinking,
output_config, and speed) set the corresponding parameter for this
attempt only and are validated as if the request were made to model.
Any other key is rejected at parse time.
beta_fallback_refusal_trigger: object{ category, type }The from model declined for policy reasons.
The from model declined for policy reasons.
category: "cyber" or "bio" or "frontier_llm" or 2 moreThe policy category that triggered a refusal.
The policy category that triggered a refusal.
The request could enable cyber harm, such as malware or exploit development. Benign cybersecurity work can also trigger this category.
The request could enable biological harm, such as dangerous lab methods. Beneficial life sciences work can also trigger this category.
The request could assist the development of competing AI models, which is restricted under Anthropic's commercial terms. Benign machine learning work can also trigger this category.
The request asks the model to reproduce its internal reasoning in the response text. To get reasoning in a structured form instead, use adaptive thinking.
The request could be related to an area that was determined as harmful. Benign work might sometimes trigger this category.
beta_fallbacks_param: array of BetaFallbackParam { model, max_tokens, output_config, 2 more } or "default"Opt-in server-side retry on one or more substitute models when the requested model declines for policy reasons. Tried in order: if the first entry also declines, the second is tried, and so on. The string "default" requests the requested model's server-defined default fallback configuration.
Opt-in server-side retry on one or more substitute models when the requested model declines for policy reasons. Tried in order: if the first entry also declines, the second is tried, and so on. The string "default" requests the requested model's server-defined default fallback configuration.
beta_file_document_source: object{ file_id, type }
beta_file_image_source: object{ file_id, type }
beta_image_block_param: object{ source, type, cache_control, transformations }
beta_image_transformations_param: object{ oversized_image }Configures the transformations the server applies to this image before the model observes it. Each key names a condition the server transforms images for; its value selects the transformation applied. Omitted keys keep their default behavior, and an empty object is equivalent to omitting the field.
Configures the transformations the server applies to this image before the model observes it. Each key names a condition the server transforms images for; its value selects the transformation applied. Omitted keys keep their default behavior, and an empty object is equivalent to omitting the field.
oversized_image: optional "downsize" or "error"What the server does when this image exceeds the model's maximum image size. "downsize" (the default) scales the image down to fit, which changes the dimensions the model observes without telling you. "error" instead rejects the request with a 400 error naming the image's dimensions and the largest dimensions that fit, so you can scale the image deliberately — your image is never silently scaled down.
What the server does when this image exceeds the model's maximum image size. "downsize" (the default) scales the image down to fit, which changes the dimensions the model observes without telling you. "error" instead rejects the request with a 400 error naming the image's dimensions and the largest dimensions that fit, so you can scale the image deliberately — your image is never silently scaled down.
beta_input_json_delta: object{ partial_json, type }
beta_input_tokens_clear_at_least: object{ type, value }
value: number
beta_input_tokens_trigger: object{ type, value }
value: number
beta_iterations_usage: array of BetaMessageIterationUsage { cache_creation, cache_creation_input_tokens, cache_read_input_tokens, 4 more } or BetaCompactionIterationUsage { cache_creation, cache_creation_input_tokens, cache_read_input_tokens, 3 more } or BetaAdvisorMessageIterationUsage { cache_creation, cache_creation_input_tokens, cache_read_input_tokens, 4 more } or BetaFallbackMessageIterationUsage { cache_creation, cache_creation_input_tokens, cache_read_input_tokens, 4 more }Per-iteration token usage breakdown.
Per-iteration token usage breakdown.
Each entry represents one sampling iteration, with its own input/output token counts and cache statistics, discriminated by type. For message entries (model sampling iterations, such as the turns of a server-side tool use loop), this allows you to:
- Determine which iterations exceeded long context thresholds (>=200k tokens)
- Calculate the context window size from the last
messageentry - Understand token accumulation across server-side tool use loops
A compaction entry reports the token usage of the compaction operation itself — the server-side request that summarizes the context being closed — NOT the size of the context that was compacted away, and its token counts can be much smaller than that closed context (for example, a compaction that closes a ~200k-token context can report only a few thousand tokens). Do not derive the context window size from a compaction entry, even when it is the last entry. A compaction entry's tokens are not included in the top-level usage fields. When an input-token trigger is in effect (the default — 150,000 tokens unless configured otherwise), each compaction entry closes a context that had reached at least that threshold, though the context can exceed it by the final iteration's output and tool results.
beta_json_output_format: object{ schema, type }
The JSON schema of the format
beta_mcp_tool_config: object{ defer_loading, enabled }Configuration for a specific tool in an MCP toolset.
Configuration for a specific tool in an MCP toolset.
beta_mcp_tool_default_config: object{ defer_loading, enabled }Default configuration for tools in an MCP toolset.
Default configuration for tools in an MCP toolset.
beta_mcp_tool_result_block: object{ content, is_error, tool_use_id, type }
beta_mcp_tool_use_block: object{ id, input, name, 2 more }
id: string
The name of the MCP tool
The name of the MCP server
beta_mcp_tool_use_block_param: object{ id, input, name, 3 more }
id: string
The name of the MCP server
cache_control: optional object{ type, ttl }Create a cache control breakpoint at this content block.
Create a cache control breakpoint at this content block.
ttl: optional "5m" or "1h"The time-to-live for the cache control breakpoint.
The time-to-live for the cache control breakpoint.
This may be one the following values:
5m: 5 minutes1h: 1 hour
Defaults to 5m. See prompt caching pricing for details.
beta_mcp_toolset: object{ mcp_server_name, type, cache_control, 2 more }Configuration for a group of tools from an MCP server.
Configuration for a group of tools from an MCP server.
Allows configuring enabled status and defer_loading for all tools from an MCP server, with optional per-tool overrides.
beta_memory_tool_20250818: object{ name, type, allowed_callers, 4 more }
beta_memory_tool_20250818_command: BetaMemoryTool20250818ViewCommand { command, path, view_range } or BetaMemoryTool20250818CreateCommand { command, file_text, path } or BetaMemoryTool20250818StrReplaceCommand { command, new_str, old_str, path } or 3 more
beta_memory_tool_20250818_create_command: object{ command, file_text, path }
Command type identifier
Content to write to the file
Path where the file should be created
beta_memory_tool_20250818_delete_command: object{ command, path }
Command type identifier
Path to the file or directory to delete
beta_memory_tool_20250818_insert_command: object{ command, insert_line, insert_text, path }
Command type identifier
insert_line: numberLine number where text should be inserted
Line number where text should be inserted
Text to insert at the specified line
Path to the file where text should be inserted
beta_memory_tool_20250818_rename_command: object{ command, new_path, old_path }
Command type identifier
New path for the file or directory
Current path of the file or directory
beta_memory_tool_20250818_str_replace_command: object{ command, new_str, old_str, path }
Command type identifier
Text to replace with
Text to search for and replace
Path to the file where text should be replaced
beta_memory_tool_20250818_view_command: object{ command, path, view_range }
Command type identifier
Path to directory or file to view
view_range: optional array of numberOptional line range for viewing specific lines
Optional line range for viewing specific lines
beta_message: object{ id, container, content, 10 more }
beta_message_delta_usage: object{ cache_creation_input_tokens, cache_read_input_tokens, fallback_credit, 5 more }
beta_message_iteration_usage: object{ cache_creation, cache_creation_input_tokens, cache_read_input_tokens, 4 more }Token usage for a sampling iteration.
Token usage for a sampling iteration.
beta_message_param: object{ content, role, clear_at, output_config }
beta_message_tokens_count: object{ context_management, input_tokens }
context_management: object{ original_input_tokens }Information about context management applied to the message.
Information about context management applied to the message.
The original token count before context management was applied
The total number of tokens across the provided list of messages, system prompt, and tools.
beta_metadata: object{ user_id }
user_id: optional stringAn external identifier for the user who is associated with the request.
An external identifier for the user who is associated with the request.
This should be a uuid, hash value, or other opaque identifier. Anthropic may use this id to help detect abuse. Do not include any identifying information such as name, email address, or phone number.
beta_output_config: object{ effort, format, task_budget }
beta_output_tokens_details: object{ thinking_tokens }
thinking_tokens: numberNumber of output tokens the model generated as internal reasoning, including
the thinking-block delimiter tokens.
Number of output tokens the model generated as internal reasoning, including the thinking-block delimiter tokens.
Reflects the raw reasoning the model produced, not the (possibly shorter)
summarized thinking text returned in the response body. Computed by
re-tokenizing the raw reasoning text, so it may differ from the model's exact
generation count by a small number of tokens. Always ≤ output_tokens;
output_tokens - thinking_tokens approximates the non-reasoning output.
beta_plain_text_source: object{ data, media_type, type }
beta_raw_content_block_delta: BetaTextDelta { text, type } or BetaInputJSONDelta { partial_json, type } or BetaCitationsDelta { citation, type } or 3 more
beta_raw_content_block_delta_event: object{ delta, index, type }
beta_raw_content_block_start_event: object{ content_block, index, type }
beta_raw_content_block_stop_event: object{ index, type }
beta_raw_message_delta_event: object{ context_management, delta, type, 2 more }
beta_raw_message_start_event: object{ message, type }
beta_raw_message_stop_event: object{ type }
beta_raw_message_stream_event: BetaRawMessageStartEvent { message, type } or BetaRawMessageDeltaEvent { context_management, delta, type, 2 more } or BetaRawMessageStopEvent { type } or 3 more
beta_redacted_thinking_block: object{ data, type }
data: stringThe contents of this redacted thinking block, returned when portions of the model's thinking were safety-redacted. This field is opaque and encrypted, with no readable content.
The contents of this redacted thinking block, returned when portions of the model's thinking were safety-redacted. This field is opaque and encrypted, with no readable content.
Pass redacted_thinking blocks back to the API unchanged when continuing a multi-turn conversation.
See extended thinking for details.
beta_redacted_thinking_block_param: object{ data, type }
The data value of this redacted thinking block, exactly as returned by the API in a previous response. Opaque and encrypted; pass it back unchanged.
beta_refusal_stop_details: object{ category, explanation, fallback_credit_token, 3 more }Structured information about a refusal.
Structured information about a refusal.
beta_request_document_block: object{ source, type, cache_control, 3 more }
beta_request_mcp_server_tool_configuration: object{ allowed_tools, enabled }
beta_request_mcp_server_url_definition: object{ name, type, url, 2 more }
tool_configuration: optional object{ allowed_tools, enabled }
beta_request_mcp_tool_result_block_param: object{ tool_use_id, type, cache_control, 2 more }
beta_request_tool_addition_block: object{ tool, type, cache_control }Mid-conversation directive to surface a declared tool.
Mid-conversation directive to surface a declared tool.
tool references a tool (or MCP toolset) by name from the request's
tools; it is offered to the model from this point in the
conversation onward.
beta_request_tool_removal_block: object{ tool, type, cache_control }Mid-conversation directive to withdraw a tool.
Mid-conversation directive to withdraw a tool.
tool references a tool (or MCP toolset) by name from the request's
tools; it is no longer offered to the model from this point in the
conversation onward.
beta_search_result_block_param: object{ content, source, title, 3 more }
beta_server_tool_caller: object{ tool_id, type }Tool invocation generated by a server-side tool.
Tool invocation generated by a server-side tool.
tool_id: string
beta_server_tool_caller_20260120: object{ tool_id, type }
tool_id: string
beta_server_tool_usage: object{ web_fetch_requests, web_search_requests }
web_fetch_requests: numberThe number of web fetch tool requests.
The number of web fetch tool requests.
web_search_requests: numberThe number of web search tool requests.
The number of web search tool requests.
beta_server_tool_use_block: object{ id, input, name, 2 more }
beta_server_tool_use_block_param: object{ id, input, name, 3 more }
beta_signature_delta: object{ signature, type }
The signature for this thinking block: an opaque value used to verify that the block was generated by Claude when it is passed back to the API. Delivered in a signature_delta event just before the block's content_block_stop event.
beta_skill_params: object{ skill_id, type, version }Specification for a skill to be loaded in a container (request model).
Specification for a skill to be loaded in a container (request model).
skill_id: stringSkill ID
Skill ID
type: "anthropic" or "custom"Type of skill - either 'anthropic' (built-in) or 'custom' (user-defined)
Type of skill - either 'anthropic' (built-in) or 'custom' (user-defined)
version: optional stringSkill version or 'latest' for most recent version
Skill version or 'latest' for most recent version
beta_stop_reason: "end_turn" or "max_tokens" or "stop_sequence" or 5 more
beta_system_message_output_config: object{ effort }Per-message output configuration on a role:"system" input message.
Per-message output configuration on a role:"system" input message.
Fields here apply per-turn; format remains top-level only. An
empty {} is accepted on a message that carries content; a message
with neither content nor output_config fields is rejected.
effort: optional "low" or "medium" or "high" or 2 moreAll possible effort levels.
All possible effort levels.
beta_text_block: object{ citations, text, type }
beta_text_block_param: object{ text, type, cache_control, citations }
beta_text_citation: BetaCitationCharLocation { cited_text, document_index, document_title, 4 more } or BetaCitationPageLocation { cited_text, document_index, document_title, 4 more } or BetaCitationContentBlockLocation { cited_text, document_index, document_title, 4 more } or 2 more
beta_text_citation_param: BetaCitationCharLocationParam { cited_text, document_index, document_title, 3 more } or BetaCitationPageLocationParam { cited_text, document_index, document_title, 3 more } or BetaCitationContentBlockLocationParam { cited_text, document_index, document_title, 3 more } or 2 more
beta_text_delta: object{ text, type }
beta_text_editor_code_execution_create_result_block: object{ is_file_update, type }
beta_text_editor_code_execution_create_result_block_param: object{ is_file_update, type }
beta_text_editor_code_execution_str_replace_result_block: object{ lines, new_lines, new_start, 3 more }
beta_text_editor_code_execution_str_replace_result_block_param: object{ type, lines, new_lines, 3 more }
beta_text_editor_code_execution_tool_result_block: object{ content, tool_use_id, type }
beta_text_editor_code_execution_tool_result_block_param: object{ content, tool_use_id, type, cache_control }
beta_text_editor_code_execution_tool_result_error: object{ error_code, error_message, type }
error_code: "invalid_tool_input" or "unavailable" or "too_many_requests" or 2 more
beta_text_editor_code_execution_tool_result_error_param: object{ error_code, type, error_message }
error_code: "invalid_tool_input" or "unavailable" or "too_many_requests" or 2 more
beta_text_editor_code_execution_view_result_block: object{ content, file_type, num_lines, 3 more }
file_type: "text" or "image" or "pdf"
beta_text_editor_code_execution_view_result_block_param: object{ content, file_type, type, 3 more }
file_type: "text" or "image" or "pdf"
beta_thinking_block: object{ signature, thinking, type }
signature: stringA value used to verify that this thinking block was generated by Claude when it is passed back to the API.
A value used to verify that this thinking block was generated by Claude when it is passed back to the API.
This is an opaque field and should not be interpreted or parsed. When passing thinking blocks back to the API (required when using tools with extended thinking), pass them back exactly as received, with this field intact.
See extended thinking for details.
The text of Claude's thinking process for this block.
beta_thinking_block_binding: object{ prefix_mismatch_behavior }Controls for block binding: what happens when a thinking block this
request sends back fails the conversation check. Every field is optional;
an empty object means every default.
Controls for block binding: what happens when a thinking block this request sends back fails the conversation check. Every field is optional; an empty object means every default.
prefix_mismatch_behavior: optional "error" or "drop_block"What happens when a thinking block in messages fails the conversation
check: it was created in a different conversation, or the messages before
it have changed since. "error" (the default) fails the request with a
400 error. "drop_block" removes the failing blocks and the request
proceeds; the model no longer sees the dropped reasoning.
What happens when a thinking block in messages fails the conversation
check: it was created in a different conversation, or the messages before
it have changed since. "error" (the default) fails the request with a
400 error. "drop_block" removes the failing blocks and the request
proceeds; the model no longer sees the dropped reasoning.
beta_thinking_block_param: object{ signature, thinking, type }
signature: stringThe signature value of this thinking block, exactly as returned by the API in a previous response. Used to verify that the block was generated by Claude.
The signature value of this thinking block, exactly as returned by the API in a previous response. Used to verify that the block was generated by Claude.
Thinking blocks must be passed back unmodified and in their original order; a modified block results in a 400 invalid_request_error.
The thinking text of this block as returned by the API.
beta_thinking_config_adaptive: object{ type, block_binding, display }
block_binding: optional object{ prefix_mismatch_behavior }Controls for block binding: what happens when a thinking block this
request sends back fails the conversation check. Every field is optional;
an empty object means every default.
Controls for block binding: what happens when a thinking block this request sends back fails the conversation check. Every field is optional; an empty object means every default.
prefix_mismatch_behavior: optional "error" or "drop_block"What happens when a thinking block in messages fails the conversation
check: it was created in a different conversation, or the messages before
it have changed since. "error" (the default) fails the request with a
400 error. "drop_block" removes the failing blocks and the request
proceeds; the model no longer sees the dropped reasoning.
What happens when a thinking block in messages fails the conversation
check: it was created in a different conversation, or the messages before
it have changed since. "error" (the default) fails the request with a
400 error. "drop_block" removes the failing blocks and the request
proceeds; the model no longer sees the dropped reasoning.
display: optional "summarized" or "omitted" or "updates"Controls how thinking content appears in the response. When set to summarized, thinking is returned normally. When set to omitted, thinking content is redacted but a signature is returned for multi-turn continuity. Defaults to summarized.
Controls how thinking content appears in the response. When set to summarized, thinking is returned normally. When set to omitted, thinking content is redacted but a signature is returned for multi-turn continuity. Defaults to summarized.
beta_thinking_config_disabled: object{ type }
beta_thinking_config_enabled: object{ budget_tokens, type, block_binding, display }
budget_tokens: numberDetermines how many tokens Claude can use for its internal reasoning process. Larger budgets can enable more thorough analysis for complex problems, improving response quality.
Determines how many tokens Claude can use for its internal reasoning process. Larger budgets can enable more thorough analysis for complex problems, improving response quality.
Must be ≥1024 and less than max_tokens.
See extended thinking for details.
block_binding: optional object{ prefix_mismatch_behavior }Controls for block binding: what happens when a thinking block this
request sends back fails the conversation check. Every field is optional;
an empty object means every default.
Controls for block binding: what happens when a thinking block this request sends back fails the conversation check. Every field is optional; an empty object means every default.
prefix_mismatch_behavior: optional "error" or "drop_block"What happens when a thinking block in messages fails the conversation
check: it was created in a different conversation, or the messages before
it have changed since. "error" (the default) fails the request with a
400 error. "drop_block" removes the failing blocks and the request
proceeds; the model no longer sees the dropped reasoning.
What happens when a thinking block in messages fails the conversation
check: it was created in a different conversation, or the messages before
it have changed since. "error" (the default) fails the request with a
400 error. "drop_block" removes the failing blocks and the request
proceeds; the model no longer sees the dropped reasoning.
display: optional "summarized" or "omitted" or "updates"Controls how thinking content appears in the response. When set to summarized, thinking is returned normally. When set to omitted, thinking content is redacted but a signature is returned for multi-turn continuity. Defaults to summarized.
Controls how thinking content appears in the response. When set to summarized, thinking is returned normally. When set to omitted, thinking content is redacted but a signature is returned for multi-turn continuity. Defaults to summarized.
beta_thinking_config_param: BetaThinkingConfigEnabled { budget_tokens, type, block_binding, display } or BetaThinkingConfigDisabled { type } or BetaThinkingConfigAdaptive { type, block_binding, display }Configuration for enabling Claude's extended thinking.
Configuration for enabling Claude's extended thinking.
When enabled, responses include thinking content blocks showing Claude's thinking process before the final answer. Requires a minimum budget of 1,024 tokens and counts towards your max_tokens limit.
See extended thinking for details.
beta_thinking_delta: object{ estimated_tokens, thinking, type }
Per-frame increment of a coarse, running estimate of the tokens this thinking block has produced so far. Present whenever the thinking-token-count-2026-05-13 beta is set; null unless thinking.display resolves to "omitted" and a count is due this frame. Sum the increments across thinking_delta frames on this block for a progress indicator. Each increment is a non-negative multiple of a fixed quantum and the cadence is rate-limited, so this is a deliberately lossy display hint, not a billable count; usage.output_tokens remains authoritative.
The incremental thinking text for this content block. Concatenate the thinking values of successive thinking_delta events to assemble the block's full thinking value.
beta_thinking_dropped_input_transformation: object{ path, reason, type }
Where the removed block was in your request, as messages.{i}.content.{j}:
i indexes the messages array you sent and j that message's content
array — the same form error messages use.
reason: "model_binding_mismatch" or "prefix_binding_mismatch" or "organization_binding_mismatch" or "end_user_binding_mismatch"Which binding check removed the block: model_binding_mismatch — it was
created by a model whose reasoning the requested model may not read;
prefix_binding_mismatch — the conversation before it differs from the
conversation it was created in (the rest of that turn's consecutive thinking
blocks are removed with it, each with this reason);
organization_binding_mismatch — it was created under a different
organization (an Anthropic organization, AWS account or Google Cloud project)
and this organization is not one of its additional organizations;
end_user_binding_mismatch — it was created for a different end user, or
was removed by the consumer-organization binding. A block that would fail
several checks reports one reason, in this order of precedence:
organization_binding_mismatch, end_user_binding_mismatch,
model_binding_mismatch, prefix_binding_mismatch.
Which binding check removed the block: model_binding_mismatch — it was
created by a model whose reasoning the requested model may not read;
prefix_binding_mismatch — the conversation before it differs from the
conversation it was created in (the rest of that turn's consecutive thinking
blocks are removed with it, each with this reason);
organization_binding_mismatch — it was created under a different
organization (an Anthropic organization, AWS account or Google Cloud project)
and this organization is not one of its additional organizations;
end_user_binding_mismatch — it was created for a different end user, or
was removed by the consumer-organization binding. A block that would fail
several checks reports one reason, in this order of precedence:
organization_binding_mismatch, end_user_binding_mismatch,
model_binding_mismatch, prefix_binding_mismatch.
Always thinking_dropped for this entry type.
beta_thinking_prefix_mismatch_behavior: "error" or "drop_block"What happens when a thinking block in messages fails the conversation
check: it was created in a different conversation, or the messages before
it have changed since. "error" (the default) fails the request with a
400 error. "drop_block" removes the failing blocks and the request
proceeds; the model no longer sees the dropped reasoning.
What happens when a thinking block in messages fails the conversation
check: it was created in a different conversation, or the messages before
it have changed since. "error" (the default) fails the request with a
400 error. "drop_block" removes the failing blocks and the request
proceeds; the model no longer sees the dropped reasoning.
beta_thinking_turns: object{ type, value }
value: number
beta_token_task_budget: object{ total, type, remaining }User-configurable total token budget across contexts.
User-configurable total token budget across contexts.
total: numberTotal token budget across all contexts in the session.
Total token budget across all contexts in the session.
The budget type. Currently only 'tokens' is supported.
remaining: optional numberRemaining tokens in the budget. Use this to track usage across contexts when implementing compaction client-side. Defaults to total if not provided.
Remaining tokens in the budget. Use this to track usage across contexts when implementing compaction client-side. Defaults to total if not provided.
beta_tool: object{ input_schema, name, allowed_callers, 7 more }
beta_tool_bash_20241022: object{ name, type, allowed_callers, 4 more }
beta_tool_bash_20250124: object{ name, type, allowed_callers, 4 more }
beta_tool_change_mcp_tool_reference: object{ name, server_name, type }Reference to a single MCP tool by its server and remote name — the
same server_name/name pair mcp_tool_use carries.
Reference to a single MCP tool by its server and remote name — the
same server_name/name pair mcp_tool_use carries.
beta_tool_change_mcp_toolset_reference: object{ server_name, type }Reference to every tool in the named MCP server's toolset.
Reference to every tool in the named MCP server's toolset.
beta_tool_change_tool_reference: object{ name, type }Reference to a single tool the caller declared directly in
tools[]. Does not accept the composed {server}_{name} form the
server assigns to MCP-resolved tools — use mcp_tool_reference or
mcp_toolset_reference for those.
Reference to a single tool the caller declared directly in
tools[]. Does not accept the composed {server}_{name} form the
server assigns to MCP-resolved tools — use mcp_tool_reference or
mcp_toolset_reference for those.
name: string
beta_tool_choice: BetaToolChoiceAuto { type, disable_parallel_tool_use } or BetaToolChoiceAny { type, disable_parallel_tool_use } or BetaToolChoiceTool { name, type, disable_parallel_tool_use } or BetaToolChoiceNone { type }How the model should use the provided tools. The model can use a specific tool, any available tool, decide by itself, or not use tools at all.
How the model should use the provided tools. The model can use a specific tool, any available tool, decide by itself, or not use tools at all.
beta_tool_choice_any: object{ type, disable_parallel_tool_use }The model will use any available tools.
The model will use any available tools.
disable_parallel_tool_use: optional booleanWhether to disable parallel tool use.
Whether to disable parallel tool use.
Defaults to false. If set to true, the model will output exactly one tool use.
beta_tool_choice_auto: object{ type, disable_parallel_tool_use }The model will automatically decide whether to use tools.
The model will automatically decide whether to use tools.
disable_parallel_tool_use: optional booleanWhether to disable parallel tool use.
Whether to disable parallel tool use.
Defaults to false. If set to true, the model will output at most one tool use.
beta_tool_choice_none: object{ type }The model will not be allowed to use tools.
The model will not be allowed to use tools.
beta_tool_choice_tool: object{ name, type, disable_parallel_tool_use }The model will use the specified tool with tool_choice.name.
The model will use the specified tool with tool_choice.name.
The name of the tool to use.
disable_parallel_tool_use: optional booleanWhether to disable parallel tool use.
Whether to disable parallel tool use.
Defaults to false. If set to true, the model will output exactly one tool use.
beta_tool_computer_use_20241022: object{ display_height_px, display_width_px, name, 7 more }
beta_tool_computer_use_20250124: object{ display_height_px, display_width_px, name, 7 more }
beta_tool_computer_use_20251124: object{ display_height_px, display_width_px, name, 8 more }
beta_tool_reference_block: object{ tool_name, type }
tool_name: string
beta_tool_reference_block_param: object{ tool_name, type, cache_control }Tool reference block that can be included in tool_result content.
Tool reference block that can be included in tool_result content.
tool_name: string
cache_control: optional object{ type, ttl }Create a cache control breakpoint at this content block.
Create a cache control breakpoint at this content block.
ttl: optional "5m" or "1h"The time-to-live for the cache control breakpoint.
The time-to-live for the cache control breakpoint.
This may be one the following values:
5m: 5 minutes1h: 1 hour
Defaults to 5m. See prompt caching pricing for details.
beta_tool_result_block_param: object{ tool_use_id, type, cache_control, 3 more }
beta_tool_search_tool_bm25_20251119: object{ name, type, allowed_callers, 3 more }
beta_tool_search_tool_regex_20251119: object{ name, type, allowed_callers, 3 more }
beta_tool_search_tool_result_block: object{ content, tool_use_id, type }
beta_tool_search_tool_result_block_param: object{ content, tool_use_id, type, cache_control }
beta_tool_search_tool_result_error: object{ error_code, error_message, type }
error_code: "invalid_tool_input" or "unavailable" or "too_many_requests" or "execution_time_exceeded"
beta_tool_search_tool_result_error_param: object{ error_code, type, error_message }
error_code: "invalid_tool_input" or "unavailable" or "too_many_requests" or "execution_time_exceeded"
beta_tool_search_tool_search_result_block: object{ tool_references, type }
tool_references: array of BetaToolReferenceBlock { tool_name, type }
tool_name: string
beta_tool_search_tool_search_result_block_param: object{ tool_references, type }
beta_tool_text_editor_20241022: object{ name, type, allowed_callers, 4 more }
beta_tool_text_editor_20250124: object{ name, type, allowed_callers, 4 more }
beta_tool_text_editor_20250429: object{ name, type, allowed_callers, 4 more }
beta_tool_text_editor_20250728: object{ name, type, allowed_callers, 5 more }
beta_tool_union: BetaTool { input_schema, name, allowed_callers, 7 more } or BetaToolBash20241022 { name, type, allowed_callers, 4 more } or BetaToolBash20250124 { name, type, allowed_callers, 4 more } or 25 moreCode execution tool with REPL state persistence (daemon mode + gVisor checkpoint).
Code execution tool with REPL state persistence (daemon mode + gVisor checkpoint).
beta_tool_use_block: object{ id, input, name, 3 more }
beta_tool_use_block_param: object{ id, input, name, 4 more }
beta_tool_uses_keep: object{ type, value }
value: number
beta_tool_uses_trigger: object{ type, value }
value: number
beta_url_image_source: object{ type, url }
beta_url_pdf_source: object{ type, url }
beta_usage: object{ cache_creation, cache_creation_input_tokens, cache_read_input_tokens, 9 more }
beta_user_location: object{ type, city, country, 2 more }
city: optional stringThe city of the user.
The city of the user.
country: optional stringThe two letter ISO country code of the user.
The two letter ISO country code of the user.
region: optional stringThe region of the user.
The region of the user.
timezone: optional stringThe IANA timezone of the user.
The IANA timezone of the user.
beta_web_fetch_block: object{ content, retrieved_at, type, url }
beta_web_fetch_block_param: object{ content, type, url, retrieved_at }
beta_web_fetch_tool_20250910: object{ name, type, allowed_callers, 8 more }
beta_web_fetch_tool_20260209: object{ name, type, allowed_callers, 8 more }
beta_web_fetch_tool_20260309: object{ name, type, allowed_callers, 9 more }Web fetch tool with use_cache parameter for bypassing cached content.
Web fetch tool with use_cache parameter for bypassing cached content.