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

# Get Prompt Template (Raw)

Retrieve raw prompt template data without applying input variables. This endpoint is useful for template inspection, local caching, and GitHub sync workflows.

## Behavior Notes

* `resolve_snippets=false` returns raw `@@@snippet@@@` references instead of expanded snippet content.
* `include_llm_kwargs=true` includes provider-specific LLM API arguments for local execution or caching.
* To bypass the default cache, send `Cache-Control: no-cache`.
* The `llm_kwargs` shape is provider-specific and may change as provider APIs change; use `prompt_template` for stable, provider-agnostic data.

## Related

* [Patch Prompt Template Version](/reference/templates-patch)
* [Snippets](/features/prompt-registry/snippets)
* [Prompt Editor & Versioning](/features/prompt-registry/prompt-editor-versioning)


## OpenAPI

````yaml GET /prompt-templates/{identifier}
openapi: 3.1.0
info:
  title: FastAPI
  version: 0.1.0
servers: []
security:
  - ApiKeyAuth: []
paths:
  /prompt-templates/{identifier}:
    get:
      tags:
        - prompt-templates
      summary: Get Prompt Template Raw Data
      operationId: get_prompt_template_raw
      parameters:
        - name: identifier
          in: path
          required: true
          schema:
            type: string
            title: identifier
            description: The identifier can be either the prompt name or the prompt id.
          example: support-response
        - name: version
          in: query
          required: false
          schema:
            type: integer
            exclusiveMinimum: 0
            title: Version
            description: >-
              Specific version number to retrieve. Mutually exclusive with
              `label`.
          example: 2
        - name: label
          in: query
          required: false
          schema:
            type: string
            title: Label
            description: >-
              Release label name to retrieve (e.g. 'prod', 'staging'). Mutually
              exclusive with `version`.
          example: production
        - name: resolve_snippets
          in: query
          required: false
          schema:
            type: boolean
            default: true
            title: Resolve Snippets
            description: >-
              When true (default), snippets are expanded in the returned
              prompt_template. When false, raw @@@snippet@@@ references are
              preserved.
          example: false
        - name: include_llm_kwargs
          in: query
          required: false
          schema:
            type: boolean
            default: false
            title: Include LLM Kwargs
            description: >-
              When true, includes provider-specific llm_kwargs in the response.
              Requires model metadata to be set on the template.
          example: true
      responses:
        '200':
          description: Successful Response
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/GetPromptTemplateRawResponse'
              examples:
                rawTemplate:
                  summary: Raw prompt template
                  value:
                    success: true
                    id: 17
                    prompt_name: support-response
                    version: 2
                    workspace_id: 42
                    prompt_template:
                      type: chat
                      messages:
                        - role: system
                          content:
                            - type: text
                              text: You are a helpful support assistant.
                        - role: user
                          content:
                            - type: text
                              text: '{user_message}'
                    metadata:
                      model:
                        provider: openai
                        name: gpt-4o
                        parameters:
                          temperature: 0.2
                    commit_message: Improve support tone
                    tags:
                      - support
                    created_at: '2025-03-15T10:30:00Z'
                    snippets: []
                    llm_kwargs: null
        '401':
          $ref: '#/components/responses/UnauthorizedError'
        '404':
          $ref: '#/components/responses/NotFoundError'
        '422':
          $ref: '#/components/responses/ValidationError'
