Gemini API

A API Gemini Interactions é uma API experimental que permite aos desenvolvedores criar aplicativos de IA generativa usando modelos do Gemini. O Gemini é nosso modelo mais avançado, criado desde o início para ser multimodal. Ele pode generalizar, entender, operar e combinar diferentes tipos de informações, incluindo idiomas, imagens, áudio, vídeo e código. Você pode usar a API Gemini para casos de uso como raciocínio em textos e imagens, geração de conteúdo, agentes de diálogo, sistemas de resumo e classificação e muito mais.

Criar uma interação

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

Cria uma nova interação.

Corpo da solicitação

O corpo da solicitação contém dados com a seguinte estrutura:

model ModelOption  (opcional)

O nome do "Model" usado para gerar a interação.
Obrigatório se "agent" não for fornecido.

Valores possíveis:

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

    Um modelo de capacidade de agente projetado para interação direta com a interface, permitindo que o Gemini perceba e navegue em ambientes digitais.

  • gemini-2.5-flash

    Nosso primeiro modelo de raciocínio híbrido, que oferece suporte a uma janela de contexto de 1 milhão de tokens e tem limites de raciocínio.

  • gemini-2.5-flash-image

    Nosso modelo nativo de geração de imagens, otimizado para velocidade, flexibilidade e compreensão contextual. A entrada e a saída de texto têm o mesmo preço do 2.5 Flash.

  • gemini-2.5-flash-lite

    Nosso modelo menor e mais econômico, criado para uso em grande escala.

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

    O modelo mais recente baseado no Gemini 2.5 Flash lite otimizado para custo-benefício, alta capacidade de processamento e alta qualidade.

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

    Nossos modelos de áudio nativos são otimizados para saídas de áudio de maior qualidade, com melhor ritmo, naturalidade da voz, nível de detalhes e humor.

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

    O modelo mais recente baseado no modelo 2.5 Flash. O pré-lançamento do 2.5 Flash é ideal para processamento em grande escala, baixa latência, tarefas de alto volume que exigem pensamento e casos de uso de agentes.

  • gemini-2.5-flash-preview-tts

    Nosso modelo de conversão de texto em voz 2.5 Flash otimizado para geração de fala controlável, potente e de baixa latência.

  • gemini-2.5-pro

    Nosso modelo avançado e multifuncional, que se destaca em programação e tarefas de raciocínio complexas.

  • gemini-2.5-pro-preview-tts

    Nosso modelo de áudio Text-to-Speech 2.5 Pro é otimizado para geração de fala poderosa e de baixa latência, com saídas mais naturais e comandos mais fáceis de direcionar.

  • gemini-3-flash-preview

    Nosso modelo mais inteligente, criado para ser rápido, que combina inteligência de ponta com pesquisa e embasamento superiores.

  • gemini-3-pro-image-preview

    Modelo de edição e geração de imagens de última geração.

  • gemini-3-pro-preview

    Nosso modelo mais inteligente com raciocínio e compreensão multimodal de última geração, além de recursos avançados de programação assistida por IA e vibe coding.

  • gemini-3.1-pro-preview

    Nosso mais recente modelo de raciocínio SOTA com profundidade e nuances sem precedentes, além de recursos avançados de compreensão multimodal e programação.

  • gemini-3.1-flash-image-preview

    Inteligência visual de nível profissional com eficiência de velocidade do Flash e recursos de geração baseados na realidade.

  • gemini-3.1-flash-lite-preview

    Nosso modelo mais econômico, otimizado para tarefas agênticas de alto volume, tradução e processamento de dados simples.

  • gemini-3.1-flash-tts-preview

    Gemini 3.1 Flash TTS: geração de fala eficiente e de baixa latência. Aproveite saídas naturais, comandos direcionáveis e novas tags de áudio expressivas para um controle preciso da narração.

  • lyria-3-clip-preview

    Nosso modelo de geração de música de baixa latência otimizado para clipes de áudio de alta fidelidade e controle rítmico preciso.

  • lyria-3-pro-preview

    Nosso modelo generativo avançado de músicas completas com compreensão composicional profunda, otimizado para controle estrutural preciso e transições complexas em diversos estilos musicais.

O modelo que vai concluir seu comando.\n\nConsulte [modelos](https://ai.google.dev/gemini-api/docs/models) para mais detalhes.

agent AgentOption  (opcional)

O nome do "Agente" usado para gerar a interação.
Obrigatório se "model" não for fornecido.

Valores possíveis:

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

    Agente Deep Research do Gemini

  • deep-research-preview-04-2026

    Agente Deep Research do Gemini

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

    Agente Deep Research Max do Gemini

O agente com quem interagir.

input Content ou matriz (Content) ou matriz (Turn) ou string  (obrigatório)

As entradas para a interação (comum ao modelo e ao agente).

system_instruction string  (opcional)

Instrução do sistema para a interação.

tools array (Tool)  (opcional)

Uma lista de declarações de ferramentas que o modelo pode chamar durante a interação.

response_format object  (opcional)

Força que a resposta gerada seja um objeto JSON que esteja em conformidade com o esquema JSON especificado neste campo.

response_mime_type string  (opcional)

O tipo MIME da resposta. Obrigatório se "response_format" estiver definido.

stream boolean  (opcional)

Somente entrada. Se a interação será transmitida por streaming.

store boolean  (opcional)

Somente entrada. Indica se a resposta e a solicitação serão armazenadas para recuperação posterior.

background boolean  (opcional)

Somente entrada. Se a interação do modelo será executada em segundo plano.

generation_config GenerationConfig  (opcional)

Configuração do modelo
: parâmetros de configuração para a interação do modelo.
Alternativa a "agent_config". Só é aplicável quando "model" está definido.

Parâmetros de configuração para interações do modelo.

Campos

temperature number  (opcional)

Controla a aleatoriedade da saída.

top_p number  (opcional)

A probabilidade cumulativa máxima de tokens a serem considerados na amostragem.

seed integer  (opcional)

Seed usada na decodificação para reprodutibilidade.

stop_sequences array (string)  (opcional)

Uma lista de sequências de caracteres que vão interromper a interação de saída.

thinking_level ThinkingLevel  (opcional)

O nível de tokens de pensamento que o modelo deve gerar.

Valores possíveis:

  • minimal
  • low
  • medium
  • high

thinking_summaries ThinkingSummaries  (opcional)

Define se os resumos de pensamento serão incluídos na resposta.

Valores possíveis:

  • auto
  • none

max_output_tokens integer  (opcional)

O número máximo de tokens a serem incluídos na resposta.

speech_config SpeechConfig  (opcional)

Configuração para interação de fala.

A configuração para interação por voz.

Campos

voice string  (opcional)

A voz do alto-falante.

language string  (opcional)

O idioma da fala.

speaker string  (opcional)

O nome do falante precisa corresponder ao nome informado no comando.

image_config ImageConfig  (opcional)

Configuração para interação com imagens.

A configuração para interação com imagens.

Campos

aspect_ratio enum (string)  (opcional)

Nenhuma descrição informada.

Valores possíveis:

  • 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 (string)  (opcional)

Nenhuma descrição informada.

Valores possíveis:

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

A configuração de escolha da ferramenta.

agent_config object  (opcional)

Configuração do agente
Configuração do agente.
Alternativa a "generation_config". Só é aplicável quando "agent" está definido.

Tipos possíveis

Discriminador polimórfico: type

DynamicAgentConfig

Configuração para agentes dinâmicos.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "dynamic".

DeepResearchAgentConfig

Configuração do agente Deep Research.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "deep-research".

thinking_summaries ThinkingSummaries  (opcional)

Define se os resumos de pensamento serão incluídos na resposta.

Valores possíveis:

  • auto
  • none

visualization enum (string)  (opcional)

Define se as visualizações serão incluídas na resposta.

Valores possíveis:

  • off
  • auto
collaborative_planning boolean  (opcional)

Ativa o planejamento human-in-the-loop para o agente Deep Research. Se definido como "true", o agente Deep Research vai fornecer um plano de pesquisa na resposta. O agente só vai continuar se o usuário confirmar o plano na próxima interação.

previous_interaction_id string  (opcional)

O ID da interação anterior, se houver.

response_modalities ResponseModality  (opcional)

As modalidades solicitadas da resposta (TEXT, IMAGE, AUDIO).

Valores possíveis:

  • text
  • image
  • audio
  • video
  • document

service_tier enum (string)  (opcional)

O nível de serviço da interação.

Valores possíveis:

  • flex
  • standard
  • priority

Resposta

Retorna um recurso Interaction.

Solicitação simples

Exemplo de resposta

{
  "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
  }
}

