Gemini API

La API de Gemini Interactions es una API experimental que permite a los desarrolladores crear aplicaciones de IA generativa con modelos de Gemini. Gemini es nuestro modelo más capaz, creado desde cero para ser multimodal. Puede generalizar y comprender, operar y combinar sin problemas diferentes tipos de información, como lenguaje, imágenes, audio, video y código. Puedes usar la API de Gemini para casos de uso como el razonamiento en texto e imágenes, la generación de contenido, los agentes de diálogo, los sistemas de resumen y clasificación, y mucho más.

Cómo crear una interacción

post https://generativelanguage.googleapis.com/v1beta/interactions

Crea una interacción nueva.

Cuerpo de la solicitud

El cuerpo de la solicitud contiene datos con la siguiente estructura:

model ModelOption  (opcional)

Es el nombre del `Modelo` que se usó para generar la interacción.
Obligatorio si no se proporciona `agent`.

Valores posibles:

  • gemini-2.5-computer-use-preview-10-2025

    Es un modelo de capacidad de agente diseñado para la interacción directa con la interfaz, que permite que Gemini perciba y navegue por entornos digitales.

  • gemini-2.5-flash

    Nuestro primer modelo de razonamiento híbrido que admite una ventana de contexto de 1 millón de tokens y tiene presupuestos de pensamiento.

  • gemini-2.5-flash-image

    Nuestro modelo de generación de imágenes nativo, optimizado para la velocidad, la flexibilidad y la comprensión contextual. La entrada y salida de texto tienen el mismo precio que 2.5 Flash.

  • gemini-2.5-flash-lite

    Es nuestro modelo más pequeño y rentable, creado para el uso a gran escala.

  • gemini-2.5-flash-lite-preview-09-2025

    Es el modelo más reciente basado en Gemini 2.5 Flash Lite, optimizado para la rentabilidad, la alta capacidad de procesamiento y la alta calidad.

  • gemini-2.5-flash-native-audio-preview-12-2025

    Nuestros modelos de audio nativos están optimizados para obtener salidas de audio de mayor calidad con mejor ritmo, naturalidad de la voz, verbosidad y estado de ánimo.

  • gemini-2.5-flash-preview-09-2025

    Es el modelo más reciente basado en el modelo 2.5 Flash. La versión preliminar de 2.5 Flash es ideal para el procesamiento a gran escala, la baja latencia, las tareas de gran volumen que requieren pensamiento y los casos de uso de agentes.

  • gemini-2.5-flash-preview-tts

    Nuestro modelo de texto a voz 2.5 Flash optimizado para una generación de voz potente, controlable y de baja latencia.

  • gemini-2.5-pro

    Nuestro modelo polivalente de vanguardia, que se destaca en tareas de programación y razonamiento complejo.

  • gemini-2.5-pro-preview-tts

    Nuestro modelo de audio de texto a voz 2.5 Pro está optimizado para la generación de voz potente y de baja latencia, lo que permite obtener resultados más naturales y facilita la dirección de las instrucciones.

  • gemini-3-flash-preview

    Nuestro modelo más inteligente, creado para ofrecer velocidad, que combina inteligencia de vanguardia con capacidades superiores de búsqueda y fundamentación.

  • gemini-3-pro-image-preview

    Modelo de generación y edición de imágenes de vanguardia.

  • gemini-3-pro-preview

    Nuestro modelo más inteligente con comprensión multimodal y razonamiento de vanguardia, y potentes capacidades de programación de agentes y vibe coding.

  • gemini-3.1-pro-preview

    Nuestro modelo de razonamiento de vanguardia más reciente, con una profundidad y un nivel de detalle sin precedentes, y potentes capacidades de comprensión multimodal y programación.

  • gemini-3.1-flash-image-preview

    Inteligencia visual de nivel profesional con eficiencia de velocidad Flash y capacidades de generación fundamentadas en la realidad.

  • gemini-3.1-flash-lite-preview

    Nuestro modelo más rentable, optimizado para tareas de agentes de gran volumen, traducción y procesamiento de datos simple.

  • gemini-3.1-flash-tts-preview

    TTS de Gemini 3.1 Flash: Generación de voz potente y de baja latencia. Disfruta de resultados naturales, instrucciones guiadas y nuevas etiquetas de audio expresivas para un control preciso de la narración.

  • lyria-3-clip-preview

    Nuestro modelo de generación de música de baja latencia optimizado para clips de audio de alta fidelidad y control rítmico preciso.

  • lyria-3-pro-preview

    Nuestro modelo generativo avanzado de canciones completas con una profunda comprensión de la composición, optimizado para un control estructural preciso y transiciones complejas en diversos estilos musicales.

