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

# Crea una respuesta impulsada por un agente con soporte de herramientas.

> Crea una nueva respuesta de agente de IA utilizando modelos de lenguaje avanzados con capacidades de uso autónomo de herramientas.



## OpenAPI

````yaml https://apigw.mka1.com/speakeasy.json?language=es post /api/v1/llm/responses
openapi: 3.1.1
info:
  title: MKA1 API
  version: 1.1.0
  description: >-
    La API MKA1 es una API RESTful que proporciona acceso a la plataforma MKA1.
    Aprende cómo comenzar con la API y el SDK de TypeScript
    [aquí](https://mka1.apidocumentation.com/guides/getting-started).
  license:
    name: Propietario
servers:
  - url: https://apigw.mka1.com
    description: MKA1 API Gateway
  - url: /
    description: Relative server URL (configurable via SDK constructor)
security: []
tags:
  - name: Resource Authorization
    description: >-
      Gestiona permisos para recursos LLM. Crea recursos, otorga/revoca permisos
      y elimina recursos. Solo los propietarios de recursos pueden otorgar,
      revocar o eliminar permisos.
    x-displayName: Autorización de Recursos
  - name: Embeddings
    description: >-
      Puntos finales de la API de incrustación de texto para generar
      representaciones vectoriales del texto. Crea incrustaciones semánticas
      para búsqueda, agrupamiento y coincidencia de similitudes utilizando
      varios modelos de incrustación.
    x-displayName: Incrustaciones
  - name: Feedback
    description: >-
      API de retroalimentación del usuario para calificar y comentar sobre las
      completaciones de chat. Recopila calificaciones de pulgares arriba/abajo y
      comentarios detallados para mejorar las respuestas del modelo y rastrear
      la satisfacción del usuario.
    x-displayName: Retroalimentación
  - name: Images
    description: >-
      Puntos finales de la API de generación de imágenes para crear imágenes a
      partir de descripciones de texto. Genera imágenes con control sobre el
      tamaño, la calidad y el estilo.
    x-displayName: Imágenes
  - name: MCP Vault
    description: >-
      API de bóveda MCP para almacenar configuraciones de servidor MCP propiedad
      del usuario y credenciales encriptadas. Los agentes hacen referencia a los
      ID de la bóveda para que los secretos se resuelvan solo en el momento de
      la ejecución de la herramienta.
    x-displayName: Bóveda MCP
  - name: Speech
    description: >-
      Puntos finales de la API de voz para el procesamiento de audio. Convierte
      texto en habla natural (TTS) o transcribe el habla a texto (STT) en
      diferentes idiomas.
    x-displayName: Discurso
  - name: Usage
    description: >-
      API de seguimiento de uso y análisis para monitorear el consumo de tokens,
      la cantidad de solicitudes y el análisis de costos. Visualiza estadísticas
      detalladas por usuario, modelo y período de tiempo.
    x-displayName: Uso
  - name: Extract
    description: >-
      API de extracción de datos estructurados para extraer información de
      archivos. Define esquemas JSON para extraer datos estructurados de
      imágenes, PDFs y documentos. Soporta plantillas de esquemas reutilizables.
    x-displayName: Extracción
  - name: Text Classification
    description: >-
      API de clasificación de texto para categorizar texto en etiquetas
      predefinidas. Utilice modelos de IA para clasificar el contenido del texto
      para análisis de sentimientos, categorización de temas y moderación de
      contenido.
    x-displayName: Clasificación de Texto
  - name: Responses
    description: >-
      API de respuestas impulsadas por agentes para crear agentes de IA con uso
      autónomo de herramientas. Crea asistentes conversacionales que pueden
      utilizar búsqueda en la web, operaciones con archivos, generación de
      imágenes, ejecución de código, simulación de uso de computadoras e
      integraciones de MCP. Soporta procesamiento en segundo plano, transmisión
      y seguimiento de estado en tiempo real.
    x-displayName: Respuestas
  - name: Files
    description: >-
      API de gestión de archivos para cargar, almacenar y gestionar archivos con
      expiración automática e integración con S3. Carga archivos que se pueden
      usar con Asistentes, Almacenes Vectoriales y otras funciones. Los archivos
      se almacenan en S3 con metadatos rastreados en PostgreSQL. Soporta la
      limpieza automática de archivos expirados.
    x-displayName: Archivos
  - name: Vector Stores
    description: >-
      API de almacenamiento de vectores para almacenar y buscar documentos
      utilizando incrustaciones. Crea almacenes de vectores, sube archivos con
      fragmentación automática y generación de incrustaciones, y realiza
      búsquedas semánticas. Los archivos se procesan de forma asincrónica
      utilizando flujos de trabajo de Temporal para durabilidad. Soporta
      limpieza automática de almacenes caducados y LanceDB para almacenamiento
      eficiente de vectores.
    x-displayName: Almacenes de Vectores
  - name: Conversations
    description: >-
      API de gestión de conversaciones para almacenar y recuperar el estado de
      la conversación a través de llamadas a la API de respuesta. Crea
      conversaciones, añade elementos (mensajes de usuario, mensajes del
      asistente, mensajes del sistema) y mantiene el historial de la
      conversación. Soporta seguimiento de metadatos y gestión del estado del
      diálogo en múltiples turnos.
    x-displayName: Conversaciones
  - name: Guardrails
    description: >-
      API de salvaguardias de seguridad de IA para configurar la moderación de
      contenido y las políticas de seguridad. Configura listas de palabras
      prohibidas, detección de inyección de mensajes y prevención de filtración
      de mensajes del sistema. Las salvaguardias se aplican a todas las
      solicitudes de una cuenta y se pueden probar antes del despliegue.
    x-displayName: Barandillas
  - name: Models
    description: >-
      API de listado de modelos para descubrir modelos disponibles. Devuelve IDs
      de modelos, propiedad y metadatos para todos los modelos registrados en la
      puerta de enlace.
    x-displayName: Modelos
  - name: Skills
    description: >-
      API de habilidades para gestionar paquetes de instrucciones y archivos
      versionados siguiendo el estándar de Habilidades del Agente. Crea,
      versiona y descarga paquetes de habilidades reutilizables que incluyen
      manifiestos SKILL.md para entornos de agentes.
    x-displayName: Habilidades
  - name: Chat Completions
    description: >-
      **Obsoleto: Usa la API de Respuestas (`/api/v1/llm/responses`) en su
      lugar.** Puntos finales de completación de chat con soporte para
      transmisión, llamadas a herramientas y múltiples proveedores.
    x-deprecated: true
    x-displayName: Completaciones de Chat
  - name: Batches
    x-displayName: Lotes
  - name: Evals
    x-displayName: Evaluaciones
  - name: Fine-Tuning
    x-displayName: Ajuste fino
  - name: Memory Stores
    x-displayName: Almacenes de memoria
  - name: Prompts
    x-displayName: Sugerencias
  - name: API Key
    x-displayName: Clave de API
  - name: Organization
    x-displayName: Organización
  - name: Cluster Admin
    x-displayName: Administrador de clúster
  - name: Sessions
    description: Crear, inspeccionar, acceder y terminar sesiones de sandbox.
    x-displayName: Sesiones
  - name: Browser
    description: >-
      Conéctate a las sesiones del navegador a través del proxy del puerto de la
      puerta de enlace. Las sesiones del navegador exponen un punto final del
      Protocolo de DevTools de Chrome en el puerto 9222.
    x-displayName: Navegador
  - name: Execution
    description: >-
      Ejecutar comandos de shell y código dentro de una sesión de sandbox
      existente.
    x-displayName: Ejecución
  - name: Workspace
    description: >-
      Inspeccionar el manifiesto del espacio de trabajo, transferir archivos o
      archivos comprimidos, y descargar artefactos generados.
    x-displayName: Espacio de trabajo
  - name: Sandbox Usage
    description: >-
      Agrega estadísticas de uso de sandbox entre sesiones, ejecución y
      operaciones del espacio de trabajo.
    x-displayName: Uso de Sandbox
  - name: Sandbox Pricing
    description: >-
      Gestión de administrador de clúster de la tarjeta de tarifas de cómputo
      del entorno aislado utilizada para el gasto presupuestado.
    x-displayName: Precios de Sandbox
  - name: Agents
    description: Crea y gestiona definiciones de agentes reutilizables.
    x-displayName: Agentes
  - name: Agent Versions
    description: >-
      Inspeccionar el historial de configuración de un agente y revertir a una
      versión anterior.
    x-displayName: Versiones de Agente
  - name: Agent Runs
    description: >-
      Ejecutar agentes guardados e inspeccionar los resultados de ejecución
      persistidos.
    x-displayName: Ejecuta Agentes
  - name: Agent Schedules
    description: >-
      Crea y gestiona ejecuciones de agentes programadas o recurrentes
      guardadas.
    x-displayName: Horarios de Agentes
  - name: schema-4_other
    x-displayName: otro
  - name: Budgets
    x-displayName: Presupuestos
  - name: Settings
    x-displayName: Configuración
  - name: Deployments
    description: Servidores de inferencia de larga duración.
    x-displayName: Implementaciones
  - name: Fine-Tune Jobs
    description: Enviar, monitorear y cancelar trabajos de ajuste fino.
    x-displayName: Trabajos de ajuste fino
  - name: Container Images
    description: Imágenes de contenedor personalizadas para implementaciones y trabajos.
    x-displayName: Imágenes de contenedores
  - name: Serving Models
    description: Modelos registrados para implementación y ajuste fino.
    x-displayName: Sirviendo modelos
  - name: Volumes
    description: Almacenamiento persistente para pesos y puntos de control.
    x-displayName: Volúmenes
  - name: Secrets
    description: Credenciales inyectadas en tus cargas de trabajo.
    x-displayName: Secretos
  - name: Accelerators
    description: Tipos de aceleradores disponibles (GPU, NPU, TPU).
    x-displayName: Aceleradores
paths:
  /api/v1/llm/responses:
    post:
      tags:
        - Responses
      summary: Crea una respuesta impulsada por un agente con soporte de herramientas.
      description: >-
        Crea una nueva respuesta de agente de IA utilizando modelos de lenguaje
        avanzados con capacidades de uso autónomo de herramientas.
      operationId: createResponse
      parameters:
        - name: X-On-Behalf-Of
          in: header
          required: false
          schema:
            type: string
          description: Optional external end-user identifier forwarded by the API gateway.
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/ResponsesCreateRequest'
            example:
              model: meetkai:functionary-urdu-mini-pak
              input: What is the capital of France?
              stream: false
      responses:
        '200':
          description: >-
            Respuesta exitosa: devuelve eventos de transmisión (SSE) o un objeto
            de respuesta completo (JSON) dependiendo del parámetro de
            transmisión.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/ResponseObject'
              example:
                id: resp_abc123
                object: response
                created_at: 1735689600
                completed_at: 1735689601
                status: completed
                error: null
                incomplete_details: null
                background: false
                instructions: null
                max_output_tokens: null
                max_tool_calls: 30
                metadata: {}
                model: meetkai:functionary-urdu-mini-pak
                output:
                  - type: message
                    id: msg_abc123
                    role: assistant
                    content:
                      - type: output_text
                        text: The capital of France is Paris.
                        annotations: []
                    status: completed
                output_text: The capital of France is Paris.
                parallel_tool_calls: true
                previous_response_id: null
                reasoning:
                  effort: null
                  summary: null
                service_tier: auto
                store: true
                text:
                  format:
                    type: text
                  verbosity: medium
                tool_choice: auto
                tools: []
                truncation: auto
                usage:
                  input_tokens: 8
                  input_tokens_details:
                    cached_tokens: 0
                  output_tokens: 7
                  output_tokens_details:
                    reasoning_tokens: 0
                  total_tokens: 15
                user: null
            text/event-stream:
              schema:
                type: object
                properties:
                  event:
                    type: string
                    description: The event type (optional in SSE)
                  data:
                    $ref: '#/components/schemas/ResponseStreamingEvent'
                  id:
                    type: string
                    description: Optional event ID for reconnection
                  retry:
                    type: integer
                    description: Optional reconnection time in milliseconds
                required:
                  - data
                example:
                  event: response.completed
                  data:
                    type: response.completed
                    sequence_number: 1
                    response:
                      id: resp_abc123
                      object: response
                      created_at: 1735689600
                      completed_at: 1735689601
                      status: completed
                      error: null
                      incomplete_details: null
                      background: false
                      instructions: null
                      max_output_tokens: null
                      max_tool_calls: 30
                      metadata: {}
                      model: meetkai:functionary-urdu-mini-pak
                      output:
                        - type: message
                          id: msg_abc123
                          role: assistant
                          content:
                            - type: output_text
                              text: The capital of France is Paris.
                              annotations: []
                          status: completed
                      output_text: The capital of France is Paris.
                      parallel_tool_calls: true
                      previous_response_id: null
                      reasoning:
                        effort: null
                        summary: null
                      service_tier: auto
                      store: true
                      text:
                        format:
                          type: text
                        verbosity: medium
                      tool_choice: auto
                      tools: []
                      truncation: auto
                      usage:
                        input_tokens: 8
                        input_tokens_details:
                          cached_tokens: 0
                        output_tokens: 7
                        output_tokens_details:
                          reasoning_tokens: 0
                        total_tokens: 15
                      user: null
              example:
                event: response.completed
                data:
                  type: response.completed
                  sequence_number: 1
                  response:
                    id: resp_abc123
                    object: response
                    created_at: 1735689600
                    completed_at: 1735689601
                    status: completed
                    error: null
                    incomplete_details: null
                    background: false
                    instructions: null
                    max_output_tokens: null
                    max_tool_calls: 30
                    metadata: {}
                    model: meetkai:functionary-urdu-mini-pak
                    output:
                      - type: message
                        id: msg_abc123
                        role: assistant
                        content:
                          - type: output_text
                            text: The capital of France is Paris.
                            annotations: []
                        status: completed
                    output_text: The capital of France is Paris.
                    parallel_tool_calls: true
                    previous_response_id: null
                    reasoning:
                      effort: null
                      summary: null
                    service_tier: auto
                    store: true
                    text:
                      format:
                        type: text
                      verbosity: medium
                    tool_choice: auto
                    tools: []
                    truncation: auto
                    usage:
                      input_tokens: 8
                      input_tokens_details:
                        cached_tokens: 0
                      output_tokens: 7
                      output_tokens_details:
                        reasoning_tokens: 0
                      total_tokens: 15
                    user: null
      security:
        - bearerAuth: []
      x-codeSamples:
        - lang: python
          label: Python (SDK)
          source: |-
            from meetkai_mka1 import SDK


            with SDK(
                bearer_auth="<YOUR_BEARER_TOKEN_HERE>",
            ) as sdk:

                res = sdk.llm.responses.create(model="meetkai:functionary-urdu-mini-pak", input="What is the capital of France?", stream=False, store=True, background=False, parallel_tool_calls=True, max_tool_calls=64, truncation="auto", service_tier="auto")

                with res as event_stream:
                    for event in event_stream:
                        # handle event
                        print(event, flush=True)
        - lang: typescript
          label: Typescript (SDK)
          source: |-
            import { SDK } from "@meetkai/mka1";

            const sdk = new SDK({
              bearerAuth: "<YOUR_BEARER_TOKEN_HERE>",
            });

            async function run() {
              const result = await sdk.llm.responses.create({
                responsesCreateRequest: {
                  model: "meetkai:functionary-urdu-mini-pak",
                  input: "What is the capital of France?",
                },
              });

              console.log(result);
            }

            run();
        - lang: csharp
          label: CSharp (SDK)
          source: >-
            using MeetKai.MKA1;

            using MeetKai.MKA1.Types.Components;

            using MeetKai.MKA1.Types.Requests;


            var sdk = new SDK(bearerAuth: "<YOUR_BEARER_TOKEN_HERE>");


            var res = await sdk.Llm.Responses.CreateAsync(body: new
            ResponsesCreateRequest() {
                Model = "meetkai:functionary-urdu-mini-pak",
                Input = ResponsesCreateRequestInput.CreateStr(
                    "What is the capital of France?"
                ),
            });


            // Handle event stream response

            if (res.Object != null)

            {
                using (var eventStream = res.Object)
                {
                    CreateResponseResponseBody? eventData;
                    while ((eventData = await eventStream.Next()) != null)
                    {
                        // handle eventData
                    }
                }
            }

            // Handle JSON response

            else if (res.ResponseObject != null)

            {
                // handle JSON response
                var jsonResponse = res.ResponseObject;
            }
components:
  schemas:
    ResponsesCreateRequest:
      type: object
      properties:
        model:
          type: string
          description: La ID del modelo a utilizar para generar la respuesta.
        input:
          anyOf:
            - type: string
            - type: array
              minItems: 1
              items:
                $ref: '#/components/schemas/Item'
          description: >-
            La entrada del usuario que se enviará al agente. Puede ser una
            cadena de texto simple para consultas básicas, o un array de objetos
            de ítems que contienen texto, imágenes, archivos o audio para
            interacciones multimodales. Este es el contenido principal al que el
            agente responderá.
        instructions:
          type: string
          description: >-
            Instrucciones del sistema o del desarrollador insertadas en el
            contexto del modelo antes de la entrada del usuario. Utiliza esto
            para guiar el comportamiento del agente, establecer la personalidad,
            definir limitaciones o proporcionar conocimientos específicos del
            dominio. Actúa como un mensaje del sistema persistente para esta
            respuesta.
        conversation:
          anyOf:
            - anyOf:
                - type: string
                - $ref: '#/components/schemas/Conversation'
            - type: 'null'
          description: >-
            La conversación a la que pertenece esta respuesta. Puede ser una
            cadena de identificación de conversación o un objeto de
            conversación. Se utiliza para mantener el contexto y la historia a
            través de múltiples interacciones con agentes. Opcional: omitir para
            interacciones únicas.
        previous_response_id:
          type: string
          description: >-
            El ID único de una respuesta anterior para continuar. Se utiliza
            para conversaciones de múltiples turnos para mantener el contexto y
            el historial. El agente tendrá acceso a todas las interacciones
            anteriores en la cadena.
        prompt:
          $ref: '#/components/schemas/PromptTemplate'
          description: >-
            Referencia a una plantilla de aviso para usar en esta respuesta,
            junto con variables a sustituir. Permite utilizar plantillas de
            aviso predefinidas y versionadas en lugar de instrucciones en línea.
            El sistema de plantillas soporta la interpolación de variables.
        include:
          type: array
          items:
            enum:
              - web_search_call.action.sources
              - code_interpreter_call.outputs
              - computer_call_output.output.image_url
              - file_search_call.results
              - message.input_image.image_url
              - message.output_text.logprobs
              - reasoning.encrypted_content
            type: string
          description: >-
            Campos adicionales para incluir en la salida de respuesta. Permite
            solicitar datos anidados específicos como fuentes de búsqueda en la
            web, salidas del intérprete de código, capturas de pantalla de
            computadora, resultados de búsqueda de archivos, imágenes de
            entrada, logprobs de salida o contenido de razonamiento. Estos
            campos pueden tener implicaciones en el rendimiento o en el costo.
        text:
          $ref: '#/components/schemas/TextConfiguration'
          description: >-
            Opciones de configuración para la salida de texto del modelo.
            Incluye formato de respuesta (texto, objeto JSON, esquema JSON) y
            nivel de verbosidad (bajo, medio, alto). Utiliza esto para controlar
            la estructura de salida y el nivel de detalle.
        stream:
          type: boolean
          default: false
          description: >-
            Si se establece en verdadero, los datos de la respuesta se
            transmitirán utilizando Eventos Enviados por el Servidor (SSE) para
            actualizaciones en tiempo real a medida que el agente genera la
            respuesta. Cuando es falso, la respuesta se devuelve como un único
            objeto completo. Por defecto es falso.
        stream_options:
          anyOf:
            - type: object
              properties:
                include_usage:
                  type: boolean
                  description: >-
                    Si incluir estadísticas de uso de tokens en el flujo. Útil
                    para monitorear costos en tiempo real.
                include_obfuscation:
                  type: boolean
                  description: >-
                    Si habilitar la ofuscación de streaming por razones de
                    privacidad y seguridad durante la transmisión.
            - type: 'null'
          description: >-
            Opciones adicionales para configurar el comportamiento de
            transmisión cuando el streaming está habilitado.
        store:
          type: boolean
          default: true
          description: >-
            Si almacenar la respuesta generada para su recuperación posterior.
            Cuando es verdadero, la respuesta se guarda y se puede recuperar a
            través de GET /responses/{id}. Cuando es falso, la respuesta no se
            persiste después de la generación. Por defecto es verdadero.
        background:
          type: boolean
          default: false
          description: >-
            Ya sea para ejecutar la respuesta del modelo en segundo plano de
            forma asíncrona. Cuando es verdadero, la solicitud devuelve
            inmediatamente un ID de respuesta mientras el agente procesa en
            segundo plano. Utilice GET /responses/{id} para recuperar resultados
            más tarde. Cuando es falso, la solicitud se bloquea hasta
            completarse. Por defecto es falso.
        webhook_url:
          type: string
          format: uri
          description: >-
            URL para recibir notificaciones de webhook sobre cambios de estado
            (en cola, en progreso, completado, fallido, incompleto). Solo es
            válido cuando background=true. Si se proporciona sin
            background=true, la solicitud será rechazada.
        webhook_secret:
          type: string
          minLength: 16
          maxLength: 256
          description: >-
            Secreto opcional para la firma HMAC-SHA256 de las cargas útiles de
            webhook. Cuando se proporciona, los webhooks incluyen un encabezado
            X-Webhook-Signature con la firma. Requiere que se establezca
            webhook_url.
        tools:
          type: array
          items:
            anyOf:
              - $ref: '#/components/schemas/FunctionToolDefinition'
              - $ref: '#/components/schemas/FileSearchToolDefinition'
              - $ref: '#/components/schemas/ComputerUseToolDefinition'
              - $ref: '#/components/schemas/WebSearchToolDefinition'
              - $ref: '#/components/schemas/MCPToolDefinition'
              - $ref: '#/components/schemas/CodeInterpreterToolDefinition'
              - $ref: '#/components/schemas/ImageGenerationToolDefinition'
              - $ref: '#/components/schemas/LocalShellToolDefinition'
              - $ref: '#/components/schemas/ShellToolDefinition'
              - $ref: '#/components/schemas/CustomToolDefinition'
              - $ref: '#/components/schemas/WebSearchPreviewToolDefinition'
              - $ref: '#/components/schemas/HostedToolDefinition'
              - $ref: '#/components/schemas/SleepToolDefinition'
              - $ref: '#/components/schemas/HistoryToolDefinition'
          description: >-
            Array de definiciones de herramientas que el agente puede utilizar
            durante la generación de respuestas. Soporta herramientas integradas
            (búsqueda web, búsqueda de archivos, intérprete de código, uso de
            computadora, generación de imágenes) y herramientas personalizadas
            (funciones, MCP, shell local). Cada definición de herramienta
            especifica su tipo y configuración.
        tool_choice:
          $ref: '#/components/schemas/ToolChoice'
          description: >-
            Controles cómo el agente selecciona qué herramientas usar. Puede ser
            'ninguna' (sin herramientas), 'automático' (el modelo decide),
            'requerido' (debe usar herramientas) o un objeto de selección de
            herramientas específico. Utilice esto para forzar o evitar el uso de
            herramientas.
        parallel_tool_calls:
          type: boolean
          default: true
          description: >-
            Si permitir que el agente ejecute múltiples llamadas a herramientas
            en paralelo. Cuando es verdadero, el agente puede hacer llamadas a
            herramientas de manera concurrente para mayor eficiencia. Cuando es
            falso, las herramientas se llaman de manera secuencial. Por defecto,
            es verdadero para un mejor rendimiento.
        max_tool_calls:
          type: integer
          minimum: 1
          maximum: 300
          default: 64
          description: >-
            El número total máximo de llamadas a herramientas que el agente
            puede hacer durante esta respuesta. Útil para controlar el tiempo de
            ejecución y prevenir bucles infinitos. Se aplica a todas las
            herramientas integradas como búsqueda web, búsqueda de archivos,
            intérprete de código, etc. Debe ser un entero positivo entre 1 y
            300. Por defecto es 64.
        reasoning:
          $ref: '#/components/schemas/ReasoningConfiguration'
          description: >-
            Opciones de configuración para modelos de razonamiento. Controla el
            nivel de esfuerzo de razonamiento (mínimo, bajo, medio, alto) y la
            verbosidad del resumen (automático, conciso, detallado). Solo
            aplicable a modelos específicos capaces de razonar.
        auto_routing:
          type: boolean
          description: >-
            Cuando es verdadero, el gateway inspecciona la complejidad de la
            solicitud y enruta automáticamente entre variantes cuantizadas, MoE
            y densas dentro de la familia de modelos solicitada.
        auto_routing_debug:
          type: boolean
          description: >-
            Extensión de puerta de enlace. Cuando es verdadero junto con
            auto_routing, los metadatos de respuesta incluyen una decisión de
            enrutamiento serializada compacta para que puedas inspeccionar el
            nivel objetivo inferido incluso cuando no hay una variante
            compatible disponible.
        max_output_tokens:
          type: integer
          minimum: 1
          maximum: 9007199254740991
          description: >-
            El número máximo de tokens que el modelo puede generar en su salida.
            Establece un límite superior para controlar costos y la longitud de
            la respuesta. La salida real puede ser más corta si el modelo
            termina de manera natural. Debe ser un número entero positivo.
        temperature:
          type: number
          minimum: 0
          maximum: 2
          description: >-
            Controla la aleatoriedad en la salida del modelo. Valores más altos
            (por ejemplo, 1.5-2.0) hacen que la salida sea más aleatoria y
            creativa, mientras que valores más bajos (por ejemplo, 0.0-0.5) la
            hacen más enfocada y determinista. Debe estar entre 0 y 2.
        top_p:
          type: number
          minimum: 0
          maximum: 1
          description: >-
            Parámetro de muestreo de núcleo. El modelo considera solo los tokens
            con una probabilidad acumulada top_p. Valores más bajos (por
            ejemplo, 0.1) hacen que la salida sea más enfocada, valores más
            altos (por ejemplo, 0.9) permiten más diversidad. Debe estar entre 0
            y 1. Alternativa a la temperatura.
        stop:
          anyOf:
            - type: string
            - type: array
              minItems: 1
              items:
                type: string
          description: >-
            Extensión de Gateway. Secuencia(s) de parada donde los proveedores
            ascendentes compatibles deben detener la generación. Las ejecuciones
            de evaluación también imponen esto como una protección de
            post-procesamiento.
        top_k:
          type: integer
          minimum: 0
          maximum: 9007199254740991
          description: >-
            Extensión de puerta de enlace. Parámetro de muestreo top-k
            específico del proveedor.
        min_p:
          type: number
          minimum: 0
          maximum: 1
          description: >-
            Extensión de puerta de enlace. Parámetro de muestreo min-p
            específico del proveedor.
        repetition_penalty:
          type: number
          minimum: 0
          description: >-
            Extensión de puerta de enlace. Penalización de repetición específica
            del proveedor.
        do_sample:
          type: boolean
          description: >-
            Extensión de puerta de enlace. Alternar de muestreo específico del
            proveedor.
        extra_body:
          type: object
          propertyNames:
            type: string
          additionalProperties: {}
          description: >-
            Extensión de puerta de enlace. Passthrough de cuerpo de solicitud
            específico del proveedor controlado.
        chat_template_kwargs:
          type: object
          propertyNames:
            type: string
          additionalProperties: {}
          description: >-
            Extensión de puerta de enlace. Opciones de plantilla de chat
            específicas del proveedor, como enable_thinking=false.
        prefill_think:
          anyOf:
            - type: boolean
            - type: string
          description: >-
            Extensión de Gateway. Alternar la preconfiguración específica del
            proveedor o el texto de preconfiguración.
        use_cache:
          type: boolean
          description: >-
            Extensión de puerta de enlace. Interruptor de caché específico del
            proveedor donde sea compatible.
        top_logprobs:
          type: integer
          minimum: 0
          maximum: 20
          description: >-
            El número de tokens más probables para devolver en cada posición
            junto con sus probabilidades logarítmicas. Debe estar entre 0 y 20.
            Útil para comprender la confianza del modelo y explorar salidas
            alternativas.
        truncation:
          enum:
            - auto
            - disabled
          type: string
          default: auto
          description: >-
            La estrategia de truncamiento para manejar entradas que exceden la
            ventana de contexto del modelo. 'auto' trunca automáticamente los
            mensajes antiguos para ajustarse, 'desactivado' devuelve un error si
            el contexto es demasiado largo. Por defecto, es 'auto'.
        context_management:
          $ref: '#/components/schemas/ContextManagement'
          description: >-
            Estrategias de gestión del contexto para aplicar durante la
            generación de respuestas. Soporta la compresión, que resume el
            historial de conversación anterior cuando el contexto excede un
            umbral de tokens.
        presence_penalty:
          type: number
          minimum: -2
          maximum: 2
          description: >-
            Penaliza los nuevos tokens en función de si aparecen en el texto
            hasta ahora. Valores más altos aumentan la probabilidad de que el
            modelo hable sobre nuevos temas.
        frequency_penalty:
          type: number
          minimum: -2
          maximum: 2
          description: >-
            Penaliza los nuevos tokens según su frecuencia en el texto hasta
            ahora. Valores más altos disminuyen la probabilidad del modelo de
            repetir la misma línea al pie de la letra.
        service_tier:
          enum:
            - auto
            - default
            - flex
            - priority
          type: string
          default: auto
          description: >-
            Especifica el nivel de procesamiento para atender la solicitud.
            'auto' permite que el sistema elija, 'default' utiliza procesamiento
            estándar, 'flex' permite programación flexible para menor prioridad,
            'priority' proporciona un procesamiento más rápido. Por defecto es
            'auto'.
        prompt_cache_key:
          type: string
          description: >-
            Un identificador estable utilizado para almacenar en caché prompts y
            contexto. Ayuda a reducir costos y latencia al reutilizar el
            procesamiento de prompts almacenados en caché. Útil para prompts que
            se utilizan repetidamente con variaciones menores.
        safety_identifier:
          type: string
          description: >-
            Un identificador estable utilizado para ayudar a detectar y prevenir
            violaciones de políticas en múltiples solicitudes. Ayuda al sistema
            a identificar patrones de abuso o mal uso. Útil para el seguimiento
            de cumplimiento y la monitorización de la seguridad.
        metadata:
          type: object
          propertyNames:
            type: string
            maxLength: 64
          additionalProperties:
            type: string
            maxLength: 512
          description: >-
            Metadatos personalizados para adjuntar a esta respuesta como pares
            clave-valor. Las claves deben ser cadenas de hasta 64 caracteres,
            los valores deben ser cadenas de hasta 512 caracteres. Máximo 16
            pares. Útil para seguimiento, categorización o para pasar
            identificadores personalizados a través de su sistema.
        modalities:
          type: array
          items:
            enum:
              - text
              - audio
            type: string
          description: >-
            Tipos de salida que el modelo debe generar. Por defecto es ['text'].
            Incluye 'audio' para recibir una representación de audio de la
            respuesta de texto a través de TTS.
        audio:
          type: object
          properties:
            voice:
              type: string
              default: alloy
              description: >-
                La voz a utilizar para la síntesis de salida de audio. Por
                defecto es 'alloy'.
            format:
              enum:
                - wav
                - mp3
                - flac
                - opus
                - pcm16
              type: string
              default: wav
              description: El formato de audio para la salida. Por defecto es 'wav'.
          description: >-
            Configuración de salida de audio. Opcional cuando las modalidades
            incluyen 'audio'; se aplican los valores predeterminados si se
            omite.
        user:
          type: string
          description: >-
            OBSOLETO: Un identificador único para el usuario final. Utilice
            safety_identifier para la detección de violaciones de políticas y
            prompt_cache_key para el almacenamiento en caché en su lugar. Este
            campo se mantiene para compatibilidad hacia atrás.
      required:
        - model
      description: >-
        Esquema de solicitud para crear una nueva respuesta de agente. Configura
        el modelo del agente, la entrada, las herramientas, el formato de salida
        y el comportamiento. Soporta tanto la ejecución en primer plano
        (bloqueante) como en segundo plano (asíncrona) con transmisión opcional.
      examples:
        - model: meetkai:functionary-urdu-mini-pak
          input: What is the capital of France?
          stream: false
    ResponseObject:
      type: object
      properties:
        id:
          type: string
        object:
          const: response
        created_at:
          type: number
        completed_at:
          anyOf:
            - type: number
            - type: 'null'
        status:
          $ref: '#/components/schemas/ResponseStatus'
        error:
          anyOf:
            - $ref: '#/components/schemas/Error'
            - type: 'null'
        incomplete_details:
          anyOf:
            - $ref: '#/components/schemas/IncompleteDetails'
            - type: 'null'
        background:
          type: boolean
        conversation:
          $ref: '#/components/schemas/Conversation'
        instructions:
          anyOf:
            - anyOf:
                - type: string
                - type: array
                  items:
                    $ref: '#/components/schemas/Item'
            - type: 'null'
        max_output_tokens:
          anyOf:
            - type: integer
              minimum: -9007199254740991
              maximum: 9007199254740991
            - type: 'null'
          examples:
            - null
        max_tool_calls:
          anyOf:
            - type: integer
              minimum: -9007199254740991
              maximum: 9007199254740991
            - type: 'null'
        metadata:
          type: object
          propertyNames:
            type: string
            maxLength: 64
          additionalProperties:
            type: string
            maxLength: 512
        model:
          type: string
        output:
          type: array
          items:
            $ref: '#/components/schemas/Item'
        output_text:
          type: string
        parallel_tool_calls:
          type: boolean
        previous_response_id:
          anyOf:
            - type: string
            - type: 'null'
        prompt:
          $ref: '#/components/schemas/PromptTemplate'
        prompt_cache_key:
          type: string
        reasoning:
          $ref: '#/components/schemas/ReasoningConfiguration'
        safety_identifier:
          type: string
        service_tier:
          enum:
            - auto
            - default
            - flex
            - priority
          type: string
        store:
          type: boolean
        temperature:
          type: number
          minimum: 0
          maximum: 2
        presence_penalty:
          type: number
        frequency_penalty:
          type: number
        text:
          $ref: '#/components/schemas/TextConfiguration'
        tool_choice:
          $ref: '#/components/schemas/ToolChoice'
        tools:
          type: array
          items:
            anyOf:
              - anyOf:
                  - $ref: '#/components/schemas/FunctionToolDefinition'
                  - type: object
                    properties:
                      type:
                        const: file_search
                      vector_store_ids:
                        type: array
                        items:
                          type: string
                      filters:
                        anyOf:
                          - $ref: '#/components/schemas/ComparisonFilter'
                          - type: object
                            properties:
                              type:
                                enum:
                                  - and
                                  - or
                                type: string
                              filters:
                                type: array
                                items:
                                  anyOf:
                                    - $ref: '#/components/schemas/ComparisonFilter'
                                    - type: object
                                      properties:
                                        type:
                                          enum:
                                            - and
                                            - or
                                          type: string
                                        filters:
                                          type: array
                                          items:
                                            anyOf:
                                              - anyOf:
                                                  - {}
                                                  - {}
                                              - type: 'null'
                                      required:
                                        - type
                                        - filters
                            required:
                              - type
                              - filters
                      max_num_results:
                        type: integer
                        minimum: 1
                        maximum: 50
                      ranking_options:
                        $ref: '#/components/schemas/RankingOptions'
                    required:
                      - type
                      - vector_store_ids
                    title: File search tool definition
                    description: >-
                      Definición de herramienta de búsqueda de archivos:
                      Configura la búsqueda semántica sobre uno o más almacenes
                      de vectores, con filtros opcionales, opciones de
                      clasificación y límites de resultados.
                  - $ref: '#/components/schemas/ComputerUseToolDefinition'
                  - $ref: '#/components/schemas/WebSearchToolDefinition'
                  - title: MCP tool definition
                    description: >-
                      Definición de herramienta MCP: Se conecta a un servidor
                      MCP y expone sus herramientas, con referencias opcionales
                      a bóvedas, autenticación, encabezados, listas permitidas,
                      ID de conector y política de aprobación.
                  - $ref: '#/components/schemas/CodeInterpreterToolDefinition'
                  - $ref: '#/components/schemas/ImageGenerationToolDefinition'
                  - $ref: '#/components/schemas/LocalShellToolDefinition'
                  - $ref: '#/components/schemas/ShellToolDefinition'
                  - $ref: '#/components/schemas/CustomToolDefinition'
                  - $ref: '#/components/schemas/WebSearchPreviewToolDefinition'
                  - $ref: '#/components/schemas/HostedToolDefinition'
                  - $ref: '#/components/schemas/SleepToolDefinition'
                  - $ref: '#/components/schemas/HistoryToolDefinition'
              - type: 'null'
        top_logprobs:
          type: integer
          minimum: 0
          maximum: 20
        top_p:
          type: number
          minimum: 0
          maximum: 1
        truncation:
          enum:
            - auto
            - disabled
          type: string
        context_management:
          type: array
          items:
            $ref: '#/components/schemas/CompactionContextManagement'
        usage:
          $ref: '#/components/schemas/Usage'
        user:
          anyOf:
            - type: string
            - type: 'null'
      required:
        - id
        - object
        - created_at
        - completed_at
        - status
        - error
        - incomplete_details
        - background
        - instructions
        - max_output_tokens
        - max_tool_calls
        - metadata
        - model
        - output
        - parallel_tool_calls
        - previous_response_id
        - store
        - text
        - tool_choice
        - tools
        - truncation
        - usage
        - user
      examples:
        - id: resp_abc123
          object: response
          created_at: 1735689600
          completed_at: 1735689601
          status: completed
          error: null
          incomplete_details: null
          background: false
          instructions: null
          max_output_tokens: null
          max_tool_calls: 30
          metadata: {}
          model: meetkai:functionary-urdu-mini-pak
          output:
            - type: message
              id: msg_abc123
              role: assistant
              content:
                - type: output_text
                  text: The capital of France is Paris.
                  annotations: []
              status: completed
          output_text: The capital of France is Paris.
          parallel_tool_calls: true
          previous_response_id: null
          reasoning:
            effort: null
            summary: null
          service_tier: auto
          store: true
          text:
            format:
              type: text
            verbosity: medium
          tool_choice: auto
          tools: []
          truncation: auto
          usage:
            input_tokens: 8
            input_tokens_details:
              cached_tokens: 0
            output_tokens: 7
            output_tokens_details:
              reasoning_tokens: 0
            total_tokens: 15
          user: null
      example:
        id: resp_abc123
        object: response
        created_at: 1735689600
        completed_at: 1735689601
        status: completed
        error: null
        incomplete_details: null
        background: false
        instructions: null
        max_output_tokens: null
        max_tool_calls: 30
        metadata: {}
        model: meetkai:functionary-urdu-mini-pak
        output:
          - type: message
            id: msg_abc123
            role: assistant
            content:
              - type: output_text
                text: The capital of France is Paris.
                annotations: []
            status: completed
        output_text: The capital of France is Paris.
        parallel_tool_calls: true
        previous_response_id: null
        reasoning:
          effort: null
          summary: null
        service_tier: auto
        store: true
        text:
          format:
            type: text
          verbosity: medium
        tool_choice: auto
        tools: []
        truncation: auto
        usage:
          input_tokens: 8
          input_tokens_details:
            cached_tokens: 0
          output_tokens: 7
          output_tokens_details:
            reasoning_tokens: 0
          total_tokens: 15
        user: null
    ResponseStreamingEvent:
      anyOf:
        - $ref: '#/components/schemas/ResponseCreatedEvent'
        - $ref: '#/components/schemas/ResponseInProgressEvent'
        - $ref: '#/components/schemas/ResponseCompletedEvent'
        - $ref: '#/components/schemas/ResponseFailedEvent'
        - $ref: '#/components/schemas/ResponseIncompleteEvent'
        - $ref: '#/components/schemas/ResponseQueuedEvent'
        - $ref: '#/components/schemas/ResponseCancelledEvent'
        - $ref: '#/components/schemas/ResponseOutputItemAddedEvent'
        - $ref: '#/components/schemas/ResponseOutputItemDoneEvent'
        - $ref: '#/components/schemas/ResponseContentPartAddedEvent'
        - $ref: '#/components/schemas/ResponseContentPartDoneEvent'
        - $ref: '#/components/schemas/ResponseOutputTextDeltaEvent'
        - $ref: '#/components/schemas/ResponseOutputTextDoneEvent'
        - $ref: '#/components/schemas/ResponseRefusalDeltaEvent'
        - $ref: '#/components/schemas/ResponseRefusalDoneEvent'
        - $ref: '#/components/schemas/ResponseFunctionCallArgumentsDeltaEvent'
        - $ref: '#/components/schemas/ResponseFunctionCallArgumentsDoneEvent'
        - $ref: '#/components/schemas/ResponseFileSearchCallInProgressEvent'
        - $ref: '#/components/schemas/ResponseFileSearchCallSearchingEvent'
        - $ref: '#/components/schemas/ResponseFileSearchCallCompletedEvent'
        - $ref: '#/components/schemas/ResponseWebSearchCallInProgressEvent'
        - $ref: '#/components/schemas/ResponseWebSearchCallSearchingEvent'
        - $ref: '#/components/schemas/ResponseWebSearchCallCompletedEvent'
        - $ref: '#/components/schemas/ResponseHistoryCallInProgressEvent'
        - $ref: '#/components/schemas/ResponseHistoryCallSearchingEvent'
        - $ref: '#/components/schemas/ResponseHistoryCallCompletedEvent'
        - $ref: '#/components/schemas/ResponseSleepCallInProgressEvent'
        - $ref: '#/components/schemas/ResponseSleepCallSleepingEvent'
        - $ref: '#/components/schemas/ResponseSleepCallCompletedEvent'
        - $ref: '#/components/schemas/ResponseToolSearchCallInProgressEvent'
        - $ref: '#/components/schemas/ResponseToolSearchCallSearchingEvent'
        - $ref: '#/components/schemas/ResponseToolSearchCallCompletedEvent'
        - $ref: '#/components/schemas/ResponseReasoningSummaryPartAddedEvent'
        - $ref: '#/components/schemas/ResponseReasoningSummaryPartDoneEvent'
        - $ref: '#/components/schemas/ResponseReasoningSummaryTextDeltaEvent'
        - $ref: '#/components/schemas/ResponseReasoningSummaryTextDoneEvent'
        - $ref: '#/components/schemas/ResponseReasoningTextDeltaEvent'
        - $ref: '#/components/schemas/ResponseReasoningTextDoneEvent'
        - $ref: '#/components/schemas/ResponseImageGenerationCallInProgressEvent'
        - $ref: '#/components/schemas/ResponseImageGenerationCallGeneratingEvent'
        - $ref: '#/components/schemas/ResponseImageGenerationCallCompletedEvent'
        - $ref: '#/components/schemas/ResponseImageGenerationCallPartialImageEvent'
        - $ref: '#/components/schemas/ResponseMCPCallArgumentsDeltaEvent'
        - $ref: '#/components/schemas/ResponseMCPCallArgumentsDoneEvent'
        - $ref: '#/components/schemas/ResponseMCPCallInProgressEvent'
        - $ref: '#/components/schemas/ResponseMCPCallCompletedEvent'
        - $ref: '#/components/schemas/ResponseMCPCallFailedEvent'
        - $ref: '#/components/schemas/ResponseMCPListToolsInProgressEvent'
        - $ref: '#/components/schemas/ResponseMCPListToolsCompletedEvent'
        - $ref: '#/components/schemas/ResponseMCPListToolsFailedEvent'
        - $ref: '#/components/schemas/ResponseReadFileCallInProgressEvent'
        - $ref: '#/components/schemas/ResponseReadFileCallReadingEvent'
        - $ref: '#/components/schemas/ResponseReadFileCallCompletedEvent'
        - $ref: '#/components/schemas/ResponseCodeInterpreterCallInProgressEvent'
        - $ref: '#/components/schemas/ResponseCodeInterpreterCallInterpretingEvent'
        - $ref: '#/components/schemas/ResponseCodeInterpreterCallCompletedEvent'
        - $ref: '#/components/schemas/ResponseCodeInterpreterCallCodeDeltaEvent'
        - $ref: '#/components/schemas/ResponseCodeInterpreterCallCodeDoneEvent'
        - $ref: '#/components/schemas/ResponseShellCallInProgressEvent'
        - $ref: '#/components/schemas/ResponseShellCallExecutingEvent'
        - $ref: '#/components/schemas/ResponseShellCallCompletedEvent'
        - $ref: '#/components/schemas/ResponseCustomToolCallInputDeltaEvent'
        - $ref: '#/components/schemas/ResponseCustomToolCallInputDoneEvent'
        - $ref: '#/components/schemas/ResponseOutputTextAnnotationAddedEvent'
        - $ref: '#/components/schemas/ErrorEvent'
      discriminator:
        propertyName: type
        mapping:
          response.created:
            $ref: '#/components/schemas/ResponseCreatedEvent'
          response.in_progress:
            $ref: '#/components/schemas/ResponseInProgressEvent'
          response.completed:
            $ref: '#/components/schemas/ResponseCompletedEvent'
          response.failed:
            $ref: '#/components/schemas/ResponseFailedEvent'
          response.incomplete:
            $ref: '#/components/schemas/ResponseIncompleteEvent'
          response.queued:
            $ref: '#/components/schemas/ResponseQueuedEvent'
          response.cancelled:
            $ref: '#/components/schemas/ResponseCancelledEvent'
          response.output_item.added:
            $ref: '#/components/schemas/ResponseOutputItemAddedEvent'
          response.output_item.done:
            $ref: '#/components/schemas/ResponseOutputItemDoneEvent'
          response.content_part.added:
            $ref: '#/components/schemas/ResponseContentPartAddedEvent'
          response.content_part.done:
            $ref: '#/components/schemas/ResponseContentPartDoneEvent'
          response.output_text.delta:
            $ref: '#/components/schemas/ResponseOutputTextDeltaEvent'
          response.output_text.done:
            $ref: '#/components/schemas/ResponseOutputTextDoneEvent'
          response.refusal.delta:
            $ref: '#/components/schemas/ResponseRefusalDeltaEvent'
          response.refusal.done:
            $ref: '#/components/schemas/ResponseRefusalDoneEvent'
          response.function_call_arguments.delta:
            $ref: '#/components/schemas/ResponseFunctionCallArgumentsDeltaEvent'
          response.function_call_arguments.done:
            $ref: '#/components/schemas/ResponseFunctionCallArgumentsDoneEvent'
          response.file_search_call.in_progress:
            $ref: '#/components/schemas/ResponseFileSearchCallInProgressEvent'
          response.file_search_call.searching:
            $ref: '#/components/schemas/ResponseFileSearchCallSearchingEvent'
          response.file_search_call.completed:
            $ref: '#/components/schemas/ResponseFileSearchCallCompletedEvent'
          response.web_search_call.in_progress:
            $ref: '#/components/schemas/ResponseWebSearchCallInProgressEvent'
          response.web_search_call.searching:
            $ref: '#/components/schemas/ResponseWebSearchCallSearchingEvent'
          response.web_search_call.completed:
            $ref: '#/components/schemas/ResponseWebSearchCallCompletedEvent'
          response.history_call.in_progress:
            $ref: '#/components/schemas/ResponseHistoryCallInProgressEvent'
          response.history_call.searching:
            $ref: '#/components/schemas/ResponseHistoryCallSearchingEvent'
          response.history_call.completed:
            $ref: '#/components/schemas/ResponseHistoryCallCompletedEvent'
          response.sleep_call.in_progress:
            $ref: '#/components/schemas/ResponseSleepCallInProgressEvent'
          response.sleep_call.sleeping:
            $ref: '#/components/schemas/ResponseSleepCallSleepingEvent'
          response.sleep_call.completed:
            $ref: '#/components/schemas/ResponseSleepCallCompletedEvent'
          response.tool_search_call.in_progress:
            $ref: '#/components/schemas/ResponseToolSearchCallInProgressEvent'
          response.tool_search_call.searching:
            $ref: '#/components/schemas/ResponseToolSearchCallSearchingEvent'
          response.tool_search_call.completed:
            $ref: '#/components/schemas/ResponseToolSearchCallCompletedEvent'
          response.reasoning_summary_part.added:
            $ref: '#/components/schemas/ResponseReasoningSummaryPartAddedEvent'
          response.reasoning_summary_part.done:
            $ref: '#/components/schemas/ResponseReasoningSummaryPartDoneEvent'
          response.reasoning_summary_text.delta:
            $ref: '#/components/schemas/ResponseReasoningSummaryTextDeltaEvent'
          response.reasoning_summary_text.done:
            $ref: '#/components/schemas/ResponseReasoningSummaryTextDoneEvent'
          response.reasoning_text.delta:
            $ref: '#/components/schemas/ResponseReasoningTextDeltaEvent'
          response.reasoning_text.done:
            $ref: '#/components/schemas/ResponseReasoningTextDoneEvent'
          response.image_generation_call.in_progress:
            $ref: '#/components/schemas/ResponseImageGenerationCallInProgressEvent'
          response.image_generation_call.generating:
            $ref: '#/components/schemas/ResponseImageGenerationCallGeneratingEvent'
          response.image_generation_call.completed:
            $ref: '#/components/schemas/ResponseImageGenerationCallCompletedEvent'
          response.image_generation_call.partial_image:
            $ref: '#/components/schemas/ResponseImageGenerationCallPartialImageEvent'
          response.mcp_call_arguments.delta:
            $ref: '#/components/schemas/ResponseMCPCallArgumentsDeltaEvent'
          response.mcp_call_arguments.done:
            $ref: '#/components/schemas/ResponseMCPCallArgumentsDoneEvent'
          response.mcp_call.in_progress:
            $ref: '#/components/schemas/ResponseMCPCallInProgressEvent'
          response.mcp_call.completed:
            $ref: '#/components/schemas/ResponseMCPCallCompletedEvent'
          response.mcp_call.failed:
            $ref: '#/components/schemas/ResponseMCPCallFailedEvent'
          response.mcp_list_tools.in_progress:
            $ref: '#/components/schemas/ResponseMCPListToolsInProgressEvent'
          response.mcp_list_tools.completed:
            $ref: '#/components/schemas/ResponseMCPListToolsCompletedEvent'
          response.mcp_list_tools.failed:
            $ref: '#/components/schemas/ResponseMCPListToolsFailedEvent'
          response.read_file_call.in_progress:
            $ref: '#/components/schemas/ResponseReadFileCallInProgressEvent'
          response.read_file_call.reading:
            $ref: '#/components/schemas/ResponseReadFileCallReadingEvent'
          response.read_file_call.completed:
            $ref: '#/components/schemas/ResponseReadFileCallCompletedEvent'
          response.code_interpreter_call.in_progress:
            $ref: '#/components/schemas/ResponseCodeInterpreterCallInProgressEvent'
          response.code_interpreter_call.interpreting:
            $ref: '#/components/schemas/ResponseCodeInterpreterCallInterpretingEvent'
          response.code_interpreter_call.completed:
            $ref: '#/components/schemas/ResponseCodeInterpreterCallCompletedEvent'
          response.code_interpreter_call_code.delta:
            $ref: '#/components/schemas/ResponseCodeInterpreterCallCodeDeltaEvent'
          response.code_interpreter_call_code.done:
            $ref: '#/components/schemas/ResponseCodeInterpreterCallCodeDoneEvent'
          response.shell_call.in_progress:
            $ref: '#/components/schemas/ResponseShellCallInProgressEvent'
          response.shell_call.executing:
            $ref: '#/components/schemas/ResponseShellCallExecutingEvent'
          response.shell_call.completed:
            $ref: '#/components/schemas/ResponseShellCallCompletedEvent'
          response.custom_tool_call_input.delta:
            $ref: '#/components/schemas/ResponseCustomToolCallInputDeltaEvent'
          response.custom_tool_call_input.done:
            $ref: '#/components/schemas/ResponseCustomToolCallInputDoneEvent'
          response.output_text.annotation.added:
            $ref: '#/components/schemas/ResponseOutputTextAnnotationAddedEvent'
          error:
            $ref: '#/components/schemas/ErrorEvent'
    Item:
      anyOf:
        - $ref: '#/components/schemas/InputMessage'
        - $ref: '#/components/schemas/OutputMessage'
        - $ref: '#/components/schemas/OutputAudioItem'
        - $ref: '#/components/schemas/FileSearchToolCall'
        - $ref: '#/components/schemas/ComputerToolCall'
        - $ref: '#/components/schemas/ComputerToolCallOutput'
        - $ref: '#/components/schemas/WebSearchToolCall'
        - $ref: '#/components/schemas/FunctionToolCall'
        - $ref: '#/components/schemas/FunctionToolCallOutput'
        - $ref: '#/components/schemas/Reasoning'
        - $ref: '#/components/schemas/ImageGenerationCall'
        - $ref: '#/components/schemas/CodeInterpreterToolCall'
        - $ref: '#/components/schemas/LocalShellCall'
        - $ref: '#/components/schemas/LocalShellCallOutput'
        - $ref: '#/components/schemas/ShellCall'
        - $ref: '#/components/schemas/ShellCallOutput'
        - $ref: '#/components/schemas/MCPListTools'
        - $ref: '#/components/schemas/MCPApprovalRequest'
        - $ref: '#/components/schemas/MCPApprovalResponse'
        - $ref: '#/components/schemas/MCPToolCall'
        - $ref: '#/components/schemas/CustomToolCall'
        - $ref: '#/components/schemas/CustomToolCallOutput'
        - $ref: '#/components/schemas/ItemReference'
        - $ref: '#/components/schemas/ResponseCompactionItem'
    Conversation:
      type: object
      properties:
        id:
          type: string
      required:
        - id
    PromptTemplate:
      type: object
      properties:
        id:
          type: string
        variables:
          type: object
          propertyNames:
            type: string
          additionalProperties:
            anyOf:
              - type: string
              - {}
        version:
          type: string
      required:
        - id
    TextConfiguration:
      type: object
      properties:
        format:
          $ref: '#/components/schemas/ResponseFormat'
        verbosity:
          enum:
            - low
            - medium
            - high
          type: string
          default: medium
      required:
        - format
    FunctionToolDefinition:
      type: object
      properties:
        type:
          const: function
        name:
          type: string
        parameters:
          type: object
          propertyNames:
            type: string
          additionalProperties: {}
        strict:
          type: boolean
        description:
          type: string
        defer_loading:
          type: boolean
      required:
        - type
        - name
        - parameters
        - strict
      title: Function tool definition
      description: >-
        Definición de herramienta de función: Define una herramienta de función
        que se puede llamar. Proporcione un nombre de herramienta y un esquema
        de parámetros, con una descripción opcional y carga diferida.
    FileSearchToolDefinition:
      type: object
      properties:
        type:
          const: file_search
        vector_store_ids:
          type: array
          items:
            type: string
        filters:
          anyOf:
            - $ref: '#/components/schemas/ComparisonFilter'
            - $ref: '#/components/schemas/CompoundFilter'
        max_num_results:
          type: integer
          minimum: 1
          maximum: 50
        ranking_options:
          $ref: '#/components/schemas/RankingOptions'
      required:
        - type
        - vector_store_ids
      title: File search tool definition
      description: >-
        Definición de herramienta de búsqueda de archivos: Configura la búsqueda
        semántica sobre uno o más almacenes de vectores, con filtros opcionales,
        opciones de clasificación y límites de resultados.
    ComputerUseToolDefinition:
      type: object
      properties:
        type:
          const: computer_use_preview
        display_height:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        display_width:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        environment:
          type: string
      required:
        - type
        - display_height
        - display_width
        - environment
      title: Computer use tool definition
      description: >-
        Definición de la herramienta de uso de computadoras: Configura la
        herramienta de vista previa de uso de computadoras, incluidas las
        dimensiones de visualización requeridas y el entorno de ejecución.
    WebSearchToolDefinition:
      type: object
      properties:
        type:
          enum:
            - web_search
            - web_search_2025_08_26
          type: string
        filters:
          $ref: '#/components/schemas/WebSearchFilters'
        search_context_size:
          enum:
            - low
            - medium
            - high
          type: string
          default: medium
        user_location:
          $ref: '#/components/schemas/UserLocation'
      required:
        - type
      title: Web search tool definition
      description: >-
        Definición de herramienta de búsqueda en la web: Permite la búsqueda en
        la web con filtros de dominio opcionales, tamaño del contexto de
        búsqueda y ubicación aproximada del usuario.
    MCPToolDefinition:
      type: object
      properties:
        type:
          const: mcp
        server_label:
          type: string
          minLength: 1
          maxLength: 255
          pattern: ^[A-Za-z0-9._-]+$
        mcp_server_id:
          type: string
          description: >-
            Referencia a un servidor MCP gestionado por el gateway. Cuando se
            proporciona, server_url se resuelve desde el vault de MCP.
        mcp_credential_id:
          type: string
          description: >-
            Referencia opcional a una credencial MCP gestionada por la puerta de
            enlace y propiedad del llamador de la ejecución.
        allowed_tools:
          anyOf:
            - type: array
              items:
                type: string
            - $ref: '#/components/schemas/MCPToolFilter'
        authorization:
          type: string
        connector_id:
          enum:
            - connector_dropbox
            - connector_gmail
            - connector_googlecalendar
            - connector_googledrive
            - connector_microsoftteams
            - connector_outlookcalendar
            - connector_outlookemail
            - connector_sharepoint
          type: string
        headers:
          type: object
          propertyNames:
            type: string
            minLength: 1
            maxLength: 256
            pattern: ^[!#$%&'*+.^_`|~0-9A-Za-z-]+$
          additionalProperties:
            type: string
            minLength: 1
            maxLength: 8192
            pattern: ^[^\r\n]*$
        require_approval:
          anyOf:
            - const: always
            - const: never
            - $ref: '#/components/schemas/MCPToolApprovalFilter'
        server_description:
          type: string
        server_url:
          type: string
      required:
        - type
      title: MCP tool definition
      description: >-
        Definición de herramienta MCP: Se conecta a un servidor MCP y expone sus
        herramientas, con referencias opcionales a bóvedas, autenticación,
        encabezados, listas permitidas, ID de conector y política de aprobación.
    CodeInterpreterToolDefinition:
      type: object
      properties:
        type:
          const: code_interpreter
        container:
          anyOf:
            - type: string
            - $ref: '#/components/schemas/CodeInterpreterContainerAuto'
      required:
        - type
        - container
      title: Code interpreter tool definition
      description: >-
        Definición de herramienta de intérprete de código: Permite la ejecución
        de código. Proporciona un ID de contenedor explícito o configuración de
        contenedor automática con identificadores de archivo opcionales y límite
        de memoria.
    ImageGenerationToolDefinition:
      type: object
      properties:
        type:
          const: image_generation
        background:
          enum:
            - transparent
            - opaque
            - auto
          type: string
          default: auto
        input_fidelity:
          enum:
            - high
            - low
          type: string
          default: low
        input_image_mask:
          $ref: '#/components/schemas/InputImageMask'
        model:
          type: string
          minLength: 1
          default: auto
          description: >-
            El modelo a utilizar para la generación de imágenes. Por defecto es
            'auto' para la selección automática del modelo.
        moderation:
          enum:
            - auto
            - low
            - none
          type: string
          default: auto
        output_compression:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
          default: 100
        output_format:
          enum:
            - png
            - webp
            - jpeg
          type: string
          default: png
        partial_images:
          type: integer
          minimum: 0
          maximum: 3
          default: 0
        quality:
          enum:
            - low
            - medium
            - high
            - auto
          type: string
          default: auto
        size:
          enum:
            - 1024x1024
            - 1024x1536
            - 1536x1024
            - auto
          type: string
          default: auto
        prompt_guard:
          type: string
          description: >-
            Agrega una barandilla para evitar que el modelo genere contenido que
            no está permitido.
      required:
        - type
      title: Image generation tool definition
      description: >-
        Definición de herramienta de generación de imágenes: Permite la
        generación de imágenes y configura ajustes de salida como modelo,
        calidad, tamaño, formato, moderación y enmascaramiento opcional.
    LocalShellToolDefinition:
      type: object
      properties:
        type:
          const: local_shell
      required:
        - type
      title: Local shell tool definition
      description: >-
        Definición de herramienta de shell local: Habilita la herramienta de
        ejecución de shell local.
    ShellToolDefinition:
      type: object
      properties:
        type:
          const: shell
        environment:
          $ref: '#/components/schemas/ShellEnvironment'
          description: >-
            Configuración del entorno del contenedor. Por defecto, es
            container_auto.
      required:
        - type
      title: Shell tool definition
      description: >-
        Definición de herramienta de shell: Permite la ejecución de comandos de
        shell en un entorno de contenedor gestionado.
    CustomToolDefinition:
      type: object
      properties:
        type:
          const: custom
        name:
          type: string
        description:
          type: string
        format:
          $ref: '#/components/schemas/CustomToolFormat'
      required:
        - type
        - name
      title: Custom tool definition
      description: >-
        Definición de herramienta personalizada: Define una herramienta
        personalizada por nombre, con descripción opcional y restricciones de
        formato de salida opcionales.
    WebSearchPreviewToolDefinition:
      type: object
      properties:
        type:
          enum:
            - web_search_preview
            - web_search_preview_2025_03_11
          type: string
        search_context_size:
          enum:
            - low
            - medium
            - high
          type: string
        user_location:
          $ref: '#/components/schemas/UserLocation'
      required:
        - type
      title: Web search preview tool definition
      description: >-
        Definición de herramienta de vista previa de búsqueda web: habilita la
        variante de herramienta de vista previa de búsqueda web con tamaño de
        contexto opcional y ubicación del usuario.
    HostedToolDefinition:
      type: object
      properties:
        type:
          enum:
            - file_search
            - web_search_preview
            - computer_use_preview
            - code_interpreter
            - image_generation
          type: string
      required:
        - type
      title: Hosted tool definition
      description: >-
        Definición de herramienta alojada: Selector de herramienta alojada
        abreviado para tipos de herramientas integradas. Esta es una forma de
        compatibilidad que se superpone con los esquemas detallados por
        herramienta.
    SleepToolDefinition:
      type: object
      properties:
        type:
          const: sleep
      required:
        - type
      title: Sleep tool definition
      description: >-
        Definición de herramienta de sueño: Permite a un agente pausar
        brevemente la respuesta actual y reanudarla más tarde o cuando sea
        despertado.
    HistoryToolDefinition:
      type: object
      properties:
        type:
          const: history
      required:
        - type
      title: History tool definition
      description: >-
        Definición de herramienta de historia: Habilita la herramienta de
        recuperación del historial de conversaciones internas para la búsqueda
        semántica de interacciones pasadas.
    ToolChoice:
      anyOf:
        - $ref: '#/components/schemas/ToolChoiceMode'
        - $ref: '#/components/schemas/AllowedTools'
        - $ref: '#/components/schemas/HostedToolChoice'
        - $ref: '#/components/schemas/FunctionToolChoice'
        - $ref: '#/components/schemas/MCPToolChoice'
        - $ref: '#/components/schemas/CustomToolChoice'
    ReasoningConfiguration:
      type: object
      properties:
        effort:
          anyOf:
            - enum:
                - none
                - minimal
                - low
                - medium
                - high
                - xhigh
              type: string
            - type: 'null'
        summary:
          anyOf:
            - enum:
                - auto
                - concise
                - detailed
              type: string
            - type: 'null'
      required:
        - effort
        - summary
    ContextManagement:
      type: array
      maxItems: 1
      items:
        $ref: '#/components/schemas/CompactionContextManagement'
      description: >-
        Array de estrategias de gestión de contexto para aplicar durante la
        generación de respuestas.
    ResponseStatus:
      enum:
        - completed
        - failed
        - in_progress
        - cancelled
        - queued
        - incomplete
      type: string
      description: >-
        El estado general de la generación de respuestas. 'completado' significa
        finalizado con éxito, 'fallido' significa que ocurrió un error,
        'en_proceso' significa que se está procesando actualmente, 'cancelado'
        significa cancelado por el usuario, 'en_cola' significa esperando a
        comenzar, 'incompleto' significa finalización parcial.
    Error:
      type: object
      properties:
        code:
          type: string
        message:
          type: string
      required:
        - code
        - message
    IncompleteDetails:
      type: object
      properties:
        type:
          type: string
        reason:
          type: string
      required:
        - reason
    ComparisonFilter:
      type: object
      properties:
        type:
          enum:
            - eq
            - ne
            - gt
            - gte
            - lt
            - lte
          type: string
        key:
          type: string
        value:
          anyOf:
            - type: string
            - type: number
            - type: boolean
      required:
        - type
        - key
        - value
    RankingOptions:
      type: object
      properties:
        ranker:
          type: string
        score_threshold:
          type: number
    CompactionContextManagement:
      type: object
      properties:
        type:
          const: compaction
        compact_threshold:
          type: integer
          minimum: 1000
          maximum: 9007199254740991
          description: >-
            El umbral de tokens por encima del cual se debe compactar el
            contexto de la conversación. Debe ser al menos 1000.
      required:
        - type
        - compact_threshold
    Usage:
      type: object
      properties:
        input_tokens:
          type: integer
          minimum: 0
          maximum: 9007199254740991
        input_tokens_details:
          $ref: '#/components/schemas/InputTokensDetails'
        output_tokens:
          type: integer
          minimum: 0
          maximum: 9007199254740991
        output_tokens_details:
          $ref: '#/components/schemas/OutputTokensDetails'
        total_tokens:
          type: integer
          minimum: 0
          maximum: 9007199254740991
      required:
        - input_tokens
        - input_tokens_details
        - output_tokens
        - output_tokens_details
        - total_tokens
    ResponseCreatedEvent:
      type: object
      properties:
        type:
          const: response.created
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        response:
          $ref: '#/components/schemas/ResponseObject'
      required:
        - type
        - sequence_number
        - response
    ResponseInProgressEvent:
      type: object
      properties:
        type:
          const: response.in_progress
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        response:
          $ref: '#/components/schemas/ResponseObject'
      required:
        - type
        - sequence_number
        - response
    ResponseCompletedEvent:
      type: object
      properties:
        type:
          const: response.completed
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        response:
          $ref: '#/components/schemas/ResponseObject'
      required:
        - type
        - sequence_number
        - response
    ResponseFailedEvent:
      type: object
      properties:
        type:
          const: response.failed
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        response:
          $ref: '#/components/schemas/ResponseObject'
      required:
        - type
        - sequence_number
        - response
    ResponseIncompleteEvent:
      type: object
      properties:
        type:
          const: response.incomplete
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        response:
          $ref: '#/components/schemas/ResponseObject'
      required:
        - type
        - sequence_number
        - response
    ResponseQueuedEvent:
      type: object
      properties:
        type:
          const: response.queued
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        response:
          $ref: '#/components/schemas/ResponseObject'
      required:
        - type
        - sequence_number
        - response
    ResponseCancelledEvent:
      type: object
      properties:
        type:
          const: response.cancelled
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        response:
          $ref: '#/components/schemas/ResponseObject'
      required:
        - type
        - sequence_number
        - response
    ResponseOutputItemAddedEvent:
      type: object
      properties:
        type:
          const: response.output_item.added
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item:
          $ref: '#/components/schemas/Item'
      required:
        - type
        - sequence_number
        - output_index
        - item
    ResponseOutputItemDoneEvent:
      type: object
      properties:
        type:
          const: response.output_item.done
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item:
          $ref: '#/components/schemas/Item'
      required:
        - type
        - sequence_number
        - output_index
        - item
    ResponseContentPartAddedEvent:
      type: object
      properties:
        type:
          const: response.content_part.added
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        content_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        part:
          anyOf:
            - $ref: '#/components/schemas/OutputText'
            - $ref: '#/components/schemas/Refusal'
            - $ref: '#/components/schemas/ReasoningText'
      required:
        - type
        - sequence_number
        - item_id
        - output_index
        - content_index
        - part
    ResponseContentPartDoneEvent:
      type: object
      properties:
        type:
          const: response.content_part.done
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        content_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        part:
          anyOf:
            - $ref: '#/components/schemas/OutputText'
            - $ref: '#/components/schemas/Refusal'
            - $ref: '#/components/schemas/ReasoningText'
      required:
        - type
        - sequence_number
        - item_id
        - output_index
        - content_index
        - part
    ResponseOutputTextDeltaEvent:
      type: object
      properties:
        type:
          const: response.output_text.delta
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        content_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        delta:
          type: string
        logprobs:
          type: array
          items:
            $ref: '#/components/schemas/LogProbToken'
      required:
        - type
        - sequence_number
        - item_id
        - output_index
        - content_index
        - delta
    ResponseOutputTextDoneEvent:
      type: object
      properties:
        type:
          const: response.output_text.done
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        content_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        text:
          type: string
        logprobs:
          type: array
          items:
            $ref: '#/components/schemas/LogProbToken'
      required:
        - type
        - sequence_number
        - item_id
        - output_index
        - content_index
        - text
    ResponseRefusalDeltaEvent:
      type: object
      properties:
        type:
          const: response.refusal.delta
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        content_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        delta:
          type: string
      required:
        - type
        - sequence_number
        - item_id
        - output_index
        - content_index
        - delta
    ResponseRefusalDoneEvent:
      type: object
      properties:
        type:
          const: response.refusal.done
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        content_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        refusal:
          type: string
      required:
        - type
        - sequence_number
        - item_id
        - output_index
        - content_index
        - refusal
    ResponseFunctionCallArgumentsDeltaEvent:
      type: object
      properties:
        type:
          const: response.function_call_arguments.delta
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        delta:
          type: string
      required:
        - type
        - sequence_number
        - item_id
        - output_index
        - delta
    ResponseFunctionCallArgumentsDoneEvent:
      type: object
      properties:
        type:
          const: response.function_call_arguments.done
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        name:
          type: string
        arguments:
          type: string
      required:
        - type
        - sequence_number
        - item_id
        - output_index
        - name
        - arguments
    ResponseFileSearchCallInProgressEvent:
      type: object
      properties:
        type:
          const: response.file_search_call.in_progress
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
      required:
        - type
        - sequence_number
        - item_id
        - output_index
    ResponseFileSearchCallSearchingEvent:
      type: object
      properties:
        type:
          const: response.file_search_call.searching
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
      required:
        - type
        - sequence_number
        - item_id
        - output_index
    ResponseFileSearchCallCompletedEvent:
      type: object
      properties:
        type:
          const: response.file_search_call.completed
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
      required:
        - type
        - sequence_number
        - item_id
        - output_index
    ResponseWebSearchCallInProgressEvent:
      type: object
      properties:
        type:
          const: response.web_search_call.in_progress
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        args:
          type: object
          properties:
            query:
              type: string
            location:
              type: string
            language:
              type: string
            country:
              type: string
          required:
            - query
      required:
        - type
        - sequence_number
        - item_id
        - output_index
    ResponseWebSearchCallSearchingEvent:
      type: object
      properties:
        type:
          const: response.web_search_call.searching
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
      required:
        - type
        - sequence_number
        - item_id
        - output_index
    ResponseWebSearchCallCompletedEvent:
      type: object
      properties:
        type:
          const: response.web_search_call.completed
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        function_call_output:
          type: string
      required:
        - type
        - sequence_number
        - item_id
        - output_index
    ResponseHistoryCallInProgressEvent:
      type: object
      properties:
        type:
          const: response.history_call.in_progress
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        args:
          type: object
          properties:
            query:
              type: string
          required:
            - query
      required:
        - type
        - sequence_number
        - item_id
        - output_index
    ResponseHistoryCallSearchingEvent:
      type: object
      properties:
        type:
          const: response.history_call.searching
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
      required:
        - type
        - sequence_number
        - item_id
        - output_index
    ResponseHistoryCallCompletedEvent:
      type: object
      properties:
        type:
          const: response.history_call.completed
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        function_call_output:
          type: string
      required:
        - type
        - sequence_number
        - item_id
        - output_index
    ResponseSleepCallInProgressEvent:
      type: object
      properties:
        type:
          const: response.sleep_call.in_progress
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        args:
          type: object
          properties:
            duration_seconds:
              type: integer
              minimum: 1
              maximum: 1200
            wake_at:
              type: string
            reason:
              type: string
      required:
        - type
        - sequence_number
        - item_id
        - output_index
    ResponseSleepCallSleepingEvent:
      type: object
      properties:
        type:
          const: response.sleep_call.sleeping
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        wake_at:
          type: string
      required:
        - type
        - sequence_number
        - item_id
        - output_index
    ResponseSleepCallCompletedEvent:
      type: object
      properties:
        type:
          const: response.sleep_call.completed
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        function_call_output:
          type: string
        status:
          enum:
            - woke
            - interrupted
            - cancelled
          type: string
      required:
        - type
        - sequence_number
        - item_id
        - output_index
    ResponseToolSearchCallInProgressEvent:
      type: object
      properties:
        type:
          const: response.tool_search_call.in_progress
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        args:
          type: object
          properties:
            query:
              type: string
            max_results:
              type: number
          required:
            - query
      required:
        - type
        - sequence_number
        - item_id
        - output_index
    ResponseToolSearchCallSearchingEvent:
      type: object
      properties:
        type:
          const: response.tool_search_call.searching
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
      required:
        - type
        - sequence_number
        - item_id
        - output_index
    ResponseToolSearchCallCompletedEvent:
      type: object
      properties:
        type:
          const: response.tool_search_call.completed
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        function_call_output:
          type: string
      required:
        - type
        - sequence_number
        - item_id
        - output_index
    ResponseReasoningSummaryPartAddedEvent:
      type: object
      properties:
        type:
          const: response.reasoning_summary_part.added
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        summary_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        part:
          $ref: '#/components/schemas/SummaryText'
      required:
        - type
        - sequence_number
        - item_id
        - output_index
        - summary_index
        - part
    ResponseReasoningSummaryPartDoneEvent:
      type: object
      properties:
        type:
          const: response.reasoning_summary_part.done
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        summary_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        part:
          $ref: '#/components/schemas/SummaryText'
      required:
        - type
        - sequence_number
        - item_id
        - output_index
        - summary_index
        - part
    ResponseReasoningSummaryTextDeltaEvent:
      type: object
      properties:
        type:
          const: response.reasoning_summary_text.delta
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        summary_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        delta:
          type: string
      required:
        - type
        - sequence_number
        - item_id
        - output_index
        - summary_index
        - delta
    ResponseReasoningSummaryTextDoneEvent:
      type: object
      properties:
        type:
          const: response.reasoning_summary_text.done
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        summary_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        text:
          type: string
      required:
        - type
        - sequence_number
        - item_id
        - output_index
        - summary_index
        - text
    ResponseReasoningTextDeltaEvent:
      type: object
      properties:
        type:
          const: response.reasoning_text.delta
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        content_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        delta:
          type: string
      required:
        - type
        - sequence_number
        - item_id
        - output_index
        - content_index
        - delta
    ResponseReasoningTextDoneEvent:
      type: object
      properties:
        type:
          const: response.reasoning_text.done
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        content_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        text:
          type: string
      required:
        - type
        - sequence_number
        - item_id
        - output_index
        - content_index
        - text
    ResponseImageGenerationCallInProgressEvent:
      type: object
      properties:
        type:
          const: response.image_generation_call.in_progress
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        args:
          type: object
          properties:
            prompt:
              type: string
          required:
            - prompt
      required:
        - type
        - sequence_number
        - item_id
        - output_index
    ResponseImageGenerationCallGeneratingEvent:
      type: object
      properties:
        type:
          const: response.image_generation_call.generating
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
      required:
        - type
        - sequence_number
        - item_id
        - output_index
    ResponseImageGenerationCallCompletedEvent:
      type: object
      properties:
        type:
          const: response.image_generation_call.completed
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        function_call_output:
          type: string
      required:
        - type
        - sequence_number
        - item_id
        - output_index
    ResponseImageGenerationCallPartialImageEvent:
      type: object
      properties:
        type:
          const: response.image_generation_call.partial_image
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        partial_image_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        partial_image_b64:
          type: string
      required:
        - type
        - sequence_number
        - item_id
        - output_index
        - partial_image_index
        - partial_image_b64
    ResponseMCPCallArgumentsDeltaEvent:
      type: object
      properties:
        type:
          const: response.mcp_call_arguments.delta
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        delta:
          type: string
      required:
        - type
        - sequence_number
        - item_id
        - output_index
        - delta
    ResponseMCPCallArgumentsDoneEvent:
      type: object
      properties:
        type:
          const: response.mcp_call_arguments.done
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        arguments:
          type: string
      required:
        - type
        - sequence_number
        - item_id
        - output_index
        - arguments
    ResponseMCPCallInProgressEvent:
      type: object
      properties:
        type:
          const: response.mcp_call.in_progress
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
      required:
        - type
        - sequence_number
        - item_id
        - output_index
    ResponseMCPCallCompletedEvent:
      type: object
      properties:
        type:
          const: response.mcp_call.completed
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
      required:
        - type
        - sequence_number
        - item_id
        - output_index
    ResponseMCPCallFailedEvent:
      type: object
      properties:
        type:
          const: response.mcp_call.failed
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
      required:
        - type
        - sequence_number
        - item_id
        - output_index
    ResponseMCPListToolsInProgressEvent:
      type: object
      properties:
        type:
          const: response.mcp_list_tools.in_progress
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
      required:
        - type
        - sequence_number
        - item_id
        - output_index
    ResponseMCPListToolsCompletedEvent:
      type: object
      properties:
        type:
          const: response.mcp_list_tools.completed
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
      required:
        - type
        - sequence_number
        - item_id
        - output_index
    ResponseMCPListToolsFailedEvent:
      type: object
      properties:
        type:
          const: response.mcp_list_tools.failed
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
      required:
        - type
        - sequence_number
        - item_id
        - output_index
    ResponseReadFileCallInProgressEvent:
      type: object
      properties:
        type:
          const: response.read_file_call.in_progress
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        args:
          type: object
          properties:
            file_id:
              type: string
          required:
            - file_id
      required:
        - type
        - sequence_number
        - item_id
        - output_index
    ResponseReadFileCallReadingEvent:
      type: object
      properties:
        type:
          const: response.read_file_call.reading
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
      required:
        - type
        - sequence_number
        - item_id
        - output_index
    ResponseReadFileCallCompletedEvent:
      type: object
      properties:
        type:
          const: response.read_file_call.completed
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        function_call_output:
          type: string
      required:
        - type
        - sequence_number
        - item_id
        - output_index
    ResponseCodeInterpreterCallInProgressEvent:
      type: object
      properties:
        type:
          const: response.code_interpreter_call.in_progress
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
      required:
        - type
        - sequence_number
        - item_id
        - output_index
    ResponseCodeInterpreterCallInterpretingEvent:
      type: object
      properties:
        type:
          const: response.code_interpreter_call.interpreting
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
      required:
        - type
        - sequence_number
        - item_id
        - output_index
    ResponseCodeInterpreterCallCompletedEvent:
      type: object
      properties:
        type:
          const: response.code_interpreter_call.completed
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
      required:
        - type
        - sequence_number
        - item_id
        - output_index
    ResponseCodeInterpreterCallCodeDeltaEvent:
      type: object
      properties:
        type:
          const: response.code_interpreter_call_code.delta
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        delta:
          type: string
      required:
        - type
        - sequence_number
        - item_id
        - output_index
        - delta
    ResponseCodeInterpreterCallCodeDoneEvent:
      type: object
      properties:
        type:
          const: response.code_interpreter_call_code.done
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        code:
          type: string
      required:
        - type
        - sequence_number
        - item_id
        - output_index
        - code
    ResponseShellCallInProgressEvent:
      type: object
      properties:
        type:
          const: response.shell_call.in_progress
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        args:
          type: object
          properties:
            command:
              type: string
            file_ids_to_upload:
              type: array
              items:
                type: object
                properties:
                  file_id:
                    type: string
                  dest_path:
                    type: string
                required:
                  - file_id
                  - dest_path
            file_names_to_upload:
              type: array
              items:
                type: object
                properties:
                  file_name:
                    type: string
                  dest_path:
                    type: string
                required:
                  - file_name
                  - dest_path
            file_paths_to_download:
              type: array
              items:
                type: string
      required:
        - type
        - sequence_number
        - item_id
        - output_index
    ResponseShellCallExecutingEvent:
      type: object
      properties:
        type:
          const: response.shell_call.executing
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
      required:
        - type
        - sequence_number
        - item_id
        - output_index
    ResponseShellCallCompletedEvent:
      type: object
      properties:
        type:
          const: response.shell_call.completed
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        function_call_output:
          type: string
      required:
        - type
        - sequence_number
        - item_id
        - output_index
    ResponseCustomToolCallInputDeltaEvent:
      type: object
      properties:
        type:
          const: response.custom_tool_call_input.delta
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        delta:
          type: string
      required:
        - type
        - sequence_number
        - item_id
        - output_index
        - delta
    ResponseCustomToolCallInputDoneEvent:
      type: object
      properties:
        type:
          const: response.custom_tool_call_input.done
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        input:
          type: string
      required:
        - type
        - sequence_number
        - item_id
        - output_index
        - input
    ResponseOutputTextAnnotationAddedEvent:
      type: object
      properties:
        type:
          const: response.output_text.annotation.added
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        item_id:
          type: string
        output_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        content_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        annotation_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        annotation:
          type: object
          properties:
            type:
              type: string
            text:
              type: string
            start:
              type: integer
              minimum: -9007199254740991
              maximum: 9007199254740991
            end:
              type: integer
              minimum: -9007199254740991
              maximum: 9007199254740991
          required:
            - type
            - text
            - start
            - end
      required:
        - type
        - sequence_number
        - item_id
        - output_index
        - content_index
        - annotation_index
        - annotation
    ErrorEvent:
      type: object
      properties:
        type:
          const: error
        sequence_number:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        code:
          type: string
        message:
          type: string
        param:
          type: string
      required:
        - type
        - sequence_number
        - code
        - message
    InputMessage:
      type: object
      properties:
        type:
          const: message
          description: >-
            El identificador del tipo de artículo. Siempre 'mensaje' para los
            artículos de mensaje.
        role:
          enum:
            - user
            - assistant
            - system
            - developer
          type: string
          description: >-
            El papel del remitente del mensaje (usuario, asistente, sistema o
            desarrollador).
        content:
          anyOf:
            - type: string
            - $ref: '#/components/schemas/InputMessageContent'
          description: >-
            El contenido del mensaje. Puede ser una cadena de texto simple o un
            array de elementos de contenido multimodal (texto, imágenes,
            archivos, audio).
        status:
          $ref: '#/components/schemas/Status'
          description: >-
            El estado de procesamiento de este mensaje. Opcional - indica si el
            mensaje está en progreso, completado o incompleto.
        id:
          type: string
          default: msg_aa87e2b1112a455b8deabed784372198
      required:
        - role
        - content
      title: Input message item
      description: >-
        Elemento del mensaje de entrada: Un mensaje con rol y contenido. Utiliza
        esto para turnos de usuario, asistente, sistema o desarrollador en
        entradas estructuradas.
    OutputMessage:
      type: object
      properties:
        type:
          const: message
          description: El identificador de tipo de elemento para las salidas de mensajes.
        id:
          type: string
          description: El identificador único para este mensaje de salida.
        role:
          const: assistant
          description: >-
            El papel del remitente del mensaje. Siempre 'asistente' para
            mensajes generados por el modelo.
        content:
          type: array
          items:
            anyOf:
              - $ref: '#/components/schemas/OutputText'
              - $ref: '#/components/schemas/Refusal'
          description: >-
            Array de elementos de contenido en la respuesta del asistente. Puede
            contener salidas de texto o mensajes de rechazo.
        status:
          enum:
            - in_progress
            - completed
            - incomplete
          type: string
          description: >-
            El estado de procesamiento de este mensaje (en_proceso, completado o
            incompleto).
        phase:
          enum:
            - commentary
            - final_answer
          type: string
          description: >-
            Etiqueta un mensaje del asistente como comentario intermedio o la
            respuesta final.
      required:
        - type
        - id
        - role
        - content
        - status
      title: Output message item
      description: >-
        Elemento de mensaje de salida: Un mensaje de asistente que contiene
        contenido de texto generado o contenido de rechazo.
    OutputAudioItem:
      type: object
      properties:
        type:
          const: output_audio
          description: El identificador de tipo de contenido para la salida de audio.
        data:
          type: string
          description: Datos de audio codificados en Base64.
        transcript:
          type: string
          description: La transcripción del texto que se sintetizó en audio.
        id:
          type: string
          description: El identificador único para este elemento de audio de salida.
        status:
          enum:
            - in_progress
            - completed
            - incomplete
          type: string
          description: El estado de procesamiento de este elemento de audio.
      required:
        - type
        - data
        - transcript
        - id
        - status
      title: Output audio item
      description: >-
        Elemento de audio de salida: Contenido de audio sintetizado a partir de
        la respuesta de texto del modelo mediante TTS.
    FileSearchToolCall:
      type: object
      properties:
        type:
          const: file_search_call
        id:
          type: string
        queries:
          type: array
          items:
            type: string
        status:
          enum:
            - in_progress
            - searching
            - completed
            - incomplete
            - failed
          type: string
        results:
          type: array
          items:
            $ref: '#/components/schemas/FileSearchResult'
      required:
        - type
        - id
        - queries
        - status
      title: File search call item
      description: >-
        Elemento de llamada de búsqueda de archivos: Un registro de llamada de
        herramienta para búsqueda semántica de archivos, que incluye términos de
        consulta, estado y resultados opcionales.
    ComputerToolCall:
      type: object
      properties:
        type:
          const: computer_call
        id:
          type: string
        call_id:
          type: string
        action:
          $ref: '#/components/schemas/ComputerAction'
        pending_safety_checks:
          type: array
          items:
            $ref: '#/components/schemas/PendingSafetyCheck'
        status:
          $ref: '#/components/schemas/Status'
      required:
        - type
        - id
        - call_id
        - action
        - pending_safety_checks
        - status
      title: Computer call item
      description: >-
        Elemento de llamada de computadora: Un paso de llamada de herramienta de
        uso de computadora con la acción de interfaz de usuario seleccionada y
        el estado de verificación de seguridad.
    ComputerToolCallOutput:
      type: object
      properties:
        type:
          const: computer_call_output
        call_id:
          type: string
        output:
          $ref: '#/components/schemas/ComputerScreenshot'
        acknowledged_safety_checks:
          type: array
          items:
            $ref: '#/components/schemas/AcknowledgedSafetyCheck'
        id:
          type: string
        status:
          $ref: '#/components/schemas/Status'
      required:
        - type
        - call_id
        - output
      title: Computer call output item
      description: >-
        Elemento de salida de llamada de computadora: Salida emitida por una
        llamada de herramienta de uso informático, que típicamente incluye datos
        de captura de pantalla.
    WebSearchToolCall:
      type: object
      properties:
        type:
          const: web_search_call
        id:
          type: string
        action:
          $ref: '#/components/schemas/WebSearchAction'
        status:
          type: string
      required:
        - type
        - id
        - action
        - status
      title: Web search call item
      description: >-
        Elemento de llamada de búsqueda web: Un registro de llamada de
        herramienta de búsqueda web que contiene la acción ejecutada y el
        estado.
    FunctionToolCall:
      type: object
      properties:
        type:
          const: function_call
        arguments:
          type: string
        call_id:
          type: string
        name:
          type: string
        id:
          type: string
        status:
          $ref: '#/components/schemas/Status'
      required:
        - type
        - arguments
        - call_id
        - name
      title: Function call item
      description: >-
        Elemento de llamada a función: Una llamada a una herramienta de función,
        incluyendo el nombre de la función y los argumentos en formato JSON.
    FunctionToolCallOutput:
      type: object
      properties:
        type:
          const: function_call_output
        call_id:
          type: string
        output:
          type: string
        id:
          type: string
        status:
          $ref: '#/components/schemas/Status'
      required:
        - type
        - call_id
        - output
      title: Function call output item
      description: >-
        Elemento de salida de llamada a función: La carga útil de salida
        devuelta de una llamada a herramienta de función.
    Reasoning:
      type: object
      properties:
        type:
          const: reasoning
        id:
          type: string
        summary:
          type: array
          items:
            $ref: '#/components/schemas/SummaryText'
        content:
          type: array
          items:
            $ref: '#/components/schemas/ReasoningText'
        encrypted_content:
          anyOf:
            - type: string
            - type: 'null'
        status:
          anyOf:
            - $ref: '#/components/schemas/Status'
            - type: 'null'
      required:
        - type
        - id
        - summary
      title: Reasoning item
      description: >-
        Elemento de razonamiento: Metadatos de razonamiento del modelo,
        incluyendo texto resumido y contenido de razonamiento detallado
        opcional.
    ImageGenerationCall:
      type: object
      properties:
        type:
          const: image_generation_call
        id:
          type: string
        status:
          type: string
        result:
          type: string
        background:
          type: string
        output_format:
          type: string
        quality:
          type: string
        size:
          type: string
        revised_prompt:
          type: string
      required:
        - type
        - id
        - status
        - result
      title: Image generation call item
      description: >-
        Elemento de llamada para generación de imágenes: Un registro de llamada
        de herramienta para generación de imágenes, incluyendo estado y URL de
        resultado.
    CodeInterpreterToolCall:
      type: object
      properties:
        type:
          const: code_interpreter_call
        id:
          type: string
        code:
          anyOf:
            - type: string
            - type: 'null'
        container_id:
          type: string
        outputs:
          anyOf:
            - type: array
              items:
                $ref: '#/components/schemas/CodeInterpreterOutput'
            - type: 'null'
        status:
          enum:
            - in_progress
            - completed
            - incomplete
            - interpreting
            - failed
          type: string
      required:
        - type
        - id
        - code
        - container_id
        - outputs
        - status
      title: Code interpreter call item
      description: >-
        Elemento de llamada del intérprete de código: un registro de llamada de
        herramienta para la ejecución de código, que incluye código, contenedor,
        salidas y estado.
    LocalShellCall:
      type: object
      properties:
        type:
          const: local_shell_call
        id:
          type: string
        call_id:
          type: string
        action:
          $ref: '#/components/schemas/LocalShellAction'
        status:
          type: string
      required:
        - type
        - id
        - call_id
        - action
        - status
      title: Local shell call item
      description: >-
        Elemento de llamada de shell local: Una solicitud de ejecución de shell
        local con detalles del comando y estado de ejecución.
    LocalShellCallOutput:
      type: object
      properties:
        type:
          const: local_shell_call_output
        id:
          type: string
        output:
          type: string
        status:
          $ref: '#/components/schemas/Status'
      required:
        - type
        - id
        - output
      title: Local shell call output item
      description: >-
        Elemento de salida de llamada a shell local: La carga útil de salida
        capturada devuelta por una llamada a herramienta de shell local.
    ShellCall:
      type: object
      properties:
        type:
          const: shell_call
        id:
          type: string
        call_id:
          type: string
        action:
          $ref: '#/components/schemas/ShellCallAction'
        status:
          enum:
            - in_progress
            - completed
            - incomplete
          type: string
      required:
        - type
        - id
        - call_id
        - action
        - status
      title: Shell call item
      description: >-
        Elemento de llamada de shell: Una solicitud de ejecución de shell de
        contenedor hospedado con un comando y estado.
    ShellCallOutput:
      type: object
      properties:
        type:
          const: shell_call_output
        id:
          type: string
        call_id:
          type: string
        output:
          type: object
          properties:
            stdout:
              type: string
              description: Salida estándar del comando.
            stderr:
              type: string
              description: Error estándar del comando.
            outcome:
              type: object
              properties:
                type:
                  enum:
                    - exit
                    - timeout
                  type: string
                  description: Si el comando salió normalmente o se agotó el tiempo.
                exit_code:
                  anyOf:
                    - type: integer
                      minimum: -9007199254740991
                      maximum: 9007199254740991
                    - type: 'null'
                  description: Código de salida del comando, o nulo si se agota el tiempo.
              required:
                - type
                - exit_code
          required:
            - stdout
            - stderr
            - outcome
          description: Resultado del comando ejecutado.
        status:
          $ref: '#/components/schemas/Status'
      required:
        - type
        - id
        - call_id
        - output
      title: Shell call output item
      description: >-
        Elemento de salida de llamada de shell: La salida capturada de una
        llamada a la herramienta de shell de contenedor alojado.
    MCPListTools:
      type: object
      properties:
        type:
          const: mcp_list_tools
        id:
          type: string
        server_label:
          type: string
        tools:
          type: array
          items:
            $ref: '#/components/schemas/MCPTool'
        error:
          type: string
      required:
        - type
        - id
        - server_label
        - tools
      title: MCP list tools item
      description: >-
        Elemento de herramientas de la lista MCP: Resultado de descubrir
        herramientas disponibles desde un servidor MCP.
    MCPApprovalRequest:
      type: object
      properties:
        type:
          const: mcp_approval_request
        id:
          type: string
        arguments:
          type: string
        name:
          type: string
        server_label:
          type: string
      required:
        - type
        - id
        - arguments
        - name
        - server_label
      title: MCP approval request item
      description: >-
        Solicitud de aprobación de MCP: Una solicitud para aprobar o denegar la
        ejecución de una llamada a la herramienta MCP.
    MCPApprovalResponse:
      type: object
      properties:
        type:
          const: mcp_approval_response
        approval_request_id:
          type: string
        approve:
          type: boolean
        id:
          type: string
        reason:
          type: string
      required:
        - type
        - approval_request_id
        - approve
      title: MCP approval response item
      description: >-
        Artículo de respuesta de aprobación de MCP: La carga útil de decisión
        para una solicitud de aprobación de MCP anterior.
    MCPToolCall:
      type: object
      properties:
        type:
          const: mcp_call
        id:
          type: string
        arguments:
          type: string
        name:
          type: string
        server_label:
          type: string
        error:
          type: string
        output:
          type: string
      required:
        - type
        - id
        - arguments
        - name
        - server_label
      title: MCP call item
      description: >-
        Elemento de llamada MCP: Un registro de llamada directa para una
        herramienta MCP, incluyendo argumentos de solicitud y salida/error
        opcionales.
    CustomToolCall:
      type: object
      properties:
        type:
          const: custom_tool_call
        call_id:
          type: string
        input:
          type: string
        name:
          type: string
        id:
          type: string
      required:
        - type
        - call_id
        - input
        - name
      title: Custom tool call item
      description: >-
        Elemento de llamada de herramienta personalizada: Un registro de llamada
        para una herramienta personalizada con carga útil de entrada y nombre de
        herramienta.
    CustomToolCallOutput:
      type: object
      properties:
        type:
          const: custom_tool_call_output
        call_id:
          type: string
        output:
          type: string
        id:
          type: string
      required:
        - type
        - call_id
        - output
      title: Custom tool call output item
      description: >-
        Elemento de salida de la llamada a la herramienta personalizada: La
        carga útil de salida devuelta por una llamada a la herramienta
        personalizada.
    ItemReference:
      type: object
      properties:
        type:
          const: item_reference
          default: item_reference
        id:
          type: string
      required:
        - id
      title: Item reference item
      description: 'Referencia de ítem: Un puntero a otro ítem de respuesta por ID.'
    ResponseCompactionItem:
      type: object
      properties:
        type:
          const: compaction
        id:
          type: string
        content:
          type: string
          description: El contenido de la conversación compactada/resumida.
        encrypted_content:
          type: string
          description: >-
            Contenido encriptado opcional para compatibilidad con la API de
            OpenAI.
        created_by:
          type: string
          description: El modelo que creó esta compactación.
      required:
        - type
        - id
        - content
      title: Compaction item
      description: >-
        Elemento de compactación: Un resumen condensado del historial de
        conversaciones previas para reducir el tamaño del contexto.
    ResponseFormat:
      anyOf:
        - $ref: '#/components/schemas/TextResponseFormat'
        - $ref: '#/components/schemas/JSONSchemaResponseFormat'
        - $ref: '#/components/schemas/JSONObjectResponseFormat'
    CompoundFilter:
      type: object
      properties:
        type:
          enum:
            - and
            - or
          type: string
        filters:
          type: array
          items:
            anyOf:
              - $ref: '#/components/schemas/ComparisonFilter'
              - $ref: '#/components/schemas/CompoundFilter'
      required:
        - type
        - filters
    WebSearchFilters:
      type: object
      properties:
        allowed_domains:
          type: array
          items:
            type: string
          default: []
    UserLocation:
      type: object
      properties:
        type:
          const: approximate
          default: approximate
        city:
          type: string
        country:
          type: string
        region:
          type: string
        timezone:
          type: string
    MCPToolFilter:
      type: object
      properties:
        read_only:
          type: boolean
        tool_names:
          type: array
          items:
            type: string
    MCPToolApprovalFilter:
      type: object
      properties:
        always:
          $ref: '#/components/schemas/MCPToolFilter'
        never:
          $ref: '#/components/schemas/MCPToolFilter'
    CodeInterpreterContainerAuto:
      type: object
      properties:
        type:
          const: auto
        file_ids:
          anyOf:
            - type: array
              items:
                type: string
            - type: 'null'
        memory_limit:
          anyOf:
            - enum:
                - 1g
                - 4g
                - 16g
                - 64g
              type: string
            - type: 'null'
      required:
        - type
    InputImageMask:
      type: object
      properties:
        file_id:
          type: string
        image_url:
          type: string
    ShellEnvironment:
      anyOf:
        - $ref: '#/components/schemas/ShellEnvironmentContainerAuto'
        - $ref: '#/components/schemas/ShellEnvironmentContainerReference'
      discriminator:
        propertyName: type
        mapping:
          container_auto:
            $ref: '#/components/schemas/ShellEnvironmentContainerAuto'
          container_reference:
            $ref: '#/components/schemas/ShellEnvironmentContainerReference'
    CustomToolFormat:
      anyOf:
        - $ref: '#/components/schemas/TextFormat'
        - $ref: '#/components/schemas/GrammarFormat'
    ToolChoiceMode:
      enum:
        - none
        - auto
        - required
      type: string
      title: Tool choice mode
      description: >-
        Modo de elección de herramientas: Selecciona cómo el modelo decide el
        uso de herramientas. Usa ninguno, automático o requerido.
    AllowedTools:
      type: object
      properties:
        type:
          const: allowed_tools
        mode:
          enum:
            - auto
            - required
          type: string
        tools:
          type: array
          items:
            type: object
            properties:
              type:
                type: string
              name:
                type: string
              server_label:
                type: string
            required:
              - type
      required:
        - type
        - mode
        - tools
      title: Allowed tools tool choice
      description: >-
        Herramientas permitidas elección de herramientas: Restringe el uso de
        herramientas a una lista proporcionada y establece si el uso de
        herramientas es opcional (automático) o obligatorio (requerido).
    HostedToolChoice:
      type: object
      properties:
        type:
          enum:
            - file_search
            - web_search_preview
            - computer_use_preview
            - code_interpreter
            - image_generation
          type: string
      required:
        - type
      title: Hosted tool choice
      description: >-
        Elección de herramienta alojada: Obliga a utilizar un tipo específico de
        herramienta alojada incorporada.
    FunctionToolChoice:
      type: object
      properties:
        type:
          const: function
        name:
          type: string
      required:
        - type
        - name
      title: Function tool choice
      description: >-
        Elección de herramienta de función: Obliga a una herramienta de función
        específica por nombre.
    MCPToolChoice:
      type: object
      properties:
        type:
          const: mcp
        server_label:
          type: string
        name:
          type: string
      required:
        - type
        - server_label
      title: MCP tool choice
      description: >-
        Elección de herramienta MCP: Fuerza un servidor MCP, opcionalmente
        limitado a un nombre de herramienta MCP específico.
    CustomToolChoice:
      type: object
      properties:
        type:
          const: custom
        name:
          type: string
      required:
        - type
        - name
      title: Custom tool choice
      description: >-
        Elección de herramienta personalizada: Fuerza una herramienta
        personalizada específica por nombre.
    InputTokensDetails:
      type: object
      properties:
        cached_tokens:
          type: integer
          minimum: 0
          maximum: 9007199254740991
      required:
        - cached_tokens
    OutputTokensDetails:
      type: object
      properties:
        reasoning_tokens:
          type: integer
          minimum: 0
          maximum: 9007199254740991
      required:
        - reasoning_tokens
    OutputText:
      type: object
      properties:
        type:
          const: output_text
          description: El identificador de tipo de contenido para la salida de texto.
        text:
          type: string
          description: El contenido de texto generado por el modelo.
        annotations:
          type: array
          items:
            anyOf:
              - $ref: '#/components/schemas/FileCitation'
              - $ref: '#/components/schemas/URLCitation'
              - $ref: '#/components/schemas/ContainerFileCitation'
              - $ref: '#/components/schemas/FilePath'
          default: []
          description: >-
            Array de anotaciones que proporcionan citas y referencias para el
            texto. Se utiliza para atribuir fuentes y referenciar archivos
            mencionados en la salida.
        logprobs:
          type: array
          items:
            $ref: '#/components/schemas/LogProb'
      required:
        - type
        - text
      description: >-
        Contenido del texto generado por el modelo con anotaciones opcionales
        para citas y referencias de archivos.
    Refusal:
      type: object
      properties:
        type:
          const: refusal
          description: >-
            El identificador de tipo de contenido para las respuestas de
            rechazo.
        refusal:
          type: string
          description: >-
            El mensaje de rechazo que explica por qué el modelo se negó a
            responder a la solicitud.
      required:
        - type
        - refusal
      description: >-
        Respuesta de rechazo cuando el modelo se niega a responder debido a
        políticas de seguridad, moderación de contenido o limitaciones de
        capacidad.
    ReasoningText:
      type: object
      properties:
        type:
          const: reasoning_text
        text:
          type: string
      required:
        - type
        - text
    LogProbToken:
      type: object
      properties:
        token:
          type: string
        logprob:
          type: number
        bytes:
          type: array
          items:
            type: number
      required:
        - token
        - logprob
    SummaryText:
      type: object
      properties:
        type:
          const: summary_text
        text:
          type: string
      required:
        - type
        - text
    InputMessageContent:
      type: array
      items:
        anyOf:
          - type: string
          - $ref: '#/components/schemas/InputText'
          - $ref: '#/components/schemas/InputImage'
          - $ref: '#/components/schemas/InputFile'
          - $ref: '#/components/schemas/InputAudio'
          - $ref: '#/components/schemas/OutputText'
          - $ref: '#/components/schemas/Refusal'
      description: >-
        Array de elementos de contenido para un mensaje multimodal. Puede
        contener cadenas de texto, objetos de texto, imágenes, archivos, audio o
        bloques de texto de salida de turnos anteriores del asistente.
    Status:
      enum:
        - in_progress
        - completed
        - incomplete
      type: string
      description: >-
        El estado de procesamiento de un artículo individual. 'en_progreso'
        significa que se está procesando actualmente, 'completado' significa que
        se completó exitosamente, 'incompleto' significa que el procesamiento se
        detuvo antes de completarse.
    FileSearchResult:
      type: object
      properties:
        attributes:
          type: object
          propertyNames:
            type: string
          additionalProperties:
            anyOf:
              - type: string
              - type: boolean
              - type: number
        file_id:
          type: string
        filename:
          type: string
        score:
          type: number
        text:
          type: string
    ComputerAction:
      anyOf:
        - $ref: '#/components/schemas/ClickAction'
        - $ref: '#/components/schemas/DoubleClickAction'
        - $ref: '#/components/schemas/DragAction'
        - $ref: '#/components/schemas/KeyPressAction'
        - $ref: '#/components/schemas/MoveAction'
        - $ref: '#/components/schemas/ScreenshotAction'
        - $ref: '#/components/schemas/ScrollAction'
        - $ref: '#/components/schemas/TypeAction'
        - $ref: '#/components/schemas/WaitAction'
    PendingSafetyCheck:
      type: object
      properties:
        code:
          type: string
        id:
          type: string
        message:
          type: string
      required:
        - code
        - id
        - message
    ComputerScreenshot:
      type: object
      properties:
        type:
          const: computer_screenshot
        file_id:
          type: string
        image_url:
          type: string
      required:
        - type
    AcknowledgedSafetyCheck:
      type: object
      properties:
        id:
          type: string
        code:
          type: string
        message:
          type: string
      required:
        - id
    WebSearchAction:
      anyOf:
        - $ref: '#/components/schemas/SearchAction'
        - $ref: '#/components/schemas/OpenPageAction'
        - $ref: '#/components/schemas/FindAction'
    CodeInterpreterOutput:
      anyOf:
        - $ref: '#/components/schemas/CodeInterpreterOutputLogs'
        - $ref: '#/components/schemas/CodeInterpreterOutputImage'
    LocalShellAction:
      type: object
      properties:
        type:
          const: exec
        command:
          type: array
          items:
            type: string
        env:
          type: object
          propertyNames:
            type: string
          additionalProperties:
            type: string
        timeout_ms:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        user:
          type: string
        working_directory:
          type: string
      required:
        - type
        - command
        - env
    ShellCallAction:
      type: object
      properties:
        type:
          const: exec
        command:
          type: string
          description: Comando de shell para ejecutar.
        timeout_ms:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
          description: Tiempo de espera del comando en milisegundos.
        max_output_length:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
          description: Caracteres máximos de salida.
      required:
        - type
    MCPTool:
      type: object
      properties:
        name:
          type: string
        input_schema:
          type: object
          propertyNames:
            type: string
          additionalProperties: {}
        annotations:
          type: object
          propertyNames:
            type: string
          additionalProperties: {}
        description:
          type: string
      required:
        - name
        - input_schema
    TextResponseFormat:
      type: object
      properties:
        type:
          const: text
      required:
        - type
    JSONSchemaResponseFormat:
      type: object
      properties:
        type:
          const: json_schema
        name:
          type: string
          maxLength: 64
          pattern: ^[a-zA-Z0-9_-]+$
        schema:
          type: object
          propertyNames:
            type: string
          additionalProperties: {}
        description:
          type: string
        strict:
          type: boolean
          default: false
      required:
        - type
        - name
        - schema
    JSONObjectResponseFormat:
      type: object
      properties:
        type:
          const: json_object
      required:
        - type
    ShellEnvironmentContainerAuto:
      type: object
      properties:
        type:
          const: container_auto
        network_policy:
          $ref: '#/components/schemas/ShellNetworkPolicy'
          description: Política de red que restringe el acceso saliente.
        skills:
          type: array
          items:
            $ref: '#/components/schemas/SkillEntry'
          description: Habilidades para inyectar en el directorio /skills del contenedor.
        memory_stores:
          type: array
          items:
            $ref: '#/components/schemas/MemoryStoreMount'
          description: Almacenes de memoria para montar en el contenedor bajo /mnt/memory.
      required:
        - type
    ShellEnvironmentContainerReference:
      type: object
      properties:
        type:
          const: container_reference
        container_id:
          type: string
          description: ID de un contenedor existente para reutilizar.
        network_policy:
          $ref: '#/components/schemas/ShellNetworkPolicy'
          description: Política de red que restringe el acceso saliente.
        skills:
          type: array
          items:
            $ref: '#/components/schemas/SkillEntry'
          description: Habilidades para inyectar en el directorio /skills del contenedor.
        memory_stores:
          type: array
          items:
            $ref: '#/components/schemas/MemoryStoreMount'
          description: Almacenes de memoria para montar en el contenedor bajo /mnt/memory.
      required:
        - type
        - container_id
    TextFormat:
      type: object
      properties:
        type:
          const: text
      required:
        - type
    GrammarFormat:
      type: object
      properties:
        type:
          const: grammar
        definition:
          type: string
        syntax:
          enum:
            - lark
            - regex
          type: string
      required:
        - type
        - definition
        - syntax
    FileCitation:
      type: object
      properties:
        type:
          const: file_citation
          description: El identificador de tipo de anotación para citas de archivos.
        file_id:
          type: string
          description: La ID del archivo que se cita.
        filename:
          type: string
          description: El nombre del archivo que se cita.
        index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
          description: >-
            El índice de carácter en el texto de salida donde se aplica esta
            cita.
      required:
        - type
        - file_id
        - filename
        - index
      description: >-
        Anotación para citar un archivo específico en la salida del modelo. Se
        utiliza cuando el modelo hace referencia a información de un archivo.
    URLCitation:
      type: object
      properties:
        type:
          const: url_citation
          description: El identificador de tipo de anotación para citas de URL.
        end_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
          description: El índice de carácter donde termina el texto citado en la salida.
        start_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
          description: El índice de carácter donde comienza el texto citado en la salida.
        title:
          type: string
          description: El título de la página web o recurso que se está citando.
        url:
          type: string
          description: La URL del recurso web que se está citando.
      required:
        - type
        - end_index
        - start_index
        - title
        - url
      description: >-
        Anotación para citar una URL web en la salida del modelo. Se utiliza
        cuando el modelo hace referencia a información de fuentes web.
    ContainerFileCitation:
      type: object
      properties:
        type:
          const: container_file_citation
          description: >-
            El identificador de tipo de anotación para citaciones de archivos
            contenedores.
        container_id:
          type: string
          description: >-
            La ID del contenedor (por ejemplo, contenedor de intérprete de
            código) donde reside el archivo.
        end_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
          description: El índice de carácter donde termina el texto citado en la salida.
        file_id:
          type: string
          description: El ID del archivo dentro del contenedor que se está citando.
        filename:
          type: string
          description: El nombre del archivo que se cita.
        start_index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
          description: El índice de carácter donde comienza el texto citado en la salida.
      required:
        - type
        - container_id
        - end_index
        - file_id
        - filename
        - start_index
      description: >-
        Anotación para citar un archivo dentro de un contenedor específico (como
        un espacio de trabajo de intérprete de código). Se utiliza cuando el
        modelo menciona archivos generados durante ejecuciones de herramientas.
    FilePath:
      type: object
      properties:
        type:
          const: file_path
          description: >-
            El identificador de tipo de anotación para las referencias de ruta
            de archivo.
        file_id:
          type: string
          description: El ID del archivo al que se hace referencia.
        index:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
          description: >-
            El índice de carácter en el texto de salida donde se aplica esta
            referencia de ruta de archivo.
      required:
        - type
        - file_id
        - index
      description: >-
        Anotación para hacer referencia a una ruta de archivo en la salida del
        modelo. Se utiliza cuando el modelo menciona archivos específicos.
    LogProb:
      type: object
      properties:
        token:
          type: string
        logprob:
          type: number
        bytes:
          type: array
          items:
            type: number
        top_logprobs:
          type: array
          items:
            $ref: '#/components/schemas/TopLogProb'
      required:
        - token
        - logprob
        - bytes
        - top_logprobs
    InputText:
      type: object
      properties:
        type:
          const: input_text
          description: El identificador de tipo de contenido para la entrada de texto.
        text:
          type: string
          description: El contenido del texto para enviar al modelo.
      required:
        - type
        - text
      title: Input text content item
      description: >-
        Elemento de contenido de texto de entrada: Texto plano para enviar al
        modelo.
    InputImage:
      type: object
      properties:
        type:
          const: input_image
          description: El identificador de tipo de contenido para la entrada de imagen.
        detail:
          enum:
            - high
            - low
            - auto
          type: string
          default: auto
          description: >-
            El nivel de detalle para el procesamiento de imágenes. 'alto' para
            un análisis detallado (costo más alto), 'bajo' para un análisis
            básico (costo más bajo), 'automático' permite que el modelo elija
            según el tamaño de la imagen. Por defecto, es 'automático'.
        file_id:
          type: string
          description: >-
            La ID de un archivo previamente cargado que contiene la imagen.
            Mutuamente excluyente con image_url.
        image_url:
          type: string
          description: >-
            Una URL o URI de datos que apunta a la imagen. Mutuamente excluyente
            con file_id.
      required:
        - type
      title: Input image content item
      description: >-
        Elemento de contenido de imagen de entrada: Entrada de imagen para
        análisis multimodal. Proporcione ya sea file_id o image_url.
    InputFile:
      type: object
      properties:
        type:
          const: input_file
          description: El identificador de tipo de contenido para la entrada de archivos.
        file_data:
          type: string
          description: >-
            Datos de archivo codificados en Base64 para cargas de archivos en
            línea. Excluyente entre sí con file_id y file_url.
        file_id:
          type: string
          description: >-
            El ID de un archivo previamente cargado. Mutuamente exclusivo con
            file_data y file_url.
        file_url:
          type: string
          description: >-
            Una URL que apunta al archivo a procesar. Mutual exclusive con
            file_data y file_id.
        filename:
          type: string
          description: >-
            El nombre de archivo original para fines de visualización y
            referencia.
      required:
        - type
      title: Input file content item
      description: >-
        Elemento de contenido del archivo de entrada: Entrada de archivo para el
        procesamiento de documentos. Proporcione uno de file_data, file_id o
        file_url.
    InputAudio:
      type: object
      properties:
        type:
          const: input_audio
          description: El identificador de tipo de contenido para la entrada de audio.
        input_audio:
          type: object
          properties:
            data:
              type: string
              description: Datos de audio codificados en Base64 para enviar al modelo.
            format:
              enum:
                - mp3
                - wav
              type: string
              description: >-
                El formato/código de audio. Los formatos admitidos son 'mp3' y
                'wav'.
          required:
            - data
            - format
          description: Los datos de audio y su formato.
      required:
        - type
        - input_audio
      title: Input audio content item
      description: >-
        Elemento de contenido de audio de entrada: Entrada de audio para
        procesamiento de voz y transcripción.
    ClickAction:
      type: object
      properties:
        type:
          const: click
        button:
          enum:
            - left
            - right
            - wheel
            - back
            - forward
          type: string
        x:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        'y':
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
      required:
        - type
        - button
        - x
        - 'y'
    DoubleClickAction:
      type: object
      properties:
        type:
          const: double_click
        x:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        'y':
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
      required:
        - type
        - x
        - 'y'
    DragAction:
      type: object
      properties:
        type:
          const: drag
        path:
          type: array
          items:
            type: object
            properties:
              x:
                type: integer
                minimum: -9007199254740991
                maximum: 9007199254740991
              'y':
                type: integer
                minimum: -9007199254740991
                maximum: 9007199254740991
            required:
              - x
              - 'y'
      required:
        - type
        - path
    KeyPressAction:
      type: object
      properties:
        type:
          const: keypress
        keys:
          type: array
          items:
            type: string
      required:
        - type
        - keys
    MoveAction:
      type: object
      properties:
        type:
          const: move
        x:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        'y':
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
      required:
        - type
        - x
        - 'y'
    ScreenshotAction:
      type: object
      properties:
        type:
          const: screenshot
      required:
        - type
    ScrollAction:
      type: object
      properties:
        type:
          const: scroll
        scroll_x:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        scroll_y:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        x:
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
        'y':
          type: integer
          minimum: -9007199254740991
          maximum: 9007199254740991
      required:
        - type
        - scroll_x
        - scroll_y
        - x
        - 'y'
    TypeAction:
      type: object
      properties:
        type:
          const: type
        text:
          type: string
      required:
        - type
        - text
    WaitAction:
      type: object
      properties:
        type:
          const: wait
      required:
        - type
    SearchAction:
      type: object
      properties:
        type:
          const: search
        query:
          type: string
        sources:
          type: array
          items:
            $ref: '#/components/schemas/SearchActionSource'
      required:
        - type
        - query
    OpenPageAction:
      type: object
      properties:
        type:
          const: open_page
        url:
          type: string
      required:
        - type
        - url
    FindAction:
      type: object
      properties:
        type:
          const: find
        pattern:
          type: string
        url:
          type: string
      required:
        - type
        - pattern
        - url
    CodeInterpreterOutputLogs:
      type: object
      properties:
        type:
          const: logs
        logs:
          type: string
      required:
        - type
        - logs
    CodeInterpreterOutputImage:
      type: object
      properties:
        type:
          const: image
        url:
          type: string
      required:
        - type
        - url
    ShellNetworkPolicy:
      type: object
      properties:
        type:
          const: allowlist
        allowed_domains:
          type: array
          items:
            type: string
          description: Dominios permitidos para el acceso a la red saliente.
        domain_secrets:
          type: array
          items:
            $ref: '#/components/schemas/ShellNetworkPolicyDomainSecret'
          description: Secretos inyectados por dominio.
      required:
        - type
    SkillEntry:
      anyOf:
        - $ref: '#/components/schemas/SkillReference'
        - $ref: '#/components/schemas/PreconfiguredSkillReference'
      discriminator:
        propertyName: type
        mapping:
          skill_reference:
            $ref: '#/components/schemas/SkillReference'
          preconfigured:
            $ref: '#/components/schemas/PreconfiguredSkillReference'
    MemoryStoreMount:
      type: object
      properties:
        store_id:
          type: string
          minLength: 1
          description: ID del almacén de memoria a montar en el contenedor.
        label:
          type: string
          minLength: 1
          maxLength: 64
          pattern: ^(?!\.+$)[A-Za-z0-9._-]+$
          description: Nombre de directorio para esta tienda en /mnt/memory.
        access:
          enum:
            - read_only
            - read_write
          type: string
          default: read_only
          description: Si se puede modificar el almacén de memoria montado.
        description:
          type: string
          maxLength: 2000
          description: Descripción corta opcional de la tienda para el contexto del agente.
        instructions:
          type: string
          maxLength: 4000
          description: >-
            Instrucciones opcionales sobre cómo el agente debe utilizar este
            almacén montado.
      required:
        - store_id
        - label
    TopLogProb:
      type: object
      properties:
        token:
          type: string
        logprob:
          type: number
        bytes:
          type: array
          items:
            type: number
      required:
        - token
        - logprob
        - bytes
    SearchActionSource:
      type: object
      properties:
        type:
          const: url
        url:
          type: string
      required:
        - type
        - url
    ShellNetworkPolicyDomainSecret:
      type: object
      properties:
        domain:
          type: string
          description: El dominio con el que asociar este secreto.
        name:
          type: string
          description: El nombre/placeholder para el secreto (por ejemplo, $API_KEY).
        value:
          type: string
          description: El valor secreto a sustituir.
      required:
        - domain
        - name
        - value
    SkillReference:
      type: object
      properties:
        type:
          const: skill_reference
        skill_id:
          type: string
          description: ID de la habilidad para inyectar en el contenedor.
        version:
          anyOf:
            - type: string
            - type: integer
              minimum: -9007199254740991
              maximum: 9007199254740991
          description: >-
            Número de versión, o 'última' para la versión más reciente. Por
            defecto, se utiliza la versión predeterminada de la habilidad.
      required:
        - type
        - skill_id
    PreconfiguredSkillReference:
      type: object
      properties:
        type:
          const: preconfigured
        name:
          type: string
          description: >-
            Nombre de una habilidad preconfigurada (por ejemplo, 'pdf', 'docx',
            'xlsx', 'pptx').
      required:
        - type
        - name
  securitySchemes:
    bearerAuth:
      type: http
      scheme: bearer
      bearerFormat: API Key
      description: >-
        Gateway auth: send `Authorization: Bearer <mka1-api-key>`. For
        multi-user server-side integrations, you can also send `X-On-Behalf-Of:
        <external-user-id>`.

````