Várias interações

Exemplo de resposta

{
  "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 imagem

Exemplo de resposta

{
  "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
  }
}

Chamada de função

Exemplo de resposta

{
  "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

Exemplo de resposta

{
  "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
  }
}

Como recuperar uma interação

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

Recupera todos os detalhes de uma única interação com base no `Interaction.id`.

Parâmetros de caminho / consulta

id string  (obrigatório)

O identificador exclusivo da interação a ser recuperada.

stream boolean  (opcional)

Se definido como verdadeiro, o conteúdo gerado será transmitido de forma incremental.

Padrão: False

last_event_id string  (opcional)

Opcional. Se definido, retoma o fluxo de interação do próximo bloco após o evento marcado pelo ID do evento. Só pode ser usado se "stream" for verdadeiro.

include_input booleano  (opcional)

Se definido como "true", inclui a entrada na resposta.

Padrão: False

api_version string  (opcional)

Qual versão da API usar.

Resposta

Retorna um recurso Interaction.

Acessar interação

Exemplo de resposta

{
  "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?"
    }
  ]
}

Excluir uma interação

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

Exclui a interação por ID.

Parâmetros de caminho / consulta

id string  (obrigatório)

O identificador exclusivo da interação a ser excluída.

api_version string  (opcional)

Qual versão da API usar.

Resposta

Se a solicitação for concluída, a resposta estará vazia.

Excluir interação

Como cancelar uma interação

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

Cancela uma interação por ID. Isso só se aplica a interações em segundo plano que ainda estão em execução.

Parâmetros de caminho / consulta

id string  (obrigatório)

O identificador exclusivo da interação a ser cancelada.

api_version string  (opcional)

Qual versão da API usar.

Resposta

Retorna um recurso Interaction.

Cancelar interação

Exemplo de resposta

