diff --git a/.speakeasy/in.openapi.yaml b/.speakeasy/in.openapi.yaml index 0cef07b2..e41f28a6 100644 --- a/.speakeasy/in.openapi.yaml +++ b/.speakeasy/in.openapi.yaml @@ -21634,6 +21634,11 @@ components: - 'top_p' - 'max_tokens' supports_implicit_caching: true + supports_tool_choice: + auto: true + function: true + none: true + required: true supports_voice_cloning: false tag: 'openai' throughput_last_30m: @@ -21737,6 +21742,8 @@ components: type: 'array' supports_implicit_caching: type: 'boolean' + supports_tool_choice: + $ref: '#/components/schemas/ToolChoiceSupport' supports_voice_cloning: default: false description: 'Whether this TTS endpoint accepts inline reference audio (`input_references`) for stateless voice cloning. Requests carrying reference audio are only routed to endpoints where this is true.' @@ -21776,6 +21783,7 @@ components: - 'max_completion_tokens' - 'max_prompt_tokens' - 'supported_parameters' + - 'supports_tool_choice' - 'uptime_last_30m' - 'uptime_last_5m' - 'uptime_last_1d' @@ -24578,6 +24586,32 @@ components: - 'mode' - 'tools' type: 'object' + ToolChoiceSupport: + description: 'Per-variant `tool_choice` support. `tool_choice` in `supported_parameters` only says the parameter is accepted; these flags say which of its values passed testing.' + example: + auto: true + function: true + none: true + required: true + properties: + auto: + description: 'Whether the endpoint supports `"tool_choice": "auto"`.' + type: 'boolean' + function: + description: 'Whether the endpoint supports naming a function, `"tool_choice": {"type": "function", ...}`.' + type: 'boolean' + none: + description: 'Whether the endpoint supports `"tool_choice": "none"`.' + type: 'boolean' + required: + description: 'Whether the endpoint supports `"tool_choice": "required"`.' + type: 'boolean' + required: + - 'none' + - 'auto' + - 'required' + - 'function' + type: 'object' ToolSearchServerTool: description: 'OpenRouter built-in server tool: finds tools marked `defer_loading` and makes them callable' example: