{ "$comment": "MCP tool definitions for the core tier of the OpenAI interface profile. Generated by scripts/build-artifacts.py \u2014 do not hand-edit. SPDX-License-Identifier: CC-BY-NC-SA-4.0", "standard": "anthropic-messages-v1", "tier": "core", "tools": [ { "name": "messages_post", "description": "Create a Message Core-tier operation: POST /v1/messages.", "inputSchema": { "additionalProperties": false, "example": { "max_tokens": 1024, "messages": [ { "content": "Hello, world", "role": "user" } ], "model": "claude-opus-5" }, "properties": { "model": { "title": "Model", "description": "The model that will complete your prompt.\n\nSee [models](https://docs.anthropic.com/en/docs/models-overview) for additional details and options.", "anyOf": [ { "type": "string" }, { "const": "claude-fable-5-1", "description": "Frontier intelligence for ambitious tasks across coding, scientific discovery, and enterprise workflows", "x-stainless-nominal": false }, { "const": "claude-mythos-5-1", "description": "Our most capable model for cybersecurity and biology research, available through trusted access programs", "x-stainless-nominal": false }, { "const": "claude-sonnet-5", "description": "High-performance model for coding and agents", "x-stainless-nominal": false }, { "const": "claude-fable-5", "description": "Next generation of intelligence for the hardest knowledge work and coding problems", "x-stainless-nominal": false }, { "const": "claude-mythos-5", "description": "Most capable model for cybersecurity and biology research", "x-stainless-nominal": false }, { "const": "claude-opus-5", "description": "Powerful intelligence for long-running agents and coding", "x-stainless-nominal": false }, { "const": "claude-opus-4-8", "description": "Powerful intelligence for long-running agents and coding", "x-stainless-nominal": false }, { "const": "claude-opus-4-7", "description": "Powerful intelligence for long-running agents and coding", "x-stainless-nominal": false }, { "const": "claude-mythos-preview", "description": "New class of intelligence, strongest in coding and cybersecurity", "x-stainless-nominal": false, "deprecated": true, "x-stainless-deprecation-message": "Will reach end-of-life on June 30, 2026. Please migrate to claude-mythos-5. Visit https://docs.anthropic.com/en/docs/resources/model-deprecations for more information." }, { "const": "claude-opus-4-6", "description": "Powerful intelligence for long-running agents and coding", "x-stainless-nominal": false }, { "const": "claude-sonnet-4-6", "description": "Best combination of speed and intelligence", "x-stainless-nominal": false }, { "const": "claude-haiku-4-5", "description": "Fastest model with near-frontier intelligence", "x-stainless-nominal": false }, { "const": "claude-haiku-4-5-20251001", "description": "Fastest model with near-frontier intelligence", "x-stainless-nominal": false }, { "const": "claude-opus-4-5", "description": "Powerful intelligence for long-running agents and coding", "x-stainless-nominal": false }, { "const": "claude-opus-4-5-20251101", "description": "Powerful intelligence for long-running agents and coding", "x-stainless-nominal": false }, { "const": "claude-sonnet-4-5", "description": "High-performance model for agents and coding", "x-stainless-nominal": false }, { "const": "claude-sonnet-4-5-20250929", "description": "High-performance model for agents and coding", "x-stainless-nominal": false } ] }, "messages": { "description": "Input messages.\n\nOur models are trained to operate on alternating `user` and `assistant` conversational turns. When creating a new `Message`, you specify the prior conversational turns with the `messages` parameter, and the model then generates the next `Message` in the conversation. Consecutive `user` or `assistant` turns in your request will be combined into a single turn.\n\nEach input message must be an object with a `role` and `content`. You can specify a single `user`-role message, or you can include multiple `user` and `assistant` messages.\n\nIf the final message uses the `assistant` role, the response content will continue immediately from the content in that message. This can be used to constrain part of the model's response.\n\nExample with a single `user` message:\n\n```json\n[{\"role\": \"user\", \"content\": \"Hello, Claude\"}]\n```\n\nExample with multiple conversational turns:\n\n```json\n[\n {\"role\": \"user\", \"content\": \"Hello there.\"},\n {\"role\": \"assistant\", \"content\": \"Hi, I'm Claude. How can I help you?\"},\n {\"role\": \"user\", \"content\": \"Can you explain LLMs in plain English?\"},\n]\n```\n\nExample with a partially-filled response from Claude:\n\n```json\n[\n {\"role\": \"user\", \"content\": \"What's the Greek name for Sun? (A) Sol (B) Helios (C) Sun\"},\n {\"role\": \"assistant\", \"content\": \"The best answer is (\"},\n]\n```\n\nEach input message `content` may be either a single `string` or an array of content blocks, where each block has a specific `type`. Using a `string` for `content` is shorthand for an array of one content block of type `\"text\"`. The following input messages are equivalent:\n\n```json\n{\"role\": \"user\", \"content\": \"Hello, Claude\"}\n```\n\n```json\n{\"role\": \"user\", \"content\": [{\"type\": \"text\", \"text\": \"Hello, Claude\"}]}\n```\n\nSee [input examples](https://platform.claude.com/docs/en/build-with-claude/working-with-messages).\n\nNote that if you want to include a [system prompt](https://platform.claude.com/docs/en/build-with-claude/prompt-engineering/claude-prompting-best-practices#give-claude-a-role), you can use the top-level `system` parameter \u2014 there is no `\"system\"` role for input messages in the Messages API.\n\nThere is a limit of 100,000 messages in a single request.", "items": { "additionalProperties": false, "properties": { "content": { "anyOf": [ { "type": "string", "x-stainless-skip": [ "go", "cli" ] }, { "items": { "discriminator": { "mapping": { "bash_code_execution_tool_result": "#/components/schemas/RequestBashCodeExecutionToolResultBlock", "code_execution_tool_result": "#/components/schemas/RequestCodeExecutionToolResultBlock", "container_upload": "#/components/schemas/RequestContainerUploadBlock", "document": "#/components/schemas/RequestDocumentBlock", "image": "#/components/schemas/RequestImageBlock", "redacted_thinking": "#/components/schemas/RequestRedactedThinkingBlock", "search_result": "#/components/schemas/RequestSearchResultBlock", "server_tool_use": "#/components/schemas/RequestServerToolUseBlock", "text": "#/components/schemas/RequestTextBlock", "text_editor_code_execution_tool_result": "#/components/schemas/RequestTextEditorCodeExecutionToolResultBlock", "thinking": "#/components/schemas/RequestThinkingBlock", "tool_result": "#/components/schemas/RequestToolResultBlock", "tool_search_tool_result": "#/components/schemas/RequestToolSearchToolResultBlock", "tool_use": "#/components/schemas/RequestToolUseBlock", "web_fetch_tool_result": "#/components/schemas/RequestWebFetchToolResultBlock", "web_search_tool_result": "#/components/schemas/RequestWebSearchToolResultBlock" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "citations": { "anyOf": [ { "items": { "discriminator": { "mapping": { "char_location": "#/components/schemas/RequestCharLocationCitation", "content_block_location": "#/components/schemas/RequestContentBlockLocationCitation", "page_location": "#/components/schemas/RequestPageLocationCitation", "search_result_location": "#/components/schemas/RequestSearchResultLocationCitation", "web_search_result_location": "#/components/schemas/RequestWebSearchResultLocationCitation" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "cited_text": { "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "document_index": { "minimum": 0, "title": "Document Index", "type": "integer" }, "document_title": { "anyOf": [ { "maxLength": 500, "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Document Title" }, "end_char_index": { "title": "End Char Index", "type": "integer" }, "start_char_index": { "minimum": 0, "title": "Start Char Index", "type": "integer" }, "type": { "const": "char_location", "title": "Type", "type": "string" } }, "required": [ "cited_text", "document_index", "document_title", "end_char_index", "start_char_index", "type" ], "title": "RequestCharLocationCitation", "type": "object" }, { "additionalProperties": false, "properties": { "cited_text": { "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "document_index": { "minimum": 0, "title": "Document Index", "type": "integer" }, "document_title": { "anyOf": [ { "maxLength": 500, "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Document Title" }, "end_page_number": { "title": "End Page Number", "type": "integer" }, "start_page_number": { "minimum": 1, "title": "Start Page Number", "type": "integer" }, "type": { "const": "page_location", "title": "Type", "type": "string" } }, "required": [ "cited_text", "document_index", "document_title", "end_page_number", "start_page_number", "type" ], "title": "RequestPageLocationCitation", "type": "object" }, { "additionalProperties": false, "properties": { "cited_text": { "description": "The full text of the cited block range, concatenated.\n\nAlways 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.", "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "document_index": { "minimum": 0, "title": "Document Index", "type": "integer" }, "document_title": { "anyOf": [ { "maxLength": 500, "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Document Title" }, "end_block_index": { "description": "Exclusive 0-based end index of the cited block range in the source's `content` array.\n\nAlways greater than `start_block_index`; a single-block citation has `end_block_index = start_block_index + 1`.", "title": "End Block Index", "type": "integer" }, "start_block_index": { "description": "0-based index of the first cited block in the source's `content` array.", "minimum": 0, "title": "Start Block Index", "type": "integer" }, "type": { "const": "content_block_location", "title": "Type", "type": "string" } }, "required": [ "cited_text", "document_index", "document_title", "end_block_index", "start_block_index", "type" ], "title": "RequestContentBlockLocationCitation", "type": "object" }, { "additionalProperties": false, "properties": { "cited_text": { "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "encrypted_index": { "title": "Encrypted Index", "type": "string" }, "title": { "anyOf": [ { "maxLength": 512, "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Title" }, "type": { "const": "web_search_result_location", "title": "Type", "type": "string" }, "url": { "minLength": 1, "title": "Url", "type": "string" } }, "required": [ "cited_text", "encrypted_index", "title", "type", "url" ], "title": "RequestWebSearchResultLocationCitation", "type": "object" }, { "additionalProperties": false, "properties": { "cited_text": { "description": "The full text of the cited block range, concatenated.\n\nAlways 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.", "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "end_block_index": { "description": "Exclusive 0-based end index of the cited block range in the source's `content` array.\n\nAlways greater than `start_block_index`; a single-block citation has `end_block_index = start_block_index + 1`.", "title": "End Block Index", "type": "integer" }, "search_result_index": { "description": "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.\n\nCounted separately from `document_index`; server-side web search results are not included in this count.", "minimum": 0, "title": "Search Result Index", "type": "integer" }, "source": { "title": "Source", "type": "string" }, "start_block_index": { "description": "0-based index of the first cited block in the source's `content` array.", "minimum": 0, "title": "Start Block Index", "type": "integer" }, "title": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Title" }, "type": { "const": "search_result_location", "title": "Type", "type": "string" } }, "required": [ "cited_text", "end_block_index", "search_result_index", "source", "start_block_index", "title", "type" ], "title": "RequestSearchResultLocationCitation", "type": "object" } ] }, "type": "array" }, { "type": "null" } ], "title": "Citations" }, "text": { "minLength": 1, "title": "Text", "type": "string" }, "type": { "const": "text", "title": "Type", "type": "string" } }, "required": [ "text", "type" ], "title": "RequestTextBlock", "type": "object" }, { "additionalProperties": false, "properties": { "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "source": { "discriminator": { "mapping": { "base64": "#/components/schemas/Base64ImageSource", "file": "#/components/schemas/FileImageSource", "url": "#/components/schemas/URLImageSource" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "data": { "format": "byte", "title": "Data", "type": "string" }, "media_type": { "enum": [ "image/jpeg", "image/png", "image/gif", "image/webp" ], "title": "Media Type", "type": "string" }, "type": { "const": "base64", "title": "Type", "type": "string" } }, "required": [ "data", "media_type", "type" ], "title": "Base64ImageSource", "type": "object" }, { "additionalProperties": false, "properties": { "type": { "const": "url", "title": "Type", "type": "string" }, "url": { "title": "Url", "type": "string" } }, "required": [ "type", "url" ], "title": "URLImageSource", "type": "object" }, { "additionalProperties": false, "properties": { "file_id": { "title": "File Id", "type": "string" }, "type": { "const": "file", "title": "Type", "type": "string" } }, "required": [ "file_id", "type" ], "title": "FileImageSource", "type": "object" } ], "title": "Source" }, "transformations": { "anyOf": [ { "additionalProperties": false, "description": "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.", "properties": { "oversized_image": { "description": "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 \u2014 your image is never silently scaled down.", "enum": [ "downsize", "error" ], "title": "Oversized Image", "type": "string" } }, "title": "RequestImageTransformations", "type": "object" }, { "type": "null" } ], "description": "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." }, "type": { "const": "image", "title": "Type", "type": "string" } }, "required": [ "source", "type" ], "title": "RequestImageBlock", "type": "object" }, { "additionalProperties": false, "properties": { "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "citations": { "anyOf": [ { "additionalProperties": false, "properties": { "enabled": { "title": "Enabled", "type": "boolean" } }, "title": "RequestCitationsConfig", "type": "object" }, { "type": "null" } ] }, "context": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Context" }, "source": { "discriminator": { "mapping": { "base64": "#/components/schemas/Base64PDFSource", "content": "#/components/schemas/ContentBlockSource", "file": "#/components/schemas/FileDocumentSource", "text": "#/components/schemas/PlainTextSource", "url": "#/components/schemas/URLPDFSource" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "data": { "format": "byte", "title": "Data", "type": "string" }, "media_type": { "const": "application/pdf", "title": "Media Type", "type": "string" }, "type": { "const": "base64", "title": "Type", "type": "string" } }, "required": [ "data", "media_type", "type" ], "title": "Base64PDFSource", "type": "object" }, { "additionalProperties": false, "properties": { "data": { "title": "Data", "type": "string" }, "media_type": { "const": "text/plain", "title": "Media Type", "type": "string" }, "type": { "const": "text", "title": "Type", "type": "string" } }, "required": [ "data", "media_type", "type" ], "title": "PlainTextSource", "type": "object" }, { "additionalProperties": false, "properties": { "content": { "anyOf": [ { "type": "string" }, { "items": { "discriminator": { "mapping": { "image": "#/components/schemas/RequestImageBlock", "text": "#/components/schemas/RequestTextBlock" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "citations": { "anyOf": [ { "items": { "discriminator": { "mapping": { "char_location": "#/components/schemas/RequestCharLocationCitation", "content_block_location": "#/components/schemas/RequestContentBlockLocationCitation", "page_location": "#/components/schemas/RequestPageLocationCitation", "search_result_location": "#/components/schemas/RequestSearchResultLocationCitation", "web_search_result_location": "#/components/schemas/RequestWebSearchResultLocationCitation" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "cited_text": { "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "document_index": { "minimum": 0, "title": "Document Index", "type": "integer" }, "document_title": { "anyOf": [ { "maxLength": 500, "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Document Title" }, "end_char_index": { "title": "End Char Index", "type": "integer" }, "start_char_index": { "minimum": 0, "title": "Start Char Index", "type": "integer" }, "type": { "const": "char_location", "title": "Type", "type": "string" } }, "required": [ "cited_text", "document_index", "document_title", "end_char_index", "start_char_index", "type" ], "title": "RequestCharLocationCitation", "type": "object" }, { "additionalProperties": false, "properties": { "cited_text": { "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "document_index": { "minimum": 0, "title": "Document Index", "type": "integer" }, "document_title": { "anyOf": [ { "maxLength": 500, "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Document Title" }, "end_page_number": { "title": "End Page Number", "type": "integer" }, "start_page_number": { "minimum": 1, "title": "Start Page Number", "type": "integer" }, "type": { "const": "page_location", "title": "Type", "type": "string" } }, "required": [ "cited_text", "document_index", "document_title", "end_page_number", "start_page_number", "type" ], "title": "RequestPageLocationCitation", "type": "object" }, { "additionalProperties": false, "properties": { "cited_text": { "description": "The full text of the cited block range, concatenated.\n\nAlways 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.", "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "document_index": { "minimum": 0, "title": "Document Index", "type": "integer" }, "document_title": { "anyOf": [ { "maxLength": 500, "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Document Title" }, "end_block_index": { "description": "Exclusive 0-based end index of the cited block range in the source's `content` array.\n\nAlways greater than `start_block_index`; a single-block citation has `end_block_index = start_block_index + 1`.", "title": "End Block Index", "type": "integer" }, "start_block_index": { "description": "0-based index of the first cited block in the source's `content` array.", "minimum": 0, "title": "Start Block Index", "type": "integer" }, "type": { "const": "content_block_location", "title": "Type", "type": "string" } }, "required": [ "cited_text", "document_index", "document_title", "end_block_index", "start_block_index", "type" ], "title": "RequestContentBlockLocationCitation", "type": "object" }, { "additionalProperties": false, "properties": { "cited_text": { "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "encrypted_index": { "title": "Encrypted Index", "type": "string" }, "title": { "anyOf": [ { "maxLength": 512, "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Title" }, "type": { "const": "web_search_result_location", "title": "Type", "type": "string" }, "url": { "minLength": 1, "title": "Url", "type": "string" } }, "required": [ "cited_text", "encrypted_index", "title", "type", "url" ], "title": "RequestWebSearchResultLocationCitation", "type": "object" }, { "additionalProperties": false, "properties": { "cited_text": { "description": "The full text of the cited block range, concatenated.\n\nAlways 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.", "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "end_block_index": { "description": "Exclusive 0-based end index of the cited block range in the source's `content` array.\n\nAlways greater than `start_block_index`; a single-block citation has `end_block_index = start_block_index + 1`.", "title": "End Block Index", "type": "integer" }, "search_result_index": { "description": "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.\n\nCounted separately from `document_index`; server-side web search results are not included in this count.", "minimum": 0, "title": "Search Result Index", "type": "integer" }, "source": { "title": "Source", "type": "string" }, "start_block_index": { "description": "0-based index of the first cited block in the source's `content` array.", "minimum": 0, "title": "Start Block Index", "type": "integer" }, "title": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Title" }, "type": { "const": "search_result_location", "title": "Type", "type": "string" } }, "required": [ "cited_text", "end_block_index", "search_result_index", "source", "start_block_index", "title", "type" ], "title": "RequestSearchResultLocationCitation", "type": "object" } ] }, "type": "array" }, { "type": "null" } ], "title": "Citations" }, "text": { "minLength": 1, "title": "Text", "type": "string" }, "type": { "const": "text", "title": "Type", "type": "string" } }, "required": [ "text", "type" ], "title": "RequestTextBlock", "type": "object" }, { "additionalProperties": false, "properties": { "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "source": { "discriminator": { "mapping": { "base64": "#/components/schemas/Base64ImageSource", "file": "#/components/schemas/FileImageSource", "url": "#/components/schemas/URLImageSource" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "data": { "format": "byte", "title": "Data", "type": "string" }, "media_type": { "enum": [ "image/jpeg", "image/png", "image/gif", "image/webp" ], "title": "Media Type", "type": "string" }, "type": { "const": "base64", "title": "Type", "type": "string" } }, "required": [ "data", "media_type", "type" ], "title": "Base64ImageSource", "type": "object" }, { "additionalProperties": false, "properties": { "type": { "const": "url", "title": "Type", "type": "string" }, "url": { "title": "Url", "type": "string" } }, "required": [ "type", "url" ], "title": "URLImageSource", "type": "object" }, { "additionalProperties": false, "properties": { "file_id": { "title": "File Id", "type": "string" }, "type": { "const": "file", "title": "Type", "type": "string" } }, "required": [ "file_id", "type" ], "title": "FileImageSource", "type": "object" } ], "title": "Source" }, "transformations": { "anyOf": [ { "additionalProperties": false, "description": "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.", "properties": { "oversized_image": { "description": "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 \u2014 your image is never silently scaled down.", "enum": [ "downsize", "error" ], "title": "Oversized Image", "type": "string" } }, "title": "RequestImageTransformations", "type": "object" }, { "type": "null" } ], "description": "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." }, "type": { "const": "image", "title": "Type", "type": "string" } }, "required": [ "source", "type" ], "title": "RequestImageBlock", "type": "object" } ], "x-stainless-naming": { "go": { "type_name": "ContentBlockSourceContentItem" } }, "title": "content_block_source_content_item" }, "type": "array", "title": "content_block_source_content" } ], "title": "Content" }, "type": { "const": "content", "title": "Type", "type": "string" } }, "required": [ "content", "type" ], "title": "ContentBlockSource", "type": "object" }, { "additionalProperties": false, "properties": { "type": { "const": "url", "title": "Type", "type": "string" }, "url": { "title": "Url", "type": "string" } }, "required": [ "type", "url" ], "title": "URLPDFSource", "type": "object" }, { "additionalProperties": false, "properties": { "file_id": { "title": "File Id", "type": "string" }, "type": { "const": "file", "title": "Type", "type": "string" } }, "required": [ "file_id", "type" ], "title": "FileDocumentSource", "type": "object" } ], "title": "Source" }, "title": { "anyOf": [ { "maxLength": 500, "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Title" }, "type": { "const": "document", "title": "Type", "type": "string" } }, "required": [ "source", "type" ], "title": "RequestDocumentBlock", "type": "object" }, { "additionalProperties": false, "properties": { "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "citations": { "additionalProperties": false, "properties": { "enabled": { "title": "Enabled", "type": "boolean" } }, "title": "RequestCitationsConfig", "type": "object" }, "content": { "items": { "additionalProperties": false, "properties": { "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "citations": { "anyOf": [ { "items": { "discriminator": { "mapping": { "char_location": "#/components/schemas/RequestCharLocationCitation", "content_block_location": "#/components/schemas/RequestContentBlockLocationCitation", "page_location": "#/components/schemas/RequestPageLocationCitation", "search_result_location": "#/components/schemas/RequestSearchResultLocationCitation", "web_search_result_location": "#/components/schemas/RequestWebSearchResultLocationCitation" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "cited_text": { "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "document_index": { "minimum": 0, "title": "Document Index", "type": "integer" }, "document_title": { "anyOf": [ { "maxLength": 500, "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Document Title" }, "end_char_index": { "title": "End Char Index", "type": "integer" }, "start_char_index": { "minimum": 0, "title": "Start Char Index", "type": "integer" }, "type": { "const": "char_location", "title": "Type", "type": "string" } }, "required": [ "cited_text", "document_index", "document_title", "end_char_index", "start_char_index", "type" ], "title": "RequestCharLocationCitation", "type": "object" }, { "additionalProperties": false, "properties": { "cited_text": { "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "document_index": { "minimum": 0, "title": "Document Index", "type": "integer" }, "document_title": { "anyOf": [ { "maxLength": 500, "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Document Title" }, "end_page_number": { "title": "End Page Number", "type": "integer" }, "start_page_number": { "minimum": 1, "title": "Start Page Number", "type": "integer" }, "type": { "const": "page_location", "title": "Type", "type": "string" } }, "required": [ "cited_text", "document_index", "document_title", "end_page_number", "start_page_number", "type" ], "title": "RequestPageLocationCitation", "type": "object" }, { "additionalProperties": false, "properties": { "cited_text": { "description": "The full text of the cited block range, concatenated.\n\nAlways 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.", "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "document_index": { "minimum": 0, "title": "Document Index", "type": "integer" }, "document_title": { "anyOf": [ { "maxLength": 500, "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Document Title" }, "end_block_index": { "description": "Exclusive 0-based end index of the cited block range in the source's `content` array.\n\nAlways greater than `start_block_index`; a single-block citation has `end_block_index = start_block_index + 1`.", "title": "End Block Index", "type": "integer" }, "start_block_index": { "description": "0-based index of the first cited block in the source's `content` array.", "minimum": 0, "title": "Start Block Index", "type": "integer" }, "type": { "const": "content_block_location", "title": "Type", "type": "string" } }, "required": [ "cited_text", "document_index", "document_title", "end_block_index", "start_block_index", "type" ], "title": "RequestContentBlockLocationCitation", "type": "object" }, { "additionalProperties": false, "properties": { "cited_text": { "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "encrypted_index": { "title": "Encrypted Index", "type": "string" }, "title": { "anyOf": [ { "maxLength": 512, "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Title" }, "type": { "const": "web_search_result_location", "title": "Type", "type": "string" }, "url": { "minLength": 1, "title": "Url", "type": "string" } }, "required": [ "cited_text", "encrypted_index", "title", "type", "url" ], "title": "RequestWebSearchResultLocationCitation", "type": "object" }, { "additionalProperties": false, "properties": { "cited_text": { "description": "The full text of the cited block range, concatenated.\n\nAlways 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.", "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "end_block_index": { "description": "Exclusive 0-based end index of the cited block range in the source's `content` array.\n\nAlways greater than `start_block_index`; a single-block citation has `end_block_index = start_block_index + 1`.", "title": "End Block Index", "type": "integer" }, "search_result_index": { "description": "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.\n\nCounted separately from `document_index`; server-side web search results are not included in this count.", "minimum": 0, "title": "Search Result Index", "type": "integer" }, "source": { "title": "Source", "type": "string" }, "start_block_index": { "description": "0-based index of the first cited block in the source's `content` array.", "minimum": 0, "title": "Start Block Index", "type": "integer" }, "title": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Title" }, "type": { "const": "search_result_location", "title": "Type", "type": "string" } }, "required": [ "cited_text", "end_block_index", "search_result_index", "source", "start_block_index", "title", "type" ], "title": "RequestSearchResultLocationCitation", "type": "object" } ] }, "type": "array" }, { "type": "null" } ], "title": "Citations" }, "text": { "minLength": 1, "title": "Text", "type": "string" }, "type": { "const": "text", "title": "Type", "type": "string" } }, "required": [ "text", "type" ], "title": "RequestTextBlock", "type": "object" }, "title": "Content", "type": "array" }, "source": { "title": "Source", "type": "string" }, "title": { "title": "Title", "type": "string" }, "type": { "const": "search_result", "title": "Type", "type": "string" } }, "required": [ "content", "source", "title", "type" ], "title": "RequestSearchResultBlock", "type": "object" }, { "additionalProperties": false, "properties": { "signature": { "description": "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.\n\nThinking blocks must be passed back unmodified and in their original order; a modified block results in a 400 `invalid_request_error`.", "title": "Signature", "type": "string" }, "thinking": { "description": "The `thinking` text of this block as returned by the API.", "title": "Thinking", "type": "string" }, "type": { "const": "thinking", "title": "Type", "type": "string" } }, "required": [ "signature", "thinking", "type" ], "title": "RequestThinkingBlock", "type": "object" }, { "additionalProperties": false, "properties": { "data": { "description": "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.", "title": "Data", "type": "string" }, "type": { "const": "redacted_thinking", "title": "Type", "type": "string" } }, "required": [ "data", "type" ], "title": "RequestRedactedThinkingBlock", "type": "object" }, { "additionalProperties": false, "properties": { "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "caller": { "discriminator": { "mapping": { "code_execution_20250825": "#/components/schemas/ServerToolCaller", "code_execution_20260120": "#/components/schemas/ServerToolCaller_20260120", "direct": "#/components/schemas/DirectCaller" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "description": "Tool invocation directly from the model.", "properties": { "type": { "const": "direct", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "DirectCaller", "type": "object" }, { "additionalProperties": false, "description": "Tool invocation generated by a server-side tool.", "properties": { "tool_id": { "pattern": "^srvtoolu_[a-zA-Z0-9_]+$", "title": "Tool Id", "type": "string" }, "type": { "const": "code_execution_20250825", "title": "Type", "type": "string" } }, "required": [ "tool_id", "type" ], "title": "ServerToolCaller", "type": "object" }, { "additionalProperties": false, "properties": { "tool_id": { "pattern": "^srvtoolu_[a-zA-Z0-9_]+$", "title": "Tool Id", "type": "string" }, "type": { "const": "code_execution_20260120", "title": "Type", "type": "string" } }, "required": [ "tool_id", "type" ], "title": "ServerToolCaller_20260120", "type": "object" } ], "title": "Caller" }, "id": { "pattern": "^[a-zA-Z0-9_-]+$", "title": "Id", "type": "string" }, "input": { "additionalProperties": true, "title": "Input", "type": "object" }, "name": { "maxLength": 200, "minLength": 1, "title": "Name", "type": "string" }, "toolset_name": { "anyOf": [ { "maxLength": 64, "minLength": 1, "pattern": "^[a-zA-Z0-9_-]+$", "type": "string" }, { "type": "null" } ], "description": "For a toolset member tool_use, the toolset family this member belongs to.", "title": "Toolset Name" }, "type": { "const": "tool_use", "title": "Type", "type": "string" } }, "required": [ "id", "input", "name", "type" ], "title": "RequestToolUseBlock", "type": "object" }, { "additionalProperties": false, "properties": { "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "content": { "anyOf": [ { "type": "string", "x-stainless-skip": [ "go", "cli" ] }, { "items": { "discriminator": { "mapping": { "browser_state": "#/components/schemas/RequestBrowserStateBlock", "document": "#/components/schemas/RequestDocumentBlock", "image": "#/components/schemas/RequestImageBlock", "search_result": "#/components/schemas/RequestSearchResultBlock", "text": "#/components/schemas/RequestTextBlock", "tool_reference": "#/components/schemas/RequestToolReferenceBlock" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "citations": { "anyOf": [ { "items": { "discriminator": { "mapping": { "char_location": "#/components/schemas/RequestCharLocationCitation", "content_block_location": "#/components/schemas/RequestContentBlockLocationCitation", "page_location": "#/components/schemas/RequestPageLocationCitation", "search_result_location": "#/components/schemas/RequestSearchResultLocationCitation", "web_search_result_location": "#/components/schemas/RequestWebSearchResultLocationCitation" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "cited_text": { "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "document_index": { "minimum": 0, "title": "Document Index", "type": "integer" }, "document_title": { "anyOf": [ { "maxLength": 500, "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Document Title" }, "end_char_index": { "title": "End Char Index", "type": "integer" }, "start_char_index": { "minimum": 0, "title": "Start Char Index", "type": "integer" }, "type": { "const": "char_location", "title": "Type", "type": "string" } }, "required": [ "cited_text", "document_index", "document_title", "end_char_index", "start_char_index", "type" ], "title": "RequestCharLocationCitation", "type": "object" }, { "additionalProperties": false, "properties": { "cited_text": { "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "document_index": { "minimum": 0, "title": "Document Index", "type": "integer" }, "document_title": { "anyOf": [ { "maxLength": 500, "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Document Title" }, "end_page_number": { "title": "End Page Number", "type": "integer" }, "start_page_number": { "minimum": 1, "title": "Start Page Number", "type": "integer" }, "type": { "const": "page_location", "title": "Type", "type": "string" } }, "required": [ "cited_text", "document_index", "document_title", "end_page_number", "start_page_number", "type" ], "title": "RequestPageLocationCitation", "type": "object" }, { "additionalProperties": false, "properties": { "cited_text": { "description": "The full text of the cited block range, concatenated.\n\nAlways 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.", "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "document_index": { "minimum": 0, "title": "Document Index", "type": "integer" }, "document_title": { "anyOf": [ { "maxLength": 500, "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Document Title" }, "end_block_index": { "description": "Exclusive 0-based end index of the cited block range in the source's `content` array.\n\nAlways greater than `start_block_index`; a single-block citation has `end_block_index = start_block_index + 1`.", "title": "End Block Index", "type": "integer" }, "start_block_index": { "description": "0-based index of the first cited block in the source's `content` array.", "minimum": 0, "title": "Start Block Index", "type": "integer" }, "type": { "const": "content_block_location", "title": "Type", "type": "string" } }, "required": [ "cited_text", "document_index", "document_title", "end_block_index", "start_block_index", "type" ], "title": "RequestContentBlockLocationCitation", "type": "object" }, { "additionalProperties": false, "properties": { "cited_text": { "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "encrypted_index": { "title": "Encrypted Index", "type": "string" }, "title": { "anyOf": [ { "maxLength": 512, "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Title" }, "type": { "const": "web_search_result_location", "title": "Type", "type": "string" }, "url": { "minLength": 1, "title": "Url", "type": "string" } }, "required": [ "cited_text", "encrypted_index", "title", "type", "url" ], "title": "RequestWebSearchResultLocationCitation", "type": "object" }, { "additionalProperties": false, "properties": { "cited_text": { "description": "The full text of the cited block range, concatenated.\n\nAlways 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.", "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "end_block_index": { "description": "Exclusive 0-based end index of the cited block range in the source's `content` array.\n\nAlways greater than `start_block_index`; a single-block citation has `end_block_index = start_block_index + 1`.", "title": "End Block Index", "type": "integer" }, "search_result_index": { "description": "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.\n\nCounted separately from `document_index`; server-side web search results are not included in this count.", "minimum": 0, "title": "Search Result Index", "type": "integer" }, "source": { "title": "Source", "type": "string" }, "start_block_index": { "description": "0-based index of the first cited block in the source's `content` array.", "minimum": 0, "title": "Start Block Index", "type": "integer" }, "title": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Title" }, "type": { "const": "search_result_location", "title": "Type", "type": "string" } }, "required": [ "cited_text", "end_block_index", "search_result_index", "source", "start_block_index", "title", "type" ], "title": "RequestSearchResultLocationCitation", "type": "object" } ] }, "type": "array" }, { "type": "null" } ], "title": "Citations" }, "text": { "minLength": 1, "title": "Text", "type": "string" }, "type": { "const": "text", "title": "Type", "type": "string" } }, "required": [ "text", "type" ], "title": "RequestTextBlock", "type": "object" }, { "additionalProperties": false, "properties": { "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "source": { "discriminator": { "mapping": { "base64": "#/components/schemas/Base64ImageSource", "file": "#/components/schemas/FileImageSource", "url": "#/components/schemas/URLImageSource" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "data": { "format": "byte", "title": "Data", "type": "string" }, "media_type": { "enum": [ "image/jpeg", "image/png", "image/gif", "image/webp" ], "title": "Media Type", "type": "string" }, "type": { "const": "base64", "title": "Type", "type": "string" } }, "required": [ "data", "media_type", "type" ], "title": "Base64ImageSource", "type": "object" }, { "additionalProperties": false, "properties": { "type": { "const": "url", "title": "Type", "type": "string" }, "url": { "title": "Url", "type": "string" } }, "required": [ "type", "url" ], "title": "URLImageSource", "type": "object" }, { "additionalProperties": false, "properties": { "file_id": { "title": "File Id", "type": "string" }, "type": { "const": "file", "title": "Type", "type": "string" } }, "required": [ "file_id", "type" ], "title": "FileImageSource", "type": "object" } ], "title": "Source" }, "transformations": { "anyOf": [ { "additionalProperties": false, "description": "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.", "properties": { "oversized_image": { "description": "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 \u2014 your image is never silently scaled down.", "enum": [ "downsize", "error" ], "title": "Oversized Image", "type": "string" } }, "title": "RequestImageTransformations", "type": "object" }, { "type": "null" } ], "description": "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." }, "type": { "const": "image", "title": "Type", "type": "string" } }, "required": [ "source", "type" ], "title": "RequestImageBlock", "type": "object" }, { "additionalProperties": false, "properties": { "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "citations": { "additionalProperties": false, "properties": { "enabled": { "title": "Enabled", "type": "boolean" } }, "title": "RequestCitationsConfig", "type": "object" }, "content": { "items": { "additionalProperties": false, "properties": { "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "citations": { "anyOf": [ { "items": { "discriminator": { "mapping": { "char_location": "#/components/schemas/RequestCharLocationCitation", "content_block_location": "#/components/schemas/RequestContentBlockLocationCitation", "page_location": "#/components/schemas/RequestPageLocationCitation", "search_result_location": "#/components/schemas/RequestSearchResultLocationCitation", "web_search_result_location": "#/components/schemas/RequestWebSearchResultLocationCitation" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "cited_text": { "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "document_index": { "minimum": 0, "title": "Document Index", "type": "integer" }, "document_title": { "anyOf": [ { "maxLength": 500, "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Document Title" }, "end_char_index": { "title": "End Char Index", "type": "integer" }, "start_char_index": { "minimum": 0, "title": "Start Char Index", "type": "integer" }, "type": { "const": "char_location", "title": "Type", "type": "string" } }, "required": [ "cited_text", "document_index", "document_title", "end_char_index", "start_char_index", "type" ], "title": "RequestCharLocationCitation", "type": "object" }, { "additionalProperties": false, "properties": { "cited_text": { "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "document_index": { "minimum": 0, "title": "Document Index", "type": "integer" }, "document_title": { "anyOf": [ { "maxLength": 500, "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Document Title" }, "end_page_number": { "title": "End Page Number", "type": "integer" }, "start_page_number": { "minimum": 1, "title": "Start Page Number", "type": "integer" }, "type": { "const": "page_location", "title": "Type", "type": "string" } }, "required": [ "cited_text", "document_index", "document_title", "end_page_number", "start_page_number", "type" ], "title": "RequestPageLocationCitation", "type": "object" }, { "additionalProperties": false, "properties": { "cited_text": { "description": "The full text of the cited block range, concatenated.\n\nAlways 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.", "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "document_index": { "minimum": 0, "title": "Document Index", "type": "integer" }, "document_title": { "anyOf": [ { "maxLength": 500, "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Document Title" }, "end_block_index": { "description": "Exclusive 0-based end index of the cited block range in the source's `content` array.\n\nAlways greater than `start_block_index`; a single-block citation has `end_block_index = start_block_index + 1`.", "title": "End Block Index", "type": "integer" }, "start_block_index": { "description": "0-based index of the first cited block in the source's `content` array.", "minimum": 0, "title": "Start Block Index", "type": "integer" }, "type": { "const": "content_block_location", "title": "Type", "type": "string" } }, "required": [ "cited_text", "document_index", "document_title", "end_block_index", "start_block_index", "type" ], "title": "RequestContentBlockLocationCitation", "type": "object" }, { "additionalProperties": false, "properties": { "cited_text": { "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "encrypted_index": { "title": "Encrypted Index", "type": "string" }, "title": { "anyOf": [ { "maxLength": 512, "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Title" }, "type": { "const": "web_search_result_location", "title": "Type", "type": "string" }, "url": { "minLength": 1, "title": "Url", "type": "string" } }, "required": [ "cited_text", "encrypted_index", "title", "type", "url" ], "title": "RequestWebSearchResultLocationCitation", "type": "object" }, { "additionalProperties": false, "properties": { "cited_text": { "description": "The full text of the cited block range, concatenated.\n\nAlways 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.", "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "end_block_index": { "description": "Exclusive 0-based end index of the cited block range in the source's `content` array.\n\nAlways greater than `start_block_index`; a single-block citation has `end_block_index = start_block_index + 1`.", "title": "End Block Index", "type": "integer" }, "search_result_index": { "description": "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.\n\nCounted separately from `document_index`; server-side web search results are not included in this count.", "minimum": 0, "title": "Search Result Index", "type": "integer" }, "source": { "title": "Source", "type": "string" }, "start_block_index": { "description": "0-based index of the first cited block in the source's `content` array.", "minimum": 0, "title": "Start Block Index", "type": "integer" }, "title": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Title" }, "type": { "const": "search_result_location", "title": "Type", "type": "string" } }, "required": [ "cited_text", "end_block_index", "search_result_index", "source", "start_block_index", "title", "type" ], "title": "RequestSearchResultLocationCitation", "type": "object" } ] }, "type": "array" }, { "type": "null" } ], "title": "Citations" }, "text": { "minLength": 1, "title": "Text", "type": "string" }, "type": { "const": "text", "title": "Type", "type": "string" } }, "required": [ "text", "type" ], "title": "RequestTextBlock", "type": "object" }, "title": "Content", "type": "array" }, "source": { "title": "Source", "type": "string" }, "title": { "title": "Title", "type": "string" }, "type": { "const": "search_result", "title": "Type", "type": "string" } }, "required": [ "content", "source", "title", "type" ], "title": "RequestSearchResultBlock", "type": "object" }, { "additionalProperties": false, "properties": { "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "citations": { "anyOf": [ { "additionalProperties": false, "properties": { "enabled": { "title": "Enabled", "type": "boolean" } }, "title": "RequestCitationsConfig", "type": "object" }, { "type": "null" } ] }, "context": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Context" }, "source": { "discriminator": { "mapping": { "base64": "#/components/schemas/Base64PDFSource", "content": "#/components/schemas/ContentBlockSource", "file": "#/components/schemas/FileDocumentSource", "text": "#/components/schemas/PlainTextSource", "url": "#/components/schemas/URLPDFSource" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "data": { "format": "byte", "title": "Data", "type": "string" }, "media_type": { "const": "application/pdf", "title": "Media Type", "type": "string" }, "type": { "const": "base64", "title": "Type", "type": "string" } }, "required": [ "data", "media_type", "type" ], "title": "Base64PDFSource", "type": "object" }, { "additionalProperties": false, "properties": { "data": { "title": "Data", "type": "string" }, "media_type": { "const": "text/plain", "title": "Media Type", "type": "string" }, "type": { "const": "text", "title": "Type", "type": "string" } }, "required": [ "data", "media_type", "type" ], "title": "PlainTextSource", "type": "object" }, { "additionalProperties": false, "properties": { "content": { "anyOf": [ { "type": "string" }, { "items": { "discriminator": { "mapping": { "image": "#/components/schemas/RequestImageBlock", "text": "#/components/schemas/RequestTextBlock" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "citations": { "anyOf": [ { "items": { "discriminator": { "mapping": { "char_location": "#/components/schemas/RequestCharLocationCitation", "content_block_location": "#/components/schemas/RequestContentBlockLocationCitation", "page_location": "#/components/schemas/RequestPageLocationCitation", "search_result_location": "#/components/schemas/RequestSearchResultLocationCitation", "web_search_result_location": "#/components/schemas/RequestWebSearchResultLocationCitation" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "cited_text": { "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "document_index": { "minimum": 0, "title": "Document Index", "type": "integer" }, "document_title": { "anyOf": [ { "maxLength": 500, "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Document Title" }, "end_char_index": { "title": "End Char Index", "type": "integer" }, "start_char_index": { "minimum": 0, "title": "Start Char Index", "type": "integer" }, "type": { "const": "char_location", "title": "Type", "type": "string" } }, "required": [ "cited_text", "document_index", "document_title", "end_char_index", "start_char_index", "type" ], "title": "RequestCharLocationCitation", "type": "object" }, { "additionalProperties": false, "properties": { "cited_text": { "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "document_index": { "minimum": 0, "title": "Document Index", "type": "integer" }, "document_title": { "anyOf": [ { "maxLength": 500, "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Document Title" }, "end_page_number": { "title": "End Page Number", "type": "integer" }, "start_page_number": { "minimum": 1, "title": "Start Page Number", "type": "integer" }, "type": { "const": "page_location", "title": "Type", "type": "string" } }, "required": [ "cited_text", "document_index", "document_title", "end_page_number", "start_page_number", "type" ], "title": "RequestPageLocationCitation", "type": "object" }, { "additionalProperties": false, "properties": { "cited_text": { "description": "The full text of the cited block range, concatenated.\n\nAlways 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.", "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "document_index": { "minimum": 0, "title": "Document Index", "type": "integer" }, "document_title": { "anyOf": [ { "maxLength": 500, "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Document Title" }, "end_block_index": { "description": "Exclusive 0-based end index of the cited block range in the source's `content` array.\n\nAlways greater than `start_block_index`; a single-block citation has `end_block_index = start_block_index + 1`.", "title": "End Block Index", "type": "integer" }, "start_block_index": { "description": "0-based index of the first cited block in the source's `content` array.", "minimum": 0, "title": "Start Block Index", "type": "integer" }, "type": { "const": "content_block_location", "title": "Type", "type": "string" } }, "required": [ "cited_text", "document_index", "document_title", "end_block_index", "start_block_index", "type" ], "title": "RequestContentBlockLocationCitation", "type": "object" }, { "additionalProperties": false, "properties": { "cited_text": { "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "encrypted_index": { "title": "Encrypted Index", "type": "string" }, "title": { "anyOf": [ { "maxLength": 512, "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Title" }, "type": { "const": "web_search_result_location", "title": "Type", "type": "string" }, "url": { "minLength": 1, "title": "Url", "type": "string" } }, "required": [ "cited_text", "encrypted_index", "title", "type", "url" ], "title": "RequestWebSearchResultLocationCitation", "type": "object" }, { "additionalProperties": false, "properties": { "cited_text": { "description": "The full text of the cited block range, concatenated.\n\nAlways 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.", "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "end_block_index": { "description": "Exclusive 0-based end index of the cited block range in the source's `content` array.\n\nAlways greater than `start_block_index`; a single-block citation has `end_block_index = start_block_index + 1`.", "title": "End Block Index", "type": "integer" }, "search_result_index": { "description": "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.\n\nCounted separately from `document_index`; server-side web search results are not included in this count.", "minimum": 0, "title": "Search Result Index", "type": "integer" }, "source": { "title": "Source", "type": "string" }, "start_block_index": { "description": "0-based index of the first cited block in the source's `content` array.", "minimum": 0, "title": "Start Block Index", "type": "integer" }, "title": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Title" }, "type": { "const": "search_result_location", "title": "Type", "type": "string" } }, "required": [ "cited_text", "end_block_index", "search_result_index", "source", "start_block_index", "title", "type" ], "title": "RequestSearchResultLocationCitation", "type": "object" } ] }, "type": "array" }, { "type": "null" } ], "title": "Citations" }, "text": { "minLength": 1, "title": "Text", "type": "string" }, "type": { "const": "text", "title": "Type", "type": "string" } }, "required": [ "text", "type" ], "title": "RequestTextBlock", "type": "object" }, { "additionalProperties": false, "properties": { "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "source": { "discriminator": { "mapping": { "base64": "#/components/schemas/Base64ImageSource", "file": "#/components/schemas/FileImageSource", "url": "#/components/schemas/URLImageSource" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "data": { "format": "byte", "title": "Data", "type": "string" }, "media_type": { "enum": [ "image/jpeg", "image/png", "image/gif", "image/webp" ], "title": "Media Type", "type": "string" }, "type": { "const": "base64", "title": "Type", "type": "string" } }, "required": [ "data", "media_type", "type" ], "title": "Base64ImageSource", "type": "object" }, { "additionalProperties": false, "properties": { "type": { "const": "url", "title": "Type", "type": "string" }, "url": { "title": "Url", "type": "string" } }, "required": [ "type", "url" ], "title": "URLImageSource", "type": "object" }, { "additionalProperties": false, "properties": { "file_id": { "title": "File Id", "type": "string" }, "type": { "const": "file", "title": "Type", "type": "string" } }, "required": [ "file_id", "type" ], "title": "FileImageSource", "type": "object" } ], "title": "Source" }, "transformations": { "anyOf": [ { "additionalProperties": false, "description": "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.", "properties": { "oversized_image": { "description": "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 \u2014 your image is never silently scaled down.", "enum": [ "downsize", "error" ], "title": "Oversized Image", "type": "string" } }, "title": "RequestImageTransformations", "type": "object" }, { "type": "null" } ], "description": "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." }, "type": { "const": "image", "title": "Type", "type": "string" } }, "required": [ "source", "type" ], "title": "RequestImageBlock", "type": "object" } ], "x-stainless-naming": { "go": { "type_name": "ContentBlockSourceContentItem" } }, "title": "content_block_source_content_item" }, "type": "array", "title": "content_block_source_content" } ], "title": "Content" }, "type": { "const": "content", "title": "Type", "type": "string" } }, "required": [ "content", "type" ], "title": "ContentBlockSource", "type": "object" }, { "additionalProperties": false, "properties": { "type": { "const": "url", "title": "Type", "type": "string" }, "url": { "title": "Url", "type": "string" } }, "required": [ "type", "url" ], "title": "URLPDFSource", "type": "object" }, { "additionalProperties": false, "properties": { "file_id": { "title": "File Id", "type": "string" }, "type": { "const": "file", "title": "Type", "type": "string" } }, "required": [ "file_id", "type" ], "title": "FileDocumentSource", "type": "object" } ], "title": "Source" }, "title": { "anyOf": [ { "maxLength": 500, "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Title" }, "type": { "const": "document", "title": "Type", "type": "string" } }, "required": [ "source", "type" ], "title": "RequestDocumentBlock", "type": "object" }, { "additionalProperties": false, "description": "Tool reference block that can be included in tool_result content.", "properties": { "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "tool_name": { "maxLength": 256, "minLength": 1, "pattern": "^[a-zA-Z0-9_-]{1,256}$", "title": "Tool Name", "type": "string" }, "type": { "const": "tool_reference", "title": "Type", "type": "string" } }, "required": [ "tool_name", "type" ], "title": "RequestToolReferenceBlock", "type": "object" }, { "additionalProperties": false, "description": "The caller's browser state after a browser toolset member call \u2014\nthe full inventory of open tabs, which tab is active, and any side\neffects (tabs opened, download state changes) the call produced.\n\nAt most one per `tool_result`, only on a non-error result answering a\nbrowser toolset member `tool_use`. The server renders the\nmodel-visible text from it; the model never sees the raw fields.", "properties": { "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "state_changes": { "anyOf": [ { "items": { "discriminator": { "mapping": { "download_completed": "#/components/schemas/BrowserStateChangeDownloadCompleted", "download_failed": "#/components/schemas/BrowserStateChangeDownloadFailed", "download_started": "#/components/schemas/BrowserStateChangeDownloadStarted", "tab_opened": "#/components/schemas/BrowserStateChangeTabOpened" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "description": "A tab this call's execution opened that remains open at its end \u2014\nthe creation delta of the `tabs` inventory, not an event log.\n\nCarries only the `tab_id`; the tab's `title` and `url` live on its\n`tabs` entry, which must include the same `tab_id`. A tab opened\nduring a failed call gets no deferred `tab_opened`; it simply appears\nin the next result's `tabs` inventory.", "properties": { "tab_id": { "description": "The `tab_id` of the opened tab, present in `tabs`.", "maxLength": 4096, "minLength": 1, "pattern": "^[^\\x00-\\x1f\\x7f-\\x9f\\u2028\\u2029]*$", "title": "Tab Id", "type": "string" }, "type": { "const": "tab_opened", "title": "Type", "type": "string" } }, "required": [ "tab_id", "type" ], "title": "BrowserStateChangeTabOpened", "type": "object" }, { "additionalProperties": false, "description": "A file download that started during this call.", "properties": { "download_id": { "description": "The caller-assigned identifier for this download, stable across the state changes reporting it.", "maxLength": 4096, "minLength": 1, "pattern": "^[^\\x00-\\x1f\\x7f-\\x9f\\u2028\\u2029]*$", "title": "Download Id", "type": "string" }, "type": { "const": "download_started", "title": "Type", "type": "string" }, "url": { "description": "The final post-redirect URL the download was served from.", "maxLength": 4096, "pattern": "^[^\\x00-\\x1f\\x7f-\\x9f\\u2028\\u2029]*$", "title": "Url", "type": "string" } }, "required": [ "download_id", "type", "url" ], "title": "BrowserStateChangeDownloadStarted", "type": "object" }, { "additionalProperties": false, "description": "A file download that finished during this call, reported with the\nsame `download_id` as its `download_started` \u2014 or without a prior\n`download_started`, when the download finished during the call that\nstarted it (at most one state change per `download_id` per result).", "properties": { "download_id": { "description": "The caller-assigned identifier for this download, stable across the state changes reporting it.", "maxLength": 4096, "minLength": 1, "pattern": "^[^\\x00-\\x1f\\x7f-\\x9f\\u2028\\u2029]*$", "title": "Download Id", "type": "string" }, "path": { "anyOf": [ { "maxLength": 4096, "type": "string" }, { "type": "null" } ], "description": "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.", "pattern": "^[^\\x00-\\x1f\\x7f-\\x9f\\u2028\\u2029]*$", "title": "Path" }, "size_bytes": { "anyOf": [ { "minimum": 0, "type": "integer" }, { "type": "null" } ], "description": "The completed download's size.", "title": "Size Bytes" }, "type": { "const": "download_completed", "title": "Type", "type": "string" }, "url": { "description": "The final post-redirect URL the download was served from.", "maxLength": 4096, "pattern": "^[^\\x00-\\x1f\\x7f-\\x9f\\u2028\\u2029]*$", "title": "Url", "type": "string" } }, "required": [ "download_id", "type", "url" ], "title": "BrowserStateChangeDownloadCompleted", "type": "object" }, { "additionalProperties": false, "description": "A file download that failed \u2014 or was cancelled \u2014 during this call.", "properties": { "download_id": { "description": "The caller-assigned identifier for this download, stable across the state changes reporting it.", "maxLength": 4096, "minLength": 1, "pattern": "^[^\\x00-\\x1f\\x7f-\\x9f\\u2028\\u2029]*$", "title": "Download Id", "type": "string" }, "error": { "anyOf": [ { "maxLength": 4096, "type": "string" }, { "type": "null" } ], "description": "The failure or cancellation detail, when known.", "pattern": "^[^\\x00-\\x1f\\x7f-\\x9f\\u2028\\u2029]*$", "title": "Error" }, "type": { "const": "download_failed", "title": "Type", "type": "string" }, "url": { "description": "The final post-redirect URL the download was served from.", "maxLength": 4096, "pattern": "^[^\\x00-\\x1f\\x7f-\\x9f\\u2028\\u2029]*$", "title": "Url", "type": "string" } }, "required": [ "download_id", "type", "url" ], "title": "BrowserStateChangeDownloadFailed", "type": "object" } ] }, "maxItems": 200, "minItems": 1, "type": "array" }, { "type": "null" } ], "description": "Tabs opened and download state changes during this call. \"Nothing to report\" is expressed by omitting the field, never by an empty list.", "title": "State Changes" }, "tabs": { "description": "All tabs open in the browser after this call \u2014 the full inventory, not a delta. May be empty. Whenever non-empty, exactly one entry carries `active: true`.", "items": { "additionalProperties": false, "description": "One open browser tab reported in a `browser_state` block's `tabs`\ninventory.\n\n`tab_id` is the caller-assigned identifier for the tab; `title` and\n`url` describe the page the tab is currently showing and may be empty\nstrings (a blank tab legitimately has both empty). `active` marks the\ntab that is active after this call; whenever `tabs` is non-empty,\nexactly one entry is marked.", "properties": { "active": { "description": "Whether this tab is the active tab after this call. Whenever `tabs` is non-empty, exactly one entry is marked `active: true`.", "title": "Active", "type": "boolean" }, "tab_id": { "description": "The caller-assigned identifier for this tab, unique within the inventory.", "maxLength": 4096, "minLength": 1, "pattern": "^[^\\x00-\\x1f\\x7f-\\x9f\\u2028\\u2029]*$", "title": "Tab Id", "type": "string" }, "title": { "description": "The title of the page the tab is showing. May be empty.", "maxLength": 4096, "pattern": "^[^\\x00-\\x1f\\x7f-\\x9f\\u2028\\u2029]*$", "title": "Title", "type": "string" }, "url": { "description": "The URL of the page the tab is showing. May be empty.", "maxLength": 4096, "pattern": "^[^\\x00-\\x1f\\x7f-\\x9f\\u2028\\u2029]*$", "title": "Url", "type": "string" } }, "required": [ "tab_id", "title", "url" ], "title": "BrowserStateTabEntry", "type": "object" }, "maxItems": 100, "title": "Tabs", "type": "array" }, "type": { "const": "browser_state", "title": "Type", "type": "string" } }, "required": [ "tabs", "type" ], "title": "RequestBrowserStateBlock", "type": "object" } ], "title": "Block" }, "type": "array", "x-stainless-naming": { "python": { "type_name": "Content" }, "ruby": { "type_name": "Content" }, "php": { "type_name": "Content" } } } ], "title": "Content" }, "is_error": { "title": "Is Error", "type": "boolean" }, "tool_use_id": { "pattern": "^[a-zA-Z0-9_-]+$", "title": "Tool Use Id", "type": "string" }, "toolset_name": { "anyOf": [ { "maxLength": 64, "minLength": 1, "pattern": "^[a-zA-Z0-9_-]+$", "type": "string" }, { "type": "null" } ], "description": "For a toolset member tool_result, the toolset family of the paired tool_use.", "title": "Toolset Name" }, "type": { "const": "tool_result", "title": "Type", "type": "string" } }, "required": [ "tool_use_id", "type" ], "title": "RequestToolResultBlock", "type": "object" }, { "additionalProperties": false, "properties": { "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "caller": { "discriminator": { "mapping": { "code_execution_20250825": "#/components/schemas/ServerToolCaller", "code_execution_20260120": "#/components/schemas/ServerToolCaller_20260120", "direct": "#/components/schemas/DirectCaller" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "description": "Tool invocation directly from the model.", "properties": { "type": { "const": "direct", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "DirectCaller", "type": "object" }, { "additionalProperties": false, "description": "Tool invocation generated by a server-side tool.", "properties": { "tool_id": { "pattern": "^srvtoolu_[a-zA-Z0-9_]+$", "title": "Tool Id", "type": "string" }, "type": { "const": "code_execution_20250825", "title": "Type", "type": "string" } }, "required": [ "tool_id", "type" ], "title": "ServerToolCaller", "type": "object" }, { "additionalProperties": false, "properties": { "tool_id": { "pattern": "^srvtoolu_[a-zA-Z0-9_]+$", "title": "Tool Id", "type": "string" }, "type": { "const": "code_execution_20260120", "title": "Type", "type": "string" } }, "required": [ "tool_id", "type" ], "title": "ServerToolCaller_20260120", "type": "object" } ], "title": "Caller" }, "id": { "pattern": "^srvtoolu_[a-zA-Z0-9_]+$", "title": "Id", "type": "string" }, "input": { "additionalProperties": true, "title": "Input", "type": "object" }, "name": { "enum": [ "web_search", "web_fetch", "code_execution", "bash_code_execution", "text_editor_code_execution", "tool_search_tool_regex", "tool_search_tool_bm25" ], "title": "Name", "type": "string" }, "type": { "const": "server_tool_use", "title": "Type", "type": "string" } }, "required": [ "id", "input", "name", "type" ], "title": "RequestServerToolUseBlock", "type": "object" }, { "additionalProperties": false, "properties": { "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "caller": { "discriminator": { "mapping": { "code_execution_20250825": "#/components/schemas/ServerToolCaller", "code_execution_20260120": "#/components/schemas/ServerToolCaller_20260120", "direct": "#/components/schemas/DirectCaller" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "description": "Tool invocation directly from the model.", "properties": { "type": { "const": "direct", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "DirectCaller", "type": "object" }, { "additionalProperties": false, "description": "Tool invocation generated by a server-side tool.", "properties": { "tool_id": { "pattern": "^srvtoolu_[a-zA-Z0-9_]+$", "title": "Tool Id", "type": "string" }, "type": { "const": "code_execution_20250825", "title": "Type", "type": "string" } }, "required": [ "tool_id", "type" ], "title": "ServerToolCaller", "type": "object" }, { "additionalProperties": false, "properties": { "tool_id": { "pattern": "^srvtoolu_[a-zA-Z0-9_]+$", "title": "Tool Id", "type": "string" }, "type": { "const": "code_execution_20260120", "title": "Type", "type": "string" } }, "required": [ "tool_id", "type" ], "title": "ServerToolCaller_20260120", "type": "object" } ], "title": "Caller" }, "content": { "anyOf": [ { "items": { "additionalProperties": false, "properties": { "encrypted_content": { "title": "Encrypted Content", "type": "string" }, "page_age": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Page Age" }, "title": { "title": "Title", "type": "string" }, "type": { "const": "web_search_result", "title": "Type", "type": "string" }, "url": { "title": "Url", "type": "string" } }, "required": [ "encrypted_content", "title", "type", "url" ], "title": "RequestWebSearchResultBlock", "type": "object" }, "type": "array", "title": "web_search_tool_result_block_item" }, { "additionalProperties": false, "properties": { "error_code": { "enum": [ "invalid_tool_input", "unavailable", "max_uses_exceeded", "too_many_requests", "query_too_long", "request_too_large" ], "title": "WebSearchToolResultErrorCode", "type": "string" }, "type": { "const": "web_search_tool_result_error", "title": "Type", "type": "string" } }, "required": [ "error_code", "type" ], "title": "RequestWebSearchToolResultError", "type": "object" } ], "title": "Content" }, "tool_use_id": { "pattern": "^srvtoolu_[a-zA-Z0-9_]+$", "title": "Tool Use Id", "type": "string" }, "type": { "const": "web_search_tool_result", "title": "Type", "type": "string" } }, "required": [ "content", "tool_use_id", "type" ], "title": "RequestWebSearchToolResultBlock", "type": "object" }, { "additionalProperties": false, "properties": { "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "caller": { "discriminator": { "mapping": { "code_execution_20250825": "#/components/schemas/ServerToolCaller", "code_execution_20260120": "#/components/schemas/ServerToolCaller_20260120", "direct": "#/components/schemas/DirectCaller" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "description": "Tool invocation directly from the model.", "properties": { "type": { "const": "direct", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "DirectCaller", "type": "object" }, { "additionalProperties": false, "description": "Tool invocation generated by a server-side tool.", "properties": { "tool_id": { "pattern": "^srvtoolu_[a-zA-Z0-9_]+$", "title": "Tool Id", "type": "string" }, "type": { "const": "code_execution_20250825", "title": "Type", "type": "string" } }, "required": [ "tool_id", "type" ], "title": "ServerToolCaller", "type": "object" }, { "additionalProperties": false, "properties": { "tool_id": { "pattern": "^srvtoolu_[a-zA-Z0-9_]+$", "title": "Tool Id", "type": "string" }, "type": { "const": "code_execution_20260120", "title": "Type", "type": "string" } }, "required": [ "tool_id", "type" ], "title": "ServerToolCaller_20260120", "type": "object" } ], "title": "Caller" }, "content": { "anyOf": [ { "additionalProperties": false, "properties": { "error_code": { "enum": [ "invalid_tool_input", "url_too_long", "url_not_allowed", "url_not_in_prior_context", "url_not_accessible", "unsupported_content_type", "too_many_requests", "max_uses_exceeded", "unavailable", "content_too_large" ], "title": "WebFetchToolResultErrorCode", "type": "string" }, "type": { "const": "web_fetch_tool_result_error", "title": "Type", "type": "string" } }, "required": [ "error_code", "type" ], "title": "RequestWebFetchToolResultError", "type": "object" }, { "additionalProperties": false, "properties": { "content": { "additionalProperties": false, "properties": { "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "citations": { "anyOf": [ { "additionalProperties": false, "properties": { "enabled": { "title": "Enabled", "type": "boolean" } }, "title": "RequestCitationsConfig", "type": "object" }, { "type": "null" } ] }, "context": { "anyOf": [ { "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Context" }, "source": { "discriminator": { "mapping": { "base64": "#/components/schemas/Base64PDFSource", "content": "#/components/schemas/ContentBlockSource", "file": "#/components/schemas/FileDocumentSource", "text": "#/components/schemas/PlainTextSource", "url": "#/components/schemas/URLPDFSource" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "data": { "format": "byte", "title": "Data", "type": "string" }, "media_type": { "const": "application/pdf", "title": "Media Type", "type": "string" }, "type": { "const": "base64", "title": "Type", "type": "string" } }, "required": [ "data", "media_type", "type" ], "title": "Base64PDFSource", "type": "object" }, { "additionalProperties": false, "properties": { "data": { "title": "Data", "type": "string" }, "media_type": { "const": "text/plain", "title": "Media Type", "type": "string" }, "type": { "const": "text", "title": "Type", "type": "string" } }, "required": [ "data", "media_type", "type" ], "title": "PlainTextSource", "type": "object" }, { "additionalProperties": false, "properties": { "content": { "anyOf": [ { "type": "string" }, { "items": { "discriminator": { "mapping": { "image": "#/components/schemas/RequestImageBlock", "text": "#/components/schemas/RequestTextBlock" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "citations": { "anyOf": [ { "items": { "discriminator": { "mapping": { "char_location": "#/components/schemas/RequestCharLocationCitation", "content_block_location": "#/components/schemas/RequestContentBlockLocationCitation", "page_location": "#/components/schemas/RequestPageLocationCitation", "search_result_location": "#/components/schemas/RequestSearchResultLocationCitation", "web_search_result_location": "#/components/schemas/RequestWebSearchResultLocationCitation" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "cited_text": { "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "document_index": { "minimum": 0, "title": "Document Index", "type": "integer" }, "document_title": { "anyOf": [ { "maxLength": 500, "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Document Title" }, "end_char_index": { "title": "End Char Index", "type": "integer" }, "start_char_index": { "minimum": 0, "title": "Start Char Index", "type": "integer" }, "type": { "const": "char_location", "title": "Type", "type": "string" } }, "required": [ "cited_text", "document_index", "document_title", "end_char_index", "start_char_index", "type" ], "title": "RequestCharLocationCitation", "type": "object" }, { "additionalProperties": false, "properties": { "cited_text": { "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "document_index": { "minimum": 0, "title": "Document Index", "type": "integer" }, "document_title": { "anyOf": [ { "maxLength": 500, "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Document Title" }, "end_page_number": { "title": "End Page Number", "type": "integer" }, "start_page_number": { "minimum": 1, "title": "Start Page Number", "type": "integer" }, "type": { "const": "page_location", "title": "Type", "type": "string" } }, "required": [ "cited_text", "document_index", "document_title", "end_page_number", "start_page_number", "type" ], "title": "RequestPageLocationCitation", "type": "object" }, { "additionalProperties": false, "properties": { "cited_text": { "description": "The full text of the cited block range, concatenated.\n\nAlways 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.", "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "document_index": { "minimum": 0, "title": "Document Index", "type": "integer" }, "document_title": { "anyOf": [ { "maxLength": 500, "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Document Title" }, "end_block_index": { "description": "Exclusive 0-based end index of the cited block range in the source's `content` array.\n\nAlways greater than `start_block_index`; a single-block citation has `end_block_index = start_block_index + 1`.", "title": "End Block Index", "type": "integer" }, "start_block_index": { "description": "0-based index of the first cited block in the source's `content` array.", "minimum": 0, "title": "Start Block Index", "type": "integer" }, "type": { "const": "content_block_location", "title": "Type", "type": "string" } }, "required": [ "cited_text", "document_index", "document_title", "end_block_index", "start_block_index", "type" ], "title": "RequestContentBlockLocationCitation", "type": "object" }, { "additionalProperties": false, "properties": { "cited_text": { "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "encrypted_index": { "title": "Encrypted Index", "type": "string" }, "title": { "anyOf": [ { "maxLength": 512, "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Title" }, "type": { "const": "web_search_result_location", "title": "Type", "type": "string" }, "url": { "minLength": 1, "title": "Url", "type": "string" } }, "required": [ "cited_text", "encrypted_index", "title", "type", "url" ], "title": "RequestWebSearchResultLocationCitation", "type": "object" }, { "additionalProperties": false, "properties": { "cited_text": { "description": "The full text of the cited block range, concatenated.\n\nAlways 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.", "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "end_block_index": { "description": "Exclusive 0-based end index of the cited block range in the source's `content` array.\n\nAlways greater than `start_block_index`; a single-block citation has `end_block_index = start_block_index + 1`.", "title": "End Block Index", "type": "integer" }, "search_result_index": { "description": "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.\n\nCounted separately from `document_index`; server-side web search results are not included in this count.", "minimum": 0, "title": "Search Result Index", "type": "integer" }, "source": { "title": "Source", "type": "string" }, "start_block_index": { "description": "0-based index of the first cited block in the source's `content` array.", "minimum": 0, "title": "Start Block Index", "type": "integer" }, "title": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Title" }, "type": { "const": "search_result_location", "title": "Type", "type": "string" } }, "required": [ "cited_text", "end_block_index", "search_result_index", "source", "start_block_index", "title", "type" ], "title": "RequestSearchResultLocationCitation", "type": "object" } ] }, "type": "array" }, { "type": "null" } ], "title": "Citations" }, "text": { "minLength": 1, "title": "Text", "type": "string" }, "type": { "const": "text", "title": "Type", "type": "string" } }, "required": [ "text", "type" ], "title": "RequestTextBlock", "type": "object" }, { "additionalProperties": false, "properties": { "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "source": { "discriminator": { "mapping": { "base64": "#/components/schemas/Base64ImageSource", "file": "#/components/schemas/FileImageSource", "url": "#/components/schemas/URLImageSource" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "data": { "format": "byte", "title": "Data", "type": "string" }, "media_type": { "enum": [ "image/jpeg", "image/png", "image/gif", "image/webp" ], "title": "Media Type", "type": "string" }, "type": { "const": "base64", "title": "Type", "type": "string" } }, "required": [ "data", "media_type", "type" ], "title": "Base64ImageSource", "type": "object" }, { "additionalProperties": false, "properties": { "type": { "const": "url", "title": "Type", "type": "string" }, "url": { "title": "Url", "type": "string" } }, "required": [ "type", "url" ], "title": "URLImageSource", "type": "object" }, { "additionalProperties": false, "properties": { "file_id": { "title": "File Id", "type": "string" }, "type": { "const": "file", "title": "Type", "type": "string" } }, "required": [ "file_id", "type" ], "title": "FileImageSource", "type": "object" } ], "title": "Source" }, "transformations": { "anyOf": [ { "additionalProperties": false, "description": "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.", "properties": { "oversized_image": { "description": "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 \u2014 your image is never silently scaled down.", "enum": [ "downsize", "error" ], "title": "Oversized Image", "type": "string" } }, "title": "RequestImageTransformations", "type": "object" }, { "type": "null" } ], "description": "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." }, "type": { "const": "image", "title": "Type", "type": "string" } }, "required": [ "source", "type" ], "title": "RequestImageBlock", "type": "object" } ], "x-stainless-naming": { "go": { "type_name": "ContentBlockSourceContentItem" } }, "title": "content_block_source_content_item" }, "type": "array", "title": "content_block_source_content" } ], "title": "Content" }, "type": { "const": "content", "title": "Type", "type": "string" } }, "required": [ "content", "type" ], "title": "ContentBlockSource", "type": "object" }, { "additionalProperties": false, "properties": { "type": { "const": "url", "title": "Type", "type": "string" }, "url": { "title": "Url", "type": "string" } }, "required": [ "type", "url" ], "title": "URLPDFSource", "type": "object" }, { "additionalProperties": false, "properties": { "file_id": { "title": "File Id", "type": "string" }, "type": { "const": "file", "title": "Type", "type": "string" } }, "required": [ "file_id", "type" ], "title": "FileDocumentSource", "type": "object" } ], "title": "Source" }, "title": { "anyOf": [ { "maxLength": 500, "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Title" }, "type": { "const": "document", "title": "Type", "type": "string" } }, "required": [ "source", "type" ], "title": "RequestDocumentBlock", "type": "object" }, "retrieved_at": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "ISO 8601 timestamp when the content was retrieved", "title": "Retrieved At" }, "type": { "const": "web_fetch_result", "title": "Type", "type": "string" }, "url": { "description": "Fetched content URL", "title": "Url", "type": "string" } }, "required": [ "content", "type", "url" ], "title": "RequestWebFetchResultBlock", "type": "object" } ], "title": "Content" }, "tool_use_id": { "pattern": "^srvtoolu_[a-zA-Z0-9_]+$", "title": "Tool Use Id", "type": "string" }, "type": { "const": "web_fetch_tool_result", "title": "Type", "type": "string" } }, "required": [ "content", "tool_use_id", "type" ], "title": "RequestWebFetchToolResultBlock", "type": "object" }, { "additionalProperties": false, "properties": { "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "content": { "anyOf": [ { "additionalProperties": false, "properties": { "error_code": { "enum": [ "invalid_tool_input", "unavailable", "too_many_requests", "execution_time_exceeded" ], "title": "CodeExecutionToolResultErrorCode", "type": "string" }, "type": { "const": "code_execution_tool_result_error", "title": "Type", "type": "string" } }, "required": [ "error_code", "type" ], "title": "RequestCodeExecutionToolResultError", "type": "object" }, { "additionalProperties": false, "properties": { "content": { "items": { "additionalProperties": false, "properties": { "file_id": { "title": "File Id", "type": "string" }, "type": { "const": "code_execution_output", "title": "Type", "type": "string" } }, "required": [ "file_id", "type" ], "title": "RequestCodeExecutionOutputBlock", "type": "object" }, "title": "Content", "type": "array" }, "return_code": { "title": "Return Code", "type": "integer" }, "stderr": { "title": "Stderr", "type": "string" }, "stdout": { "title": "Stdout", "type": "string" }, "type": { "const": "code_execution_result", "title": "Type", "type": "string" } }, "required": [ "content", "return_code", "stderr", "stdout", "type" ], "title": "RequestCodeExecutionResultBlock", "type": "object" }, { "additionalProperties": false, "description": "Code execution result with encrypted stdout for PFC + web_search results.", "properties": { "content": { "items": { "additionalProperties": false, "properties": { "file_id": { "title": "File Id", "type": "string" }, "type": { "const": "code_execution_output", "title": "Type", "type": "string" } }, "required": [ "file_id", "type" ], "title": "RequestCodeExecutionOutputBlock", "type": "object" }, "title": "Content", "type": "array" }, "encrypted_stdout": { "title": "Encrypted Stdout", "type": "string" }, "return_code": { "title": "Return Code", "type": "integer" }, "stderr": { "title": "Stderr", "type": "string" }, "type": { "const": "encrypted_code_execution_result", "title": "Type", "type": "string" } }, "required": [ "content", "encrypted_stdout", "return_code", "stderr", "type" ], "title": "RequestEncryptedCodeExecutionResultBlock", "type": "object" } ], "title": "Content" }, "tool_use_id": { "pattern": "^srvtoolu_[a-zA-Z0-9_]+$", "title": "Tool Use Id", "type": "string" }, "type": { "const": "code_execution_tool_result", "title": "Type", "type": "string" } }, "required": [ "content", "tool_use_id", "type" ], "title": "RequestCodeExecutionToolResultBlock", "type": "object" }, { "additionalProperties": false, "properties": { "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "content": { "anyOf": [ { "additionalProperties": false, "properties": { "error_code": { "enum": [ "invalid_tool_input", "unavailable", "too_many_requests", "execution_time_exceeded", "output_file_too_large" ], "title": "BashCodeExecutionToolResultErrorCode", "type": "string" }, "type": { "const": "bash_code_execution_tool_result_error", "title": "Type", "type": "string" } }, "required": [ "error_code", "type" ], "title": "RequestBashCodeExecutionToolResultError", "type": "object" }, { "additionalProperties": false, "properties": { "content": { "items": { "additionalProperties": false, "properties": { "file_id": { "title": "File Id", "type": "string" }, "type": { "const": "bash_code_execution_output", "title": "Type", "type": "string" } }, "required": [ "file_id", "type" ], "title": "RequestBashCodeExecutionOutputBlock", "type": "object" }, "title": "Content", "type": "array" }, "return_code": { "title": "Return Code", "type": "integer" }, "stderr": { "title": "Stderr", "type": "string" }, "stdout": { "title": "Stdout", "type": "string" }, "type": { "const": "bash_code_execution_result", "title": "Type", "type": "string" } }, "required": [ "content", "return_code", "stderr", "stdout", "type" ], "title": "RequestBashCodeExecutionResultBlock", "type": "object" } ], "title": "Content" }, "tool_use_id": { "pattern": "^srvtoolu_[a-zA-Z0-9_]+$", "title": "Tool Use Id", "type": "string" }, "type": { "const": "bash_code_execution_tool_result", "title": "Type", "type": "string" } }, "required": [ "content", "tool_use_id", "type" ], "title": "RequestBashCodeExecutionToolResultBlock", "type": "object" }, { "additionalProperties": false, "properties": { "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "content": { "anyOf": [ { "additionalProperties": false, "properties": { "error_code": { "enum": [ "invalid_tool_input", "unavailable", "too_many_requests", "execution_time_exceeded", "file_not_found" ], "title": "TextEditorCodeExecutionToolResultErrorCode", "type": "string" }, "error_message": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Error Message" }, "type": { "const": "text_editor_code_execution_tool_result_error", "title": "Type", "type": "string" } }, "required": [ "error_code", "type" ], "title": "RequestTextEditorCodeExecutionToolResultError", "type": "object" }, { "additionalProperties": false, "properties": { "content": { "title": "Content", "type": "string" }, "file_type": { "enum": [ "text", "image", "pdf" ], "title": "File Type", "type": "string" }, "num_lines": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Num Lines" }, "start_line": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Start Line" }, "total_lines": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Total Lines" }, "type": { "const": "text_editor_code_execution_view_result", "title": "Type", "type": "string" } }, "required": [ "content", "file_type", "type" ], "title": "RequestTextEditorCodeExecutionViewResultBlock", "type": "object" }, { "additionalProperties": false, "properties": { "is_file_update": { "title": "Is File Update", "type": "boolean" }, "type": { "const": "text_editor_code_execution_create_result", "title": "Type", "type": "string" } }, "required": [ "is_file_update", "type" ], "title": "RequestTextEditorCodeExecutionCreateResultBlock", "type": "object" }, { "additionalProperties": false, "properties": { "lines": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "title": "Lines" }, "new_lines": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "New Lines" }, "new_start": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "New Start" }, "old_lines": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Old Lines" }, "old_start": { "anyOf": [ { "type": "integer" }, { "type": "null" } ], "title": "Old Start" }, "type": { "const": "text_editor_code_execution_str_replace_result", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "RequestTextEditorCodeExecutionStrReplaceResultBlock", "type": "object" } ], "title": "Content" }, "tool_use_id": { "pattern": "^srvtoolu_[a-zA-Z0-9_]+$", "title": "Tool Use Id", "type": "string" }, "type": { "const": "text_editor_code_execution_tool_result", "title": "Type", "type": "string" } }, "required": [ "content", "tool_use_id", "type" ], "title": "RequestTextEditorCodeExecutionToolResultBlock", "type": "object" }, { "additionalProperties": false, "properties": { "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "content": { "anyOf": [ { "additionalProperties": false, "properties": { "error_code": { "enum": [ "invalid_tool_input", "unavailable", "too_many_requests", "execution_time_exceeded" ], "title": "ToolSearchToolResultErrorCode", "type": "string" }, "error_message": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Error Message" }, "type": { "const": "tool_search_tool_result_error", "title": "Type", "type": "string" } }, "required": [ "error_code", "type" ], "title": "RequestToolSearchToolResultError", "type": "object" }, { "additionalProperties": false, "properties": { "tool_references": { "items": { "additionalProperties": false, "description": "Tool reference block that can be included in tool_result content.", "properties": { "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "tool_name": { "maxLength": 256, "minLength": 1, "pattern": "^[a-zA-Z0-9_-]{1,256}$", "title": "Tool Name", "type": "string" }, "type": { "const": "tool_reference", "title": "Type", "type": "string" } }, "required": [ "tool_name", "type" ], "title": "RequestToolReferenceBlock", "type": "object" }, "title": "Tool References", "type": "array" }, "type": { "const": "tool_search_tool_search_result", "title": "Type", "type": "string" } }, "required": [ "tool_references", "type" ], "title": "RequestToolSearchToolSearchResultBlock", "type": "object" } ], "title": "Content" }, "tool_use_id": { "pattern": "^srvtoolu_[a-zA-Z0-9_]+$", "title": "Tool Use Id", "type": "string" }, "type": { "const": "tool_search_tool_result", "title": "Type", "type": "string" } }, "required": [ "content", "tool_use_id", "type" ], "title": "RequestToolSearchToolResultBlock", "type": "object" }, { "additionalProperties": false, "description": "A content block that represents a file to be uploaded to the container\nFiles uploaded via this block will be available in the container's input directory.", "properties": { "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "file_id": { "title": "File Id", "type": "string" }, "type": { "const": "container_upload", "title": "Type", "type": "string" } }, "required": [ "file_id", "type" ], "title": "RequestContainerUploadBlock", "type": "object" } ], "x-stainless-python-extend-union": [ "ContentBlock" ], "x-stainless-python-extend-union-imports": [ "from .content_block import ContentBlock" ], "x-stainless-go-variant-constructor": { "naming": "new_{variant}_block" } }, "type": "array", "example": [ { "type": "text", "text": "What is a quaternion?" } ] } ], "title": "Content" }, "role": { "enum": [ "user", "assistant", "system" ], "title": "Role", "type": "string" } }, "required": [ "content", "role" ], "title": "InputMessage", "type": "object", "discriminator": { "propertyName": "role" } }, "title": "Messages", "type": "array" }, "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Top-level cache control automatically applies a cache_control marker to the last cacheable block in the request.", "title": "Cache Control" }, "container": { "anyOf": [ { "additionalProperties": false, "description": "Container parameters with skills to be loaded.", "properties": { "id": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Container id", "title": "Id" }, "skills": { "anyOf": [ { "items": { "additionalProperties": false, "description": "Specification for a skill to be loaded in a container (request model).", "properties": { "skill_id": { "description": "Skill ID", "examples": [ "pdf" ], "maxLength": 64, "minLength": 1, "title": "Skill Id", "type": "string" }, "type": { "description": "Type of skill - either 'anthropic' (built-in) or 'custom' (user-defined)", "enum": [ "anthropic", "custom" ], "examples": [ "anthropic" ], "title": "Type", "type": "string", "x-stainless-naming": { "csharp": { "type_name": "SkillParamsType" } } }, "version": { "description": "Skill version or 'latest' for most recent version", "examples": [ "latest" ], "maxLength": 64, "minLength": 1, "title": "Version", "type": "string" } }, "required": [ "skill_id", "type" ], "title": "SkillParams", "type": "object" }, "maxItems": 20, "type": "array" }, { "type": "null" } ], "description": "List of skills to load in the container", "title": "Skills" } }, "title": "ContainerParams", "type": "object" }, { "type": "string" }, { "type": "null" } ], "description": "Container identifier for reuse across requests.", "title": "Container" }, "inference_geo": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "description": "Specifies the geographic region for inference processing. If not specified, the workspace's `default_inference_geo` is used.", "title": "Inference Geo" }, "max_tokens": { "description": "The maximum number of tokens to generate before stopping.\n\nNote that our models may stop _before_ reaching this maximum. This parameter only specifies the absolute maximum number of tokens to generate.\n\nSet to `0` to populate the [prompt cache](https://platform.claude.com/docs/en/build-with-claude/prompt-caching#pre-warming-the-cache) without generating a response.\n\nDifferent models have different maximum values for this parameter. See [models](https://platform.claude.com/docs/en/about-claude/models/overview) for details.", "examples": [ 1024 ], "minimum": 0, "title": "Max Tokens", "type": "integer" }, "metadata": { "additionalProperties": false, "properties": { "user_id": { "anyOf": [ { "maxLength": 512, "type": "string" }, { "type": "null" } ], "description": "An external identifier for the user who is associated with the request.\n\nThis 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.", "examples": [ "13803d75-b4b5-4c3e-b2a2-6f21399b021b" ], "title": "User Id" } }, "title": "Metadata", "type": "object" }, "output_config": { "additionalProperties": false, "properties": { "effort": { "anyOf": [ { "description": "All possible effort levels.", "enum": [ "low", "medium", "high", "xhigh", "max" ], "title": "EffortLevel", "type": "string" }, { "type": "null" } ], "description": "How much effort the model should put into its response. Higher effort levels may result in more thorough analysis but take longer.\n\nValid values are `low`, `medium`, `high`, `xhigh`, or `max`.", "title": "Effort" }, "format": { "anyOf": [ { "additionalProperties": false, "properties": { "schema": { "additionalProperties": true, "description": "The JSON schema of the format", "title": "Schema", "type": "object" }, "type": { "const": "json_schema", "title": "Type", "type": "string" } }, "required": [ "schema", "type" ], "title": "JsonOutputFormat", "type": "object" }, { "type": "null" } ], "description": "A schema to specify Claude's output format in responses. See [structured outputs](https://platform.claude.com/docs/en/build-with-claude/structured-outputs)" } }, "title": "OutputConfig", "type": "object" }, "service_tier": { "description": "Determines whether to use priority capacity (if available) or standard capacity for this request.\n\nAnthropic offers different levels of service for your API requests. See [service-tiers](https://platform.claude.com/docs/en/api/service-tiers) for details.", "enum": [ "auto", "standard_only" ], "title": "Service Tier", "type": "string" }, "stop_sequences": { "description": "Custom text sequences that will cause the model to stop generating.\n\nOur models will normally stop when they have naturally completed their turn, which will result in a response `stop_reason` of `\"end_turn\"`.\n\nIf you want the model to stop generating when it encounters custom strings of text, you can use the `stop_sequences` parameter. If the model encounters one of the custom sequences, the response `stop_reason` value will be `\"stop_sequence\"` and the response `stop_sequence` value will contain the matched stop sequence.", "items": { "type": "string" }, "title": "Stop Sequences", "type": "array" }, "stream": { "description": "Whether to incrementally stream the response using server-sent events.\n\nSee [streaming](https://platform.claude.com/docs/en/build-with-claude/streaming) for details.", "title": "Stream", "type": "boolean", "example": false }, "system": { "anyOf": [ { "type": "string", "x-stainless-skip": [ "go" ] }, { "items": { "additionalProperties": false, "properties": { "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "citations": { "anyOf": [ { "items": { "discriminator": { "mapping": { "char_location": "#/components/schemas/RequestCharLocationCitation", "content_block_location": "#/components/schemas/RequestContentBlockLocationCitation", "page_location": "#/components/schemas/RequestPageLocationCitation", "search_result_location": "#/components/schemas/RequestSearchResultLocationCitation", "web_search_result_location": "#/components/schemas/RequestWebSearchResultLocationCitation" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "cited_text": { "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "document_index": { "minimum": 0, "title": "Document Index", "type": "integer" }, "document_title": { "anyOf": [ { "maxLength": 500, "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Document Title" }, "end_char_index": { "title": "End Char Index", "type": "integer" }, "start_char_index": { "minimum": 0, "title": "Start Char Index", "type": "integer" }, "type": { "const": "char_location", "title": "Type", "type": "string" } }, "required": [ "cited_text", "document_index", "document_title", "end_char_index", "start_char_index", "type" ], "title": "RequestCharLocationCitation", "type": "object" }, { "additionalProperties": false, "properties": { "cited_text": { "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "document_index": { "minimum": 0, "title": "Document Index", "type": "integer" }, "document_title": { "anyOf": [ { "maxLength": 500, "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Document Title" }, "end_page_number": { "title": "End Page Number", "type": "integer" }, "start_page_number": { "minimum": 1, "title": "Start Page Number", "type": "integer" }, "type": { "const": "page_location", "title": "Type", "type": "string" } }, "required": [ "cited_text", "document_index", "document_title", "end_page_number", "start_page_number", "type" ], "title": "RequestPageLocationCitation", "type": "object" }, { "additionalProperties": false, "properties": { "cited_text": { "description": "The full text of the cited block range, concatenated.\n\nAlways 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.", "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "document_index": { "minimum": 0, "title": "Document Index", "type": "integer" }, "document_title": { "anyOf": [ { "maxLength": 500, "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Document Title" }, "end_block_index": { "description": "Exclusive 0-based end index of the cited block range in the source's `content` array.\n\nAlways greater than `start_block_index`; a single-block citation has `end_block_index = start_block_index + 1`.", "title": "End Block Index", "type": "integer" }, "start_block_index": { "description": "0-based index of the first cited block in the source's `content` array.", "minimum": 0, "title": "Start Block Index", "type": "integer" }, "type": { "const": "content_block_location", "title": "Type", "type": "string" } }, "required": [ "cited_text", "document_index", "document_title", "end_block_index", "start_block_index", "type" ], "title": "RequestContentBlockLocationCitation", "type": "object" }, { "additionalProperties": false, "properties": { "cited_text": { "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "encrypted_index": { "title": "Encrypted Index", "type": "string" }, "title": { "anyOf": [ { "maxLength": 512, "minLength": 1, "type": "string" }, { "type": "null" } ], "title": "Title" }, "type": { "const": "web_search_result_location", "title": "Type", "type": "string" }, "url": { "minLength": 1, "title": "Url", "type": "string" } }, "required": [ "cited_text", "encrypted_index", "title", "type", "url" ], "title": "RequestWebSearchResultLocationCitation", "type": "object" }, { "additionalProperties": false, "properties": { "cited_text": { "description": "The full text of the cited block range, concatenated.\n\nAlways 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.", "examples": [ "The grass is green. The sky is blue." ], "title": "Cited Text", "type": "string" }, "end_block_index": { "description": "Exclusive 0-based end index of the cited block range in the source's `content` array.\n\nAlways greater than `start_block_index`; a single-block citation has `end_block_index = start_block_index + 1`.", "title": "End Block Index", "type": "integer" }, "search_result_index": { "description": "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.\n\nCounted separately from `document_index`; server-side web search results are not included in this count.", "minimum": 0, "title": "Search Result Index", "type": "integer" }, "source": { "title": "Source", "type": "string" }, "start_block_index": { "description": "0-based index of the first cited block in the source's `content` array.", "minimum": 0, "title": "Start Block Index", "type": "integer" }, "title": { "anyOf": [ { "type": "string" }, { "type": "null" } ], "title": "Title" }, "type": { "const": "search_result_location", "title": "Type", "type": "string" } }, "required": [ "cited_text", "end_block_index", "search_result_index", "source", "start_block_index", "title", "type" ], "title": "RequestSearchResultLocationCitation", "type": "object" } ] }, "type": "array" }, { "type": "null" } ], "title": "Citations" }, "text": { "minLength": 1, "title": "Text", "type": "string" }, "type": { "const": "text", "title": "Type", "type": "string" } }, "required": [ "text", "type" ], "title": "RequestTextBlock", "type": "object" }, "type": "array" } ], "description": "System prompt.\n\nA system prompt is a way of providing context and instructions to Claude, such as specifying a particular goal or role. See our [guide to system prompts](https://platform.claude.com/docs/en/build-with-claude/prompt-engineering/claude-prompting-best-practices#give-claude-a-role).", "examples": [ [ { "text": "Today's date is 2024-06-01.", "type": "text" } ], "Today's date is 2023-01-01." ], "title": "System" }, "temperature": { "deprecated": true, "description": "Amount of randomness injected into the response.\n\nDefaults to `1.0`. Ranges from `0.0` to `1.0`. Use `temperature` closer to `0.0` for analytical / multiple choice, and closer to `1.0` for creative and generative tasks.\n\nNote that even with `temperature` of `0.0`, the results will not be fully deterministic.", "examples": [ 1 ], "maximum": 1, "minimum": 0, "title": "Temperature", "type": "number", "x-stainless-deprecation-message": "Deprecated. Models released after Claude Opus 4.6 do not support setting temperature. A value of 1.0 of will be accepted for backwards compatibility, all other values will be rejected with a 400 error.", "x-stainless-skip": [ "python" ] }, "thinking": { "description": "Configuration for enabling Claude's extended thinking.\n\nWhen 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.\n\nSee [extended thinking](https://platform.claude.com/docs/en/build-with-claude/extended-thinking) for details.", "discriminator": { "mapping": { "adaptive": "#/components/schemas/ThinkingConfigAdaptive", "disabled": "#/components/schemas/ThinkingConfigDisabled", "enabled": "#/components/schemas/ThinkingConfigEnabled" }, "propertyName": "type" }, "examples": [ { "type": "adaptive" } ], "oneOf": [ { "additionalProperties": false, "properties": { "budget_tokens": { "description": "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.\n\nMust be \u22651024 and less than `max_tokens`.\n\nSee [extended thinking](https://platform.claude.com/docs/en/build-with-claude/extended-thinking) for details.", "minimum": 1024, "title": "Budget Tokens", "type": "integer" }, "display": { "anyOf": [ { "enum": [ "summarized", "omitted" ], "title": "ThinkingDisplayMode", "type": "string" }, { "type": "null" } ], "description": "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`." }, "type": { "const": "enabled", "title": "Type", "type": "string" } }, "required": [ "budget_tokens", "type" ], "title": "ThinkingConfigEnabled", "type": "object" }, { "additionalProperties": false, "properties": { "type": { "const": "disabled", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "ThinkingConfigDisabled", "type": "object", "x-stainless-go-constant-constructor": true }, { "additionalProperties": false, "properties": { "display": { "anyOf": [ { "enum": [ "summarized", "omitted" ], "title": "ThinkingDisplayMode", "type": "string" }, { "type": "null" } ], "description": "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`." }, "type": { "const": "adaptive", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "ThinkingConfigAdaptive", "type": "object" } ], "title": "Thinking" }, "tool_choice": { "description": "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.", "discriminator": { "mapping": { "any": "#/components/schemas/ToolChoiceAny", "auto": "#/components/schemas/ToolChoiceAuto", "none": "#/components/schemas/ToolChoiceNone", "tool": "#/components/schemas/ToolChoiceTool" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "description": "The model will automatically decide whether to use tools.", "properties": { "disable_parallel_tool_use": { "description": "Whether to disable parallel tool use.\n\nDefaults to `false`. If set to `true`, the model will output at most one tool use.", "title": "Disable Parallel Tool Use", "type": "boolean" }, "type": { "const": "auto", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "ToolChoiceAuto", "type": "object" }, { "additionalProperties": false, "description": "The model will use any available tools.", "properties": { "disable_parallel_tool_use": { "description": "Whether to disable parallel tool use.\n\nDefaults to `false`. If set to `true`, the model will output exactly one tool use.", "title": "Disable Parallel Tool Use", "type": "boolean" }, "type": { "const": "any", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "ToolChoiceAny", "type": "object" }, { "additionalProperties": false, "description": "The model will use the specified tool with `tool_choice.name`.", "properties": { "disable_parallel_tool_use": { "description": "Whether to disable parallel tool use.\n\nDefaults to `false`. If set to `true`, the model will output exactly one tool use.", "title": "Disable Parallel Tool Use", "type": "boolean" }, "name": { "description": "The name of the tool to use.", "title": "Name", "type": "string" }, "type": { "const": "tool", "title": "Type", "type": "string" } }, "required": [ "name", "type" ], "title": "ToolChoiceTool", "type": "object" }, { "additionalProperties": false, "description": "The model will not be allowed to use tools.", "properties": { "type": { "const": "none", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "ToolChoiceNone", "type": "object", "x-stainless-go-constant-constructor": true } ], "title": "Tool Choice" }, "tools": { "description": "Definitions of tools that the model may use.\n\nIf you include `tools` in your API request, the model may return `tool_use` content blocks that represent the model's use of those tools. You can then run those tools using the tool input generated by the model and then optionally return results back to the model using `tool_result` content blocks.\n\nThere are two types of tools: **client tools** and **server tools**. The behavior described below applies to client tools. For [server tools](https://platform.claude.com/docs/en/agents-and-tools/tool-use/server-tools), see their individual documentation as each has its own behavior (e.g., the [web search tool](https://platform.claude.com/docs/en/agents-and-tools/tool-use/web-search-tool)).\n\nEach tool definition includes:\n\n* `name`: Name of the tool.\n* `description`: Optional, but strongly-recommended description of the tool.\n* `input_schema`: [JSON schema](https://json-schema.org/draft/2020-12) for the tool `input` shape that the model will produce in `tool_use` output content blocks.\n\nFor example, if you defined `tools` as:\n\n```json\n[\n {\n \"name\": \"get_stock_price\",\n \"description\": \"Get the current stock price for a given ticker symbol.\",\n \"input_schema\": {\n \"type\": \"object\",\n \"properties\": {\n \"ticker\": {\n \"type\": \"string\",\n \"description\": \"The stock ticker symbol, e.g. AAPL for Apple Inc.\"\n }\n },\n \"required\": [\"ticker\"]\n }\n }\n]\n```\n\nAnd then asked the model \"What's the S&P 500 at today?\", the model might produce `tool_use` content blocks in the response like this:\n\n```json\n[\n {\n \"type\": \"tool_use\",\n \"id\": \"toolu_01D7FLrfh4GYq7yT1ULFeyMV\",\n \"name\": \"get_stock_price\",\n \"input\": { \"ticker\": \"^GSPC\" }\n }\n]\n```\n\nYou might then run your `get_stock_price` tool with `{\"ticker\": \"^GSPC\"}` as an input, and return the following back to the model in a subsequent `user` message:\n\n```json\n[\n {\n \"type\": \"tool_result\",\n \"tool_use_id\": \"toolu_01D7FLrfh4GYq7yT1ULFeyMV\",\n \"content\": \"259.75 USD\"\n }\n]\n```\n\nTools can be used for workflows that include running client-side tools and functions, or more generally whenever you want the model to produce a particular JSON structure of output.\n\nSee our [guide](https://platform.claude.com/docs/en/agents-and-tools/tool-use/overview) for more details.", "examples": [ { "description": "Get the current weather in a given location", "input_schema": { "properties": { "location": { "description": "The city and state, e.g. San Francisco, CA", "type": "string" }, "unit": { "description": "Unit for the output - one of (celsius, fahrenheit)", "type": "string" } }, "required": [ "location" ], "type": "object" }, "name": "get_weather" } ], "items": { "oneOf": [ { "additionalProperties": false, "properties": { "type": { "anyOf": [ { "type": "null" }, { "const": "custom", "type": "string" } ], "title": "Type" }, "description": { "description": "Description of what this tool does.\n\nTool descriptions should be as detailed as possible. The more information that the model has about what the tool is and how to use it, the better it will perform. You can use natural language descriptions to reinforce important aspects of the tool input JSON schema.", "examples": [ "Get the current weather in a given location" ], "title": "Description", "type": "string" }, "name": { "description": "Name of the tool.\n\nThis is how the tool will be called by the model and in `tool_use` blocks.", "maxLength": 128, "minLength": 1, "pattern": "^[a-zA-Z0-9_-]{1,128}$", "title": "Name", "type": "string" }, "input_schema": { "additionalProperties": true, "properties": { "properties": { "anyOf": [ { "additionalProperties": true, "type": "object" }, { "type": "null" } ], "title": "Properties" }, "required": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "title": "Required" }, "type": { "const": "object", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "InputSchema", "type": "object" }, "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "strict": { "description": "When true, guarantees schema validation on tool names and inputs", "title": "Strict", "type": "boolean" }, "eager_input_streaming": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Enable eager input streaming for this tool. When true, tool input parameters will be streamed incrementally as they are generated, and types will be inferred on-the-fly rather than buffering the full JSON output. When false, streaming is disabled for this tool even if the fine-grained-tool-streaming beta is active. When null (default), uses the default behavior based on beta headers.", "title": "Eager Input Streaming" }, "allowed_callers": { "items": { "description": "Specifies who can invoke a tool.\n\nValues:\n direct: The model can call this tool directly.\n code_execution_20250825: The tool can be called from the code execution environment (v1).\n code_execution_20260120: The tool can be called from the code execution environment (v2 with persistence).\n code_execution_20260521: The tool can be called from the code execution environment (v2 with persistence).", "enum": [ "direct", "code_execution_20250825", "code_execution_20260120", "code_execution_20260521" ], "title": "AllowedCaller", "type": "string" }, "title": "Allowed Callers", "type": "array" }, "defer_loading": { "description": "If true, tool will not be included in initial system prompt. Only loaded when returned via tool_reference from tool search.", "title": "Defer Loading", "type": "boolean" }, "input_examples": { "items": { "additionalProperties": {}, "type": "object" }, "title": "Input Examples", "type": "array" } }, "required": [ "name", "input_schema" ], "title": "Tool", "type": "object" }, { "additionalProperties": false, "properties": { "allowed_callers": { "items": { "description": "Specifies who can invoke a tool.\n\nValues:\n direct: The model can call this tool directly.\n code_execution_20250825: The tool can be called from the code execution environment (v1).\n code_execution_20260120: The tool can be called from the code execution environment (v2 with persistence).\n code_execution_20260521: The tool can be called from the code execution environment (v2 with persistence).", "enum": [ "direct", "code_execution_20250825", "code_execution_20260120", "code_execution_20260521" ], "title": "AllowedCaller", "type": "string" }, "title": "Allowed Callers", "type": "array" }, "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "defer_loading": { "description": "If true, tool will not be included in initial system prompt. Only loaded when returned via tool_reference from tool search.", "title": "Defer Loading", "type": "boolean" }, "input_examples": { "items": { "additionalProperties": {}, "type": "object" }, "title": "Input Examples", "type": "array" }, "name": { "const": "bash", "description": "Name of the tool.\n\nThis is how the tool will be called by the model and in `tool_use` blocks.", "title": "Name", "type": "string" }, "strict": { "description": "When true, guarantees schema validation on tool names and inputs", "title": "Strict", "type": "boolean" }, "type": { "const": "bash_20250124", "title": "Type", "type": "string" } }, "required": [ "name", "type" ], "title": "BashTool_20250124", "type": "object" }, { "additionalProperties": false, "properties": { "allowed_callers": { "items": { "description": "Specifies who can invoke a tool.\n\nValues:\n direct: The model can call this tool directly.\n code_execution_20250825: The tool can be called from the code execution environment (v1).\n code_execution_20260120: The tool can be called from the code execution environment (v2 with persistence).\n code_execution_20260521: The tool can be called from the code execution environment (v2 with persistence).", "enum": [ "direct", "code_execution_20250825", "code_execution_20260120", "code_execution_20260521" ], "title": "AllowedCaller", "type": "string" }, "title": "Allowed Callers", "type": "array" }, "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "defer_loading": { "description": "If true, tool will not be included in initial system prompt. Only loaded when returned via tool_reference from tool search.", "title": "Defer Loading", "type": "boolean" }, "name": { "const": "code_execution", "description": "Name of the tool.\n\nThis is how the tool will be called by the model and in `tool_use` blocks.", "title": "Name", "type": "string" }, "strict": { "description": "When true, guarantees schema validation on tool names and inputs", "title": "Strict", "type": "boolean" }, "type": { "const": "code_execution_20250522", "title": "Type", "type": "string" } }, "required": [ "name", "type" ], "title": "CodeExecutionTool_20250522", "type": "object" }, { "additionalProperties": false, "properties": { "allowed_callers": { "items": { "description": "Specifies who can invoke a tool.\n\nValues:\n direct: The model can call this tool directly.\n code_execution_20250825: The tool can be called from the code execution environment (v1).\n code_execution_20260120: The tool can be called from the code execution environment (v2 with persistence).\n code_execution_20260521: The tool can be called from the code execution environment (v2 with persistence).", "enum": [ "direct", "code_execution_20250825", "code_execution_20260120", "code_execution_20260521" ], "title": "AllowedCaller", "type": "string" }, "title": "Allowed Callers", "type": "array" }, "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "defer_loading": { "description": "If true, tool will not be included in initial system prompt. Only loaded when returned via tool_reference from tool search.", "title": "Defer Loading", "type": "boolean" }, "name": { "const": "code_execution", "description": "Name of the tool.\n\nThis is how the tool will be called by the model and in `tool_use` blocks.", "title": "Name", "type": "string" }, "strict": { "description": "When true, guarantees schema validation on tool names and inputs", "title": "Strict", "type": "boolean" }, "type": { "const": "code_execution_20250825", "title": "Type", "type": "string" } }, "required": [ "name", "type" ], "title": "CodeExecutionTool_20250825", "type": "object" }, { "additionalProperties": false, "description": "Code execution tool with REPL state persistence (daemon mode + gVisor checkpoint).", "properties": { "allowed_callers": { "items": { "description": "Specifies who can invoke a tool.\n\nValues:\n direct: The model can call this tool directly.\n code_execution_20250825: The tool can be called from the code execution environment (v1).\n code_execution_20260120: The tool can be called from the code execution environment (v2 with persistence).\n code_execution_20260521: The tool can be called from the code execution environment (v2 with persistence).", "enum": [ "direct", "code_execution_20250825", "code_execution_20260120", "code_execution_20260521" ], "title": "AllowedCaller", "type": "string" }, "title": "Allowed Callers", "type": "array" }, "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "defer_loading": { "description": "If true, tool will not be included in initial system prompt. Only loaded when returned via tool_reference from tool search.", "title": "Defer Loading", "type": "boolean" }, "name": { "const": "code_execution", "description": "Name of the tool.\n\nThis is how the tool will be called by the model and in `tool_use` blocks.", "title": "Name", "type": "string" }, "strict": { "description": "When true, guarantees schema validation on tool names and inputs", "title": "Strict", "type": "boolean" }, "type": { "const": "code_execution_20260120", "title": "Type", "type": "string" } }, "required": [ "name", "type" ], "title": "CodeExecutionTool_20260120", "type": "object" }, { "additionalProperties": false, "description": "Code execution tool with REPL state persistence.", "properties": { "allowed_callers": { "items": { "description": "Specifies who can invoke a tool.\n\nValues:\n direct: The model can call this tool directly.\n code_execution_20250825: The tool can be called from the code execution environment (v1).\n code_execution_20260120: The tool can be called from the code execution environment (v2 with persistence).\n code_execution_20260521: The tool can be called from the code execution environment (v2 with persistence).", "enum": [ "direct", "code_execution_20250825", "code_execution_20260120", "code_execution_20260521" ], "title": "AllowedCaller", "type": "string" }, "title": "Allowed Callers", "type": "array" }, "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "defer_loading": { "description": "If true, tool will not be included in initial system prompt. Only loaded when returned via tool_reference from tool search.", "title": "Defer Loading", "type": "boolean" }, "name": { "const": "code_execution", "description": "Name of the tool.\n\nThis is how the tool will be called by the model and in `tool_use` blocks.", "title": "Name", "type": "string" }, "strict": { "description": "When true, guarantees schema validation on tool names and inputs", "title": "Strict", "type": "boolean" }, "type": { "const": "code_execution_20260521", "title": "Type", "type": "string" } }, "required": [ "name", "type" ], "title": "CodeExecutionTool_20260521", "type": "object" }, { "additionalProperties": false, "description": "The browser toolset: a single ``tools[]`` entry (carrying no\n``name``) that declares the browser tool family. The model is served\nthe family's tool with any members disabled via ``configs`` removed\nfrom its schema.", "properties": { "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "configs": { "anyOf": [ { "additionalProperties": false, "description": "Per-member configuration for ``browser_toolset_20260801``: one\noptional field per member tool, keyed by the member name \u2014 the same\nname the member's ``tool_use`` blocks carry. Every member is an\naccepted key, and a member's defaults apply wherever its key is\nabsent. Unknown keys are rejected: the field set is this toolset\nversion's complete member set.", "properties": { "close_tab": { "anyOf": [ { "additionalProperties": false, "description": "``close_tab``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "BrowserCloseTabConfig", "type": "object" }, { "type": "null" } ] }, "double_click": { "anyOf": [ { "additionalProperties": false, "description": "``double_click``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "BrowserDoubleClickConfig", "type": "object" }, { "type": "null" } ] }, "file_upload": { "anyOf": [ { "additionalProperties": false, "description": "``file_upload``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "BrowserFileUploadConfig", "type": "object" }, { "type": "null" } ] }, "find": { "anyOf": [ { "additionalProperties": false, "description": "``find``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "BrowserFindConfig", "type": "object" }, { "type": "null" } ] }, "form_input": { "anyOf": [ { "additionalProperties": false, "description": "``form_input``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "BrowserFormInputConfig", "type": "object" }, { "type": "null" } ] }, "get_page_text": { "anyOf": [ { "additionalProperties": false, "description": "``get_page_text``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "BrowserGetPageTextConfig", "type": "object" }, { "type": "null" } ] }, "hold_key": { "anyOf": [ { "additionalProperties": false, "description": "``hold_key``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "BrowserHoldKeyConfig", "type": "object" }, { "type": "null" } ] }, "hover": { "anyOf": [ { "additionalProperties": false, "description": "``hover``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "BrowserHoverConfig", "type": "object" }, { "type": "null" } ] }, "javascript_exec": { "anyOf": [ { "additionalProperties": false, "description": "``javascript_exec``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "BrowserJavascriptExecConfig", "type": "object" }, { "type": "null" } ] }, "key": { "anyOf": [ { "additionalProperties": false, "description": "``key``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "BrowserKeyConfig", "type": "object" }, { "type": "null" } ] }, "left_click": { "anyOf": [ { "additionalProperties": false, "description": "``left_click``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "BrowserLeftClickConfig", "type": "object" }, { "type": "null" } ] }, "left_click_drag": { "anyOf": [ { "additionalProperties": false, "description": "``left_click_drag``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "BrowserLeftClickDragConfig", "type": "object" }, { "type": "null" } ] }, "left_mouse_down": { "anyOf": [ { "additionalProperties": false, "description": "``left_mouse_down``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "BrowserLeftMouseDownConfig", "type": "object" }, { "type": "null" } ] }, "left_mouse_up": { "anyOf": [ { "additionalProperties": false, "description": "``left_mouse_up``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "BrowserLeftMouseUpConfig", "type": "object" }, { "type": "null" } ] }, "list_tabs": { "anyOf": [ { "additionalProperties": false, "description": "``list_tabs``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "BrowserListTabsConfig", "type": "object" }, { "type": "null" } ] }, "middle_click": { "anyOf": [ { "additionalProperties": false, "description": "``middle_click``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "BrowserMiddleClickConfig", "type": "object" }, { "type": "null" } ] }, "mouse_move": { "anyOf": [ { "additionalProperties": false, "description": "``mouse_move``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "BrowserMouseMoveConfig", "type": "object" }, { "type": "null" } ] }, "navigate": { "anyOf": [ { "additionalProperties": false, "description": "``navigate``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "BrowserNavigateConfig", "type": "object" }, { "type": "null" } ] }, "new_tab": { "anyOf": [ { "additionalProperties": false, "description": "``new_tab``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "BrowserNewTabConfig", "type": "object" }, { "type": "null" } ] }, "read_console": { "anyOf": [ { "additionalProperties": false, "description": "``read_console``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "BrowserReadConsoleConfig", "type": "object" }, { "type": "null" } ] }, "read_network": { "anyOf": [ { "additionalProperties": false, "description": "``read_network``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "BrowserReadNetworkConfig", "type": "object" }, { "type": "null" } ] }, "read_page": { "anyOf": [ { "additionalProperties": false, "description": "``read_page``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "BrowserReadPageConfig", "type": "object" }, { "type": "null" } ] }, "right_click": { "anyOf": [ { "additionalProperties": false, "description": "``right_click``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "BrowserRightClickConfig", "type": "object" }, { "type": "null" } ] }, "screenshot": { "anyOf": [ { "additionalProperties": false, "description": "``screenshot``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "BrowserScreenshotConfig", "type": "object" }, { "type": "null" } ] }, "scroll": { "anyOf": [ { "additionalProperties": false, "description": "``scroll``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "BrowserScrollConfig", "type": "object" }, { "type": "null" } ] }, "scroll_to": { "anyOf": [ { "additionalProperties": false, "description": "``scroll_to``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "BrowserScrollToConfig", "type": "object" }, { "type": "null" } ] }, "switch_tab": { "anyOf": [ { "additionalProperties": false, "description": "``switch_tab``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "BrowserSwitchTabConfig", "type": "object" }, { "type": "null" } ] }, "triple_click": { "anyOf": [ { "additionalProperties": false, "description": "``triple_click``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "BrowserTripleClickConfig", "type": "object" }, { "type": "null" } ] }, "type": { "anyOf": [ { "additionalProperties": false, "description": "``type``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "BrowserTypeConfig", "type": "object" }, { "type": "null" } ] }, "wait": { "anyOf": [ { "additionalProperties": false, "description": "``wait``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "BrowserWaitConfig", "type": "object" }, { "type": "null" } ] }, "zoom": { "anyOf": [ { "additionalProperties": false, "description": "``zoom``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "BrowserZoomConfig", "type": "object" }, { "type": "null" } ] } }, "title": "BrowserToolsetConfigs", "type": "object" }, { "type": "null" } ], "description": "Sparse per-member overrides, keyed by member name. Absent, null, and {} are equivalent; a member's defaults apply wherever its key is absent." }, "type": { "const": "browser_toolset_20260801", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "BrowserToolset_20260801", "type": "object" }, { "additionalProperties": false, "properties": { "allowed_callers": { "items": { "description": "Specifies who can invoke a tool.\n\nValues:\n direct: The model can call this tool directly.\n code_execution_20250825: The tool can be called from the code execution environment (v1).\n code_execution_20260120: The tool can be called from the code execution environment (v2 with persistence).\n code_execution_20260521: The tool can be called from the code execution environment (v2 with persistence).", "enum": [ "direct", "code_execution_20250825", "code_execution_20260120", "code_execution_20260521" ], "title": "AllowedCaller", "type": "string" }, "title": "Allowed Callers", "type": "array" }, "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "defer_loading": { "description": "If true, tool will not be included in initial system prompt. Only loaded when returned via tool_reference from tool search.", "title": "Defer Loading", "type": "boolean" }, "input_examples": { "items": { "additionalProperties": {}, "type": "object" }, "title": "Input Examples", "type": "array" }, "name": { "const": "memory", "description": "Name of the tool.\n\nThis is how the tool will be called by the model and in `tool_use` blocks.", "title": "Name", "type": "string" }, "strict": { "description": "When true, guarantees schema validation on tool names and inputs", "title": "Strict", "type": "boolean" }, "type": { "const": "memory_20250818", "title": "Type", "type": "string" } }, "required": [ "name", "type" ], "title": "MemoryTool_20250818", "type": "object" }, { "additionalProperties": false, "description": "The computer toolset: a single ``tools[]`` entry (carrying no\n``name``) that declares the computer tool family. The model is\nserved the family's tool with any members disabled via ``configs``\nremoved from its schema. Every member is enabled by default, zoom\nincluded. The single-tool options ``display_number`` and\n``enable_zoom`` are not fields of a toolset entry \u2014 it carries only\n``type``, ``configs``, and ``cache_control``; zoom is controlled\nvia ``configs.zoom.enabled``.", "properties": { "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "configs": { "anyOf": [ { "additionalProperties": false, "description": "Per-member configuration for ``computer_toolset_20260801``: one\noptional field per member tool, keyed by the member name \u2014 the same\nname the member's ``tool_use`` blocks carry. Every member is an\naccepted key, and a member's defaults apply wherever its key is\nabsent. Unknown keys are rejected: the field set is this toolset\nversion's complete member set.", "properties": { "cursor_position": { "anyOf": [ { "additionalProperties": false, "description": "``cursor_position``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "ComputerCursorPositionConfig", "type": "object" }, { "type": "null" } ] }, "double_click": { "anyOf": [ { "additionalProperties": false, "description": "``double_click``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "ComputerDoubleClickConfig", "type": "object" }, { "type": "null" } ] }, "hold_key": { "anyOf": [ { "additionalProperties": false, "description": "``hold_key``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "ComputerHoldKeyConfig", "type": "object" }, { "type": "null" } ] }, "key": { "anyOf": [ { "additionalProperties": false, "description": "``key``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "ComputerKeyConfig", "type": "object" }, { "type": "null" } ] }, "left_click": { "anyOf": [ { "additionalProperties": false, "description": "``left_click``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "ComputerLeftClickConfig", "type": "object" }, { "type": "null" } ] }, "left_click_drag": { "anyOf": [ { "additionalProperties": false, "description": "``left_click_drag``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "ComputerLeftClickDragConfig", "type": "object" }, { "type": "null" } ] }, "left_mouse_down": { "anyOf": [ { "additionalProperties": false, "description": "``left_mouse_down``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "ComputerLeftMouseDownConfig", "type": "object" }, { "type": "null" } ] }, "left_mouse_up": { "anyOf": [ { "additionalProperties": false, "description": "``left_mouse_up``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "ComputerLeftMouseUpConfig", "type": "object" }, { "type": "null" } ] }, "middle_click": { "anyOf": [ { "additionalProperties": false, "description": "``middle_click``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "ComputerMiddleClickConfig", "type": "object" }, { "type": "null" } ] }, "mouse_move": { "anyOf": [ { "additionalProperties": false, "description": "``mouse_move``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "ComputerMouseMoveConfig", "type": "object" }, { "type": "null" } ] }, "right_click": { "anyOf": [ { "additionalProperties": false, "description": "``right_click``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "ComputerRightClickConfig", "type": "object" }, { "type": "null" } ] }, "screenshot": { "anyOf": [ { "additionalProperties": false, "description": "``screenshot``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "ComputerScreenshotConfig", "type": "object" }, { "type": "null" } ] }, "scroll": { "anyOf": [ { "additionalProperties": false, "description": "``scroll``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "ComputerScrollConfig", "type": "object" }, { "type": "null" } ] }, "triple_click": { "anyOf": [ { "additionalProperties": false, "description": "``triple_click``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "ComputerTripleClickConfig", "type": "object" }, { "type": "null" } ] }, "type": { "anyOf": [ { "additionalProperties": false, "description": "``type``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "ComputerTypeConfig", "type": "object" }, { "type": "null" } ] }, "wait": { "anyOf": [ { "additionalProperties": false, "description": "``wait``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "ComputerWaitConfig", "type": "object" }, { "type": "null" } ] }, "zoom": { "anyOf": [ { "additionalProperties": false, "description": "``zoom``'s config overrides.", "properties": { "defer_loading": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "Defer loading for this member. Must resolve to the same value on every enabled member of the toolset.", "title": "Defer Loading" }, "enabled": { "anyOf": [ { "type": "boolean" }, { "type": "null" } ], "description": "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.", "title": "Enabled" } }, "title": "ComputerZoomConfig", "type": "object" }, { "type": "null" } ] } }, "title": "ComputerToolsetConfigs", "type": "object" }, { "type": "null" } ], "description": "Sparse per-member overrides, keyed by member name. Absent, null, and {} are equivalent; a member's defaults apply wherever its key is absent." }, "type": { "const": "computer_toolset_20260801", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "ComputerToolset_20260801", "type": "object" }, { "additionalProperties": false, "properties": { "allowed_callers": { "items": { "description": "Specifies who can invoke a tool.\n\nValues:\n direct: The model can call this tool directly.\n code_execution_20250825: The tool can be called from the code execution environment (v1).\n code_execution_20260120: The tool can be called from the code execution environment (v2 with persistence).\n code_execution_20260521: The tool can be called from the code execution environment (v2 with persistence).", "enum": [ "direct", "code_execution_20250825", "code_execution_20260120", "code_execution_20260521" ], "title": "AllowedCaller", "type": "string" }, "title": "Allowed Callers", "type": "array" }, "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "defer_loading": { "description": "If true, tool will not be included in initial system prompt. Only loaded when returned via tool_reference from tool search.", "title": "Defer Loading", "type": "boolean" }, "input_examples": { "items": { "additionalProperties": {}, "type": "object" }, "title": "Input Examples", "type": "array" }, "name": { "const": "str_replace_editor", "description": "Name of the tool.\n\nThis is how the tool will be called by the model and in `tool_use` blocks.", "title": "Name", "type": "string" }, "strict": { "description": "When true, guarantees schema validation on tool names and inputs", "title": "Strict", "type": "boolean" }, "type": { "const": "text_editor_20250124", "title": "Type", "type": "string" } }, "required": [ "name", "type" ], "title": "TextEditor_20250124", "type": "object" }, { "additionalProperties": false, "properties": { "allowed_callers": { "items": { "description": "Specifies who can invoke a tool.\n\nValues:\n direct: The model can call this tool directly.\n code_execution_20250825: The tool can be called from the code execution environment (v1).\n code_execution_20260120: The tool can be called from the code execution environment (v2 with persistence).\n code_execution_20260521: The tool can be called from the code execution environment (v2 with persistence).", "enum": [ "direct", "code_execution_20250825", "code_execution_20260120", "code_execution_20260521" ], "title": "AllowedCaller", "type": "string" }, "title": "Allowed Callers", "type": "array" }, "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "defer_loading": { "description": "If true, tool will not be included in initial system prompt. Only loaded when returned via tool_reference from tool search.", "title": "Defer Loading", "type": "boolean" }, "input_examples": { "items": { "additionalProperties": {}, "type": "object" }, "title": "Input Examples", "type": "array" }, "name": { "const": "str_replace_based_edit_tool", "description": "Name of the tool.\n\nThis is how the tool will be called by the model and in `tool_use` blocks.", "title": "Name", "type": "string" }, "strict": { "description": "When true, guarantees schema validation on tool names and inputs", "title": "Strict", "type": "boolean" }, "type": { "const": "text_editor_20250429", "title": "Type", "type": "string" } }, "required": [ "name", "type" ], "title": "TextEditor_20250429", "type": "object" }, { "additionalProperties": false, "properties": { "allowed_callers": { "items": { "description": "Specifies who can invoke a tool.\n\nValues:\n direct: The model can call this tool directly.\n code_execution_20250825: The tool can be called from the code execution environment (v1).\n code_execution_20260120: The tool can be called from the code execution environment (v2 with persistence).\n code_execution_20260521: The tool can be called from the code execution environment (v2 with persistence).", "enum": [ "direct", "code_execution_20250825", "code_execution_20260120", "code_execution_20260521" ], "title": "AllowedCaller", "type": "string" }, "title": "Allowed Callers", "type": "array" }, "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "defer_loading": { "description": "If true, tool will not be included in initial system prompt. Only loaded when returned via tool_reference from tool search.", "title": "Defer Loading", "type": "boolean" }, "input_examples": { "items": { "additionalProperties": {}, "type": "object" }, "title": "Input Examples", "type": "array" }, "max_characters": { "anyOf": [ { "minimum": 1, "type": "integer" }, { "type": "null" } ], "description": "Maximum number of characters to display when viewing a file. If not specified, defaults to displaying the full file.", "title": "Max Characters" }, "name": { "const": "str_replace_based_edit_tool", "description": "Name of the tool.\n\nThis is how the tool will be called by the model and in `tool_use` blocks.", "title": "Name", "type": "string" }, "strict": { "description": "When true, guarantees schema validation on tool names and inputs", "title": "Strict", "type": "boolean" }, "type": { "const": "text_editor_20250728", "title": "Type", "type": "string" } }, "required": [ "name", "type" ], "title": "TextEditor_20250728", "type": "object" }, { "additionalProperties": false, "properties": { "allowed_callers": { "items": { "description": "Specifies who can invoke a tool.\n\nValues:\n direct: The model can call this tool directly.\n code_execution_20250825: The tool can be called from the code execution environment (v1).\n code_execution_20260120: The tool can be called from the code execution environment (v2 with persistence).\n code_execution_20260521: The tool can be called from the code execution environment (v2 with persistence).", "enum": [ "direct", "code_execution_20250825", "code_execution_20260120", "code_execution_20260521" ], "title": "AllowedCaller", "type": "string" }, "title": "Allowed Callers", "type": "array" }, "allowed_domains": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "description": "If provided, only these domains will be included in results. Cannot be used alongside `blocked_domains`.", "title": "Allowed Domains" }, "blocked_domains": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "description": "If provided, these domains will never appear in results. Cannot be used alongside `allowed_domains`.", "title": "Blocked Domains" }, "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "defer_loading": { "description": "If true, tool will not be included in initial system prompt. Only loaded when returned via tool_reference from tool search.", "title": "Defer Loading", "type": "boolean" }, "max_uses": { "anyOf": [ { "exclusiveMinimum": 0, "type": "integer" }, { "type": "null" } ], "description": "Maximum number of times the tool can be used in the API request.", "title": "Max Uses" }, "name": { "const": "web_search", "description": "Name of the tool.\n\nThis is how the tool will be called by the model and in `tool_use` blocks.", "title": "Name", "type": "string" }, "strict": { "description": "When true, guarantees schema validation on tool names and inputs", "title": "Strict", "type": "boolean" }, "type": { "const": "web_search_20250305", "title": "Type", "type": "string" }, "user_location": { "anyOf": [ { "additionalProperties": false, "properties": { "city": { "anyOf": [ { "maxLength": 255, "minLength": 1, "type": "string" }, { "type": "null" } ], "description": "The city of the user.", "examples": [ "New York", "Tokyo", "Los Angeles" ], "title": "City" }, "country": { "anyOf": [ { "maxLength": 2, "minLength": 2, "type": "string" }, { "type": "null" } ], "description": "The two letter [ISO country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) of the user.", "examples": [ "US", "JP", "GB" ], "title": "Country" }, "region": { "anyOf": [ { "maxLength": 255, "minLength": 1, "type": "string" }, { "type": "null" } ], "description": "The region of the user.", "examples": [ "California", "Ontario", "Wales" ], "title": "Region" }, "timezone": { "anyOf": [ { "maxLength": 255, "minLength": 1, "type": "string" }, { "type": "null" } ], "description": "The [IANA timezone](https://nodatime.org/TimeZones) of the user.", "examples": [ "America/New_York", "Asia/Tokyo", "Europe/London" ], "title": "Timezone" }, "type": { "const": "approximate", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "UserLocation", "type": "object" }, { "type": "null" } ], "description": "Parameters for the user's location. Used to provide more relevant search results." } }, "required": [ "name", "type" ], "title": "WebSearchTool_20250305", "type": "object" }, { "additionalProperties": false, "properties": { "allowed_callers": { "items": { "description": "Specifies who can invoke a tool.\n\nValues:\n direct: The model can call this tool directly.\n code_execution_20250825: The tool can be called from the code execution environment (v1).\n code_execution_20260120: The tool can be called from the code execution environment (v2 with persistence).\n code_execution_20260521: The tool can be called from the code execution environment (v2 with persistence).", "enum": [ "direct", "code_execution_20250825", "code_execution_20260120", "code_execution_20260521" ], "title": "AllowedCaller", "type": "string" }, "title": "Allowed Callers", "type": "array" }, "allowed_domains": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "description": "List of domains to allow fetching from", "title": "Allowed Domains" }, "blocked_domains": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "description": "List of domains to block fetching from", "title": "Blocked Domains" }, "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "citations": { "anyOf": [ { "additionalProperties": false, "properties": { "enabled": { "title": "Enabled", "type": "boolean" } }, "title": "RequestCitationsConfig", "type": "object" }, { "type": "null" } ], "description": "Citations configuration for fetched documents. Citations are disabled by default." }, "defer_loading": { "description": "If true, tool will not be included in initial system prompt. Only loaded when returned via tool_reference from tool search.", "title": "Defer Loading", "type": "boolean" }, "max_content_tokens": { "anyOf": [ { "exclusiveMinimum": 0, "type": "integer" }, { "type": "null" } ], "description": "Maximum number of tokens used by including web page text content in the context. The limit is approximate and does not apply to binary content such as PDFs.", "title": "Max Content Tokens" }, "max_uses": { "anyOf": [ { "exclusiveMinimum": 0, "type": "integer" }, { "type": "null" } ], "description": "Maximum number of times the tool can be used in the API request.", "title": "Max Uses" }, "name": { "const": "web_fetch", "description": "Name of the tool.\n\nThis is how the tool will be called by the model and in `tool_use` blocks.", "title": "Name", "type": "string" }, "strict": { "description": "When true, guarantees schema validation on tool names and inputs", "title": "Strict", "type": "boolean" }, "type": { "const": "web_fetch_20250910", "title": "Type", "type": "string" } }, "required": [ "name", "type" ], "title": "WebFetchTool_20250910", "type": "object" }, { "additionalProperties": false, "properties": { "allowed_callers": { "items": { "description": "Specifies who can invoke a tool.\n\nValues:\n direct: The model can call this tool directly.\n code_execution_20250825: The tool can be called from the code execution environment (v1).\n code_execution_20260120: The tool can be called from the code execution environment (v2 with persistence).\n code_execution_20260521: The tool can be called from the code execution environment (v2 with persistence).", "enum": [ "direct", "code_execution_20250825", "code_execution_20260120", "code_execution_20260521" ], "title": "AllowedCaller", "type": "string" }, "title": "Allowed Callers", "type": "array" }, "allowed_domains": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "description": "If provided, only these domains will be included in results. Cannot be used alongside `blocked_domains`.", "title": "Allowed Domains" }, "blocked_domains": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "description": "If provided, these domains will never appear in results. Cannot be used alongside `allowed_domains`.", "title": "Blocked Domains" }, "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "defer_loading": { "description": "If true, tool will not be included in initial system prompt. Only loaded when returned via tool_reference from tool search.", "title": "Defer Loading", "type": "boolean" }, "max_uses": { "anyOf": [ { "exclusiveMinimum": 0, "type": "integer" }, { "type": "null" } ], "description": "Maximum number of times the tool can be used in the API request.", "title": "Max Uses" }, "name": { "const": "web_search", "description": "Name of the tool.\n\nThis is how the tool will be called by the model and in `tool_use` blocks.", "title": "Name", "type": "string" }, "strict": { "description": "When true, guarantees schema validation on tool names and inputs", "title": "Strict", "type": "boolean" }, "type": { "const": "web_search_20260209", "title": "Type", "type": "string" }, "user_location": { "anyOf": [ { "additionalProperties": false, "properties": { "city": { "anyOf": [ { "maxLength": 255, "minLength": 1, "type": "string" }, { "type": "null" } ], "description": "The city of the user.", "examples": [ "New York", "Tokyo", "Los Angeles" ], "title": "City" }, "country": { "anyOf": [ { "maxLength": 2, "minLength": 2, "type": "string" }, { "type": "null" } ], "description": "The two letter [ISO country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) of the user.", "examples": [ "US", "JP", "GB" ], "title": "Country" }, "region": { "anyOf": [ { "maxLength": 255, "minLength": 1, "type": "string" }, { "type": "null" } ], "description": "The region of the user.", "examples": [ "California", "Ontario", "Wales" ], "title": "Region" }, "timezone": { "anyOf": [ { "maxLength": 255, "minLength": 1, "type": "string" }, { "type": "null" } ], "description": "The [IANA timezone](https://nodatime.org/TimeZones) of the user.", "examples": [ "America/New_York", "Asia/Tokyo", "Europe/London" ], "title": "Timezone" }, "type": { "const": "approximate", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "UserLocation", "type": "object" }, { "type": "null" } ], "description": "Parameters for the user's location. Used to provide more relevant search results." } }, "required": [ "name", "type" ], "title": "WebSearchTool_20260209", "type": "object" }, { "additionalProperties": false, "properties": { "allowed_callers": { "items": { "description": "Specifies who can invoke a tool.\n\nValues:\n direct: The model can call this tool directly.\n code_execution_20250825: The tool can be called from the code execution environment (v1).\n code_execution_20260120: The tool can be called from the code execution environment (v2 with persistence).\n code_execution_20260521: The tool can be called from the code execution environment (v2 with persistence).", "enum": [ "direct", "code_execution_20250825", "code_execution_20260120", "code_execution_20260521" ], "title": "AllowedCaller", "type": "string" }, "title": "Allowed Callers", "type": "array" }, "allowed_domains": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "description": "List of domains to allow fetching from", "title": "Allowed Domains" }, "blocked_domains": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "description": "List of domains to block fetching from", "title": "Blocked Domains" }, "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "citations": { "anyOf": [ { "additionalProperties": false, "properties": { "enabled": { "title": "Enabled", "type": "boolean" } }, "title": "RequestCitationsConfig", "type": "object" }, { "type": "null" } ], "description": "Citations configuration for fetched documents. Citations are disabled by default." }, "defer_loading": { "description": "If true, tool will not be included in initial system prompt. Only loaded when returned via tool_reference from tool search.", "title": "Defer Loading", "type": "boolean" }, "max_content_tokens": { "anyOf": [ { "exclusiveMinimum": 0, "type": "integer" }, { "type": "null" } ], "description": "Maximum number of tokens used by including web page text content in the context. The limit is approximate and does not apply to binary content such as PDFs.", "title": "Max Content Tokens" }, "max_uses": { "anyOf": [ { "exclusiveMinimum": 0, "type": "integer" }, { "type": "null" } ], "description": "Maximum number of times the tool can be used in the API request.", "title": "Max Uses" }, "name": { "const": "web_fetch", "description": "Name of the tool.\n\nThis is how the tool will be called by the model and in `tool_use` blocks.", "title": "Name", "type": "string" }, "strict": { "description": "When true, guarantees schema validation on tool names and inputs", "title": "Strict", "type": "boolean" }, "type": { "const": "web_fetch_20260209", "title": "Type", "type": "string" } }, "required": [ "name", "type" ], "title": "WebFetchTool_20260209", "type": "object" }, { "additionalProperties": false, "description": "Web fetch tool with use_cache parameter for bypassing cached content.", "properties": { "allowed_callers": { "items": { "description": "Specifies who can invoke a tool.\n\nValues:\n direct: The model can call this tool directly.\n code_execution_20250825: The tool can be called from the code execution environment (v1).\n code_execution_20260120: The tool can be called from the code execution environment (v2 with persistence).\n code_execution_20260521: The tool can be called from the code execution environment (v2 with persistence).", "enum": [ "direct", "code_execution_20250825", "code_execution_20260120", "code_execution_20260521" ], "title": "AllowedCaller", "type": "string" }, "title": "Allowed Callers", "type": "array" }, "allowed_domains": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "description": "List of domains to allow fetching from", "title": "Allowed Domains" }, "blocked_domains": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "description": "List of domains to block fetching from", "title": "Blocked Domains" }, "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "citations": { "anyOf": [ { "additionalProperties": false, "properties": { "enabled": { "title": "Enabled", "type": "boolean" } }, "title": "RequestCitationsConfig", "type": "object" }, { "type": "null" } ], "description": "Citations configuration for fetched documents. Citations are disabled by default." }, "defer_loading": { "description": "If true, tool will not be included in initial system prompt. Only loaded when returned via tool_reference from tool search.", "title": "Defer Loading", "type": "boolean" }, "max_content_tokens": { "anyOf": [ { "exclusiveMinimum": 0, "type": "integer" }, { "type": "null" } ], "description": "Maximum number of tokens used by including web page text content in the context. The limit is approximate and does not apply to binary content such as PDFs.", "title": "Max Content Tokens" }, "max_uses": { "anyOf": [ { "exclusiveMinimum": 0, "type": "integer" }, { "type": "null" } ], "description": "Maximum number of times the tool can be used in the API request.", "title": "Max Uses" }, "name": { "const": "web_fetch", "description": "Name of the tool.\n\nThis is how the tool will be called by the model and in `tool_use` blocks.", "title": "Name", "type": "string" }, "strict": { "description": "When true, guarantees schema validation on tool names and inputs", "title": "Strict", "type": "boolean" }, "type": { "const": "web_fetch_20260309", "title": "Type", "type": "string" }, "use_cache": { "description": "Whether to use cached content. Set to false to bypass the cache and fetch fresh content. Only set to false when the user explicitly requests fresh content or when fetching rapidly-changing sources.", "title": "Use Cache", "type": "boolean" } }, "required": [ "name", "type" ], "title": "WebFetchTool_20260309", "type": "object" }, { "additionalProperties": false, "properties": { "allowed_callers": { "items": { "description": "Specifies who can invoke a tool.\n\nValues:\n direct: The model can call this tool directly.\n code_execution_20250825: The tool can be called from the code execution environment (v1).\n code_execution_20260120: The tool can be called from the code execution environment (v2 with persistence).\n code_execution_20260521: The tool can be called from the code execution environment (v2 with persistence).", "enum": [ "direct", "code_execution_20250825", "code_execution_20260120", "code_execution_20260521" ], "title": "AllowedCaller", "type": "string" }, "title": "Allowed Callers", "type": "array" }, "allowed_domains": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "description": "If provided, only these domains will be included in results. Cannot be used alongside `blocked_domains`.", "title": "Allowed Domains" }, "blocked_domains": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "description": "If provided, these domains will never appear in results. Cannot be used alongside `allowed_domains`.", "title": "Blocked Domains" }, "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "defer_loading": { "description": "If true, tool will not be included in initial system prompt. Only loaded when returned via tool_reference from tool search.", "title": "Defer Loading", "type": "boolean" }, "max_uses": { "anyOf": [ { "exclusiveMinimum": 0, "type": "integer" }, { "type": "null" } ], "description": "Maximum number of times the tool can be used in the API request.", "title": "Max Uses" }, "name": { "const": "web_search", "description": "Name of the tool.\n\nThis is how the tool will be called by the model and in `tool_use` blocks.", "title": "Name", "type": "string" }, "response_inclusion": { "description": "How this tool's result blocks appear in the API response when the result was consumed by a completed code_execution call in the same turn. 'full' returns the complete content (default). 'excluded' drops the nested server_tool_use and result block pair entirely. Results from direct calls, or from code_execution calls that paused before completing, are always returned in full so they can be sent back on the next turn.", "enum": [ "full", "excluded" ], "title": "Response Inclusion", "type": "string" }, "strict": { "description": "When true, guarantees schema validation on tool names and inputs", "title": "Strict", "type": "boolean" }, "type": { "const": "web_search_20260318", "title": "Type", "type": "string" }, "user_location": { "anyOf": [ { "additionalProperties": false, "properties": { "city": { "anyOf": [ { "maxLength": 255, "minLength": 1, "type": "string" }, { "type": "null" } ], "description": "The city of the user.", "examples": [ "New York", "Tokyo", "Los Angeles" ], "title": "City" }, "country": { "anyOf": [ { "maxLength": 2, "minLength": 2, "type": "string" }, { "type": "null" } ], "description": "The two letter [ISO country code](https://en.wikipedia.org/wiki/ISO_3166-1_alpha-2) of the user.", "examples": [ "US", "JP", "GB" ], "title": "Country" }, "region": { "anyOf": [ { "maxLength": 255, "minLength": 1, "type": "string" }, { "type": "null" } ], "description": "The region of the user.", "examples": [ "California", "Ontario", "Wales" ], "title": "Region" }, "timezone": { "anyOf": [ { "maxLength": 255, "minLength": 1, "type": "string" }, { "type": "null" } ], "description": "The [IANA timezone](https://nodatime.org/TimeZones) of the user.", "examples": [ "America/New_York", "Asia/Tokyo", "Europe/London" ], "title": "Timezone" }, "type": { "const": "approximate", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "UserLocation", "type": "object" }, { "type": "null" } ], "description": "Parameters for the user's location. Used to provide more relevant search results." } }, "required": [ "name", "type" ], "title": "WebSearchTool_20260318", "type": "object" }, { "additionalProperties": false, "properties": { "allowed_callers": { "items": { "description": "Specifies who can invoke a tool.\n\nValues:\n direct: The model can call this tool directly.\n code_execution_20250825: The tool can be called from the code execution environment (v1).\n code_execution_20260120: The tool can be called from the code execution environment (v2 with persistence).\n code_execution_20260521: The tool can be called from the code execution environment (v2 with persistence).", "enum": [ "direct", "code_execution_20250825", "code_execution_20260120", "code_execution_20260521" ], "title": "AllowedCaller", "type": "string" }, "title": "Allowed Callers", "type": "array" }, "allowed_domains": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "description": "List of domains to allow fetching from", "title": "Allowed Domains" }, "blocked_domains": { "anyOf": [ { "items": { "type": "string" }, "type": "array" }, { "type": "null" } ], "description": "List of domains to block fetching from", "title": "Blocked Domains" }, "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "citations": { "anyOf": [ { "additionalProperties": false, "properties": { "enabled": { "title": "Enabled", "type": "boolean" } }, "title": "RequestCitationsConfig", "type": "object" }, { "type": "null" } ], "description": "Citations configuration for fetched documents. Citations are disabled by default." }, "defer_loading": { "description": "If true, tool will not be included in initial system prompt. Only loaded when returned via tool_reference from tool search.", "title": "Defer Loading", "type": "boolean" }, "max_content_tokens": { "anyOf": [ { "exclusiveMinimum": 0, "type": "integer" }, { "type": "null" } ], "description": "Maximum number of tokens used by including web page text content in the context. The limit is approximate and does not apply to binary content such as PDFs.", "title": "Max Content Tokens" }, "max_uses": { "anyOf": [ { "exclusiveMinimum": 0, "type": "integer" }, { "type": "null" } ], "description": "Maximum number of times the tool can be used in the API request.", "title": "Max Uses" }, "name": { "const": "web_fetch", "description": "Name of the tool.\n\nThis is how the tool will be called by the model and in `tool_use` blocks.", "title": "Name", "type": "string" }, "response_inclusion": { "description": "How this tool's result blocks appear in the API response when the result was consumed by a completed code_execution call in the same turn. 'full' returns the complete content (default). 'excluded' drops the nested server_tool_use and result block pair entirely. Results from direct calls, or from code_execution calls that paused before completing, are always returned in full so they can be sent back on the next turn.", "enum": [ "full", "excluded" ], "title": "Response Inclusion", "type": "string" }, "strict": { "description": "When true, guarantees schema validation on tool names and inputs", "title": "Strict", "type": "boolean" }, "type": { "const": "web_fetch_20260318", "title": "Type", "type": "string" }, "use_cache": { "description": "Whether to use cached content. Set to false to bypass the cache and fetch fresh content. Only set to false when the user explicitly requests fresh content or when fetching rapidly-changing sources.", "title": "Use Cache", "type": "boolean" } }, "required": [ "name", "type" ], "title": "WebFetchTool_20260318", "type": "object" }, { "additionalProperties": false, "properties": { "allowed_callers": { "items": { "description": "Specifies who can invoke a tool.\n\nValues:\n direct: The model can call this tool directly.\n code_execution_20250825: The tool can be called from the code execution environment (v1).\n code_execution_20260120: The tool can be called from the code execution environment (v2 with persistence).\n code_execution_20260521: The tool can be called from the code execution environment (v2 with persistence).", "enum": [ "direct", "code_execution_20250825", "code_execution_20260120", "code_execution_20260521" ], "title": "AllowedCaller", "type": "string" }, "title": "Allowed Callers", "type": "array" }, "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "defer_loading": { "description": "If true, tool will not be included in initial system prompt. Only loaded when returned via tool_reference from tool search.", "title": "Defer Loading", "type": "boolean" }, "name": { "const": "tool_search_tool_bm25", "description": "Name of the tool.\n\nThis is how the tool will be called by the model and in `tool_use` blocks.", "title": "Name", "type": "string" }, "strict": { "description": "When true, guarantees schema validation on tool names and inputs", "title": "Strict", "type": "boolean" }, "type": { "enum": [ "tool_search_tool_bm25_20251119", "tool_search_tool_bm25" ], "title": "Type", "type": "string" } }, "required": [ "name", "type" ], "title": "ToolSearchToolBM25_20251119", "type": "object" }, { "additionalProperties": false, "properties": { "allowed_callers": { "items": { "description": "Specifies who can invoke a tool.\n\nValues:\n direct: The model can call this tool directly.\n code_execution_20250825: The tool can be called from the code execution environment (v1).\n code_execution_20260120: The tool can be called from the code execution environment (v2 with persistence).\n code_execution_20260521: The tool can be called from the code execution environment (v2 with persistence).", "enum": [ "direct", "code_execution_20250825", "code_execution_20260120", "code_execution_20260521" ], "title": "AllowedCaller", "type": "string" }, "title": "Allowed Callers", "type": "array" }, "cache_control": { "anyOf": [ { "discriminator": { "mapping": { "ephemeral": "#/components/schemas/CacheControlEphemeral" }, "propertyName": "type" }, "oneOf": [ { "additionalProperties": false, "properties": { "ttl": { "description": "The time-to-live for the cache control breakpoint.\n\nThis may be one the following values:\n- `5m`: 5 minutes\n- `1h`: 1 hour\n\nDefaults to `5m`. See [prompt caching pricing](https://platform.claude.com/docs/en/build-with-claude/prompt-caching) for details.", "enum": [ "5m", "1h" ], "title": "Ttl", "type": "string", "x-stainless-renameMap": { "ttl_5m": "5m", "ttl_1h": "1h" } }, "type": { "const": "ephemeral", "title": "Type", "type": "string" } }, "required": [ "type" ], "title": "CacheControlEphemeral", "type": "object", "x-stainless-go-constant-constructor": true } ] }, { "type": "null" } ], "description": "Create a cache control breakpoint at this content block.", "title": "Cache Control" }, "defer_loading": { "description": "If true, tool will not be included in initial system prompt. Only loaded when returned via tool_reference from tool search.", "title": "Defer Loading", "type": "boolean" }, "name": { "const": "tool_search_tool_regex", "description": "Name of the tool.\n\nThis is how the tool will be called by the model and in `tool_use` blocks.", "title": "Name", "type": "string" }, "strict": { "description": "When true, guarantees schema validation on tool names and inputs", "title": "Strict", "type": "boolean" }, "type": { "enum": [ "tool_search_tool_regex_20251119", "tool_search_tool_regex" ], "title": "Type", "type": "string" } }, "required": [ "name", "type" ], "title": "ToolSearchToolRegex_20251119", "type": "object" } ] }, "title": "Tools", "type": "array" }, "top_k": { "deprecated": true, "description": "Only sample from the top K options for each subsequent token.\n\nUsed to remove \"long tail\" low probability responses. [Learn more technical details here](https://towardsdatascience.com/how-to-sample-from-language-models-682bceb97277).\n\nRecommended for advanced use cases only.", "examples": [ 5 ], "minimum": 0, "title": "Top K", "type": "integer", "x-stainless-deprecation-message": "Deprecated. Models released after Claude Opus 4.6 do not accept top_k; any value will be rejected with a 400 error.", "x-stainless-skip": [ "python" ] }, "top_p": { "deprecated": true, "description": "Use nucleus sampling.\n\nIn nucleus sampling, we compute the cumulative distribution over all the options for each subsequent token in decreasing probability order and cut it off once it reaches a particular probability specified by `top_p`.\n\nRecommended for advanced use cases only.", "examples": [ 0.7 ], "maximum": 1, "minimum": 0, "title": "Top P", "type": "number", "x-stainless-deprecation-message": "Deprecated. Models released after Claude Opus 4.6 do not support setting top_p. A value >= 0.99 will be accepted for backwards compatibility, all other values will be rejected with a 400 error.", "x-stainless-skip": [ "python" ] } }, "required": [ "model", "messages", "max_tokens" ], "title": "CreateMessageParams", "type": "object" }, "_meta": { "apicommons.org/standard": "anthropic-messages-v1", "apicommons.org/tier": "core", "apicommons.org/operation": "POST /v1/messages" } }, { "name": "models_list", "description": "List Models Core-tier operation: GET /v1/models.", "inputSchema": { "type": "object", "properties": {} }, "_meta": { "apicommons.org/standard": "anthropic-messages-v1", "apicommons.org/tier": "core", "apicommons.org/operation": "GET /v1/models" } } ] }