{
  "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

Interação

O recurso "Interaction".

Campos

model ModelOption  (opcional)

O nome do "Model" usado para gerar a interação.

Valores possíveis:

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

    Um modelo de capacidade de agente projetado para interação direta com a interface, permitindo que o Gemini perceba e navegue em ambientes digitais.

  • gemini-2.5-flash

    Nosso primeiro modelo de raciocínio híbrido, que oferece suporte a uma janela de contexto de 1 milhão de tokens e tem limites de raciocínio.

  • gemini-2.5-flash-image

    Nosso modelo nativo de geração de imagens, otimizado para velocidade, flexibilidade e compreensão contextual. A entrada e a saída de texto têm o mesmo preço do 2.5 Flash.

  • gemini-2.5-flash-lite

    Nosso modelo menor e mais econômico, criado para uso em grande escala.

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

    O modelo mais recente baseado no Gemini 2.5 Flash lite otimizado para custo-benefício, alta capacidade de processamento e alta qualidade.

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

    Nossos modelos de áudio nativos são otimizados para saídas de áudio de maior qualidade, com melhor ritmo, naturalidade da voz, nível de detalhes e humor.

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

    O modelo mais recente baseado no modelo 2.5 Flash. O pré-lançamento do 2.5 Flash é ideal para processamento em grande escala, baixa latência, tarefas de alto volume que exigem pensamento e casos de uso de agentes.

  • gemini-2.5-flash-preview-tts

    Nosso modelo de conversão de texto em voz 2.5 Flash otimizado para geração de fala controlável, potente e de baixa latência.

  • gemini-2.5-pro

    Nosso modelo avançado e multifuncional, que se destaca em programação e tarefas de raciocínio complexas.

  • gemini-2.5-pro-preview-tts

    Nosso modelo de áudio Text-to-Speech 2.5 Pro é otimizado para geração de fala poderosa e de baixa latência, com saídas mais naturais e comandos mais fáceis de direcionar.

  • gemini-3-flash-preview

    Nosso modelo mais inteligente, criado para ser rápido, que combina inteligência de ponta com pesquisa e embasamento superiores.

  • gemini-3-pro-image-preview

    Modelo de edição e geração de imagens de última geração.

  • gemini-3-pro-preview

    Nosso modelo mais inteligente com raciocínio e compreensão multimodal de última geração, além de recursos avançados de programação assistida por IA e vibe coding.

  • gemini-3.1-pro-preview

    Nosso mais recente modelo de raciocínio SOTA com profundidade e nuances sem precedentes, além de recursos avançados de compreensão multimodal e programação.

  • gemini-3.1-flash-image-preview

    Inteligência visual de nível profissional com eficiência de velocidade do Flash e recursos de geração baseados na realidade.

  • gemini-3.1-flash-lite-preview

    Nosso modelo mais econômico, otimizado para tarefas agênticas de alto volume, tradução e processamento de dados simples.

  • gemini-3.1-flash-tts-preview

    Gemini 3.1 Flash TTS: geração de fala eficiente e de baixa latência. Aproveite saídas naturais, comandos direcionáveis e novas tags de áudio expressivas para um controle preciso da narração.

  • lyria-3-clip-preview

    Nosso modelo de geração de música de baixa latência otimizado para clipes de áudio de alta fidelidade e controle rítmico preciso.

  • lyria-3-pro-preview

    Nosso modelo generativo avançado de músicas completas com compreensão composicional profunda, otimizado para controle estrutural preciso e transições complexas em diversos estilos musicais.

O modelo que vai concluir seu comando.\n\nConsulte [modelos](https://ai.google.dev/gemini-api/docs/models) para mais detalhes.

agent AgentOption  (opcional)

O nome do "Agente" usado para gerar a interação.

Valores possíveis:

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

    Agente Deep Research do Gemini

  • deep-research-preview-04-2026

    Agente Deep Research do Gemini

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

    Agente Deep Research Max do Gemini

O agente com quem interagir.

id string  (opcional)

Obrigatório. Apenas saída. Um identificador exclusivo para a conclusão da interação.

status enum (string)  (opcional)

Obrigatório. Apenas saída. O status da interação.

Valores possíveis:

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

Obrigatório. Apenas saída. O horário em que a resposta foi criada no formato ISO 8601 (AAAA-MM-DDThh:mm:ssZ).

updated string  (opcional)

Obrigatório. Apenas saída. A hora em que a resposta foi atualizada pela última vez no formato ISO 8601 (AAAA-MM-DDThh:mm:ssZ).

role string  (opcional)

Apenas saída. A função da interação.

outputs array (Content)  (opcional)

Apenas saída. Respostas do modelo.

system_instruction string  (opcional)

Instrução do sistema para a interação.

tools array (Tool)  (opcional)

Uma lista de declarações de ferramentas que o modelo pode chamar durante a interação.

usage Usage  (opcional)

Apenas saída. Estatísticas sobre o uso de tokens da solicitação de interação.

Estatísticas sobre o uso de tokens da solicitação de interação.

Campos

total_input_tokens integer  (optional)

Número de tokens no comando (contexto).

input_tokens_by_modality ModalityTokens  (opcional)

Um detalhamento do uso de tokens de entrada por modalidade.

A contagem de tokens para uma única modalidade de resposta.

Campos

modalidade ResponseModality  (opcional)

A modalidade associada à contagem de tokens.

Valores possíveis:

  • text
  • image
  • audio
  • video
  • document

tokens integer  (opcional)

Número de tokens para a modalidade.

total_cached_tokens integer  (optional)

Número de tokens na parte em cache do comando (o conteúdo em cache).

cached_tokens_by_modality ModalityTokens  (opcional)

Um detalhamento do uso de tokens em cache por modalidade.

A contagem de tokens para uma única modalidade de resposta.

Campos

modalidade ResponseModality  (opcional)

A modalidade associada à contagem de tokens.

Valores possíveis:

  • text
  • image
  • audio
  • video
  • document

tokens integer  (opcional)

Número de tokens para a modalidade.

total_output_tokens integer  (optional)

Número total de tokens em todas as respostas geradas.

output_tokens_by_modality ModalityTokens  (opcional)

Um detalhamento do uso de tokens de saída por modalidade.

A contagem de tokens para uma única modalidade de resposta.

Campos

modalidade ResponseModality  (opcional)

A modalidade associada à contagem de tokens.

Valores possíveis:

  • text
  • image
  • audio
  • video
  • document

tokens integer  (opcional)

Número de tokens para a modalidade.

total_tool_use_tokens integer  (optional)

Número de tokens presentes nos comandos de uso da ferramenta.

tool_use_tokens_by_modality ModalityTokens  (opcional)

Um detalhamento do uso de tokens de uso de ferramentas por modalidade.

A contagem de tokens para uma única modalidade de resposta.

Campos

modalidade ResponseModality  (opcional)

A modalidade associada à contagem de tokens.

Valores possíveis:

  • text
  • image
  • audio
  • video
  • document

tokens integer  (opcional)

Número de tokens para a modalidade.

total_thought_tokens integer  (opcional)

Número de tokens de raciocínio para modelos de pensamento.

total_tokens integer  (opcional)

Contagem total de tokens para a solicitação de interação (comando + respostas + outros tokens internos).

response_modalities ResponseModality  (opcional)

As modalidades solicitadas da resposta (TEXT, IMAGE, AUDIO).

Valores possíveis:

  • text
  • image
  • audio
  • video
  • document

response_format object  (opcional)

Força que a resposta gerada seja um objeto JSON que esteja em conformidade com o esquema JSON especificado neste campo.

response_mime_type string  (opcional)

O tipo MIME da resposta. Obrigatório se "response_format" estiver definido.

previous_interaction_id string  (opcional)

O ID da interação anterior, se houver.

service_tier enum (string)  (opcional)

O nível de serviço da interação.

Valores possíveis:

  • flex
  • standard
  • priority
input Content ou matriz (Content) ou matriz (Turn) ou string  (opcional)

A entrada da interação.

agent_config object  (opcional)

Parâmetros de configuração para a interação do agente.

Tipos possíveis

Discriminador polimórfico: type

DynamicAgentConfig

Configuração para agentes dinâmicos.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "dynamic".

DeepResearchAgentConfig

Configuração do agente Deep Research.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "deep-research".

thinking_summaries ThinkingSummaries  (opcional)

Define se os resumos de pensamento serão incluídos na resposta.

Valores possíveis:

  • auto
  • none

visualization enum (string)  (opcional)

Define se as visualizações serão incluídas na resposta.

Valores possíveis:

  • off
  • auto
collaborative_planning boolean  (opcional)

Ativa o planejamento human-in-the-loop para o agente Deep Research. Se definido como "true", o agente Deep Research vai fornecer um plano de pesquisa na resposta. O agente só vai continuar se o usuário confirmar o plano na próxima interação.

Exemplos

Exemplo

{
  "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 dados

Conteúdo

O conteúdo da resposta.

Tipos possíveis

Discriminador polimórfico: type

TextContent

Um bloco de conteúdo de texto.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "text".

text string  (obrigatório)

Obrigatório. O conteúdo do texto.

annotations Annotation  (opcional)

Informações de citação para conteúdo gerado pelo modelo.

Informações de citação para conteúdo gerado pelo modelo.

Tipos possíveis

Discriminador polimórfico: type

UrlCitation

Uma anotação de citação de URL.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "url_citation".

url string  (opcional)

O URL.

title string  (opcional)

O título do URL.

start_index integer  (opcional)

Início do segmento da resposta atribuído a esta fonte. O índice indica o início do segmento, medido em bytes.

end_index integer  (opcional)

Fim do segmento atribuído, exclusivo.

FileCitation

Uma anotação de citação de arquivo.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "file_citation".

document_uri string  (opcional)

O URI do arquivo.

file_name string  (opcional)

O nome do arquivo.

source string  (opcional)

Fonte atribuída a uma parte do texto.

start_index integer  (opcional)

Início do segmento da resposta atribuído a esta fonte. O índice indica o início do segmento, medido em bytes.

end_index integer  (opcional)

Fim do segmento atribuído, exclusivo.

PlaceCitation

Uma anotação de citação de lugar.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "place_citation".

place_id string  (opcional)

O ID do lugar, no formato `places/{place_id}`.

name string  (opcional)

Título do lugar.

url string  (opcional)

Referência de URI do lugar.

review_snippets ReviewSnippet  (opcional)

Trechos de avaliações usados para gerar respostas sobre os recursos de um determinado lugar no Google Maps.

Encapsula um trecho de uma avaliação do usuário que responde a uma pergunta sobre os recursos de um lugar específico no Google Maps.

Campos

title string  (opcional)

Título da avaliação.

url string  (opcional)

Um link que corresponde à avaliação do usuário no Google Maps.

review_id string  (opcional)

O ID do snippet de avaliação.

start_index integer  (opcional)

Início do segmento da resposta atribuído a esta fonte. O índice indica o início do segmento, medido em bytes.

end_index integer  (opcional)

Fim do segmento atribuído, exclusivo.

ImageContent

Um bloco de conteúdo de imagem.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "image".

data string  (opcional)

O conteúdo da imagem.

uri string  (opcional)

O URI da imagem.

mime_type enum (string)  (opcional)

O tipo MIME da imagem.

Valores possíveis:

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

A resolução da mídia.

Valores possíveis:

  • low
  • medium
  • high
  • ultra_high

AudioContent

Um bloco de conteúdo de áudio.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "audio".

data string  (opcional)

O conteúdo de áudio.

uri string  (opcional)

O URI do áudio.

mime_type enum (string)  (opcional)

O tipo MIME do áudio.

Valores possíveis:

  • 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)

A taxa de amostragem do áudio.

channels integer  (opcional)

O número de canais de áudio.

DocumentContent

Um bloco de conteúdo de documento.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "document".

data string  (opcional)

O conteúdo do documento.

uri string  (opcional)

O URI do documento.

mime_type enum (string)  (opcional)

O tipo MIME do documento.

Valores possíveis:

  • application/pdf
VideoContent

Um bloco de conteúdo em vídeo.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "video".

data string  (opcional)

O conteúdo do vídeo.

uri string  (opcional)

O URI do vídeo.

mime_type enum (string)  (opcional)

O tipo MIME do vídeo.

Valores possíveis:

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

A resolução da mídia.

Valores possíveis:

  • low
  • medium
  • high
  • ultra_high

ThoughtContent

Um bloco de conteúdo de pensamento.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "thought".

signature string  (opcional)

Assinatura para corresponder à origem do back-end que fará parte da geração.

summary ThoughtSummaryContent  (opcional)

Um resumo do pensamento.

Tipos possíveis

Discriminador polimórfico: type

TextContent

Um bloco de conteúdo de texto.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "text".

text string  (obrigatório)

Obrigatório. O conteúdo do texto.

annotations Annotation  (opcional)

Informações de citação para conteúdo gerado pelo modelo.

Informações de citação para conteúdo gerado pelo modelo.

Tipos possíveis

Discriminador polimórfico: type

UrlCitation

Uma anotação de citação de URL.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "url_citation".

url string  (opcional)

O URL.

title string  (opcional)

O título do URL.

start_index integer  (opcional)

Início do segmento da resposta atribuído a esta fonte. O índice indica o início do segmento, medido em bytes.

end_index integer  (opcional)

Fim do segmento atribuído, exclusivo.

FileCitation

Uma anotação de citação de arquivo.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "file_citation".

document_uri string  (opcional)

O URI do arquivo.

file_name string  (opcional)

O nome do arquivo.

source string  (opcional)

Fonte atribuída a uma parte do texto.

start_index integer  (opcional)

Início do segmento da resposta atribuído a esta fonte. O índice indica o início do segmento, medido em bytes.

end_index integer  (opcional)

Fim do segmento atribuído, exclusivo.

PlaceCitation

Uma anotação de citação de lugar.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "place_citation".

place_id string  (opcional)

O ID do lugar, no formato `places/{place_id}`.

name string  (opcional)

Título do lugar.

url string  (opcional)

Referência de URI do lugar.

review_snippets ReviewSnippet  (opcional)

Trechos de avaliações usados para gerar respostas sobre os recursos de um determinado lugar no Google Maps.

Encapsula um trecho de uma avaliação do usuário que responde a uma pergunta sobre os recursos de um lugar específico no Google Maps.

Campos

title string  (opcional)

Título da avaliação.

url string  (opcional)

Um link que corresponde à avaliação do usuário no Google Maps.

review_id string  (opcional)

O ID do snippet de avaliação.

start_index integer  (opcional)

Início do segmento da resposta atribuído a esta fonte. O índice indica o início do segmento, medido em bytes.

end_index integer  (opcional)

Fim do segmento atribuído, exclusivo.

ImageContent

Um bloco de conteúdo de imagem.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "image".

data string  (opcional)

O conteúdo da imagem.

uri string  (opcional)

O URI da imagem.

mime_type enum (string)  (opcional)

O tipo MIME da imagem.

Valores possíveis:

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

A resolução da mídia.

Valores possíveis:

  • low
  • medium
  • high
  • ultra_high

FunctionCallContent

Um bloco de conteúdo de chamada de ferramenta de função.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "function_call".

name string  (obrigatório)

Obrigatório. O nome da ferramenta a ser chamada.

arguments object  (obrigatório)

Obrigatório. Os argumentos a serem transmitidos para a função.

id string  (obrigatório)

Obrigatório. Um ID exclusivo para essa chamada de função específica.

signature string  (opcional)

Um hash de assinatura para validação de back-end.

CodeExecutionCallContent

Conteúdo de execução de código.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "code_execution_call".

arguments CodeExecutionCallArguments  (obrigatório)

Obrigatório. Os argumentos a serem transmitidos para a execução do código.

Os argumentos a serem transmitidos para a execução do código.

Campos

language enum (string)  (opcional)

Linguagem de programação do "code".

Valores possíveis:

  • python
code string  (opcional)

O código a ser executado.

id string  (obrigatório)

Obrigatório. Um ID exclusivo para essa chamada de função específica.

signature string  (opcional)

Um hash de assinatura para validação de back-end.

UrlContextCallContent

Conteúdo do contexto do URL.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "url_context_call".

arguments UrlContextCallArguments  (obrigatório)

Obrigatório. Os argumentos a serem transmitidos para o contexto do URL.

Os argumentos a serem transmitidos para o contexto do URL.

Campos

urls array (string)  (opcional)

Os URLs a serem buscados.

id string  (obrigatório)

Obrigatório. Um ID exclusivo para essa chamada de função específica.

signature string  (opcional)

Um hash de assinatura para validação de back-end.

McpServerToolCallContent

Conteúdo da chamada de ferramenta MCPServer.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "mcp_server_tool_call".

name string  (obrigatório)

Obrigatório. O nome da ferramenta que foi chamada.

server_name string  (obrigatório)

Obrigatório. O nome do servidor MCP usado.

arguments object  (obrigatório)

Obrigatório. O objeto JSON de argumentos para a função.

id string  (obrigatório)

Obrigatório. Um ID exclusivo para essa chamada de função específica.

signature string  (opcional)

Um hash de assinatura para validação de back-end.

GoogleSearchCallContent

Conteúdo da Pesquisa Google.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "google_search_call".

argumentos GoogleSearchCallArguments  (obrigatório)

Obrigatório. Os argumentos a serem transmitidos para a Pesquisa Google.

Os argumentos a serem transmitidos para a Pesquisa Google.

Campos

queries array (string)  (opcional)

Consultas de pesquisa na Web para a pesquisa na Web de acompanhamento.

search_type enum (string)  (opcional)

O tipo de embasamento de pesquisa ativado.

Valores possíveis:

  • web_search
  • image_search
  • enterprise_web_search
id string  (obrigatório)

Obrigatório. Um ID exclusivo para essa chamada de função específica.

signature string  (opcional)

Um hash de assinatura para validação de back-end.

FileSearchCallContent

Conteúdo da Pesquisa de arquivos.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "file_search_call".

id string  (obrigatório)

Obrigatório. Um ID exclusivo para essa chamada de função específica.

signature string  (opcional)

Um hash de assinatura para validação de back-end.

GoogleMapsCallContent

Conteúdo do Google Maps.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "google_maps_call".

arguments GoogleMapsCallArguments  (opcional)

Os argumentos a serem transmitidos para a ferramenta do Google Maps.

Os argumentos a serem transmitidos para a ferramenta do Google Maps.

Campos

queries array (string)  (opcional)

As consultas a serem executadas.

id string  (obrigatório)

Obrigatório. Um ID exclusivo para essa chamada de função específica.

signature string  (opcional)

Um hash de assinatura para validação de back-end.

FunctionResultContent

Um bloco de conteúdo de resultado da ferramenta de função.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "function_result".

name string  (opcional)

O nome da ferramenta que foi chamada.

is_error boolean  (opcional)

Se a chamada de ferramenta resultou em um erro.

call_id string  (obrigatório)

Obrigatório. ID para corresponder ao ID do bloco de chamada de função.

signature string  (opcional)

Um hash de assinatura para validação de back-end.

result array (FunctionResultSubcontent) or string  (required)

O resultado da chamada de função.

CodeExecutionResultContent

Conteúdo do resultado da execução do código.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "code_execution_result".

result string  (obrigatório)

Obrigatório. A saída da execução do código.

is_error boolean  (opcional)

Se a execução do código resultou em um erro.

call_id string  (obrigatório)

Obrigatório. ID para corresponder ao ID do bloco de chamada de função.

signature string  (opcional)

Um hash de assinatura para validação de back-end.

UrlContextResultContent

Conteúdo do resultado do contexto do URL.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "url_context_result".

result UrlContextResult  (obrigatório)

Obrigatório. Os resultados do contexto do URL.

O resultado do contexto do URL.

Campos

url string  (opcional)

O URL buscado.

status enum (string)  (opcional)

O status da recuperação do URL.

Valores possíveis:

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

Indica se o contexto do URL resultou em um erro.

call_id string  (obrigatório)

Obrigatório. ID para corresponder ao ID do bloco de chamada de função.

signature string  (opcional)

Um hash de assinatura para validação de back-end.

GoogleSearchResultContent

Conteúdo do resultado da pesquisa do Google.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "google_search_result".

result GoogleSearchResult  (obrigatório)

Obrigatório. Os resultados da Pesquisa Google.

O resultado da Pesquisa Google.

Campos

search_suggestions string  (opcional)

Snippet de conteúdo da Web que pode ser incorporado a uma página da Web ou a uma WebView de app.

is_error boolean  (opcional)

Se a Pesquisa Google resultou em um erro.

call_id string  (obrigatório)

Obrigatório. ID para corresponder ao ID do bloco de chamada de função.

signature string  (opcional)

Um hash de assinatura para validação de back-end.

McpServerToolResultContent

Conteúdo do resultado da ferramenta MCPServer.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "mcp_server_tool_result".

name string  (opcional)

Nome da ferramenta chamada para essa chamada de ferramenta específica.

server_name string  (opcional)

O nome do servidor MCP usado.

call_id string  (obrigatório)

Obrigatório. ID para corresponder ao ID do bloco de chamada de função.

signature string  (opcional)

Um hash de assinatura para validação de back-end.

result array (FunctionResultSubcontent) or string  (required)

A saída da chamada do servidor MCP. Pode ser texto simples ou conteúdo avançado.

FileSearchResultContent

Conteúdo do resultado da Pesquisa de arquivos.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "file_search_result".

result FileSearchResult  (obrigatório)

Obrigatório. Os resultados da pesquisa de arquivos.

O resultado da pesquisa de arquivos.

Campos

custom_metadata array (object)  (optional)

Metadados fornecidos pelo usuário sobre o FileSearchResult.

call_id string  (obrigatório)

Obrigatório. ID para corresponder ao ID do bloco de chamada de função.

signature string  (opcional)

Um hash de assinatura para validação de back-end.

GoogleMapsResultContent

Conteúdo dos resultados do Google Maps.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "google_maps_result".

result GoogleMapsResult  (obrigatório)

Obrigatório. Os resultados do Google Maps.

O resultado do Google Maps.

Campos

places Places  (opcional)

Os lugares encontrados.

Campos

place_id string  (opcional)

O ID do lugar, no formato `places/{place_id}`.

name string  (opcional)

Título do lugar.

url string  (opcional)

Referência de URI do lugar.

review_snippets ReviewSnippet  (opcional)

Trechos de avaliações usados para gerar respostas sobre os recursos de um determinado lugar no Google Maps.

Encapsula um trecho de uma avaliação do usuário que responde a uma pergunta sobre os recursos de um lugar específico no Google Maps.

Campos

title string  (opcional)

Título da avaliação.

url string  (opcional)

Um link que corresponde à avaliação do usuário no Google Maps.

review_id string  (opcional)

O ID do snippet de avaliação.

widget_context_token string  (opcional)

Nome do recurso do token de contexto do widget do Google Maps.

call_id string  (obrigatório)

Obrigatório. ID para corresponder ao ID do bloco de chamada de função.

signature string  (opcional)

Um hash de assinatura para validação de back-end.

Exemplos

Texto

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

Imagem

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

Áudio

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

Documento

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

Vídeo

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

Raciocínio

{
  "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"
}

Chamada de função

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

Chamada de execução de código

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

Chamada de contexto de URL

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

Chamada de ferramenta do servidor MCP

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

Chamada da Pesquisa Google

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

Chamada de pesquisa de arquivos

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

Chamada do Google Maps

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

Resultado da função

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

Resultado da execução do código

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

Resultado do contexto do URL

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

Resultado da pesquisa do 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 da Ferramenta de Servidor MCP

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

Resultado da pesquisa de arquivos

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

Resultado do 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"
        }
      ]
    }
  ]
}

