> ## Documentation Index
> Fetch the complete documentation index at: https://friendli.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Container Responses

> Generate a model response from text or image inputs. Follows the OpenAI Responses API format, with support for streaming, function and custom tool calls, structured outputs, and reasoning controls.

Generate a model response from text or image inputs. Follows the OpenAI Responses API format, with support for streaming, function and custom tool calls, structured outputs, and reasoning controls.

When streaming mode is used (i.e., `stream` option is set to `true`), the response is in MIME type `text/event-stream`. Otherwise, the content type is `application/json`.
You can view the schema of the streamed sequence of chunk objects in streaming mode [here](/openapi/container/responses-chunk-object).

<Info>
  This API is currently in **Beta**.
  While we strive to provide a stable and reliable experience, this feature is still under active development.
  As a result, you may encounter unexpected behavior or limitations.
  We encourage you to provide feedback to help us improve the feature before its official release.

  * [Feature request & feedback](mailto:support@friendli.ai)
  * [Contact support](mailto:support@friendli.ai)
</Info>


## OpenAPI

````yaml https://github.com/friendliai/friendli-openapi/raw/refs/heads/main/openapi.yaml post /v1/responses
openapi: 3.1.0
info:
  title: Friendli Suite API Reference
  description: This is an OpenAPI reference of Friendli Suite API.
  termsOfService: https://friendli.ai/terms-of-service
  contact:
    name: FriendliAI Support Team
    email: support@friendli.ai
  version: 0.1.0
servers:
  - url: https://api.friendli.ai
security: []
tags:
  - name: Serverless.Chat
  - name: Serverless.ToolAssistedChat
  - name: Serverless.Responses
  - name: Serverless.Messages
  - name: Serverless.ChatRender
  - name: Serverless.Completions
  - name: Serverless.Token
  - name: Serverless.Audio
  - name: Serverless.Model
  - name: Serverless.Knowledge
  - name: Dedicated.Chat
  - name: Dedicated.Responses
  - name: Dedicated.Messages
  - name: Dedicated.ChatRender
  - name: Dedicated.Completions
  - name: Dedicated.Embeddings
  - name: Dedicated.TextClassification
  - name: Dedicated.Token
  - name: Dedicated.Image
  - name: Dedicated.Audio
  - name: Dedicated.Endpoint
  - name: Container.Chat
  - name: Container.Responses
  - name: Container.Messages
  - name: Container.Completions
  - name: Container.TextClassification
  - name: Container.Token
  - name: Container.Image
  - name: Container.Audio
  - name: Cost
  - name: Dataset
  - name: File
paths:
  /v1/responses:
    servers:
      - url: http://localhost:8000
    post:
      tags:
        - Container.Responses
      summary: Responses
      description: >-
        Generate a model response from text or image inputs. Follows the OpenAI
        Responses API format, with support for streaming, function and custom
        tool calls, structured outputs, and reasoning controls.
      operationId: containerResponses
      requestBody:
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ContainerResponsesBody'
        required: true
      responses:
        '200':
          description: Successfully generated a response.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ContainerResponsesSuccess'
              examples:
                Example:
                  value:
                    id: resp_4b71d12c86d94e719c7e3984a7bb7941
                    object: response
                    created_at: 1735722153
                    status: completed
                    output:
                      - type: message
                        id: msg_4b71d12c86d94e719c7e3984a7bb7941
                        status: completed
                        role: assistant
                        content:
                          - type: output_text
                            text: Hello there, how may I assist you today?
                    usage:
                      input_tokens: 9
                      input_tokens_details:
                        cached_tokens: 0
                      output_tokens: 11
                      output_tokens_details:
                        reasoning_tokens: 0
                      total_tokens: 20
        '422':
          description: Unprocessable Entity