components:
  schemas:
    GetPromptTemplateRawResponse:
      properties:
        success:
          type: boolean
          title: Success
        id:
          type: integer
          title: Id
          description: The prompt template ID.
        prompt_name:
          type: string
          title: Prompt Name
          description: The name of the prompt template.
        version:
          type: integer
          title: Version
          description: The version number of the prompt template.
        workspace_id:
          type: integer
          title: Workspace Id
          description: The workspace this prompt template belongs to.
        prompt_template:
          oneOf:
            - $ref: '#/components/schemas/CompletionPrompt'
            - $ref: '#/components/schemas/ChatPrompt'
          title: Prompt Template
          description: >-
            The prompt template content. When resolve_snippets is true
            (default), snippets are expanded. When false, raw @@@snippet@@@
            references are preserved.
          discriminator:
            propertyName: type
            mapping:
              chat:
                $ref: '#/components/schemas/ChatPrompt'
              completion:
                $ref: '#/components/schemas/CompletionPrompt'
        metadata:
          anyOf:
            - $ref: '#/components/schemas/Metadata'
            - type: 'null'
          description: Model configuration including provider, model name, and parameters.
        commit_message:
          anyOf:
            - type: string
            - type: 'null'
          title: Commit Message
          description: The commit message for this version.
        tags:
          type: array
          items:
            type: string
          title: Tags
          description: Tags associated with the prompt template.
        created_at:
          anyOf:
            - type: string
              format: date-time
            - type: 'null'
          title: Created At
          description: Timestamp when this version was created.
        snippets:
          type: array
          items:
            $ref: '#/components/schemas/SnippetReference'
          title: Snippets
          description: List of snippet references used in this template.
        llm_kwargs:
          anyOf:
            - type: object
            - type: 'null'
          title: LLM Kwargs
          description: >-
            Provider-specific LLM arguments. Only present when
            include_llm_kwargs=true. Structure is provider-specific and may
            change without notice.
      type: object
      required:
        - success
        - id
        - prompt_name
        - version
        - workspace_id
        - prompt_template
        - snippets
      title: GetPromptTemplateRawResponse
    CompletionPrompt:
      additionalProperties: true
      properties:
        content:
          items:
            discriminator:
              mapping:
                text:
                  $ref: '#/components/schemas/TextContent'
                thinking:
                  $ref: '#/components/schemas/ThinkingContent'
                code:
                  $ref: '#/components/schemas/CodeContent'
                image_url:
                  $ref: '#/components/schemas/ImageContent'
                media:
                  $ref: '#/components/schemas/MediaContent'
                media_variable:
                  $ref: '#/components/schemas/MediaVariable'
                output_media:
                  $ref: '#/components/schemas/OutputMediaContent'
                server_tool_use:
                  $ref: '#/components/schemas/ServerToolUseContent'
                web_search_tool_result:
                  $ref: '#/components/schemas/WebSearchToolResultContent'
                code_execution_result:
                  $ref: '#/components/schemas/CodeExecutionResultContent'
                mcp_list_tools:
                  $ref: '#/components/schemas/McpListToolsContent'
                mcp_call:
                  $ref: '#/components/schemas/McpCallContent'
                mcp_approval_request:
                  $ref: '#/components/schemas/McpApprovalRequestContent'
                mcp_approval_response:
                  $ref: '#/components/schemas/McpApprovalResponseContent'
                bash_code_execution_tool_result:
                  $ref: '#/components/schemas/BashCodeExecutionToolResultContent'
                text_editor_code_execution_tool_result:
                  $ref: >-
                    #/components/schemas/TextEditorCodeExecutionToolResultContent
                shell_call:
                  $ref: '#/components/schemas/ShellCallContent'
                shell_call_output:
                  $ref: '#/components/schemas/ShellCallOutputContent'
                apply_patch_call:
                  $ref: '#/components/schemas/ApplyPatchCallContent'
                apply_patch_call_output:
                  $ref: '#/components/schemas/ApplyPatchCallOutputContent'
              propertyName: type
            oneOf:
              - $ref: '#/components/schemas/TextContent'
              - $ref: '#/components/schemas/ThinkingContent'
              - $ref: '#/components/schemas/CodeContent'
              - $ref: '#/components/schemas/ImageContent'
              - $ref: '#/components/schemas/MediaContent'
              - $ref: '#/components/schemas/MediaVariable'
              - $ref: '#/components/schemas/OutputMediaContent'
              - $ref: '#/components/schemas/ServerToolUseContent'
              - $ref: '#/components/schemas/WebSearchToolResultContent'
              - $ref: '#/components/schemas/CodeExecutionResultContent'
              - $ref: '#/components/schemas/McpListToolsContent'
              - $ref: '#/components/schemas/McpCallContent'
              - $ref: '#/components/schemas/McpApprovalRequestContent'
              - $ref: '#/components/schemas/McpApprovalResponseContent'
              - $ref: '#/components/schemas/BashCodeExecutionToolResultContent'
              - $ref: '#/components/schemas/TextEditorCodeExecutionToolResultContent'
              - $ref: '#/components/schemas/ShellCallContent'
              - $ref: '#/components/schemas/ShellCallOutputContent'
              - $ref: '#/components/schemas/ApplyPatchCallContent'
              - $ref: '#/components/schemas/ApplyPatchCallOutputContent'
          title: Content
          type: array
        input_variables:
          default: []
          items:
            type: string
          title: Input Variables
          type: array
        template_format:
          default: f-string
          enum:
            - f-string
            - jinja2
          title: Template Format
          type: string
        type:
          const: completion
          default: completion
          enum:
            - completion
          title: Type
          type: string
      required:
        - content
      title: Completion Template
      type: object
    ChatPrompt:
      properties:
        messages:
          items:
            discriminator:
              mapping:
                assistant:
                  $ref: '#/components/schemas/AssistantMessage'
                function:
                  $ref: '#/components/schemas/FunctionMessage'
                placeholder:
                  $ref: '#/components/schemas/PlaceholderMessage'
                system:
                  $ref: '#/components/schemas/SystemMessage'
                tool:
                  $ref: '#/components/schemas/ToolMessage'
                user:
                  $ref: '#/components/schemas/UserMessage'
                developer:
                  $ref: '#/components/schemas/DeveloperMessage'
              propertyName: role
            oneOf:
              - $ref: '#/components/schemas/SystemMessage'
              - $ref: '#/components/schemas/UserMessage'
              - $ref: '#/components/schemas/AssistantMessage'
              - $ref: '#/components/schemas/FunctionMessage'
              - $ref: '#/components/schemas/ToolMessage'
              - $ref: '#/components/schemas/PlaceholderMessage'
              - $ref: '#/components/schemas/DeveloperMessage'
          title: Messages
          type: array
        functions:
          anyOf:
            - items:
                $ref: '#/components/schemas/Function'
              type: array
            - type: 'null'
          default: null
          title: Functions
        tools:
          anyOf:
            - items:
                $ref: '#/components/schemas/Tool'
              type: array
            - type: 'null'
          default: null
          title: Tools
        function_call:
          anyOf:
            - type: string
            - $ref: '#/components/schemas/MessageFunctionCall'
            - type: 'null'
          default: null
          title: Function Call
        tool_choice:
          anyOf:
            - type: string
            - $ref: '#/components/schemas/ChatToolChoice'
            - type: 'null'
          default: null
          title: Tool Choice
        type:
          const: chat
          default: chat
          enum:
            - chat
          title: Type
          type: string
        input_variables:
          default: []
          items:
            type: string
          title: Input Variables
          type: array
      required:
        - messages
      title: Chat Template
      type: object
    Metadata:
      title: Metadata
      type: object
      additionalProperties: true
      properties:
        model:
          anyOf:
            - $ref: '#/components/schemas/Model'
            - type: 'null'
          default: null
          title: Model
      description: >-
        Metadata associated with the prompt blueprint. Supports additional
        custom fields beyond the model field.
    SnippetReference:
      properties:
        prompt_name:
          type: string
          title: Prompt Name
          description: The name of the snippet prompt template.
        version:
          type: integer
          title: Version
          description: The version number of the snippet used.
        label:
          anyOf:
            - type: string
            - type: 'null'
          title: Label
          description: The release label of the snippet, if applicable.
      type: object
      required:
        - prompt_name
        - version
      title: SnippetReference
    ErrorResponse:
      type: object
      properties:
        success:
          type: boolean
          default: false
          description: Indicates that the request failed.
        message:
          type: string
          description: Human-readable error message.
        error:
          type: string
          description: Machine-readable or fallback error message.
      additionalProperties: true
      description: >-
        Standard error response. Some legacy endpoints may return either message
        or error.
    HTTPValidationError:
      properties:
        detail:
          items:
            $ref: '#/components/schemas/ValidationError'
          type: array
          title: Detail
      type: object
      title: HTTPValidationError
    TextContent:
      properties:
        type:
          const: text
          default: text
          enum:
            - text
          title: Type
          type: string
        text:
          title: Text
          type: string
        id:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Id
        annotations:
          anyOf:
            - items:
                oneOf:
                  - $ref: '#/components/schemas/WebAnnotation'
                  - $ref: '#/components/schemas/FileAnnotation'
                  - $ref: '#/components/schemas/MapAnnotation'
                  - $ref: '#/components/schemas/ContainerFileAnnotation'
              type: array
            - type: 'null'
          default: null
          title: Annotations
          description: >-
            Citations and references within the text (web citations, file
            citations, map citations, container file citations).
        thought_signature:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Thought Signature
      required:
        - text
      title: TextContent
      type: object
    ThinkingContent:
      properties:
        signature:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Signature
        type:
          const: thinking
          default: thinking
          enum:
            - thinking
          title: Type
          type: string
        thinking:
          title: Thinking
          type: string
        id:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Id
      required:
        - thinking
      title: ThinkingContent
      type: object
    CodeContent:
      description: Code content block (e.g. from code execution tools).
      properties:
        type:
          const: code
          default: code
          enum:
            - code
          title: Type
          type: string
        code:
          type: string
          title: Code
        id:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Id
        container_id:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Container Id
      required:
        - code
      title: CodeContent
      type: object
    ImageContent:
      properties:
        type:
          const: image_url
          default: image_url
          enum:
            - image_url
          title: Type
          type: string
        image_url:
          $ref: '#/components/schemas/ImageURL'
        image_variable:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Image Variable
      required:
        - image_url
      title: ImageContent
      type: object
    MediaContent:
      properties:
        type:
          const: media
          default: media
          enum:
            - media
          title: Type
          type: string
        media:
          $ref: '#/components/schemas/Media'
      required:
        - media
      title: MediaContent
      type: object
    MediaVariable:
      properties:
        type:
          const: media_variable
          default: media_variable
          enum:
            - media_variable
          title: Type
          type: string
        name:
          type: string
          title: Name
          description: Name of the media variable
      required:
        - name
      title: MediaVariable
      type: object
    OutputMediaContent:
      description: LLM-generated media output (e.g. from image generation tools).
      properties:
        type:
          const: output_media
          default: output_media
          enum:
            - output_media
          title: Type
          type: string
        id:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Id
        url:
          type: string
          title: Url
        mime_type:
          type: string
          default: image/png
          title: Mime Type
        media_type:
          enum:
            - image
            - video
            - audio
          default: image
          title: Media Type
          type: string
        provider_metadata:
          anyOf:
            - type: object
            - type: 'null'
          default: null
          title: Provider Metadata
      required:
        - url
      title: OutputMediaContent
      type: object
    ServerToolUseContent:
      description: Server-side tool use block (e.g. web search, code execution).
      properties:
        type:
          const: server_tool_use
          default: server_tool_use
          enum:
            - server_tool_use
          title: Type
          type: string
        id:
          type: string
          title: Id
        name:
          type: string
          title: Name
        input:
          type: object
          default: {}
          title: Input
      required:
        - id
        - name
      title: ServerToolUseContent
      type: object
    WebSearchToolResultContent:
      description: Results from a web search tool invocation.
      properties:
        type:
          const: web_search_tool_result
          default: web_search_tool_result
          enum:
            - web_search_tool_result
          title: Type
          type: string
        tool_use_id:
          type: string
          title: Tool Use Id
        content:
          items:
            $ref: '#/components/schemas/WebSearchResult'
          type: array
          default: []
          title: Content
      required:
        - tool_use_id
      title: WebSearchToolResultContent
      type: object
    CodeExecutionResultContent:
      description: Result from a code execution tool.
      properties:
        type:
          const: code_execution_result
          default: code_execution_result
          enum:
            - code_execution_result
          title: Type
          type: string
        output:
          type: string
          title: Output
        outcome:
          type: string
          default: OUTCOME_OK
          title: Outcome
      required:
        - output
      title: CodeExecutionResultContent
      type: object
    McpListToolsContent:
      description: MCP list tools response block.
      properties:
        type:
          const: mcp_list_tools
          default: mcp_list_tools
          enum:
            - mcp_list_tools
          title: Type
          type: string
        id:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Id
        server_label:
          type: string
          default: ''
          title: Server Label
        tools:
          items:
            type: object
          type: array
          default: []
          title: Tools
        error:
          anyOf:
            - type: string
            - type: object
            - type: 'null'
          default: null
          title: Error
      title: McpListToolsContent
      type: object
    McpCallContent:
      description: MCP tool call block.
      properties:
        type:
          const: mcp_call
          default: mcp_call
          enum:
            - mcp_call
          title: Type
          type: string
        id:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Id
        name:
          type: string
          default: ''
          title: Name
        server_label:
          type: string
          default: ''
          title: Server Label
        arguments:
          type: string
          default: ''
          title: Arguments
        output:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Output
        error:
          anyOf:
            - type: string
            - type: object
            - type: 'null'
          default: null
          title: Error
        approval_request_id:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Approval Request Id
      title: McpCallContent
      type: object
    McpApprovalRequestContent:
      description: MCP tool approval request block.
      properties:
        type:
          const: mcp_approval_request
          default: mcp_approval_request
          enum:
            - mcp_approval_request
          title: Type
          type: string
        id:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Id
        name:
          type: string
          default: ''
          title: Name
        arguments:
          type: string
          default: ''
          title: Arguments
        server_label:
          type: string
          default: ''
          title: Server Label
      title: McpApprovalRequestContent
      type: object
    McpApprovalResponseContent:
      description: MCP tool approval response block.
      properties:
        type:
          const: mcp_approval_response
          default: mcp_approval_response
          enum:
            - mcp_approval_response
          title: Type
          type: string
        approval_request_id:
          type: string
          title: Approval Request Id
        approve:
          type: boolean
          title: Approve
      required:
        - approval_request_id
        - approve
      title: McpApprovalResponseContent
      type: object
    BashCodeExecutionToolResultContent:
      description: Result from bash code execution tool.
      properties:
        type:
          const: bash_code_execution_tool_result
          default: bash_code_execution_tool_result
          enum:
            - bash_code_execution_tool_result
          title: Type
          type: string
        tool_use_id:
          type: string
          title: Tool Use Id
        content:
          type: object
          default: {}
          title: Content
      required:
        - tool_use_id
      title: BashCodeExecutionToolResultContent
      type: object
    TextEditorCodeExecutionToolResultContent:
      description: Result from text editor code execution tool.
      properties:
        type:
          const: text_editor_code_execution_tool_result
          default: text_editor_code_execution_tool_result
          enum:
            - text_editor_code_execution_tool_result
          title: Type
          type: string
        tool_use_id:
          type: string
          title: Tool Use Id
        content:
          type: object
          default: {}
          title: Content
      required:
        - tool_use_id
      title: TextEditorCodeExecutionToolResultContent
      type: object
    ShellCallContent:
      description: Shell tool call block.
      properties:
        type:
          const: shell_call
          default: shell_call
          enum:
            - shell_call
          title: Type
          type: string
        id:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Id
        call_id:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Call Id
        action:
          type: object
          default: {}
          title: Action
        status:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Status
      title: ShellCallContent
      type: object
    ShellCallOutputContent:
      description: Shell tool output block.
      properties:
        type:
          const: shell_call_output
          default: shell_call_output
          enum:
            - shell_call_output
          title: Type
          type: string
        id:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Id
        call_id:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Call Id
        output:
          items:
            type: object
          type: array
          default: []
          title: Output
        status:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Status
      title: ShellCallOutputContent
      type: object
    ApplyPatchCallContent:
      description: Apply patch tool call block.
      properties:
        type:
          const: apply_patch_call
          default: apply_patch_call
          enum:
            - apply_patch_call
          title: Type
          type: string
        id:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Id
        call_id:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Call Id
        operation:
          type: object
          default: {}
          title: Operation
        status:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Status
      title: ApplyPatchCallContent
      type: object
    ApplyPatchCallOutputContent:
      description: Apply patch tool output block.
      properties:
        type:
          const: apply_patch_call_output
          default: apply_patch_call_output
          enum:
            - apply_patch_call_output
          title: Type
          type: string
        id:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Id
        call_id:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Call Id
        output:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Output
        status:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Status
      title: ApplyPatchCallOutputContent
      type: object
    AssistantMessage:
      properties:
        input_variables:
          default: []
          items:
            type: string
          title: Input Variables
          type: array
        template_format:
          default: f-string
          enum:
            - f-string
            - jinja2
          title: Template Format
          type: string
        content:
          anyOf:
            - items:
                discriminator:
                  mapping:
                    text:
                      $ref: '#/components/schemas/TextContent'
                    thinking:
                      $ref: '#/components/schemas/ThinkingContent'
                    code:
                      $ref: '#/components/schemas/CodeContent'
                    image_url:
                      $ref: '#/components/schemas/ImageContent'
                    media:
                      $ref: '#/components/schemas/MediaContent'
                    media_variable:
                      $ref: '#/components/schemas/MediaVariable'
                    output_media:
                      $ref: '#/components/schemas/OutputMediaContent'
                    server_tool_use:
                      $ref: '#/components/schemas/ServerToolUseContent'
                    web_search_tool_result:
                      $ref: '#/components/schemas/WebSearchToolResultContent'
                    code_execution_result:
                      $ref: '#/components/schemas/CodeExecutionResultContent'
                    mcp_list_tools:
                      $ref: '#/components/schemas/McpListToolsContent'
                    mcp_call:
                      $ref: '#/components/schemas/McpCallContent'
                    mcp_approval_request:
                      $ref: '#/components/schemas/McpApprovalRequestContent'
                    mcp_approval_response:
                      $ref: '#/components/schemas/McpApprovalResponseContent'
                    bash_code_execution_tool_result:
                      $ref: '#/components/schemas/BashCodeExecutionToolResultContent'
                    text_editor_code_execution_tool_result:
                      $ref: >-
                        #/components/schemas/TextEditorCodeExecutionToolResultContent
                    shell_call:
                      $ref: '#/components/schemas/ShellCallContent'
                    shell_call_output:
                      $ref: '#/components/schemas/ShellCallOutputContent'
                    apply_patch_call:
                      $ref: '#/components/schemas/ApplyPatchCallContent'
                    apply_patch_call_output:
                      $ref: '#/components/schemas/ApplyPatchCallOutputContent'
                  propertyName: type
                oneOf:
                  - $ref: '#/components/schemas/TextContent'
                  - $ref: '#/components/schemas/ThinkingContent'
                  - $ref: '#/components/schemas/CodeContent'
                  - $ref: '#/components/schemas/ImageContent'
                  - $ref: '#/components/schemas/MediaContent'
                  - $ref: '#/components/schemas/MediaVariable'
                  - $ref: '#/components/schemas/OutputMediaContent'
                  - $ref: '#/components/schemas/ServerToolUseContent'
                  - $ref: '#/components/schemas/WebSearchToolResultContent'
                  - $ref: '#/components/schemas/CodeExecutionResultContent'
                  - $ref: '#/components/schemas/McpListToolsContent'
                  - $ref: '#/components/schemas/McpCallContent'
                  - $ref: '#/components/schemas/McpApprovalRequestContent'
                  - $ref: '#/components/schemas/McpApprovalResponseContent'
                  - $ref: '#/components/schemas/BashCodeExecutionToolResultContent'
                  - $ref: >-
                      #/components/schemas/TextEditorCodeExecutionToolResultContent
                  - $ref: '#/components/schemas/ShellCallContent'
                  - $ref: '#/components/schemas/ShellCallOutputContent'
                  - $ref: '#/components/schemas/ApplyPatchCallContent'
                  - $ref: '#/components/schemas/ApplyPatchCallOutputContent'
              type: array
            - type: 'null'
          title: Content
        role:
          const: assistant
          title: Role
          default: assistant
        function_call:
          anyOf:
            - $ref: '#/components/schemas/FunctionCall'
            - type: 'null'
          title: Function Call
          deprecated: true
          description: >-
            This field is deprecated. Please use `tool_calls` field to specify
            tool calls.
        name:
          anyOf:
            - type: string
            - type: 'null'
          title: Name
        tool_calls:
          anyOf:
            - items:
                $ref: '#/components/schemas/ToolCall'
              type: array
            - type: 'null'
          title: Tool Calls
      type: object
      title: AssistantMessage
    FunctionMessage:
      properties:
        input_variables:
          default: []
          items:
            type: string
          title: Input Variables
          type: array
        template_format:
          default: f-string
          enum:
            - f-string
            - jinja2
          title: Template Format
          type: string
        content:
          anyOf:
            - items:
                discriminator:
                  mapping:
                    text:
                      $ref: '#/components/schemas/TextContent'
                    thinking:
                      $ref: '#/components/schemas/ThinkingContent'
                    code:
                      $ref: '#/components/schemas/CodeContent'
                    image_url:
                      $ref: '#/components/schemas/ImageContent'
                    media:
                      $ref: '#/components/schemas/MediaContent'
                    media_variable:
                      $ref: '#/components/schemas/MediaVariable'
                    output_media:
                      $ref: '#/components/schemas/OutputMediaContent'
                    server_tool_use:
                      $ref: '#/components/schemas/ServerToolUseContent'
                    web_search_tool_result:
                      $ref: '#/components/schemas/WebSearchToolResultContent'
                    code_execution_result:
                      $ref: '#/components/schemas/CodeExecutionResultContent'
                    mcp_list_tools:
                      $ref: '#/components/schemas/McpListToolsContent'
                    mcp_call:
                      $ref: '#/components/schemas/McpCallContent'
                    mcp_approval_request:
                      $ref: '#/components/schemas/McpApprovalRequestContent'
                    mcp_approval_response:
                      $ref: '#/components/schemas/McpApprovalResponseContent'
                    bash_code_execution_tool_result:
                      $ref: '#/components/schemas/BashCodeExecutionToolResultContent'
                    text_editor_code_execution_tool_result:
                      $ref: >-
                        #/components/schemas/TextEditorCodeExecutionToolResultContent
                    shell_call:
                      $ref: '#/components/schemas/ShellCallContent'
                    shell_call_output:
                      $ref: '#/components/schemas/ShellCallOutputContent'
                    apply_patch_call:
                      $ref: '#/components/schemas/ApplyPatchCallContent'
                    apply_patch_call_output:
                      $ref: '#/components/schemas/ApplyPatchCallOutputContent'
                  propertyName: type
                oneOf:
                  - $ref: '#/components/schemas/TextContent'
                  - $ref: '#/components/schemas/ThinkingContent'
                  - $ref: '#/components/schemas/CodeContent'
                  - $ref: '#/components/schemas/ImageContent'
                  - $ref: '#/components/schemas/MediaContent'
                  - $ref: '#/components/schemas/MediaVariable'
                  - $ref: '#/components/schemas/OutputMediaContent'
                  - $ref: '#/components/schemas/ServerToolUseContent'
                  - $ref: '#/components/schemas/WebSearchToolResultContent'
                  - $ref: '#/components/schemas/CodeExecutionResultContent'
                  - $ref: '#/components/schemas/McpListToolsContent'
                  - $ref: '#/components/schemas/McpCallContent'
                  - $ref: '#/components/schemas/McpApprovalRequestContent'
                  - $ref: '#/components/schemas/McpApprovalResponseContent'
                  - $ref: '#/components/schemas/BashCodeExecutionToolResultContent'
                  - $ref: >-
                      #/components/schemas/TextEditorCodeExecutionToolResultContent
                  - $ref: '#/components/schemas/ShellCallContent'
                  - $ref: '#/components/schemas/ShellCallOutputContent'
                  - $ref: '#/components/schemas/ApplyPatchCallContent'
                  - $ref: '#/components/schemas/ApplyPatchCallOutputContent'
              type: array
            - type: 'null'
          title: Content
        role:
          const: function
          title: Role
          default: function
        name:
          type: string
          title: Name
      type: object
      required:
        - name
      title: FunctionMessage
    PlaceholderMessage:
      properties:
        input_variables:
          default: []
          items:
            type: string
          title: Input Variables
          type: array
        template_format:
          default: f-string
          enum:
            - f-string
            - jinja2
          title: Template Format
          type: string
        content:
          anyOf:
            - items:
                discriminator:
                  mapping:
                    text:
                      $ref: '#/components/schemas/TextContent'
                    thinking:
                      $ref: '#/components/schemas/ThinkingContent'
                    code:
                      $ref: '#/components/schemas/CodeContent'
                    image_url:
                      $ref: '#/components/schemas/ImageContent'
                    media:
                      $ref: '#/components/schemas/MediaContent'
                    media_variable:
                      $ref: '#/components/schemas/MediaVariable'
                    output_media:
                      $ref: '#/components/schemas/OutputMediaContent'
                    server_tool_use:
                      $ref: '#/components/schemas/ServerToolUseContent'
                    web_search_tool_result:
                      $ref: '#/components/schemas/WebSearchToolResultContent'
                    code_execution_result:
                      $ref: '#/components/schemas/CodeExecutionResultContent'
                    mcp_list_tools:
                      $ref: '#/components/schemas/McpListToolsContent'
                    mcp_call:
                      $ref: '#/components/schemas/McpCallContent'
                    mcp_approval_request:
                      $ref: '#/components/schemas/McpApprovalRequestContent'
                    mcp_approval_response:
                      $ref: '#/components/schemas/McpApprovalResponseContent'
                    bash_code_execution_tool_result:
                      $ref: '#/components/schemas/BashCodeExecutionToolResultContent'
                    text_editor_code_execution_tool_result:
                      $ref: >-
                        #/components/schemas/TextEditorCodeExecutionToolResultContent
                    shell_call:
                      $ref: '#/components/schemas/ShellCallContent'
                    shell_call_output:
                      $ref: '#/components/schemas/ShellCallOutputContent'
                    apply_patch_call:
                      $ref: '#/components/schemas/ApplyPatchCallContent'
                    apply_patch_call_output:
                      $ref: '#/components/schemas/ApplyPatchCallOutputContent'
                  propertyName: type
                oneOf:
                  - $ref: '#/components/schemas/TextContent'
                  - $ref: '#/components/schemas/ThinkingContent'
                  - $ref: '#/components/schemas/CodeContent'
                  - $ref: '#/components/schemas/ImageContent'
                  - $ref: '#/components/schemas/MediaContent'
                  - $ref: '#/components/schemas/MediaVariable'
                  - $ref: '#/components/schemas/OutputMediaContent'
                  - $ref: '#/components/schemas/ServerToolUseContent'
                  - $ref: '#/components/schemas/WebSearchToolResultContent'
                  - $ref: '#/components/schemas/CodeExecutionResultContent'
                  - $ref: '#/components/schemas/McpListToolsContent'
                  - $ref: '#/components/schemas/McpCallContent'
                  - $ref: '#/components/schemas/McpApprovalRequestContent'
                  - $ref: '#/components/schemas/McpApprovalResponseContent'
                  - $ref: '#/components/schemas/BashCodeExecutionToolResultContent'
                  - $ref: >-
                      #/components/schemas/TextEditorCodeExecutionToolResultContent
                  - $ref: '#/components/schemas/ShellCallContent'
                  - $ref: '#/components/schemas/ShellCallOutputContent'
                  - $ref: '#/components/schemas/ApplyPatchCallContent'
                  - $ref: '#/components/schemas/ApplyPatchCallOutputContent'
              type: array
            - type: 'null'
          default: null
          title: Content
        raw_request_display_role:
          default: ''
          title: Raw Request Display Role
          type: string
        role:
          const: placeholder
          default: placeholder
          enum:
            - placeholder
          title: Role
          type: string
        name:
          type: string
          title: Name
      required:
        - name
      title: PlaceholderMessage
      type: object
    SystemMessage:
      properties:
        input_variables:
          default: []
          items:
            type: string
          title: Input Variables
          type: array
        template_format:
          default: f-string
          enum:
            - f-string
            - jinja2
          title: Template Format
          type: string
        content:
          items:
            discriminator:
              mapping:
                text:
                  $ref: '#/components/schemas/TextContent'
                thinking:
                  $ref: '#/components/schemas/ThinkingContent'
                code:
                  $ref: '#/components/schemas/CodeContent'
                image_url:
                  $ref: '#/components/schemas/ImageContent'
                media:
                  $ref: '#/components/schemas/MediaContent'
                media_variable:
                  $ref: '#/components/schemas/MediaVariable'
                output_media:
                  $ref: '#/components/schemas/OutputMediaContent'
                server_tool_use:
                  $ref: '#/components/schemas/ServerToolUseContent'
                web_search_tool_result:
                  $ref: '#/components/schemas/WebSearchToolResultContent'
                code_execution_result:
                  $ref: '#/components/schemas/CodeExecutionResultContent'
                mcp_list_tools:
                  $ref: '#/components/schemas/McpListToolsContent'
                mcp_call:
                  $ref: '#/components/schemas/McpCallContent'
                mcp_approval_request:
                  $ref: '#/components/schemas/McpApprovalRequestContent'
                mcp_approval_response:
                  $ref: '#/components/schemas/McpApprovalResponseContent'
                bash_code_execution_tool_result:
                  $ref: '#/components/schemas/BashCodeExecutionToolResultContent'
                text_editor_code_execution_tool_result:
                  $ref: >-
                    #/components/schemas/TextEditorCodeExecutionToolResultContent
                shell_call:
                  $ref: '#/components/schemas/ShellCallContent'
                shell_call_output:
                  $ref: '#/components/schemas/ShellCallOutputContent'
                apply_patch_call:
                  $ref: '#/components/schemas/ApplyPatchCallContent'
                apply_patch_call_output:
                  $ref: '#/components/schemas/ApplyPatchCallOutputContent'
              propertyName: type
            oneOf:
              - $ref: '#/components/schemas/TextContent'
              - $ref: '#/components/schemas/ThinkingContent'
              - $ref: '#/components/schemas/CodeContent'
              - $ref: '#/components/schemas/ImageContent'
              - $ref: '#/components/schemas/MediaContent'
              - $ref: '#/components/schemas/MediaVariable'
              - $ref: '#/components/schemas/OutputMediaContent'
              - $ref: '#/components/schemas/ServerToolUseContent'
              - $ref: '#/components/schemas/WebSearchToolResultContent'
              - $ref: '#/components/schemas/CodeExecutionResultContent'
              - $ref: '#/components/schemas/McpListToolsContent'
              - $ref: '#/components/schemas/McpCallContent'
              - $ref: '#/components/schemas/McpApprovalRequestContent'
              - $ref: '#/components/schemas/McpApprovalResponseContent'
              - $ref: '#/components/schemas/BashCodeExecutionToolResultContent'
              - $ref: '#/components/schemas/TextEditorCodeExecutionToolResultContent'
              - $ref: '#/components/schemas/ShellCallContent'
              - $ref: '#/components/schemas/ShellCallOutputContent'
              - $ref: '#/components/schemas/ApplyPatchCallContent'
              - $ref: '#/components/schemas/ApplyPatchCallOutputContent'
          title: Content
          type: array
        role:
          const: system
          title: Role
          default: system
        name:
          anyOf:
            - type: string
            - type: 'null'
          title: Name
      type: object
      required:
        - content
      title: SystemMessage
    ToolMessage:
      properties:
        input_variables:
          default: []
          items:
            type: string
          title: Input Variables
          type: array
        template_format:
          default: f-string
          enum:
            - f-string
            - jinja2
          title: Template Format
          type: string
        content:
          items:
            discriminator:
              mapping:
                text:
                  $ref: '#/components/schemas/TextContent'
                thinking:
                  $ref: '#/components/schemas/ThinkingContent'
                code:
                  $ref: '#/components/schemas/CodeContent'
                image_url:
                  $ref: '#/components/schemas/ImageContent'
                media:
                  $ref: '#/components/schemas/MediaContent'
                media_variable:
                  $ref: '#/components/schemas/MediaVariable'
                output_media:
                  $ref: '#/components/schemas/OutputMediaContent'
                server_tool_use:
                  $ref: '#/components/schemas/ServerToolUseContent'
                web_search_tool_result:
                  $ref: '#/components/schemas/WebSearchToolResultContent'
                code_execution_result:
                  $ref: '#/components/schemas/CodeExecutionResultContent'
                mcp_list_tools:
                  $ref: '#/components/schemas/McpListToolsContent'
                mcp_call:
                  $ref: '#/components/schemas/McpCallContent'
                mcp_approval_request:
                  $ref: '#/components/schemas/McpApprovalRequestContent'
                mcp_approval_response:
                  $ref: '#/components/schemas/McpApprovalResponseContent'
                bash_code_execution_tool_result:
                  $ref: '#/components/schemas/BashCodeExecutionToolResultContent'
                text_editor_code_execution_tool_result:
                  $ref: >-
                    #/components/schemas/TextEditorCodeExecutionToolResultContent
                shell_call:
                  $ref: '#/components/schemas/ShellCallContent'
                shell_call_output:
                  $ref: '#/components/schemas/ShellCallOutputContent'
                apply_patch_call:
                  $ref: '#/components/schemas/ApplyPatchCallContent'
                apply_patch_call_output:
                  $ref: '#/components/schemas/ApplyPatchCallOutputContent'
              propertyName: type
            oneOf:
              - $ref: '#/components/schemas/TextContent'
              - $ref: '#/components/schemas/ThinkingContent'
              - $ref: '#/components/schemas/CodeContent'
              - $ref: '#/components/schemas/ImageContent'
              - $ref: '#/components/schemas/MediaContent'
              - $ref: '#/components/schemas/MediaVariable'
              - $ref: '#/components/schemas/OutputMediaContent'
              - $ref: '#/components/schemas/ServerToolUseContent'
              - $ref: '#/components/schemas/WebSearchToolResultContent'
              - $ref: '#/components/schemas/CodeExecutionResultContent'
              - $ref: '#/components/schemas/McpListToolsContent'
              - $ref: '#/components/schemas/McpCallContent'
              - $ref: '#/components/schemas/McpApprovalRequestContent'
              - $ref: '#/components/schemas/McpApprovalResponseContent'
              - $ref: '#/components/schemas/BashCodeExecutionToolResultContent'
              - $ref: '#/components/schemas/TextEditorCodeExecutionToolResultContent'
              - $ref: '#/components/schemas/ShellCallContent'
              - $ref: '#/components/schemas/ShellCallOutputContent'
              - $ref: '#/components/schemas/ApplyPatchCallContent'
              - $ref: '#/components/schemas/ApplyPatchCallOutputContent'
          title: Content
          type: array
        role:
          const: tool
          title: Role
          default: tool
        tool_call_id:
          type: string
          title: Tool Call Id
        name:
          anyOf:
            - type: string
            - type: 'null'
          title: Name
      type: object
      required:
        - content
        - tool_call_id
      title: ToolMessage
    UserMessage:
      properties:
        input_variables:
          default: []
          items:
            type: string
          title: Input Variables
          type: array
        template_format:
          default: f-string
          enum:
            - f-string
            - jinja2
          title: Template Format
          type: string
        content:
          items:
            discriminator:
              mapping:
                text:
                  $ref: '#/components/schemas/TextContent'
                thinking:
                  $ref: '#/components/schemas/ThinkingContent'
                code:
                  $ref: '#/components/schemas/CodeContent'
                image_url:
                  $ref: '#/components/schemas/ImageContent'
                media:
                  $ref: '#/components/schemas/MediaContent'
                media_variable:
                  $ref: '#/components/schemas/MediaVariable'
                output_media:
                  $ref: '#/components/schemas/OutputMediaContent'
                server_tool_use:
                  $ref: '#/components/schemas/ServerToolUseContent'
                web_search_tool_result:
                  $ref: '#/components/schemas/WebSearchToolResultContent'
                code_execution_result:
                  $ref: '#/components/schemas/CodeExecutionResultContent'
                mcp_list_tools:
                  $ref: '#/components/schemas/McpListToolsContent'
                mcp_call:
                  $ref: '#/components/schemas/McpCallContent'
                mcp_approval_request:
                  $ref: '#/components/schemas/McpApprovalRequestContent'
                mcp_approval_response:
                  $ref: '#/components/schemas/McpApprovalResponseContent'
                bash_code_execution_tool_result:
                  $ref: '#/components/schemas/BashCodeExecutionToolResultContent'
                text_editor_code_execution_tool_result:
                  $ref: >-
                    #/components/schemas/TextEditorCodeExecutionToolResultContent
                shell_call:
                  $ref: '#/components/schemas/ShellCallContent'
                shell_call_output:
                  $ref: '#/components/schemas/ShellCallOutputContent'
                apply_patch_call:
                  $ref: '#/components/schemas/ApplyPatchCallContent'
                apply_patch_call_output:
                  $ref: '#/components/schemas/ApplyPatchCallOutputContent'
              propertyName: type
            oneOf:
              - $ref: '#/components/schemas/TextContent'
              - $ref: '#/components/schemas/ThinkingContent'
              - $ref: '#/components/schemas/CodeContent'
              - $ref: '#/components/schemas/ImageContent'
              - $ref: '#/components/schemas/MediaContent'
              - $ref: '#/components/schemas/MediaVariable'
              - $ref: '#/components/schemas/OutputMediaContent'
              - $ref: '#/components/schemas/ServerToolUseContent'
              - $ref: '#/components/schemas/WebSearchToolResultContent'
              - $ref: '#/components/schemas/CodeExecutionResultContent'
              - $ref: '#/components/schemas/McpListToolsContent'
              - $ref: '#/components/schemas/McpCallContent'
              - $ref: '#/components/schemas/McpApprovalRequestContent'
              - $ref: '#/components/schemas/McpApprovalResponseContent'
              - $ref: '#/components/schemas/BashCodeExecutionToolResultContent'
              - $ref: '#/components/schemas/TextEditorCodeExecutionToolResultContent'
              - $ref: '#/components/schemas/ShellCallContent'
              - $ref: '#/components/schemas/ShellCallOutputContent'
              - $ref: '#/components/schemas/ApplyPatchCallContent'
              - $ref: '#/components/schemas/ApplyPatchCallOutputContent'
          title: Content
          type: array
        role:
          const: user
          title: Role
          default: user
        name:
          anyOf:
            - type: string
            - type: 'null'
          title: Name
      type: object
      required:
        - content
      title: UserMessage
    DeveloperMessage:
      properties:
        input_variables:
          default: []
          items:
            type: string
          title: Input Variables
          type: array
        template_format:
          default: f-string
          enum:
            - f-string
            - jinja2
          title: Template Format
          type: string
        content:
          items:
            discriminator:
              mapping:
                text:
                  $ref: '#/components/schemas/TextContent'
                thinking:
                  $ref: '#/components/schemas/ThinkingContent'
                code:
                  $ref: '#/components/schemas/CodeContent'
                image_url:
                  $ref: '#/components/schemas/ImageContent'
                media:
                  $ref: '#/components/schemas/MediaContent'
                media_variable:
                  $ref: '#/components/schemas/MediaVariable'
                output_media:
                  $ref: '#/components/schemas/OutputMediaContent'
                server_tool_use:
                  $ref: '#/components/schemas/ServerToolUseContent'
                web_search_tool_result:
                  $ref: '#/components/schemas/WebSearchToolResultContent'
                code_execution_result:
                  $ref: '#/components/schemas/CodeExecutionResultContent'
                mcp_list_tools:
                  $ref: '#/components/schemas/McpListToolsContent'
                mcp_call:
                  $ref: '#/components/schemas/McpCallContent'
                mcp_approval_request:
                  $ref: '#/components/schemas/McpApprovalRequestContent'
                mcp_approval_response:
                  $ref: '#/components/schemas/McpApprovalResponseContent'
                bash_code_execution_tool_result:
                  $ref: '#/components/schemas/BashCodeExecutionToolResultContent'
                text_editor_code_execution_tool_result:
                  $ref: >-
                    #/components/schemas/TextEditorCodeExecutionToolResultContent
                shell_call:
                  $ref: '#/components/schemas/ShellCallContent'
                shell_call_output:
                  $ref: '#/components/schemas/ShellCallOutputContent'
                apply_patch_call:
                  $ref: '#/components/schemas/ApplyPatchCallContent'
                apply_patch_call_output:
                  $ref: '#/components/schemas/ApplyPatchCallOutputContent'
              propertyName: type
            oneOf:
              - $ref: '#/components/schemas/TextContent'
              - $ref: '#/components/schemas/ThinkingContent'
              - $ref: '#/components/schemas/CodeContent'
              - $ref: '#/components/schemas/ImageContent'
              - $ref: '#/components/schemas/MediaContent'
              - $ref: '#/components/schemas/MediaVariable'
              - $ref: '#/components/schemas/OutputMediaContent'
              - $ref: '#/components/schemas/ServerToolUseContent'
              - $ref: '#/components/schemas/WebSearchToolResultContent'
              - $ref: '#/components/schemas/CodeExecutionResultContent'
              - $ref: '#/components/schemas/McpListToolsContent'
              - $ref: '#/components/schemas/McpCallContent'
              - $ref: '#/components/schemas/McpApprovalRequestContent'
              - $ref: '#/components/schemas/McpApprovalResponseContent'
              - $ref: '#/components/schemas/BashCodeExecutionToolResultContent'
              - $ref: '#/components/schemas/TextEditorCodeExecutionToolResultContent'
              - $ref: '#/components/schemas/ShellCallContent'
              - $ref: '#/components/schemas/ShellCallOutputContent'
              - $ref: '#/components/schemas/ApplyPatchCallContent'
              - $ref: '#/components/schemas/ApplyPatchCallOutputContent'
          title: Content
          type: array
        role:
          const: developer
          title: Role
          default: developer
        name:
          anyOf:
            - type: string
            - type: 'null'
          title: Name
      type: object
      required:
        - content
      title: DeveloperMessage
    Function:
      properties:
        name:
          type: string
          title: Name
        description:
          type: string
          title: Description
          default: ''
        strict:
          type: boolean
          title: Strict
          default: false
          description: >-
            Whether to enable strict schema validation for the function
            parameters.
        parameters:
          type: object
          title: Parameters
          default:
            type: object
            properties: {}
      type: object
      required:
        - name
      title: Function
    Tool:
      discriminator:
        propertyName: type
        mapping:
          function:
            $ref: '#/components/schemas/FunctionTool'
          web_search:
            $ref: '#/components/schemas/BuiltInTool'
          file_search:
            $ref: '#/components/schemas/BuiltInTool'
          code_interpreter:
            $ref: '#/components/schemas/BuiltInTool'
          image_generation:
            $ref: '#/components/schemas/BuiltInTool'
          google_maps:
            $ref: '#/components/schemas/BuiltInTool'
          url_context:
            $ref: '#/components/schemas/BuiltInTool'
          mcp:
            $ref: '#/components/schemas/BuiltInTool'
          bash:
            $ref: '#/components/schemas/BuiltInTool'
          shell:
            $ref: '#/components/schemas/BuiltInTool'
          apply_patch:
            $ref: '#/components/schemas/BuiltInTool'
          text_editor:
            $ref: '#/components/schemas/BuiltInTool'
      oneOf:
        - $ref: '#/components/schemas/FunctionTool'
        - $ref: '#/components/schemas/BuiltInTool'
      title: Tool
    MessageFunctionCall:
      properties:
        name:
          type: string
          title: Name
      type: object
      required:
        - name
      title: MessageFunctionCall
    ChatToolChoice:
      properties:
        type:
          const: function
          title: Type
          default: function
        function:
          $ref: '#/components/schemas/MessageFunctionCall'
      type: object
      required:
        - function
      title: ChatToolChoice
    Model:
      title: Model
      type: object
      properties:
        provider:
          title: Provider
          type: string
          description: >-
            The LLM provider (e.g. openai, anthropic, google, openai.azure,
            vertexai, mistral, cohere, amazon.bedrock, huggingface).
        model_config_display_name:
          anyOf:
            - type: string
              maxLength: 255
            - type: 'null'
          default: null
          title: Model Config Display Name
          description: Optional display name for the model configuration.
        base_model:
          anyOf:
            - type: string
              maxLength: 100
            - type: 'null'
          default: null
          title: Base Model
          description: The base model name (e.g. for fine-tuned models).
        name:
          title: Name
          type: string
          description: The model name (e.g. gpt-4o, claude-sonnet-4-20250514).
        parameters:
          title: Parameters
          default: {}
          type: object
          description: Model parameters (e.g. temperature, max_tokens, top_p).
        display_params:
          title: Display Params
          default: {}
          type: object
          description: Display-friendly parameter values shown in the UI.
        api_type:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Api Type
          description: >-
            The API type (e.g. chat.completions, responses, images). Used to
            select the correct API endpoint for the provider.
      required:
        - provider
        - name
    ValidationError:
      properties:
        loc:
          items:
            anyOf:
              - type: string
              - type: integer
          type: array
          title: Location
        msg:
          type: string
          title: Message
        type:
          type: string
          title: Error Type
      type: object
      required:
        - loc
        - msg
        - type
      title: ValidationError
    WebAnnotation:
      properties:
        type:
          const: url_citation
          title: Type
          type: string
        title:
          type: string
          title: Title
        url:
          type: string
          title: Url
        start_index:
          type: integer
          title: Start Index
        end_index:
          type: integer
          title: End Index
        cited_text:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Cited Text
        encrypted_index:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Encrypted Index
      type: object
      required:
        - type
        - title
        - url
        - start_index
        - end_index
      title: WebAnnotation
    FileAnnotation:
      properties:
        type:
          const: file_citation
          title: Type
          type: string
        index:
          type: integer
          title: Index
        file_id:
          type: string
          title: File Id
        filename:
          type: string
          title: Filename
      type: object
      required:
        - type
        - index
        - file_id
        - filename
      title: FileAnnotation
    MapAnnotation:
      properties:
        type:
          const: map_citation
          title: Type
          type: string
        title:
          type: string
          title: Title
        url:
          type: string
          title: Url
        place_id:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Place Id
        start_index:
          type: integer
          title: Start Index
        end_index:
          type: integer
          title: End Index
        cited_text:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Cited Text
      type: object
      required:
        - type
        - title
        - url
        - start_index
        - end_index
      title: MapAnnotation
    ContainerFileAnnotation:
      properties:
        type:
          const: container_file_citation
          title: Type
          type: string
        container_id:
          type: string
          title: Container Id
        start_index:
          anyOf:
            - type: integer
            - type: 'null'
          default: null
          title: Start Index
        end_index:
          anyOf:
            - type: integer
            - type: 'null'
          default: null
          title: End Index
        filename:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Filename
        file_id:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: File Id
      type: object
      required:
        - type
        - container_id
      title: ContainerFileAnnotation
    ImageURL:
      properties:
        url:
          type: string
          title: Url
        detail:
          anyOf:
            - type: string
            - type: 'null'
          title: Detail
      type: object
      required:
        - url
      title: ImageURL
    Media:
      properties:
        title:
          type: string
          title: Title
          default: media
          description: Title of the media
        type:
          anyOf:
            - type: string
            - type: 'null'
          title: Type
          default: image/jpeg
          description: MIME type of the media. For example, image/png, image/jpeg
        url:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Url
        format:
          type: string
          enum:
            - base64
            - url
            - neither
          title: Format
          default: neither
          description: Format of the media data.
      type: object
      title: Media
    WebSearchResult:
      properties:
        type:
          const: web_search_result
          default: web_search_result
          enum:
            - web_search_result
          title: Type
          type: string
        url:
          type: string
          default: ''
          title: Url
        title:
          type: string
          default: ''
          title: Title
        encrypted_content:
          type: string
          default: ''
          title: Encrypted Content
        page_age:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Page Age
      title: WebSearchResult
      type: object
    FunctionCall:
      properties:
        name:
          type: string
          title: Name
        arguments:
          type: string
          title: Arguments
      type: object
      required:
        - name
        - arguments
      title: FunctionCall
    ToolCall:
      properties:
        tool_id:
          anyOf:
            - type: string
            - type: 'null'
          default: null
          title: Tool Id
        id:
          type: string
          title: Id
        type:
          const: function
          title: Type
          default: function
        function:
          $ref: '#/components/schemas/FunctionCall'
      type: object
      required:
        - id
        - function
      title: ToolCall
    FunctionTool:
      description: A custom function tool definition.
      properties:
        type:
          const: function
          title: Type
          default: function
        function:
          $ref: '#/components/schemas/Function'
      type: object
      required:
        - function
      title: FunctionTool
    BuiltInTool:
      description: >-
        A provider-native built-in tool (e.g. web search, code interpreter,
        bash).
      properties:
        id:
          type: string
          title: Id
        name:
          type: string
          title: Name
        description:
          type: string
          title: Description
        provider:
          type: string
          title: Provider
        type:
          enum:
            - web_search
            - file_search
            - code_interpreter
            - image_generation
            - google_maps
            - url_context
            - mcp
            - bash
            - shell
            - apply_patch
            - text_editor
          title: Type
          type: string
        config:
          type: object
          title: Config
          description: >-
            Provider-specific tool configuration. Structure varies by provider
            and tool type.
      required:
        - id
        - name
        - description
        - provider
        - type
        - config
      title: BuiltInTool
      type: object
  responses:
    UnauthorizedError:
      description: Unauthorized - missing or invalid API key.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    NotFoundError:
      description: Not found - requested resource does not exist or is not accessible.
      content:
        application/json:
          schema:
            $ref: '#/components/schemas/ErrorResponse'
    ValidationError:
      description: Validation error - request parameters or body are invalid.
      content:
        application/json:
          schema:
            oneOf:
              - $ref: '#/components/schemas/HTTPValidationError'
              - $ref: '#/components/schemas/ErrorResponse'
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: X-API-KEY

````