Ferramenta

Uma ferramenta que pode ser usada pelo modelo.

Tipos possíveis

Discriminador polimórfico: type

Função

Uma ferramenta que pode ser usada pelo modelo.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "function".

name string  (opcional)

O nome da função.

description string  (opcional)

Uma descrição da função.

parameters object  (opcional)

O esquema JSON para os parâmetros da função.

CodeExecution

Uma ferramenta que pode ser usada pelo modelo para executar código.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "code_execution".

UrlContext

Uma ferramenta que pode ser usada pelo modelo para buscar o contexto do URL.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "url_context".

ComputerUse

Uma ferramenta que pode ser usada pelo modelo para interagir com o computador.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "computer_use".

environment enum (string)  (opcional)

O ambiente em operação.

Valores possíveis:

  • browser
excludedPredefinedFunctions array (string)  (opcional)

A lista de funções predefinidas que são excluídas da chamada de modelo.

McpServer

Um MCPServer é um servidor que pode ser chamado pelo modelo para realizar ações.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "mcp_server".

name string  (opcional)

O nome do MCPServer.

url string  (opcional)

O URL completo do endpoint MCPServer. Exemplo: "https://api.example.com/mcp"

headers object  (opcional)

Opcional: campos para cabeçalhos de autenticação, tempos limite etc., se necessário.

