openapi: 3.1.0
info:
    title: OpenRouter API
    version: 1.0.0
    description: OpenAI-compatible Chat Completions and Completions API with additional OpenRouter features
    contact:
        name: OpenRouter Support
        url: https://openrouter.ai/docs
        email: support@openrouter.ai
    license:
        name: MIT
        url: https://opensource.org/licenses/MIT
components:
    schemas:
        OpenAIResponsesResponseStatus:
            type: string
            enum:
                - completed
                - incomplete
                - in_progress
                - failed
                - cancelled
                - queued
            x-speakeasy-unknown-values: allow
        FileCitation:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - file_citation
                file_id:
                    type: string
                filename:
                    type: string
                index:
                    type: number
            required:
                - type
                - file_id
                - filename
                - index
            example:
                type: file_citation
                file_id: file-abc123
                filename: research_paper.pdf
                index: 0
        URLCitation:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - url_citation
                url:
                    type: string
                title:
                    type: string
                start_index:
                    type: number
                end_index:
                    type: number
            required:
                - type
                - url
                - title
                - start_index
                - end_index
            example:
                type: url_citation
                start_index: 0
                end_index: 42
                title: OpenRouter Documentation
                url: https://openrouter.ai/docs
        FilePath:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - file_path
                file_id:
                    type: string
                index:
                    type: number
            required:
                - type
                - file_id
                - index
            example:
                type: file_path
                file_id: file-xyz789
                index: 0
        OpenAIResponsesAnnotation:
            anyOf:
                - $ref: '#/components/schemas/FileCitation'
                - $ref: '#/components/schemas/URLCitation'
                - $ref: '#/components/schemas/FilePath'
        ResponseOutputText:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - output_text
                text:
                    type: string
                annotations:
                    type: array
                    items:
                        $ref: '#/components/schemas/OpenAIResponsesAnnotation'
                logprobs:
                    type: array
                    items:
                        type: object
                        properties:
                            token:
                                type: string
                            bytes:
                                type: array
                                items:
                                    type: number
                            logprob:
                                type: number
                            top_logprobs:
                                type: array
                                items:
                                    type: object
                                    properties:
                                        token:
                                            type: string
                                        bytes:
                                            type: array
                                            items:
                                                type: number
                                        logprob:
                                            type: number
                                    required:
                                        - token
                                        - bytes
                                        - logprob
                        required:
                            - token
                            - bytes
                            - logprob
                            - top_logprobs
            required:
                - type
                - text
            example:
                type: output_text
                text: The capital of France is Paris.
                annotations:
                    - type: url_citation
                      start_index: 0
                      end_index: 42
                      title: Paris - Wikipedia
                      url: https://en.wikipedia.org/wiki/Paris
        OpenAIResponsesRefusalContent:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - refusal
                refusal:
                    type: string
            required:
                - type
                - refusal
            example:
                type: refusal
                refusal: I'm sorry, I cannot assist with that request
        OutputMessage:
            type: object
            properties:
                id:
                    type: string
                role:
                    type: string
                    enum:
                        - assistant
                type:
                    type: string
                    enum:
                        - message
                status:
                    anyOf:
                        - type: string
                          enum:
                            - completed
                        - type: string
                          enum:
                            - incomplete
                        - type: string
                          enum:
                            - in_progress
                content:
                    type: array
                    items:
                        anyOf:
                            - $ref: '#/components/schemas/ResponseOutputText'
                            - $ref: '#/components/schemas/OpenAIResponsesRefusalContent'
            required:
                - id
                - role
                - type
                - content
            example:
                id: msg-abc123
                role: assistant
                type: message
                status: completed
                content:
                    - type: output_text
                      text: Hello! How can I help you today?
        ResponsesOutputMessage:
            allOf:
                - $ref: '#/components/schemas/OutputMessage'
                - type: object
                  properties: {}
            example:
                id: msg-123
                type: message
                role: assistant
                status: completed
                content:
                    - type: output_text
                      text: Hello! How can I help you?
                      annotations: []
            description: An output message item
        ReasoningTextContent:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - reasoning_text
                text:
                    type: string
            required:
                - type
                - text
            example:
                type: reasoning_text
                text: Let me think step by step about this problem...
        ReasoningSummaryText:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - summary_text
                text:
                    type: string
            required:
                - type
                - text
            example:
                type: summary_text
                text: Analyzed the problem using first principles
        OutputItemReasoning:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - reasoning
                id:
                    type: string
                content:
                    type: array
                    items:
                        $ref: '#/components/schemas/ReasoningTextContent'
                summary:
                    type: array
                    items:
                        $ref: '#/components/schemas/ReasoningSummaryText'
                encrypted_content:
                    type: string
                    nullable: true
                status:
                    anyOf:
                        - type: string
                          enum:
                            - completed
                        - type: string
                          enum:
                            - incomplete
                        - type: string
                          enum:
                            - in_progress
            required:
                - type
                - id
                - summary
            example:
                type: reasoning
                id: reasoning-abc123
                summary:
                    - type: summary_text
                      text: Analyzed the problem using first principles
        ResponsesOutputItemReasoning:
            allOf:
                - $ref: '#/components/schemas/OutputItemReasoning'
                - type: object
                  properties:
                    signature:
                        type: string
                        nullable: true
                        description: A signature for the reasoning content, used for verification
                        example: EvcBCkgIChABGAIqQKkSDbRuVEQUk9qN1odC098l9SEj...
                    format:
                        type: string
                        nullable: true
                        enum:
                            - unknown
                            - openai-responses-v1
                            - azure-openai-responses-v1
                            - xai-responses-v1
                            - anthropic-claude-v1
                            - google-gemini-v1
                        description: The format of the reasoning content
                        example: anthropic-claude-v1
                        x-speakeasy-unknown-values: allow
            example:
                id: reasoning-123
                type: reasoning
                status: completed
                summary:
                    - type: summary_text
                      text: Analyzed the problem and found the optimal solution.
                content:
                    - type: reasoning_text
                      text: First, we analyze the problem...
                signature: EvcBCkgIChABGAIqQKkSDbRuVEQUk9qN1odC098l9SEj...
                format: anthropic-claude-v1
            description: An output item containing reasoning
        OutputItemFunctionCall:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - function_call
                id:
                    type: string
                name:
                    type: string
                arguments:
                    type: string
                call_id:
                    type: string
                status:
                    anyOf:
                        - type: string
                          enum:
                            - completed
                        - type: string
                          enum:
                            - incomplete
                        - type: string
                          enum:
                            - in_progress
            required:
                - type
                - name
                - arguments
                - call_id
            example:
                type: function_call
                id: call-abc123
                name: get_weather
                arguments: '{"location":"San Francisco","unit":"celsius"}'
                call_id: call-abc123
        ResponsesOutputItemFunctionCall:
            allOf:
                - $ref: '#/components/schemas/OutputItemFunctionCall'
                - type: object
                  properties: {}
            example:
                type: function_call
                id: call-abc123
                name: get_weather
                arguments: '{"location":"San Francisco","unit":"celsius"}'
                call_id: call-abc123
        WebSearchStatus:
            type: string
            enum:
                - completed
                - searching
                - in_progress
                - failed
            example: completed
            x-speakeasy-unknown-values: allow
        OutputItemWebSearchCall:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - web_search_call
                id:
                    type: string
                status:
                    $ref: '#/components/schemas/WebSearchStatus'
            required:
                - type
                - id
                - status
            example:
                type: web_search_call
                id: search-abc123
                status: completed
        ResponsesWebSearchCallOutput:
            allOf:
                - $ref: '#/components/schemas/OutputItemWebSearchCall'
                - type: object
                  properties: {}
            example:
                type: web_search_call
                id: search-abc123
                status: completed
        OutputItemFileSearchCall:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - file_search_call
                id:
                    type: string
                queries:
                    type: array
                    items:
                        type: string
                status:
                    $ref: '#/components/schemas/WebSearchStatus'
            required:
                - type
                - id
                - queries
                - status
            example:
                type: file_search_call
                id: filesearch-abc123
                queries:
                    - machine learning algorithms
                    - neural networks
                status: completed
        ResponsesOutputItemFileSearchCall:
            allOf:
                - $ref: '#/components/schemas/OutputItemFileSearchCall'
                - type: object
                  properties: {}
            example:
                type: file_search_call
                id: filesearch-abc123
                queries:
                    - machine learning algorithms
                    - neural networks
                status: completed
        ImageGenerationStatus:
            type: string
            enum:
                - in_progress
                - completed
                - generating
                - failed
            example: completed
            x-speakeasy-unknown-values: allow
        OutputItemImageGenerationCall:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - image_generation_call
                id:
                    type: string
                result:
                    type: string
                    nullable: true
                    default: null
                status:
                    $ref: '#/components/schemas/ImageGenerationStatus'
            required:
                - type
                - id
                - status
            example:
                type: image_generation_call
                id: imagegen-abc123
                result: iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg==
                status: completed
        ResponsesImageGenerationCall:
            allOf:
                - $ref: '#/components/schemas/OutputItemImageGenerationCall'
                - type: object
                  properties: {}
            example:
                type: image_generation_call
                id: imagegen-abc123
                result: iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAYAAAAfFcSJAAAADUlEQVR42mNk+M9QDwADhgGAWjR9awAAAABJRU5ErkJggg==
                status: completed
        ResponsesOutputItem:
            anyOf:
                - $ref: '#/components/schemas/ResponsesOutputMessage'
                - $ref: '#/components/schemas/ResponsesOutputItemReasoning'
                - $ref: '#/components/schemas/ResponsesOutputItemFunctionCall'
                - $ref: '#/components/schemas/ResponsesWebSearchCallOutput'
                - $ref: '#/components/schemas/ResponsesOutputItemFileSearchCall'
                - $ref: '#/components/schemas/ResponsesImageGenerationCall'
            description: An output item from the response
            example:
                id: msg-abc123
                role: assistant
                type: message
                status: completed
                content:
                    - type: output_text
                      text: Hello! How can I help you today?
        ResponsesErrorField:
            type: object
            nullable: true
            properties:
                code:
                    type: string
                    enum:
                        - server_error
                        - rate_limit_exceeded
                        - invalid_prompt
                        - vector_store_timeout
                        - invalid_image
                        - invalid_image_format
                        - invalid_base64_image
                        - invalid_image_url
                        - image_too_large
                        - image_too_small
                        - image_parse_error
                        - image_content_policy_violation
                        - invalid_image_mode
                        - image_file_too_large
                        - unsupported_image_media_type
                        - empty_image_file
                        - failed_to_download_image
                        - image_file_not_found
                    x-speakeasy-unknown-values: allow
                message:
                    type: string
            required:
                - code
                - message
            description: Error information returned from the API
            example:
                code: rate_limit_exceeded
                message: Rate limit exceeded. Please try again later.
        OpenAIResponsesIncompleteDetails:
            type: object
            nullable: true
            properties:
                reason:
                    type: string
                    enum:
                        - max_output_tokens
                        - content_filter
                    x-speakeasy-unknown-values: allow
        OpenAIResponsesUsage:
            type: object
            properties:
                input_tokens:
                    type: number
                input_tokens_details:
                    type: object
                    properties:
                        cached_tokens:
                            type: number
                    required:
                        - cached_tokens
                output_tokens:
                    type: number
                output_tokens_details:
                    type: object
                    properties:
                        reasoning_tokens:
                            type: number
                    required:
                        - reasoning_tokens
                total_tokens:
                    type: number
            required:
                - input_tokens
                - input_tokens_details
                - output_tokens
                - output_tokens_details
                - total_tokens
        OpenResponsesUsage:
            allOf:
                - $ref: '#/components/schemas/OpenAIResponsesUsage'
                - type: object
                  nullable: true
                  properties:
                    cost:
                        type: number
                        nullable: true
                        description: Cost of the completion
                    is_byok:
                        type: boolean
                        description: Whether a request was made using a Bring Your Own Key configuration
                    cost_details:
                        type: object
                        properties:
                            upstream_inference_cost:
                                type: number
                                nullable: true
                            upstream_inference_input_cost:
                                type: number
                            upstream_inference_output_cost:
                                type: number
                        required:
                            - upstream_inference_input_cost
                            - upstream_inference_output_cost
            description: Token usage information for the response
            example:
                input_tokens: 10
                output_tokens: 25
                total_tokens: 35
                input_tokens_details:
                    cached_tokens: 0
                output_tokens_details:
                    reasoning_tokens: 0
                cost: 0.0012
                cost_details:
                    upstream_inference_cost: null
                    upstream_inference_input_cost: 0.0008
                    upstream_inference_output_cost: 0.0004
        ResponseInputText:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - input_text
                text:
                    type: string
            required:
                - type
                - text
            description: Text input content item
            example:
                type: input_text
                text: Hello, how can I help you?
        ResponseInputImage:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - input_image
                detail:
                    type: string
                    enum:
                        - auto
                        - high
                        - low
                    x-speakeasy-unknown-values: allow
                image_url:
                    type: string
                    nullable: true
            required:
                - type
                - detail
            description: Image input content item
            example:
                type: input_image
                detail: auto
                image_url: https://example.com/image.jpg
        ResponseInputFile:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - input_file
                file_id:
                    type: string
                    nullable: true
                file_data:
                    type: string
                filename:
                    type: string
                file_url:
                    type: string
            required:
                - type
            description: File input content item
            example:
                type: input_file
                file_id: file-abc123
                filename: document.pdf
        ResponseInputAudio:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - input_audio
                input_audio:
                    type: object
                    properties:
                        data:
                            type: string
                        format:
                            type: string
                            enum:
                                - mp3
                                - wav
                            x-speakeasy-unknown-values: allow
                    required:
                        - data
                        - format
            required:
                - type
                - input_audio
            description: Audio input content item
            example:
                type: input_audio
                input_audio:
                    data: SGVsbG8gV29ybGQ=
                    format: mp3
        ToolCallStatus:
            type: string
            nullable: true
            enum:
                - in_progress
                - completed
                - incomplete
            example: completed
            x-speakeasy-unknown-values: allow
        OpenAIResponsesInput:
            anyOf:
                - type: string
                - type: array
                  items:
                    anyOf:
                        - type: object
                          properties:
                            type:
                                type: string
                                enum:
                                    - message
                            role:
                                anyOf:
                                    - type: string
                                      enum:
                                        - user
                                    - type: string
                                      enum:
                                        - system
                                    - type: string
                                      enum:
                                        - assistant
                                    - type: string
                                      enum:
                                        - developer
                            content:
                                anyOf:
                                    - type: array
                                      items:
                                        oneOf:
                                            - $ref: '#/components/schemas/ResponseInputText'
                                            - $ref: '#/components/schemas/ResponseInputImage'
                                            - $ref: '#/components/schemas/ResponseInputFile'
                                            - $ref: '#/components/schemas/ResponseInputAudio'
                                        discriminator:
                                            propertyName: type
                                            mapping:
                                                input_text: '#/components/schemas/ResponseInputText'
                                                input_image: '#/components/schemas/ResponseInputImage'
                                                input_file: '#/components/schemas/ResponseInputFile'
                                                input_audio: '#/components/schemas/ResponseInputAudio'
                                    - type: string
                          required:
                            - role
                            - content
                        - type: object
                          properties:
                            id:
                                type: string
                            type:
                                type: string
                                enum:
                                    - message
                            role:
                                anyOf:
                                    - type: string
                                      enum:
                                        - user
                                    - type: string
                                      enum:
                                        - system
                                    - type: string
                                      enum:
                                        - developer
                            content:
                                type: array
                                items:
                                    oneOf:
                                        - $ref: '#/components/schemas/ResponseInputText'
                                        - $ref: '#/components/schemas/ResponseInputImage'
                                        - $ref: '#/components/schemas/ResponseInputFile'
                                        - $ref: '#/components/schemas/ResponseInputAudio'
                                    discriminator:
                                        propertyName: type
                                        mapping:
                                            input_text: '#/components/schemas/ResponseInputText'
                                            input_image: '#/components/schemas/ResponseInputImage'
                                            input_file: '#/components/schemas/ResponseInputFile'
                                            input_audio: '#/components/schemas/ResponseInputAudio'
                          required:
                            - id
                            - role
                            - content
                        - type: object
                          properties:
                            type:
                                type: string
                                enum:
                                    - function_call_output
                            id:
                                type: string
                                nullable: true
                            call_id:
                                type: string
                            output:
                                type: string
                            status:
                                $ref: '#/components/schemas/ToolCallStatus'
                          required:
                            - type
                            - call_id
                            - output
                        - type: object
                          properties:
                            type:
                                type: string
                                enum:
                                    - function_call
                            call_id:
                                type: string
                            name:
                                type: string
                            arguments:
                                type: string
                            id:
                                type: string
                            status:
                                $ref: '#/components/schemas/ToolCallStatus'
                          required:
                            - type
                            - call_id
                            - name
                            - arguments
                        - $ref: '#/components/schemas/OutputItemImageGenerationCall'
                        - $ref: '#/components/schemas/OutputMessage'
                - nullable: true
        OpenResponsesRequestMetadata:
            type: object
            nullable: true
            additionalProperties:
                type: string
                maxLength: 512
            description: >-
                Metadata key-value pairs for the request. Keys must be ≤64 characters and cannot contain brackets. Values must be ≤512 characters. Maximum 16 pairs allowed.
            example:
                user_id: '123'
                session_id: abc-def-ghi
        OpenResponsesFunctionTool:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - function
                name:
                    type: string
                description:
                    type: string
                    nullable: true
                strict:
                    type: boolean
                    nullable: true
                parameters:
                    type: object
                    nullable: true
                    additionalProperties:
                        nullable: true
            required:
                - type
                - name
                - parameters
            description: Function tool definition
            example:
                type: function
                name: get_weather
                description: Get the current weather in a location
                parameters:
                    type: object
                    properties:
                        location:
                            type: string
                            description: The city and state
                        unit:
                            type: string
                            enum:
                                - celsius
                                - fahrenheit
                            x-speakeasy-unknown-values: allow
                    required:
                        - location
        ResponsesSearchContextSize:
            type: string
            enum:
                - low
                - medium
                - high
            description: Size of the search context for web search tools
            example: medium
            x-speakeasy-unknown-values: allow
        WebSearchPreviewToolUserLocation:
            type: object
            nullable: true
            properties:
                type:
                    type: string
                    enum:
                        - approximate
                city:
                    type: string
                    nullable: true
                country:
                    type: string
                    nullable: true
                region:
                    type: string
                    nullable: true
                timezone:
                    type: string
                    nullable: true
            required:
                - type
        OpenResponsesWebSearchPreviewTool:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - web_search_preview
                search_context_size:
                    $ref: '#/components/schemas/ResponsesSearchContextSize'
                user_location:
                    $ref: '#/components/schemas/WebSearchPreviewToolUserLocation'
            required:
                - type
            description: Web search preview tool configuration
            example:
                type: web_search_preview
        OpenResponsesWebSearchPreview20250311Tool:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - web_search_preview_2025_03_11
                search_context_size:
                    $ref: '#/components/schemas/ResponsesSearchContextSize'
                user_location:
                    $ref: '#/components/schemas/WebSearchPreviewToolUserLocation'
            required:
                - type
            description: Web search preview tool configuration (2025-03-11 version)
            example:
                type: web_search_preview_2025_03_11
        ResponsesWebSearchUserLocation:
            type: object
            nullable: true
            properties:
                type:
                    type: string
                    enum:
                        - approximate
                city:
                    type: string
                    nullable: true
                country:
                    type: string
                    nullable: true
                region:
                    type: string
                    nullable: true
                timezone:
                    type: string
                    nullable: true
            description: User location information for web search
            example:
                type: approximate
                city: San Francisco
                country: USA
                region: California
                timezone: America/Los_Angeles
        OpenResponsesWebSearchTool:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - web_search
                filters:
                    type: object
                    nullable: true
                    properties:
                        allowed_domains:
                            type: array
                            nullable: true
                            items:
                                type: string
                search_context_size:
                    $ref: '#/components/schemas/ResponsesSearchContextSize'
                user_location:
                    $ref: '#/components/schemas/ResponsesWebSearchUserLocation'
            required:
                - type
            description: Web search tool configuration
            example:
                type: web_search
                filters:
                    allowed_domains:
                        - example.com
        OpenResponsesWebSearch20250826Tool:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - web_search_2025_08_26
                filters:
                    type: object
                    nullable: true
                    properties:
                        allowed_domains:
                            type: array
                            nullable: true
                            items:
                                type: string
                search_context_size:
                    $ref: '#/components/schemas/ResponsesSearchContextSize'
                user_location:
                    $ref: '#/components/schemas/ResponsesWebSearchUserLocation'
            required:
                - type
            description: Web search tool configuration (2025-08-26 version)
            example:
                type: web_search_2025_08_26
                filters:
                    allowed_domains:
                        - example.com
        OpenAIResponsesToolChoice:
            anyOf:
                - type: string
                  enum:
                    - auto
                - type: string
                  enum:
                    - none
                - type: string
                  enum:
                    - required
                - type: object
                  properties:
                    type:
                        type: string
                        enum:
                            - function
                    name:
                        type: string
                  required:
                    - type
                    - name
                - type: object
                  properties:
                    type:
                        anyOf:
                            - type: string
                              enum:
                                - web_search_preview_2025_03_11
                            - type: string
                              enum:
                                - web_search_preview
                  required:
                    - type
        OpenAIResponsesPrompt:
            type: object
            nullable: true
            properties:
                id:
                    type: string
                variables:
                    type: object
                    nullable: true
                    additionalProperties:
                        anyOf:
                            - type: string
                            - $ref: '#/components/schemas/ResponseInputText'
                            - $ref: '#/components/schemas/ResponseInputImage'
                            - $ref: '#/components/schemas/ResponseInputFile'
            required:
                - id
        OpenAIResponsesReasoningEffort:
            type: string
            nullable: true
            enum:
                - xhigh
                - high
                - medium
                - low
                - minimal
                - none
            x-speakeasy-unknown-values: allow
        ReasoningSummaryVerbosity:
            type: string
            enum:
                - auto
                - concise
                - detailed
            x-speakeasy-unknown-values: allow
        OpenAIResponsesReasoningConfig:
            type: object
            nullable: true
            properties:
                effort:
                    $ref: '#/components/schemas/OpenAIResponsesReasoningEffort'
                summary:
                    $ref: '#/components/schemas/ReasoningSummaryVerbosity'
        OpenAIResponsesServiceTier:
            type: string
            nullable: true
            enum:
                - auto
                - default
                - flex
                - priority
                - scale
            x-speakeasy-unknown-values: allow
        OpenAIResponsesTruncation:
            type: string
            nullable: true
            enum:
                - auto
                - disabled
            x-speakeasy-unknown-values: allow
        ResponsesFormatText:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - text
            required:
                - type
            description: Plain text response format
            example:
                type: text
        ResponsesFormatJSONObject:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - json_object
            required:
                - type
            description: JSON object response format
            example:
                type: json_object
        ResponsesFormatTextJSONSchemaConfig:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - json_schema
                name:
                    type: string
                description:
                    type: string
                strict:
                    type: boolean
                    nullable: true
                schema:
                    type: object
                    additionalProperties:
                        nullable: true
            required:
                - type
                - name
                - schema
            description: JSON schema constrained response format
            example:
                type: json_schema
                name: user_info
                description: User information schema
                schema:
                    type: object
                    properties:
                        name:
                            type: string
                        age:
                            type: number
                    required:
                        - name
        ResponseFormatTextConfig:
            anyOf:
                - $ref: '#/components/schemas/ResponsesFormatText'
                - $ref: '#/components/schemas/ResponsesFormatJSONObject'
                - $ref: '#/components/schemas/ResponsesFormatTextJSONSchemaConfig'
            description: Text response format configuration
            example:
                type: text
        ResponseTextConfig:
            type: object
            properties:
                format:
                    $ref: '#/components/schemas/ResponseFormatTextConfig'
                verbosity:
                    type: string
                    nullable: true
                    enum:
                        - high
                        - low
                        - medium
                    x-speakeasy-unknown-values: allow
            description: Text output configuration including format and verbosity
            example:
                format:
                    type: text
                verbosity: medium
        OpenAIResponsesNonStreamingResponse:
            type: object
            properties:
                id:
                    type: string
                object:
                    type: string
                    enum:
                        - response
                created_at:
                    type: number
                model:
                    type: string
                status:
                    $ref: '#/components/schemas/OpenAIResponsesResponseStatus'
                completed_at:
                    type: number
                    nullable: true
                output:
                    type: array
                    items:
                        oneOf:
                            - $ref: '#/components/schemas/OutputMessage'
                            - $ref: '#/components/schemas/OutputItemReasoning'
                            - $ref: '#/components/schemas/OutputItemFunctionCall'
                            - $ref: '#/components/schemas/OutputItemWebSearchCall'
                            - $ref: '#/components/schemas/OutputItemFileSearchCall'
                            - $ref: '#/components/schemas/OutputItemImageGenerationCall'
                        discriminator:
                            propertyName: type
                            mapping:
                                message: '#/components/schemas/OutputMessage'
                                reasoning: '#/components/schemas/OutputItemReasoning'
                                function_call: '#/components/schemas/OutputItemFunctionCall'
                                web_search_call: '#/components/schemas/OutputItemWebSearchCall'
                                file_search_call: '#/components/schemas/OutputItemFileSearchCall'
                                image_generation_call: '#/components/schemas/OutputItemImageGenerationCall'
                user:
                    type: string
                    nullable: true
                output_text:
                    type: string
                prompt_cache_key:
                    type: string
                    nullable: true
                safety_identifier:
                    type: string
                    nullable: true
                error:
                    $ref: '#/components/schemas/ResponsesErrorField'
                incomplete_details:
                    $ref: '#/components/schemas/OpenAIResponsesIncompleteDetails'
                usage:
                    $ref: '#/components/schemas/OpenAIResponsesUsage'
                max_tool_calls:
                    type: number
                    nullable: true
                top_logprobs:
                    type: number
                max_output_tokens:
                    type: number
                    nullable: true
                temperature:
                    type: number
                    nullable: true
                top_p:
                    type: number
                    nullable: true
                presence_penalty:
                    type: number
                    nullable: true
                frequency_penalty:
                    type: number
                    nullable: true
                instructions:
                    $ref: '#/components/schemas/OpenAIResponsesInput'
                metadata:
                    $ref: '#/components/schemas/OpenResponsesRequestMetadata'
                tools:
                    type: array
                    items:
                        oneOf:
                            - allOf:
                                - $ref: '#/components/schemas/OpenResponsesFunctionTool'
                                - type: object
                                  properties: {}
                              description: Function tool definition
                              example:
                                type: function
                                name: get_weather
                                description: Get the current weather in a location
                                parameters:
                                    type: object
                                    properties:
                                        location:
                                            type: string
                                            description: The city and state
                                        unit:
                                            type: string
                                            enum:
                                                - celsius
                                                - fahrenheit
                                            x-speakeasy-unknown-values: allow
                                    required:
                                        - location
                            - $ref: '#/components/schemas/OpenResponsesWebSearchPreviewTool'
                            - $ref: '#/components/schemas/OpenResponsesWebSearchPreview20250311Tool'
                            - $ref: '#/components/schemas/OpenResponsesWebSearchTool'
                            - $ref: '#/components/schemas/OpenResponsesWebSearch20250826Tool'
                tool_choice:
                    $ref: '#/components/schemas/OpenAIResponsesToolChoice'
                parallel_tool_calls:
                    type: boolean
                prompt:
                    $ref: '#/components/schemas/OpenAIResponsesPrompt'
                background:
                    type: boolean
                    nullable: true
                previous_response_id:
                    type: string
                    nullable: true
                reasoning:
                    $ref: '#/components/schemas/OpenAIResponsesReasoningConfig'
                service_tier:
                    $ref: '#/components/schemas/OpenAIResponsesServiceTier'
                store:
                    type: boolean
                truncation:
                    $ref: '#/components/schemas/OpenAIResponsesTruncation'
                text:
                    $ref: '#/components/schemas/ResponseTextConfig'
            required:
                - id
                - object
                - created_at
                - model
                - status
                - completed_at
                - output
                - error
                - incomplete_details
                - temperature
                - top_p
                - presence_penalty
                - frequency_penalty
                - instructions
                - metadata
                - tools
                - tool_choice
                - parallel_tool_calls
        OpenResponsesNonStreamingResponse:
            allOf:
                - $ref: '#/components/schemas/OpenAIResponsesNonStreamingResponse'
                - type: object
                  properties:
                    output:
                        type: array
                        items:
                            $ref: '#/components/schemas/ResponsesOutputItem'
                    usage:
                        $ref: '#/components/schemas/OpenResponsesUsage'
            description: Complete non-streaming response from the Responses API
            example:
                id: resp-abc123
                object: response
                created_at: 1704067200
                model: gpt-4
                status: completed
                output:
                    - type: message
                      id: msg-abc123
                      status: completed
                      role: assistant
                      content:
                        - type: output_text
                          text: Hello! How can I help you today?
                          annotations: []
                usage:
                    input_tokens: 10
                    output_tokens: 25
                    total_tokens: 35
                    input_tokens_details:
                        cached_tokens: 0
                    output_tokens_details:
                        reasoning_tokens: 0
                tools: []
                tool_choice: auto
                parallel_tool_calls: true
                error: null
                incomplete_details: null
                temperature: null
                top_p: null
                max_output_tokens: null
                metadata: null
                instructions: null
        OpenResponsesCreatedEvent:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - response.created
                response:
                    $ref: '#/components/schemas/OpenAIResponsesNonStreamingResponse'
                sequence_number:
                    type: number
            required:
                - type
                - response
                - sequence_number
            description: Event emitted when a response is created
            example:
                type: response.created
                response:
                    id: resp-abc123
                    object: response
                    created_at: 1704067200
                    model: gpt-4
                    status: in_progress
                    output: []
                    tools: []
                    tool_choice: auto
                    parallel_tool_calls: true
                    error: null
                    incomplete_details: null
                    metadata: null
                    instructions: null
                    temperature: null
                    top_p: null
                    max_output_tokens: null
                sequence_number: 0
        OpenResponsesInProgressEvent:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - response.in_progress
                response:
                    $ref: '#/components/schemas/OpenAIResponsesNonStreamingResponse'
                sequence_number:
                    type: number
            required:
                - type
                - response
                - sequence_number
            description: Event emitted when a response is in progress
            example:
                type: response.in_progress
                response:
                    id: resp-abc123
                    object: response
                    created_at: 1704067200
                    model: gpt-4
                    status: in_progress
                    output: []
                    tools: []
                    tool_choice: auto
                    parallel_tool_calls: true
                    error: null
                    incomplete_details: null
                    metadata: null
                    instructions: null
                    temperature: null
                    top_p: null
                    max_output_tokens: null
                sequence_number: 1
        OpenResponsesCompletedEvent:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - response.completed
                response:
                    $ref: '#/components/schemas/OpenAIResponsesNonStreamingResponse'
                sequence_number:
                    type: number
            required:
                - type
                - response
                - sequence_number
            description: Event emitted when a response has completed successfully
            example:
                type: response.completed
                response:
                    id: resp-abc123
                    object: response
                    created_at: 1704067200
                    model: gpt-4
                    status: completed
                    output:
                        - id: item-1
                          type: message
                          status: completed
                          role: assistant
                          content:
                            - type: output_text
                              text: Hello! How can I help you?
                              annotations: []
                    tools: []
                    tool_choice: auto
                    parallel_tool_calls: true
                    error: null
                    incomplete_details: null
                    metadata: null
                    instructions: null
                    temperature: null
                    top_p: null
                    max_output_tokens: null
                sequence_number: 10
        OpenResponsesIncompleteEvent:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - response.incomplete
                response:
                    $ref: '#/components/schemas/OpenAIResponsesNonStreamingResponse'
                sequence_number:
                    type: number
            required:
                - type
                - response
                - sequence_number
            description: Event emitted when a response is incomplete
            example:
                type: response.incomplete
                response:
                    id: resp-abc123
                    object: response
                    created_at: 1704067200
                    model: gpt-4
                    status: incomplete
                    output: []
                    tools: []
                    tool_choice: auto
                    parallel_tool_calls: true
                    error: null
                    incomplete_details: null
                    metadata: null
                    instructions: null
                    temperature: null
                    top_p: null
                    max_output_tokens: null
                sequence_number: 5
        OpenResponsesFailedEvent:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - response.failed
                response:
                    $ref: '#/components/schemas/OpenAIResponsesNonStreamingResponse'
                sequence_number:
                    type: number
            required:
                - type
                - response
                - sequence_number
            description: Event emitted when a response has failed
            example:
                type: response.failed
                response:
                    id: resp-abc123
                    object: response
                    created_at: 1704067200
                    model: gpt-4
                    status: failed
                    output: []
                    tools: []
                    tool_choice: auto
                    parallel_tool_calls: true
                    error: null
                    incomplete_details: null
                    metadata: null
                    instructions: null
                    temperature: null
                    top_p: null
                    max_output_tokens: null
                sequence_number: 3
        OpenAIResponsesErrorEvent:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - error
                code:
                    type: string
                    nullable: true
                message:
                    type: string
                param:
                    type: string
                    nullable: true
                sequence_number:
                    type: number
            required:
                - type
                - code
                - message
                - param
                - sequence_number
            description: Event emitted when an error occurs during streaming
            example:
                type: error
                code: rate_limit_exceeded
                message: Rate limit exceeded. Please try again later.
                param: null
                sequence_number: 2
        OpenResponsesErrorEvent:
            allOf:
                - $ref: '#/components/schemas/OpenAIResponsesErrorEvent'
                - type: object
                  properties: {}
            description: Event emitted when an error occurs during streaming
            example:
                type: error
                code: rate_limit_exceeded
                message: Rate limit exceeded. Please try again later.
                param: null
                sequence_number: 2
        OpenResponsesOutputItemAddedEvent:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - response.output_item.added
                output_index:
                    type: number
                item:
                    oneOf:
                        - $ref: '#/components/schemas/OutputMessage'
                        - $ref: '#/components/schemas/OutputItemReasoning'
                        - $ref: '#/components/schemas/OutputItemFunctionCall'
                        - $ref: '#/components/schemas/OutputItemWebSearchCall'
                        - $ref: '#/components/schemas/OutputItemFileSearchCall'
                        - $ref: '#/components/schemas/OutputItemImageGenerationCall'
                    discriminator:
                        propertyName: type
                        mapping:
                            message: '#/components/schemas/OutputMessage'
                            reasoning: '#/components/schemas/OutputItemReasoning'
                            function_call: '#/components/schemas/OutputItemFunctionCall'
                            web_search_call: '#/components/schemas/OutputItemWebSearchCall'
                            file_search_call: '#/components/schemas/OutputItemFileSearchCall'
                            image_generation_call: '#/components/schemas/OutputItemImageGenerationCall'
                sequence_number:
                    type: number
            required:
                - type
                - output_index
                - item
                - sequence_number
            description: Event emitted when a new output item is added to the response
            example:
                type: response.output_item.added
                output_index: 0
                item:
                    id: item-1
                    type: message
                    status: in_progress
                    role: assistant
                    content: []
                sequence_number: 2
        OpenResponsesOutputItemDoneEvent:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - response.output_item.done
                output_index:
                    type: number
                item:
                    oneOf:
                        - $ref: '#/components/schemas/OutputMessage'
                        - $ref: '#/components/schemas/OutputItemReasoning'
                        - $ref: '#/components/schemas/OutputItemFunctionCall'
                        - $ref: '#/components/schemas/OutputItemWebSearchCall'
                        - $ref: '#/components/schemas/OutputItemFileSearchCall'
                        - $ref: '#/components/schemas/OutputItemImageGenerationCall'
                    discriminator:
                        propertyName: type
                        mapping:
                            message: '#/components/schemas/OutputMessage'
                            reasoning: '#/components/schemas/OutputItemReasoning'
                            function_call: '#/components/schemas/OutputItemFunctionCall'
                            web_search_call: '#/components/schemas/OutputItemWebSearchCall'
                            file_search_call: '#/components/schemas/OutputItemFileSearchCall'
                            image_generation_call: '#/components/schemas/OutputItemImageGenerationCall'
                sequence_number:
                    type: number
            required:
                - type
                - output_index
                - item
                - sequence_number
            description: Event emitted when an output item is complete
            example:
                type: response.output_item.done
                output_index: 0
                item:
                    id: item-1
                    type: message
                    status: completed
                    role: assistant
                    content:
                        - type: output_text
                          text: Hello! How can I help you?
                          annotations: []
                sequence_number: 8
        OpenResponsesContentPartAddedEvent:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - response.content_part.added
                output_index:
                    type: number
                item_id:
                    type: string
                content_index:
                    type: number
                part:
                    anyOf:
                        - $ref: '#/components/schemas/ResponseOutputText'
                        - $ref: '#/components/schemas/OpenAIResponsesRefusalContent'
                sequence_number:
                    type: number
            required:
                - type
                - output_index
                - item_id
                - content_index
                - part
                - sequence_number
            description: Event emitted when a new content part is added to an output item
            example:
                type: response.content_part.added
                output_index: 0
                item_id: item-1
                content_index: 0
                part:
                    type: output_text
                    text: ''
                    annotations: []
                sequence_number: 3
        OpenResponsesContentPartDoneEvent:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - response.content_part.done
                output_index:
                    type: number
                item_id:
                    type: string
                content_index:
                    type: number
                part:
                    anyOf:
                        - $ref: '#/components/schemas/ResponseOutputText'
                        - $ref: '#/components/schemas/OpenAIResponsesRefusalContent'
                sequence_number:
                    type: number
            required:
                - type
                - output_index
                - item_id
                - content_index
                - part
                - sequence_number
            description: Event emitted when a content part is complete
            example:
                type: response.content_part.done
                output_index: 0
                item_id: item-1
                content_index: 0
                part:
                    type: output_text
                    text: Hello! How can I help you?
                    annotations: []
                sequence_number: 7
        OpenResponsesTopLogprobs:
            type: object
            properties:
                token:
                    type: string
                logprob:
                    type: number
            description: Alternative token with its log probability
            example:
                token: hello
                logprob: -0.5
        OpenResponsesLogProbs:
            type: object
            properties:
                logprob:
                    type: number
                token:
                    type: string
                top_logprobs:
                    type: array
                    items:
                        $ref: '#/components/schemas/OpenResponsesTopLogprobs'
            required:
                - logprob
                - token
            description: Log probability information for a token
            example:
                logprob: -0.1
                token: world
                top_logprobs:
                    - token: hello
                      logprob: -0.5
        OpenResponsesTextDeltaEvent:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - response.output_text.delta
                logprobs:
                    type: array
                    items:
                        $ref: '#/components/schemas/OpenResponsesLogProbs'
                output_index:
                    type: number
                item_id:
                    type: string
                content_index:
                    type: number
                delta:
                    type: string
                sequence_number:
                    type: number
            required:
                - type
                - logprobs
                - output_index
                - item_id
                - content_index
                - delta
                - sequence_number
            description: Event emitted when a text delta is streamed
            example:
                type: response.output_text.delta
                logprobs: []
                output_index: 0
                item_id: item-1
                content_index: 0
                delta: Hello
                sequence_number: 4
        OpenResponsesTextDoneEvent:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - response.output_text.done
                output_index:
                    type: number
                item_id:
                    type: string
                content_index:
                    type: number
                text:
                    type: string
                sequence_number:
                    type: number
                logprobs:
                    type: array
                    items:
                        $ref: '#/components/schemas/OpenResponsesLogProbs'
            required:
                - type
                - output_index
                - item_id
                - content_index
                - text
                - sequence_number
                - logprobs
            description: Event emitted when text streaming is complete
            example:
                type: response.output_text.done
                output_index: 0
                item_id: item-1
                content_index: 0
                text: Hello! How can I help you?
                sequence_number: 6
                logprobs: []
        OpenResponsesRefusalDeltaEvent:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - response.refusal.delta
                output_index:
                    type: number
                item_id:
                    type: string
                content_index:
                    type: number
                delta:
                    type: string
                sequence_number:
                    type: number
            required:
                - type
                - output_index
                - item_id
                - content_index
                - delta
                - sequence_number
            description: Event emitted when a refusal delta is streamed
            example:
                type: response.refusal.delta
                output_index: 0
                item_id: item-1
                content_index: 0
                delta: I'm sorry
                sequence_number: 4
        OpenResponsesRefusalDoneEvent:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - response.refusal.done
                output_index:
                    type: number
                item_id:
                    type: string
                content_index:
                    type: number
                refusal:
                    type: string
                sequence_number:
                    type: number
            required:
                - type
                - output_index
                - item_id
                - content_index
                - refusal
                - sequence_number
            description: Event emitted when refusal streaming is complete
            example:
                type: response.refusal.done
                output_index: 0
                item_id: item-1
                content_index: 0
                refusal: I'm sorry, but I can't assist with that request.
                sequence_number: 6
        OpenResponsesOutputTextAnnotationAddedEvent:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - response.output_text.annotation.added
                output_index:
                    type: number
                item_id:
                    type: string
                content_index:
                    type: number
                sequence_number:
                    type: number
                annotation_index:
                    type: number
                annotation:
                    $ref: '#/components/schemas/OpenAIResponsesAnnotation'
            required:
                - type
                - output_index
                - item_id
                - content_index
                - sequence_number
                - annotation_index
                - annotation
            description: Event emitted when a text annotation is added to output
            example:
                type: response.output_text.annotation.added
                output_index: 0
                item_id: item-1
                content_index: 0
                sequence_number: 5
                annotation_index: 0
                annotation:
                    type: url_citation
                    url: https://example.com
                    title: Example
                    start_index: 0
                    end_index: 7
        OpenResponsesFunctionCallArgumentsDeltaEvent:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - response.function_call_arguments.delta
                item_id:
                    type: string
                output_index:
                    type: number
                delta:
                    type: string
                sequence_number:
                    type: number
            required:
                - type
                - item_id
                - output_index
                - delta
                - sequence_number
            description: Event emitted when function call arguments are being streamed
            example:
                type: response.function_call_arguments.delta
                item_id: item-1
                output_index: 0
                delta: '{"city": "San'
                sequence_number: 4
        OpenResponsesFunctionCallArgumentsDoneEvent:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - response.function_call_arguments.done
                item_id:
                    type: string
                output_index:
                    type: number
                name:
                    type: string
                arguments:
                    type: string
                sequence_number:
                    type: number
            required:
                - type
                - item_id
                - output_index
                - name
                - arguments
                - sequence_number
            description: Event emitted when function call arguments streaming is complete
            example:
                type: response.function_call_arguments.done
                item_id: item-1
                output_index: 0
                name: get_weather
                arguments: '{"city": "San Francisco", "units": "celsius"}'
                sequence_number: 6
        OpenAIResponsesReasoningDeltaEvent:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - response.reasoning_text.delta
                output_index:
                    type: number
                item_id:
                    type: string
                content_index:
                    type: number
                delta:
                    type: string
                sequence_number:
                    type: number
            required:
                - type
                - output_index
                - item_id
                - content_index
                - delta
                - sequence_number
            description: Event emitted when reasoning text delta is streamed
            example:
                type: response.reasoning_text.delta
                output_index: 0
                item_id: item-1
                content_index: 0
                delta: First, we need
                sequence_number: 4
        OpenResponsesReasoningDeltaEvent:
            allOf:
                - $ref: '#/components/schemas/OpenAIResponsesReasoningDeltaEvent'
                - type: object
                  properties: {}
            description: Event emitted when reasoning text delta is streamed
            example:
                type: response.reasoning_text.delta
                output_index: 0
                item_id: item-1
                content_index: 0
                delta: First, we need
                sequence_number: 4
        OpenAIResponsesReasoningDoneEvent:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - response.reasoning_text.done
                output_index:
                    type: number
                item_id:
                    type: string
                content_index:
                    type: number
                text:
                    type: string
                sequence_number:
                    type: number
            required:
                - type
                - output_index
                - item_id
                - content_index
                - text
                - sequence_number
            description: Event emitted when reasoning text streaming is complete
            example:
                type: response.reasoning_text.done
                output_index: 0
                item_id: item-1
                content_index: 0
                text: First, we need to identify the key components and then combine them logically.
                sequence_number: 6
        OpenResponsesReasoningDoneEvent:
            allOf:
                - $ref: '#/components/schemas/OpenAIResponsesReasoningDoneEvent'
                - type: object
                  properties: {}
            description: Event emitted when reasoning text streaming is complete
            example:
                type: response.reasoning_text.done
                output_index: 0
                item_id: item-1
                content_index: 0
                text: First, we need to identify the key components and then combine them logically.
                sequence_number: 6
        OpenAIResponsesReasoningSummaryPartAddedEvent:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - response.reasoning_summary_part.added
                output_index:
                    type: number
                item_id:
                    type: string
                summary_index:
                    type: number
                part:
                    $ref: '#/components/schemas/ReasoningSummaryText'
                sequence_number:
                    type: number
            required:
                - type
                - output_index
                - item_id
                - summary_index
                - part
                - sequence_number
            description: Event emitted when a reasoning summary part is added
            example:
                type: response.reasoning_summary_part.added
                output_index: 0
                item_id: item-1
                summary_index: 0
                part:
                    type: summary_text
                    text: ''
                sequence_number: 3
        OpenResponsesReasoningSummaryPartAddedEvent:
            allOf:
                - $ref: '#/components/schemas/OpenAIResponsesReasoningSummaryPartAddedEvent'
                - type: object
                  properties: {}
            description: Event emitted when a reasoning summary part is added
            example:
                type: response.reasoning_summary_part.added
                output_index: 0
                item_id: item-1
                summary_index: 0
                part:
                    type: summary_text
                    text: ''
                sequence_number: 3
        OpenResponsesReasoningSummaryPartDoneEvent:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - response.reasoning_summary_part.done
                output_index:
                    type: number
                item_id:
                    type: string
                summary_index:
                    type: number
                part:
                    $ref: '#/components/schemas/ReasoningSummaryText'
                sequence_number:
                    type: number
            required:
                - type
                - output_index
                - item_id
                - summary_index
                - part
                - sequence_number
            description: Event emitted when a reasoning summary part is complete
            example:
                type: response.reasoning_summary_part.done
                output_index: 0
                item_id: item-1
                summary_index: 0
                part:
                    type: summary_text
                    text: Analyzing the problem step by step to find the optimal solution.
                sequence_number: 7
        OpenAIResponsesReasoningSummaryTextDeltaEvent:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - response.reasoning_summary_text.delta
                item_id:
                    type: string
                output_index:
                    type: number
                summary_index:
                    type: number
                delta:
                    type: string
                sequence_number:
                    type: number
            required:
                - type
                - item_id
                - output_index
                - summary_index
                - delta
                - sequence_number
            description: Event emitted when reasoning summary text delta is streamed
            example:
                type: response.reasoning_summary_text.delta
                item_id: item-1
                output_index: 0
                summary_index: 0
                delta: Analyzing
                sequence_number: 4
        OpenResponsesReasoningSummaryTextDeltaEvent:
            allOf:
                - $ref: '#/components/schemas/OpenAIResponsesReasoningSummaryTextDeltaEvent'
                - type: object
                  properties: {}
            description: Event emitted when reasoning summary text delta is streamed
            example:
                type: response.reasoning_summary_text.delta
                item_id: item-1
                output_index: 0
                summary_index: 0
                delta: Analyzing
                sequence_number: 4
        OpenAIResponsesReasoningSummaryTextDoneEvent:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - response.reasoning_summary_text.done
                item_id:
                    type: string
                output_index:
                    type: number
                summary_index:
                    type: number
                text:
                    type: string
                sequence_number:
                    type: number
            required:
                - type
                - item_id
                - output_index
                - summary_index
                - text
                - sequence_number
            description: Event emitted when reasoning summary text streaming is complete
            example:
                type: response.reasoning_summary_text.done
                item_id: item-1
                output_index: 0
                summary_index: 0
                text: Analyzing the problem step by step to find the optimal solution.
                sequence_number: 6
        OpenResponsesReasoningSummaryTextDoneEvent:
            allOf:
                - $ref: '#/components/schemas/OpenAIResponsesReasoningSummaryTextDoneEvent'
                - type: object
                  properties: {}
            description: Event emitted when reasoning summary text streaming is complete
            example:
                type: response.reasoning_summary_text.done
                item_id: item-1
                output_index: 0
                summary_index: 0
                text: Analyzing the problem step by step to find the optimal solution.
                sequence_number: 6
        OpenAIResponsesImageGenCallInProgress:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - response.image_generation_call.in_progress
                item_id:
                    type: string
                output_index:
                    type: number
                sequence_number:
                    type: number
            required:
                - type
                - item_id
                - output_index
                - sequence_number
        OpenResponsesImageGenCallInProgress:
            allOf:
                - $ref: '#/components/schemas/OpenAIResponsesImageGenCallInProgress'
                - type: object
                  properties: {}
            description: Image generation call in progress
            example:
                type: response.image_generation_call.in_progress
                output_index: 0
                sequence_number: 1
                item_id: call-123
        OpenAIResponsesImageGenCallGenerating:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - response.image_generation_call.generating
                item_id:
                    type: string
                output_index:
                    type: number
                sequence_number:
                    type: number
            required:
                - type
                - item_id
                - output_index
                - sequence_number
        OpenResponsesImageGenCallGenerating:
            allOf:
                - $ref: '#/components/schemas/OpenAIResponsesImageGenCallGenerating'
                - type: object
                  properties: {}
            description: Image generation call is generating
            example:
                type: response.image_generation_call.generating
                output_index: 0
                sequence_number: 2
                item_id: call-123
        OpenAIResponsesImageGenCallPartialImage:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - response.image_generation_call.partial_image
                item_id:
                    type: string
                output_index:
                    type: number
                sequence_number:
                    type: number
                partial_image_b64:
                    type: string
                partial_image_index:
                    type: number
            required:
                - type
                - item_id
                - output_index
                - sequence_number
                - partial_image_b64
                - partial_image_index
        OpenResponsesImageGenCallPartialImage:
            allOf:
                - $ref: '#/components/schemas/OpenAIResponsesImageGenCallPartialImage'
                - type: object
                  properties: {}
            description: Image generation call with partial image
            example:
                type: response.image_generation_call.partial_image
                output_index: 0
                sequence_number: 3
                item_id: call-123
                partial_image_b64: base64encodedimage...
                partial_image_index: 0
        OpenAIResponsesImageGenCallCompleted:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - response.image_generation_call.completed
                item_id:
                    type: string
                output_index:
                    type: number
                sequence_number:
                    type: number
            required:
                - type
                - item_id
                - output_index
                - sequence_number
        OpenResponsesImageGenCallCompleted:
            allOf:
                - $ref: '#/components/schemas/OpenAIResponsesImageGenCallCompleted'
                - type: object
                  properties: {}
            description: Image generation call completed
            example:
                type: response.image_generation_call.completed
                output_index: 0
                sequence_number: 4
                item_id: call-123
        OpenResponsesStreamEvent:
            oneOf:
                - allOf:
                    - $ref: '#/components/schemas/OpenResponsesCreatedEvent'
                    - type: object
                      properties:
                        response:
                            $ref: '#/components/schemas/OpenResponsesNonStreamingResponse'
                  description: Event emitted when a response is created
                  example:
                    type: response.created
                    response:
                        id: resp-abc123
                        object: response
                        created_at: 1704067200
                        model: gpt-4
                        status: in_progress
                        output: []
                        tools: []
                        tool_choice: auto
                        parallel_tool_calls: true
                        error: null
                        incomplete_details: null
                        metadata: null
                        instructions: null
                        temperature: null
                        top_p: null
                        max_output_tokens: null
                    sequence_number: 0
                - allOf:
                    - $ref: '#/components/schemas/OpenResponsesInProgressEvent'
                    - type: object
                      properties:
                        response:
                            $ref: '#/components/schemas/OpenResponsesNonStreamingResponse'
                  description: Event emitted when a response is in progress
                  example:
                    type: response.in_progress
                    response:
                        id: resp-abc123
                        object: response
                        created_at: 1704067200
                        model: gpt-4
                        status: in_progress
                        output: []
                        tools: []
                        tool_choice: auto
                        parallel_tool_calls: true
                        error: null
                        incomplete_details: null
                        metadata: null
                        instructions: null
                        temperature: null
                        top_p: null
                        max_output_tokens: null
                    sequence_number: 1
                - allOf:
                    - $ref: '#/components/schemas/OpenResponsesCompletedEvent'
                    - type: object
                      properties:
                        response:
                            $ref: '#/components/schemas/OpenResponsesNonStreamingResponse'
                  description: Event emitted when a response has completed successfully
                  example:
                    type: response.completed
                    response:
                        id: resp-abc123
                        object: response
                        created_at: 1704067200
                        model: gpt-4
                        status: completed
                        output:
                            - id: item-1
                              type: message
                              status: completed
                              role: assistant
                              content:
                                - type: output_text
                                  text: Hello! How can I help you?
                                  annotations: []
                        tools: []
                        tool_choice: auto
                        parallel_tool_calls: true
                        error: null
                        incomplete_details: null
                        metadata: null
                        instructions: null
                        temperature: null
                        top_p: null
                        max_output_tokens: null
                    sequence_number: 10
                - allOf:
                    - $ref: '#/components/schemas/OpenResponsesIncompleteEvent'
                    - type: object
                      properties:
                        response:
                            $ref: '#/components/schemas/OpenResponsesNonStreamingResponse'
                  description: Event emitted when a response is incomplete
                  example:
                    type: response.incomplete
                    response:
                        id: resp-abc123
                        object: response
                        created_at: 1704067200
                        model: gpt-4
                        status: incomplete
                        output: []
                        tools: []
                        tool_choice: auto
                        parallel_tool_calls: true
                        error: null
                        incomplete_details: null
                        metadata: null
                        instructions: null
                        temperature: null
                        top_p: null
                        max_output_tokens: null
                    sequence_number: 5
                - allOf:
                    - $ref: '#/components/schemas/OpenResponsesFailedEvent'
                    - type: object
                      properties:
                        response:
                            $ref: '#/components/schemas/OpenResponsesNonStreamingResponse'
                  description: Event emitted when a response has failed
                  example:
                    type: response.failed
                    response:
                        id: resp-abc123
                        object: response
                        created_at: 1704067200
                        model: gpt-4
                        status: failed
                        output: []
                        tools: []
                        tool_choice: auto
                        parallel_tool_calls: true
                        error: null
                        incomplete_details: null
                        metadata: null
                        instructions: null
                        temperature: null
                        top_p: null
                        max_output_tokens: null
                    sequence_number: 3
                - $ref: '#/components/schemas/OpenResponsesErrorEvent'
                - allOf:
                    - $ref: '#/components/schemas/OpenResponsesOutputItemAddedEvent'
                    - type: object
                      properties:
                        item:
                            $ref: '#/components/schemas/ResponsesOutputItem'
                  description: Event emitted when a new output item is added to the response
                  example:
                    type: response.output_item.added
                    output_index: 0
                    item:
                        id: item-1
                        type: message
                        status: in_progress
                        role: assistant
                        content: []
                    sequence_number: 2
                - allOf:
                    - $ref: '#/components/schemas/OpenResponsesOutputItemDoneEvent'
                    - type: object
                      properties:
                        item:
                            $ref: '#/components/schemas/ResponsesOutputItem'
                  description: Event emitted when an output item is complete
                  example:
                    type: response.output_item.done
                    output_index: 0
                    item:
                        id: item-1
                        type: message
                        status: completed
                        role: assistant
                        content:
                            - type: output_text
                              text: Hello! How can I help you?
                              annotations: []
                    sequence_number: 8
                - allOf:
                    - $ref: '#/components/schemas/OpenResponsesContentPartAddedEvent'
                    - type: object
                      properties:
                        part:
                            anyOf:
                                - $ref: '#/components/schemas/ResponseOutputText'
                                - $ref: '#/components/schemas/ReasoningTextContent'
                                - $ref: '#/components/schemas/OpenAIResponsesRefusalContent'
                  description: Event emitted when a new content part is added to an output item
                  example:
                    type: response.content_part.added
                    output_index: 0
                    item_id: item-1
                    content_index: 0
                    part:
                        type: output_text
                        text: ''
                        annotations: []
                    sequence_number: 3
                - allOf:
                    - $ref: '#/components/schemas/OpenResponsesContentPartDoneEvent'
                    - type: object
                      properties:
                        part:
                            anyOf:
                                - $ref: '#/components/schemas/ResponseOutputText'
                                - $ref: '#/components/schemas/ReasoningTextContent'
                                - $ref: '#/components/schemas/OpenAIResponsesRefusalContent'
                  description: Event emitted when a content part is complete
                  example:
                    type: response.content_part.done
                    output_index: 0
                    item_id: item-1
                    content_index: 0
                    part:
                        type: output_text
                        text: Hello! How can I help you?
                        annotations: []
                    sequence_number: 7
                - allOf:
                    - $ref: '#/components/schemas/OpenResponsesTextDeltaEvent'
                    - type: object
                      properties: {}
                  description: Event emitted when a text delta is streamed
                  example:
                    type: response.output_text.delta
                    logprobs: []
                    output_index: 0
                    item_id: item-1
                    content_index: 0
                    delta: Hello
                    sequence_number: 4
                - allOf:
                    - $ref: '#/components/schemas/OpenResponsesTextDoneEvent'
                    - type: object
                      properties: {}
                  description: Event emitted when text streaming is complete
                  example:
                    type: response.output_text.done
                    output_index: 0
                    item_id: item-1
                    content_index: 0
                    text: Hello! How can I help you?
                    sequence_number: 6
                    logprobs: []
                - allOf:
                    - $ref: '#/components/schemas/OpenResponsesRefusalDeltaEvent'
                    - type: object
                      properties: {}
                  description: Event emitted when a refusal delta is streamed
                  example:
                    type: response.refusal.delta
                    output_index: 0
                    item_id: item-1
                    content_index: 0
                    delta: I'm sorry
                    sequence_number: 4
                - allOf:
                    - $ref: '#/components/schemas/OpenResponsesRefusalDoneEvent'
                    - type: object
                      properties: {}
                  description: Event emitted when refusal streaming is complete
                  example:
                    type: response.refusal.done
                    output_index: 0
                    item_id: item-1
                    content_index: 0
                    refusal: I'm sorry, but I can't assist with that request.
                    sequence_number: 6
                - allOf:
                    - $ref: '#/components/schemas/OpenResponsesOutputTextAnnotationAddedEvent'
                    - type: object
                      properties: {}
                  description: Event emitted when a text annotation is added to output
                  example:
                    type: response.output_text.annotation.added
                    output_index: 0
                    item_id: item-1
                    content_index: 0
                    sequence_number: 5
                    annotation_index: 0
                    annotation:
                        type: url_citation
                        url: https://example.com
                        title: Example
                        start_index: 0
                        end_index: 7
                - allOf:
                    - $ref: '#/components/schemas/OpenResponsesFunctionCallArgumentsDeltaEvent'
                    - type: object
                      properties: {}
                  description: Event emitted when function call arguments are being streamed
                  example:
                    type: response.function_call_arguments.delta
                    item_id: item-1
                    output_index: 0
                    delta: '{"city": "San'
                    sequence_number: 4
                - allOf:
                    - $ref: '#/components/schemas/OpenResponsesFunctionCallArgumentsDoneEvent'
                    - type: object
                      properties: {}
                  description: Event emitted when function call arguments streaming is complete
                  example:
                    type: response.function_call_arguments.done
                    item_id: item-1
                    output_index: 0
                    name: get_weather
                    arguments: '{"city": "San Francisco", "units": "celsius"}'
                    sequence_number: 6
                - $ref: '#/components/schemas/OpenResponsesReasoningDeltaEvent'
                - $ref: '#/components/schemas/OpenResponsesReasoningDoneEvent'
                - $ref: '#/components/schemas/OpenResponsesReasoningSummaryPartAddedEvent'
                - allOf:
                    - $ref: '#/components/schemas/OpenResponsesReasoningSummaryPartDoneEvent'
                    - type: object
                      properties: {}
                  description: Event emitted when a reasoning summary part is complete
                  example:
                    type: response.reasoning_summary_part.done
                    output_index: 0
                    item_id: item-1
                    summary_index: 0
                    part:
                        type: summary_text
                        text: Analyzing the problem step by step to find the optimal solution.
                    sequence_number: 7
                - $ref: '#/components/schemas/OpenResponsesReasoningSummaryTextDeltaEvent'
                - $ref: '#/components/schemas/OpenResponsesReasoningSummaryTextDoneEvent'
                - $ref: '#/components/schemas/OpenResponsesImageGenCallInProgress'
                - $ref: '#/components/schemas/OpenResponsesImageGenCallGenerating'
                - $ref: '#/components/schemas/OpenResponsesImageGenCallPartialImage'
                - $ref: '#/components/schemas/OpenResponsesImageGenCallCompleted'
            description: Union of all possible event types emitted during response streaming
            example:
                type: response.created
                response:
                    id: resp-abc123
                    object: response
                    created_at: 1704067200
                    model: gpt-4
                    status: in_progress
                    output: []
                    tools: []
                    tool_choice: auto
                    parallel_tool_calls: true
                    error: null
                    incomplete_details: null
                    metadata: null
                    instructions: null
                    temperature: null
                    top_p: null
                    max_output_tokens: null
                sequence_number: 0
        BadRequestResponseErrorData:
            type: object
            properties:
                code:
                    type: integer
                message:
                    type: string
                metadata:
                    type: object
                    nullable: true
                    additionalProperties:
                        nullable: true
            required:
                - code
                - message
            description: Error data for BadRequestResponse
            example:
                code: 400
                message: Invalid request parameters
        BadRequestResponse:
            type: object
            properties:
                error:
                    $ref: '#/components/schemas/BadRequestResponseErrorData'
                user_id:
                    type: string
                    nullable: true
            required:
                - error
            description: Bad Request - Invalid request parameters or malformed input
            example:
                error:
                    code: 400
                    message: Invalid request parameters
        UnauthorizedResponseErrorData:
            type: object
            properties:
                code:
                    type: integer
                message:
                    type: string
                metadata:
                    type: object
                    nullable: true
                    additionalProperties:
                        nullable: true
            required:
                - code
                - message
            description: Error data for UnauthorizedResponse
            example:
                code: 401
                message: Missing Authentication header
        UnauthorizedResponse:
            type: object
            properties:
                error:
                    $ref: '#/components/schemas/UnauthorizedResponseErrorData'
                user_id:
                    type: string
                    nullable: true
            required:
                - error
            description: Unauthorized - Authentication required or invalid credentials
            example:
                error:
                    code: 401
                    message: Missing Authentication header
        PaymentRequiredResponseErrorData:
            type: object
            properties:
                code:
                    type: integer
                message:
                    type: string
                metadata:
                    type: object
                    nullable: true
                    additionalProperties:
                        nullable: true
            required:
                - code
                - message
            description: Error data for PaymentRequiredResponse
            example:
                code: 402
                message: Insufficient credits. Add more using https://openrouter.ai/credits
        PaymentRequiredResponse:
            type: object
            properties:
                error:
                    $ref: '#/components/schemas/PaymentRequiredResponseErrorData'
                user_id:
                    type: string
                    nullable: true
            required:
                - error
            description: Payment Required - Insufficient credits or quota to complete request
            example:
                error:
                    code: 402
                    message: Insufficient credits. Add more using https://openrouter.ai/credits
        NotFoundResponseErrorData:
            type: object
            properties:
                code:
                    type: integer
                message:
                    type: string
                metadata:
                    type: object
                    nullable: true
                    additionalProperties:
                        nullable: true
            required:
                - code
                - message
            description: Error data for NotFoundResponse
            example:
                code: 404
                message: Resource not found
        NotFoundResponse:
            type: object
            properties:
                error:
                    $ref: '#/components/schemas/NotFoundResponseErrorData'
                user_id:
                    type: string
                    nullable: true
            required:
                - error
            description: Not Found - Resource does not exist
            example:
                error:
                    code: 404
                    message: Resource not found
        RequestTimeoutResponseErrorData:
            type: object
            properties:
                code:
                    type: integer
                message:
                    type: string
                metadata:
                    type: object
                    nullable: true
                    additionalProperties:
                        nullable: true
            required:
                - code
                - message
            description: Error data for RequestTimeoutResponse
            example:
                code: 408
                message: Operation timed out. Please try again later.
        RequestTimeoutResponse:
            type: object
            properties:
                error:
                    $ref: '#/components/schemas/RequestTimeoutResponseErrorData'
                user_id:
                    type: string
                    nullable: true
            required:
                - error
            description: Request Timeout - Operation exceeded time limit
            example:
                error:
                    code: 408
                    message: Operation timed out. Please try again later.
        PayloadTooLargeResponseErrorData:
            type: object
            properties:
                code:
                    type: integer
                message:
                    type: string
                metadata:
                    type: object
                    nullable: true
                    additionalProperties:
                        nullable: true
            required:
                - code
                - message
            description: Error data for PayloadTooLargeResponse
            example:
                code: 413
                message: Request payload too large
        PayloadTooLargeResponse:
            type: object
            properties:
                error:
                    $ref: '#/components/schemas/PayloadTooLargeResponseErrorData'
                user_id:
                    type: string
                    nullable: true
            required:
                - error
            description: Payload Too Large - Request payload exceeds size limits
            example:
                error:
                    code: 413
                    message: Request payload too large
        UnprocessableEntityResponseErrorData:
            type: object
            properties:
                code:
                    type: integer
                message:
                    type: string
                metadata:
                    type: object
                    nullable: true
                    additionalProperties:
                        nullable: true
            required:
                - code
                - message
            description: Error data for UnprocessableEntityResponse
            example:
                code: 422
                message: Invalid argument
        UnprocessableEntityResponse:
            type: object
            properties:
                error:
                    $ref: '#/components/schemas/UnprocessableEntityResponseErrorData'
                user_id:
                    type: string
                    nullable: true
            required:
                - error
            description: Unprocessable Entity - Semantic validation failure
            example:
                error:
                    code: 422
                    message: Invalid argument
        TooManyRequestsResponseErrorData:
            type: object
            properties:
                code:
                    type: integer
                message:
                    type: string
                metadata:
                    type: object
                    nullable: true
                    additionalProperties:
                        nullable: true
            required:
                - code
                - message
            description: Error data for TooManyRequestsResponse
            example:
                code: 429
                message: Rate limit exceeded
        TooManyRequestsResponse:
            type: object
            properties:
                error:
                    $ref: '#/components/schemas/TooManyRequestsResponseErrorData'
                user_id:
                    type: string
                    nullable: true
            required:
                - error
            description: Too Many Requests - Rate limit exceeded
            example:
                error:
                    code: 429
                    message: Rate limit exceeded
        InternalServerResponseErrorData:
            type: object
            properties:
                code:
                    type: integer
                message:
                    type: string
                metadata:
                    type: object
                    nullable: true
                    additionalProperties:
                        nullable: true
            required:
                - code
                - message
            description: Error data for InternalServerResponse
            example:
                code: 500
                message: Internal Server Error
        InternalServerResponse:
            type: object
            properties:
                error:
                    $ref: '#/components/schemas/InternalServerResponseErrorData'
                user_id:
                    type: string
                    nullable: true
            required:
                - error
            description: Internal Server Error - Unexpected server error
            example:
                error:
                    code: 500
                    message: Internal Server Error
        BadGatewayResponseErrorData:
            type: object
            properties:
                code:
                    type: integer
                message:
                    type: string
                metadata:
                    type: object
                    nullable: true
                    additionalProperties:
                        nullable: true
            required:
                - code
                - message
            description: Error data for BadGatewayResponse
            example:
                code: 502
                message: Provider returned error
        BadGatewayResponse:
            type: object
            properties:
                error:
                    $ref: '#/components/schemas/BadGatewayResponseErrorData'
                user_id:
                    type: string
                    nullable: true
            required:
                - error
            description: Bad Gateway - Provider/upstream API failure
            example:
                error:
                    code: 502
                    message: Provider returned error
        ServiceUnavailableResponseErrorData:
            type: object
            properties:
                code:
                    type: integer
                message:
                    type: string
                metadata:
                    type: object
                    nullable: true
                    additionalProperties:
                        nullable: true
            required:
                - code
                - message
            description: Error data for ServiceUnavailableResponse
            example:
                code: 503
                message: Service temporarily unavailable
        ServiceUnavailableResponse:
            type: object
            properties:
                error:
                    $ref: '#/components/schemas/ServiceUnavailableResponseErrorData'
                user_id:
                    type: string
                    nullable: true
            required:
                - error
            description: Service Unavailable - Service temporarily unavailable
            example:
                error:
                    code: 503
                    message: Service temporarily unavailable
        EdgeNetworkTimeoutResponseErrorData:
            type: object
            properties:
                code:
                    type: integer
                message:
                    type: string
                metadata:
                    type: object
                    nullable: true
                    additionalProperties:
                        nullable: true
            required:
                - code
                - message
            description: Error data for EdgeNetworkTimeoutResponse
            example:
                code: 524
                message: Request timed out. Please try again later.
        EdgeNetworkTimeoutResponse:
            type: object
            properties:
                error:
                    $ref: '#/components/schemas/EdgeNetworkTimeoutResponseErrorData'
                user_id:
                    type: string
                    nullable: true
            required:
                - error
            description: Infrastructure Timeout - Provider request timed out at edge network
            example:
                error:
                    code: 524
                    message: Request timed out. Please try again later.
        ProviderOverloadedResponseErrorData:
            type: object
            properties:
                code:
                    type: integer
                message:
                    type: string
                metadata:
                    type: object
                    nullable: true
                    additionalProperties:
                        nullable: true
            required:
                - code
                - message
            description: Error data for ProviderOverloadedResponse
            example:
                code: 529
                message: Provider returned error
        ProviderOverloadedResponse:
            type: object
            properties:
                error:
                    $ref: '#/components/schemas/ProviderOverloadedResponseErrorData'
                user_id:
                    type: string
                    nullable: true
            required:
                - error
            description: Provider Overloaded - Provider is temporarily overloaded
            example:
                error:
                    code: 529
                    message: Provider returned error
        OpenResponsesReasoning:
            allOf:
                - $ref: '#/components/schemas/OutputItemReasoning'
                - type: object
                  properties:
                    signature:
                        type: string
                        nullable: true
                    format:
                        type: string
                        nullable: true
                        enum:
                            - unknown
                            - openai-responses-v1
                            - azure-openai-responses-v1
                            - xai-responses-v1
                            - anthropic-claude-v1
                            - google-gemini-v1
                        x-speakeasy-unknown-values: allow
            example:
                type: reasoning
                id: reasoning-abc123
                summary:
                    - type: summary_text
                      text: Step by step analysis
            description: Reasoning output item with signature and format extensions
        ResponseInputVideo:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - input_video
                video_url:
                    type: string
                    description: A base64 data URL or remote URL that resolves to a video file
            required:
                - type
                - video_url
            description: Video input content item
            example:
                type: input_video
                video_url: https://example.com/video.mp4
        OpenResponsesEasyInputMessage:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - message
                role:
                    anyOf:
                        - type: string
                          enum:
                            - user
                        - type: string
                          enum:
                            - system
                        - type: string
                          enum:
                            - assistant
                        - type: string
                          enum:
                            - developer
                content:
                    anyOf:
                        - type: array
                          items:
                            oneOf:
                                - $ref: '#/components/schemas/ResponseInputText'
                                - allOf:
                                    - $ref: '#/components/schemas/ResponseInputImage'
                                    - type: object
                                      properties: {}
                                  description: Image input content item
                                  example:
                                    type: input_image
                                    detail: auto
                                    image_url: https://example.com/image.jpg
                                - $ref: '#/components/schemas/ResponseInputFile'
                                - $ref: '#/components/schemas/ResponseInputAudio'
                                - $ref: '#/components/schemas/ResponseInputVideo'
                        - type: string
            required:
                - role
                - content
        OpenResponsesInputMessageItem:
            type: object
            properties:
                id:
                    type: string
                type:
                    type: string
                    enum:
                        - message
                role:
                    anyOf:
                        - type: string
                          enum:
                            - user
                        - type: string
                          enum:
                            - system
                        - type: string
                          enum:
                            - developer
                content:
                    type: array
                    items:
                        oneOf:
                            - $ref: '#/components/schemas/ResponseInputText'
                            - allOf:
                                - $ref: '#/components/schemas/ResponseInputImage'
                                - type: object
                                  properties: {}
                              description: Image input content item
                              example:
                                type: input_image
                                detail: auto
                                image_url: https://example.com/image.jpg
                            - $ref: '#/components/schemas/ResponseInputFile'
                            - $ref: '#/components/schemas/ResponseInputAudio'
                            - $ref: '#/components/schemas/ResponseInputVideo'
            required:
                - role
                - content
        OpenResponsesFunctionToolCall:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - function_call
                call_id:
                    type: string
                name:
                    type: string
                arguments:
                    type: string
                id:
                    type: string
                status:
                    $ref: '#/components/schemas/ToolCallStatus'
            required:
                - type
                - call_id
                - name
                - arguments
                - id
            description: A function call initiated by the model
            example:
                id: call-abc123
                type: function_call
                call_id: call-abc123
                name: get_weather
                arguments: '{"location":"San Francisco"}'
                status: completed
        OpenResponsesFunctionCallOutput:
            type: object
            properties:
                type:
                    type: string
                    enum:
                        - function_call_output
                id:
                    type: string
                    nullable: true
                call_id:
                    type: string
                output:
                    type: string
                status:
                    $ref: '#/components/schemas/ToolCallStatus'
            required:
                - type
                - call_id
                - output
            description: The output from a function call execution
            example:
                type: function_call_output
                id: output-abc123
                call_id: call-abc123
                output: '{"temperature":72,"conditions":"sunny"}'
                status: completed
        OpenResponsesInput:
            anyOf:
                - type: string
                - type: array
                  items:
                    anyOf:
                        - $ref: '#/components/schemas/OpenResponsesReasoning'
                        - $ref: '#/components/schemas/OpenResponsesEasyInputMessage'
                        - $ref: '#/components/schemas/OpenResponsesInputMessageItem'
                        - $ref: '#/components/schemas/OpenResponsesFunctionToolCall'
                        - $ref: '#/components/schemas/OpenResponsesFunctionCallOutput'
                        - $ref: '#/components/schemas/ResponsesOutputMessage'
                        - $ref: '#/components/schemas/ResponsesOutputItemReasoning'
                        - $ref: '#/components/schemas/ResponsesOutputItemFunctionCall'
                        - $ref: '#/components/schemas/ResponsesWebSearchCallOutput'
                        - $ref: '#/components/schemas/ResponsesOutputItemFileSearchCall'
                        - $ref: '#/components/schemas/ResponsesImageGenerationCall'
            description: Input for a response request - can be a string or array of items
            example:
                - role: user
                  content: What is the weather today?
        OpenResponsesResponseText:
            allOf:
                - $ref: '#/components/schemas/ResponseTextConfig'
                - type: object
                  properties: {}
            description: Text output configuration including format and verbosity
            example:
                format:
                    type: text
                verbosity: medium
        OpenResponsesReasoningConfig:
            allOf:
                - $ref: '#/components/schemas/OpenAIResponsesReasoningConfig'
                - type: object
                  nullable: true
                  properties:
                    max_tokens:
                        type: number
                        nullable: true
                    enabled:
                        type: boolean
                        nullable: true
            description: Configuration for reasoning mode in the response
            example:
                summary: auto
                enabled: true
        ResponsesOutputModality:
            type: string
            enum:
                - text
                - image
            x-speakeasy-unknown-values: allow
        OpenAIResponsesIncludable:
            type: string
            enum:
                - file_search_call.results
                - message.input_image.image_url
                - computer_call_output.output.image_url
                - reasoning.encrypted_content
                - code_interpreter_call.outputs
            x-speakeasy-unknown-values: allow
        DataCollection:
            type: string
            nullable: true
            enum:
                - deny
                - allow
            description: >-
                Data collection setting. If no available model provider meets the requirement, your request will return an error.

                - allow: (default) allow providers which store user data non-transiently and may train on it


                - deny: use only providers which do not collect user data.
            example: allow
            x-speakeasy-unknown-values: allow
        ProviderName:
            type: string
            enum:
                - AI21
                - AionLabs
                - Alibaba
                - Amazon Bedrock
                - Amazon Nova
                - Anthropic
                - Arcee AI
                - AtlasCloud
                - Avian
                - Azure
                - BaseTen
                - BytePlus
                - Black Forest Labs
                - Cerebras
                - Chutes
                - Cirrascale
                - Clarifai
                - Cloudflare
                - Cohere
                - Crusoe
                - DeepInfra
                - DeepSeek
                - Featherless
                - Fireworks
                - Friendli
                - GMICloud
                - Google
                - Google AI Studio
                - Groq
                - Hyperbolic
                - Inception
                - Inceptron
                - InferenceNet
                - Infermatic
                - Inflection
                - Liquid
                - Mara
                - Mancer 2
                - Minimax
                - ModelRun
                - Mistral
                - Modular
                - Moonshot AI
                - Morph
                - NCompass
                - Nebius
                - NextBit
                - Novita
                - Nvidia
                - OpenAI
                - OpenInference
                - Parasail
                - Perplexity
                - Phala
                - Relace
                - SambaNova
                - Seed
                - SiliconFlow
                - Sourceful
                - Stealth
                - StreamLake
                - Switchpoint
                - Together
                - Upstage
                - Venice
                - WandB
                - Xiaomi
                - xAI
                - Z.AI
                - FakeProvider
            example: OpenAI
            x-speakeasy-unknown-values: allow
        Quantization:
            type: string
            enum:
                - int4
                - int8
                - fp4
                - fp6
                - fp8
                - fp16
                - bf16
                - fp32
                - unknown
            example: fp16
            x-speakeasy-unknown-values: allow
        ProviderSort:
            type: string
            enum:
                - price
                - throughput
                - latency
            x-speakeasy-unknown-values: allow
        ProviderSortConfig:
            type: object
            properties:
                by:
                    anyOf:
                        - $ref: '#/components/schemas/ProviderSort'
                        - type: 'null'
                partition:
                    anyOf:
                        - type: string
                          enum:
                            - model
                            - none
                          x-speakeasy-unknown-values: allow
                        - type: 'null'
        BigNumberUnion:
            type: string
            description: A value in string format that is a large number
            example: 1000
        PercentileThroughputCutoffs:
            type: object
            properties:
                p50:
                    type: number
                    nullable: true
                    description: Minimum p50 throughput (tokens/sec)
                p75:
                    type: number
                    nullable: true
                    description: Minimum p75 throughput (tokens/sec)
                p90:
                    type: number
                    nullable: true
                    description: Minimum p90 throughput (tokens/sec)
                p99:
                    type: number
                    nullable: true
                    description: Minimum p99 throughput (tokens/sec)
            description: Percentile-based throughput cutoffs. All specified cutoffs must be met for an endpoint to be preferred.
            example:
                p50: 100
                p90: 50
        PreferredMinThroughput:
            anyOf:
                - type: number
                - $ref: '#/components/schemas/PercentileThroughputCutoffs'
                - nullable: true
            description: >-
                Preferred minimum throughput (in tokens per second). Can be a number (applies to p50) or an object with percentile-specific cutoffs. Endpoints below the threshold(s) may still be used, but are deprioritized in routing. When using fallback models, this may cause a fallback model to be used instead of the primary model if it meets the threshold.
            example: 100
        PercentileLatencyCutoffs:
            type: object
            properties:
                p50:
                    type: number
                    nullable: true
                    description: Maximum p50 latency (seconds)
                p75:
                    type: number
                    nullable: true
                    description: Maximum p75 latency (seconds)
                p90:
                    type: number
                    nullable: true
                    description: Maximum p90 latency (seconds)
                p99:
                    type: number
                    nullable: true
                    description: Maximum p99 latency (seconds)
            description: Percentile-based latency cutoffs. All specified cutoffs must be met for an endpoint to be preferred.
            example:
                p50: 5
                p90: 10
        PreferredMaxLatency:
            anyOf:
                - type: number
                - $ref: '#/components/schemas/PercentileLatencyCutoffs'
                - nullable: true
            description: >-
                Preferred maximum latency (in seconds). Can be a number (applies to p50) or an object with percentile-specific cutoffs. Endpoints above the threshold(s) may still be used, but are deprioritized in routing. When using fallback models, this may cause a fallback model to be used instead of the primary model if it meets the threshold.
            example: 5
        WebSearchEngine:
            type: string
            enum:
                - native
                - exa
            description: The search engine to use for web search.
            x-speakeasy-unknown-values: allow
        PDFParserEngine:
            type: string
            enum:
                - mistral-ocr
                - pdf-text
                - native
            description: The engine to use for parsing PDF files.
            x-speakeasy-unknown-values: allow
        PDFParserOptions:
            type: object
            properties:
                engine:
                    $ref: '#/components/schemas/PDFParserEngine'
            description: Options for PDF parsing.
        OpenResponsesRequest:
            type: object
            properties:
                input:
                    $ref: '#/components/schemas/OpenResponsesInput'
                instructions:
                    type: string
                    nullable: true
                metadata:
                    $ref: '#/components/schemas/OpenResponsesRequestMetadata'
                tools:
                    type: array
                    items:
                        oneOf:
                            - allOf:
                                - $ref: '#/components/schemas/OpenResponsesFunctionTool'
                                - type: object
                                  properties: {}
                              description: Function tool definition
                              example:
                                type: function
                                name: get_weather
                                description: Get the current weather in a location
                                parameters:
                                    type: object
                                    properties:
                                        location:
                                            type: string
                                            description: The city and state
                                        unit:
                                            type: string
                                            enum:
                                                - celsius
                                                - fahrenheit
                                            x-speakeasy-unknown-values: allow
                                    required:
                                        - location
                            - $ref: '#/components/schemas/OpenResponsesWebSearchPreviewTool'
                            - $ref: '#/components/schemas/OpenResponsesWebSearchPreview20250311Tool'
                            - $ref: '#/components/schemas/OpenResponsesWebSearchTool'
                            - $ref: '#/components/schemas/OpenResponsesWebSearch20250826Tool'
                tool_choice:
                    $ref: '#/components/schemas/OpenAIResponsesToolChoice'
                parallel_tool_calls:
                    type: boolean
                    nullable: true
                model:
                    type: string
                models:
                    type: array
                    items:
                        type: string
                text:
                    $ref: '#/components/schemas/OpenResponsesResponseText'
                reasoning:
                    $ref: '#/components/schemas/OpenResponsesReasoningConfig'
                max_output_tokens:
                    type: number
                    nullable: true
                temperature:
                    type: number
                    nullable: true
                    minimum: 0
                    maximum: 2
                top_p:
                    type: number
                    nullable: true
                    minimum: 0
                top_logprobs:
                    type: integer
                    nullable: true
                    minimum: 0
                    maximum: 20
                max_tool_calls:
                    type: integer
                    nullable: true
                presence_penalty:
                    type: number
                    nullable: true
                    minimum: -2
                    maximum: 2
                frequency_penalty:
                    type: number
                    nullable: true
                    minimum: -2
                    maximum: 2
                top_k:
                    type: number
                image_config:
                    type: object
                    additionalProperties:
                        anyOf:
                            - type: string
                            - type: number
                    description: >-
                        Provider-specific image configuration options. Keys and values vary by model/provider. See https://openrouter.ai/docs/features/multimodal/image-generation for more details.
                    example:
                        aspect_ratio: '16:9'
                modalities:
                    type: array
                    items:
                        $ref: '#/components/schemas/ResponsesOutputModality'
                    description: Output modalities for the response. Supported values are "text" and "image".
                    example:
                        - text
                        - image
                prompt_cache_key:
                    type: string
                    nullable: true
                previous_response_id:
                    type: string
                    nullable: true
                prompt:
                    $ref: '#/components/schemas/OpenAIResponsesPrompt'
                include:
                    type: array
                    nullable: true
                    items:
                        $ref: '#/components/schemas/OpenAIResponsesIncludable'
                background:
                    type: boolean
                    nullable: true
                safety_identifier:
                    type: string
                    nullable: true
                store:
                    type: boolean
                    const: false
                    default: false
                service_tier:
                    type: string
                    enum:
                        - auto
                    default: auto
                truncation:
                    allOf:
                        - $ref: '#/components/schemas/OpenAIResponsesTruncation'
                        - example: auto
                stream:
                    type: boolean
                    default: false
                provider:
                    type: object
                    nullable: true
                    properties:
                        allow_fallbacks:
                            type: boolean
                            nullable: true
                            description: >
                                Whether to allow backup providers to serve requests

                                - true: (default) when the primary provider (or your custom providers in "order") is unavailable, use the next best provider.

                                - false: use only the primary/custom provider, and return the upstream error if it's unavailable.

                        require_parameters:
                            type: boolean
                            nullable: true
                            description: >-
                                Whether to filter providers to only those that support the parameters you've provided. If this setting is omitted or set to false, then providers will receive only the parameters they support, and ignore the rest.
                        data_collection:
                            $ref: '#/components/schemas/DataCollection'
                        zdr:
                            type: boolean
                            nullable: true
                            description: >-
                                Whether to restrict routing to only ZDR (Zero Data Retention) endpoints. When true, only endpoints that do not retain prompts will be used.
                            example: true
                        enforce_distillable_text:
                            type: boolean
                            nullable: true
                            description: >-
                                Whether to restrict routing to only models that allow text distillation. When true, only models where the author has allowed distillation will be used.
                            example: true
                        order:
                            type: array
                            nullable: true
                            items:
                                anyOf:
                                    - $ref: '#/components/schemas/ProviderName'
                                    - type: string
                            description: >-
                                An ordered list of provider slugs. The router will attempt to use the first provider in the subset of this list that supports your requested model, and fall back to the next if it is unavailable. If no providers are available, the request will fail with an error message.
                        only:
                            type: array
                            nullable: true
                            items:
                                anyOf:
                                    - $ref: '#/components/schemas/ProviderName'
                                    - type: string
                            description: >-
                                List of provider slugs to allow. If provided, this list is merged with your account-wide allowed provider settings for this request.
                        ignore:
                            type: array
                            nullable: true
                            items:
                                anyOf:
                                    - $ref: '#/components/schemas/ProviderName'
                                    - type: string
                            description: >-
                                List of provider slugs to ignore. If provided, this list is merged with your account-wide ignored provider settings for this request.
                        quantizations:
                            type: array
                            nullable: true
                            items:
                                $ref: '#/components/schemas/Quantization'
                            description: A list of quantization levels to filter the provider by.
                        sort:
                            anyOf:
                                - $ref: '#/components/schemas/ProviderSort'
                                - $ref: '#/components/schemas/ProviderSortConfig'
                                - nullable: true
                            description: >-
                                The sorting strategy to use for this request, if "order" is not specified. When set, no load balancing is performed.
                            example: price
                        max_price:
                            type: object
                            properties:
                                prompt:
                                    $ref: '#/components/schemas/BigNumberUnion'
                                completion:
                                    $ref: '#/components/schemas/BigNumberUnion'
                                image:
                                    $ref: '#/components/schemas/BigNumberUnion'
                                audio:
                                    $ref: '#/components/schemas/BigNumberUnion'
                                request:
                                    $ref: '#/components/schemas/BigNumberUnion'
                            description: >-
                                The object specifying the maximum price you want to pay for this request. USD price per million tokens, for prompt and completion.
                        preferred_min_throughput:
                            $ref: '#/components/schemas/PreferredMinThroughput'
                        preferred_max_latency:
                            $ref: '#/components/schemas/PreferredMaxLatency'
                    additionalProperties: false
                    description: When multiple model providers are available, optionally indicate your routing preference.
                plugins:
                    type: array
                    items:
                        oneOf:
                            - type: object
                              properties:
                                id:
                                    type: string
                                    enum:
                                        - auto-router
                                enabled:
                                    type: boolean
                                    description: Set to false to disable the auto-router plugin for this request. Defaults to true.
                                allowed_models:
                                    type: array
                                    items:
                                        type: string
                                    description: >-
                                        List of model patterns to filter which models the auto-router can route between. Supports wildcards (e.g., "anthropic/*" matches all Anthropic models). When not specified, uses the default supported models list.
                                    example:
                                        - anthropic/*
                                        - openai/gpt-4o
                                        - google/*
                              required:
                                - id
                            - type: object
                              properties:
                                id:
                                    type: string
                                    enum:
                                        - moderation
                              required:
                                - id
                            - type: object
                              properties:
                                id:
                                    type: string
                                    enum:
                                        - web
                                enabled:
                                    type: boolean
                                    description: Set to false to disable the web-search plugin for this request. Defaults to true.
                                max_results:
                                    type: number
                                search_prompt:
                                    type: string
                                engine:
                                    $ref: '#/components/schemas/WebSearchEngine'
                              required:
                                - id
                            - type: object
                              properties:
                                id:
                                    type: string
                                    enum:
                                        - file-parser
                                enabled:
                                    type: boolean
                                    description: Set to false to disable the file-parser plugin for this request. Defaults to true.
                                pdf:
                                    $ref: '#/components/schemas/PDFParserOptions'
                              required:
                                - id
                            - type: object
                              properties:
                                id:
                                    type: string
                                    enum:
                                        - response-healing
                                enabled:
                                    type: boolean
                                    description: Set to false to disable the response-healing plugin for this request. Defaults to true.
                              required:
                                - id
                    description: Plugins you want to enable for this request, including their settings.
                route:
                    type: string
                    nullable: true
                    enum:
                        - fallback
                        - sort
                    deprecated: true
                    description: >-
                        **DEPRECATED** Use providers.sort.partition instead. Backwards-compatible alias for providers.sort.partition. Accepts legacy values: "fallback" (maps to "model"), "sort" (maps to "none").
                    x-speakeasy-deprecation-message: Use providers.sort.partition instead.
                    x-speakeasy-ignore: true
                    x-fern-ignore: true
                    x-speakeasy-unknown-values: allow
                user:
                    type: string
                    maxLength: 128
                    description: >-
                        A unique identifier representing your end-user, which helps distinguish between different users of your app. This allows your app to identify specific users in case of abuse reports, preventing your entire app from being affected by the actions of individual users. Maximum of 128 characters.
                session_id:
                    type: string
                    maxLength: 128
                    description: >-
                        A unique identifier for grouping related requests (e.g., a conversation or agent workflow) for observability. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 128 characters.
            description: Request schema for Responses endpoint
            example:
                model: anthropic/claude-4.5-sonnet-20250929
                input:
                    - type: message
                      content: Hello, how are you?
                      role: user
                temperature: 0.7
                top_p: 0.9
                tools:
                    - type: function
                      name: get_current_weather
                      description: Get the current weather in a given location
                      parameters:
                        type: object
                        properties:
                            location:
                                type: string
        BaseAnthropicMessagesResponse:
            type: object
            properties:
                id:
                    type: string
                type:
                    type: string
                    enum:
                        - message
                role:
                    type: string
                    enum:
                        - assistant
                content:
                    type: array
                    items:
                        oneOf:
                            - type: object
                              properties:
                                type:
                                    type: string
                                    enum:
                                        - text
                                text:
                                    type: string
                                citations:
                                    type: array
                                    nullable: true
                                    items:
                                        oneOf:
                                            - type: object
                                              properties:
                                                type:
                                                    type: string
                                                    enum:
                                                        - char_location
                                                cited_text:
                                                    type: string
                                                document_index:
                                                    type: number
                                                document_title:
                                                    type: string
                                                    nullable: true
                                                start_char_index:
                                                    type: number
                                                end_char_index:
                                                    type: number
                                                file_id:
                                                    type: string
                                                    nullable: true
                                              required:
                                                - type
                                                - cited_text
                                                - document_index
                                                - document_title
                                                - start_char_index
                                                - end_char_index
                                                - file_id
                                            - type: object
                                              properties:
                                                type:
                                                    type: string
                                                    enum:
                                                        - page_location
                                                cited_text:
                                                    type: string
                                                document_index:
                                                    type: number
                                                document_title:
                                                    type: string
                                                    nullable: true
                                                start_page_number:
                                                    type: number
                                                end_page_number:
                                                    type: number
                                                file_id:
                                                    type: string
                                                    nullable: true
                                              required:
                                                - type
                                                - cited_text
                                                - document_index
                                                - document_title
                                                - start_page_number
                                                - end_page_number
                                                - file_id
                                            - type: object
                                              properties:
                                                type:
                                                    type: string
                                                    enum:
                                                        - content_block_location
                                                cited_text:
                                                    type: string
                                                document_index:
                                                    type: number
                                                document_title:
                                                    type: string
                                                    nullable: true
                                                start_block_index:
                                                    type: number
                                                end_block_index:
                                                    type: number
                                                file_id:
                                                    type: string
                                                    nullable: true
                                              required:
                                                - type
                                                - cited_text
                                                - document_index
                                                - document_title
                                                - start_block_index
                                                - end_block_index
                                                - file_id
                                            - type: object
                                              properties:
                                                type:
                                                    type: string
                                                    enum:
                                                        - web_search_result_location
                                                cited_text:
                                                    type: string
                                                encrypted_index:
                                                    type: string
                                                title:
                                                    type: string
                                                    nullable: true
                                                url:
                                                    type: string
                                              required:
                                                - type
                                                - cited_text
                                                - encrypted_index
                                                - title
                                                - url
                                            - type: object
                                              properties:
                                                type:
                                                    type: string
                                                    enum:
                                                        - search_result_location
                                                cited_text:
                                                    type: string
                                                search_result_index:
                                                    type: number
                                                source:
                                                    type: string
                                                title:
                                                    type: string
                                                    nullable: true
                                                start_block_index:
                                                    type: number
                                                end_block_index:
                                                    type: number
                                              required:
                                                - type
                                                - cited_text
                                                - search_result_index
                                                - source
                                                - title
                                                - start_block_index
                                                - end_block_index
                              required:
                                - type
                                - text
                                - citations
                            - type: object
                              properties:
                                type:
                                    type: string
                                    enum:
                                        - tool_use
                                id:
                                    type: string
                                name:
                                    type: string
                                input:
                                    nullable: true
                              required:
                                - type
                                - id
                                - name
                            - type: object
                              properties:
                                type:
                                    type: string
                                    enum:
                                        - thinking
                                thinking:
                                    type: string
                                signature:
                                    type: string
                              required:
                                - type
                                - thinking
                                - signature
                            - type: object
                              properties:
                                type:
                                    type: string
                                    enum:
                                        - redacted_thinking
                                data:
                                    type: string
                              required:
                                - type
                                - data
                            - type: object
                              properties:
                                type:
                                    type: string
                                    enum:
                                        - server_tool_use
                                id:
                                    type: string
                                name:
                                    type: string
                                    enum:
                                        - web_search
                                input:
                                    nullable: true
                              required:
                                - type
                                - id
                                - name
                            - type: object
                              properties:
                                type:
                                    type: string
                                    enum:
                                        - web_search_tool_result
                                tool_use_id:
                                    type: string
                                content:
                                    anyOf:
                                        - type: array
                                          items:
                                            type: object
                                            properties:
                                                type:
                                                    type: string
                                                    enum:
                                                        - web_search_result
                                                encrypted_content:
                                                    type: string
                                                page_age:
                                                    type: string
                                                    nullable: true
                                                title:
                                                    type: string
                                                url:
                                                    type: string
                                            required:
                                                - type
                                                - encrypted_content
                                                - page_age
                                                - title
                                                - url
                                        - type: object
                                          properties:
                                            type:
                                                type: string
                                                enum:
                                                    - web_search_tool_result_error
                                            error_code:
                                                type: string
                                                enum:
                                                    - invalid_tool_input
                                                    - unavailable
                                                    - max_uses_exceeded
                                                    - too_many_requests
                                                    - query_too_long
                                                x-speakeasy-unknown-values: allow
                                          required:
                                            - type
                                            - error_code
                              required:
                                - type
                                - tool_use_id
                                - content
                model:
                    type: string
                stop_reason:
                    type: string
                    nullable: true
                    enum:
                        - end_turn
                        - max_tokens
                        - stop_sequence
                        - tool_use
                        - pause_turn
                        - refusal
                        - model_context_window_exceeded
                    x-speakeasy-unknown-values: allow
                stop_sequence:
                    type: string
                    nullable: true
                usage:
                    type: object
                    properties:
                        input_tokens:
                            type: number
                        output_tokens:
                            type: number
                        cache_creation_input_tokens:
                            type: number
                            nullable: true
                        cache_read_input_tokens:
                            type: number
                            nullable: true
                        cache_creation:
                            type: object
                            nullable: true
                            properties:
                                ephemeral_5m_input_tokens:
                                    type: number
                                ephemeral_1h_input_tokens:
                                    type: number
                            required:
                                - ephemeral_5m_input_tokens
                                - ephemeral_1h_input_tokens
                        server_tool_use:
                            type: object
                            nullable: true
                            properties:
                                web_search_requests:
                                    type: number
                            required:
                                - web_search_requests
                        service_tier:
                            type: string
                            nullable: true
                            enum:
                                - standard
                                - priority
                                - batch
                            x-speakeasy-unknown-values: allow
                    required:
                        - input_tokens
                        - output_tokens
                        - cache_creation_input_tokens
                        - cache_read_input_tokens
                        - cache_creation
                        - server_tool_use
                        - service_tier
            required:
                - id
                - type
                - role
                - content
                - model
                - stop_reason
                - stop_sequence
                - usage
        AnthropicMessagesResponse:
            allOf:
                - $ref: '#/components/schemas/BaseAnthropicMessagesResponse'
                - type: object
                  properties: {}
            description: Non-streaming response from the Anthropic Messages API with OpenRouter extensions
            example:
                id: msg_01XFDUDYJgAACzvnptvVoYEL
                type: message
                role: assistant
                content:
                    - type: text
                      text: Hello! I'm doing well, thank you for asking.
                      citations: null
                model: claude-sonnet-4-5-20250929
                stop_reason: end_turn
                stop_sequence: null
                usage:
                    input_tokens: 12
                    output_tokens: 15
                    cache_creation_input_tokens: null
                    cache_read_input_tokens: null
                    cache_creation: null
                    server_tool_use: null
                    service_tier: standard
        AnthropicMessagesStreamEvent:
            oneOf:
                - type: object
                  properties:
                    type:
                        type: string
                        enum:
                            - message_start
                    message:
                        type: object
                        properties:
                            id:
                                type: string
                            type:
                                type: string
                                enum:
                                    - message
                            role:
                                type: string
                                enum:
                                    - assistant
                            content:
                                type: array
                                items:
                                    oneOf:
                                        - type: object
                                          properties:
                                            type:
                                                type: string
                                                enum:
                                                    - text
                                            text:
                                                type: string
                                            citations:
                                                type: array
                                                nullable: true
                                                items:
                                                    oneOf:
                                                        - type: object
                                                          properties:
                                                            type:
                                                                type: string
                                                                enum:
                                                                    - char_location
                                                            cited_text:
                                                                type: string
                                                            document_index:
                                                                type: number
                                                            document_title:
                                                                type: string
                                                                nullable: true
                                                            start_char_index:
                                                                type: number
                                                            end_char_index:
                                                                type: number
                                                            file_id:
                                                                type: string
                                                                nullable: true
                                                          required:
                                                            - type
                                                            - cited_text
                                                            - document_index
                                                            - document_title
                                                            - start_char_index
                                                            - end_char_index
                                                            - file_id
                                                        - type: object
                                                          properties:
                                                            type:
                                                                type: string
                                                                enum:
                                                                    - page_location
                                                            cited_text:
                                                                type: string
                                                            document_index:
                                                                type: number
                                                            document_title:
                                                                type: string
                                                                nullable: true
                                                            start_page_number:
                                                                type: number
                                                            end_page_number:
                                                                type: number
                                                            file_id:
                                                                type: string
                                                                nullable: true
                                                          required:
                                                            - type
                                                            - cited_text
                                                            - document_index
                                                            - document_title
                                                            - start_page_number
                                                            - end_page_number
                                                            - file_id
                                                        - type: object
                                                          properties:
                                                            type:
                                                                type: string
                                                                enum:
                                                                    - content_block_location
                                                            cited_text:
                                                                type: string
                                                            document_index:
                                                                type: number
                                                            document_title:
                                                                type: string
                                                                nullable: true
                                                            start_block_index:
                                                                type: number
                                                            end_block_index:
                                                                type: number
                                                            file_id:
                                                                type: string
                                                                nullable: true
                                                          required:
                                                            - type
                                                            - cited_text
                                                            - document_index
                                                            - document_title
                                                            - start_block_index
                                                            - end_block_index
                                                            - file_id
                                                        - type: object
                                                          properties:
                                                            type:
                                                                type: string
                                                                enum:
                                                                    - web_search_result_location
                                                            cited_text:
                                                                type: string
                                                            encrypted_index:
                                                                type: string
                                                            title:
                                                                type: string
                                                                nullable: true
                                                            url:
                                                                type: string
                                                          required:
                                                            - type
                                                            - cited_text
                                                            - encrypted_index
                                                            - title
                                                            - url
                                                        - type: object
                                                          properties:
                                                            type:
                                                                type: string
                                                                enum:
                                                                    - search_result_location
                                                            cited_text:
                                                                type: string
                                                            search_result_index:
                                                                type: number
                                                            source:
                                                                type: string
                                                            title:
                                                                type: string
                                                                nullable: true
                                                            start_block_index:
                                                                type: number
                                                            end_block_index:
                                                                type: number
                                                          required:
                                                            - type
                                                            - cited_text
                                                            - search_result_index
                                                            - source
                                                            - title
                                                            - start_block_index
                                                            - end_block_index
                                          required:
                                            - type
                                            - text
                                            - citations
                                        - type: object
                                          properties:
                                            type:
                                                type: string
                                                enum:
                                                    - tool_use
                                            id:
                                                type: string
                                            name:
                                                type: string
                                            input:
                                                nullable: true
                                          required:
                                            - type
                                            - id
                                            - name
                                        - type: object
                                          properties:
                                            type:
                                                type: string
                                                enum:
                                                    - thinking
                                            thinking:
                                                type: string
                                            signature:
                                                type: string
                                          required:
                                            - type
                                            - thinking
                                            - signature
                                        - type: object
                                          properties:
                                            type:
                                                type: string
                                                enum:
                                                    - redacted_thinking
                                            data:
                                                type: string
                                          required:
                                            - type
                                            - data
                                        - type: object
                                          properties:
                                            type:
                                                type: string
                                                enum:
                                                    - server_tool_use
                                            id:
                                                type: string
                                            name:
                                                type: string
                                                enum:
                                                    - web_search
                                            input:
                                                nullable: true
                                          required:
                                            - type
                                            - id
                                            - name
                                        - type: object
                                          properties:
                                            type:
                                                type: string
                                                enum:
                                                    - web_search_tool_result
                                            tool_use_id:
                                                type: string
                                            content:
                                                anyOf:
                                                    - type: array
                                                      items:
                                                        type: object
                                                        properties:
                                                            type:
                                                                type: string
                                                                enum:
                                                                    - web_search_result
                                                            encrypted_content:
                                                                type: string
                                                            page_age:
                                                                type: string
                                                                nullable: true
                                                            title:
                                                                type: string
                                                            url:
                                                                type: string
                                                        required:
                                                            - type
                                                            - encrypted_content
                                                            - page_age
                                                            - title
                                                            - url
                                                    - type: object
                                                      properties:
                                                        type:
                                                            type: string
                                                            enum:
                                                                - web_search_tool_result_error
                                                        error_code:
                                                            type: string
                                                            enum:
                                                                - invalid_tool_input
                                                                - unavailable
                                                                - max_uses_exceeded
                                                                - too_many_requests
                                                                - query_too_long
                                                            x-speakeasy-unknown-values: allow
                                                      required:
                                                        - type
                                                        - error_code
                                          required:
                                            - type
                                            - tool_use_id
                                            - content
                            model:
                                type: string
                            stop_reason:
                                nullable: true
                            stop_sequence:
                                nullable: true
                            usage:
                                type: object
                                properties:
                                    input_tokens:
                                        type: number
                                    output_tokens:
                                        type: number
                                    cache_creation_input_tokens:
                                        type: number
                                        nullable: true
                                    cache_read_input_tokens:
                                        type: number
                                        nullable: true
                                    cache_creation:
                                        type: object
                                        nullable: true
                                        properties:
                                            ephemeral_5m_input_tokens:
                                                type: number
                                            ephemeral_1h_input_tokens:
                                                type: number
                                        required:
                                            - ephemeral_5m_input_tokens
                                            - ephemeral_1h_input_tokens
                                    server_tool_use:
                                        type: object
                                        nullable: true
                                        properties:
                                            web_search_requests:
                                                type: number
                                        required:
                                            - web_search_requests
                                    service_tier:
                                        type: string
                                        nullable: true
                                        enum:
                                            - standard
                                            - priority
                                            - batch
                                        x-speakeasy-unknown-values: allow
                                required:
                                    - input_tokens
                                    - output_tokens
                                    - cache_creation_input_tokens
                                    - cache_read_input_tokens
                                    - cache_creation
                                    - server_tool_use
                                    - service_tier
                        required:
                            - id
                            - type
                            - role
                            - content
                            - model
                            - stop_reason
                            - stop_sequence
                            - usage
                  required:
                    - type
                    - message
                - type: object
                  properties:
                    type:
                        type: string
                        enum:
                            - message_delta
                    delta:
                        type: object
                        properties:
                            stop_reason:
                                type: string
                                nullable: true
                                enum:
                                    - end_turn
                                    - max_tokens
                                    - stop_sequence
                                    - tool_use
                                    - pause_turn
                                    - refusal
                                    - model_context_window_exceeded
                                x-speakeasy-unknown-values: allow
                            stop_sequence:
                                type: string
                                nullable: true
                        required:
                            - stop_reason
                            - stop_sequence
                    usage:
                        type: object
                        properties:
                            input_tokens:
                                type: number
                                nullable: true
                            output_tokens:
                                type: number
                            cache_creation_input_tokens:
                                type: number
                                nullable: true
                            cache_read_input_tokens:
                                type: number
                                nullable: true
                            server_tool_use:
                                type: object
                                nullable: true
                                properties:
                                    web_search_requests:
                                        type: number
                                required:
                                    - web_search_requests
                        required:
                            - input_tokens
                            - output_tokens
                            - cache_creation_input_tokens
                            - cache_read_input_tokens
                            - server_tool_use
                  required:
                    - type
                    - delta
                    - usage
                - type: object
                  properties:
                    type:
                        type: string
                        enum:
                            - message_stop
                  required:
                    - type
                - type: object
                  properties:
                    type:
                        type: string
                        enum:
                            - content_block_start
                    index:
                        type: number
                    content_block:
                        oneOf:
                            - type: object
                              properties:
                                type:
                                    type: string
                                    enum:
                                        - text
                                text:
                                    type: string
                                citations:
                                    type: array
                                    nullable: true
                                    items:
                                        oneOf:
                                            - type: object
                                              properties:
                                                type:
                                                    type: string
                                                    enum:
                                                        - char_location
                                                cited_text:
                                                    type: string
                                                document_index:
                                                    type: number
                                                document_title:
                                                    type: string
                                                    nullable: true
                                                start_char_index:
                                                    type: number
                                                end_char_index:
                                                    type: number
                                                file_id:
                                                    type: string
                                                    nullable: true
                                              required:
                                                - type
                                                - cited_text
                                                - document_index
                                                - document_title
                                                - start_char_index
                                                - end_char_index
                                                - file_id
                                            - type: object
                                              properties:
                                                type:
                                                    type: string
                                                    enum:
                                                        - page_location
                                                cited_text:
                                                    type: string
                                                document_index:
                                                    type: number
                                                document_title:
                                                    type: string
                                                    nullable: true
                                                start_page_number:
                                                    type: number
                                                end_page_number:
                                                    type: number
                                                file_id:
                                                    type: string
                                                    nullable: true
                                              required:
                                                - type
                                                - cited_text
                                                - document_index
                                                - document_title
                                                - start_page_number
                                                - end_page_number
                                                - file_id
                                            - type: object
                                              properties:
                                                type:
                                                    type: string
                                                    enum:
                                                        - content_block_location
                                                cited_text:
                                                    type: string
                                                document_index:
                                                    type: number
                                                document_title:
                                                    type: string
                                                    nullable: true
                                                start_block_index:
                                                    type: number
                                                end_block_index:
                                                    type: number
                                                file_id:
                                                    type: string
                                                    nullable: true
                                              required:
                                                - type
                                                - cited_text
                                                - document_index
                                                - document_title
                                                - start_block_index
                                                - end_block_index
                                                - file_id
                                            - type: object
                                              properties:
                                                type:
                                                    type: string
                                                    enum:
                                                        - web_search_result_location
                                                cited_text:
                                                    type: string
                                                encrypted_index:
                                                    type: string
                                                title:
                                                    type: string
                                                    nullable: true
                                                url:
                                                    type: string
                                              required:
                                                - type
                                                - cited_text
                                                - encrypted_index
                                                - title
                                                - url
                                            - type: object
                                              properties:
                                                type:
                                                    type: string
                                                    enum:
                                                        - search_result_location
                                                cited_text:
                                                    type: string
                                                search_result_index:
                                                    type: number
                                                source:
                                                    type: string
                                                title:
                                                    type: string
                                                    nullable: true
                                                start_block_index:
                                                    type: number
                                                end_block_index:
                                                    type: number
                                              required:
                                                - type
                                                - cited_text
                                                - search_result_index
                                                - source
                                                - title
                                                - start_block_index
                                                - end_block_index
                              required:
                                - type
                                - text
                                - citations
                            - type: object
                              properties:
                                type:
                                    type: string
                                    enum:
                                        - tool_use
                                id:
                                    type: string
                                name:
                                    type: string
                                input:
                                    nullable: true
                              required:
                                - type
                                - id
                                - name
                            - type: object
                              properties:
                                type:
                                    type: string
                                    enum:
                                        - thinking
                                thinking:
                                    type: string
                                signature:
                                    type: string
                              required:
                                - type
                                - thinking
                                - signature
                            - type: object
                              properties:
                                type:
                                    type: string
                                    enum:
                                        - redacted_thinking
                                data:
                                    type: string
                              required:
                                - type
                                - data
                            - type: object
                              properties:
                                type:
                                    type: string
                                    enum:
                                        - server_tool_use
                                id:
                                    type: string
                                name:
                                    type: string
                                    enum:
                                        - web_search
                                input:
                                    nullable: true
                              required:
                                - type
                                - id
                                - name
                            - type: object
                              properties:
                                type:
                                    type: string
                                    enum:
                                        - web_search_tool_result
                                tool_use_id:
                                    type: string
                                content:
                                    anyOf:
                                        - type: array
                                          items:
                                            type: object
                                            properties:
                                                type:
                                                    type: string
                                                    enum:
                                                        - web_search_result
                                                encrypted_content:
                                                    type: string
                                                page_age:
                                                    type: string
                                                    nullable: true
                                                title:
                                                    type: string
                                                url:
                                                    type: string
                                            required:
                                                - type
                                                - encrypted_content
                                                - page_age
                                                - title
                                                - url
                                        - type: object
                                          properties:
                                            type:
                                                type: string
                                                enum:
                                                    - web_search_tool_result_error
                                            error_code:
                                                type: string
                                                enum:
                                                    - invalid_tool_input
                                                    - unavailable
                                                    - max_uses_exceeded
                                                    - too_many_requests
                                                    - query_too_long
                                                x-speakeasy-unknown-values: allow
                                          required:
                                            - type
                                            - error_code
                              required:
                                - type
                                - tool_use_id
                                - content
                  required:
                    - type
                    - index
                    - content_block
                - type: object
                  properties:
                    type:
                        type: string
                        enum:
                            - content_block_delta
                    index:
                        type: number
                    delta:
                        oneOf:
                            - type: object
                              properties:
                                type:
                                    type: string
                                    enum:
                                        - text_delta
                                text:
                                    type: string
                              required:
                                - type
                                - text
                            - type: object
                              properties:
                                type:
                                    type: string
                                    enum:
                                        - input_json_delta
                                partial_json:
                                    type: string
                              required:
                                - type
                                - partial_json
                            - type: object
                              properties:
                                type:
                                    type: string
                                    enum:
                                        - thinking_delta
                                thinking:
                                    type: string
                              required:
                                - type
                                - thinking
                            - type: object
                              properties:
                                type:
                                    type: string
                                    enum:
                                        - signature_delta
                                signature:
                                    type: string
                              required:
                                - type
                                - signature
                            - type: object
                              properties:
                                type:
                                    type: string
                                    enum:
                                        - citations_delta
                                citation:
                                    oneOf:
                                        - type: object
                                          properties:
                                            type:
                                                type: string
                                                enum:
                                                    - char_location
                                            cited_text:
                                                type: string
                                            document_index:
                                                type: number
                                            document_title:
                                                type: string
                                                nullable: true
                                            start_char_index:
                                                type: number
                                            end_char_index:
                                                type: number
                                            file_id:
                                                type: string
                                                nullable: true
                                          required:
                                            - type
                                            - cited_text
                                            - document_index
                                            - document_title
                                            - start_char_index
                                            - end_char_index
                                            - file_id
                                        - type: object
                                          properties:
                                            type:
                                                type: string
                                                enum:
                                                    - page_location
                                            cited_text:
                                                type: string
                                            document_index:
                                                type: number
                                            document_title:
                                                type: string
                                                nullable: true
                                            start_page_number:
                                                type: number
                                            end_page_number:
                                                type: number
                                            file_id:
                                                type: string
                                                nullable: true
                                          required:
                                            - type
                                            - cited_text
                                            - document_index
                                            - document_title
                                            - start_page_number
                                            - end_page_number
                                            - file_id
                                        - type: object
                                          properties:
                                            type:
                                                type: string
                                                enum:
                                                    - content_block_location
                                            cited_text:
                                                type: string
                                            document_index:
                                                type: number
                                            document_title:
                                                type: string
                                                nullable: true
                                            start_block_index:
                                                type: number
                                            end_block_index:
                                                type: number
                                            file_id:
                                                type: string
                                                nullable: true
                                          required:
                                            - type
                                            - cited_text
                                            - document_index
                                            - document_title
                                            - start_block_index
                                            - end_block_index
                                            - file_id
                                        - type: object
                                          properties:
                                            type:
                                                type: string
                                                enum:
                                                    - web_search_result_location
                                            cited_text:
                                                type: string
                                            encrypted_index:
                                                type: string
                                            title:
                                                type: string
                                                nullable: true
                                            url:
                                                type: string
                                          required:
                                            - type
                                            - cited_text
                                            - encrypted_index
                                            - title
                                            - url
                                        - type: object
                                          properties:
                                            type:
                                                type: string
                                                enum:
                                                    - search_result_location
                                            cited_text:
                                                type: string
                                            search_result_index:
                                                type: number
                                            source:
                                                type: string
                                            title:
                                                type: string
                                                nullable: true
                                            start_block_index:
                                                type: number
                                            end_block_index:
                                                type: number
                                          required:
                                            - type
                                            - cited_text
                                            - search_result_index
                                            - source
                                            - title
                                            - start_block_index
                                            - end_block_index
                              required:
                                - type
                                - citation
                  required:
                    - type
                    - index
                    - delta
                - type: object
                  properties:
                    type:
                        type: string
                        enum:
                            - content_block_stop
                    index:
                        type: number
                  required:
                    - type
                    - index
                - type: object
                  properties:
                    type:
                        type: string
                        enum:
                            - ping
                  required:
                    - type
                - type: object
                  properties:
                    type:
                        type: string
                        enum:
                            - error
                    error:
                        type: object
                        properties:
                            type:
                                type: string
                            message:
                                type: string
                        required:
                            - type
                            - message
                  required:
                    - type
                    - error
            description: Union of all possible streaming events
        OpenRouterAnthropicMessageParam:
            type: object
            properties:
                role:
                    type: string
                    enum:
                        - user
                        - assistant
                    x-speakeasy-unknown-values: allow
                content:
                    anyOf:
                        - type: string
                        - type: array
                          items:
                            oneOf:
                                - type: object
                                  properties:
                                    type:
                                        type: string
                                        enum:
                                            - text
                                    text:
                                        type: string
                                    citations:
                                        type: array
                                        nullable: true
                                        items:
                                            oneOf:
                                                - type: object
                                                  properties:
                                                    type:
                                                        type: string
                                                        enum:
                                                            - char_location
                                                    cited_text:
                                                        type: string
                                                    document_index:
                                                        type: number
                                                    document_title:
                                                        type: string
                                                        nullable: true
                                                    start_char_index:
                                                        type: number
                                                    end_char_index:
                                                        type: number
                                                  required:
                                                    - type
                                                    - cited_text
                                                    - document_index
                                                    - document_title
                                                    - start_char_index
                                                    - end_char_index
                                                - type: object
                                                  properties:
                                                    type:
                                                        type: string
                                                        enum:
                                                            - page_location
                                                    cited_text:
                                                        type: string
                                                    document_index:
                                                        type: number
                                                    document_title:
                                                        type: string
                                                        nullable: true
                                                    start_page_number:
                                                        type: number
                                                    end_page_number:
                                                        type: number
                                                  required:
                                                    - type
                                                    - cited_text
                                                    - document_index
                                                    - document_title
                                                    - start_page_number
                                                    - end_page_number
                                                - type: object
                                                  properties:
                                                    type:
                                                        type: string
                                                        enum:
                                                            - content_block_location
                                                    cited_text:
                                                        type: string
                                                    document_index:
                                                        type: number
                                                    document_title:
                                                        type: string
                                                        nullable: true
                                                    start_block_index:
                                                        type: number
                                                    end_block_index:
                                                        type: number
                                                  required:
                                                    - type
                                                    - cited_text
                                                    - document_index
                                                    - document_title
                                                    - start_block_index
                                                    - end_block_index
                                                - type: object
                                                  properties:
                                                    type:
                                                        type: string
                                                        enum:
                                                            - web_search_result_location
                                                    cited_text:
                                                        type: string
                                                    encrypted_index:
                                                        type: string
                                                    title:
                                                        type: string
                                                        nullable: true
                                                    url:
                                                        type: string
                                                  required:
                                                    - type
                                                    - cited_text
                                                    - encrypted_index
                                                    - title
                                                    - url
                                                - type: object
                                                  properties:
                                                    type:
                                                        type: string
                                                        enum:
                                                            - search_result_location
                                                    cited_text:
                                                        type: string
                                                    search_result_index:
                                                        type: number
                                                    source:
                                                        type: string
                                                    title:
                                                        type: string
                                                        nullable: true
                                                    start_block_index:
                                                        type: number
                                                    end_block_index:
                                                        type: number
                                                  required:
                                                    - type
                                                    - cited_text
                                                    - search_result_index
                                                    - source
                                                    - title
                                                    - start_block_index
                                                    - end_block_index
                                    cache_control:
                                        type: object
                                        properties:
                                            type:
                                                type: string
                                                enum:
                                                    - ephemeral
                                            ttl:
                                                type: string
                                                enum:
                                                    - 5m
                                                    - 1h
                                                x-speakeasy-unknown-values: allow
                                        required:
                                            - type
                                  required:
                                    - type
                                    - text
                                - type: object
                                  properties:
                                    type:
                                        type: string
                                        enum:
                                            - image
                                    source:
                                        oneOf:
                                            - type: object
                                              properties:
                                                type:
                                                    type: string
                                                    enum:
                                                        - base64
                                                media_type:
                                                    type: string
                                                    enum:
                                                        - image/jpeg
                                                        - image/png
                                                        - image/gif
                                                        - image/webp
                                                    x-speakeasy-unknown-values: allow
                                                data:
                                                    type: string
                                              required:
                                                - type
                                                - media_type
                                                - data
                                            - type: object
                                              properties:
                                                type:
                                                    type: string
                                                    enum:
                                                        - url
                                                url:
                                                    type: string
                                              required:
                                                - type
                                                - url
                                    cache_control:
                                        type: object
                                        properties:
                                            type:
                                                type: string
                                                enum:
                                                    - ephemeral
                                            ttl:
                                                type: string
                                                enum:
                                                    - 5m
                                                    - 1h
                                                x-speakeasy-unknown-values: allow
                                        required:
                                            - type
                                  required:
                                    - type
                                    - source
                                - type: object
                                  properties:
                                    type:
                                        type: string
                                        enum:
                                            - document
                                    source:
                                        oneOf:
                                            - type: object
                                              properties:
                                                type:
                                                    type: string
                                                    enum:
                                                        - base64
                                                media_type:
                                                    type: string
                                                    enum:
                                                        - application/pdf
                                                data:
                                                    type: string
                                              required:
                                                - type
                                                - media_type
                                                - data
                                            - type: object
                                              properties:
                                                type:
                                                    type: string
                                                    enum:
                                                        - text
                                                media_type:
                                                    type: string
                                                    enum:
                                                        - text/plain
                                                data:
                                                    type: string
                                              required:
                                                - type
                                                - media_type
                                                - data
                                            - type: object
                                              properties:
                                                type:
                                                    type: string
                                                    enum:
                                                        - content
                                                content:
                                                    anyOf:
                                                        - type: string
                                                        - type: array
                                                          items:
                                                            oneOf:
                                                                - type: object
                                                                  properties:
                                                                    type:
                                                                        type: string
                                                                        enum:
                                                                            - text
                                                                    text:
                                                                        type: string
                                                                    citations:
                                                                        type: array
                                                                        nullable: true
                                                                        items:
                                                                            oneOf:
                                                                                - type: object
                                                                                  properties:
                                                                                    type:
                                                                                        type: string
                                                                                        enum:
                                                                                            - char_location
                                                                                    cited_text:
                                                                                        type: string
                                                                                    document_index:
                                                                                        type: number
                                                                                    document_title:
                                                                                        type: string
                                                                                        nullable: true
                                                                                    start_char_index:
                                                                                        type: number
                                                                                    end_char_index:
                                                                                        type: number
                                                                                  required:
                                                                                    - type
                                                                                    - cited_text
                                                                                    - document_index
                                                                                    - document_title
                                                                                    - start_char_index
                                                                                    - end_char_index
                                                                                - type: object
                                                                                  properties:
                                                                                    type:
                                                                                        type: string
                                                                                        enum:
                                                                                            - page_location
                                                                                    cited_text:
                                                                                        type: string
                                                                                    document_index:
                                                                                        type: number
                                                                                    document_title:
                                                                                        type: string
                                                                                        nullable: true
                                                                                    start_page_number:
                                                                                        type: number
                                                                                    end_page_number:
                                                                                        type: number
                                                                                  required:
                                                                                    - type
                                                                                    - cited_text
                                                                                    - document_index
                                                                                    - document_title
                                                                                    - start_page_number
                                                                                    - end_page_number
                                                                                - type: object
                                                                                  properties:
                                                                                    type:
                                                                                        type: string
                                                                                        enum:
                                                                                            - content_block_location
                                                                                    cited_text:
                                                                                        type: string
                                                                                    document_index:
                                                                                        type: number
                                                                                    document_title:
                                                                                        type: string
                                                                                        nullable: true
                                                                                    start_block_index:
                                                                                        type: number
                                                                                    end_block_index:
                                                                                        type: number
                                                                                  required:
                                                                                    - type
                                                                                    - cited_text
                                                                                    - document_index
                                                                                    - document_title
                                                                                    - start_block_index
                                                                                    - end_block_index
                                                                                - type: object
                                                                                  properties:
                                                                                    type:
                                                                                        type: string
                                                                                        enum:
                                                                                            - web_search_result_location
                                                                                    cited_text:
                                                                                        type: string
                                                                                    encrypted_index:
                                                                                        type: string
                                                                                    title:
                                                                                        type: string
                                                                                        nullable: true
                                                                                    url:
                                                                                        type: string
                                                                                  required:
                                                                                    - type
                                                                                    - cited_text
                                                                                    - encrypted_index
                                                                                    - title
                                                                                    - url
                                                                                - type: object
                                                                                  properties:
                                                                                    type:
                                                                                        type: string
                                                                                        enum:
                                                                                            - search_result_location
                                                                                    cited_text:
                                                                                        type: string
                                                                                    search_result_index:
                                                                                        type: number
                                                                                    source:
                                                                                        type: string
                                                                                    title:
                                                                                        type: string
                                                                                        nullable: true
                                                                                    start_block_index:
                                                                                        type: number
                                                                                    end_block_index:
                                                                                        type: number
                                                                                  required:
                                                                                    - type
                                                                                    - cited_text
                                                                                    - search_result_index
                                                                                    - source
                                                                                    - title
                                                                                    - start_block_index
                                                                                    - end_block_index
                                                                    cache_control:
                                                                        type: object
                                                                        properties:
                                                                            type:
                                                                                type: string
                                                                                enum:
                                                                                    - ephemeral
                                                                            ttl:
                                                                                type: string
                                                                                enum:
                                                                                    - 5m
                                                                                    - 1h
                                                                                x-speakeasy-unknown-values: allow
                                                                        required:
                                                                            - type
                                                                  required:
                                                                    - type
                                                                    - text
                                                                - type: object
                                                                  properties:
                                                                    type:
                                                                        type: string
                                                                        enum:
                                                                            - image
                                                                    source:
                                                                        oneOf:
                                                                            - type: object
                                                                              properties:
                                                                                type:
                                                                                    type: string
                                                                                    enum:
                                                                                        - base64
                                                                                media_type:
                                                                                    type: string
                                                                                    enum:
                                                                                        - image/jpeg
                                                                                        - image/png
                                                                                        - image/gif
                                                                                        - image/webp
                                                                                    x-speakeasy-unknown-values: allow
                                                                                data:
                                                                                    type: string
                                                                              required:
                                                                                - type
                                                                                - media_type
                                                                                - data
                                                                            - type: object
                                                                              properties:
                                                                                type:
                                                                                    type: string
                                                                                    enum:
                                                                                        - url
                                                                                url:
                                                                                    type: string
                                                                              required:
                                                                                - type
                                                                                - url
                                                                    cache_control:
                                                                        type: object
                                                                        properties:
                                                                            type:
                                                                                type: string
                                                                                enum:
                                                                                    - ephemeral
                                                                            ttl:
                                                                                type: string
                                                                                enum:
                                                                                    - 5m
                                                                                    - 1h
                                                                                x-speakeasy-unknown-values: allow
                                                                        required:
                                                                            - type
                                                                  required:
                                                                    - type
                                                                    - source
                                              required:
                                                - type
                                                - content
                                            - type: object
                                              properties:
                                                type:
                                                    type: string
                                                    enum:
                                                        - url
                                                url:
                                                    type: string
                                              required:
                                                - type
                                                - url
                                    citations:
                                        type: object
                                        nullable: true
                                        properties:
                                            enabled:
                                                type: boolean
                                    context:
                                        type: string
                                        nullable: true
                                    title:
                                        type: string
                                        nullable: true
                                    cache_control:
                                        type: object
                                        properties:
                                            type:
                                                type: string
                                                enum:
                                                    - ephemeral
                                            ttl:
                                                type: string
                                                enum:
                                                    - 5m
                                                    - 1h
                                                x-speakeasy-unknown-values: allow
                                        required:
                                            - type
                                  required:
                                    - type
                                    - source
                                - type: object
                                  properties:
                                    type:
                                        type: string
                                        enum:
                                            - tool_use
                                    id:
                                        type: string
                                    name:
                                        type: string
                                    input:
                                        nullable: true
                                    cache_control:
                                        type: object
                                        properties:
                                            type:
                                                type: string
                                                enum:
                                                    - ephemeral
                                            ttl:
                                                type: string
                                                enum:
                                                    - 5m
                                                    - 1h
                                                x-speakeasy-unknown-values: allow
                                        required:
                                            - type
                                  required:
                                    - type
                                    - id
                                    - name
                                - type: object
                                  properties:
                                    type:
                                        type: string
                                        enum:
                                            - tool_result
                                    tool_use_id:
                                        type: string
                                    content:
                                        anyOf:
                                            - type: string
                                            - type: array
                                              items:
                                                anyOf:
                                                    - type: object
                                                      properties:
                                                        type:
                                                            type: string
                                                            enum:
                                                                - text
                                                        text:
                                                            type: string
                                                        citations:
                                                            type: array
                                                            nullable: true
                                                            items:
                                                                oneOf:
                                                                    - type: object
                                                                      properties:
                                                                        type:
                                                                            type: string
                                                                            enum:
                                                                                - char_location
                                                                        cited_text:
                                                                            type: string
                                                                        document_index:
                                                                            type: number
                                                                        document_title:
                                                                            type: string
                                                                            nullable: true
                                                                        start_char_index:
                                                                            type: number
                                                                        end_char_index:
                                                                            type: number
                                                                      required:
                                                                        - type
                                                                        - cited_text
                                                                        - document_index
                                                                        - document_title
                                                                        - start_char_index
                                                                        - end_char_index
                                                                    - type: object
                                                                      properties:
                                                                        type:
                                                                            type: string
                                                                            enum:
                                                                                - page_location
                                                                        cited_text:
                                                                            type: string
                                                                        document_index:
                                                                            type: number
                                                                        document_title:
                                                                            type: string
                                                                            nullable: true
                                                                        start_page_number:
                                                                            type: number
                                                                        end_page_number:
                                                                            type: number
                                                                      required:
                                                                        - type
                                                                        - cited_text
                                                                        - document_index
                                                                        - document_title
                                                                        - start_page_number
                                                                        - end_page_number
                                                                    - type: object
                                                                      properties:
                                                                        type:
                                                                            type: string
                                                                            enum:
                                                                                - content_block_location
                                                                        cited_text:
                                                                            type: string
                                                                        document_index:
                                                                            type: number
                                                                        document_title:
                                                                            type: string
                                                                            nullable: true
                                                                        start_block_index:
                                                                            type: number
                                                                        end_block_index:
                                                                            type: number
                                                                      required:
                                                                        - type
                                                                        - cited_text
                                                                        - document_index
                                                                        - document_title
                                                                        - start_block_index
                                                                        - end_block_index
                                                                    - type: object
                                                                      properties:
                                                                        type:
                                                                            type: string
                                                                            enum:
                                                                                - web_search_result_location
                                                                        cited_text:
                                                                            type: string
                                                                        encrypted_index:
                                                                            type: string
                                                                        title:
                                                                            type: string
                                                                            nullable: true
                                                                        url:
                                                                            type: string
                                                                      required:
                                                                        - type
                                                                        - cited_text
                                                                        - encrypted_index
                                                                        - title
                                                                        - url
                                                                    - type: object
                                                                      properties:
                                                                        type:
                                                                            type: string
                                                                            enum:
                                                                                - search_result_location
                                                                        cited_text:
                                                                            type: string
                                                                        search_result_index:
                                                                            type: number
                                                                        source:
                                                                            type: string
                                                                        title:
                                                                            type: string
                                                                            nullable: true
                                                                        start_block_index:
                                                                            type: number
                                                                        end_block_index:
                                                                            type: number
                                                                      required:
                                                                        - type
                                                                        - cited_text
                                                                        - search_result_index
                                                                        - source
                                                                        - title
                                                                        - start_block_index
                                                                        - end_block_index
                                                        cache_control:
                                                            type: object
                                                            properties:
                                                                type:
                                                                    type: string
                                                                    enum:
                                                                        - ephemeral
                                                                ttl:
                                                                    type: string
                                                                    enum:
                                                                        - 5m
                                                                        - 1h
                                                                    x-speakeasy-unknown-values: allow
                                                            required:
                                                                - type
                                                      required:
                                                        - type
                                                        - text
                                                    - type: object
                                                      properties:
                                                        type:
                                                            type: string
                                                            enum:
                                                                - image
                                                        source:
                                                            oneOf:
                                                                - type: object
                                                                  properties:
                                                                    type:
                                                                        type: string
                                                                        enum:
                                                                            - base64
                                                                    media_type:
                                                                        type: string
                                                                        enum:
                                                                            - image/jpeg
                                                                            - image/png
                                                                            - image/gif
                                                                            - image/webp
                                                                        x-speakeasy-unknown-values: allow
                                                                    data:
                                                                        type: string
                                                                  required:
                                                                    - type
                                                                    - media_type
                                                                    - data
                                                                - type: object
                                                                  properties:
                                                                    type:
                                                                        type: string
                                                                        enum:
                                                                            - url
                                                                    url:
                                                                        type: string
                                                                  required:
                                                                    - type
                                                                    - url
                                                        cache_control:
                                                            type: object
                                                            properties:
                                                                type:
                                                                    type: string
                                                                    enum:
                                                                        - ephemeral
                                                                ttl:
                                                                    type: string
                                                                    enum:
                                                                        - 5m
                                                                        - 1h
                                                                    x-speakeasy-unknown-values: allow
                                                            required:
                                                                - type
                                                      required:
                                                        - type
                                                        - source
                                    is_error:
                                        type: boolean
                                    cache_control:
                                        type: object
                                        properties:
                                            type:
                                                type: string
                                                enum:
                                                    - ephemeral
                                            ttl:
                                                type: string
                                                enum:
                                                    - 5m
                                                    - 1h
                                                x-speakeasy-unknown-values: allow
                                        required:
                                            - type
                                  required:
                                    - type
                                    - tool_use_id
                                - type: object
                                  properties:
                                    type:
                                        type: string
                                        enum:
                                            - thinking
                                    thinking:
                                        type: string
                                    signature:
                                        type: string
                                  required:
                                    - type
                                    - thinking
                                    - signature
                                - type: object
                                  properties:
                                    type:
                                        type: string
                                        enum:
                                            - redacted_thinking
                                    data:
                                        type: string
                                  required:
                                    - type
                                    - data
                                - type: object
                                  properties:
                                    type:
                                        type: string
                                        enum:
                                            - server_tool_use
                                    id:
                                        type: string
                                    name:
                                        type: string
                                        enum:
                                            - web_search
                                    input:
                                        nullable: true
                                    cache_control:
                                        type: object
                                        properties:
                                            type:
                                                type: string
                                                enum:
                                                    - ephemeral
                                            ttl:
                                                type: string
                                                enum:
                                                    - 5m
                                                    - 1h
                                                x-speakeasy-unknown-values: allow
                                        required:
                                            - type
                                  required:
                                    - type
                                    - id
                                    - name
                                - type: object
                                  properties:
                                    type:
                                        type: string
                                        enum:
                                            - web_search_tool_result
                                    tool_use_id:
                                        type: string
                                    content:
                                        anyOf:
                                            - type: array
                                              items:
                                                type: object
                                                properties:
                                                    type:
                                                        type: string
                                                        enum:
                                                            - web_search_result
                                                    encrypted_content:
                                                        type: string
                                                    title:
                                                        type: string
                                                    url:
                                                        type: string
                                                    page_age:
                                                        type: string
                                                        nullable: true
                                                required:
                                                    - type
                                                    - encrypted_content
                                                    - title
                                                    - url
                                            - type: object
                                              properties:
                                                type:
                                                    type: string
                                                    enum:
                                                        - web_search_tool_result_error
                                                error_code:
                                                    type: string
                                                    enum:
                                                        - invalid_tool_input
                                                        - unavailable
                                                        - max_uses_exceeded
                                                        - too_many_requests
                                                        - query_too_long
                                                    x-speakeasy-unknown-values: allow
                                              required:
                                                - type
                                                - error_code
                                    cache_control:
                                        type: object
                                        properties:
                                            type:
                                                type: string
                                                enum:
                                                    - ephemeral
                                            ttl:
                                                type: string
                                                enum:
                                                    - 5m
                                                    - 1h
                                                x-speakeasy-unknown-values: allow
                                        required:
                                            - type
                                  required:
                                    - type
                                    - tool_use_id
                                    - content
                                - type: object
                                  properties:
                                    type:
                                        type: string
                                        enum:
                                            - search_result
                                    source:
                                        type: string
                                    title:
                                        type: string
                                    content:
                                        type: array
                                        items:
                                            type: object
                                            properties:
                                                type:
                                                    type: string
                                                    enum:
                                                        - text
                                                text:
                                                    type: string
                                                citations:
                                                    type: array
                                                    nullable: true
                                                    items:
                                                        oneOf:
                                                            - type: object
                                                              properties:
                                                                type:
                                                                    type: string
                                                                    enum:
                                                                        - char_location
                                                                cited_text:
                                                                    type: string
                                                                document_index:
                                                                    type: number
                                                                document_title:
                                                                    type: string
                                                                    nullable: true
                                                                start_char_index:
                                                                    type: number
                                                                end_char_index:
                                                                    type: number
                                                              required:
                                                                - type
                                                                - cited_text
                                                                - document_index
                                                                - document_title
                                                                - start_char_index
                                                                - end_char_index
                                                            - type: object
                                                              properties:
                                                                type:
                                                                    type: string
                                                                    enum:
                                                                        - page_location
                                                                cited_text:
                                                                    type: string
                                                                document_index:
                                                                    type: number
                                                                document_title:
                                                                    type: string
                                                                    nullable: true
                                                                start_page_number:
                                                                    type: number
                                                                end_page_number:
                                                                    type: number
                                                              required:
                                                                - type
                                                                - cited_text
                                                                - document_index
                                                                - document_title
                                                                - start_page_number
                                                                - end_page_number
                                                            - type: object
                                                              properties:
                                                                type:
                                                                    type: string
                                                                    enum:
                                                                        - content_block_location
                                                                cited_text:
                                                                    type: string
                                                                document_index:
                                                                    type: number
                                                                document_title:
                                                                    type: string
                                                                    nullable: true
                                                                start_block_index:
                                                                    type: number
                                                                end_block_index:
                                                                    type: number
                                                              required:
                                                                - type
                                                                - cited_text
                                                                - document_index
                                                                - document_title
                                                                - start_block_index
                                                                - end_block_index
                                                            - type: object
                                                              properties:
                                                                type:
                                                                    type: string
                                                                    enum:
                                                                        - web_search_result_location
                                                                cited_text:
                                                                    type: string
                                                                encrypted_index:
                                                                    type: string
                                                                title:
                                                                    type: string
                                                                    nullable: true
                                                                url:
                                                                    type: string
                                                              required:
                                                                - type
                                                                - cited_text
                                                                - encrypted_index
                                                                - title
                                                                - url
                                                            - type: object
                                                              properties:
                                                                type:
                                                                    type: string
                                                                    enum:
                                                                        - search_result_location
                                                                cited_text:
                                                                    type: string
                                                                search_result_index:
                                                                    type: number
                                                                source:
                                                                    type: string
                                                                title:
                                                                    type: string
                                                                    nullable: true
                                                                start_block_index:
                                                                    type: number
                                                                end_block_index:
                                                                    type: number
                                                              required:
                                                                - type
                                                                - cited_text
                                                                - search_result_index
                                                                - source
                                                                - title
                                                                - start_block_index
                                                                - end_block_index
                                                cache_control:
                                                    type: object
                                                    properties:
                                                        type:
                                                            type: string
                                                            enum:
                                                                - ephemeral
                                                        ttl:
                                                            type: string
                                                            enum:
                                                                - 5m
                                                                - 1h
                                                            x-speakeasy-unknown-values: allow
                                                    required:
                                                        - type
                                            required:
                                                - type
                                                - text
                                    citations:
                                        type: object
                                        properties:
                                            enabled:
                                                type: boolean
                                    cache_control:
                                        type: object
                                        properties:
                                            type:
                                                type: string
                                                enum:
                                                    - ephemeral
                                            ttl:
                                                type: string
                                                enum:
                                                    - 5m
                                                    - 1h
                                                x-speakeasy-unknown-values: allow
                                        required:
                                            - type
                                  required:
                                    - type
                                    - source
                                    - title
                                    - content
            required:
                - role
                - content
            description: Anthropic message with OpenRouter extensions
        AnthropicMessagesRequest:
            type: object
            properties:
                model:
                    type: string
                max_tokens:
                    type: number
                messages:
                    type: array
                    items:
                        $ref: '#/components/schemas/OpenRouterAnthropicMessageParam'
                system:
                    anyOf:
                        - type: string
                        - type: array
                          items:
                            type: object
                            properties:
                                type:
                                    type: string
                                    enum:
                                        - text
                                text:
                                    type: string
                                citations:
                                    type: array
                                    nullable: true
                                    items:
                                        oneOf:
                                            - type: object
                                              properties:
                                                type:
                                                    type: string
                                                    enum:
                                                        - char_location
                                                cited_text:
                                                    type: string
                                                document_index:
                                                    type: number
                                                document_title:
                                                    type: string
                                                    nullable: true
                                                start_char_index:
                                                    type: number
                                                end_char_index:
                                                    type: number
                                              required:
                                                - type
                                                - cited_text
                                                - document_index
                                                - document_title
                                                - start_char_index
                                                - end_char_index
                                            - type: object
                                              properties:
                                                type:
                                                    type: string
                                                    enum:
                                                        - page_location
                                                cited_text:
                                                    type: string
                                                document_index:
                                                    type: number
                                                document_title:
                                                    type: string
                                                    nullable: true
                                                start_page_number:
                                                    type: number
                                                end_page_number:
                                                    type: number
                                              required:
                                                - type
                                                - cited_text
                                                - document_index
                                                - document_title
                                                - start_page_number
                                                - end_page_number
                                            - type: object
                                              properties:
                                                type:
                                                    type: string
                                                    enum:
                                                        - content_block_location
                                                cited_text:
                                                    type: string
                                                document_index:
                                                    type: number
                                                document_title:
                                                    type: string
                                                    nullable: true
                                                start_block_index:
                                                    type: number
                                                end_block_index:
                                                    type: number
                                              required:
                                                - type
                                                - cited_text
                                                - document_index
                                                - document_title
                                                - start_block_index
                                                - end_block_index
                                            - type: object
                                              properties:
                                                type:
                                                    type: string
                                                    enum:
                                                        - web_search_result_location
                                                cited_text:
                                                    type: string
                                                encrypted_index:
                                                    type: string
                                                title:
                                                    type: string
                                                    nullable: true
                                                url:
                                                    type: string
                                              required:
                                                - type
                                                - cited_text
                                                - encrypted_index
                                                - title
                                                - url
                                            - type: object
                                              properties:
                                                type:
                                                    type: string
                                                    enum:
                                                        - search_result_location
                                                cited_text:
                                                    type: string
                                                search_result_index:
                                                    type: number
                                                source:
                                                    type: string
                                                title:
                                                    type: string
                                                    nullable: true
                                                start_block_index:
                                                    type: number
                                                end_block_index:
                                                    type: number
                                              required:
                                                - type
                                                - cited_text
                                                - search_result_index
                                                - source
                                                - title
                                                - start_block_index
                                                - end_block_index
                                cache_control:
                                    type: object
                                    properties:
                                        type:
                                            type: string
                                            enum:
                                                - ephemeral
                                        ttl:
                                            type: string
                                            enum:
                                                - 5m
                                                - 1h
                                            x-speakeasy-unknown-values: allow
                                    required:
                                        - type
                            required:
                                - type
                                - text
                metadata:
                    type: object
                    properties:
                        user_id:
                            type: string
                            nullable: true
                stop_sequences:
                    type: array
                    items:
                        type: string
                stream:
                    type: boolean
                temperature:
                    type: number
                top_p:
                    type: number
                top_k:
                    type: number
                tools:
                    type: array
                    items:
                        oneOf:
                            - type: object
                              properties:
                                name:
                                    type: string
                                description:
                                    type: string
                                input_schema:
                                    type: object
                                    properties:
                                        type:
                                            type: string
                                            enum:
                                                - object
                                        properties:
                                            nullable: true
                                        required:
                                            type: array
                                            nullable: true
                                            items:
                                                type: string
                                    required:
                                        - type
                                    additionalProperties:
                                        nullable: true
                                type:
                                    type: string
                                    enum:
                                        - custom
                                cache_control:
                                    type: object
                                    properties:
                                        type:
                                            type: string
                                            enum:
                                                - ephemeral
                                        ttl:
                                            type: string
                                            enum:
                                                - 5m
                                                - 1h
                                            x-speakeasy-unknown-values: allow
                                    required:
                                        - type
                              required:
                                - name
                                - input_schema
                            - type: object
                              properties:
                                type:
                                    type: string
                                    enum:
                                        - bash_20250124
                                name:
                                    type: string
                                    enum:
                                        - bash
                                cache_control:
                                    type: object
                                    properties:
                                        type:
                                            type: string
                                            enum:
                                                - ephemeral
                                        ttl:
                                            type: string
                                            enum:
                                                - 5m
                                                - 1h
                                            x-speakeasy-unknown-values: allow
                                    required:
                                        - type
                              required:
                                - type
                                - name
                            - type: object
                              properties:
                                type:
                                    type: string
                                    enum:
                                        - text_editor_20250124
                                name:
                                    type: string
                                    enum:
                                        - str_replace_editor
                                cache_control:
                                    type: object
                                    properties:
                                        type:
                                            type: string
                                            enum:
                                                - ephemeral
                                        ttl:
                                            type: string
                                            enum:
                                                - 5m
                                                - 1h
                                            x-speakeasy-unknown-values: allow
                                    required:
                                        - type
                              required:
                                - type
                                - name
                            - type: object
                              properties:
                                type:
                                    type: string
                                    enum:
                                        - web_search_20250305
                                name:
                                    type: string
                                    enum:
                                        - web_search
                                allowed_domains:
                                    type: array
                                    nullable: true
                                    items:
                                        type: string
                                blocked_domains:
                                    type: array
                                    nullable: true
                                    items:
                                        type: string
                                max_uses:
                                    type: number
                                    nullable: true
                                user_location:
                                    type: object
                                    nullable: true
                                    properties:
                                        type:
                                            type: string
                                            enum:
                                                - approximate
                                        city:
                                            type: string
                                            nullable: true
                                        country:
                                            type: string
                                            nullable: true
                                        region:
                                            type: string
                                            nullable: true
                                        timezone:
                                            type: string
                                            nullable: true
                                    required:
                                        - type
                                cache_control:
                                    type: object
                                    properties:
                                        type:
                                            type: string
                                            enum:
                                                - ephemeral
                                        ttl:
                                            type: string
                                            enum:
                                                - 5m
                                                - 1h
                                            x-speakeasy-unknown-values: allow
                                    required:
                                        - type
                              required:
                                - type
                                - name
                tool_choice:
                    oneOf:
                        - type: object
                          properties:
                            type:
                                type: string
                                enum:
                                    - auto
                            disable_parallel_tool_use:
                                type: boolean
                          required:
                            - type
                        - type: object
                          properties:
                            type:
                                type: string
                                enum:
                                    - any
                            disable_parallel_tool_use:
                                type: boolean
                          required:
                            - type
                        - type: object
                          properties:
                            type:
                                type: string
                                enum:
                                    - none
                          required:
                            - type
                        - type: object
                          properties:
                            type:
                                type: string
                                enum:
                                    - tool
                            name:
                                type: string
                            disable_parallel_tool_use:
                                type: boolean
                          required:
                            - type
                            - name
                thinking:
                    oneOf:
                        - type: object
                          properties:
                            type:
                                type: string
                                enum:
                                    - enabled
                            budget_tokens:
                                type: number
                          required:
                            - type
                            - budget_tokens
                        - type: object
                          properties:
                            type:
                                type: string
                                enum:
                                    - disabled
                          required:
                            - type
                service_tier:
                    type: string
                    enum:
                        - auto
                        - standard_only
                    x-speakeasy-unknown-values: allow
                provider:
                    type: object
                    nullable: true
                    properties:
                        allow_fallbacks:
                            type: boolean
                            nullable: true
                            description: >
                                Whether to allow backup providers to serve requests

                                - true: (default) when the primary provider (or your custom providers in "order") is unavailable, use the next best provider.

                                - false: use only the primary/custom provider, and return the upstream error if it's unavailable.

                        require_parameters:
                            type: boolean
                            nullable: true
                            description: >-
                                Whether to filter providers to only those that support the parameters you've provided. If this setting is omitted or set to false, then providers will receive only the parameters they support, and ignore the rest.
                        data_collection:
                            $ref: '#/components/schemas/DataCollection'
                        zdr:
                            type: boolean
                            nullable: true
                            description: >-
                                Whether to restrict routing to only ZDR (Zero Data Retention) endpoints. When true, only endpoints that do not retain prompts will be used.
                            example: true
                        enforce_distillable_text:
                            type: boolean
                            nullable: true
                            description: >-
                                Whether to restrict routing to only models that allow text distillation. When true, only models where the author has allowed distillation will be used.
                            example: true
                        order:
                            type: array
                            nullable: true
                            items:
                                anyOf:
                                    - $ref: '#/components/schemas/ProviderName'
                                    - type: string
                            description: >-
                                An ordered list of provider slugs. The router will attempt to use the first provider in the subset of this list that supports your requested model, and fall back to the next if it is unavailable. If no providers are available, the request will fail with an error message.
                        only:
                            type: array
                            nullable: true
                            items:
                                anyOf:
                                    - $ref: '#/components/schemas/ProviderName'
                                    - type: string
                            description: >-
                                List of provider slugs to allow. If provided, this list is merged with your account-wide allowed provider settings for this request.
                        ignore:
                            type: array
                            nullable: true
                            items:
                                anyOf:
                                    - $ref: '#/components/schemas/ProviderName'
                                    - type: string
                            description: >-
                                List of provider slugs to ignore. If provided, this list is merged with your account-wide ignored provider settings for this request.
                        quantizations:
                            type: array
                            nullable: true
                            items:
                                $ref: '#/components/schemas/Quantization'
                            description: A list of quantization levels to filter the provider by.
                        sort:
                            allOf:
                                - $ref: '#/components/schemas/ProviderSort'
                                - anyOf:
                                    - $ref: '#/components/schemas/ProviderSort'
                                    - $ref: '#/components/schemas/ProviderSortConfig'
                                    - nullable: true
                                  description: >-
                                    The sorting strategy to use for this request, if "order" is not specified. When set, no load balancing is performed.
                        max_price:
                            type: object
                            properties:
                                prompt:
                                    $ref: '#/components/schemas/BigNumberUnion'
                                completion:
                                    $ref: '#/components/schemas/BigNumberUnion'
                                image:
                                    $ref: '#/components/schemas/BigNumberUnion'
                                audio:
                                    $ref: '#/components/schemas/BigNumberUnion'
                                request:
                                    $ref: '#/components/schemas/BigNumberUnion'
                            description: >-
                                The object specifying the maximum price you want to pay for this request. USD price per million tokens, for prompt and completion.
                        preferred_min_throughput:
                            $ref: '#/components/schemas/PreferredMinThroughput'
                        preferred_max_latency:
                            $ref: '#/components/schemas/PreferredMaxLatency'
                    additionalProperties: false
                    description: When multiple model providers are available, optionally indicate your routing preference.
                plugins:
                    type: array
                    items:
                        oneOf:
                            - type: object
                              properties:
                                id:
                                    type: string
                                    enum:
                                        - auto-router
                                enabled:
                                    type: boolean
                                    description: Set to false to disable the auto-router plugin for this request. Defaults to true.
                                allowed_models:
                                    type: array
                                    items:
                                        type: string
                                    description: >-
                                        List of model patterns to filter which models the auto-router can route between. Supports wildcards (e.g., "anthropic/*" matches all Anthropic models). When not specified, uses the default supported models list.
                                    example:
                                        - anthropic/*
                                        - openai/gpt-4o
                                        - google/*
                              required:
                                - id
                            - type: object
                              properties:
                                id:
                                    type: string
                                    enum:
                                        - moderation
                              required:
                                - id
                            - type: object
                              properties:
                                id:
                                    type: string
                                    enum:
                                        - web
                                enabled:
                                    type: boolean
                                    description: Set to false to disable the web-search plugin for this request. Defaults to true.
                                max_results:
                                    type: number
                                search_prompt:
                                    type: string
                                engine:
                                    $ref: '#/components/schemas/WebSearchEngine'
                              required:
                                - id
                            - type: object
                              properties:
                                id:
                                    type: string
                                    enum:
                                        - file-parser
                                enabled:
                                    type: boolean
                                    description: Set to false to disable the file-parser plugin for this request. Defaults to true.
                                pdf:
                                    $ref: '#/components/schemas/PDFParserOptions'
                              required:
                                - id
                            - type: object
                              properties:
                                id:
                                    type: string
                                    enum:
                                        - response-healing
                                enabled:
                                    type: boolean
                                    description: Set to false to disable the response-healing plugin for this request. Defaults to true.
                              required:
                                - id
                    description: Plugins you want to enable for this request, including their settings.
                route:
                    type: string
                    nullable: true
                    enum:
                        - fallback
                        - sort
                    deprecated: true
                    description: >-
                        **DEPRECATED** Use providers.sort.partition instead. Backwards-compatible alias for providers.sort.partition. Accepts legacy values: "fallback" (maps to "model"), "sort" (maps to "none").
                    x-speakeasy-deprecation-message: Use providers.sort.partition instead.
                    x-speakeasy-ignore: true
                    x-fern-ignore: true
                    x-speakeasy-unknown-values: allow
                user:
                    type: string
                    maxLength: 128
                    description: >-
                        A unique identifier representing your end-user, which helps distinguish between different users of your app. This allows your app to identify specific users in case of abuse reports, preventing your entire app from being affected by the actions of individual users. Maximum of 128 characters.
                session_id:
                    type: string
                    maxLength: 128
                    description: >-
                        A unique identifier for grouping related requests (e.g., a conversation or agent workflow) for observability. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 128 characters.
                models:
                    type: array
                    items:
                        type: string
            required:
                - model
                - max_tokens
                - messages
            description: Request schema for Anthropic Messages API endpoint
            example:
                model: anthropic/claude-4.5-sonnet-20250929
                max_tokens: 1024
                messages:
                    - role: user
                      content: Hello, how are you?
                temperature: 0.7
        ActivityItem:
            type: object
            properties:
                date:
                    type: string
                    description: Date of the activity (YYYY-MM-DD format)
                    example: '2025-08-24'
                model:
                    type: string
                    description: Model slug (e.g., "openai/gpt-4.1")
                    example: openai/gpt-4.1
                model_permaslug:
                    type: string
                    description: Model permaslug (e.g., "openai/gpt-4.1-2025-04-14")
                    example: openai/gpt-4.1-2025-04-14
                endpoint_id:
                    type: string
                    description: Unique identifier for the endpoint
                    example: 550e8400-e29b-41d4-a716-446655440000
                provider_name:
                    type: string
                    description: Name of the provider serving this endpoint
                    example: OpenAI
                usage:
                    type: number
                    description: Total cost in USD (OpenRouter credits spent)
                    example: 0.015
                byok_usage_inference:
                    type: number
                    description: BYOK inference cost in USD (external credits spent)
                    example: 0.012
                requests:
                    type: number
                    description: Number of requests made
                    example: 5
                prompt_tokens:
                    type: number
                    description: Total prompt tokens used
                    example: 50
                completion_tokens:
                    type: number
                    description: Total completion tokens generated
                    example: 125
                reasoning_tokens:
                    type: number
                    description: Total reasoning tokens used
                    example: 25
            required:
                - date
                - model
                - model_permaslug
                - endpoint_id
                - provider_name
                - usage
                - byok_usage_inference
                - requests
                - prompt_tokens
                - completion_tokens
                - reasoning_tokens
            example:
                date: '2025-08-24'
                model: openai/gpt-4.1
                model_permaslug: openai/gpt-4.1-2025-04-14
                endpoint_id: 550e8400-e29b-41d4-a716-446655440000
                provider_name: OpenAI
                usage: 0.015
                byok_usage_inference: 0.012
                requests: 5
                prompt_tokens: 50
                completion_tokens: 125
                reasoning_tokens: 25
        ForbiddenResponseErrorData:
            type: object
            properties:
                code:
                    type: integer
                message:
                    type: string
                metadata:
                    type: object
                    nullable: true
                    additionalProperties:
                        nullable: true
            required:
                - code
                - message
            description: Error data for ForbiddenResponse
            example:
                code: 403
                message: Only provisioning keys can perform this operation
        ForbiddenResponse:
            type: object
            properties:
                error:
                    $ref: '#/components/schemas/ForbiddenResponseErrorData'
                user_id:
                    type: string
                    nullable: true
            required:
                - error
            description: Forbidden - Authentication successful but insufficient permissions
            example:
                error:
                    code: 403
                    message: Only provisioning keys can perform this operation
        CreateChargeRequest:
            type: object
            properties:
                amount:
                    type: number
                sender:
                    type: string
                chain_id:
                    type: integer
                    enum:
                        - 1
                        - 137
                        - 8453
                    x-speakeasy-unknown-values: allow
            required:
                - amount
                - sender
                - chain_id
            description: Create a Coinbase charge for crypto payment
            example:
                amount: 100
                sender: '0x1234567890123456789012345678901234567890'
                chain_id: 1
        ProviderPreferences:
            type: object
            properties:
                allow_fallbacks:
                    type: boolean
                    nullable: true
                    description: >
                        Whether to allow backup providers to serve requests

                        - true: (default) when the primary provider (or your custom providers in "order") is unavailable, use the next best provider.

                        - false: use only the primary/custom provider, and return the upstream error if it's unavailable.

                require_parameters:
                    type: boolean
                    nullable: true
                    description: >-
                        Whether to filter providers to only those that support the parameters you've provided. If this setting is omitted or set to false, then providers will receive only the parameters they support, and ignore the rest.
                data_collection:
                    $ref: '#/components/schemas/DataCollection'
                zdr:
                    type: boolean
                    nullable: true
                    description: >-
                        Whether to restrict routing to only ZDR (Zero Data Retention) endpoints. When true, only endpoints that do not retain prompts will be used.
                    example: true
                enforce_distillable_text:
                    type: boolean
                    nullable: true
                    description: >-
                        Whether to restrict routing to only models that allow text distillation. When true, only models where the author has allowed distillation will be used.
                    example: true
                order:
                    type: array
                    nullable: true
                    items:
                        anyOf:
                            - $ref: '#/components/schemas/ProviderName'
                            - type: string
                    description: >-
                        An ordered list of provider slugs. The router will attempt to use the first provider in the subset of this list that supports your requested model, and fall back to the next if it is unavailable. If no providers are available, the request will fail with an error message.
                only:
                    type: array
                    nullable: true
                    items:
                        anyOf:
                            - $ref: '#/components/schemas/ProviderName'
                            - type: string
                    description: >-
                        List of provider slugs to allow. If provided, this list is merged with your account-wide allowed provider settings for this request.
                ignore:
                    type: array
                    nullable: true
                    items:
                        anyOf:
                            - $ref: '#/components/schemas/ProviderName'
                            - type: string
                    description: >-
                        List of provider slugs to ignore. If provided, this list is merged with your account-wide ignored provider settings for this request.
                quantizations:
                    type: array
                    nullable: true
                    items:
                        $ref: '#/components/schemas/Quantization'
                    description: A list of quantization levels to filter the provider by.
                sort:
                    allOf:
                        - $ref: '#/components/schemas/ProviderSort'
                        - anyOf:
                            - $ref: '#/components/schemas/ProviderSort'
                            - $ref: '#/components/schemas/ProviderSortConfig'
                            - nullable: true
                          description: >-
                            The sorting strategy to use for this request, if "order" is not specified. When set, no load balancing is performed.
                max_price:
                    type: object
                    properties:
                        prompt:
                            $ref: '#/components/schemas/BigNumberUnion'
                        completion:
                            $ref: '#/components/schemas/BigNumberUnion'
                        image:
                            $ref: '#/components/schemas/BigNumberUnion'
                        audio:
                            $ref: '#/components/schemas/BigNumberUnion'
                        request:
                            $ref: '#/components/schemas/BigNumberUnion'
                    description: >-
                        The object specifying the maximum price you want to pay for this request. USD price per million tokens, for prompt and completion.
                preferred_min_throughput:
                    $ref: '#/components/schemas/PreferredMinThroughput'
                preferred_max_latency:
                    $ref: '#/components/schemas/PreferredMaxLatency'
            description: Provider routing preferences for the request.
        PublicPricing:
            type: object
            properties:
                prompt:
                    $ref: '#/components/schemas/BigNumberUnion'
                completion:
                    $ref: '#/components/schemas/BigNumberUnion'
                request:
                    $ref: '#/components/schemas/BigNumberUnion'
                image:
                    $ref: '#/components/schemas/BigNumberUnion'
                image_token:
                    $ref: '#/components/schemas/BigNumberUnion'
                image_output:
                    $ref: '#/components/schemas/BigNumberUnion'
                audio:
                    $ref: '#/components/schemas/BigNumberUnion'
                audio_output:
                    $ref: '#/components/schemas/BigNumberUnion'
                input_audio_cache:
                    $ref: '#/components/schemas/BigNumberUnion'
                web_search:
                    $ref: '#/components/schemas/BigNumberUnion'
                internal_reasoning:
                    $ref: '#/components/schemas/BigNumberUnion'
                input_cache_read:
                    $ref: '#/components/schemas/BigNumberUnion'
                input_cache_write:
                    $ref: '#/components/schemas/BigNumberUnion'
                discount:
                    type: number
            required:
                - prompt
                - completion
            additionalProperties: false
            description: Pricing information for the model
            example:
                prompt: '0.00003'
                completion: '0.00006'
                request: '0'
                image: '0'
        ModelGroup:
            type: string
            enum:
                - Router
                - Media
                - Other
                - GPT
                - Claude
                - Gemini
                - Grok
                - Cohere
                - Nova
                - Qwen
                - Yi
                - DeepSeek
                - Mistral
                - Llama2
                - Llama3
                - Llama4
                - PaLM
                - RWKV
                - Qwen3
            example: GPT
            description: Tokenizer type used by the model
            x-speakeasy-unknown-values: allow
        InputModality:
            type: string
            enum:
                - text
                - image
                - file
                - audio
                - video
            example: text
            x-speakeasy-unknown-values: allow
        OutputModality:
            type: string
            enum:
                - text
                - image
                - embeddings
                - audio
            example: text
            x-speakeasy-unknown-values: allow
        ModelArchitecture:
            type: object
            properties:
                tokenizer:
                    $ref: '#/components/schemas/ModelGroup'
                instruct_type:
                    type: string
                    nullable: true
                    enum:
                        - none
                        - airoboros
                        - alpaca
                        - alpaca-modif
                        - chatml
                        - claude
                        - code-llama
                        - gemma
                        - llama2
                        - llama3
                        - mistral
                        - nemotron
                        - neural
                        - openchat
                        - phi3
                        - rwkv
                        - vicuna
                        - zephyr
                        - deepseek-r1
                        - deepseek-v3.1
                        - qwq
                        - qwen3
                    example: chatml
                    description: Instruction format type
                    x-speakeasy-unknown-values: allow
                modality:
                    type: string
                    nullable: true
                    description: Primary modality of the model
                    example: text->text
                input_modalities:
                    type: array
                    items:
                        $ref: '#/components/schemas/InputModality'
                    description: Supported input modalities
                output_modalities:
                    type: array
                    items:
                        $ref: '#/components/schemas/OutputModality'
                    description: Supported output modalities
            required:
                - modality
                - input_modalities
                - output_modalities
            description: Model architecture information
            example:
                tokenizer: GPT
                instruct_type: chatml
                modality: text->text
                input_modalities:
                    - text
                output_modalities:
                    - text
        TopProviderInfo:
            type: object
            properties:
                context_length:
                    type: number
                    nullable: true
                    description: Context length from the top provider
                    example: 8192
                max_completion_tokens:
                    type: number
                    nullable: true
                    description: Maximum completion tokens from the top provider
                    example: 4096
                is_moderated:
                    type: boolean
                    description: Whether the top provider moderates content
                    example: true
            required:
                - is_moderated
            description: Information about the top provider for this model
            example:
                context_length: 8192
                max_completion_tokens: 4096
                is_moderated: true
        PerRequestLimits:
            type: object
            nullable: true
            properties:
                prompt_tokens:
                    type: number
                    example: 1000
                    description: Maximum prompt tokens per request
                completion_tokens:
                    type: number
                    example: 1000
                    description: Maximum completion tokens per request
            required:
                - prompt_tokens
                - completion_tokens
            description: Per-request token limits
            example:
                prompt_tokens: 1000
                completion_tokens: 1000
        Parameter:
            type: string
            enum:
                - temperature
                - top_p
                - top_k
                - min_p
                - top_a
                - frequency_penalty
                - presence_penalty
                - repetition_penalty
                - max_tokens
                - logit_bias
                - logprobs
                - top_logprobs
                - seed
                - response_format
                - structured_outputs
                - stop
                - tools
                - tool_choice
                - parallel_tool_calls
                - include_reasoning
                - reasoning
                - reasoning_effort
                - web_search_options
                - verbosity
            example: temperature
            x-speakeasy-unknown-values: allow
        DefaultParameters:
            type: object
            nullable: true
            properties:
                temperature:
                    type: number
                    nullable: true
                    minimum: 0
                    maximum: 2
                top_p:
                    type: number
                    nullable: true
                    minimum: 0
                    maximum: 1
                frequency_penalty:
                    type: number
                    nullable: true
                    minimum: -2
                    maximum: 2
            additionalProperties: false
            description: Default parameters for this model
            example:
                temperature: 0.7
                top_p: 0.9
                frequency_penalty: 0
        Model:
            type: object
            properties:
                id:
                    type: string
                    description: Unique identifier for the model
                    example: openai/gpt-4
                canonical_slug:
                    type: string
                    description: Canonical slug for the model
                    example: openai/gpt-4
                hugging_face_id:
                    type: string
                    nullable: true
                    description: Hugging Face model identifier, if applicable
                    example: microsoft/DialoGPT-medium
                name:
                    type: string
                    description: Display name of the model
                    example: GPT-4
                created:
                    type: number
                    description: Unix timestamp of when the model was created
                    example: 1692901234
                description:
                    type: string
                    description: Description of the model
                    example: GPT-4 is a large multimodal model that can solve difficult problems with greater accuracy.
                pricing:
                    $ref: '#/components/schemas/PublicPricing'
                context_length:
                    type: number
                    nullable: true
                    description: Maximum context length in tokens
                    example: 8192
                architecture:
                    $ref: '#/components/schemas/ModelArchitecture'
                top_provider:
                    $ref: '#/components/schemas/TopProviderInfo'
                per_request_limits:
                    $ref: '#/components/schemas/PerRequestLimits'
                supported_parameters:
                    type: array
                    items:
                        $ref: '#/components/schemas/Parameter'
                    description: List of supported parameters for this model
                default_parameters:
                    $ref: '#/components/schemas/DefaultParameters'
                expiration_date:
                    type: string
                    nullable: true
                    description: The date after which the model may be removed. ISO 8601 date string (YYYY-MM-DD) or null if no expiration.
                    example: '2025-06-01'
            required:
                - id
                - canonical_slug
                - name
                - created
                - pricing
                - context_length
                - architecture
                - top_provider
                - per_request_limits
                - supported_parameters
                - default_parameters
            description: Information about an AI model available on OpenRouter
            example:
                id: openai/gpt-4
                canonical_slug: openai/gpt-4
                name: GPT-4
                created: 1692901234
                description: GPT-4 is a large multimodal model that can solve difficult problems with greater accuracy.
                pricing:
                    prompt: '0.00003'
                    completion: '0.00006'
                    request: '0'
                    image: '0'
                context_length: 8192
                architecture:
                    tokenizer: GPT
                    instruct_type: chatml
                    modality: text->text
                    input_modalities:
                        - text
                    output_modalities:
                        - text
                top_provider:
                    context_length: 8192
                    max_completion_tokens: 4096
                    is_moderated: true
                per_request_limits: null
                supported_parameters:
                    - temperature
                    - top_p
                    - max_tokens
                default_parameters: null
                expiration_date: null
        ModelsListResponseData:
            type: array
            items:
                $ref: '#/components/schemas/Model'
            description: List of available models
        ModelsListResponse:
            type: object
            properties:
                data:
                    $ref: '#/components/schemas/ModelsListResponseData'
            required:
                - data
            description: List of available models
            example:
                data:
                    - id: openai/gpt-4
                      canonical_slug: openai/gpt-4
                      name: GPT-4
                      created: 1692901234
                      description: GPT-4 is a large multimodal model that can solve difficult problems with greater accuracy.
                      pricing:
                        prompt: '0.00003'
                        completion: '0.00006'
                        request: '0'
                        image: '0'
                      context_length: 8192
                      architecture:
                        tokenizer: GPT
                        instruct_type: chatml
                        modality: text->text
                        input_modalities:
                            - text
                        output_modalities:
                            - text
                      top_provider:
                        context_length: 8192
                        max_completion_tokens: 4096
                        is_moderated: true
                      per_request_limits: null
                      supported_parameters:
                        - temperature
                        - top_p
                        - max_tokens
                        - frequency_penalty
                        - presence_penalty
                      default_parameters: null
                      expiration_date: null
        ModelsCountResponse:
            type: object
            properties:
                data:
                    type: object
                    properties:
                        count:
                            type: number
                            description: Total number of available models
                            example: 150
                    required:
                        - count
                    description: Model count data
                    example:
                        count: 150
            required:
                - data
            description: Model count data
            example:
                data:
                    count: 150
        InstructType:
            type: string
            nullable: true
            enum:
                - none
                - airoboros
                - alpaca
                - alpaca-modif
                - chatml
                - claude
                - code-llama
                - gemma
                - llama2
                - llama3
                - mistral
                - nemotron
                - neural
                - openchat
                - phi3
                - rwkv
                - vicuna
                - zephyr
                - deepseek-r1
                - deepseek-v3.1
                - qwq
                - qwen3
            description: Instruction format type
            x-speakeasy-unknown-values: allow
        EndpointStatus:
            type: integer
            enum:
                - 0
                - -1
                - -2
                - -3
                - -5
                - -10
            example: 0
            x-speakeasy-unknown-values: allow
        PercentileStats:
            type: object
            nullable: true
            properties:
                p50:
                    type: number
                    description: Median (50th percentile)
                    example: 25.5
                p75:
                    type: number
                    description: 75th percentile
                    example: 35.2
                p90:
                    type: number
                    description: 90th percentile
                    example: 48.7
                p99:
                    type: number
                    description: 99th percentile
                    example: 85.3
            required:
                - p50
                - p75
                - p90
                - p99
            description: >-
                Latency percentiles in milliseconds over the last 30 minutes. Latency measures time to first token. Only visible when authenticated with an API key or cookie; returns null for unauthenticated requests.
        PublicEndpoint:
            type: object
            properties:
                name:
                    type: string
                model_id:
                    type: string
                    description: The unique identifier for the model (permaslug)
                    example: openai/gpt-4
                model_name:
                    type: string
                context_length:
                    type: number
                pricing:
                    type: object
                    properties:
                        prompt:
                            $ref: '#/components/schemas/BigNumberUnion'
                        completion:
                            $ref: '#/components/schemas/BigNumberUnion'
                        request:
                            $ref: '#/components/schemas/BigNumberUnion'
                        image:
                            $ref: '#/components/schemas/BigNumberUnion'
                        image_token:
                            $ref: '#/components/schemas/BigNumberUnion'
                        image_output:
                            $ref: '#/components/schemas/BigNumberUnion'
                        audio:
                            $ref: '#/components/schemas/BigNumberUnion'
                        audio_output:
                            $ref: '#/components/schemas/BigNumberUnion'
                        input_audio_cache:
                            $ref: '#/components/schemas/BigNumberUnion'
                        web_search:
                            $ref: '#/components/schemas/BigNumberUnion'
                        internal_reasoning:
                            $ref: '#/components/schemas/BigNumberUnion'
                        input_cache_read:
                            $ref: '#/components/schemas/BigNumberUnion'
                        input_cache_write:
                            $ref: '#/components/schemas/BigNumberUnion'
                        discount:
                            type: number
                    required:
                        - prompt
                        - completion
                    additionalProperties: false
                provider_name:
                    $ref: '#/components/schemas/ProviderName'
                tag:
                    type: string
                quantization:
                    allOf:
                        - $ref: '#/components/schemas/Quantization'
                        - nullable: true
                max_completion_tokens:
                    type: number
                    nullable: true
                max_prompt_tokens:
                    type: number
                    nullable: true
                supported_parameters:
                    type: array
                    items:
                        $ref: '#/components/schemas/Parameter'
                status:
                    $ref: '#/components/schemas/EndpointStatus'
                uptime_last_30m:
                    type: number
                    nullable: true
                supports_implicit_caching:
                    type: boolean
                latency_last_30m:
                    $ref: '#/components/schemas/PercentileStats'
                throughput_last_30m:
                    allOf:
                        - $ref: '#/components/schemas/PercentileStats'
                        - description: >-
                            Throughput percentiles in tokens per second over the last 30 minutes. Throughput measures output token generation speed. Only visible when authenticated with an API key or cookie; returns null for unauthenticated requests.
            required:
                - name
                - model_id
                - model_name
                - context_length
                - pricing
                - provider_name
                - tag
                - quantization
                - max_completion_tokens
                - max_prompt_tokens
                - supported_parameters
                - uptime_last_30m
                - supports_implicit_caching
                - latency_last_30m
                - throughput_last_30m
            description: Information about a specific model endpoint
            example:
                name: 'OpenAI: GPT-4'
                model_id: openai/gpt-4
                model_name: GPT-4
                context_length: 8192
                pricing:
                    prompt: '0.00003'
                    completion: '0.00006'
                    request: '0'
                    image: '0'
                provider_name: OpenAI
                tag: openai
                quantization: fp16
                max_completion_tokens: 4096
                max_prompt_tokens: 8192
                supported_parameters:
                    - temperature
                    - top_p
                    - max_tokens
                status: 0
                uptime_last_30m: 99.5
                supports_implicit_caching: true
                latency_last_30m:
                    p50: 0.25
                    p75: 0.35
                    p90: 0.48
                    p99: 0.85
                throughput_last_30m:
                    p50: 45.2
                    p75: 38.5
                    p90: 28.3
                    p99: 15.1
        ListEndpointsResponse:
            type: object
            properties:
                id:
                    type: string
                    description: Unique identifier for the model
                    example: openai/gpt-4
                name:
                    type: string
                    description: Display name of the model
                    example: GPT-4
                created:
                    type: number
                    description: Unix timestamp of when the model was created
                    example: 1692901234
                description:
                    type: string
                    description: Description of the model
                    example: GPT-4 is a large multimodal model that can solve difficult problems with greater accuracy.
                architecture:
                    allOf:
                        - $ref: '#/components/schemas/ModelArchitecture'
                        - properties:
                            tokenizer:
                                allOf:
                                    - $ref: '#/components/schemas/ModelGroup'
                                    - nullable: true
                            instruct_type:
                                $ref: '#/components/schemas/InstructType'
                            modality:
                                type: string
                                nullable: true
                                description: Primary modality of the model
                                example: text
                            input_modalities:
                                type: array
                                items:
                                    $ref: '#/components/schemas/InputModality'
                                description: Supported input modalities
                            output_modalities:
                                type: array
                                items:
                                    $ref: '#/components/schemas/OutputModality'
                                description: Supported output modalities
                          required:
                            - tokenizer
                            - instruct_type
                            - modality
                            - input_modalities
                            - output_modalities
                          example:
                            tokenizer: GPT
                            instruct_type: chatml
                            modality: text
                endpoints:
                    type: array
                    items:
                        $ref: '#/components/schemas/PublicEndpoint'
                    description: List of available endpoints for this model
            required:
                - id
                - name
                - created
                - description
                - architecture
                - endpoints
            description: List of available endpoints for a model
            example:
                id: openai/gpt-4
                name: GPT-4
                created: 1692901234
                description: GPT-4 is a large multimodal model that can solve difficult problems with greater accuracy.
                architecture:
                    tokenizer: GPT
                    instruct_type: chatml
                    modality: text->text
                    input_modalities:
                        - text
                    output_modalities:
                        - text
                endpoints:
                    - name: 'OpenAI: GPT-4'
                      model_name: GPT-4
                      context_length: 8192
                      pricing:
                        prompt: '0.00003'
                        completion: '0.00006'
                        request: '0'
                        image: '0'
                      provider_name: OpenAI
                      tag: openai
                      quantization: fp16
                      max_completion_tokens: 4096
                      max_prompt_tokens: 8192
                      supported_parameters:
                        - temperature
                        - top_p
                        - max_tokens
                        - frequency_penalty
                        - presence_penalty
                      status: default
                      uptime_last_30m: 99.5
                      supports_implicit_caching: true
                      latency_last_30m:
                        p50: 0.25
                        p75: 0.35
                        p90: 0.48
                        p99: 0.85
                      throughput_last_30m:
                        p50: 45.2
                        p75: 38.5
                        p90: 28.3
                        p99: 15.1
        __schema0:
            type: array
            items:
                anyOf:
                    - type: string
                      enum:
                        - AI21
                        - AionLabs
                        - Alibaba
                        - Amazon Bedrock
                        - Amazon Nova
                        - Anthropic
                        - Arcee AI
                        - AtlasCloud
                        - Avian
                        - Azure
                        - BaseTen
                        - BytePlus
                        - Black Forest Labs
                        - Cerebras
                        - Chutes
                        - Cirrascale
                        - Clarifai
                        - Cloudflare
                        - Cohere
                        - Crusoe
                        - DeepInfra
                        - DeepSeek
                        - Featherless
                        - Fireworks
                        - Friendli
                        - GMICloud
                        - Google
                        - Google AI Studio
                        - Groq
                        - Hyperbolic
                        - Inception
                        - Inceptron
                        - InferenceNet
                        - Infermatic
                        - Inflection
                        - Liquid
                        - Mara
                        - Mancer 2
                        - Minimax
                        - ModelRun
                        - Mistral
                        - Modular
                        - Moonshot AI
                        - Morph
                        - NCompass
                        - Nebius
                        - NextBit
                        - Novita
                        - Nvidia
                        - OpenAI
                        - OpenInference
                        - Parasail
                        - Perplexity
                        - Phala
                        - Relace
                        - SambaNova
                        - Seed
                        - SiliconFlow
                        - Sourceful
                        - Stealth
                        - StreamLake
                        - Switchpoint
                        - Together
                        - Upstage
                        - Venice
                        - WandB
                        - Xiaomi
                        - xAI
                        - Z.AI
                        - FakeProvider
                      x-speakeasy-unknown-values: allow
                    - type: string
        __schema1:
            anyOf:
                - type: number
                - type: string
                - type: number
        __schema2:
            oneOf:
                - type: object
                  properties:
                    type:
                        type: string
                        const: reasoning.summary
                    summary:
                        type: string
                    id:
                        $ref: '#/components/schemas/__schema3'
                    format:
                        $ref: '#/components/schemas/__schema4'
                    index:
                        $ref: '#/components/schemas/__schema5'
                  required:
                    - type
                    - summary
                - type: object
                  properties:
                    type:
                        type: string
                        const: reasoning.encrypted
                    data:
                        type: string
                    id:
                        $ref: '#/components/schemas/__schema3'
                    format:
                        $ref: '#/components/schemas/__schema4'
                    index:
                        $ref: '#/components/schemas/__schema5'
                  required:
                    - type
                    - data
                - type: object
                  properties:
                    type:
                        type: string
                        const: reasoning.text
                    text:
                        anyOf:
                            - type: string
                            - type: 'null'
                    signature:
                        anyOf:
                            - type: string
                            - type: 'null'
                    id:
                        $ref: '#/components/schemas/__schema3'
                    format:
                        $ref: '#/components/schemas/__schema4'
                    index:
                        $ref: '#/components/schemas/__schema5'
                  required:
                    - type
            type: object
        __schema3:
            anyOf:
                - type: string
                - type: 'null'
        __schema4:
            anyOf:
                - type: string
                  enum:
                    - unknown
                    - openai-responses-v1
                    - azure-openai-responses-v1
                    - xai-responses-v1
                    - anthropic-claude-v1
                    - google-gemini-v1
                  x-speakeasy-unknown-values: allow
                - type: 'null'
        __schema5:
            type: number
        __schema6:
            anyOf:
                - $ref: '#/components/schemas/ChatCompletionFinishReason'
                - type: 'null'
        ModelName:
            type: string
        ChatMessageContentItemText:
            type: object
            properties:
                type:
                    type: string
                    const: text
                text:
                    type: string
                cache_control:
                    $ref: '#/components/schemas/ChatMessageContentItemCacheControl'
            required:
                - type
                - text
        ChatMessageContentItemImage:
            type: object
            properties:
                type:
                    type: string
                    const: image_url
                image_url:
                    type: object
                    properties:
                        url:
                            type: string
                        detail:
                            type: string
                            enum:
                                - auto
                                - low
                                - high
                            x-speakeasy-unknown-values: allow
                    required:
                        - url
            required:
                - type
                - image_url
        ChatMessageContentItemAudio:
            type: object
            properties:
                type:
                    type: string
                    const: input_audio
                input_audio:
                    type: object
                    properties:
                        data:
                            type: string
                        format:
                            type: string
                    required:
                        - data
                        - format
            required:
                - type
                - input_audio
        ChatMessageContentItemVideo:
            oneOf:
                - type: object
                  properties:
                    type:
                        type: string
                        const: input_video
                    video_url:
                        type: object
                        properties:
                            url:
                                type: string
                        required:
                            - url
                  required:
                    - type
                    - video_url
                - type: object
                  properties:
                    type:
                        type: string
                        const: video_url
                    video_url:
                        type: object
                        properties:
                            url:
                                type: string
                        required:
                            - url
                  required:
                    - type
                    - video_url
            type: object
        ChatMessageContentItem:
            oneOf:
                - $ref: '#/components/schemas/ChatMessageContentItemText'
                - $ref: '#/components/schemas/ChatMessageContentItemImage'
                - $ref: '#/components/schemas/ChatMessageContentItemAudio'
                - $ref: '#/components/schemas/ChatMessageContentItemVideo'
            type: object
            discriminator:
                propertyName: type
                mapping:
                    text: '#/components/schemas/ChatMessageContentItemText'
                    image_url: '#/components/schemas/ChatMessageContentItemImage'
                    input_audio: '#/components/schemas/ChatMessageContentItemAudio'
                    input_video: '#/components/schemas/ChatMessageContentItemVideo'
                    video_url: '#/components/schemas/ChatMessageContentItemVideo'
        ChatMessageToolCall:
            type: object
            properties:
                id:
                    type: string
                type:
                    type: string
                    const: function
                function:
                    type: object
                    properties:
                        name:
                            type: string
                        arguments:
                            type: string
                    required:
                        - name
                        - arguments
            required:
                - id
                - type
                - function
        ChatMessageTokenLogprob:
            type: object
            properties:
                token:
                    type: string
                logprob:
                    type: number
                bytes:
                    anyOf:
                        - type: array
                          items:
                            type: number
                        - type: 'null'
                top_logprobs:
                    type: array
                    items:
                        type: object
                        properties:
                            token:
                                type: string
                            logprob:
                                type: number
                            bytes:
                                anyOf:
                                    - type: array
                                      items:
                                        type: number
                                    - type: 'null'
                        required:
                            - token
                            - logprob
                            - bytes
            required:
                - token
                - logprob
                - bytes
                - top_logprobs
        ChatMessageTokenLogprobs:
            type: object
            properties:
                content:
                    anyOf:
                        - type: array
                          items:
                            $ref: '#/components/schemas/ChatMessageTokenLogprob'
                        - type: 'null'
                refusal:
                    anyOf:
                        - type: array
                          items:
                            $ref: '#/components/schemas/ChatMessageTokenLogprob'
                        - type: 'null'
            required:
                - content
                - refusal
        ChatGenerationTokenUsage:
            type: object
            properties:
                completion_tokens:
                    type: number
                prompt_tokens:
                    type: number
                total_tokens:
                    type: number
                completion_tokens_details:
                    anyOf:
                        - type: object
                          properties:
                            reasoning_tokens:
                                anyOf:
                                    - type: number
                                    - type: 'null'
                            audio_tokens:
                                anyOf:
                                    - type: number
                                    - type: 'null'
                            accepted_prediction_tokens:
                                anyOf:
                                    - type: number
                                    - type: 'null'
                            rejected_prediction_tokens:
                                anyOf:
                                    - type: number
                                    - type: 'null'
                        - type: 'null'
                prompt_tokens_details:
                    anyOf:
                        - type: object
                          properties:
                            cached_tokens:
                                type: number
                            cache_write_tokens:
                                type: number
                            audio_tokens:
                                type: number
                            video_tokens:
                                type: number
                        - type: 'null'
            required:
                - completion_tokens
                - prompt_tokens
                - total_tokens
        ChatCompletionFinishReason:
            type: string
            enum:
                - tool_calls
                - stop
                - length
                - content_filter
                - error
            x-speakeasy-unknown-values: allow
        JSONSchemaConfig:
            type: object
            properties:
                name:
                    type: string
                    maxLength: 64
                description:
                    type: string
                schema:
                    type: object
                    propertyNames:
                        type: string
                    additionalProperties: {}
                strict:
                    anyOf:
                        - type: boolean
                        - type: 'null'
            required:
                - name
        ResponseFormatJSONSchema:
            type: object
            properties:
                type:
                    type: string
                    const: json_schema
                json_schema:
                    $ref: '#/components/schemas/JSONSchemaConfig'
            required:
                - type
                - json_schema
        ResponseFormatTextGrammar:
            type: object
            properties:
                type:
                    type: string
                    const: grammar
                grammar:
                    type: string
            required:
                - type
                - grammar
        ChatMessageContentItemCacheControl:
            type: object
            properties:
                type:
                    type: string
                    const: ephemeral
                ttl:
                    type: string
                    enum:
                        - 5m
                        - 1h
                    x-speakeasy-unknown-values: allow
            required:
                - type
        SystemMessage:
            type: object
            properties:
                role:
                    type: string
                    const: system
                content:
                    anyOf:
                        - type: string
                        - type: array
                          items:
                            $ref: '#/components/schemas/ChatMessageContentItemText'
                name:
                    type: string
            required:
                - role
                - content
        UserMessage:
            type: object
            properties:
                role:
                    type: string
                    const: user
                content:
                    anyOf:
                        - type: string
                        - type: array
                          items:
                            $ref: '#/components/schemas/ChatMessageContentItem'
                name:
                    type: string
            required:
                - role
                - content
        AssistantMessage:
            type: object
            properties:
                role:
                    type: string
                    const: assistant
                content:
                    anyOf:
                        - anyOf:
                            - type: string
                            - type: array
                              items:
                                $ref: '#/components/schemas/ChatMessageContentItem'
                        - type: 'null'
                name:
                    type: string
                tool_calls:
                    type: array
                    items:
                        $ref: '#/components/schemas/ChatMessageToolCall'
                refusal:
                    anyOf:
                        - type: string
                        - type: 'null'
                reasoning:
                    anyOf:
                        - type: string
                        - type: 'null'
                reasoning_details:
                    type: array
                    items:
                        $ref: '#/components/schemas/__schema2'
                images:
                    type: array
                    items:
                        type: object
                        properties:
                            image_url:
                                type: object
                                properties:
                                    url:
                                        type: string
                                required:
                                    - url
                        required:
                            - image_url
            required:
                - role
        ToolResponseMessage:
            type: object
            properties:
                role:
                    type: string
                    const: tool
                content:
                    anyOf:
                        - type: string
                        - type: array
                          items:
                            $ref: '#/components/schemas/ChatMessageContentItem'
                tool_call_id:
                    type: string
            required:
                - role
                - content
                - tool_call_id
        Message:
            oneOf:
                - $ref: '#/components/schemas/SystemMessage'
                - $ref: '#/components/schemas/UserMessage'
                - type: object
                  properties:
                    role:
                        type: string
                        const: developer
                    content:
                        anyOf:
                            - type: string
                            - type: array
                              items:
                                $ref: '#/components/schemas/ChatMessageContentItemText'
                    name:
                        type: string
                  required:
                    - role
                    - content
                - $ref: '#/components/schemas/AssistantMessage'
                - $ref: '#/components/schemas/ToolResponseMessage'
            type: object
        ToolDefinitionJson:
            type: object
            properties:
                type:
                    type: string
                    const: function
                function:
                    type: object
                    properties:
                        name:
                            type: string
                            maxLength: 64
                        description:
                            type: string
                        parameters:
                            type: object
                            propertyNames:
                                type: string
                            additionalProperties: {}
                        strict:
                            anyOf:
                                - type: boolean
                                - type: 'null'
                    required:
                        - name
            required:
                - type
                - function
        NamedToolChoice:
            type: object
            properties:
                type:
                    type: string
                    const: function
                function:
                    type: object
                    properties:
                        name:
                            type: string
                    required:
                        - name
            required:
                - type
                - function
        ToolChoiceOption:
            anyOf:
                - type: string
                  const: none
                - type: string
                  const: auto
                - type: string
                  const: required
                - $ref: '#/components/schemas/NamedToolChoice'
        ChatStreamOptions:
            type: object
            properties:
                include_usage:
                    type: boolean
        ChatGenerationParams:
            type: object
            properties:
                provider:
                    description: When multiple model providers are available, optionally indicate your routing preference.
                    anyOf:
                        - type: object
                          properties:
                            allow_fallbacks:
                                description: >
                                    Whether to allow backup providers to serve requests

                                    - true: (default) when the primary provider (or your custom providers in "order") is unavailable, use the next best provider.

                                    - false: use only the primary/custom provider, and return the upstream error if it's unavailable.

                                anyOf:
                                    - type: boolean
                                    - type: 'null'
                            require_parameters:
                                description: >-
                                    Whether to filter providers to only those that support the parameters you've provided. If this setting is omitted or set to false, then providers will receive only the parameters they support, and ignore the rest.
                                anyOf:
                                    - type: boolean
                                    - type: 'null'
                            data_collection:
                                description: >-
                                    Data collection setting. If no available model provider meets the requirement, your request will return an error.

                                    - allow: (default) allow providers which store user data non-transiently and may train on it


                                    - deny: use only providers which do not collect user data.
                                anyOf:
                                    - type: string
                                      enum:
                                        - deny
                                        - allow
                                      x-speakeasy-unknown-values: allow
                                    - type: 'null'
                            zdr:
                                anyOf:
                                    - type: boolean
                                    - type: 'null'
                            enforce_distillable_text:
                                anyOf:
                                    - type: boolean
                                    - type: 'null'
                            order:
                                description: >-
                                    An ordered list of provider slugs. The router will attempt to use the first provider in the subset of this list that supports your requested model, and fall back to the next if it is unavailable. If no providers are available, the request will fail with an error message.
                                anyOf:
                                    - $ref: '#/components/schemas/__schema0'
                                    - type: 'null'
                            only:
                                description: >-
                                    List of provider slugs to allow. If provided, this list is merged with your account-wide allowed provider settings for this request.
                                anyOf:
                                    - $ref: '#/components/schemas/__schema0'
                                    - type: 'null'
                            ignore:
                                description: >-
                                    List of provider slugs to ignore. If provided, this list is merged with your account-wide ignored provider settings for this request.
                                anyOf:
                                    - $ref: '#/components/schemas/__schema0'
                                    - type: 'null'
                            quantizations:
                                description: A list of quantization levels to filter the provider by.
                                anyOf:
                                    - type: array
                                      items:
                                        type: string
                                        enum:
                                            - int4
                                            - int8
                                            - fp4
                                            - fp6
                                            - fp8
                                            - fp16
                                            - bf16
                                            - fp32
                                            - unknown
                                        x-speakeasy-unknown-values: allow
                                    - type: 'null'
                            sort:
                                description: >-
                                    The sorting strategy to use for this request, if "order" is not specified. When set, no load balancing is performed.
                                anyOf:
                                    - $ref: '#/components/schemas/ProviderSortUnion'
                                    - type: 'null'
                            max_price:
                                description: >-
                                    The object specifying the maximum price you want to pay for this request. USD price per million tokens, for prompt and completion.
                                type: object
                                properties:
                                    prompt:
                                        $ref: '#/components/schemas/__schema1'
                                    completion:
                                        $ref: '#/components/schemas/__schema1'
                                    image:
                                        $ref: '#/components/schemas/__schema1'
                                    audio:
                                        $ref: '#/components/schemas/__schema1'
                                    request:
                                        $ref: '#/components/schemas/__schema1'
                            preferred_min_throughput:
                                description: >-
                                    Preferred minimum throughput (in tokens per second). Can be a number (applies to p50) or an object with percentile-specific cutoffs. Endpoints below the threshold(s) may still be used, but are deprioritized in routing. When using fallback models, this may cause a fallback model to be used instead of the primary model if it meets the threshold.
                                anyOf:
                                    - anyOf:
                                        - type: number
                                        - type: object
                                          properties:
                                            p50:
                                                anyOf:
                                                    - type: number
                                                    - type: 'null'
                                            p75:
                                                anyOf:
                                                    - type: number
                                                    - type: 'null'
                                            p90:
                                                anyOf:
                                                    - type: number
                                                    - type: 'null'
                                            p99:
                                                anyOf:
                                                    - type: number
                                                    - type: 'null'
                                    - type: 'null'
                            preferred_max_latency:
                                description: >-
                                    Preferred maximum latency (in seconds). Can be a number (applies to p50) or an object with percentile-specific cutoffs. Endpoints above the threshold(s) may still be used, but are deprioritized in routing. When using fallback models, this may cause a fallback model to be used instead of the primary model if it meets the threshold.
                                anyOf:
                                    - anyOf:
                                        - type: number
                                        - type: object
                                          properties:
                                            p50:
                                                anyOf:
                                                    - type: number
                                                    - type: 'null'
                                            p75:
                                                anyOf:
                                                    - type: number
                                                    - type: 'null'
                                            p90:
                                                anyOf:
                                                    - type: number
                                                    - type: 'null'
                                            p99:
                                                anyOf:
                                                    - type: number
                                                    - type: 'null'
                                    - type: 'null'
                          additionalProperties: false
                        - type: 'null'
                plugins:
                    description: Plugins you want to enable for this request, including their settings.
                    type: array
                    items:
                        oneOf:
                            - type: object
                              properties:
                                id:
                                    type: string
                                    const: auto-router
                                enabled:
                                    type: boolean
                                allowed_models:
                                    type: array
                                    items:
                                        type: string
                              required:
                                - id
                            - type: object
                              properties:
                                id:
                                    type: string
                                    const: moderation
                              required:
                                - id
                            - type: object
                              properties:
                                id:
                                    type: string
                                    const: web
                                enabled:
                                    type: boolean
                                max_results:
                                    type: number
                                search_prompt:
                                    type: string
                                engine:
                                    type: string
                                    enum:
                                        - native
                                        - exa
                                    x-speakeasy-unknown-values: allow
                              required:
                                - id
                            - type: object
                              properties:
                                id:
                                    type: string
                                    const: file-parser
                                enabled:
                                    type: boolean
                                pdf:
                                    type: object
                                    properties:
                                        engine:
                                            type: string
                                            enum:
                                                - mistral-ocr
                                                - pdf-text
                                                - native
                                            x-speakeasy-unknown-values: allow
                              required:
                                - id
                            - type: object
                              properties:
                                id:
                                    type: string
                                    const: response-healing
                                enabled:
                                    type: boolean
                              required:
                                - id
                        type: object
                route:
                    anyOf:
                        - type: string
                          enum:
                            - fallback
                            - sort
                          x-speakeasy-unknown-values: allow
                        - type: 'null'
                user:
                    type: string
                session_id:
                    description: >-
                        A unique identifier for grouping related requests (e.g., a conversation or agent workflow) for observability. If provided in both the request body and the x-session-id header, the body value takes precedence. Maximum of 128 characters.
                    type: string
                    maxLength: 128
                messages:
                    minItems: 1
                    type: array
                    items:
                        $ref: '#/components/schemas/Message'
                model:
                    $ref: '#/components/schemas/ModelName'
                models:
                    type: array
                    items:
                        $ref: '#/components/schemas/ModelName'
                frequency_penalty:
                    anyOf:
                        - type: number
                          minimum: -2
                          maximum: 2
                        - type: 'null'
                logit_bias:
                    anyOf:
                        - type: object
                          propertyNames:
                            type: string
                          additionalProperties:
                            type: number
                        - type: 'null'
                logprobs:
                    anyOf:
                        - type: boolean
                        - type: 'null'
                top_logprobs:
                    anyOf:
                        - type: number
                          minimum: 0
                          maximum: 20
                        - type: 'null'
                max_completion_tokens:
                    anyOf:
                        - type: number
                          minimum: 1
                        - type: 'null'
                max_tokens:
                    anyOf:
                        - type: number
                          minimum: 1
                        - type: 'null'
                metadata:
                    type: object
                    propertyNames:
                        type: string
                    additionalProperties:
                        type: string
                presence_penalty:
                    anyOf:
                        - type: number
                          minimum: -2
                          maximum: 2
                        - type: 'null'
                reasoning:
                    type: object
                    properties:
                        effort:
                            anyOf:
                                - type: string
                                  enum:
                                    - xhigh
                                    - high
                                    - medium
                                    - low
                                    - minimal
                                    - none
                                  x-speakeasy-unknown-values: allow
                                - type: 'null'
                        summary:
                            anyOf:
                                - $ref: '#/components/schemas/ReasoningSummaryVerbosity'
                                - type: 'null'
                response_format:
                    oneOf:
                        - type: object
                          properties:
                            type:
                                type: string
                                const: text
                          required:
                            - type
                        - type: object
                          properties:
                            type:
                                type: string
                                const: json_object
                          required:
                            - type
                        - $ref: '#/components/schemas/ResponseFormatJSONSchema'
                        - $ref: '#/components/schemas/ResponseFormatTextGrammar'
                        - type: object
                          properties:
                            type:
                                type: string
                                const: python
                          required:
                            - type
                    type: object
                seed:
                    anyOf:
                        - type: integer
                          minimum: -9007199254740991
                          maximum: 9007199254740991
                        - type: 'null'
                stop:
                    anyOf:
                        - anyOf:
                            - type: string
                            - maxItems: 4
                              type: array
                              items:
                                type: string
                        - type: 'null'
                stream:
                    default: false
                    type: boolean
                stream_options:
                    anyOf:
                        - $ref: '#/components/schemas/ChatStreamOptions'
                        - type: 'null'
                temperature:
                    default: 1
                    anyOf:
                        - type: number
                          minimum: 0
                          maximum: 2
                        - type: 'null'
                tool_choice:
                    $ref: '#/components/schemas/ToolChoiceOption'
                tools:
                    type: array
                    items:
                        $ref: '#/components/schemas/ToolDefinitionJson'
                top_p:
                    default: 1
                    anyOf:
                        - type: number
                          minimum: 0
                          maximum: 1
                        - type: 'null'
                debug:
                    type: object
                    properties:
                        echo_upstream_body:
                            type: boolean
                image_config:
                    type: object
                    propertyNames:
                        type: string
                    additionalProperties:
                        anyOf:
                            - type: string
                            - type: number
                modalities:
                    type: array
                    items:
                        type: string
                        enum:
                            - text
                            - image
                        x-speakeasy-unknown-values: allow
            required:
                - messages
        ProviderSortUnion:
            anyOf:
                - $ref: '#/components/schemas/ProviderSort'
                - $ref: '#/components/schemas/ProviderSortConfig'
        ChatResponseChoice:
            type: object
            properties:
                finish_reason:
                    $ref: '#/components/schemas/__schema6'
                index:
                    type: number
                message:
                    $ref: '#/components/schemas/AssistantMessage'
                logprobs:
                    anyOf:
                        - $ref: '#/components/schemas/ChatMessageTokenLogprobs'
                        - type: 'null'
            required:
                - finish_reason
                - index
                - message
        ChatStreamingMessageToolCall:
            type: object
            properties:
                index:
                    type: number
                id:
                    type: string
                type:
                    type: string
                    const: function
                function:
                    type: object
                    properties:
                        name:
                            type: string
                        arguments:
                            type: string
            required:
                - index
        ChatStreamingMessageChunk:
            type: object
            properties:
                role:
                    type: string
                    enum:
                        - assistant
                content:
                    anyOf:
                        - type: string
                        - type: 'null'
                reasoning:
                    anyOf:
                        - type: string
                        - type: 'null'
                refusal:
                    anyOf:
                        - type: string
                        - type: 'null'
                tool_calls:
                    type: array
                    items:
                        $ref: '#/components/schemas/ChatStreamingMessageToolCall'
                reasoning_details:
                    type: array
                    items:
                        $ref: '#/components/schemas/__schema2'
        ChatStreamingChoice:
            type: object
            properties:
                delta:
                    $ref: '#/components/schemas/ChatStreamingMessageChunk'
                finish_reason:
                    $ref: '#/components/schemas/__schema6'
                index:
                    type: number
                logprobs:
                    anyOf:
                        - $ref: '#/components/schemas/ChatMessageTokenLogprobs'
                        - type: 'null'
            required:
                - delta
                - finish_reason
                - index
        ChatError:
            type: object
            properties:
                error:
                    type: object
                    properties:
                        code:
                            anyOf:
                                - anyOf:
                                    - type: string
                                    - type: number
                                - type: 'null'
                        message:
                            type: string
                        param:
                            anyOf:
                                - type: string
                                - type: 'null'
                        type:
                            anyOf:
                                - type: string
                                - type: 'null'
                    required:
                        - code
                        - message
                    additionalProperties: false
            required:
                - error
            additionalProperties: false
        ChatResponse:
            type: object
            properties:
                id:
                    type: string
                choices:
                    type: array
                    items:
                        $ref: '#/components/schemas/ChatResponseChoice'
                created:
                    type: number
                model:
                    type: string
                object:
                    type: string
                    const: chat.completion
                system_fingerprint:
                    anyOf:
                        - type: string
                        - type: 'null'
                usage:
                    $ref: '#/components/schemas/ChatGenerationTokenUsage'
            required:
                - id
                - choices
                - created
                - model
                - object
            additionalProperties: false
        ChatStreamingResponseChunk:
            type: object
            properties:
                data:
                    type: object
                    properties:
                        id:
                            type: string
                        choices:
                            type: array
                            items:
                                $ref: '#/components/schemas/ChatStreamingChoice'
                        created:
                            type: number
                        model:
                            type: string
                        object:
                            type: string
                            const: chat.completion.chunk
                        system_fingerprint:
                            anyOf:
                                - type: string
                                - type: 'null'
                        error:
                            type: object
                            properties:
                                message:
                                    type: string
                                code:
                                    type: number
                            required:
                                - message
                                - code
                            additionalProperties: false
                        usage:
                            $ref: '#/components/schemas/ChatGenerationTokenUsage'
                    required:
                        - id
                        - choices
                        - created
                        - model
                        - object
                    additionalProperties: false
            required:
                - data
            additionalProperties: false
        CompletionFinishReason:
            anyOf:
                - type: string
                  enum:
                    - stop
                    - length
                    - content_filter
                  x-speakeasy-unknown-values: allow
                - type: 'null'
        CompletionLogprobs:
            type: object
            properties:
                tokens:
                    type: array
                    items:
                        type: string
                token_logprobs:
                    type: array
                    items:
                        type: number
                top_logprobs:
                    anyOf:
                        - type: array
                          items:
                            type: object
                            propertyNames:
                                type: string
                            additionalProperties:
                                type: number
                        - type: 'null'
                text_offset:
                    type: array
                    items:
                        type: number
            required:
                - tokens
                - token_logprobs
                - top_logprobs
                - text_offset
        CompletionUsage:
            type: object
            properties:
                prompt_tokens:
                    type: number
                completion_tokens:
                    type: number
                total_tokens:
                    type: number
            required:
                - prompt_tokens
                - completion_tokens
                - total_tokens
        CompletionCreateParams:
            type: object
            properties:
                model:
                    $ref: '#/components/schemas/ModelName'
                models:
                    type: array
                    items:
                        $ref: '#/components/schemas/ModelName'
                prompt:
                    anyOf:
                        - type: string
                        - type: array
                          items:
                            type: string
                        - type: array
                          items:
                            type: number
                        - type: array
                          items:
                            type: array
                            items:
                                type: number
                best_of:
                    anyOf:
                        - type: integer
                          minimum: 1
                          maximum: 20
                        - type: 'null'
                echo:
                    anyOf:
                        - type: boolean
                        - type: 'null'
                frequency_penalty:
                    anyOf:
                        - type: number
                          minimum: -2
                          maximum: 2
                        - type: 'null'
                logit_bias:
                    anyOf:
                        - type: object
                          propertyNames:
                            type: string
                          additionalProperties:
                            type: number
                        - type: 'null'
                logprobs:
                    anyOf:
                        - type: integer
                          minimum: 0
                          maximum: 5
                        - type: 'null'
                max_tokens:
                    anyOf:
                        - type: integer
                          minimum: 1
                          maximum: 9007199254740991
                        - type: 'null'
                'n':
                    anyOf:
                        - type: integer
                          minimum: 1
                          maximum: 128
                        - type: 'null'
                presence_penalty:
                    anyOf:
                        - type: number
                          minimum: -2
                          maximum: 2
                        - type: 'null'
                seed:
                    anyOf:
                        - type: integer
                          minimum: -9007199254740991
                          maximum: 9007199254740991
                        - type: 'null'
                stop:
                    anyOf:
                        - anyOf:
                            - type: string
                            - type: array
                              items:
                                type: string
                        - type: 'null'
                stream:
                    default: false
                    type: boolean
                stream_options:
                    anyOf:
                        - type: object
                          properties:
                            include_usage:
                                anyOf:
                                    - type: boolean
                                    - type: 'null'
                        - type: 'null'
                suffix:
                    anyOf:
                        - type: string
                        - type: 'null'
                temperature:
                    anyOf:
                        - type: number
                          minimum: 0
                          maximum: 2
                        - type: 'null'
                top_p:
                    anyOf:
                        - type: number
                          minimum: 0
                          maximum: 1
                        - type: 'null'
                user:
                    type: string
                metadata:
                    anyOf:
                        - type: object
                          propertyNames:
                            type: string
                          additionalProperties:
                            type: string
                        - type: 'null'
                response_format:
                    anyOf:
                        - oneOf:
                            - type: object
                              properties:
                                type:
                                    type: string
                                    const: text
                              required:
                                - type
                            - type: object
                              properties:
                                type:
                                    type: string
                                    const: json_object
                              required:
                                - type
                            - $ref: '#/components/schemas/ResponseFormatJSONSchema'
                            - $ref: '#/components/schemas/ResponseFormatTextGrammar'
                            - type: object
                              properties:
                                type:
                                    type: string
                                    const: python
                              required:
                                - type
                          type: object
                        - type: 'null'
            required:
                - prompt
        CompletionChoice:
            type: object
            properties:
                text:
                    type: string
                index:
                    type: number
                logprobs:
                    anyOf:
                        - $ref: '#/components/schemas/CompletionLogprobs'
                        - type: 'null'
                finish_reason:
                    $ref: '#/components/schemas/CompletionFinishReason'
                native_finish_reason:
                    type: string
                reasoning:
                    anyOf:
                        - type: string
                        - type: 'null'
            required:
                - text
                - index
                - logprobs
                - finish_reason
        CompletionResponse:
            type: object
            properties:
                id:
                    type: string
                object:
                    type: string
                    const: text_completion
                created:
                    type: number
                model:
                    type: string
                provider:
                    type: string
                system_fingerprint:
                    type: string
                choices:
                    type: array
                    items:
                        $ref: '#/components/schemas/CompletionChoice'
                usage:
                    $ref: '#/components/schemas/CompletionUsage'
            required:
                - id
                - object
                - created
                - model
                - choices
            additionalProperties: false
    parameters:
        AppIdentifier:
            name: HTTP-Referer
            in: header
            schema:
                type: string
            description: |
                The app identifier should be your app's URL and is used as the primary identifier for rankings.
                This is used to track API usage per application.
        AppDisplayName:
            name: X-Title
            in: header
            schema:
                type: string
            description: |
                The app display name allows you to customize how your app appears in OpenRouter's dashboard.
    securitySchemes:
        apiKey:
            type: http
            scheme: bearer
            description: API key as bearer token in Authorization header
        bearer:
            type: http
            scheme: bearer
            description: API key as bearer token in Authorization header
paths:
    /responses:
        post:
            x-speakeasy-name-override: send
            x-speakeasy-stream-request-field: stream
            tags:
                - beta.responses
            summary: Create a response
            description: Creates a streaming or non-streaming response using OpenResponses API format
            requestBody:
                content:
                    application/json:
                        schema:
                            $ref: '#/components/schemas/OpenResponsesRequest'
                required: true
            responses:
                '200':
                    description: Successful response
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/OpenResponsesNonStreamingResponse'
                        text/event-stream:
                            schema:
                                type: object
                                properties:
                                    data:
                                        $ref: '#/components/schemas/OpenResponsesStreamEvent'
                                required:
                                    - data
                            x-speakeasy-sse-sentinel: '[DONE]'
                '400':
                    description: Bad Request - Invalid request parameters or malformed input
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/BadRequestResponse'
                '401':
                    description: Unauthorized - Authentication required or invalid credentials
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/UnauthorizedResponse'
                '402':
                    description: Payment Required - Insufficient credits or quota to complete request
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/PaymentRequiredResponse'
                '404':
                    description: Not Found - Resource does not exist
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/NotFoundResponse'
                '408':
                    description: Request Timeout - Operation exceeded time limit
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/RequestTimeoutResponse'
                '413':
                    description: Payload Too Large - Request payload exceeds size limits
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/PayloadTooLargeResponse'
                '422':
                    description: Unprocessable Entity - Semantic validation failure
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/UnprocessableEntityResponse'
                '429':
                    description: Too Many Requests - Rate limit exceeded
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/TooManyRequestsResponse'
                '500':
                    description: Internal Server Error - Unexpected server error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/InternalServerResponse'
                '502':
                    description: Bad Gateway - Provider/upstream API failure
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/BadGatewayResponse'
                '503':
                    description: Service Unavailable - Service temporarily unavailable
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/ServiceUnavailableResponse'
                '524':
                    description: Infrastructure Timeout - Request timed out at our edge network
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/EdgeNetworkTimeoutResponse'
                '529':
                    description: Provider Overloaded - Provider is temporarily overloaded
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/ProviderOverloadedResponse'
            operationId: createResponses
    /messages:
        post:
            x-speakeasy-ignore: true
            x-speakeasy-name-override: create
            x-speakeasy-stream-request-field: stream
            tags:
                - anthropic.messages
            summary: Create a message
            description: >-
                Creates a message using the Anthropic Messages API format. Supports text, images, PDFs, tools, and extended thinking.
            requestBody:
                content:
                    application/json:
                        schema:
                            $ref: '#/components/schemas/AnthropicMessagesRequest'
                required: true
            responses:
                '200':
                    description: Successful response
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/AnthropicMessagesResponse'
                        text/event-stream:
                            schema:
                                type: object
                                properties:
                                    event:
                                        type: string
                                    data:
                                        $ref: '#/components/schemas/AnthropicMessagesStreamEvent'
                                required:
                                    - event
                                    - data
                            x-speakeasy-sse-sentinel: '[DONE]'
                '400':
                    description: Invalid request error
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    type:
                                        type: string
                                        enum:
                                            - error
                                    error:
                                        type: object
                                        properties:
                                            type:
                                                type: string
                                            message:
                                                type: string
                                        required:
                                            - type
                                            - message
                                required:
                                    - type
                                    - error
                '401':
                    description: Authentication error
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    type:
                                        type: string
                                        enum:
                                            - error
                                    error:
                                        type: object
                                        properties:
                                            type:
                                                type: string
                                            message:
                                                type: string
                                        required:
                                            - type
                                            - message
                                required:
                                    - type
                                    - error
                '403':
                    description: Permission denied error
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    type:
                                        type: string
                                        enum:
                                            - error
                                    error:
                                        type: object
                                        properties:
                                            type:
                                                type: string
                                            message:
                                                type: string
                                        required:
                                            - type
                                            - message
                                required:
                                    - type
                                    - error
                '404':
                    description: Not found error
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    type:
                                        type: string
                                        enum:
                                            - error
                                    error:
                                        type: object
                                        properties:
                                            type:
                                                type: string
                                            message:
                                                type: string
                                        required:
                                            - type
                                            - message
                                required:
                                    - type
                                    - error
                '429':
                    description: Rate limit error
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    type:
                                        type: string
                                        enum:
                                            - error
                                    error:
                                        type: object
                                        properties:
                                            type:
                                                type: string
                                            message:
                                                type: string
                                        required:
                                            - type
                                            - message
                                required:
                                    - type
                                    - error
                '500':
                    description: API error
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    type:
                                        type: string
                                        enum:
                                            - error
                                    error:
                                        type: object
                                        properties:
                                            type:
                                                type: string
                                            message:
                                                type: string
                                        required:
                                            - type
                                            - message
                                required:
                                    - type
                                    - error
                '503':
                    description: Overloaded error
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    type:
                                        type: string
                                        enum:
                                            - error
                                    error:
                                        type: object
                                        properties:
                                            type:
                                                type: string
                                            message:
                                                type: string
                                        required:
                                            - type
                                            - message
                                required:
                                    - type
                                    - error
                '529':
                    description: Overloaded error
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    type:
                                        type: string
                                        enum:
                                            - error
                                    error:
                                        type: object
                                        properties:
                                            type:
                                                type: string
                                            message:
                                                type: string
                                        required:
                                            - type
                                            - message
                                required:
                                    - type
                                    - error
            operationId: createMessages
    /activity:
        get:
            tags:
                - Analytics
            operationId: getUserActivity
            summary: Get user activity grouped by endpoint
            description: >-
                Returns user activity data grouped by endpoint for the last 30 (completed) UTC days. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
            parameters:
                - schema:
                    type: string
                    description: Filter by a single UTC date in the last 30 days (YYYY-MM-DD format).
                    example: '2025-08-24'
                  required: false
                  description: Filter by a single UTC date in the last 30 days (YYYY-MM-DD format).
                  name: date
                  in: query
            responses:
                '200':
                    description: Returns user activity data grouped by endpoint
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    data:
                                        type: array
                                        items:
                                            $ref: '#/components/schemas/ActivityItem'
                                        description: List of activity items
                                required:
                                    - data
                                example:
                                    data:
                                        - date: '2025-08-24'
                                          model: openai/gpt-4.1
                                          model_permaslug: openai/gpt-4.1-2025-04-14
                                          endpoint_id: 550e8400-e29b-41d4-a716-446655440000
                                          provider_name: OpenAI
                                          usage: 0.015
                                          byok_usage_inference: 0.012
                                          requests: 5
                                          prompt_tokens: 50
                                          completion_tokens: 125
                                          reasoning_tokens: 25
                '400':
                    description: Bad Request - Invalid date format or date range
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/BadRequestResponse'
                '401':
                    description: Unauthorized - Authentication required or invalid credentials
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/UnauthorizedResponse'
                '403':
                    description: Forbidden - Only provisioning keys can fetch activity
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/ForbiddenResponse'
                '500':
                    description: Internal Server Error - Unexpected server error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/InternalServerResponse'
    /credits:
        get:
            x-speakeasy-name-override: getCredits
            tags:
                - Credits
            summary: Get remaining credits
            operationId: getCredits
            description: >-
                Get total credits purchased and used for the authenticated user. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
            responses:
                '200':
                    description: Returns the total credits purchased and used
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    data:
                                        type: object
                                        properties:
                                            total_credits:
                                                type: number
                                                description: Total credits purchased
                                                example: 100.5
                                            total_usage:
                                                type: number
                                                description: Total credits used
                                                example: 25.75
                                        required:
                                            - total_credits
                                            - total_usage
                                        example:
                                            total_credits: 100.5
                                            total_usage: 25.75
                                required:
                                    - data
                                description: Total credits purchased and used
                                example:
                                    data:
                                        total_credits: 100.5
                                        total_usage: 25.75
                '401':
                    description: Unauthorized - Authentication required or invalid credentials
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/UnauthorizedResponse'
                '403':
                    description: Forbidden - Only provisioning keys can fetch credits
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/ForbiddenResponse'
                '500':
                    description: Internal Server Error - Unexpected server error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/InternalServerResponse'
    /credits/coinbase:
        post:
            security:
                - bearer: []
            x-speakeasy-name-override: createCoinbaseCharge
            tags:
                - Credits
            summary: Create a Coinbase charge for crypto payment
            operationId: createCoinbaseCharge
            description: Create a Coinbase charge for crypto payment
            requestBody:
                content:
                    application/json:
                        schema:
                            $ref: '#/components/schemas/CreateChargeRequest'
                required: true
            responses:
                '200':
                    description: Returns the calldata to fulfill the transaction
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    data:
                                        type: object
                                        properties:
                                            id:
                                                type: string
                                            created_at:
                                                type: string
                                            expires_at:
                                                type: string
                                            web3_data:
                                                type: object
                                                properties:
                                                    transfer_intent:
                                                        type: object
                                                        properties:
                                                            call_data:
                                                                type: object
                                                                properties:
                                                                    deadline:
                                                                        type: string
                                                                    fee_amount:
                                                                        type: string
                                                                    id:
                                                                        type: string
                                                                    operator:
                                                                        type: string
                                                                    prefix:
                                                                        type: string
                                                                    recipient:
                                                                        type: string
                                                                    recipient_amount:
                                                                        type: string
                                                                    recipient_currency:
                                                                        type: string
                                                                    refund_destination:
                                                                        type: string
                                                                    signature:
                                                                        type: string
                                                                required:
                                                                    - deadline
                                                                    - fee_amount
                                                                    - id
                                                                    - operator
                                                                    - prefix
                                                                    - recipient
                                                                    - recipient_amount
                                                                    - recipient_currency
                                                                    - refund_destination
                                                                    - signature
                                                            metadata:
                                                                type: object
                                                                properties:
                                                                    chain_id:
                                                                        type: number
                                                                    contract_address:
                                                                        type: string
                                                                    sender:
                                                                        type: string
                                                                required:
                                                                    - chain_id
                                                                    - contract_address
                                                                    - sender
                                                        required:
                                                            - call_data
                                                            - metadata
                                                required:
                                                    - transfer_intent
                                        required:
                                            - id
                                            - created_at
                                            - expires_at
                                            - web3_data
                                required:
                                    - data
                '400':
                    description: Bad Request - Invalid credit amount or request body
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/BadRequestResponse'
                '401':
                    description: Unauthorized - Authentication required or invalid credentials
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/UnauthorizedResponse'
                '429':
                    description: Too Many Requests - Rate limit exceeded
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/TooManyRequestsResponse'
                '500':
                    description: Internal Server Error - Unexpected server error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/InternalServerResponse'
    /embeddings:
        post:
            x-speakeasy-name-override: generate
            tags:
                - Embeddings
            summary: Submit an embedding request
            description: Submits an embedding request to the embeddings router
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                input:
                                    anyOf:
                                        - type: string
                                        - type: array
                                          items:
                                            type: string
                                        - type: array
                                          items:
                                            type: number
                                        - type: array
                                          items:
                                            type: array
                                            items:
                                                type: number
                                        - type: array
                                          items:
                                            type: object
                                            properties:
                                                content:
                                                    type: array
                                                    items:
                                                        oneOf:
                                                            - type: object
                                                              properties:
                                                                type:
                                                                    type: string
                                                                    enum:
                                                                        - text
                                                                text:
                                                                    type: string
                                                              required:
                                                                - type
                                                                - text
                                                            - type: object
                                                              properties:
                                                                type:
                                                                    type: string
                                                                    enum:
                                                                        - image_url
                                                                image_url:
                                                                    type: object
                                                                    properties:
                                                                        url:
                                                                            type: string
                                                                    required:
                                                                        - url
                                                              required:
                                                                - type
                                                                - image_url
                                            required:
                                                - content
                                model:
                                    type: string
                                encoding_format:
                                    type: string
                                    enum:
                                        - float
                                        - base64
                                    x-speakeasy-unknown-values: allow
                                dimensions:
                                    type: integer
                                    minimum: 0
                                    exclusiveMinimum: true
                                user:
                                    type: string
                                provider:
                                    $ref: '#/components/schemas/ProviderPreferences'
                                input_type:
                                    type: string
                            required:
                                - input
                                - model
                required: true
            responses:
                '200':
                    description: Embedding response
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    id:
                                        type: string
                                    object:
                                        type: string
                                        enum:
                                            - list
                                    data:
                                        type: array
                                        items:
                                            type: object
                                            properties:
                                                object:
                                                    type: string
                                                    enum:
                                                        - embedding
                                                embedding:
                                                    anyOf:
                                                        - type: array
                                                          items:
                                                            type: number
                                                        - type: string
                                                index:
                                                    type: number
                                            required:
                                                - object
                                                - embedding
                                    model:
                                        type: string
                                    usage:
                                        type: object
                                        properties:
                                            prompt_tokens:
                                                type: number
                                            total_tokens:
                                                type: number
                                            cost:
                                                type: number
                                        required:
                                            - prompt_tokens
                                            - total_tokens
                                required:
                                    - object
                                    - data
                                    - model
                        text/event-stream:
                            schema:
                                type: string
                                description: Not used for embeddings - embeddings do not support streaming
                            x-speakeasy-sse-sentinel: '[DONE]'
                '400':
                    description: Bad Request - Invalid request parameters or malformed input
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/BadRequestResponse'
                '401':
                    description: Unauthorized - Authentication required or invalid credentials
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/UnauthorizedResponse'
                '402':
                    description: Payment Required - Insufficient credits or quota to complete request
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/PaymentRequiredResponse'
                '404':
                    description: Not Found - Resource does not exist
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/NotFoundResponse'
                '429':
                    description: Too Many Requests - Rate limit exceeded
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/TooManyRequestsResponse'
                '500':
                    description: Internal Server Error - Unexpected server error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/InternalServerResponse'
                '502':
                    description: Bad Gateway - Provider/upstream API failure
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/BadGatewayResponse'
                '503':
                    description: Service Unavailable - Service temporarily unavailable
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/ServiceUnavailableResponse'
                '524':
                    description: Cloudflare Timeout - Provider request timed out at CDN edge
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/EdgeNetworkTimeoutResponse'
                '529':
                    description: Provider Overloaded - Provider is temporarily overloaded
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/ProviderOverloadedResponse'
            operationId: createEmbeddings
    /embeddings/models:
        get:
            tags:
                - Embeddings
            x-speakeasy-name-override: listModels
            summary: List all embeddings models
            description: Returns a list of all available embeddings models and their properties
            responses:
                '200':
                    description: Returns a list of embeddings models
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/ModelsListResponse'
                '400':
                    description: Bad Request - Invalid request parameters
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/BadRequestResponse'
                '500':
                    description: Internal Server Error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/InternalServerResponse'
            operationId: listEmbeddingsModels
    /generation:
        get:
            tags:
                - Generations
            summary: Get request & usage metadata for a generation
            parameters:
                - schema:
                    type: string
                    minLength: 1
                  required: true
                  name: id
                  in: query
            responses:
                '200':
                    description: Returns the request metadata for this generation
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    data:
                                        type: object
                                        properties:
                                            id:
                                                type: string
                                                description: Unique identifier for the generation
                                                example: gen-3bhGkxlo4XFrqiabUM7NDtwDzWwG
                                            upstream_id:
                                                type: string
                                                nullable: true
                                                description: Upstream provider's identifier for this generation
                                                example: chatcmpl-791bcf62-080e-4568-87d0-94c72e3b4946
                                            total_cost:
                                                type: number
                                                description: Total cost of the generation in USD
                                                example: 0.0015
                                            cache_discount:
                                                type: number
                                                nullable: true
                                                description: Discount applied due to caching
                                                example: 0.0002
                                            upstream_inference_cost:
                                                type: number
                                                nullable: true
                                                description: Cost charged by the upstream provider
                                                example: 0.0012
                                            created_at:
                                                type: string
                                                description: ISO 8601 timestamp of when the generation was created
                                                example: '2024-07-15T23:33:19.433273+00:00'
                                            model:
                                                type: string
                                                description: Model used for the generation
                                                example: sao10k/l3-stheno-8b
                                            app_id:
                                                type: number
                                                nullable: true
                                                description: ID of the app that made the request
                                                example: 12345
                                            streamed:
                                                type: boolean
                                                nullable: true
                                                description: Whether the response was streamed
                                                example: true
                                            cancelled:
                                                type: boolean
                                                nullable: true
                                                description: Whether the generation was cancelled
                                                example: false
                                            provider_name:
                                                type: string
                                                nullable: true
                                                description: Name of the provider that served the request
                                                example: Infermatic
                                            latency:
                                                type: number
                                                nullable: true
                                                description: Total latency in milliseconds
                                                example: 1250
                                            moderation_latency:
                                                type: number
                                                nullable: true
                                                description: Moderation latency in milliseconds
                                                example: 50
                                            generation_time:
                                                type: number
                                                nullable: true
                                                description: Time taken for generation in milliseconds
                                                example: 1200
                                            finish_reason:
                                                type: string
                                                nullable: true
                                                description: Reason the generation finished
                                                example: stop
                                            tokens_prompt:
                                                type: number
                                                nullable: true
                                                description: Number of tokens in the prompt
                                                example: 10
                                            tokens_completion:
                                                type: number
                                                nullable: true
                                                description: Number of tokens in the completion
                                                example: 25
                                            native_tokens_prompt:
                                                type: number
                                                nullable: true
                                                description: Native prompt tokens as reported by provider
                                                example: 10
                                            native_tokens_completion:
                                                type: number
                                                nullable: true
                                                description: Native completion tokens as reported by provider
                                                example: 25
                                            native_tokens_completion_images:
                                                type: number
                                                nullable: true
                                                description: Native completion image tokens as reported by provider
                                                example: 0
                                            native_tokens_reasoning:
                                                type: number
                                                nullable: true
                                                description: Native reasoning tokens as reported by provider
                                                example: 5
                                            native_tokens_cached:
                                                type: number
                                                nullable: true
                                                description: Native cached tokens as reported by provider
                                                example: 3
                                            num_media_prompt:
                                                type: number
                                                nullable: true
                                                description: Number of media items in the prompt
                                                example: 1
                                            num_input_audio_prompt:
                                                type: number
                                                nullable: true
                                                description: Number of audio inputs in the prompt
                                                example: 0
                                            num_media_completion:
                                                type: number
                                                nullable: true
                                                description: Number of media items in the completion
                                                example: 0
                                            num_search_results:
                                                type: number
                                                nullable: true
                                                description: Number of search results included
                                                example: 5
                                            origin:
                                                type: string
                                                description: Origin URL of the request
                                                example: https://openrouter.ai/
                                            usage:
                                                type: number
                                                description: Usage amount in USD
                                                example: 0.0015
                                            is_byok:
                                                type: boolean
                                                description: Whether this used bring-your-own-key
                                                example: false
                                            native_finish_reason:
                                                type: string
                                                nullable: true
                                                description: Native finish reason as reported by provider
                                                example: stop
                                            external_user:
                                                type: string
                                                nullable: true
                                                description: External user identifier
                                                example: user-123
                                            api_type:
                                                type: string
                                                nullable: true
                                                enum:
                                                    - completions
                                                    - embeddings
                                                description: Type of API used for the generation
                                                x-speakeasy-unknown-values: allow
                                            router:
                                                type: string
                                                nullable: true
                                                description: Router used for the request (e.g., openrouter/auto)
                                                example: openrouter/auto
                                        required:
                                            - id
                                            - upstream_id
                                            - total_cost
                                            - cache_discount
                                            - upstream_inference_cost
                                            - created_at
                                            - model
                                            - app_id
                                            - streamed
                                            - cancelled
                                            - provider_name
                                            - latency
                                            - moderation_latency
                                            - generation_time
                                            - finish_reason
                                            - tokens_prompt
                                            - tokens_completion
                                            - native_tokens_prompt
                                            - native_tokens_completion
                                            - native_tokens_completion_images
                                            - native_tokens_reasoning
                                            - native_tokens_cached
                                            - num_media_prompt
                                            - num_input_audio_prompt
                                            - num_media_completion
                                            - num_search_results
                                            - origin
                                            - usage
                                            - is_byok
                                            - native_finish_reason
                                            - external_user
                                            - api_type
                                            - router
                                        description: Generation data
                                required:
                                    - data
                                description: Generation response
                '401':
                    description: Unauthorized - Authentication required or invalid credentials
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/UnauthorizedResponse'
                '402':
                    description: Payment Required - Insufficient credits or quota to complete request
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/PaymentRequiredResponse'
                '404':
                    description: Not Found - Generation not found
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/NotFoundResponse'
                '429':
                    description: Too Many Requests - Rate limit exceeded
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/TooManyRequestsResponse'
                '500':
                    description: Internal Server Error - Unexpected server error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/InternalServerResponse'
                '502':
                    description: Bad Gateway - Provider/upstream API failure
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/BadGatewayResponse'
                '524':
                    description: Infrastructure Timeout - Request timed out at our edge network
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/EdgeNetworkTimeoutResponse'
                '529':
                    description: Provider Overloaded - Provider is temporarily overloaded
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/ProviderOverloadedResponse'
            operationId: getGeneration
    /models/count:
        get:
            tags:
                - Models
            x-speakeasy-name-override: count
            summary: Get total count of available models
            responses:
                '200':
                    description: Returns the total count of available models
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/ModelsCountResponse'
                '500':
                    description: Internal Server Error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/InternalServerResponse'
            operationId: listModelsCount
    /models:
        get:
            tags:
                - Models
            x-speakeasy-name-override: list
            summary: List all models and their properties
            parameters:
                - schema:
                    type: string
                    enum:
                        - programming
                        - roleplay
                        - marketing
                        - marketing/seo
                        - technology
                        - science
                        - translation
                        - legal
                        - finance
                        - health
                        - trivia
                        - academia
                    description: Filter models by use case category
                    example: programming
                    x-speakeasy-unknown-values: allow
                  required: false
                  description: Filter models by use case category
                  name: category
                  in: query
                - schema:
                    type: string
                  required: false
                  name: supported_parameters
                  in: query
            responses:
                '200':
                    description: Returns a list of models or RSS feed
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/ModelsListResponse'
                '400':
                    description: Bad Request - Invalid request parameters
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/BadRequestResponse'
                '500':
                    description: Internal Server Error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/InternalServerResponse'
            operationId: getModels
    /models/user:
        get:
            tags:
                - Models
            x-speakeasy-name-override: listForUser
            summary: List models filtered by user provider preferences
            security:
                - bearer: []
            responses:
                '200':
                    description: Returns a list of models filtered by user provider preferences
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/ModelsListResponse'
                '401':
                    description: Unauthorized - Missing or invalid authentication
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/UnauthorizedResponse'
                '500':
                    description: Internal Server Error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/InternalServerResponse'
            operationId: listModelsUser
    /models/{author}/{slug}/endpoints:
        get:
            tags:
                - Endpoints
            operationId: listEndpoints
            x-speakeasy-name-override: list
            summary: List all endpoints for a model
            parameters:
                - schema:
                    type: string
                  required: true
                  name: author
                  in: path
                - schema:
                    type: string
                  required: true
                  name: slug
                  in: path
            responses:
                '200':
                    description: Returns a list of endpoints
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    data:
                                        $ref: '#/components/schemas/ListEndpointsResponse'
                                required:
                                    - data
                '404':
                    description: Not Found - Model does not exist
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/NotFoundResponse'
                '500':
                    description: Internal Server Error - Unexpected server error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/InternalServerResponse'
    /endpoints/zdr:
        get:
            tags:
                - Endpoints
            x-speakeasy-name-override: listZdrEndpoints
            summary: Preview the impact of ZDR on the available endpoints
            responses:
                '200':
                    description: Returns a list of endpoints
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    data:
                                        type: array
                                        items:
                                            $ref: '#/components/schemas/PublicEndpoint'
                                required:
                                    - data
                '500':
                    description: Internal Server Error - Unexpected server error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/InternalServerResponse'
            operationId: listEndpointsZdr
    /providers:
        get:
            tags:
                - Providers
            x-speakeasy-name-override: list
            summary: List all providers
            operationId: listProviders
            responses:
                '200':
                    description: Returns a list of providers
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    data:
                                        type: array
                                        items:
                                            type: object
                                            properties:
                                                name:
                                                    type: string
                                                    description: Display name of the provider
                                                    example: OpenAI
                                                slug:
                                                    type: string
                                                    description: URL-friendly identifier for the provider
                                                    example: openai
                                                privacy_policy_url:
                                                    type: string
                                                    nullable: true
                                                    description: URL to the provider's privacy policy
                                                    example: https://openai.com/privacy
                                                terms_of_service_url:
                                                    type: string
                                                    nullable: true
                                                    description: URL to the provider's terms of service
                                                    example: https://openai.com/terms
                                                status_page_url:
                                                    type: string
                                                    nullable: true
                                                    description: URL to the provider's status page
                                                    example: https://status.openai.com
                                            required:
                                                - name
                                                - slug
                                                - privacy_policy_url
                                            example:
                                                name: OpenAI
                                                slug: openai
                                                privacy_policy_url: https://openai.com/privacy
                                                terms_of_service_url: https://openai.com/terms
                                                status_page_url: https://status.openai.com
                                required:
                                    - data
                '500':
                    description: Internal Server Error - Unexpected server error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/InternalServerResponse'
    /keys:
        get:
            operationId: list
            x-speakeasy-name-override: list
            tags:
                - API Keys
            summary: List API keys
            description: >-
                List all API keys for the authenticated user. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
            parameters:
                - schema:
                    type: string
                    description: Whether to include disabled API keys in the response
                    example: 'false'
                  required: false
                  description: Whether to include disabled API keys in the response
                  name: include_disabled
                  in: query
                - schema:
                    type: string
                    description: Number of API keys to skip for pagination
                    example: '0'
                  required: false
                  description: Number of API keys to skip for pagination
                  name: offset
                  in: query
            responses:
                '200':
                    description: List of API keys
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    data:
                                        type: array
                                        items:
                                            type: object
                                            properties:
                                                hash:
                                                    type: string
                                                    description: Unique hash identifier for the API key
                                                    example: f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943
                                                name:
                                                    type: string
                                                    description: Name of the API key
                                                    example: My Production Key
                                                label:
                                                    type: string
                                                    description: Human-readable label for the API key
                                                    example: sk-or-v1-0e6...1c96
                                                disabled:
                                                    type: boolean
                                                    description: Whether the API key is disabled
                                                    example: false
                                                limit:
                                                    type: number
                                                    nullable: true
                                                    description: Spending limit for the API key in USD
                                                    example: 100
                                                limit_remaining:
                                                    type: number
                                                    nullable: true
                                                    description: Remaining spending limit in USD
                                                    example: 74.5
                                                limit_reset:
                                                    type: string
                                                    nullable: true
                                                    description: Type of limit reset for the API key
                                                    example: monthly
                                                include_byok_in_limit:
                                                    type: boolean
                                                    description: Whether to include external BYOK usage in the credit limit
                                                    example: false
                                                usage:
                                                    type: number
                                                    description: Total OpenRouter credit usage (in USD) for the API key
                                                    example: 25.5
                                                usage_daily:
                                                    type: number
                                                    description: OpenRouter credit usage (in USD) for the current UTC day
                                                    example: 25.5
                                                usage_weekly:
                                                    type: number
                                                    description: OpenRouter credit usage (in USD) for the current UTC week (Monday-Sunday)
                                                    example: 25.5
                                                usage_monthly:
                                                    type: number
                                                    description: OpenRouter credit usage (in USD) for the current UTC month
                                                    example: 25.5
                                                byok_usage:
                                                    type: number
                                                    description: Total external BYOK usage (in USD) for the API key
                                                    example: 17.38
                                                byok_usage_daily:
                                                    type: number
                                                    description: External BYOK usage (in USD) for the current UTC day
                                                    example: 17.38
                                                byok_usage_weekly:
                                                    type: number
                                                    description: External BYOK usage (in USD) for the current UTC week (Monday-Sunday)
                                                    example: 17.38
                                                byok_usage_monthly:
                                                    type: number
                                                    description: External BYOK usage (in USD) for current UTC month
                                                    example: 17.38
                                                created_at:
                                                    type: string
                                                    description: ISO 8601 timestamp of when the API key was created
                                                    example: '2025-08-24T10:30:00Z'
                                                updated_at:
                                                    type: string
                                                    nullable: true
                                                    description: ISO 8601 timestamp of when the API key was last updated
                                                    example: '2025-08-24T15:45:00Z'
                                                expires_at:
                                                    type: string
                                                    nullable: true
                                                    format: date-time
                                                    description: ISO 8601 UTC timestamp when the API key expires, or null if no expiration
                                                    example: '2027-12-31T23:59:59Z'
                                            required:
                                                - hash
                                                - name
                                                - label
                                                - disabled
                                                - limit
                                                - limit_remaining
                                                - limit_reset
                                                - include_byok_in_limit
                                                - usage
                                                - usage_daily
                                                - usage_weekly
                                                - usage_monthly
                                                - byok_usage
                                                - byok_usage_daily
                                                - byok_usage_weekly
                                                - byok_usage_monthly
                                                - created_at
                                                - updated_at
                                            example:
                                                hash: f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943
                                                name: My Production Key
                                                label: sk-or-v1-0e6...1c96
                                                disabled: false
                                                limit: 100
                                                limit_remaining: 74.5
                                                limit_reset: monthly
                                                include_byok_in_limit: false
                                                usage: 25.5
                                                usage_daily: 25.5
                                                usage_weekly: 25.5
                                                usage_monthly: 25.5
                                                byok_usage: 17.38
                                                byok_usage_daily: 17.38
                                                byok_usage_weekly: 17.38
                                                byok_usage_monthly: 17.38
                                                created_at: '2025-08-24T10:30:00Z'
                                                updated_at: '2025-08-24T15:45:00Z'
                                                expires_at: '2027-12-31T23:59:59Z'
                                        description: List of API keys
                                required:
                                    - data
                                example:
                                    data:
                                        - hash: f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943
                                          name: My Production Key
                                          label: Production API Key
                                          disabled: false
                                          limit: 100
                                          limit_remaining: 74.5
                                          limit_reset: monthly
                                          include_byok_in_limit: false
                                          usage: 25.5
                                          usage_daily: 25.5
                                          usage_weekly: 25.5
                                          usage_monthly: 25.5
                                          byok_usage: 17.38
                                          byok_usage_daily: 17.38
                                          byok_usage_weekly: 17.38
                                          byok_usage_monthly: 17.38
                                          created_at: '2025-08-24T10:30:00Z'
                                          updated_at: '2025-08-24T15:45:00Z'
                                          expires_at: '2027-12-31T23:59:59Z'
                '401':
                    description: Unauthorized - Missing or invalid authentication
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/UnauthorizedResponse'
                '429':
                    description: Too Many Requests - Rate limit exceeded
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/TooManyRequestsResponse'
                '500':
                    description: Internal Server Error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/InternalServerResponse'
        post:
            x-speakeasy-name-override: create
            tags:
                - API Keys
            summary: Create a new API key
            description: >-
                Create a new API key for the authenticated user. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                name:
                                    type: string
                                    minLength: 1
                                    description: Name for the new API key
                                    example: My New API Key
                                limit:
                                    type: number
                                    nullable: true
                                    description: Optional spending limit for the API key in USD
                                    example: 50
                                limit_reset:
                                    type: string
                                    nullable: true
                                    enum:
                                        - daily
                                        - weekly
                                        - monthly
                                    description: >-
                                        Type of limit reset for the API key (daily, weekly, monthly, or null for no reset). Resets happen automatically at midnight UTC, and weeks are Monday through Sunday.
                                    example: monthly
                                    x-speakeasy-unknown-values: allow
                                include_byok_in_limit:
                                    type: boolean
                                    description: Whether to include BYOK usage in the limit
                                    example: true
                                expires_at:
                                    type: string
                                    nullable: true
                                    format: date-time
                                    description: >-
                                        Optional ISO 8601 UTC timestamp when the API key should expire. Must be UTC, other timezones will be rejected
                                    example: '2027-12-31T23:59:59Z'
                            required:
                                - name
                            example:
                                name: My New API Key
                                limit: 50
                                limit_reset: monthly
                                include_byok_in_limit: true
                                expires_at: '2027-12-31T23:59:59Z'
                required: true
            responses:
                '201':
                    description: API key created successfully
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    data:
                                        type: object
                                        properties:
                                            hash:
                                                type: string
                                                description: Unique hash identifier for the API key
                                                example: f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943
                                            name:
                                                type: string
                                                description: Name of the API key
                                                example: My Production Key
                                            label:
                                                type: string
                                                description: Human-readable label for the API key
                                                example: sk-or-v1-0e6...1c96
                                            disabled:
                                                type: boolean
                                                description: Whether the API key is disabled
                                                example: false
                                            limit:
                                                type: number
                                                nullable: true
                                                description: Spending limit for the API key in USD
                                                example: 100
                                            limit_remaining:
                                                type: number
                                                nullable: true
                                                description: Remaining spending limit in USD
                                                example: 74.5
                                            limit_reset:
                                                type: string
                                                nullable: true
                                                description: Type of limit reset for the API key
                                                example: monthly
                                            include_byok_in_limit:
                                                type: boolean
                                                description: Whether to include external BYOK usage in the credit limit
                                                example: false
                                            usage:
                                                type: number
                                                description: Total OpenRouter credit usage (in USD) for the API key
                                                example: 25.5
                                            usage_daily:
                                                type: number
                                                description: OpenRouter credit usage (in USD) for the current UTC day
                                                example: 25.5
                                            usage_weekly:
                                                type: number
                                                description: OpenRouter credit usage (in USD) for the current UTC week (Monday-Sunday)
                                                example: 25.5
                                            usage_monthly:
                                                type: number
                                                description: OpenRouter credit usage (in USD) for the current UTC month
                                                example: 25.5
                                            byok_usage:
                                                type: number
                                                description: Total external BYOK usage (in USD) for the API key
                                                example: 17.38
                                            byok_usage_daily:
                                                type: number
                                                description: External BYOK usage (in USD) for the current UTC day
                                                example: 17.38
                                            byok_usage_weekly:
                                                type: number
                                                description: External BYOK usage (in USD) for the current UTC week (Monday-Sunday)
                                                example: 17.38
                                            byok_usage_monthly:
                                                type: number
                                                description: External BYOK usage (in USD) for current UTC month
                                                example: 17.38
                                            created_at:
                                                type: string
                                                description: ISO 8601 timestamp of when the API key was created
                                                example: '2025-08-24T10:30:00Z'
                                            updated_at:
                                                type: string
                                                nullable: true
                                                description: ISO 8601 timestamp of when the API key was last updated
                                                example: '2025-08-24T15:45:00Z'
                                            expires_at:
                                                type: string
                                                nullable: true
                                                format: date-time
                                                description: ISO 8601 UTC timestamp when the API key expires, or null if no expiration
                                                example: '2027-12-31T23:59:59Z'
                                        required:
                                            - hash
                                            - name
                                            - label
                                            - disabled
                                            - limit
                                            - limit_remaining
                                            - limit_reset
                                            - include_byok_in_limit
                                            - usage
                                            - usage_daily
                                            - usage_weekly
                                            - usage_monthly
                                            - byok_usage
                                            - byok_usage_daily
                                            - byok_usage_weekly
                                            - byok_usage_monthly
                                            - created_at
                                            - updated_at
                                        example:
                                            hash: f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943
                                            name: My Production Key
                                            label: sk-or-v1-0e6...1c96
                                            disabled: false
                                            limit: 100
                                            limit_remaining: 74.5
                                            limit_reset: monthly
                                            include_byok_in_limit: false
                                            usage: 25.5
                                            usage_daily: 25.5
                                            usage_weekly: 25.5
                                            usage_monthly: 25.5
                                            byok_usage: 17.38
                                            byok_usage_daily: 17.38
                                            byok_usage_weekly: 17.38
                                            byok_usage_monthly: 17.38
                                            created_at: '2025-08-24T10:30:00Z'
                                            updated_at: '2025-08-24T15:45:00Z'
                                            expires_at: '2027-12-31T23:59:59Z'
                                        description: The created API key information
                                    key:
                                        type: string
                                        description: The actual API key string (only shown once)
                                        example: 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
                                required:
                                    - data
                                    - key
                                example:
                                    data:
                                        hash: f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943
                                        name: My New API Key
                                        label: My New API Key
                                        disabled: false
                                        limit: 50
                                        limit_remaining: 50
                                        limit_reset: monthly
                                        include_byok_in_limit: true
                                        usage: 0
                                        usage_daily: 0
                                        usage_weekly: 0
                                        usage_monthly: 0
                                        byok_usage: 0
                                        byok_usage_daily: 0
                                        byok_usage_weekly: 0
                                        byok_usage_monthly: 0
                                        created_at: '2025-08-24T10:30:00Z'
                                        updated_at: null
                                        expires_at: '2027-12-31T23:59:59Z'
                                    key: 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
                '400':
                    description: Bad Request - Invalid request parameters
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/BadRequestResponse'
                '401':
                    description: Unauthorized - Missing or invalid authentication
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/UnauthorizedResponse'
                '429':
                    description: Too Many Requests - Rate limit exceeded
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/TooManyRequestsResponse'
                '500':
                    description: Internal Server Error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/InternalServerResponse'
            operationId: createKeys
    /keys/{hash}:
        patch:
            x-speakeasy-name-override: update
            tags:
                - API Keys
            summary: Update an API key
            description: Update an existing API key. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
            parameters:
                - schema:
                    type: string
                    description: The hash identifier of the API key to update
                    example: f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943
                  required: true
                  description: The hash identifier of the API key to update
                  name: hash
                  in: path
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                name:
                                    type: string
                                    description: New name for the API key
                                    example: Updated API Key Name
                                disabled:
                                    type: boolean
                                    description: Whether to disable the API key
                                    example: false
                                limit:
                                    type: number
                                    nullable: true
                                    description: New spending limit for the API key in USD
                                    example: 75
                                limit_reset:
                                    type: string
                                    nullable: true
                                    enum:
                                        - daily
                                        - weekly
                                        - monthly
                                    description: >-
                                        New limit reset type for the API key (daily, weekly, monthly, or null for no reset). Resets happen automatically at midnight UTC, and weeks are Monday through Sunday.
                                    example: daily
                                    x-speakeasy-unknown-values: allow
                                include_byok_in_limit:
                                    type: boolean
                                    description: Whether to include BYOK usage in the limit
                                    example: true
                            example:
                                name: Updated API Key Name
                                disabled: false
                                limit: 75
                                limit_reset: daily
                                include_byok_in_limit: true
                required: true
            responses:
                '200':
                    description: API key updated successfully
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    data:
                                        type: object
                                        properties:
                                            hash:
                                                type: string
                                                description: Unique hash identifier for the API key
                                                example: f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943
                                            name:
                                                type: string
                                                description: Name of the API key
                                                example: My Production Key
                                            label:
                                                type: string
                                                description: Human-readable label for the API key
                                                example: sk-or-v1-0e6...1c96
                                            disabled:
                                                type: boolean
                                                description: Whether the API key is disabled
                                                example: false
                                            limit:
                                                type: number
                                                nullable: true
                                                description: Spending limit for the API key in USD
                                                example: 100
                                            limit_remaining:
                                                type: number
                                                nullable: true
                                                description: Remaining spending limit in USD
                                                example: 74.5
                                            limit_reset:
                                                type: string
                                                nullable: true
                                                description: Type of limit reset for the API key
                                                example: monthly
                                            include_byok_in_limit:
                                                type: boolean
                                                description: Whether to include external BYOK usage in the credit limit
                                                example: false
                                            usage:
                                                type: number
                                                description: Total OpenRouter credit usage (in USD) for the API key
                                                example: 25.5
                                            usage_daily:
                                                type: number
                                                description: OpenRouter credit usage (in USD) for the current UTC day
                                                example: 25.5
                                            usage_weekly:
                                                type: number
                                                description: OpenRouter credit usage (in USD) for the current UTC week (Monday-Sunday)
                                                example: 25.5
                                            usage_monthly:
                                                type: number
                                                description: OpenRouter credit usage (in USD) for the current UTC month
                                                example: 25.5
                                            byok_usage:
                                                type: number
                                                description: Total external BYOK usage (in USD) for the API key
                                                example: 17.38
                                            byok_usage_daily:
                                                type: number
                                                description: External BYOK usage (in USD) for the current UTC day
                                                example: 17.38
                                            byok_usage_weekly:
                                                type: number
                                                description: External BYOK usage (in USD) for the current UTC week (Monday-Sunday)
                                                example: 17.38
                                            byok_usage_monthly:
                                                type: number
                                                description: External BYOK usage (in USD) for current UTC month
                                                example: 17.38
                                            created_at:
                                                type: string
                                                description: ISO 8601 timestamp of when the API key was created
                                                example: '2025-08-24T10:30:00Z'
                                            updated_at:
                                                type: string
                                                nullable: true
                                                description: ISO 8601 timestamp of when the API key was last updated
                                                example: '2025-08-24T15:45:00Z'
                                            expires_at:
                                                type: string
                                                nullable: true
                                                format: date-time
                                                description: ISO 8601 UTC timestamp when the API key expires, or null if no expiration
                                                example: '2027-12-31T23:59:59Z'
                                        required:
                                            - hash
                                            - name
                                            - label
                                            - disabled
                                            - limit
                                            - limit_remaining
                                            - limit_reset
                                            - include_byok_in_limit
                                            - usage
                                            - usage_daily
                                            - usage_weekly
                                            - usage_monthly
                                            - byok_usage
                                            - byok_usage_daily
                                            - byok_usage_weekly
                                            - byok_usage_monthly
                                            - created_at
                                            - updated_at
                                        example:
                                            hash: f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943
                                            name: My Production Key
                                            label: sk-or-v1-0e6...1c96
                                            disabled: false
                                            limit: 100
                                            limit_remaining: 74.5
                                            limit_reset: monthly
                                            include_byok_in_limit: false
                                            usage: 25.5
                                            usage_daily: 25.5
                                            usage_weekly: 25.5
                                            usage_monthly: 25.5
                                            byok_usage: 17.38
                                            byok_usage_daily: 17.38
                                            byok_usage_weekly: 17.38
                                            byok_usage_monthly: 17.38
                                            created_at: '2025-08-24T10:30:00Z'
                                            updated_at: '2025-08-24T15:45:00Z'
                                            expires_at: '2027-12-31T23:59:59Z'
                                        description: The updated API key information
                                required:
                                    - data
                                example:
                                    data:
                                        hash: f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943
                                        name: Updated API Key Name
                                        label: Updated API Key Name
                                        disabled: false
                                        limit: 75
                                        limit_remaining: 49.5
                                        limit_reset: daily
                                        include_byok_in_limit: true
                                        usage: 25.5
                                        usage_daily: 25.5
                                        usage_weekly: 25.5
                                        usage_monthly: 25.5
                                        byok_usage: 17.38
                                        byok_usage_daily: 17.38
                                        byok_usage_weekly: 17.38
                                        byok_usage_monthly: 17.38
                                        created_at: '2025-08-24T10:30:00Z'
                                        updated_at: '2025-08-24T16:00:00Z'
                                        expires_at: null
                '400':
                    description: Bad Request - Invalid request parameters
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/BadRequestResponse'
                '401':
                    description: Unauthorized - Missing or invalid authentication
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/UnauthorizedResponse'
                '404':
                    description: Not Found - API key does not exist
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/NotFoundResponse'
                '429':
                    description: Too Many Requests - Rate limit exceeded
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/TooManyRequestsResponse'
                '500':
                    description: Internal Server Error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/InternalServerResponse'
            operationId: updateKeys
        delete:
            x-speakeasy-name-override: delete
            tags:
                - API Keys
            summary: Delete an API key
            description: Delete an existing API key. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
            parameters:
                - schema:
                    type: string
                    description: The hash identifier of the API key to delete
                    example: f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943
                  required: true
                  description: The hash identifier of the API key to delete
                  name: hash
                  in: path
            responses:
                '200':
                    description: API key deleted successfully
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    deleted:
                                        type: boolean
                                        const: true
                                        description: Confirmation that the API key was deleted
                                        example: true
                                required:
                                    - deleted
                                example:
                                    deleted: true
                '401':
                    description: Unauthorized - Missing or invalid authentication
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/UnauthorizedResponse'
                '404':
                    description: Not Found - API key does not exist
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/NotFoundResponse'
                '429':
                    description: Too Many Requests - Rate limit exceeded
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/TooManyRequestsResponse'
                '500':
                    description: Internal Server Error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/InternalServerResponse'
            operationId: deleteKeys
        get:
            operationId: getKey
            x-speakeasy-name-override: get
            tags:
                - API Keys
            summary: Get a single API key
            description: Get a single API key by hash. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
            parameters:
                - schema:
                    type: string
                    description: The hash identifier of the API key to retrieve
                    example: f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943
                  required: true
                  description: The hash identifier of the API key to retrieve
                  name: hash
                  in: path
            responses:
                '200':
                    description: API key details
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    data:
                                        type: object
                                        properties:
                                            hash:
                                                type: string
                                                description: Unique hash identifier for the API key
                                                example: f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943
                                            name:
                                                type: string
                                                description: Name of the API key
                                                example: My Production Key
                                            label:
                                                type: string
                                                description: Human-readable label for the API key
                                                example: sk-or-v1-0e6...1c96
                                            disabled:
                                                type: boolean
                                                description: Whether the API key is disabled
                                                example: false
                                            limit:
                                                type: number
                                                nullable: true
                                                description: Spending limit for the API key in USD
                                                example: 100
                                            limit_remaining:
                                                type: number
                                                nullable: true
                                                description: Remaining spending limit in USD
                                                example: 74.5
                                            limit_reset:
                                                type: string
                                                nullable: true
                                                description: Type of limit reset for the API key
                                                example: monthly
                                            include_byok_in_limit:
                                                type: boolean
                                                description: Whether to include external BYOK usage in the credit limit
                                                example: false
                                            usage:
                                                type: number
                                                description: Total OpenRouter credit usage (in USD) for the API key
                                                example: 25.5
                                            usage_daily:
                                                type: number
                                                description: OpenRouter credit usage (in USD) for the current UTC day
                                                example: 25.5
                                            usage_weekly:
                                                type: number
                                                description: OpenRouter credit usage (in USD) for the current UTC week (Monday-Sunday)
                                                example: 25.5
                                            usage_monthly:
                                                type: number
                                                description: OpenRouter credit usage (in USD) for the current UTC month
                                                example: 25.5
                                            byok_usage:
                                                type: number
                                                description: Total external BYOK usage (in USD) for the API key
                                                example: 17.38
                                            byok_usage_daily:
                                                type: number
                                                description: External BYOK usage (in USD) for the current UTC day
                                                example: 17.38
                                            byok_usage_weekly:
                                                type: number
                                                description: External BYOK usage (in USD) for the current UTC week (Monday-Sunday)
                                                example: 17.38
                                            byok_usage_monthly:
                                                type: number
                                                description: External BYOK usage (in USD) for current UTC month
                                                example: 17.38
                                            created_at:
                                                type: string
                                                description: ISO 8601 timestamp of when the API key was created
                                                example: '2025-08-24T10:30:00Z'
                                            updated_at:
                                                type: string
                                                nullable: true
                                                description: ISO 8601 timestamp of when the API key was last updated
                                                example: '2025-08-24T15:45:00Z'
                                            expires_at:
                                                type: string
                                                nullable: true
                                                format: date-time
                                                description: ISO 8601 UTC timestamp when the API key expires, or null if no expiration
                                                example: '2027-12-31T23:59:59Z'
                                        required:
                                            - hash
                                            - name
                                            - label
                                            - disabled
                                            - limit
                                            - limit_remaining
                                            - limit_reset
                                            - include_byok_in_limit
                                            - usage
                                            - usage_daily
                                            - usage_weekly
                                            - usage_monthly
                                            - byok_usage
                                            - byok_usage_daily
                                            - byok_usage_weekly
                                            - byok_usage_monthly
                                            - created_at
                                            - updated_at
                                        example:
                                            hash: f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943
                                            name: My Production Key
                                            label: sk-or-v1-0e6...1c96
                                            disabled: false
                                            limit: 100
                                            limit_remaining: 74.5
                                            limit_reset: monthly
                                            include_byok_in_limit: false
                                            usage: 25.5
                                            usage_daily: 25.5
                                            usage_weekly: 25.5
                                            usage_monthly: 25.5
                                            byok_usage: 17.38
                                            byok_usage_daily: 17.38
                                            byok_usage_weekly: 17.38
                                            byok_usage_monthly: 17.38
                                            created_at: '2025-08-24T10:30:00Z'
                                            updated_at: '2025-08-24T15:45:00Z'
                                            expires_at: '2027-12-31T23:59:59Z'
                                        description: The API key information
                                required:
                                    - data
                                example:
                                    data:
                                        hash: f01d52606dc8f0a8303a7b5cc3fa07109c2e346cec7c0a16b40de462992ce943
                                        name: My Production Key
                                        label: Production API Key
                                        disabled: false
                                        limit: 100
                                        limit_remaining: 74.5
                                        limit_reset: monthly
                                        include_byok_in_limit: false
                                        usage: 25.5
                                        usage_daily: 25.5
                                        usage_weekly: 25.5
                                        usage_monthly: 25.5
                                        byok_usage: 17.38
                                        byok_usage_daily: 17.38
                                        byok_usage_weekly: 17.38
                                        byok_usage_monthly: 17.38
                                        created_at: '2025-08-24T10:30:00Z'
                                        updated_at: '2025-08-24T15:45:00Z'
                                        expires_at: '2027-12-31T23:59:59Z'
                '401':
                    description: Unauthorized - Missing or invalid authentication
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/UnauthorizedResponse'
                '404':
                    description: Not Found - API key does not exist
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/NotFoundResponse'
                '429':
                    description: Too Many Requests - Rate limit exceeded
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/TooManyRequestsResponse'
                '500':
                    description: Internal Server Error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/InternalServerResponse'
    /guardrails:
        get:
            operationId: listGuardrails
            x-speakeasy-name-override: list
            tags:
                - Guardrails
            summary: List guardrails
            description: >-
                List all guardrails for the authenticated user. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
            parameters:
                - schema:
                    type: string
                    description: Number of records to skip for pagination
                    example: '0'
                  required: false
                  description: Number of records to skip for pagination
                  name: offset
                  in: query
                - schema:
                    type: string
                    description: Maximum number of records to return (max 100)
                    example: '50'
                  required: false
                  description: Maximum number of records to return (max 100)
                  name: limit
                  in: query
            responses:
                '200':
                    description: List of guardrails
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    data:
                                        type: array
                                        items:
                                            type: object
                                            properties:
                                                id:
                                                    type: string
                                                    format: uuid
                                                    description: Unique identifier for the guardrail
                                                    example: 550e8400-e29b-41d4-a716-446655440000
                                                name:
                                                    type: string
                                                    description: Name of the guardrail
                                                    example: Production Guardrail
                                                description:
                                                    type: string
                                                    nullable: true
                                                    description: Description of the guardrail
                                                    example: Guardrail for production environment
                                                limit_usd:
                                                    type: number
                                                    nullable: true
                                                    minimum: 0
                                                    exclusiveMinimum: true
                                                    description: Spending limit in USD
                                                    example: 100
                                                reset_interval:
                                                    type: string
                                                    nullable: true
                                                    enum:
                                                        - daily
                                                        - weekly
                                                        - monthly
                                                    description: Interval at which the limit resets (daily, weekly, monthly)
                                                    example: monthly
                                                    x-speakeasy-unknown-values: allow
                                                allowed_providers:
                                                    type: array
                                                    nullable: true
                                                    items:
                                                        type: string
                                                    description: List of allowed provider IDs
                                                    example:
                                                        - openai
                                                        - anthropic
                                                        - google
                                                allowed_models:
                                                    type: array
                                                    nullable: true
                                                    items:
                                                        type: string
                                                    description: Array of model canonical_slugs (immutable identifiers)
                                                    example:
                                                        - openai/gpt-5.2-20251211
                                                        - anthropic/claude-4.5-opus-20251124
                                                        - deepseek/deepseek-r1-0528:free
                                                enforce_zdr:
                                                    type: boolean
                                                    nullable: true
                                                    description: Whether to enforce zero data retention
                                                    example: false
                                                created_at:
                                                    type: string
                                                    description: ISO 8601 timestamp of when the guardrail was created
                                                    example: '2025-08-24T10:30:00Z'
                                                updated_at:
                                                    type: string
                                                    nullable: true
                                                    description: ISO 8601 timestamp of when the guardrail was last updated
                                                    example: '2025-08-24T15:45:00Z'
                                            required:
                                                - id
                                                - name
                                                - created_at
                                            example:
                                                id: 550e8400-e29b-41d4-a716-446655440000
                                                name: Production Guardrail
                                                description: Guardrail for production environment
                                                limit_usd: 100
                                                reset_interval: monthly
                                                allowed_providers:
                                                    - openai
                                                    - anthropic
                                                    - google
                                                allowed_models: null
                                                enforce_zdr: false
                                                created_at: '2025-08-24T10:30:00Z'
                                                updated_at: '2025-08-24T15:45:00Z'
                                        description: List of guardrails
                                    total_count:
                                        type: number
                                        description: Total number of guardrails
                                        example: 25
                                required:
                                    - data
                                    - total_count
                                example:
                                    data:
                                        - id: 550e8400-e29b-41d4-a716-446655440000
                                          name: Production Guardrail
                                          description: Guardrail for production environment
                                          limit_usd: 100
                                          reset_interval: monthly
                                          allowed_providers:
                                            - openai
                                            - anthropic
                                            - google
                                          allowed_models: null
                                          enforce_zdr: false
                                          created_at: '2025-08-24T10:30:00Z'
                                          updated_at: '2025-08-24T15:45:00Z'
                                    total_count: 1
                '401':
                    description: Unauthorized - Missing or invalid authentication
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/UnauthorizedResponse'
                '500':
                    description: Internal Server Error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/InternalServerResponse'
        post:
            operationId: createGuardrail
            x-speakeasy-name-override: create
            tags:
                - Guardrails
            summary: Create a guardrail
            description: >-
                Create a new guardrail for the authenticated user. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                name:
                                    type: string
                                    minLength: 1
                                    maxLength: 200
                                    description: Name for the new guardrail
                                    example: My New Guardrail
                                description:
                                    type: string
                                    nullable: true
                                    maxLength: 1000
                                    description: Description of the guardrail
                                    example: A guardrail for limiting API usage
                                limit_usd:
                                    type: number
                                    nullable: true
                                    minimum: 0
                                    exclusiveMinimum: true
                                    description: Spending limit in USD
                                    example: 50
                                reset_interval:
                                    type: string
                                    nullable: true
                                    enum:
                                        - daily
                                        - weekly
                                        - monthly
                                    description: Interval at which the limit resets (daily, weekly, monthly)
                                    example: monthly
                                    x-speakeasy-unknown-values: allow
                                allowed_providers:
                                    type: array
                                    nullable: true
                                    items:
                                        type: string
                                    minItems: 1
                                    description: List of allowed provider IDs
                                    example:
                                        - openai
                                        - anthropic
                                        - deepseek
                                allowed_models:
                                    type: array
                                    nullable: true
                                    items:
                                        type: string
                                    minItems: 1
                                    description: Array of model identifiers (slug or canonical_slug accepted)
                                    example:
                                        - openai/gpt-5.2
                                        - anthropic/claude-4.5-opus-20251124
                                        - deepseek/deepseek-r1-0528:free
                                enforce_zdr:
                                    type: boolean
                                    nullable: true
                                    description: Whether to enforce zero data retention
                                    example: false
                            required:
                                - name
                            example:
                                name: My New Guardrail
                                description: A guardrail for limiting API usage
                                limit_usd: 50
                                reset_interval: monthly
                                allowed_providers:
                                    - openai
                                    - anthropic
                                    - deepseek
                                allowed_models: null
                                enforce_zdr: false
                required: true
            responses:
                '201':
                    description: Guardrail created successfully
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    data:
                                        type: object
                                        properties:
                                            id:
                                                type: string
                                                format: uuid
                                                description: Unique identifier for the guardrail
                                                example: 550e8400-e29b-41d4-a716-446655440000
                                            name:
                                                type: string
                                                description: Name of the guardrail
                                                example: Production Guardrail
                                            description:
                                                type: string
                                                nullable: true
                                                description: Description of the guardrail
                                                example: Guardrail for production environment
                                            limit_usd:
                                                type: number
                                                nullable: true
                                                minimum: 0
                                                exclusiveMinimum: true
                                                description: Spending limit in USD
                                                example: 100
                                            reset_interval:
                                                type: string
                                                nullable: true
                                                enum:
                                                    - daily
                                                    - weekly
                                                    - monthly
                                                description: Interval at which the limit resets (daily, weekly, monthly)
                                                example: monthly
                                                x-speakeasy-unknown-values: allow
                                            allowed_providers:
                                                type: array
                                                nullable: true
                                                items:
                                                    type: string
                                                description: List of allowed provider IDs
                                                example:
                                                    - openai
                                                    - anthropic
                                                    - google
                                            allowed_models:
                                                type: array
                                                nullable: true
                                                items:
                                                    type: string
                                                description: Array of model canonical_slugs (immutable identifiers)
                                                example:
                                                    - openai/gpt-5.2-20251211
                                                    - anthropic/claude-4.5-opus-20251124
                                                    - deepseek/deepseek-r1-0528:free
                                            enforce_zdr:
                                                type: boolean
                                                nullable: true
                                                description: Whether to enforce zero data retention
                                                example: false
                                            created_at:
                                                type: string
                                                description: ISO 8601 timestamp of when the guardrail was created
                                                example: '2025-08-24T10:30:00Z'
                                            updated_at:
                                                type: string
                                                nullable: true
                                                description: ISO 8601 timestamp of when the guardrail was last updated
                                                example: '2025-08-24T15:45:00Z'
                                        required:
                                            - id
                                            - name
                                            - created_at
                                        example:
                                            id: 550e8400-e29b-41d4-a716-446655440000
                                            name: Production Guardrail
                                            description: Guardrail for production environment
                                            limit_usd: 100
                                            reset_interval: monthly
                                            allowed_providers:
                                                - openai
                                                - anthropic
                                                - google
                                            allowed_models: null
                                            enforce_zdr: false
                                            created_at: '2025-08-24T10:30:00Z'
                                            updated_at: '2025-08-24T15:45:00Z'
                                        description: The created guardrail
                                required:
                                    - data
                                example:
                                    data:
                                        id: 550e8400-e29b-41d4-a716-446655440000
                                        name: My New Guardrail
                                        description: A guardrail for limiting API usage
                                        limit_usd: 50
                                        reset_interval: monthly
                                        allowed_providers:
                                            - openai
                                            - anthropic
                                            - google
                                        allowed_models: null
                                        enforce_zdr: false
                                        created_at: '2025-08-24T10:30:00Z'
                                        updated_at: null
                '400':
                    description: Bad Request - Invalid request parameters
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/BadRequestResponse'
                '401':
                    description: Unauthorized - Missing or invalid authentication
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/UnauthorizedResponse'
                '500':
                    description: Internal Server Error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/InternalServerResponse'
    /guardrails/{id}:
        get:
            operationId: getGuardrail
            x-speakeasy-name-override: get
            tags:
                - Guardrails
            summary: Get a guardrail
            description: Get a single guardrail by ID. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
            parameters:
                - schema:
                    type: string
                    format: uuid
                    description: The unique identifier of the guardrail to retrieve
                    example: 550e8400-e29b-41d4-a716-446655440000
                  required: true
                  description: The unique identifier of the guardrail to retrieve
                  name: id
                  in: path
            responses:
                '200':
                    description: Guardrail details
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    data:
                                        type: object
                                        properties:
                                            id:
                                                type: string
                                                format: uuid
                                                description: Unique identifier for the guardrail
                                                example: 550e8400-e29b-41d4-a716-446655440000
                                            name:
                                                type: string
                                                description: Name of the guardrail
                                                example: Production Guardrail
                                            description:
                                                type: string
                                                nullable: true
                                                description: Description of the guardrail
                                                example: Guardrail for production environment
                                            limit_usd:
                                                type: number
                                                nullable: true
                                                minimum: 0
                                                exclusiveMinimum: true
                                                description: Spending limit in USD
                                                example: 100
                                            reset_interval:
                                                type: string
                                                nullable: true
                                                enum:
                                                    - daily
                                                    - weekly
                                                    - monthly
                                                description: Interval at which the limit resets (daily, weekly, monthly)
                                                example: monthly
                                                x-speakeasy-unknown-values: allow
                                            allowed_providers:
                                                type: array
                                                nullable: true
                                                items:
                                                    type: string
                                                description: List of allowed provider IDs
                                                example:
                                                    - openai
                                                    - anthropic
                                                    - google
                                            allowed_models:
                                                type: array
                                                nullable: true
                                                items:
                                                    type: string
                                                description: Array of model canonical_slugs (immutable identifiers)
                                                example:
                                                    - openai/gpt-5.2-20251211
                                                    - anthropic/claude-4.5-opus-20251124
                                                    - deepseek/deepseek-r1-0528:free
                                            enforce_zdr:
                                                type: boolean
                                                nullable: true
                                                description: Whether to enforce zero data retention
                                                example: false
                                            created_at:
                                                type: string
                                                description: ISO 8601 timestamp of when the guardrail was created
                                                example: '2025-08-24T10:30:00Z'
                                            updated_at:
                                                type: string
                                                nullable: true
                                                description: ISO 8601 timestamp of when the guardrail was last updated
                                                example: '2025-08-24T15:45:00Z'
                                        required:
                                            - id
                                            - name
                                            - created_at
                                        example:
                                            id: 550e8400-e29b-41d4-a716-446655440000
                                            name: Production Guardrail
                                            description: Guardrail for production environment
                                            limit_usd: 100
                                            reset_interval: monthly
                                            allowed_providers:
                                                - openai
                                                - anthropic
                                                - google
                                            allowed_models: null
                                            enforce_zdr: false
                                            created_at: '2025-08-24T10:30:00Z'
                                            updated_at: '2025-08-24T15:45:00Z'
                                        description: The guardrail
                                required:
                                    - data
                                example:
                                    data:
                                        id: 550e8400-e29b-41d4-a716-446655440000
                                        name: Production Guardrail
                                        description: Guardrail for production environment
                                        limit_usd: 100
                                        reset_interval: monthly
                                        allowed_providers:
                                            - openai
                                            - anthropic
                                            - google
                                        allowed_models: null
                                        enforce_zdr: false
                                        created_at: '2025-08-24T10:30:00Z'
                                        updated_at: '2025-08-24T15:45:00Z'
                '401':
                    description: Unauthorized - Missing or invalid authentication
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/UnauthorizedResponse'
                '404':
                    description: Not Found - Guardrail does not exist
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/NotFoundResponse'
                '500':
                    description: Internal Server Error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/InternalServerResponse'
        patch:
            operationId: updateGuardrail
            x-speakeasy-name-override: update
            tags:
                - Guardrails
            summary: Update a guardrail
            description: Update an existing guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
            parameters:
                - schema:
                    type: string
                    format: uuid
                    description: The unique identifier of the guardrail to update
                    example: 550e8400-e29b-41d4-a716-446655440000
                  required: true
                  description: The unique identifier of the guardrail to update
                  name: id
                  in: path
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                name:
                                    type: string
                                    minLength: 1
                                    maxLength: 200
                                    description: New name for the guardrail
                                    example: Updated Guardrail Name
                                description:
                                    type: string
                                    nullable: true
                                    maxLength: 1000
                                    description: New description for the guardrail
                                    example: Updated description
                                limit_usd:
                                    type: number
                                    nullable: true
                                    minimum: 0
                                    exclusiveMinimum: true
                                    description: New spending limit in USD
                                    example: 75
                                reset_interval:
                                    type: string
                                    nullable: true
                                    enum:
                                        - daily
                                        - weekly
                                        - monthly
                                    description: Interval at which the limit resets (daily, weekly, monthly)
                                    example: monthly
                                    x-speakeasy-unknown-values: allow
                                allowed_providers:
                                    type: array
                                    nullable: true
                                    items:
                                        type: string
                                    minItems: 1
                                    description: New list of allowed provider IDs
                                    example:
                                        - openai
                                        - anthropic
                                        - deepseek
                                allowed_models:
                                    type: array
                                    nullable: true
                                    items:
                                        type: string
                                    minItems: 1
                                    description: Array of model identifiers (slug or canonical_slug accepted)
                                    example:
                                        - openai/gpt-5.2
                                enforce_zdr:
                                    type: boolean
                                    nullable: true
                                    description: Whether to enforce zero data retention
                                    example: true
                            example:
                                name: Updated Guardrail Name
                                description: Updated description
                                limit_usd: 75
                                reset_interval: weekly
                required: true
            responses:
                '200':
                    description: Guardrail updated successfully
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    data:
                                        type: object
                                        properties:
                                            id:
                                                type: string
                                                format: uuid
                                                description: Unique identifier for the guardrail
                                                example: 550e8400-e29b-41d4-a716-446655440000
                                            name:
                                                type: string
                                                description: Name of the guardrail
                                                example: Production Guardrail
                                            description:
                                                type: string
                                                nullable: true
                                                description: Description of the guardrail
                                                example: Guardrail for production environment
                                            limit_usd:
                                                type: number
                                                nullable: true
                                                minimum: 0
                                                exclusiveMinimum: true
                                                description: Spending limit in USD
                                                example: 100
                                            reset_interval:
                                                type: string
                                                nullable: true
                                                enum:
                                                    - daily
                                                    - weekly
                                                    - monthly
                                                description: Interval at which the limit resets (daily, weekly, monthly)
                                                example: monthly
                                                x-speakeasy-unknown-values: allow
                                            allowed_providers:
                                                type: array
                                                nullable: true
                                                items:
                                                    type: string
                                                description: List of allowed provider IDs
                                                example:
                                                    - openai
                                                    - anthropic
                                                    - google
                                            allowed_models:
                                                type: array
                                                nullable: true
                                                items:
                                                    type: string
                                                description: Array of model canonical_slugs (immutable identifiers)
                                                example:
                                                    - openai/gpt-5.2-20251211
                                                    - anthropic/claude-4.5-opus-20251124
                                                    - deepseek/deepseek-r1-0528:free
                                            enforce_zdr:
                                                type: boolean
                                                nullable: true
                                                description: Whether to enforce zero data retention
                                                example: false
                                            created_at:
                                                type: string
                                                description: ISO 8601 timestamp of when the guardrail was created
                                                example: '2025-08-24T10:30:00Z'
                                            updated_at:
                                                type: string
                                                nullable: true
                                                description: ISO 8601 timestamp of when the guardrail was last updated
                                                example: '2025-08-24T15:45:00Z'
                                        required:
                                            - id
                                            - name
                                            - created_at
                                        example:
                                            id: 550e8400-e29b-41d4-a716-446655440000
                                            name: Production Guardrail
                                            description: Guardrail for production environment
                                            limit_usd: 100
                                            reset_interval: monthly
                                            allowed_providers:
                                                - openai
                                                - anthropic
                                                - google
                                            allowed_models: null
                                            enforce_zdr: false
                                            created_at: '2025-08-24T10:30:00Z'
                                            updated_at: '2025-08-24T15:45:00Z'
                                        description: The updated guardrail
                                required:
                                    - data
                                example:
                                    data:
                                        id: 550e8400-e29b-41d4-a716-446655440000
                                        name: Updated Guardrail Name
                                        description: Updated description
                                        limit_usd: 75
                                        reset_interval: weekly
                                        allowed_providers:
                                            - openai
                                        allowed_models: null
                                        enforce_zdr: true
                                        created_at: '2025-08-24T10:30:00Z'
                                        updated_at: '2025-08-24T16:00:00Z'
                '400':
                    description: Bad Request - Invalid request parameters
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/BadRequestResponse'
                '401':
                    description: Unauthorized - Missing or invalid authentication
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/UnauthorizedResponse'
                '404':
                    description: Not Found - Guardrail does not exist
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/NotFoundResponse'
                '500':
                    description: Internal Server Error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/InternalServerResponse'
        delete:
            operationId: deleteGuardrail
            x-speakeasy-name-override: delete
            tags:
                - Guardrails
            summary: Delete a guardrail
            description: Delete an existing guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
            parameters:
                - schema:
                    type: string
                    format: uuid
                    description: The unique identifier of the guardrail to delete
                    example: 550e8400-e29b-41d4-a716-446655440000
                  required: true
                  description: The unique identifier of the guardrail to delete
                  name: id
                  in: path
            responses:
                '200':
                    description: Guardrail deleted successfully
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    deleted:
                                        type: boolean
                                        const: true
                                        description: Confirmation that the guardrail was deleted
                                        example: true
                                required:
                                    - deleted
                                example:
                                    deleted: true
                '401':
                    description: Unauthorized - Missing or invalid authentication
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/UnauthorizedResponse'
                '404':
                    description: Not Found - Guardrail does not exist
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/NotFoundResponse'
                '500':
                    description: Internal Server Error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/InternalServerResponse'
    /guardrails/assignments/keys:
        get:
            operationId: listKeyAssignments
            x-speakeasy-name-override: listKeyAssignments
            tags:
                - Guardrails
            summary: List all key assignments
            description: >-
                List all API key guardrail assignments for the authenticated user. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
            parameters:
                - schema:
                    type: string
                    description: Number of records to skip for pagination
                    example: '0'
                  required: false
                  description: Number of records to skip for pagination
                  name: offset
                  in: query
                - schema:
                    type: string
                    description: Maximum number of records to return (max 100)
                    example: '50'
                  required: false
                  description: Maximum number of records to return (max 100)
                  name: limit
                  in: query
            responses:
                '200':
                    description: List of key assignments
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    data:
                                        type: array
                                        items:
                                            type: object
                                            properties:
                                                id:
                                                    type: string
                                                    format: uuid
                                                    description: Unique identifier for the assignment
                                                    example: 550e8400-e29b-41d4-a716-446655440000
                                                key_hash:
                                                    type: string
                                                    description: Hash of the assigned API key
                                                    example: c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93
                                                guardrail_id:
                                                    type: string
                                                    format: uuid
                                                    description: ID of the guardrail
                                                    example: 550e8400-e29b-41d4-a716-446655440001
                                                key_name:
                                                    type: string
                                                    description: Name of the API key
                                                    example: Production Key
                                                key_label:
                                                    type: string
                                                    description: Label of the API key
                                                    example: prod-key
                                                assigned_by:
                                                    type: string
                                                    nullable: true
                                                    description: User ID of who made the assignment
                                                    example: user_abc123
                                                created_at:
                                                    type: string
                                                    description: ISO 8601 timestamp of when the assignment was created
                                                    example: '2025-08-24T10:30:00Z'
                                            required:
                                                - id
                                                - key_hash
                                                - guardrail_id
                                                - key_name
                                                - key_label
                                                - assigned_by
                                                - created_at
                                        description: List of key assignments
                                    total_count:
                                        type: number
                                        description: Total number of key assignments for this guardrail
                                        example: 25
                                required:
                                    - data
                                    - total_count
                '401':
                    description: Unauthorized - Missing or invalid authentication
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/UnauthorizedResponse'
                '500':
                    description: Internal Server Error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/InternalServerResponse'
    /guardrails/assignments/members:
        get:
            operationId: listMemberAssignments
            x-speakeasy-name-override: listMemberAssignments
            tags:
                - Guardrails
            summary: List all member assignments
            description: >-
                List all organization member guardrail assignments for the authenticated user. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
            parameters:
                - schema:
                    type: string
                    description: Number of records to skip for pagination
                    example: '0'
                  required: false
                  description: Number of records to skip for pagination
                  name: offset
                  in: query
                - schema:
                    type: string
                    description: Maximum number of records to return (max 100)
                    example: '50'
                  required: false
                  description: Maximum number of records to return (max 100)
                  name: limit
                  in: query
            responses:
                '200':
                    description: List of member assignments
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    data:
                                        type: array
                                        items:
                                            type: object
                                            properties:
                                                id:
                                                    type: string
                                                    format: uuid
                                                    description: Unique identifier for the assignment
                                                    example: 550e8400-e29b-41d4-a716-446655440000
                                                user_id:
                                                    type: string
                                                    description: Clerk user ID of the assigned member
                                                    example: user_abc123
                                                organization_id:
                                                    type: string
                                                    description: Organization ID
                                                    example: org_xyz789
                                                guardrail_id:
                                                    type: string
                                                    format: uuid
                                                    description: ID of the guardrail
                                                    example: 550e8400-e29b-41d4-a716-446655440001
                                                assigned_by:
                                                    type: string
                                                    nullable: true
                                                    description: User ID of who made the assignment
                                                    example: user_abc123
                                                created_at:
                                                    type: string
                                                    description: ISO 8601 timestamp of when the assignment was created
                                                    example: '2025-08-24T10:30:00Z'
                                            required:
                                                - id
                                                - user_id
                                                - organization_id
                                                - guardrail_id
                                                - assigned_by
                                                - created_at
                                        description: List of member assignments
                                    total_count:
                                        type: number
                                        description: Total number of member assignments
                                        example: 10
                                required:
                                    - data
                                    - total_count
                '401':
                    description: Unauthorized - Missing or invalid authentication
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/UnauthorizedResponse'
                '500':
                    description: Internal Server Error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/InternalServerResponse'
    /guardrails/{id}/assignments/keys:
        get:
            operationId: listGuardrailKeyAssignments
            x-speakeasy-name-override: listGuardrailKeyAssignments
            tags:
                - Guardrails
            summary: List key assignments for a guardrail
            description: >-
                List all API key assignments for a specific guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
            parameters:
                - schema:
                    type: string
                    format: uuid
                    description: The unique identifier of the guardrail
                    example: 550e8400-e29b-41d4-a716-446655440000
                  required: true
                  description: The unique identifier of the guardrail
                  name: id
                  in: path
                - schema:
                    type: string
                    description: Number of records to skip for pagination
                    example: '0'
                  required: false
                  description: Number of records to skip for pagination
                  name: offset
                  in: query
                - schema:
                    type: string
                    description: Maximum number of records to return (max 100)
                    example: '50'
                  required: false
                  description: Maximum number of records to return (max 100)
                  name: limit
                  in: query
            responses:
                '200':
                    description: List of key assignments
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    data:
                                        type: array
                                        items:
                                            type: object
                                            properties:
                                                id:
                                                    type: string
                                                    format: uuid
                                                    description: Unique identifier for the assignment
                                                    example: 550e8400-e29b-41d4-a716-446655440000
                                                key_hash:
                                                    type: string
                                                    description: Hash of the assigned API key
                                                    example: c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93
                                                guardrail_id:
                                                    type: string
                                                    format: uuid
                                                    description: ID of the guardrail
                                                    example: 550e8400-e29b-41d4-a716-446655440001
                                                key_name:
                                                    type: string
                                                    description: Name of the API key
                                                    example: Production Key
                                                key_label:
                                                    type: string
                                                    description: Label of the API key
                                                    example: prod-key
                                                assigned_by:
                                                    type: string
                                                    nullable: true
                                                    description: User ID of who made the assignment
                                                    example: user_abc123
                                                created_at:
                                                    type: string
                                                    description: ISO 8601 timestamp of when the assignment was created
                                                    example: '2025-08-24T10:30:00Z'
                                            required:
                                                - id
                                                - key_hash
                                                - guardrail_id
                                                - key_name
                                                - key_label
                                                - assigned_by
                                                - created_at
                                        description: List of key assignments
                                    total_count:
                                        type: number
                                        description: Total number of key assignments for this guardrail
                                        example: 25
                                required:
                                    - data
                                    - total_count
                '401':
                    description: Unauthorized - Missing or invalid authentication
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/UnauthorizedResponse'
                '404':
                    description: Guardrail not found
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/NotFoundResponse'
                '500':
                    description: Internal Server Error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/InternalServerResponse'
        post:
            operationId: bulkAssignKeysToGuardrail
            x-speakeasy-name-override: bulkAssignKeys
            tags:
                - Guardrails
            summary: Bulk assign keys to a guardrail
            description: >-
                Assign multiple API keys to a specific guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
            parameters:
                - schema:
                    type: string
                    format: uuid
                    description: The unique identifier of the guardrail
                    example: 550e8400-e29b-41d4-a716-446655440000
                  required: true
                  description: The unique identifier of the guardrail
                  name: id
                  in: path
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                key_hashes:
                                    type: array
                                    items:
                                        type: string
                                        minLength: 1
                                    minItems: 1
                                    description: Array of API key hashes to assign to the guardrail
                                    example:
                                        - c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93
                            required:
                                - key_hashes
                required: true
            responses:
                '200':
                    description: Assignment result
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    assigned_count:
                                        type: number
                                        description: Number of keys successfully assigned
                                        example: 3
                                required:
                                    - assigned_count
                '400':
                    description: Bad Request - Invalid input
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/BadRequestResponse'
                '401':
                    description: Unauthorized - Missing or invalid authentication
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/UnauthorizedResponse'
                '404':
                    description: Guardrail not found
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/NotFoundResponse'
                '500':
                    description: Internal Server Error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/InternalServerResponse'
    /guardrails/{id}/assignments/members:
        get:
            operationId: listGuardrailMemberAssignments
            x-speakeasy-name-override: listGuardrailMemberAssignments
            tags:
                - Guardrails
            summary: List member assignments for a guardrail
            description: >-
                List all organization member assignments for a specific guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
            parameters:
                - schema:
                    type: string
                    format: uuid
                    description: The unique identifier of the guardrail
                    example: 550e8400-e29b-41d4-a716-446655440000
                  required: true
                  description: The unique identifier of the guardrail
                  name: id
                  in: path
                - schema:
                    type: string
                    description: Number of records to skip for pagination
                    example: '0'
                  required: false
                  description: Number of records to skip for pagination
                  name: offset
                  in: query
                - schema:
                    type: string
                    description: Maximum number of records to return (max 100)
                    example: '50'
                  required: false
                  description: Maximum number of records to return (max 100)
                  name: limit
                  in: query
            responses:
                '200':
                    description: List of member assignments
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    data:
                                        type: array
                                        items:
                                            type: object
                                            properties:
                                                id:
                                                    type: string
                                                    format: uuid
                                                    description: Unique identifier for the assignment
                                                    example: 550e8400-e29b-41d4-a716-446655440000
                                                user_id:
                                                    type: string
                                                    description: Clerk user ID of the assigned member
                                                    example: user_abc123
                                                organization_id:
                                                    type: string
                                                    description: Organization ID
                                                    example: org_xyz789
                                                guardrail_id:
                                                    type: string
                                                    format: uuid
                                                    description: ID of the guardrail
                                                    example: 550e8400-e29b-41d4-a716-446655440001
                                                assigned_by:
                                                    type: string
                                                    nullable: true
                                                    description: User ID of who made the assignment
                                                    example: user_abc123
                                                created_at:
                                                    type: string
                                                    description: ISO 8601 timestamp of when the assignment was created
                                                    example: '2025-08-24T10:30:00Z'
                                            required:
                                                - id
                                                - user_id
                                                - organization_id
                                                - guardrail_id
                                                - assigned_by
                                                - created_at
                                        description: List of member assignments
                                    total_count:
                                        type: number
                                        description: Total number of member assignments
                                        example: 10
                                required:
                                    - data
                                    - total_count
                '401':
                    description: Unauthorized - Missing or invalid authentication
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/UnauthorizedResponse'
                '404':
                    description: Guardrail not found
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/NotFoundResponse'
                '500':
                    description: Internal Server Error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/InternalServerResponse'
        post:
            operationId: bulkAssignMembersToGuardrail
            x-speakeasy-name-override: bulkAssignMembers
            tags:
                - Guardrails
            summary: Bulk assign members to a guardrail
            description: >-
                Assign multiple organization members to a specific guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
            parameters:
                - schema:
                    type: string
                    format: uuid
                    description: The unique identifier of the guardrail
                    example: 550e8400-e29b-41d4-a716-446655440000
                  required: true
                  description: The unique identifier of the guardrail
                  name: id
                  in: path
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                member_user_ids:
                                    type: array
                                    items:
                                        type: string
                                        minLength: 1
                                    minItems: 1
                                    description: Array of member user IDs to assign to the guardrail
                                    example:
                                        - user_abc123
                                        - user_def456
                            required:
                                - member_user_ids
                required: true
            responses:
                '200':
                    description: Assignment result
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    assigned_count:
                                        type: number
                                        description: Number of members successfully assigned
                                        example: 2
                                required:
                                    - assigned_count
                '400':
                    description: Bad Request - Invalid input
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/BadRequestResponse'
                '401':
                    description: Unauthorized - Missing or invalid authentication
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/UnauthorizedResponse'
                '404':
                    description: Guardrail not found
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/NotFoundResponse'
                '500':
                    description: Internal Server Error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/InternalServerResponse'
    /guardrails/{id}/assignments/keys/remove:
        post:
            operationId: bulkUnassignKeysFromGuardrail
            x-speakeasy-name-override: bulkUnassignKeys
            tags:
                - Guardrails
            summary: Bulk unassign keys from a guardrail
            description: >-
                Unassign multiple API keys from a specific guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
            parameters:
                - schema:
                    type: string
                    format: uuid
                    description: The unique identifier of the guardrail
                    example: 550e8400-e29b-41d4-a716-446655440000
                  required: true
                  description: The unique identifier of the guardrail
                  name: id
                  in: path
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                key_hashes:
                                    type: array
                                    items:
                                        type: string
                                        minLength: 1
                                    minItems: 1
                                    description: Array of API key hashes to unassign from the guardrail
                                    example:
                                        - c56454edb818d6b14bc0d61c46025f1450b0f4012d12304ab40aacb519fcbc93
                            required:
                                - key_hashes
                required: true
            responses:
                '200':
                    description: Unassignment result
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    unassigned_count:
                                        type: number
                                        description: Number of keys successfully unassigned
                                        example: 3
                                required:
                                    - unassigned_count
                '400':
                    description: Bad Request - Invalid input
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/BadRequestResponse'
                '401':
                    description: Unauthorized - Missing or invalid authentication
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/UnauthorizedResponse'
                '404':
                    description: Guardrail not found
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/NotFoundResponse'
                '500':
                    description: Internal Server Error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/InternalServerResponse'
    /guardrails/{id}/assignments/members/remove:
        post:
            operationId: bulkUnassignMembersFromGuardrail
            x-speakeasy-name-override: bulkUnassignMembers
            tags:
                - Guardrails
            summary: Bulk unassign members from a guardrail
            description: >-
                Unassign multiple organization members from a specific guardrail. [Provisioning key](/docs/guides/overview/auth/provisioning-api-keys) required.
            parameters:
                - schema:
                    type: string
                    format: uuid
                    description: The unique identifier of the guardrail
                    example: 550e8400-e29b-41d4-a716-446655440000
                  required: true
                  description: The unique identifier of the guardrail
                  name: id
                  in: path
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                member_user_ids:
                                    type: array
                                    items:
                                        type: string
                                        minLength: 1
                                    minItems: 1
                                    description: Array of member user IDs to unassign from the guardrail
                                    example:
                                        - user_abc123
                                        - user_def456
                            required:
                                - member_user_ids
                required: true
            responses:
                '200':
                    description: Unassignment result
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    unassigned_count:
                                        type: number
                                        description: Number of members successfully unassigned
                                        example: 2
                                required:
                                    - unassigned_count
                '400':
                    description: Bad Request - Invalid input
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/BadRequestResponse'
                '401':
                    description: Unauthorized - Missing or invalid authentication
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/UnauthorizedResponse'
                '404':
                    description: Guardrail not found
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/NotFoundResponse'
                '500':
                    description: Internal Server Error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/InternalServerResponse'
    /key:
        get:
            operationId: getCurrentKey
            x-speakeasy-name-override: getCurrentKeyMetadata
            tags:
                - API Keys
            summary: Get current API key
            description: Get information on the API key associated with the current authentication session
            responses:
                '200':
                    description: API key details
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    data:
                                        type: object
                                        properties:
                                            label:
                                                type: string
                                                description: Human-readable label for the API key
                                                example: sk-or-v1-0e6...1c96
                                            limit:
                                                type: number
                                                nullable: true
                                                description: Spending limit for the API key in USD
                                                example: 100
                                            usage:
                                                type: number
                                                description: Total OpenRouter credit usage (in USD) for the API key
                                                example: 25.5
                                            usage_daily:
                                                type: number
                                                description: OpenRouter credit usage (in USD) for the current UTC day
                                                example: 25.5
                                            usage_weekly:
                                                type: number
                                                description: OpenRouter credit usage (in USD) for the current UTC week (Monday-Sunday)
                                                example: 25.5
                                            usage_monthly:
                                                type: number
                                                description: OpenRouter credit usage (in USD) for the current UTC month
                                                example: 25.5
                                            byok_usage:
                                                type: number
                                                description: Total external BYOK usage (in USD) for the API key
                                                example: 17.38
                                            byok_usage_daily:
                                                type: number
                                                description: External BYOK usage (in USD) for the current UTC day
                                                example: 17.38
                                            byok_usage_weekly:
                                                type: number
                                                description: External BYOK usage (in USD) for the current UTC week (Monday-Sunday)
                                                example: 17.38
                                            byok_usage_monthly:
                                                type: number
                                                description: External BYOK usage (in USD) for current UTC month
                                                example: 17.38
                                            is_free_tier:
                                                type: boolean
                                                description: Whether this is a free tier API key
                                                example: false
                                            is_provisioning_key:
                                                type: boolean
                                                description: Whether this is a provisioning key
                                                example: false
                                            limit_remaining:
                                                type: number
                                                nullable: true
                                                description: Remaining spending limit in USD
                                                example: 74.5
                                            limit_reset:
                                                type: string
                                                nullable: true
                                                description: Type of limit reset for the API key
                                                example: monthly
                                            include_byok_in_limit:
                                                type: boolean
                                                description: Whether to include external BYOK usage in the credit limit
                                                example: false
                                            expires_at:
                                                type: string
                                                nullable: true
                                                format: date-time
                                                description: ISO 8601 UTC timestamp when the API key expires, or null if no expiration
                                                example: '2027-12-31T23:59:59Z'
                                            rate_limit:
                                                type: object
                                                properties:
                                                    requests:
                                                        type: number
                                                        description: Number of requests allowed per interval
                                                        example: 1000
                                                    interval:
                                                        type: string
                                                        description: Rate limit interval
                                                        example: 1h
                                                    note:
                                                        type: string
                                                        description: Note about the rate limit
                                                        example: This field is deprecated and safe to ignore.
                                                required:
                                                    - requests
                                                    - interval
                                                    - note
                                                description: Legacy rate limit information about a key. Will always return -1.
                                                deprecated: true
                                                example:
                                                    requests: 1000
                                                    interval: 1h
                                                    note: This field is deprecated and safe to ignore.
                                        required:
                                            - label
                                            - limit
                                            - usage
                                            - usage_daily
                                            - usage_weekly
                                            - usage_monthly
                                            - byok_usage
                                            - byok_usage_daily
                                            - byok_usage_weekly
                                            - byok_usage_monthly
                                            - is_free_tier
                                            - is_provisioning_key
                                            - limit_remaining
                                            - limit_reset
                                            - include_byok_in_limit
                                            - rate_limit
                                        description: Current API key information
                                        example:
                                            label: sk-or-v1-au7...890
                                            limit: 100
                                            usage: 25.5
                                            usage_daily: 25.5
                                            usage_weekly: 25.5
                                            usage_monthly: 25.5
                                            byok_usage: 17.38
                                            byok_usage_daily: 17.38
                                            byok_usage_weekly: 17.38
                                            byok_usage_monthly: 17.38
                                            is_free_tier: false
                                            is_provisioning_key: false
                                            limit_remaining: 74.5
                                            limit_reset: monthly
                                            include_byok_in_limit: false
                                            expires_at: '2027-12-31T23:59:59Z'
                                            rate_limit:
                                                requests: 1000
                                                interval: 1h
                                                note: This field is deprecated and safe to ignore.
                                required:
                                    - data
                                example:
                                    data:
                                        label: sk-or-v1-au7...890
                                        limit: 100
                                        usage: 25.5
                                        usage_daily: 25.5
                                        usage_weekly: 25.5
                                        usage_monthly: 25.5
                                        byok_usage: 17.38
                                        byok_usage_daily: 17.38
                                        byok_usage_weekly: 17.38
                                        byok_usage_monthly: 17.38
                                        is_free_tier: false
                                        is_provisioning_key: false
                                        limit_remaining: 74.5
                                        limit_reset: monthly
                                        include_byok_in_limit: false
                                        expires_at: '2027-12-31T23:59:59Z'
                                        rate_limit:
                                            requests: 1000
                                            interval: 1h
                                            note: This field is deprecated and safe to ignore.
                '401':
                    description: Unauthorized - Authentication required or invalid credentials
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/UnauthorizedResponse'
                '500':
                    description: Internal Server Error - Unexpected server error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/InternalServerResponse'
    /auth/keys:
        post:
            operationId: exchangeAuthCodeForAPIKey
            tags:
                - OAuth
            summary: Exchange authorization code for API key
            description: Exchange an authorization code from the PKCE flow for a user-controlled API key
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                code:
                                    type: string
                                    description: The authorization code received from the OAuth redirect
                                    example: auth_code_abc123def456
                                code_verifier:
                                    type: string
                                    description: The code verifier if code_challenge was used in the authorization request
                                    example: dBjftJeZ4CVP-mB92K27uhbUJU1p1r_wW1gFWFOEjXk
                                code_challenge_method:
                                    type: string
                                    nullable: true
                                    enum:
                                        - S256
                                        - plain
                                    description: The method used to generate the code challenge
                                    example: S256
                                    x-speakeasy-unknown-values: allow
                            required:
                                - code
                            example:
                                code: auth_code_abc123def456
                                code_verifier: dBjftJeZ4CVP-mB92K27uhbUJU1p1r_wW1gFWFOEjXk
                                code_challenge_method: S256
                required: true
            responses:
                '200':
                    description: Successfully exchanged code for an API key
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    key:
                                        type: string
                                        description: The API key to use for OpenRouter requests
                                        example: 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
                                    user_id:
                                        type: string
                                        nullable: true
                                        description: User ID associated with the API key
                                        example: user_2yOPcMpKoQhcd4bVgSMlELRaIah
                                required:
                                    - key
                                    - user_id
                                example:
                                    key: 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
                                    user_id: user_2yOPcMpKoQhcd4bVgSMlELRaIah
                '400':
                    description: Bad Request - Invalid request parameters or malformed input
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/BadRequestResponse'
                '403':
                    description: Forbidden - Authentication successful but insufficient permissions
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/ForbiddenResponse'
                '500':
                    description: Internal Server Error - Unexpected server error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/InternalServerResponse'
    /auth/keys/code:
        post:
            x-speakeasy-name-override: createAuthCode
            tags:
                - OAuth
            summary: Create authorization code
            description: Create an authorization code for the PKCE flow to generate a user-controlled API key
            requestBody:
                content:
                    application/json:
                        schema:
                            type: object
                            properties:
                                callback_url:
                                    type: string
                                    format: uri
                                    description: >-
                                        The callback URL to redirect to after authorization. Note, only https URLs on ports 443 and 3000 are allowed.
                                    example: https://myapp.com/auth/callback
                                code_challenge:
                                    type: string
                                    description: PKCE code challenge for enhanced security
                                    example: E9Melhoa2OwvFrEMTJguCHaoeK1t8URWbuGJSstw-cM
                                code_challenge_method:
                                    type: string
                                    enum:
                                        - S256
                                        - plain
                                    description: The method used to generate the code challenge
                                    example: S256
                                    x-speakeasy-unknown-values: allow
                                limit:
                                    type: number
                                    description: Credit limit for the API key to be created
                                    example: 100
                                expires_at:
                                    type: string
                                    nullable: true
                                    format: date-time
                                    description: Optional expiration time for the API key to be created
                            required:
                                - callback_url
                            example:
                                callback_url: https://myapp.com/auth/callback
                                code_challenge: E9Melhoa2OwvFrEMTJguCHaoeK1t8URWbuGJSstw-cM
                                code_challenge_method: S256
                                limit: 100
                required: true
            responses:
                '200':
                    description: Successfully created authorization code
                    content:
                        application/json:
                            schema:
                                type: object
                                properties:
                                    data:
                                        type: object
                                        properties:
                                            id:
                                                type: string
                                                description: The authorization code ID to use in the exchange request
                                                example: auth_code_xyz789
                                            app_id:
                                                type: number
                                                description: The application ID associated with this auth code
                                                example: 12345
                                            created_at:
                                                type: string
                                                description: ISO 8601 timestamp of when the auth code was created
                                                example: '2025-08-24T10:30:00Z'
                                        required:
                                            - id
                                            - app_id
                                            - created_at
                                        description: Auth code data
                                        example:
                                            id: auth_code_xyz789
                                            app_id: 12345
                                            created_at: '2025-08-24T10:30:00Z'
                                required:
                                    - data
                '400':
                    description: Bad Request - Invalid request parameters or malformed input
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/BadRequestResponse'
                '401':
                    description: Unauthorized - Authentication required or invalid credentials
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/UnauthorizedResponse'
                '500':
                    description: Internal Server Error - Unexpected server error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/InternalServerResponse'
            operationId: createAuthKeysCode
    /chat/completions:
        post:
            summary: Create a chat completion
            operationId: sendChatCompletionRequest
            x-speakeasy-group: chat
            x-speakeasy-name-override: send
            x-speakeasy-stream-request-field: stream
            description: >-
                Sends a request for a model response for the given chat conversation. Supports both streaming and non-streaming modes.
            tags:
                - Chat
            requestBody:
                required: true
                description: Chat completion request parameters
                content:
                    application/json:
                        schema:
                            $ref: '#/components/schemas/ChatGenerationParams'
            responses:
                '200':
                    description: Successful chat completion response
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/ChatResponse'
                                description: Chat completion response
                        text/event-stream:
                            x-speakeasy-sse-sentinel: '[DONE]'
                            schema:
                                $ref: '#/components/schemas/ChatStreamingResponseChunk'
                '400':
                    description: Bad request - invalid parameters
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/ChatError'
                '401':
                    description: Unauthorized - invalid API key
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/ChatError'
                '429':
                    description: Too many requests - rate limit exceeded
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/ChatError'
                '500':
                    description: Internal server error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/ChatError'
    /completions:
        post:
            summary: Create a completion
            x-speakeasy-group: completions
            x-speakeasy-name-override: generate
            x-speakeasy-stream-request-field: stream
            description: Creates a completion for the provided prompt and parameters. Supports both streaming and non-streaming modes.
            tags:
                - Completions
            requestBody:
                required: true
                description: Completion request parameters
                content:
                    application/json:
                        schema:
                            $ref: '#/components/schemas/CompletionCreateParams'
            responses:
                '200':
                    description: Successful completion response
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/CompletionResponse'
                                description: Completion response
                '400':
                    description: Bad request - invalid parameters
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/ChatError'
                '401':
                    description: Unauthorized - invalid API key
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/ChatError'
                '429':
                    description: Too many requests - rate limit exceeded
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/ChatError'
                '500':
                    description: Internal server error
                    content:
                        application/json:
                            schema:
                                $ref: '#/components/schemas/ChatError'
            operationId: createCompletions
servers:
    - url: https://openrouter.ai/api/v1
      description: Production server
      x-speakeasy-server-id: production
security:
    - apiKey: []
externalDocs:
    description: OpenRouter Documentation
    url: https://openrouter.ai/docs
tags:
    - name: API Keys
      description: API key management endpoints
    - name: Analytics
      description: Analytics and usage endpoints
    - name: Chat
      description: Chat completion endpoints
    - name: Completions
      description: Text completion endpoints
    - name: Credits
      description: Credit management endpoints
    - name: Embeddings
      description: Text embedding endpoints
    - name: Endpoints
      description: Endpoint information
    - name: Generations
      description: Generation history endpoints
    - name: Guardrails
      description: Guardrails endpoints
    - name: Models
      description: Model information endpoints
    - name: OAuth
      description: OAuth authentication endpoints
    - name: Providers
      description: Provider information endpoints
    - name: anthropic.messages
      description: anthropic.messages endpoints
    - name: beta.responses
      description: beta.responses endpoints
x-fern-base-path: /
x-retry-strategy:
    type: exponential
    initialDelay: 500
    maxDelay: 60000
    maxAttempts: 3
x-speakeasy-globals:
    parameters:
        - $ref: "#/components/parameters/AppIdentifier"
        - $ref: "#/components/parameters/AppDisplayName"