Es el modelo que completará tu instrucción.\n\nConsulta [modelos](https://ai.google.dev/gemini-api/docs/models) para obtener más detalles.

agent AgentOption  (opcional)

Es el nombre del `Agent` que se usó para generar la interacción.
Obligatorio si no se proporciona `model`.

Valores posibles:

  • deep-research-pro-preview-12-2025

    Agente de Deep Research de Gemini

  • deep-research-preview-04-2026

    Agente de Deep Research de Gemini

  • deep-research-max-preview-04-2026

    Agente de Deep Research Max de Gemini

Es el agente con el que se interactuará.

input Content o array (Content) o array (Turn) o cadena  (obligatorio)

Son las entradas de la interacción (comunes tanto para el modelo como para el agente).

system_instruction cadena  (opcional)

Instrucción del sistema para la interacción.

tools array (Tool)  (opcional)

Es una lista de declaraciones de herramientas a las que el modelo puede llamar durante la interacción.

response_format objeto  (opcional)

Aplica que la respuesta generada sea un objeto JSON que cumpla con el esquema JSON especificado en este campo.

response_mime_type cadena  (opcional)

Es el tipo de MIME de la respuesta. Este campo es obligatorio si se establece response_format.

transmisión booleano  (opcional)

Solo entrada. Indica si la interacción se transmitirá.

store boolean  (opcional)

Solo entrada. Indica si se debe almacenar la respuesta y la solicitud para su recuperación posterior.

background boolean  (opcional)

Solo entrada. Indica si se debe ejecutar la interacción del modelo en segundo plano.

generation_config GenerationConfig  (opcional)

Configuración del modelo
Parámetros de configuración para la interacción del modelo.
Es una alternativa a "agent_config". Solo se aplica cuando se establece "model".

Son los parámetros de configuración para las interacciones del modelo.

Campos

temperature número  (opcional)

Controla la aleatoriedad del resultado.

top_p número  (opcional)

Es la probabilidad acumulativa máxima de los tokens que se deben tener en cuenta durante el muestreo.

seed integer  (opcional)

Es la semilla que se usa en la decodificación para la reproducibilidad.

stop_sequences array (cadena)  (opcional)

Es una lista de secuencias de caracteres que detendrán la interacción de salida.

thinking_level ThinkingLevel  (opcional)

Es el nivel de tokens de pensamiento que debe generar el modelo.

Valores posibles:

  • minimal
  • low
  • medium
  • high

thinking_summaries ThinkingSummaries  (opcional)

Indica si se deben incluir resúmenes de pensamiento en la respuesta.

Valores posibles:

  • auto
  • none

max_output_tokens integer  (opcional)

Es la cantidad máxima de tokens que se incluirán en la respuesta.

speech_config SpeechConfig  (opcional)

Es la configuración para la interacción por voz.

Es la configuración de la interacción por voz.

Campos

voice string  (opcional)

La voz del orador.

language cadena  (opcional)

Es el idioma del discurso.

speaker cadena  (opcional)

Nombre del orador, que debe coincidir con el nombre del orador que se indica en la instrucción.

image_config ImageConfig  (opcional)

Es la configuración para la interacción con la imagen.

Es la configuración de la interacción con la imagen.

Campos

aspect_ratio enum (cadena)  (opcional)

No se proporcionó la descripción.

Valores posibles:

  • 1:1
  • 2:3
  • 3:2
  • 3:4
  • 4:3
  • 4:5
  • 5:4
  • 9:16
  • 16:9
  • 21:9
  • 1:8
  • 8:1
  • 1:4
  • 4:1
image_size enum (cadena)  (opcional)

No se proporcionó la descripción.

Valores posibles:

  • 1K
  • 2K
  • 4K
  • 512
tool_choice ToolChoiceConfig o ToolChoiceType  (opcional)

Es la configuración de elección de la herramienta.

agent_config object  (opcional)

Agent Configuration
Es la configuración del agente.
Alternativa a "generation_config". Solo se aplica cuando se configura "agent".

Tipos posibles

Discriminador polimórfico: type

DynamicAgentConfig

Es la configuración para los agentes dinámicos.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "dynamic".

DeepResearchAgentConfig

Es la configuración del agente de Deep Research.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "deep-research".

thinking_summaries ThinkingSummaries  (opcional)

Indica si se deben incluir resúmenes de pensamiento en la respuesta.

Valores posibles:

  • auto
  • none

visualización enum (cadena)  (opcional)

Indica si se deben incluir visualizaciones en la respuesta.

Valores posibles:

  • off
  • auto
collaborative_planning booleano  (opcional)

Habilita la planificación con interacción humana para el agente de Deep Research. Si se establece en verdadero, el agente de Deep Research proporcionará un plan de investigación en su respuesta. Luego, el agente solo continuará si el usuario confirma el plan en el siguiente turno.

previous_interaction_id cadena  (opcional)

ID de la interacción anterior, si corresponde.

response_modalities ResponseModality  (opcional)

Son las modalidades solicitadas de la respuesta (TEXT, IMAGE, AUDIO).

Valores posibles:

  • text
  • image
  • audio
  • video
  • document

service_tier enum (cadena)  (opcional)

Es el nivel de servicio de la interacción.

Valores posibles:

  • flex
  • standard
  • priority

Respuesta

Devuelve un recurso de Interaction.

Solicitud simple

Ejemplo de respuesta

{
  "created": "2025-11-26T12:25:15Z",
  "id": "v1_ChdPU0F4YWFtNkFwS2kxZThQZ05lbXdROBIXT1NBeGFhbTZBcEtpMWU4UGdOZW13UTg",
  "model": "gemini-3-flash-preview",
  "object": "interaction",
  "outputs": [
    {
      "text": "Hello! I'm functioning perfectly and ready to assist you.\n\nHow are you doing today?",
      "type": "text"
    }
  ],
  "role": "model",
  "status": "completed",
  "updated": "2025-11-26T12:25:15Z",
  "usage": {
    "input_tokens_by_modality": [
      {
        "modality": "text",
        "tokens": 7
      }
    ],
    "total_cached_tokens": 0,
    "total_input_tokens": 7,
    "total_output_tokens": 20,
    "total_thought_tokens": 22,
    "total_tokens": 49,
    "total_tool_use_tokens": 0
  }
}

Varios turnos

Ejemplo de respuesta

{
  "id": "v1_ChdPU0F4YWFtNkFwS2kxZThQZ05lbXdROBIXT1NBeGFhbTZBcEtpMWU4UGdOZW13UTg",
  "model": "gemini-3-flash-preview",
  "status": "completed",
  "object": "interaction",
  "created": "2025-11-26T12:22:47Z",
  "updated": "2025-11-26T12:22:47Z",
  "role": "model",
  "outputs": [
    {
      "type": "text",
      "text": "The capital of France is Paris."
    }
  ],
  "usage": {
    "input_tokens_by_modality": [
      {
        "modality": "text",
        "tokens": 50
      }
    ],
    "total_cached_tokens": 0,
    "total_input_tokens": 50,
    "total_output_tokens": 10,
    "total_thought_tokens": 0,
    "total_tokens": 60,
    "total_tool_use_tokens": 0
  }
}

Entrada de imagen

Ejemplo de respuesta

{
  "id": "v1_ChdPU0F4YWFtNkFwS2kxZThQZ05lbXdROBIXT1NBeGFhbTZBcEtpMWU4UGdOZW13UTg",
  "model": "gemini-3-flash-preview",
  "status": "completed",
  "object": "interaction",
  "created": "2025-11-26T12:22:47Z",
  "updated": "2025-11-26T12:22:47Z",
  "role": "model",
  "outputs": [
    {
      "type": "text",
      "text": "A white humanoid robot with glowing blue eyes stands holding a red skateboard."
    }
  ],
  "usage": {
    "input_tokens_by_modality": [
      {
        "modality": "text",
        "tokens": 10
      },
      {
        "modality": "image",
        "tokens": 258
      }
    ],
    "total_cached_tokens": 0,
    "total_input_tokens": 268,
    "total_output_tokens": 20,
    "total_thought_tokens": 0,
    "total_tokens": 288,
    "total_tool_use_tokens": 0
  }
}

Llamada a función

Ejemplo de respuesta

{
  "id": "v1_ChdPU0F4YWFtNkFwS2kxZThQZ05lbXdROBIXT1NBeGFhbTZBcEtpMWU4UGdOZW13UTg",
  "model": "gemini-3-flash-preview",
  "status": "requires_action",
  "object": "interaction",
  "created": "2025-11-26T12:22:47Z",
  "updated": "2025-11-26T12:22:47Z",
  "role": "model",
  "outputs": [
    {
      "type": "function_call",
      "id": "gth23981",
      "name": "get_weather",
      "arguments": {
        "location": "Boston, MA"
      }
    }
  ],
  "usage": {
    "input_tokens_by_modality": [
      {
        "modality": "text",
        "tokens": 100
      }
    ],
    "total_cached_tokens": 0,
    "total_input_tokens": 100,
    "total_output_tokens": 25,
    "total_thought_tokens": 0,
    "total_tokens": 125,
    "total_tool_use_tokens": 50
  }
}

Deep Research

Ejemplo de respuesta

{
  "id": "v1_ChdPU0F4YWFtNkFwS2kxZThQZ05lbXdROBIXT1NBeGFhbTZBcEtpMWU4UGdOZW13UTg",
  "agent": "deep-research-pro-preview-12-2025",
  "status": "completed",
  "object": "interaction",
  "created": "2025-11-26T12:22:47Z",
  "updated": "2025-11-26T12:22:47Z",
  "role": "agent",
  "outputs": [
    {
      "type": "text",
      "text": "Here is a comprehensive research report on the current state of cancer research..."
    }
  ],
  "usage": {
    "input_tokens_by_modality": [
      {
        "modality": "text",
        "tokens": 20
      }
    ],
    "total_cached_tokens": 0,
    "total_input_tokens": 20,
    "total_output_tokens": 1000,
    "total_thought_tokens": 500,
    "total_tokens": 1520,
    "total_tool_use_tokens": 0
  }
}

Cómo recuperar una interacción

get https://generativelanguage.googleapis.com/v1beta/interactions/{id}

Recupera los detalles completos de una sola interacción según su `Interaction.id`.

Parámetros de ruta de acceso o de consulta

id cadena  (obligatorio)

Es el identificador único de la interacción que se recuperará.

transmisión booleano  (opcional)

Si se establece como verdadero, el contenido generado se transmitirá de forma incremental.

Valor predeterminado: False

last_event_id string  (opcional)

Opcional. Si se configura, reanuda el flujo de interacción desde el siguiente fragmento después del evento marcado por el ID del evento. Solo se puede usar si "stream" es verdadero.

include_input booleano  (opcional)

Si se establece como verdadero, incluye la entrada en la respuesta.

Valor predeterminado: False

api_version cadena  (opcional)

Indica qué versión de la API se debe usar.

Respuesta

Devuelve un recurso de Interaction.

Obtener interacción

Ejemplo de respuesta

{
  "id": "v1_ChdPU0F4YWFtNkFwS2kxZThQZ05lbXdROBIXT1NBeGFhbTZBcEtpMWU4UGdOZW13UTg",
  "model": "gemini-3-flash-preview",
  "status": "completed",
  "object": "interaction",
  "created": "2025-11-26T12:25:15Z",
  "updated": "2025-11-26T12:25:15Z",
  "role": "model",
  "outputs": [
    {
      "type": "text",
      "text": "I'm doing great, thank you for asking! How can I help you today?"
    }
  ]
}

Cómo borrar una interacción

delete https://generativelanguage.googleapis.com/v1beta/interactions/{id}

Borra la interacción por ID.

Parámetros de ruta de acceso o de consulta

id cadena  (obligatorio)

Es el identificador único de la interacción que se borrará.

api_version cadena  (opcional)

Indica qué versión de la API se debe usar.

Respuesta

Si se ejecuta correctamente, la respuesta estará vacía.

Borrar interacción

Cómo cancelar una interacción

post https://generativelanguage.googleapis.com/v1beta/interactions/{id}/cancel

Cancela una interacción por ID. Esto solo se aplica a las interacciones en segundo plano que aún se están ejecutando.

Parámetros de ruta de acceso o de consulta

id cadena  (obligatorio)

Es el identificador único de la interacción que se cancelará.

api_version cadena  (opcional)

Indica qué versión de la API se debe usar.

Respuesta

Devuelve un recurso de Interaction.

Cancelar interacción

Ejemplo de respuesta

{
  "id": "v1_ChdPU0F4YWFtNkFwS2kxZThQZ05lbXdROBIXT1NBeGFhbTZBcEtpMWU4UGdOZW13UTg",
  "agent": "deep-research-pro-preview-12-2025",
  "status": "cancelled",
  "object": "interaction",
  "created": "2025-11-26T12:25:15Z",
  "updated": "2025-11-26T12:25:15Z",
  "role": "agent"
}

Recursos

Interacción

Es el recurso Interaction.

Campos

model ModelOption  (opcional)

Es el nombre del `Modelo` que se usó para generar la interacción.

Valores posibles:

  • gemini-2.5-computer-use-preview-10-2025

    Es un modelo de capacidad de agente diseñado para la interacción directa con la interfaz, que permite que Gemini perciba y navegue por entornos digitales.

  • gemini-2.5-flash

    Nuestro primer modelo de razonamiento híbrido que admite una ventana de contexto de 1 millón de tokens y tiene presupuestos de pensamiento.

  • gemini-2.5-flash-image

    Nuestro modelo de generación de imágenes nativo, optimizado para la velocidad, la flexibilidad y la comprensión contextual. La entrada y salida de texto tienen el mismo precio que 2.5 Flash.

  • gemini-2.5-flash-lite

    Es nuestro modelo más pequeño y rentable, creado para el uso a gran escala.

  • gemini-2.5-flash-lite-preview-09-2025

    Es el modelo más reciente basado en Gemini 2.5 Flash Lite, optimizado para la rentabilidad, la alta capacidad de procesamiento y la alta calidad.

  • gemini-2.5-flash-native-audio-preview-12-2025

    Nuestros modelos de audio nativos están optimizados para obtener salidas de audio de mayor calidad con mejor ritmo, naturalidad de la voz, verbosidad y estado de ánimo.

  • gemini-2.5-flash-preview-09-2025

    Es el modelo más reciente basado en el modelo 2.5 Flash. La versión preliminar de 2.5 Flash es ideal para el procesamiento a gran escala, la baja latencia, las tareas de gran volumen que requieren pensamiento y los casos de uso de agentes.

  • gemini-2.5-flash-preview-tts

    Nuestro modelo de texto a voz 2.5 Flash optimizado para una generación de voz potente, controlable y de baja latencia.

  • gemini-2.5-pro

    Nuestro modelo polivalente de vanguardia, que se destaca en tareas de programación y razonamiento complejo.

  • gemini-2.5-pro-preview-tts

    Nuestro modelo de audio de texto a voz 2.5 Pro está optimizado para la generación de voz potente y de baja latencia, lo que permite obtener resultados más naturales y facilita la dirección de las instrucciones.

  • gemini-3-flash-preview

    Nuestro modelo más inteligente, creado para ofrecer velocidad, que combina inteligencia de vanguardia con capacidades superiores de búsqueda y fundamentación.

  • gemini-3-pro-image-preview

    Modelo de generación y edición de imágenes de vanguardia.

  • gemini-3-pro-preview

    Nuestro modelo más inteligente con comprensión multimodal y razonamiento de vanguardia, y potentes capacidades de programación de agentes y vibe coding.

  • gemini-3.1-pro-preview

    Nuestro modelo de razonamiento de vanguardia más reciente, con una profundidad y un nivel de detalle sin precedentes, y potentes capacidades de comprensión multimodal y programación.

  • gemini-3.1-flash-image-preview

    Inteligencia visual de nivel profesional con eficiencia de velocidad Flash y capacidades de generación fundamentadas en la realidad.

  • gemini-3.1-flash-lite-preview

    Nuestro modelo más rentable, optimizado para tareas de agentes de gran volumen, traducción y procesamiento de datos simple.

  • gemini-3.1-flash-tts-preview

    TTS de Gemini 3.1 Flash: Generación de voz potente y de baja latencia. Disfruta de resultados naturales, instrucciones guiadas y nuevas etiquetas de audio expresivas para un control preciso de la narración.

  • lyria-3-clip-preview

    Nuestro modelo de generación de música de baja latencia optimizado para clips de audio de alta fidelidad y control rítmico preciso.

  • lyria-3-pro-preview

    Nuestro modelo generativo avanzado de canciones completas con una profunda comprensión de la composición, optimizado para un control estructural preciso y transiciones complejas en diversos estilos musicales.

Es el modelo que completará tu instrucción.\n\nConsulta [modelos](https://ai.google.dev/gemini-api/docs/models) para obtener más detalles.

agent AgentOption  (opcional)

Es el nombre del `Agent` que se usó para generar la interacción.

Valores posibles:

  • deep-research-pro-preview-12-2025

    Agente de Deep Research de Gemini

  • deep-research-preview-04-2026

    Agente de Deep Research de Gemini

  • deep-research-max-preview-04-2026

    Agente de Deep Research Max de Gemini

Es el agente con el que se interactuará.

id cadena  (opcional)

Obligatorio. Solo salida. Es un identificador único para la finalización de la interacción.

status enum (cadena)  (opcional)

Obligatorio. Solo salida. Es el estado de la interacción.

Valores posibles:

  • in_progress
  • requires_action
  • completed
  • failed
  • cancelled
  • incomplete
created cadena  (opcional)

Obligatorio. Solo salida. Fecha y hora en que se creó la respuesta en formato ISO 8601 (AAAA-MM-DDThh:mm:ssZ).

updated string  (opcional)

Obligatorio. Solo salida. Fecha y hora en que se actualizó por última vez la respuesta en formato ISO 8601 (AAAA-MM-DDThh:mm:ssZ).

role cadena  (opcional)

Solo salida. Es el rol de la interacción.

outputs array (Content)  (opcional)

Solo salida. Son las respuestas del modelo.

system_instruction cadena  (opcional)

Instrucción del sistema para la interacción.

tools array (Tool)  (opcional)

Es una lista de declaraciones de herramientas a las que el modelo puede llamar durante la interacción.

usage Usage  (opcional)

Solo salida. Son las estadísticas sobre el uso de tokens de la solicitud de interacción.

Son las estadísticas sobre el uso de tokens de la solicitud de interacción.

Campos

total_input_tokens integer  (opcional)

Cantidad de tokens en la instrucción (contexto).

input_tokens_by_modality ModalityTokens  (opcional)

Es un desglose del uso de tokens de entrada por modalidad.

Es el recuento de tokens para una sola modalidad de respuesta.

Campos

modalidad ResponseModality  (opcional)

Es la modalidad asociada con el recuento de tokens.

Valores posibles:

  • text
  • image
  • audio
  • video
  • document

tokens integer  (opcional)

Cantidad de tokens para la modalidad.

total_cached_tokens integer  (opcional)

Cantidad de tokens en la parte almacenada en caché de la instrucción (el contenido almacenado en caché).

cached_tokens_by_modality ModalityTokens  (opcional)

Es un desglose del uso de tokens almacenados en caché por modalidad.

Es el recuento de tokens para una sola modalidad de respuesta.

Campos

modalidad ResponseModality  (opcional)

Es la modalidad asociada con el recuento de tokens.

Valores posibles:

  • text
  • image
  • audio
  • video
  • document

tokens integer  (opcional)

Cantidad de tokens para la modalidad.

total_output_tokens integer  (opcional)

Es la cantidad total de tokens en todas las respuestas generadas.

output_tokens_by_modality ModalityTokens  (opcional)

Es un desglose del uso de tokens de salida por modalidad.

Es el recuento de tokens para una sola modalidad de respuesta.

Campos

modalidad ResponseModality  (opcional)

Es la modalidad asociada con el recuento de tokens.

Valores posibles:

  • text
  • image
  • audio
  • video
  • document

tokens integer  (opcional)

Cantidad de tokens para la modalidad.

total_tool_use_tokens integer  (opcional)

Cantidad de tokens presentes en las instrucciones de uso de herramientas.

tool_use_tokens_by_modality ModalityTokens  (opcional)

Es un desglose del uso de tokens de uso de herramientas por modalidad.

Es el recuento de tokens para una sola modalidad de respuesta.

Campos

modalidad ResponseModality  (opcional)

Es la modalidad asociada con el recuento de tokens.

Valores posibles:

  • text
  • image
  • audio
  • video
  • document

tokens integer  (opcional)

Cantidad de tokens para la modalidad.

total_thought_tokens integer  (opcional)

Cantidad de tokens de pensamientos para los modelos de razonamiento.

total_tokens integer  (opcional)

Es el recuento total de tokens para la solicitud de interacción (instrucción + respuestas + otros tokens internos).

response_modalities ResponseModality  (opcional)

Son las modalidades solicitadas de la respuesta (TEXT, IMAGE, AUDIO).

Valores posibles:

  • text
  • image
  • audio
  • video
  • document

response_format objeto  (opcional)

Aplica que la respuesta generada sea un objeto JSON que cumpla con el esquema JSON especificado en este campo.

response_mime_type cadena  (opcional)

Es el tipo de MIME de la respuesta. Este campo es obligatorio si se establece response_format.

previous_interaction_id cadena  (opcional)

ID de la interacción anterior, si corresponde.

service_tier enum (cadena)  (opcional)

Es el nivel de servicio de la interacción.

Valores posibles:

  • flex
  • standard
  • priority
input Content o array (Content) o array (Turn) o cadena  (opcional)

Es la entrada para la interacción.

agent_config object  (opcional)

Son los parámetros de configuración para la interacción del agente.

Tipos posibles

Discriminador polimórfico: type

DynamicAgentConfig

Es la configuración para los agentes dinámicos.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "dynamic".

DeepResearchAgentConfig

Es la configuración del agente de Deep Research.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "deep-research".

thinking_summaries ThinkingSummaries  (opcional)

Indica si se deben incluir resúmenes de pensamiento en la respuesta.

Valores posibles:

  • auto
  • none

visualización enum (cadena)  (opcional)

Indica si se deben incluir visualizaciones en la respuesta.

Valores posibles:

  • off
  • auto
collaborative_planning booleano  (opcional)

Habilita la planificación con interacción humana para el agente de Deep Research. Si se configura como verdadero, el agente de Deep Research proporcionará un plan de investigación en su respuesta. Luego, el agente solo continuará si el usuario confirma el plan en el siguiente turno.

Ejemplos

Ejemplo

{
  "created": "2025-12-04T15:01:45Z",
  "id": "v1_ChdXS0l4YWZXTk9xbk0xZThQczhEcmlROBIXV0tJeGFmV05PcW5NMWU4UHM4RHJpUTg",
  "model": "gemini-3-flash-preview",
  "object": "interaction",
  "outputs": [
    {
      "text": "Hello! I'm doing well, functioning as expected. Thank you for asking! How are you doing today?",
      "type": "text"
    }
  ],
  "role": "model",
  "status": "completed",
  "updated": "2025-12-04T15:01:45Z",
  "usage": {
    "input_tokens_by_modality": [
      {
        "modality": "text",
        "tokens": 7
      }
    ],
    "total_cached_tokens": 0,
    "total_input_tokens": 7,
    "total_output_tokens": 23,
    "total_thought_tokens": 49,
    "total_tokens": 79,
    "total_tool_use_tokens": 0
  }
}

Modelos de datos

Contenido

Es el contenido de la respuesta.

Tipos posibles

Discriminador polimórfico: type

TextContent

Es un bloque de contenido de texto.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "text".

text cadena  (obligatorio)

Obligatorio. Es el contenido de texto.

anotaciones Annotation  (opcional)

Es la información de citas para el contenido generado por el modelo.

Es la información de citas para el contenido generado por el modelo.

Tipos posibles

Discriminador polimórfico: type

UrlCitation

Es una anotación de cita de URL.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "url_citation".

url cadena  (opcional)

Es la URL.

title cadena  (opcional)

Es el título de la URL.

start_index integer  (opcional)

Es el inicio del segmento de la respuesta que se atribuye a esta fuente. El índice indica el inicio del segmento, medido en bytes.

end_index integer  (opcional)

Es el final del segmento atribuido, exclusivo.

FileCitation

Es una anotación de cita de archivo.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "file_citation".

document_uri cadena  (opcional)

Es el URI del archivo.

file_name cadena  (opcional)

Es el nombre del archivo.

source cadena  (opcional)

Es la fuente atribuida a una parte del texto.

start_index integer  (opcional)

Es el inicio del segmento de la respuesta que se atribuye a esta fuente. El índice indica el inicio del segmento, medido en bytes.

end_index integer  (opcional)

Es el final del segmento atribuido, exclusivo.

PlaceCitation

Es una anotación de cita de lugar.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "place_citation".

place_id cadena  (opcional)

Es el ID del lugar, en formato `places/{place_id}`.

name string  (opcional)

Título del lugar.

url cadena  (opcional)

Es la referencia URI del lugar.

review_snippets ReviewSnippet  (opcional)

Son fragmentos de opiniones que se usan para generar respuestas sobre las características de un lugar determinado en Google Maps.

Encapsula un fragmento de una opinión del usuario que responde una pregunta sobre las características de un lugar específico en Google Maps.

Campos

title cadena  (opcional)

Es el título de la opinión.

url cadena  (opcional)

Es un vínculo que corresponde a la opinión del usuario en Google Maps.

review_id cadena  (opcional)

Es el ID del fragmento de opinión.

start_index integer  (opcional)

Es el inicio del segmento de la respuesta que se atribuye a esta fuente. El índice indica el inicio del segmento, medido en bytes.

end_index integer  (opcional)

Es el final del segmento atribuido, exclusivo.

ImageContent

Es un bloque de contenido de imagen.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "image".

data cadena  (opcional)

Es el contenido de la imagen.

uri cadena  (opcional)

El URI de la imagen.

mime_type enum (cadena)  (opcional)

Es el tipo de MIME de la imagen.

Valores posibles:

  • image/png
  • image/jpeg
  • image/webp
  • image/heic
  • image/heif
  • image/gif
  • image/bmp
  • image/tiff
resolution MediaResolution  (opcional)

Resolución del contenido multimedia.

Valores posibles:

  • low
  • medium
  • high
  • ultra_high

AudioContent

Es un bloque de contenido de audio.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "audio".

data cadena  (opcional)

Es el contenido de audio.

uri cadena  (opcional)

Es el URI del audio.

mime_type enum (cadena)  (opcional)

Tipo MIME del audio.

Valores posibles:

  • audio/wav
  • audio/mp3
  • audio/aiff
  • audio/aac
  • audio/ogg
  • audio/flac
  • audio/mpeg
  • audio/m4a
  • audio/l16
  • audio/opus
  • audio/alaw
  • audio/mulaw
rate integer  (opcional)

Es la frecuencia de muestreo del audio.

channels integer  (opcional)

Es la cantidad de canales de audio.

DocumentContent

Es un bloque de contenido de un documento.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "document".

data cadena  (opcional)

Es el contenido del documento.

uri cadena  (opcional)

Es el URI del documento.

mime_type enum (cadena)  (opcional)

Es el tipo MIME del documento.

Valores posibles:

  • application/pdf
VideoContent

Es un bloque de contenido de video.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "video".

data cadena  (opcional)

Es el contenido del video.

uri cadena  (opcional)

Es el URI del video.

mime_type enum (cadena)  (opcional)

Es el tipo de MIME del video.

Valores posibles:

  • video/mp4
  • video/mpeg
  • video/mpg
  • video/mov
  • video/avi
  • video/x-flv
  • video/webm
  • video/wmv
  • video/3gpp
resolution MediaResolution  (opcional)

Resolución del contenido multimedia.

Valores posibles:

  • low
  • medium
  • high
  • ultra_high

ThoughtContent

Es un bloque de contenido de pensamiento.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "thought".

signature string  (opcional)

Firma para que coincida con la fuente del backend que formará parte de la generación.

summary ThoughtSummaryContent  (opcional)

Un resumen del pensamiento

Tipos posibles

Discriminador polimórfico: type

TextContent

Es un bloque de contenido de texto.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "text".

text cadena  (obligatorio)

Obligatorio. Es el contenido de texto.

anotaciones Annotation  (opcional)

Es la información de citas para el contenido generado por el modelo.

Es la información de citas para el contenido generado por el modelo.

Tipos posibles

Discriminador polimórfico: type

UrlCitation

Es una anotación de cita de URL.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "url_citation".

url cadena  (opcional)

Es la URL.

title cadena  (opcional)

Es el título de la URL.

start_index integer  (opcional)

Es el inicio del segmento de la respuesta que se atribuye a esta fuente. El índice indica el inicio del segmento, medido en bytes.

end_index integer  (opcional)

Es el final del segmento atribuido, exclusivo.

FileCitation

Es una anotación de cita de archivo.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "file_citation".

document_uri cadena  (opcional)

Es el URI del archivo.

file_name cadena  (opcional)

Es el nombre del archivo.

source cadena  (opcional)

Es la fuente atribuida a una parte del texto.

start_index integer  (opcional)

Es el inicio del segmento de la respuesta que se atribuye a esta fuente. El índice indica el inicio del segmento, medido en bytes.

end_index integer  (opcional)

Es el final del segmento atribuido, exclusivo.

PlaceCitation

Es una anotación de cita de lugar.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "place_citation".

place_id cadena  (opcional)

Es el ID del lugar, en formato `places/{place_id}`.

name string  (opcional)

Título del lugar.

url cadena  (opcional)

Es la referencia URI del lugar.

review_snippets ReviewSnippet  (opcional)

Son fragmentos de opiniones que se usan para generar respuestas sobre las características de un lugar determinado en Google Maps.

Encapsula un fragmento de una opinión del usuario que responde una pregunta sobre las características de un lugar específico en Google Maps.

Campos

title cadena  (opcional)

Es el título de la opinión.

url cadena  (opcional)

Es un vínculo que corresponde a la opinión del usuario en Google Maps.

review_id cadena  (opcional)

Es el ID del fragmento de opinión.

start_index integer  (opcional)

Es el inicio del segmento de la respuesta que se atribuye a esta fuente. El índice indica el inicio del segmento, medido en bytes.

end_index integer  (opcional)

Es el final del segmento atribuido, exclusivo.

ImageContent

Es un bloque de contenido de imagen.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "image".

data cadena  (opcional)

Es el contenido de la imagen.

uri cadena  (opcional)

El URI de la imagen.

mime_type enum (cadena)  (opcional)

Es el tipo de MIME de la imagen.

Valores posibles:

  • image/png
  • image/jpeg
  • image/webp
  • image/heic
  • image/heif
  • image/gif
  • image/bmp
  • image/tiff
resolution MediaResolution  (opcional)

Resolución del contenido multimedia.

Valores posibles:

  • low
  • medium
  • high
  • ultra_high

FunctionCallContent

Es un bloque de contenido de llamada a herramienta de función.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "function_call".

name cadena  (obligatorio)

Obligatorio. Es el nombre de la herramienta a la que se llamará.

arguments objeto  (obligatorio)

Obligatorio. Son los argumentos que se pasarán a la función.

id cadena  (obligatorio)

Obligatorio. Es un ID único para esta llamada a herramienta específica.

signature string  (opcional)

Es un hash de firma para la validación de backend.

CodeExecutionCallContent

Contenido de ejecución de código.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "code_execution_call".

arguments CodeExecutionCallArguments  (obligatorio)

Obligatorio. Son los argumentos que se pasarán a la ejecución del código.

Son los argumentos que se pasarán a la ejecución del código.

Campos

language enum (cadena)  (opcional)

Lenguaje de programación del `código`.

Valores posibles:

  • python
code string  (opcional)

Es el código que se ejecutará.

id cadena  (obligatorio)

Obligatorio. Es un ID único para esta llamada a herramienta específica.

signature string  (opcional)

Es un hash de firma para la validación de backend.

UrlContextCallContent

Es el contenido del contexto de la URL.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "url_context_call".

arguments UrlContextCallArguments  (obligatorio)

Obligatorio. Argumentos para pasar al contexto de la URL.

Argumentos para pasar al contexto de la URL.

Campos

urls array (string)  (opcional)

URLs que se recuperarán.

id cadena  (obligatorio)

Obligatorio. Es un ID único para esta llamada a herramienta específica.

signature string  (opcional)

Es un hash de firma para la validación de backend.

McpServerToolCallContent

Es el contenido de la llamada a la herramienta de MCPServer.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "mcp_server_tool_call".

name cadena  (obligatorio)

Obligatorio. Es el nombre de la herramienta a la que se llamó.

server_name cadena  (obligatorio)

Obligatorio. Es el nombre del servidor de MCP que se usó.

arguments objeto  (obligatorio)

Obligatorio. Objeto JSON de argumentos para la función.

id cadena  (obligatorio)

Obligatorio. Es un ID único para esta llamada a herramienta específica.

signature string  (opcional)

Es un hash de firma para la validación de backend.

GoogleSearchCallContent

Contenido de la Búsqueda de Google

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "google_search_call".

arguments GoogleSearchCallArguments  (obligatorio)

Obligatorio. Son los argumentos que se pasarán a la Búsqueda de Google.

Son los argumentos que se pasarán a la Búsqueda de Google.

Campos

queries array (string)  (opcional)

Son las búsquedas web para la búsqueda web de seguimiento.

search_type enum (cadena)  (opcional)

Es el tipo de fundamentación de la búsqueda habilitada.

Valores posibles:

  • web_search
  • image_search
  • enterprise_web_search
id cadena  (obligatorio)

Obligatorio. Es un ID único para esta llamada a herramienta específica.

signature string  (opcional)

Es un hash de firma para la validación de backend.

FileSearchCallContent

Contenido de la Búsqueda de archivos

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "file_search_call".

id cadena  (obligatorio)

Obligatorio. Es un ID único para esta llamada a herramienta específica.

signature string  (opcional)

Es un hash de firma para la validación de backend.

GoogleMapsCallContent

Contenido de Google Maps.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "google_maps_call".

arguments GoogleMapsCallArguments  (opcional)

Son los argumentos que se pasarán a la herramienta de Google Maps.

Son los argumentos que se pasarán a la herramienta de Google Maps.

Campos

queries array (string)  (opcional)

Consultas que se ejecutarán.

id cadena  (obligatorio)

Obligatorio. Es un ID único para esta llamada a herramienta específica.

signature string  (opcional)

Es un hash de firma para la validación de backend.

FunctionResultContent

Es un bloque de contenido del resultado de una herramienta de función.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "function_result".

name string  (opcional)

Es el nombre de la herramienta a la que se llamó.

is_error boolean  (opcional)

Indica si la llamada a la herramienta generó un error.

call_id cadena  (obligatorio)

Obligatorio. Es el ID que debe coincidir con el ID del bloque de llamada a función.

signature string  (opcional)

Es un hash de firma para la validación de backend.

result array (FunctionResultSubcontent) o string  (obligatorio)

Es el resultado de la llamada a la herramienta.

CodeExecutionResultContent

Es el contenido del resultado de la ejecución del código.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "code_execution_result".

result string  (obligatorio)

Obligatorio. Es el resultado de la ejecución del código.

is_error boolean  (opcional)

Indica si la ejecución del código generó un error.

call_id cadena  (obligatorio)

Obligatorio. Es el ID que debe coincidir con el ID del bloque de llamada a función.

signature string  (opcional)

Es un hash de firma para la validación de backend.

UrlContextResultContent

Es el contenido del resultado del contexto de la URL.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "url_context_result".

result UrlContextResult  (obligatorio)

Obligatorio. Son los resultados del contexto de la URL.

Es el resultado del contexto de la URL.

Campos

url cadena  (opcional)

Es la URL que se recuperó.

status enum (cadena)  (opcional)

Es el estado de la recuperación de la URL.

Valores posibles:

  • success
  • error
  • paywall
  • unsafe
is_error boolean  (opcional)

Indica si el contexto de la URL generó un error.

call_id cadena  (obligatorio)

Obligatorio. Es el ID que debe coincidir con el ID del bloque de llamada a función.

signature string  (opcional)

Es un hash de firma para la validación de backend.

GoogleSearchResultContent

Es el contenido del resultado de la Búsqueda de Google.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "google_search_result".

result GoogleSearchResult  (obligatorio)

Obligatorio. Son los resultados de la Búsqueda de Google.

Es el resultado de la Búsqueda de Google.

Campos

search_suggestions cadena  (opcional)

Es un fragmento de contenido web que se puede incorporar en una página web o en un WebView de una app.

is_error boolean  (opcional)

Indica si la Búsqueda de Google generó un error.

call_id cadena  (obligatorio)

Obligatorio. Es el ID que debe coincidir con el ID del bloque de llamada a función.

signature string  (opcional)

Es un hash de firma para la validación de backend.

McpServerToolResultContent

Es el contenido del resultado de la herramienta MCPServer.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "mcp_server_tool_result".

name string  (opcional)

Nombre de la herramienta que se llama para esta llamada a la herramienta específica.

server_name cadena  (opcional)

Es el nombre del servidor de MCP que se usó.

call_id cadena  (obligatorio)

Obligatorio. Es el ID que debe coincidir con el ID del bloque de llamada a función.

signature string  (opcional)

Es un hash de firma para la validación de backend.

result array (FunctionResultSubcontent) o string  (obligatorio)

Es el resultado de la llamada al servidor de MCP. Puede ser texto simple o contenido enriquecido.

FileSearchResultContent

Es el contenido del resultado de la búsqueda de archivos.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "file_search_result".

result FileSearchResult  (obligatorio)

Obligatorio. Son los resultados de la búsqueda de archivos.

Es el resultado de la búsqueda de archivos.

Campos

custom_metadata array (object)  (opcional)

Son los metadatos proporcionados por el usuario sobre el objeto FileSearchResult.

call_id cadena  (obligatorio)

Obligatorio. Es el ID que debe coincidir con el ID del bloque de llamada a función.

signature string  (opcional)

Es un hash de firma para la validación de backend.

GoogleMapsResultContent

Es el contenido del resultado de Google Maps.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "google_maps_result".

result GoogleMapsResult  (obligatorio)

Obligatorio. Son los resultados de Google Maps.

Es el resultado de Google Maps.

Campos

lugares Lugares  (opcional)

Son los lugares que se encontraron.

Campos

place_id cadena  (opcional)

Es el ID del lugar, en formato `places/{place_id}`.

name string  (opcional)

Título del lugar.

url cadena  (opcional)

Es la referencia URI del lugar.

review_snippets ReviewSnippet  (opcional)

Son fragmentos de opiniones que se usan para generar respuestas sobre las características de un lugar determinado en Google Maps.

Encapsula un fragmento de una opinión del usuario que responde una pregunta sobre las características de un lugar específico en Google Maps.

Campos

title cadena  (opcional)

Es el título de la opinión.

url cadena  (opcional)

Es un vínculo que corresponde a la opinión del usuario en Google Maps.

review_id cadena  (opcional)

Es el ID del fragmento de opinión.

widget_context_token cadena  (opcional)

Es el nombre del recurso del token de contexto del widget de Google Maps.

call_id cadena  (obligatorio)

Obligatorio. Es el ID que debe coincidir con el ID del bloque de llamada a función.

signature string  (opcional)

Es un hash de firma para la validación de backend.

Ejemplos

Texto

{
  "type": "text",
  "text": "Hello, how are you?"
}

Imagen

{
  "type": "image",
  "data": "BASE64_ENCODED_IMAGE",
  "mime_type": "image/png"
}

Audio

{
  "type": "audio",
  "data": "BASE64_ENCODED_AUDIO",
  "mime_type": "audio/wav"
}

Documento

{
  "type": "document",
  "data": "BASE64_ENCODED_DOCUMENT",
  "mime_type": "application/pdf"
}

Video

{
  "type": "video",
  "uri": "https://www.youtube.com/watch?v=9hE5-98ZeCg"
}

Pensamiento

{
  "type": "thought",
  "summary": [
    {
      "type": "text",
      "text": "The user is asking about the weather. I should use the get_weather tool."
    }
  ],
  "signature": "CoMDAXLI2nynRYojJIy6B1Jh9os2crpWLfB0+19xcLsGG46bd8wjkF/6RNlRUdvHrXyjsHkG0BZFcuO/bPOyA6Xh5jANNgx82wPHjGExN8A4ZQn56FlMwyZoqFVQz0QyY1lfibFJ2zU3J87uw26OewzcuVX0KEcs+GIsZa3EA6WwqhbsOd3wtZB3Ua2Qf98VAWZTS5y/tWpql7jnU3/CU7pouxQr/Bwft3hwnJNesQ9/dDJTuaQ8Zprh9VRWf1aFFjpIueOjBRrlT3oW6/y/eRl/Gt9BQXCYTqg/38vHFUU4Wo/d9dUpvfCe/a3o97t2Jgxp34oFKcsVb4S5WJrykIkw+14DzVnTpCpbQNFckqvFLuqnJCkL0EQFtunBXI03FJpPu3T1XU6id8S7ojoJQZSauGUCgmaLqUGdMrd08oo81ecoJSLs51Re9N/lISGmjWFPGpqJLoGq6uo4FHz58hmeyXCgHG742BHz2P3MiH1CXHUT2J8mF6zLhf3SR9Qb3lkrobAh"
}

Llamada a función

{
  "type": "function_call",
  "name": "get_weather",
  "id": "gth23981",
  "arguments": {
    "location": "Boston, MA"
  }
}

Llamada de ejecución de código

{
  "type": "code_execution_call",
  "id": "call_123456",
  "arguments": {
    "language": "python",
    "code": "print('hello world')"
  }
}

Llamada de contexto de URL

{
  "type": "url_context_call",
  "id": "call_123456",
  "arguments": {
    "urls": [
      "https://www.example.com"
    ]
  }
}

Llamada a la herramienta del servidor de MCP

{
  "type": "mcp_server_tool_call",
  "id": "call_123456",
  "name": "get_forecast",
  "server_name": "weather_server",
  "arguments": {
    "city": "London"
  }
}

Llamada de la Búsqueda de Google

{
  "type": "google_search_call",
  "id": "call_123456",
  "arguments": {
    "queries": [
      "weather in Boston"
    ]
  }
}

Llamada de búsqueda de archivos

{
  "type": "file_search_call",
  "id": "call_123456"
}

Llamada de Google Maps

{
  "type": "google_maps_call",
  "id": "call_123456",
  "arguments": {
    "query": "best food near me"
  }
}

Resultado de la función

{
  "type": "function_result",
  "name": "get_weather",
  "call_id": "gth23981",
  "result": [
    {
      "type": "text",
      "text": "{\"weather\":\"sunny\"}"
    }
  ]
}

Resultado de la ejecución del código

{
  "type": "code_execution_result",
  "call_id": "call_123456",
  "result": "hello world"
}

Resultado del contexto de URL

{
  "type": "url_context_result",
  "call_id": "call_123456",
  "result": [
    {
      "url": "https://www.example.com",
      "status": "SUCCESS"
    }
  ]
}

Resultado de la Búsqueda de Google

{
  "type": "google_search_result",
  "call_id": "call_123456",
  "result": [
    {
      "url": "https://www.google.com/search?q=weather+in+Boston",
      "title": "Weather in Boston"
    }
  ]
}

Resultado de la herramienta del servidor de MCP

{
  "type": "mcp_server_tool_result",
  "name": "get_forecast",
  "server_name": "weather_server",
  "call_id": "call_123456",
  "result": "sunny"
}

Resultado de la búsqueda de archivos

{
  "type": "file_search_result",
  "call_id": "call_123456",
  "result": [
    {
      "text": "search result chunk",
      "file_search_store": "file_search_store"
    }
  ]
}

Resultado de Google Maps

{
  "type": "google_maps_result",
  "call_id": "call_123456",
  "result": [
    {
      "places": [
        {
          "url": "https://www.google.com/maps/search/best+food+near+me",
          "name": "Tasty Restaurant"
        }
      ]
    }
  ]
}

Herramienta

Es una herramienta que puede usar el modelo.

Tipos posibles

Discriminador polimórfico: type

Función

Es una herramienta que puede usar el modelo.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "function".

name string  (opcional)

Es el nombre de la función.

description cadena  (opcional)

Es una descripción de la función.

parameters objeto  (opcional)

Es el esquema JSON para los parámetros de la función.

CodeExecution

Es una herramienta que el modelo puede usar para ejecutar código.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "code_execution".

UrlContext

Es una herramienta que el modelo puede usar para recuperar el contexto de la URL.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "url_context".

ComputerUse

Es una herramienta que el modelo puede usar para interactuar con la computadora.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "computer_use".

environment enum (cadena)  (opcional)

Es el entorno en el que se opera.

Valores posibles:

  • browser
excludedPredefinedFunctions array (string)  (opcional)

Es la lista de funciones predefinidas que se excluyen de la llamada al modelo.

McpServer

Un MCPServer es un servidor al que puede llamar el modelo para realizar acciones.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "mcp_server".

name string  (opcional)

Es el nombre del MCPServer.

url cadena  (opcional)

Es la URL completa del extremo de MCPServer. Ejemplo: "https://api.example.com/mcp"

headers object  (opcional)

Opcional: Campos para encabezados de autenticación, tiempos de espera, etcétera, si es necesario.

allowed_tools AllowedTools  (opcional)

Las herramientas permitidas.

Es la configuración de las herramientas permitidas.

Campos

mode ToolChoiceType  (opcional)

Es el modo de la elección de la herramienta.

Valores posibles:

  • auto
  • any
  • none
  • validated

tools array (string)  (opcional)

Son los nombres de las herramientas permitidas.

GoogleSearch

Es una herramienta que el modelo puede usar para buscar en Google.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "google_search".

search_types array (enum (string))  (opcional)

Son los tipos de fundamentación de la búsqueda que se habilitarán.

Valores posibles:

  • web_search
  • image_search
  • enterprise_web_search
FileSearch

Es una herramienta que el modelo puede usar para buscar archivos.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "file_search".

file_search_store_names array (string)  (opcional)

Nombres de los almacenes de búsqueda de archivos en los que se realizará la búsqueda.

top_k integer  (opcional)

Es la cantidad de fragmentos de recuperación semántica que se recuperarán.

metadata_filter cadena  (opcional)

Es un filtro de metadatos que se aplica a los documentos y fragmentos recuperados de forma semántica.

GoogleMaps

Es una herramienta que el modelo puede usar para llamar a Google Maps.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "google_maps".

enable_widget booleano  (opcional)

Indica si se debe devolver un token de contexto del widget en el resultado de la llamada a la herramienta de la respuesta.

latitude número  (opcional)

Es la latitud de la ubicación del usuario.

longitude número  (opcional)

Es la longitud de la ubicación del usuario.

Recuperación

Es una herramienta que el modelo puede usar para recuperar archivos.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "retrieval".

retrieval_types array (enum (string))  (opcional)

Son los tipos de recuperación de archivos que se pueden habilitar.

Valores posibles:

  • vertex_ai_search
vertex_ai_search_config VertexAISearchConfig  (opcional)

Se usa para especificar la configuración de VertexAISearch.

Se usa para especificar la configuración de VertexAISearch.

Campos

engine string  (opcional)

Opcional. Se usa para especificar el motor de búsqueda de Vertex AI Search.

datastores array (string)  (opcional)

Opcional. Se usa para especificar los almacenes de datos de Vertex AI Search.

Ejemplos

Función

CodeExecution

UrlContext

ComputerUse

McpServer

GoogleSearch

FileSearch

GoogleMaps

Recuperación

No hay ejemplos disponibles para este tipo.

Turn

Campos

role cadena  (opcional)

Es el originador de este turno. Debe ser el usuario para la entrada o el modelo para el resultado del modelo.

content array (Content) o string  (opcional)

No se proporcionó la descripción.

Ejemplos

Turno del usuario

{
  "role": "user",
  "content": [
    {
      "type": "text",
      "text": "user turn"
    }
  ]
}

Turno del modelo

{
  "role": "model",
  "content": [
    {
      "type": "text",
      "text": "model turn"
    }
  ]
}

InteractionSseEvent

Tipos posibles

Discriminador polimórfico: event_type

InteractionStartEvent

event_type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "interaction.start".

interaction Interaction  (obligatorio)

No se proporcionó la descripción.

event_id cadena  (opcional)

Es el token de event_id que se usará para reanudar el flujo de interacción a partir de este evento.

InteractionCompleteEvent

event_type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "interaction.complete".

interaction Interaction  (obligatorio)

Obligatorio. Es la interacción completada con resultados vacíos para reducir el tamaño de la carga útil. Usa los eventos ContentDelta anteriores para el resultado real.

event_id cadena  (opcional)

Es el token de event_id que se usará para reanudar el flujo de interacción a partir de este evento.

InteractionStatusUpdate

event_type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "interaction.status_update".

interaction_id cadena  (obligatorio)

No se proporcionó la descripción.

status enum (cadena)  (obligatorio)

No se proporcionó la descripción.

Valores posibles:

  • in_progress
  • requires_action
  • completed
  • failed
  • cancelled
  • incomplete
event_id cadena  (opcional)

Es el token de event_id que se usará para reanudar el flujo de interacción a partir de este evento.

ContentStart

event_type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "content.start".

index número entero  (obligatorio)

No se proporcionó la descripción.

content Content  (obligatorio)

No se proporcionó la descripción.

event_id cadena  (opcional)

Es el token de event_id que se usará para reanudar el flujo de interacción a partir de este evento.

ContentDelta

event_type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "content.delta".

index número entero  (obligatorio)

No se proporcionó la descripción.

delta ContentDeltaData  (obligatorio)

No se proporcionó la descripción.

Son los datos de contenido delta para un bloque de contenido.

Tipos posibles

Discriminador polimórfico: type

TextDelta

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "text".

text cadena  (obligatorio)

No se proporcionó la descripción.

ImageDelta

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "image".

data cadena  (opcional)

No se proporcionó la descripción.

uri cadena  (opcional)

No se proporcionó la descripción.

mime_type enum (cadena)  (opcional)

No se proporcionó la descripción.

Valores posibles:

  • image/png
  • image/jpeg
  • image/webp
  • image/heic
  • image/heif
  • image/gif
  • image/bmp
  • image/tiff
resolution MediaResolution  (opcional)

Resolución del contenido multimedia.

Valores posibles:

  • low
  • medium
  • high
  • ultra_high

AudioDelta

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "audio".

data cadena  (opcional)

No se proporcionó la descripción.

uri cadena  (opcional)

No se proporcionó la descripción.

mime_type enum (cadena)  (opcional)

No se proporcionó la descripción.

Valores posibles:

  • audio/wav
  • audio/mp3
  • audio/aiff
  • audio/aac
  • audio/ogg
  • audio/flac
  • audio/mpeg
  • audio/m4a
  • audio/l16
  • audio/opus
  • audio/alaw
  • audio/mulaw
rate integer  (opcional)

Es la frecuencia de muestreo del audio.

channels integer  (opcional)

Es la cantidad de canales de audio.

DocumentDelta

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "document".

data cadena  (opcional)

No se proporcionó la descripción.

uri cadena  (opcional)

No se proporcionó la descripción.

mime_type enum (cadena)  (opcional)

No se proporcionó la descripción.

Valores posibles:

  • application/pdf
VideoDelta

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "video".

data cadena  (opcional)

No se proporcionó la descripción.

uri cadena  (opcional)

No se proporcionó la descripción.

mime_type enum (cadena)  (opcional)

No se proporcionó la descripción.

Valores posibles:

  • video/mp4
  • video/mpeg
  • video/mpg
  • video/mov
  • video/avi
  • video/x-flv
  • video/webm
  • video/wmv
  • video/3gpp
resolution MediaResolution  (opcional)

Resolución del contenido multimedia.

Valores posibles:

  • low
  • medium
  • high
  • ultra_high

ThoughtSummaryDelta

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "thought_summary".

content ThoughtSummaryContent  (opcional)

Es un nuevo elemento de resumen que se agregará al pensamiento.

Tipos posibles

Discriminador polimórfico: type

TextContent

Es un bloque de contenido de texto.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "text".

text cadena  (obligatorio)

Obligatorio. Es el contenido de texto.

anotaciones Annotation  (opcional)

Es la información de citas para el contenido generado por el modelo.

Es la información de citas para el contenido generado por el modelo.

Tipos posibles

Discriminador polimórfico: type

UrlCitation

Es una anotación de cita de URL.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "url_citation".

url cadena  (opcional)

Es la URL.

title cadena  (opcional)

Es el título de la URL.

start_index integer  (opcional)

Es el inicio del segmento de la respuesta que se atribuye a esta fuente. El índice indica el inicio del segmento, medido en bytes.

end_index integer  (opcional)

Es el final del segmento atribuido, exclusivo.

FileCitation

Es una anotación de cita de archivo.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "file_citation".

document_uri cadena  (opcional)

Es el URI del archivo.

file_name cadena  (opcional)

Es el nombre del archivo.

source cadena  (opcional)

Es la fuente atribuida a una parte del texto.

start_index integer  (opcional)

Es el inicio del segmento de la respuesta que se atribuye a esta fuente. El índice indica el inicio del segmento, medido en bytes.

end_index integer  (opcional)

Es el final del segmento atribuido, exclusivo.

PlaceCitation

Es una anotación de cita de lugar.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "place_citation".

place_id cadena  (opcional)

Es el ID del lugar, en formato `places/{place_id}`.

name string  (opcional)

Título del lugar.

url cadena  (opcional)

Es la referencia URI del lugar.

review_snippets ReviewSnippet  (opcional)

Son fragmentos de opiniones que se usan para generar respuestas sobre las características de un lugar determinado en Google Maps.

Encapsula un fragmento de una opinión del usuario que responde una pregunta sobre las características de un lugar específico en Google Maps.

Campos

title cadena  (opcional)

Es el título de la opinión.

url cadena  (opcional)

Es un vínculo que corresponde a la opinión del usuario en Google Maps.

review_id cadena  (opcional)

Es el ID del fragmento de opinión.

start_index integer  (opcional)

Es el inicio del segmento de la respuesta que se atribuye a esta fuente. El índice indica el inicio del segmento, medido en bytes.

end_index integer  (opcional)

Es el final del segmento atribuido, exclusivo.

ImageContent

Es un bloque de contenido de imagen.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "image".

data cadena  (opcional)

Es el contenido de la imagen.

uri cadena  (opcional)

El URI de la imagen.

mime_type enum (cadena)  (opcional)

Es el tipo de MIME de la imagen.

Valores posibles:

  • image/png
  • image/jpeg
  • image/webp
  • image/heic
  • image/heif
  • image/gif
  • image/bmp
  • image/tiff
resolution MediaResolution  (opcional)

Resolución del contenido multimedia.

Valores posibles:

  • low
  • medium
  • high
  • ultra_high

ThoughtSignatureDelta

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "thought_signature".

signature string  (opcional)

Firma para que coincida con la fuente del backend que formará parte de la generación.

FunctionCallDelta

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "function_call".

name cadena  (obligatorio)

No se proporcionó la descripción.

arguments objeto  (obligatorio)

No se proporcionó la descripción.

id cadena  (obligatorio)

Obligatorio. Es un ID único para esta llamada a herramienta específica.

signature string  (opcional)

Es un hash de firma para la validación de backend.

CodeExecutionCallDelta

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "code_execution_call".

arguments CodeExecutionCallArguments  (obligatorio)

No se proporcionó la descripción.

Son los argumentos que se pasarán a la ejecución del código.

Campos

language enum (cadena)  (opcional)

Lenguaje de programación del `código`.

Valores posibles:

  • python
code string  (opcional)

Es el código que se ejecutará.

id cadena  (obligatorio)

Obligatorio. Es un ID único para esta llamada a herramienta específica.

signature string  (opcional)

Es un hash de firma para la validación de backend.

UrlContextCallDelta

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "url_context_call".

arguments UrlContextCallArguments  (obligatorio)

No se proporcionó la descripción.

Argumentos para pasar al contexto de la URL.

Campos

urls array (string)  (opcional)

URLs que se recuperarán.

id cadena  (obligatorio)

Obligatorio. Es un ID único para esta llamada a herramienta específica.

signature string  (opcional)

Es un hash de firma para la validación de backend.

GoogleSearchCallDelta

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "google_search_call".

arguments GoogleSearchCallArguments  (obligatorio)

No se proporcionó la descripción.

Son los argumentos que se pasarán a la Búsqueda de Google.

Campos

queries array (string)  (opcional)

Son las búsquedas web para la búsqueda web de seguimiento.

id cadena  (obligatorio)

Obligatorio. Es un ID único para esta llamada a herramienta específica.

signature string  (opcional)

Es un hash de firma para la validación de backend.

McpServerToolCallDelta

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "mcp_server_tool_call".

name cadena  (obligatorio)

No se proporcionó la descripción.

server_name cadena  (obligatorio)

No se proporcionó la descripción.

arguments objeto  (obligatorio)

No se proporcionó la descripción.

id cadena  (obligatorio)

Obligatorio. Es un ID único para esta llamada a herramienta específica.

signature string  (opcional)

Es un hash de firma para la validación de backend.

FileSearchCallDelta

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "file_search_call".

id cadena  (obligatorio)

Obligatorio. Es un ID único para esta llamada a herramienta específica.

signature string  (opcional)

Es un hash de firma para la validación de backend.

GoogleMapsCallDelta

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "google_maps_call".

arguments GoogleMapsCallArguments  (opcional)

Son los argumentos que se pasarán a la herramienta de Google Maps.

Son los argumentos que se pasarán a la herramienta de Google Maps.

Campos

queries array (string)  (opcional)

Consultas que se ejecutarán.

id cadena  (obligatorio)

Obligatorio. Es un ID único para esta llamada a herramienta específica.

signature string  (opcional)

Es un hash de firma para la validación de backend.

FunctionResultDelta

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "function_result".

name string  (opcional)

No se proporcionó la descripción.

is_error boolean  (opcional)

No se proporcionó la descripción.

call_id cadena  (obligatorio)

Obligatorio. Es el ID que debe coincidir con el ID del bloque de llamada a función.

signature string  (opcional)

Es un hash de firma para la validación de backend.

result array (FunctionResultSubcontent) o string  (obligatorio)

No se proporcionó la descripción.

CodeExecutionResultDelta

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "code_execution_result".

result string  (obligatorio)

No se proporcionó la descripción.

is_error boolean  (opcional)

No se proporcionó la descripción.

call_id cadena  (obligatorio)

Obligatorio. Es el ID que debe coincidir con el ID del bloque de llamada a función.

signature string  (opcional)

Es un hash de firma para la validación de backend.

UrlContextResultDelta

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "url_context_result".

result UrlContextResult  (obligatorio)

No se proporcionó la descripción.

Es el resultado del contexto de la URL.

Campos

url cadena  (opcional)

Es la URL que se recuperó.

status enum (cadena)  (opcional)

Es el estado de la recuperación de la URL.

Valores posibles:

  • success
  • error
  • paywall
  • unsafe
is_error boolean  (opcional)

No se proporcionó la descripción.

call_id cadena  (obligatorio)

Obligatorio. Es el ID que debe coincidir con el ID del bloque de llamada a función.

signature string  (opcional)

Es un hash de firma para la validación de backend.

GoogleSearchResultDelta

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "google_search_result".

result GoogleSearchResult  (obligatorio)

No se proporcionó la descripción.

Es el resultado de la Búsqueda de Google.

Campos

search_suggestions cadena  (opcional)

Es un fragmento de contenido web que se puede incorporar en una página web o en un WebView de una app.

is_error boolean  (opcional)

No se proporcionó la descripción.

call_id cadena  (obligatorio)

Obligatorio. Es el ID que debe coincidir con el ID del bloque de llamada a función.

signature string  (opcional)

Es un hash de firma para la validación de backend.

McpServerToolResultDelta

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "mcp_server_tool_result".

name string  (opcional)

No se proporcionó la descripción.

server_name cadena  (opcional)

No se proporcionó la descripción.

call_id cadena  (obligatorio)

Obligatorio. Es el ID que debe coincidir con el ID del bloque de llamada a función.

signature string  (opcional)

Es un hash de firma para la validación de backend.

result array (FunctionResultSubcontent) o string  (obligatorio)

No se proporcionó la descripción.

FileSearchResultDelta

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "file_search_result".

result FileSearchResult  (obligatorio)

No se proporcionó la descripción.

Es el resultado de la búsqueda de archivos.

Campos

custom_metadata array (object)  (opcional)

Son los metadatos proporcionados por el usuario sobre el objeto FileSearchResult.

call_id cadena  (obligatorio)

Obligatorio. Es el ID que debe coincidir con el ID del bloque de llamada a función.

signature string  (opcional)

Es un hash de firma para la validación de backend.

GoogleMapsResultDelta

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "google_maps_result".

result GoogleMapsResult  (opcional)

Son los resultados de Google Maps.

Es el resultado de Google Maps.

Campos

lugares Lugares  (opcional)

Son los lugares que se encontraron.

Campos

place_id cadena  (opcional)

Es el ID del lugar, en formato `places/{place_id}`.

name string  (opcional)

Título del lugar.

url cadena  (opcional)

Es la referencia URI del lugar.

review_snippets ReviewSnippet  (opcional)

Son fragmentos de opiniones que se usan para generar respuestas sobre las características de un lugar determinado en Google Maps.

Encapsula un fragmento de una opinión del usuario que responde una pregunta sobre las características de un lugar específico en Google Maps.

Campos

title cadena  (opcional)

Es el título de la opinión.

url cadena  (opcional)

Es un vínculo que corresponde a la opinión del usuario en Google Maps.

review_id cadena  (opcional)

Es el ID del fragmento de opinión.

widget_context_token cadena  (opcional)

Es el nombre del recurso del token de contexto del widget de Google Maps.

call_id cadena  (obligatorio)

Obligatorio. Es el ID que debe coincidir con el ID del bloque de llamada a función.

signature string  (opcional)

Es un hash de firma para la validación de backend.

TextAnnotationDelta

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "text_annotation".

anotaciones Annotation  (opcional)

Es la información de citas para el contenido generado por el modelo.

Es la información de citas para el contenido generado por el modelo.

Tipos posibles

Discriminador polimórfico: type

UrlCitation

Es una anotación de cita de URL.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "url_citation".

url cadena  (opcional)

Es la URL.

title cadena  (opcional)

Es el título de la URL.

start_index integer  (opcional)

Es el inicio del segmento de la respuesta que se atribuye a esta fuente. El índice indica el inicio del segmento, medido en bytes.

end_index integer  (opcional)

Es el final del segmento atribuido, exclusivo.

FileCitation

Es una anotación de cita de archivo.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "file_citation".

document_uri cadena  (opcional)

Es el URI del archivo.

file_name cadena  (opcional)

Es el nombre del archivo.

source cadena  (opcional)

Es la fuente atribuida a una parte del texto.

start_index integer  (opcional)

Es el inicio del segmento de la respuesta que se atribuye a esta fuente. El índice indica el inicio del segmento, medido en bytes.

end_index integer  (opcional)

Es el final del segmento atribuido, exclusivo.

PlaceCitation

Es una anotación de cita de lugar.

type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "place_citation".

place_id cadena  (opcional)

Es el ID del lugar, en formato `places/{place_id}`.

name string  (opcional)

Título del lugar.

url cadena  (opcional)

Es la referencia URI del lugar.

review_snippets ReviewSnippet  (opcional)

Son fragmentos de opiniones que se usan para generar respuestas sobre las características de un lugar determinado en Google Maps.

Encapsula un fragmento de una opinión del usuario que responde una pregunta sobre las características de un lugar específico en Google Maps.

Campos

title cadena  (opcional)

Es el título de la opinión.

url cadena  (opcional)

Es un vínculo que corresponde a la opinión del usuario en Google Maps.

review_id cadena  (opcional)

Es el ID del fragmento de opinión.

start_index integer  (opcional)

Es el inicio del segmento de la respuesta que se atribuye a esta fuente. El índice indica el inicio del segmento, medido en bytes.

end_index integer  (opcional)

Es el final del segmento atribuido, exclusivo.

event_id cadena  (opcional)

Es el token de event_id que se usará para reanudar el flujo de interacción a partir de este evento.

ContentStop

event_type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "content.stop".

index número entero  (obligatorio)

No se proporcionó la descripción.

event_id cadena  (opcional)

Es el token de event_id que se usará para reanudar el flujo de interacción a partir de este evento.

ErrorEvent

event_type object  (obligatorio)

No se proporcionó la descripción.

Siempre se establece en "error".

error Error  (opcional)

No se proporcionó la descripción.

Es un mensaje de error de una interacción.

Campos

code string  (opcional)

Es un URI que identifica el tipo de error.

message cadena  (opcional)

Es un mensaje de error legible por humanos.

event_id cadena  (opcional)

Es el token de event_id que se usará para reanudar el flujo de interacción a partir de este evento.

Ejemplos

Inicio de la interacción

{
  "event_type": "interaction.start",
  "interaction": {
    "id": "v1_ChdTMjQ0YWJ5TUF1TzcxZThQdjRpcnFRcxIXUzI0NGFieU1BdU83MWU4UHY0aXJxUXM",
    "model": "gemini-3-flash-preview",
    "object": "interaction",
    "status": "in_progress"
  }
}

Interacción completa

{
  "event_type": "interaction.complete",
  "interaction": {
    "created": "2025-12-09T18:45:40Z",
    "id": "v1_ChdTMjQ0YWJ5TUF1TzcxZThQdjRpcnFRcxIXUzI0NGFieU1BdU83MWU4UHY0aXJxUXM",
    "model": "gemini-3-flash-preview",
    "object": "interaction",
    "role": "model",
    "status": "completed",
    "updated": "2025-12-09T18:45:40Z",
    "usage": {
      "input_tokens_by_modality": [
        {
          "modality": "text",
          "tokens": 11
        }
      ],
      "total_cached_tokens": 0,
      "total_input_tokens": 11,
      "total_output_tokens": 364,
      "total_thought_tokens": 1120,
      "total_tokens": 1495,
      "total_tool_use_tokens": 0
    }
  }
}

Actualización del estado de la interacción

{
  "event_type": "interaction.status_update",
  "interaction_id": "v1_ChdTMjQ0YWJ5TUF1TzcxZThQdjRpcnFRcxIXUzI0NGFieU1BdU83MWU4UHY0aXJxUXM",
  "status": "in_progress"
}

Inicio del contenido

{
  "event_type": "content.start",
  "content": {
    "type": "text"
  },
  "index": 1
}

Delta de contenido

{
  "event_type": "content.delta",
  "delta": {
    "type": "text",
    "text": "Elara\u2019s life was a symphony of quiet moments. A librarian, she found solace in the hushed aisles, the scent of aged paper, and the predictable rhythm of her days. Her small apartment, meticulously ordered, reflected this internal calm, save"
  },
  "index": 1
}

Detención del contenido

{
  "event_type": "content.stop",
  "index": 1
}

Evento de error

{
  "event_type": "error",
  "error": {
    "message": "Failed to get completed interaction: Result not found.",
    "code": "not_found"
  }
}