allowed_tools AllowedTools  (opcional)

As ferramentas permitidas.

A configuração para ferramentas permitidas.

Campos

mode ToolChoiceType  (opcional)

O modo da escolha de ferramenta.

Valores possíveis:

  • auto
  • any
  • none
  • validated

tools array (string)  (opcional)

Os nomes das ferramentas permitidas.

GoogleSearch

Uma ferramenta que pode ser usada pelo modelo para pesquisar no Google.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "google_search".

search_types array (enum (string))  (opcional)

Os tipos de embasamento de pesquisa a serem ativados.

Valores possíveis:

  • web_search
  • image_search
  • enterprise_web_search
FileSearch

Uma ferramenta que pode ser usada pelo modelo para pesquisar arquivos.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "file_search".

file_search_store_names array (string)  (opcional)

Os nomes das lojas de pesquisa de arquivos a serem pesquisados.

top_k integer  (opcional)

O número de partes da recuperação semântica a serem recuperadas.

metadata_filter string  (opcional)

Filtro de metadados a ser aplicado aos documentos e partes da recuperação semântica.

GoogleMaps

Uma ferramenta que pode ser usada pelo modelo para chamar o Google Maps.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "google_maps".

enable_widget booleano  (opcional)

Se é necessário retornar um token de contexto de widget no resultado da chamada de função da resposta.