components:
  schemas:
    ContainerResponsesBody:
      properties:
        input:
          anyOf:
            - type: string
            - items:
                $ref: '#/components/schemas/ResponsesInputItem'
              type: array
          title: Input
          description: Text or image inputs to the model, used to generate a response.
        instructions:
          anyOf:
            - type: string
            - type: 'null'
          title: Instructions
          description: A system (or developer) message inserted into the model's context.
        max_output_tokens:
          anyOf:
            - type: integer
            - type: 'null'
          title: Max Output Tokens
          description: >-
            An upper bound for the number of tokens that can be generated for a
            response, including visible output tokens and reasoning tokens.
        temperature:
          anyOf:
            - type: number
            - type: 'null'
          title: Temperature
          description: >-
            What sampling temperature to use, between 0 and 2. Higher values
            like 0.8 will make the output more random, while lower values like
            0.2 will make it more focused and deterministic. We generally
            recommend altering this or `top_p` but not both.
        top_p:
          anyOf:
            - type: number
            - type: 'null'
          title: Top P
          description: >-
            An alternative to sampling with temperature, called nucleus
            sampling, where the model considers the results of the tokens with
            `top_p` probability mass. So 0.1 means only the tokens comprising
            the top 10% probability mass are considered. We generally recommend
            altering this or `temperature` but not both.
        parallel_tool_calls:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Parallel Tool Calls
          description: Whether to allow the model to run tool calls in parallel.
        tools:
          anyOf:
            - items:
                $ref: '#/components/schemas/ResponsesTool'
              type: array
            - type: 'null'
          title: Tools
          description: >-
            An array of tools the model may call while generating a response.
            You can specify which tool to use by setting the `tool_choice`
            parameter.
        tool_choice:
          anyOf:
            - anyOf:
                - type: string
                  enum:
                    - none
                    - auto
                    - required
                - $ref: '#/components/schemas/ResponsesToolChoiceFunction'
                - $ref: '#/components/schemas/ResponsesToolChoiceCustom'
              description: >-
                Controls which (if any) tool is called by the model. `none`
                means the model will not call any tool and instead generates a
                message. `auto` means the model can pick between generating a
                message or calling one or more tools. `required` means the model
                must call one or more tools. An object can be used to force the
                model to call a specific function or custom tool.
            - type: 'null'
          title: Tool Choice
          description: >-
            How the model should select which tool (or tools) to use when
            generating a response. See the `tools` parameter to see how to
            specify which tools the model can call.
        text:
          anyOf:
            - $ref: '#/components/schemas/ResponsesTextConfig'
            - type: 'null'
          description: >-
            Configuration options for a text response from the model. Can be
            plain text or structured JSON data.
        reasoning:
          anyOf:
            - $ref: '#/components/schemas/ResponsesReasoningConfig'
            - type: 'null'
          description: Configuration options for reasoning models.
        stream:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Stream
          description: >-
            Whether to stream the generation result. When set to `true`, the
            response is sent as [server-sent
            events](https://developer.mozilla.org/en-US/docs/Web/API/Server-sent_events/Using_server-sent_events#event_stream_format)
            once generated.
          default: false
        model:
          anyOf:
            - type: string
            - type: 'null'
          title: Model
          description: Routes the request to a specific adapter.
          examples:
            - (adapter-route)
      additionalProperties: true
      type: object
      required:
        - input
      title: ContainerResponsesBody
      example:
        input: Hello!
    ContainerResponsesSuccess:
      properties:
        id:
          type: string
          title: Id
          description: Unique identifier for this response.
        object:
          type: string
          const: response
          title: Object
          description: The object type of this resource - always set to `response`.
        created_at:
          type: integer
          title: Created At
          description: Unix timestamp (in seconds) of when this response was created.
        error:
          anyOf:
            - $ref: '#/components/schemas/ResponsesError'
            - type: 'null'
          description: >-
            An error object returned when the model fails to generate a
            Response.
        status:
          anyOf:
            - type: string
              enum:
                - completed
                - failed
                - in_progress
                - cancelled
                - queued
                - incomplete
            - type: 'null'
          title: Status
          description: >-
            The status of the response generation. One of `completed`, `failed`,
            `in_progress`, `cancelled`, `queued`, or `incomplete`.
        output:
          items:
            $ref: '#/components/schemas/ResponsesOutputItem'
          type: array
          title: Output
          description: An array of content items generated by the model.
        usage:
          anyOf:
            - $ref: '#/components/schemas/ResponsesUsage'
            - type: 'null'
          description: >-
            Represents token usage details including input tokens, output
            tokens, a breakdown of output tokens, and the total tokens used.
        incomplete_details:
          anyOf:
            - $ref: '#/components/schemas/ResponsesIncompleteDetails'
            - type: 'null'
          description: Details about why the response is incomplete.
        model:
          anyOf:
            - type: string
            - type: 'null'
          title: Model
          description: Model ID used to generate the response.
      additionalProperties: true
      type: object
      required:
        - id
        - object
        - created_at
        - output
      title: ContainerResponsesSuccess
    ResponsesInputItem:
      anyOf:
        - $ref: '#/components/schemas/ResponsesInputMessage'
        - $ref: '#/components/schemas/ResponsesFunctionCall'
        - $ref: '#/components/schemas/ResponsesFunctionCallOutput'
        - $ref: '#/components/schemas/ResponsesCustomToolCall'
        - $ref: '#/components/schemas/ResponsesCustomToolCallOutput'
        - $ref: '#/components/schemas/ResponsesReasoningItem'
      title: ResponsesInputItem
    ResponsesTool:
      oneOf:
        - $ref: '#/components/schemas/ResponsesFunctionTool'
          title: Function
        - $ref: '#/components/schemas/ResponsesCustomTool'
          title: Custom
      discriminator:
        propertyName: type
        mapping:
          custom:
            $ref: '#/components/schemas/ResponsesCustomTool'
          function:
            $ref: '#/components/schemas/ResponsesFunctionTool'
    ResponsesToolChoiceFunction:
      properties:
        type:
          type: string
          const: function
          title: Type
          description: For function calling, the type is always `function`.
        name:
          type: string
          title: Name
          description: The name of the function to call.
      type: object
      required:
        - type
        - name
      title: ResponsesToolChoiceFunction
    ResponsesToolChoiceCustom:
      properties:
        type:
          type: string
          const: custom
          title: Type
          description: For custom tool calling, the type is always `custom`.
        name:
          type: string
          title: Name
          description: The name of the custom tool to call.
      type: object
      required:
        - type
        - name
      title: ResponsesToolChoiceCustom
    ResponsesTextConfig:
      properties:
        format:
          anyOf:
            - $ref: '#/components/schemas/ResponsesTextFormat'
            - type: 'null'
          description: >-
            An object specifying the format that the model must output.
            Configuring `{ "type": "json_schema" }` enables Structured Outputs.
            The default format is `{ "type": "text" }`.
      type: object
      title: ResponsesTextConfig
    ResponsesReasoningConfig:
      properties:
        effort:
          anyOf:
            - type: string
              enum:
                - none
                - minimal
                - low
                - medium
                - high
                - xhigh
                - max
                - ultracode
            - type: 'null'
          title: Effort
          description: >-
            Constrains effort on reasoning for reasoning models. Currently
            supported values are `none`, `minimal`, `low`, `medium`, `high`,
            `xhigh`, `max`, and `ultracode`. Reducing reasoning effort can
            result in faster responses and fewer tokens used on reasoning in a
            response.
      type: object
      title: ResponsesReasoningConfig
    ResponsesError:
      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
          title: Code
          description: The error code for the response.
        message:
          type: string
          title: Message
          description: A human-readable description of the error.
      type: object
      required:
        - code
        - message
      title: ResponsesError
    ResponsesOutputItem:
      oneOf:
        - $ref: '#/components/schemas/ResponsesOutputMessage'
          title: Message
        - $ref: '#/components/schemas/ResponsesReasoningItem'
          title: Reasoning
        - $ref: '#/components/schemas/ResponsesFunctionCall'
          title: Function Tool Call
      discriminator:
        propertyName: type
        mapping:
          function_call:
            $ref: '#/components/schemas/ResponsesFunctionCall'
          message:
            $ref: '#/components/schemas/ResponsesOutputMessage'
          reasoning:
            $ref: '#/components/schemas/ResponsesReasoningItem'
    ResponsesUsage:
      properties:
        input_tokens:
          type: integer
          title: Input Tokens
          description: The number of input tokens.
        input_tokens_details:
          $ref: '#/components/schemas/ResponsesInputTokensDetails'
          description: A detailed breakdown of the input tokens.
        output_tokens:
          type: integer
          title: Output Tokens
          description: The number of output tokens.
        output_tokens_details:
          anyOf:
            - $ref: '#/components/schemas/ResponsesOutputTokensDetails'
            - type: 'null'
          description: A detailed breakdown of the output tokens.
        total_tokens:
          type: integer
          title: Total Tokens
          description: The total number of tokens used.
      type: object
      required:
        - input_tokens
        - input_tokens_details
        - output_tokens
        - total_tokens
      title: ResponsesUsage
    ResponsesIncompleteDetails:
      properties:
        reason:
          anyOf:
            - type: string
              const: max_output_tokens
            - type: 'null'
          title: Reason
          description: The reason why the response is incomplete.
      type: object
      title: ResponsesIncompleteDetails
    ResponsesInputMessage:
      properties:
        role:
          type: string
          enum:
            - user
            - assistant
            - system
            - developer
          title: Role
          description: >-
            The role of the message input. One of `user`, `assistant`, `system`,
            or `developer`.
        content:
          anyOf:
            - type: string
            - items:
                $ref: '#/components/schemas/ResponsesContentBlock'
              type: array
          title: Content
          description: >-
            Text or image input to the model. Can also contain previous
            assistant responses.
        type:
          anyOf:
            - type: string
              const: message
            - type: 'null'
          title: Type
          description: The type of the message input. Always `message`.
      type: object
      required:
        - role
        - content
      title: ResponsesInputMessage
    ResponsesFunctionCall:
      properties:
        type:
          type: string
          const: function_call
          title: Type
          description: The type of the function tool call. Always `function_call`.
        call_id:
          type: string
          title: Call Id
          description: The unique ID of the function tool call generated by the model.
        name:
          type: string
          title: Name
          description: The name of the function to run.
        arguments:
          type: string
          title: Arguments
          description: A JSON string of the arguments to pass to the function.
        id:
          anyOf:
            - type: string
            - type: 'null'
          title: Id
          description: The unique ID of the function tool call.
        status:
          anyOf:
            - type: string
              enum:
                - in_progress
                - completed
                - incomplete
            - type: 'null'
          title: Status
          description: >-
            The status of the item. One of `in_progress`, `completed`, or
            `incomplete`.
      type: object
      required:
        - type
        - call_id
        - name
        - arguments
      title: ResponsesFunctionCall
    ResponsesFunctionCallOutput:
      properties:
        type:
          type: string
          const: function_call_output
          title: Type
          description: >-
            The type of the function tool call output. Always
            `function_call_output`.
        call_id:
          type: string
          title: Call Id
          description: The unique ID of the function tool call generated by the model.
        output:
          anyOf:
            - type: string
            - items:
                $ref: '#/components/schemas/ResponsesFunctionCallOutputContent'
              type: array
          title: Output
          description: >-
            Text or image output of the function tool call. Can be a JSON string
            of the output, or an array of content parts (text or image).
        id:
          anyOf:
            - type: string
            - type: 'null'
          title: Id
          description: The unique ID of the function tool call output.
        status:
          anyOf:
            - type: string
              enum:
                - in_progress
                - completed
                - incomplete
            - type: 'null'
          title: Status
          description: >-
            The status of the item. One of `in_progress`, `completed`, or
            `incomplete`.
      type: object
      required:
        - type
        - call_id
        - output
      title: ResponsesFunctionCallOutput
    ResponsesCustomToolCall:
      properties:
        type:
          type: string
          const: custom_tool_call
          title: Type
          description: The type of the custom tool call. Always `custom_tool_call`.
        call_id:
          type: string
          title: Call Id
          description: >-
            An identifier used to map this custom tool call to a tool call
            output.
        name:
          type: string
          title: Name
          description: The name of the custom tool being called.
        input:
          type: string
          title: Input
          description: The input for the custom tool call generated by the model.
        id:
          anyOf:
            - type: string
            - type: 'null'
          title: Id
          description: The unique ID of the custom tool call.
      type: object
      required:
        - type
        - call_id
        - name
        - input
      title: ResponsesCustomToolCall
    ResponsesCustomToolCallOutput:
      properties:
        type:
          type: string
          const: custom_tool_call_output
          title: Type
          description: >-
            The type of the custom tool call output. Always
            `custom_tool_call_output`.
        call_id:
          type: string
          title: Call Id
          description: >-
            The call ID, used to map this custom tool call output to a custom
            tool call.
        output:
          anyOf:
            - type: string
            - items:
                $ref: '#/components/schemas/ResponsesCustomToolCallOutputContent'
              type: array
          title: Output
          description: >-
            Text or image output of the custom tool call generated by your code.
            Can be a string of the output, or an array of content parts (text or
            image).
        id:
          anyOf:
            - type: string
            - type: 'null'
          title: Id
          description: The unique ID of the custom tool call output.
      type: object
      required:
        - type
        - call_id
        - output
      title: ResponsesCustomToolCallOutput
    ResponsesReasoningItem:
      properties:
        type:
          type: string
          const: reasoning
          title: Type
          description: The type of the object. Always `reasoning`.
        id:
          type: string
          title: Id
          description: The unique identifier of the reasoning content.
        summary:
          items:
            $ref: '#/components/schemas/ResponsesReasoningSummaryText'
          type: array
          title: Summary
          description: Reasoning summary content.
        content:
          anyOf:
            - items:
                $ref: '#/components/schemas/ResponsesReasoningText'
              type: array
            - type: 'null'
          title: Content
          description: Reasoning text content.
        status:
          anyOf:
            - type: string
              enum:
                - in_progress
                - completed
                - incomplete
            - type: 'null'
          title: Status
          description: >-
            The status of the item. One of `in_progress`, `completed`, or
            `incomplete`.
      type: object
      required:
        - type
        - id
        - summary
      title: ResponsesReasoningItem
    ResponsesFunctionTool:
      properties:
        type:
          type: string
          const: function
          title: Type
          description: The type of the function tool. Always `function`.
        name:
          type: string
          title: Name
          description: The name of the function to call.
        parameters:
          additionalProperties: true
          type: object
          title: Parameters
          description: A JSON schema object describing the parameters of the function.
        strict:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Strict
          description: Whether to enforce strict parameter validation. Default `true`.
        description:
          anyOf:
            - type: string
            - type: 'null'
          title: Description
          description: >-
            A description of the function. Used by the model to determine
            whether or not to call the function.
      type: object
      required:
        - type
        - name
        - parameters
      title: ResponsesFunctionTool
    ResponsesCustomTool:
      properties:
        type:
          type: string
          const: custom
          title: Type
          description: The type of the custom tool. Always `custom`.
        name:
          type: string
          title: Name
          description: The name of the custom tool, used to identify it in tool calls.
        description:
          anyOf:
            - type: string
            - type: 'null'
          title: Description
          description: >-
            Optional description of the custom tool, used to provide more
            context.
      type: object
      required:
        - type
        - name
      title: ResponsesCustomTool
    ResponsesTextFormat:
      oneOf:
        - $ref: '#/components/schemas/ResponsesTextFormatText'
          title: Text
        - $ref: '#/components/schemas/ResponsesTextFormatJsonSchema'
          title: JSON Schema
        - $ref: '#/components/schemas/ResponsesTextFormatJsonObject'
          title: JSON Object
      discriminator:
        propertyName: type
        mapping:
          json_object:
            $ref: '#/components/schemas/ResponsesTextFormatJsonObject'
          json_schema:
            $ref: '#/components/schemas/ResponsesTextFormatJsonSchema'
          text:
            $ref: '#/components/schemas/ResponsesTextFormatText'
    ResponsesOutputMessage:
      properties:
        type:
          type: string
          const: message
          title: Type
          description: The type of the output message. Always `message`.
        id:
          type: string
          title: Id
          description: The unique ID of the output message.
        role:
          type: string
          const: assistant
          title: Role
          description: The role of the output message. Always `assistant`.
        status:
          type: string
          enum:
            - in_progress
            - completed
            - incomplete
          title: Status
          description: >-
            The status of the message. One of `in_progress`, `completed`, or
            `incomplete`.
        content:
          items:
            $ref: '#/components/schemas/ResponsesOutputText'
          type: array
          title: Content
          description: The content of the output message.
      type: object
      required:
        - type
        - id
        - role
        - status
        - content
      title: ResponsesOutputMessage
    ResponsesInputTokensDetails:
      properties:
        cached_tokens:
          type: integer
          title: Cached Tokens
          description: The number of tokens that were retrieved from the cache.
      type: object
      required:
        - cached_tokens
      title: ResponsesInputTokensDetails
    ResponsesOutputTokensDetails:
      properties:
        reasoning_tokens:
          type: integer
          title: Reasoning Tokens
          description: The number of reasoning tokens.
      type: object
      required:
        - reasoning_tokens
      title: ResponsesOutputTokensDetails
    ResponsesContentBlock:
      oneOf:
        - $ref: '#/components/schemas/ResponsesInputText'
          title: Input Text
        - $ref: '#/components/schemas/ResponsesInputImage'
          title: Input Image
        - $ref: '#/components/schemas/ResponsesOutputText'
          title: Output Text
        - $ref: '#/components/schemas/ResponsesRefusal'
          title: Refusal
      discriminator:
        propertyName: type
        mapping:
          input_image:
            $ref: '#/components/schemas/ResponsesInputImage'
          input_text:
            $ref: '#/components/schemas/ResponsesInputText'
          output_text:
            $ref: '#/components/schemas/ResponsesOutputText'
          refusal:
            $ref: '#/components/schemas/ResponsesRefusal'
    ResponsesFunctionCallOutputContent:
      oneOf:
        - $ref: '#/components/schemas/ResponsesInputText'
          title: Input Text
        - $ref: '#/components/schemas/ResponsesInputImage'
          title: Input Image
      discriminator:
        propertyName: type
        mapping:
          input_image:
            $ref: '#/components/schemas/ResponsesInputImage'
          input_text:
            $ref: '#/components/schemas/ResponsesInputText'
    ResponsesCustomToolCallOutputContent:
      oneOf:
        - $ref: '#/components/schemas/ResponsesInputText'
          title: Input Text
        - $ref: '#/components/schemas/ResponsesInputImage'
          title: Input Image
      discriminator:
        propertyName: type
        mapping:
          input_image:
            $ref: '#/components/schemas/ResponsesInputImage'
          input_text:
            $ref: '#/components/schemas/ResponsesInputText'
    ResponsesReasoningSummaryText:
      properties:
        type:
          type: string
          const: summary_text
          title: Type
          description: The type of the object. Always `summary_text`.
        text:
          type: string
          title: Text
          description: A summary of the reasoning output from the model so far.
      type: object
      required:
        - type
        - text
      title: ResponsesReasoningSummaryText
    ResponsesReasoningText:
      properties:
        type:
          type: string
          const: reasoning_text
          title: Type
          description: The type of the reasoning text. Always `reasoning_text`.
        text:
          type: string
          title: Text
          description: The reasoning text from the model.
      type: object
      required:
        - type
        - text
      title: ResponsesReasoningText
    ResponsesTextFormatText:
      properties:
        type:
          type: string
          const: text
          title: Type
          description: The type of response format being defined. Always `text`.
      type: object
      required:
        - type
      title: ResponsesTextFormatText
    ResponsesTextFormatJsonSchema:
      properties:
        type:
          type: string
          const: json_schema
          title: Type
          description: The type of response format being defined. Always `json_schema`.
        name:
          type: string
          title: Name
          description: >-
            The name of the response format. Must be a-z, A-Z, 0-9, or contain
            underscores and dashes, with a maximum length of 64.
        schema:
          additionalProperties: true
          type: object
          title: Schema
          description: >-
            The schema for the response format, described as a JSON Schema
            object.
        description:
          anyOf:
            - type: string
            - type: 'null'
          title: Description
          description: >-
            A description of what the response format is for, used by the model
            to determine how to respond in the format.
        strict:
          anyOf:
            - type: boolean
            - type: 'null'
          title: Strict
          description: >-
            Whether to enable strict schema adherence when generating the
            output. If set to true, the model will always follow the exact
            schema defined in the `schema` field. Only a subset of JSON Schema
            is supported when `strict` is `true`.
      type: object
      required:
        - type
        - name
        - schema
      title: ResponsesTextFormatJsonSchema
    ResponsesTextFormatJsonObject:
      properties:
        type:
          type: string
          const: json_object
          title: Type
          description: The type of response format being defined. Always `json_object`.
      type: object
      required:
        - type
      title: ResponsesTextFormatJsonObject
    ResponsesOutputText:
      properties:
        type:
          type: string
          const: output_text
          title: Type
          description: The type of the output text. Always `output_text`.
        text:
          type: string
          title: Text
          description: The text output from the model.
      type: object
      required:
        - type
        - text
      title: ResponsesOutputText
    ResponsesInputText:
      properties:
        type:
          type: string
          const: input_text
          title: Type
          description: The type of the input item. Always `input_text`.
        text:
          type: string
          title: Text
          description: The text input to the model.
      type: object
      required:
        - type
        - text
      title: ResponsesInputText
    ResponsesInputImage:
      properties:
        type:
          type: string
          const: input_image
          title: Type
          description: The type of the input item. Always `input_image`.
        image_url:
          type: string
          title: Image Url
          description: >-
            The URL of the image to be sent to the model. A fully qualified URL
            or base64 encoded image in a data URL.
      type: object
      required:
        - type
        - image_url
      title: ResponsesInputImage
    ResponsesRefusal:
      properties:
        type:
          type: string
          const: refusal
          title: Type
          description: The type of the refusal. Always `refusal`.
        refusal:
          type: string
          title: Refusal
          description: The refusal explanation from the model.
      type: object
      required:
        - type
        - refusal
      title: ResponsesRefusal

````