latitude number  (opcional)

A latitude da localização do usuário.

longitude number  (optional)

A longitude da localização do usuário.

Recuperação

Uma ferramenta que pode ser usada pelo modelo para recuperar arquivos.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "retrieval".

retrieval_types array (enum (string))  (opcional)

Os tipos de recuperação de arquivos a serem ativados.

Valores possíveis:

  • vertex_ai_search
vertex_ai_search_config VertexAISearchConfig  (opcional)

Usado para especificar a configuração do VertexAISearch.

Usado para especificar a configuração do VertexAISearch.

Campos

engine string  (opcional)

Opcional. Usado para especificar o Vertex AI para Pesquisa.

datastores array (string)  (opcional)

Opcional. Usado para especificar repositórios de dados da Vertex AI para Pesquisa.

Exemplos

Função

CodeExecution

UrlContext

ComputerUse

McpServer

GoogleSearch

FileSearch

GoogleMaps

Recuperação

Não há exemplos disponíveis para esse tipo.

CANNOT TRANSLATE

Campos

role string  (opcional)

O criador desta rodada. Precisa ser "user" para entrada ou "model" para saída do modelo.

content matriz (Content) ou string  (opcional)

Nenhuma descrição informada.

Exemplos

Turno do usuário

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

Turno do modelo

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

InteractionSseEvent

Tipos possíveis

Discriminador polimórfico: event_type

InteractionStartEvent

event_type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "interaction.start".

interaction Interaction  (obrigatório)

Nenhuma descrição informada.

event_id string  (opcional)

O token event_id a ser usado para retomar o fluxo de interação, a partir deste evento.

InteractionCompleteEvent

event_type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "interaction.complete".

interaction Interaction  (obrigatório)

Obrigatório. A interação concluída com saídas vazias para reduzir o tamanho do payload. Use os eventos ContentDelta anteriores para a saída real.

event_id string  (opcional)

O token event_id a ser usado para retomar o fluxo de interação, a partir deste evento.

InteractionStatusUpdate

event_type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "interaction.status_update".

interaction_id string  (obrigatório)

Nenhuma descrição informada.

status enum (string)  (obrigatório)

Nenhuma descrição informada.

Valores possíveis:

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

O token event_id a ser usado para retomar o fluxo de interação, a partir deste evento.

ContentStart

event_type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "content.start".

index integer  (obrigatório)

Nenhuma descrição informada.

content Conteúdo  (obrigatório)

Nenhuma descrição informada.

event_id string  (opcional)

O token event_id a ser usado para retomar o fluxo de interação, a partir deste evento.

ContentDelta

event_type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "content.delta".

index integer  (obrigatório)

Nenhuma descrição informada.

delta ContentDeltaData  (obrigatório)

Nenhuma descrição informada.

Os dados de conteúdo delta de um bloco de conteúdo.

Tipos possíveis

Discriminador polimórfico: type

TextDelta

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "text".

text string  (obrigatório)

Nenhuma descrição informada.

ImageDelta

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "image".

data string  (opcional)

Nenhuma descrição informada.

uri string  (opcional)

Nenhuma descrição informada.

mime_type enum (string)  (opcional)

Nenhuma descrição informada.

Valores possíveis:

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

A resolução da mídia.

Valores possíveis:

  • low
  • medium
  • high
  • ultra_high

AudioDelta

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "audio".

data string  (opcional)

Nenhuma descrição informada.

uri string  (opcional)

Nenhuma descrição informada.

mime_type enum (string)  (opcional)

Nenhuma descrição informada.

Valores possíveis:

  • 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)

A taxa de amostragem do áudio.

channels integer  (opcional)

O número de canais de áudio.

DocumentDelta

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "document".

data string  (opcional)

Nenhuma descrição informada.

uri string  (opcional)

Nenhuma descrição informada.

mime_type enum (string)  (opcional)

Nenhuma descrição informada.

Valores possíveis:

  • application/pdf
VideoDelta

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "video".

data string  (opcional)

Nenhuma descrição informada.

uri string  (opcional)

Nenhuma descrição informada.

mime_type enum (string)  (opcional)

Nenhuma descrição informada.

Valores possíveis:

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

A resolução da mídia.

Valores possíveis:

  • low
  • medium
  • high
  • ultra_high

ThoughtSummaryDelta

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "thought_summary".

content ThoughtSummaryContent  (opcional)

Um novo item de resumo a ser adicionado ao pensamento.

Tipos possíveis

Discriminador polimórfico: type

TextContent

Um bloco de conteúdo de texto.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "text".

text string  (obrigatório)

Obrigatório. O conteúdo do texto.

annotations Annotation  (opcional)

Informações de citação para conteúdo gerado pelo modelo.

Informações de citação para conteúdo gerado pelo modelo.

Tipos possíveis

Discriminador polimórfico: type

UrlCitation

Uma anotação de citação de URL.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "url_citation".

url string  (opcional)

O URL.

title string  (opcional)

O título do URL.

start_index integer  (opcional)

Início do segmento da resposta atribuído a esta fonte. O índice indica o início do segmento, medido em bytes.

end_index integer  (opcional)

Fim do segmento atribuído, exclusivo.

FileCitation

Uma anotação de citação de arquivo.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "file_citation".

document_uri string  (opcional)

O URI do arquivo.

file_name string  (opcional)

O nome do arquivo.

source string  (opcional)

Fonte atribuída a uma parte do texto.

start_index integer  (opcional)

Início do segmento da resposta atribuído a esta fonte. O índice indica o início do segmento, medido em bytes.

end_index integer  (opcional)

Fim do segmento atribuído, exclusivo.

PlaceCitation

Uma anotação de citação de lugar.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "place_citation".

place_id string  (opcional)

O ID do lugar, no formato `places/{place_id}`.

name string  (opcional)

Título do lugar.

url string  (opcional)

Referência de URI do lugar.

review_snippets ReviewSnippet  (opcional)

Trechos de avaliações usados para gerar respostas sobre os recursos de um determinado lugar no Google Maps.

Encapsula um trecho de uma avaliação do usuário que responde a uma pergunta sobre os recursos de um lugar específico no Google Maps.

Campos

title string  (opcional)

Título da avaliação.

url string  (opcional)

Um link que corresponde à avaliação do usuário no Google Maps.

review_id string  (opcional)

O ID do snippet de avaliação.

start_index integer  (opcional)

Início do segmento da resposta atribuído a esta fonte. O índice indica o início do segmento, medido em bytes.

end_index integer  (opcional)

Fim do segmento atribuído, exclusivo.

ImageContent

Um bloco de conteúdo de imagem.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "image".

data string  (opcional)

O conteúdo da imagem.

uri string  (opcional)

O URI da imagem.

mime_type enum (string)  (opcional)

O tipo MIME da imagem.

Valores possíveis:

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

A resolução da mídia.

Valores possíveis:

  • low
  • medium
  • high
  • ultra_high

ThoughtSignatureDelta

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "thought_signature".

signature string  (opcional)

Assinatura para corresponder à origem do back-end que fará parte da geração.

FunctionCallDelta

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "function_call".

name string  (obrigatório)

Nenhuma descrição informada.

arguments object  (obrigatório)

Nenhuma descrição informada.

id string  (obrigatório)

Obrigatório. Um ID exclusivo para essa chamada de função específica.

signature string  (opcional)

Um hash de assinatura para validação de back-end.

CodeExecutionCallDelta

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "code_execution_call".

arguments CodeExecutionCallArguments  (obrigatório)

Nenhuma descrição informada.

Os argumentos a serem transmitidos para a execução do código.

Campos

language enum (string)  (opcional)

Linguagem de programação do "code".

Valores possíveis:

  • python
code string  (opcional)

O código a ser executado.

id string  (obrigatório)

Obrigatório. Um ID exclusivo para essa chamada de função específica.

signature string  (opcional)

Um hash de assinatura para validação de back-end.

UrlContextCallDelta

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "url_context_call".

arguments UrlContextCallArguments  (obrigatório)

Nenhuma descrição informada.

Os argumentos a serem transmitidos para o contexto do URL.

Campos

urls array (string)  (opcional)

Os URLs a serem buscados.

id string  (obrigatório)

Obrigatório. Um ID exclusivo para essa chamada de função específica.

signature string  (opcional)

Um hash de assinatura para validação de back-end.

GoogleSearchCallDelta

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "google_search_call".

argumentos GoogleSearchCallArguments  (obrigatório)

Nenhuma descrição informada.

Os argumentos a serem transmitidos para a Pesquisa Google.

Campos

queries array (string)  (opcional)

Consultas de pesquisa na Web para a pesquisa na Web de acompanhamento.

id string  (obrigatório)

Obrigatório. Um ID exclusivo para essa chamada de função específica.

signature string  (opcional)

Um hash de assinatura para validação de back-end.

McpServerToolCallDelta

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "mcp_server_tool_call".

name string  (obrigatório)

Nenhuma descrição informada.

server_name string  (obrigatório)

Nenhuma descrição informada.

arguments object  (obrigatório)

Nenhuma descrição informada.

id string  (obrigatório)

Obrigatório. Um ID exclusivo para essa chamada de função específica.

signature string  (opcional)

Um hash de assinatura para validação de back-end.

FileSearchCallDelta

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "file_search_call".

id string  (obrigatório)

Obrigatório. Um ID exclusivo para essa chamada de função específica.

signature string  (opcional)

Um hash de assinatura para validação de back-end.

GoogleMapsCallDelta

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "google_maps_call".

arguments GoogleMapsCallArguments  (opcional)

Os argumentos a serem transmitidos para a ferramenta do Google Maps.

Os argumentos a serem transmitidos para a ferramenta do Google Maps.

Campos

queries array (string)  (opcional)

As consultas a serem executadas.

id string  (obrigatório)

Obrigatório. Um ID exclusivo para essa chamada de função específica.

signature string  (opcional)

Um hash de assinatura para validação de back-end.

FunctionResultDelta

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "function_result".

name string  (opcional)

Nenhuma descrição informada.

is_error boolean  (opcional)

Nenhuma descrição informada.

call_id string  (obrigatório)

Obrigatório. ID para corresponder ao ID do bloco de chamada de função.

signature string  (opcional)

Um hash de assinatura para validação de back-end.

result array (FunctionResultSubcontent) or string  (required)

Nenhuma descrição informada.

CodeExecutionResultDelta

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "code_execution_result".

result string  (obrigatório)

Nenhuma descrição informada.

is_error boolean  (opcional)

Nenhuma descrição informada.

call_id string  (obrigatório)

Obrigatório. ID para corresponder ao ID do bloco de chamada de função.

signature string  (opcional)

Um hash de assinatura para validação de back-end.

UrlContextResultDelta

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "url_context_result".

result UrlContextResult  (obrigatório)

Nenhuma descrição informada.

O resultado do contexto do URL.

Campos

url string  (opcional)

O URL buscado.

status enum (string)  (opcional)

O status da recuperação do URL.

Valores possíveis:

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

Nenhuma descrição informada.

call_id string  (obrigatório)

Obrigatório. ID para corresponder ao ID do bloco de chamada de função.

signature string  (opcional)

Um hash de assinatura para validação de back-end.

GoogleSearchResultDelta

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "google_search_result".

result GoogleSearchResult  (obrigatório)

Nenhuma descrição informada.

O resultado da Pesquisa Google.

Campos

search_suggestions string  (opcional)

Snippet de conteúdo da Web que pode ser incorporado a uma página da Web ou a uma WebView de app.

is_error boolean  (opcional)

Nenhuma descrição informada.

call_id string  (obrigatório)

Obrigatório. ID para corresponder ao ID do bloco de chamada de função.

signature string  (opcional)

Um hash de assinatura para validação de back-end.

McpServerToolResultDelta

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "mcp_server_tool_result".

name string  (opcional)

Nenhuma descrição informada.

server_name string  (opcional)

Nenhuma descrição informada.

call_id string  (obrigatório)

Obrigatório. ID para corresponder ao ID do bloco de chamada de função.

signature string  (opcional)

Um hash de assinatura para validação de back-end.

result array (FunctionResultSubcontent) or string  (required)

Nenhuma descrição informada.

FileSearchResultDelta

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "file_search_result".

result FileSearchResult  (obrigatório)

Nenhuma descrição informada.

O resultado da pesquisa de arquivos.

Campos

custom_metadata array (object)  (optional)

Metadados fornecidos pelo usuário sobre o FileSearchResult.

call_id string  (obrigatório)

Obrigatório. ID para corresponder ao ID do bloco de chamada de função.

signature string  (opcional)

Um hash de assinatura para validação de back-end.

GoogleMapsResultDelta

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "google_maps_result".

result GoogleMapsResult  (opcional)

Os resultados do Google Maps.

O resultado do Google Maps.

Campos

places Places  (opcional)

Os lugares encontrados.

Campos

place_id string  (opcional)

O ID do lugar, no formato `places/{place_id}`.

name string  (opcional)

Título do lugar.

url string  (opcional)

Referência de URI do lugar.

review_snippets ReviewSnippet  (opcional)

Trechos de avaliações usados para gerar respostas sobre os recursos de um determinado lugar no Google Maps.

Encapsula um trecho de uma avaliação do usuário que responde a uma pergunta sobre os recursos de um lugar específico no Google Maps.

Campos

title string  (opcional)

Título da avaliação.

url string  (opcional)

Um link que corresponde à avaliação do usuário no Google Maps.

review_id string  (opcional)

O ID do snippet de avaliação.

widget_context_token string  (opcional)

Nome do recurso do token de contexto do widget do Google Maps.

call_id string  (obrigatório)

Obrigatório. ID para corresponder ao ID do bloco de chamada de função.

signature string  (opcional)

Um hash de assinatura para validação de back-end.

TextAnnotationDelta

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "text_annotation".

annotations Annotation  (opcional)

Informações de citação para conteúdo gerado pelo modelo.

Informações de citação para conteúdo gerado pelo modelo.

Tipos possíveis

Discriminador polimórfico: type

UrlCitation

Uma anotação de citação de URL.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "url_citation".

url string  (opcional)

O URL.

title string  (opcional)

O título do URL.

start_index integer  (opcional)

Início do segmento da resposta atribuído a esta fonte. O índice indica o início do segmento, medido em bytes.

end_index integer  (opcional)

Fim do segmento atribuído, exclusivo.

FileCitation

Uma anotação de citação de arquivo.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "file_citation".

document_uri string  (opcional)

O URI do arquivo.

file_name string  (opcional)

O nome do arquivo.

source string  (opcional)

Fonte atribuída a uma parte do texto.

start_index integer  (opcional)

Início do segmento da resposta atribuído a esta fonte. O índice indica o início do segmento, medido em bytes.

end_index integer  (opcional)

Fim do segmento atribuído, exclusivo.

PlaceCitation

Uma anotação de citação de lugar.

type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "place_citation".

place_id string  (opcional)

O ID do lugar, no formato `places/{place_id}`.

name string  (opcional)

Título do lugar.

url string  (opcional)

Referência de URI do lugar.

review_snippets ReviewSnippet  (opcional)

Trechos de avaliações usados para gerar respostas sobre os recursos de um determinado lugar no Google Maps.

Encapsula um trecho de uma avaliação do usuário que responde a uma pergunta sobre os recursos de um lugar específico no Google Maps.

Campos

title string  (opcional)

Título da avaliação.

url string  (opcional)

Um link que corresponde à avaliação do usuário no Google Maps.

review_id string  (opcional)

O ID do snippet de avaliação.

start_index integer  (opcional)

Início do segmento da resposta atribuído a esta fonte. O índice indica o início do segmento, medido em bytes.

end_index integer  (opcional)

Fim do segmento atribuído, exclusivo.

event_id string  (opcional)

O token event_id a ser usado para retomar o fluxo de interação, a partir deste evento.

ContentStop

event_type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "content.stop".

index integer  (obrigatório)

Nenhuma descrição informada.

event_id string  (opcional)

O token event_id a ser usado para retomar o fluxo de interação, a partir deste evento.

ErrorEvent

event_type object  (obrigatório)

Nenhuma descrição informada.

Sempre defina como "error".

error Error  (opcional)

Nenhuma descrição informada.

Mensagem de erro de uma interação.

Campos

code string  (opcional)

Um URI que identifica o tipo de erro.

message string  (opcional)

Uma mensagem de erro legível.

event_id string  (opcional)

O token event_id a ser usado para retomar o fluxo de interação, a partir deste evento.

Exemplos

Início da interação

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

Interação concluída

{
  "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
    }
  }
}

Atualização do status da interação

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

Início do conteúdo

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

Delta de conteúdo

{
  "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
}

Parada de conteúdo

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

Evento de erro

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