Gemini Webhooks API

Os webhooks permitem que a API Gemini envie notificações em tempo real para seu servidor quando operações assíncronas ou de longa duração (LROs) são concluídas. Isso substitui a necessidade de fazer polling da API para atualizações de status, reduzindo a latência e a sobrecarga.

CreateWebhook

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

Cria um webhook.

Corpo da solicitação

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

name string  (opcional)

Opcional. O nome do webhook fornecido pelo usuário.

subscribed_events array (enum (string))  (obrigatório)

Obrigatório. Os eventos a que o webhook está inscrito. Eventos disponíveis: - batch.succeeded - batch.expired - batch.failed - interaction.requires_action - interaction.completed - interaction.failed - video.generated

Valores possíveis:

  • batch.succeeded

    O processamento em lote foi concluído.

  • batch.expired

    O lote não foi processado dentro do período de 48 horas.

  • batch.failed

    O job em lote falhou.

  • interaction.requires_action

    A interação exige uma ação (por exemplo, chamada de função).

  • interaction.completed

    A interação foi concluída.

  • interaction.failed

    Falha na interação.

  • video.generated

    A geração de vídeo foi concluída.

uri string  (obrigatório)

Obrigatório. O URI para onde os eventos de webhook serão enviados.

Resposta

Se bem-sucedido, o corpo da resposta incluirá dados com a estrutura a seguir:

create_time string  (opcional)

Apenas saída. O carimbo de data/hora em que o webhook foi criado.

id string  (opcional)

Apenas saída. O ID do webhook.

name string  (opcional)

Opcional. O nome do webhook fornecido pelo usuário.

new_signing_secret string  (opcional)

Apenas saída. O novo secret de assinatura do webhook. Preenchido apenas na criação.

signing_secrets array (SigningSecret)  (opcional)

Apenas saída. Os secrets de assinatura associados a este webhook.

Representa um secret de assinatura usado para verificar payloads de webhook.

Campos

expire_time string  (opcional)

Apenas saída. A data de validade da chave secreta de assinatura.

truncated_secret string  (opcional)

Apenas saída. A versão truncada da chave secreta de assinatura.

state enum (string)  (opcional)

Apenas saída. O estado do webhook.

Valores possíveis:

  • enabled

    O webhook está ativado.

  • disabled

    O webhook foi desativado pelo usuário.

  • disabled_due_to_failed_deliveries

    O webhook está desativado devido a falhas na entrega.

subscribed_events array (enum (string))  (opcional)

Obrigatório. Os eventos a que o webhook está inscrito. Eventos disponíveis: - batch.succeeded - batch.expired - batch.failed - interaction.requires_action - interaction.completed - interaction.failed - video.generated

Valores possíveis:

  • batch.succeeded

    O processamento em lote foi concluído.

  • batch.expired

    O lote não foi processado dentro do período de 48 horas.

  • batch.failed

    O job em lote falhou.

  • interaction.requires_action

    A interação exige uma ação (por exemplo, chamada de função).

  • interaction.completed

    A interação foi concluída.

  • interaction.failed

    Falha na interação.

  • video.generated

    A geração de vídeo foi concluída.

update_time string  (opcional)

Apenas saída. O carimbo de data/hora da última atualização do webhook.

uri string  (opcional)

Obrigatório. O URI para onde os eventos de webhook serão enviados.

Exemplo

Exemplo de resposta

{
  "create_time": "string",
  "id": "string",
  "name": "string",
  "new_signing_secret": "string",
  "signing_secrets": [
    {
      "expire_time": "string",
      "truncated_secret": "string"
    }
  ],
  "state": "enabled",
  "subscribed_events": [
    "batch.succeeded"
  ],
  "update_time": "string",
  "uri": "string"
}

PingWebhook

post https://generativelanguage.googleapis.com/v1beta/webhooks/{id}:ping

Envia um evento de ping para um webhook.

Parâmetros de caminho / consulta

id string  (obrigatório)

Obrigatório. O ID do webhook a ser pingado. Formato: `{webhook_id}`

Corpo da solicitação

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

Resposta

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

Exemplo

RotateSigningSecret

post https://generativelanguage.googleapis.com/v1beta/webhooks/{id}:rotateSigningSecret

Gera um novo secret de assinatura para um webhook.

Parâmetros de caminho / consulta

id string  (obrigatório)

Obrigatório. O ID do webhook para o qual um segredo de assinatura será gerado. Formato: `{webhook_id}`

Corpo da solicitação

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

revocation_behavior enum (string)  (opcional)

Opcional. O comportamento de revogação para secrets de assinatura anteriores.

Valores possíveis:

  • revoke_previous_secrets_after_h24

    Gere um novo secret de assinatura e revogue todos os anteriores após 24 horas. Opção padrão e mais segura para migrações.

  • revoke_previous_secrets_immediately

    Revogue todos os secrets anteriores imediatamente. Use com cuidado, porque isso pode interromper as notificações em andamento.

Resposta

Se bem-sucedido, o corpo da resposta incluirá dados com a estrutura a seguir:

secret string  (opcional)

Apenas saída. A chave secreta de assinatura recém-gerada.

Exemplo

Exemplo de resposta

{
  "secret": "string"
}

ListWebhooks

get https://generativelanguage.googleapis.com/v1beta/webhooks

Lista todos os webhooks.

Parâmetros de caminho / consulta

page_size integer  (optional)

Opcional. O número máximo de webhooks a serem retornados. O serviço pode retornar menos que esse valor. Se não for especificado, no máximo 50 webhooks serão retornados. O valor máximo é 1.000.

page_token string  (opcional)

Opcional. Um token de página recebido de uma chamada "ListWebhooks" anterior. Forneça isso para recuperar a página subsequente.

Resposta

Se bem-sucedido, o corpo da resposta incluirá dados com a estrutura a seguir:

next_page_token string  (opcional)

Um token, que pode ser enviado como "page_token" para recuperar a próxima página. Se esse campo for omitido, não haverá páginas subsequentes.

webhooks array (Webhook)  (opcional)

Os webhooks.

Exemplo

Exemplo de resposta

{
  "next_page_token": "string",
  "webhooks": [
    {
      "create_time": "string",
      "id": "string",
      "name": "string",
      "new_signing_secret": "string",
      "signing_secrets": [
        {
          "expire_time": "string",
          "truncated_secret": "string"
        }
      ],
      "state": "enabled",
      "subscribed_events": [
        "batch.succeeded"
      ],
      "update_time": "string",
      "uri": "string"
    }
  ]
}

GetWebhook

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

Recebe um webhook específico.

Parâmetros de caminho / consulta

id string  (obrigatório)

Obrigatório. O ID do webhook a ser recuperado.

Resposta

Se bem-sucedido, o corpo da resposta incluirá dados com a estrutura a seguir:

create_time string  (opcional)

Apenas saída. O carimbo de data/hora em que o webhook foi criado.

id string  (opcional)

Apenas saída. O ID do webhook.

name string  (opcional)

Opcional. O nome do webhook fornecido pelo usuário.

new_signing_secret string  (opcional)

Apenas saída. O novo secret de assinatura do webhook. Preenchido apenas na criação.

signing_secrets array (SigningSecret)  (opcional)

Apenas saída. Os secrets de assinatura associados a este webhook.

Representa um secret de assinatura usado para verificar payloads de webhook.

Campos

expire_time string  (opcional)

Apenas saída. A data de validade da chave secreta de assinatura.

truncated_secret string  (opcional)

Apenas saída. A versão truncada da chave secreta de assinatura.

state enum (string)  (opcional)

Apenas saída. O estado do webhook.

Valores possíveis:

  • enabled

    O webhook está ativado.

  • disabled

    O webhook foi desativado pelo usuário.

  • disabled_due_to_failed_deliveries

    O webhook está desativado devido a falhas na entrega.

subscribed_events array (enum (string))  (opcional)

Obrigatório. Os eventos a que o webhook está inscrito. Eventos disponíveis: - batch.succeeded - batch.expired - batch.failed - interaction.requires_action - interaction.completed - interaction.failed - video.generated

Valores possíveis:

  • batch.succeeded

    O processamento em lote foi concluído.

  • batch.expired

    O lote não foi processado dentro do período de 48 horas.

  • batch.failed

    O job em lote falhou.

  • interaction.requires_action

    A interação exige uma ação (por exemplo, chamada de função).

  • interaction.completed

    A interação foi concluída.

  • interaction.failed

    Falha na interação.

  • video.generated

    A geração de vídeo foi concluída.

update_time string  (opcional)

Apenas saída. O carimbo de data/hora da última atualização do webhook.

uri string  (opcional)

Obrigatório. O URI para onde os eventos de webhook serão enviados.

Exemplo

Exemplo de resposta

{
  "create_time": "string",
  "id": "string",
  "name": "string",
  "new_signing_secret": "string",
  "signing_secrets": [
    {
      "expire_time": "string",
      "truncated_secret": "string"
    }
  ],
  "state": "enabled",
  "subscribed_events": [
    "batch.succeeded"
  ],
  "update_time": "string",
  "uri": "string"
}

UpdateWebhook

patch https://generativelanguage.googleapis.com/v1beta/webhooks/{id}

Atualiza um webhook existente.

Parâmetros de caminho / consulta

id string  (obrigatório)

Obrigatório. O ID do webhook a ser atualizado.

update_mask string  (opcional)

Opcional. Lista de campos a serem atualizados.

Corpo da solicitação

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

name string  (opcional)

Opcional. O nome do webhook fornecido pelo usuário.

state enum (string)  (opcional)

Opcional. O estado do webhook.

Valores possíveis:

  • enabled

    O webhook está ativado.

  • disabled

    O webhook foi desativado pelo usuário.

  • disabled_due_to_failed_deliveries

    O webhook está desativado devido a falhas na entrega.

subscribed_events array (enum (string))  (opcional)

Opcional. Os eventos a que o webhook está inscrito. Eventos disponíveis: - batch.succeeded - batch.expired - batch.failed - interaction.requires_action - interaction.completed - interaction.failed - video.generated

Valores possíveis:

  • batch.succeeded

    O processamento em lote foi concluído.

  • batch.expired

    O lote não foi processado dentro do período de 48 horas.

  • batch.failed

    O job em lote falhou.

  • interaction.requires_action

    A interação exige uma ação (por exemplo, chamada de função).

  • interaction.completed

    A interação foi concluída.

  • interaction.failed

    Falha na interação.

  • video.generated

    A geração de vídeo foi concluída.

uri string  (opcional)

Opcional. O URI para onde os eventos de webhook serão enviados.

Resposta

Se bem-sucedido, o corpo da resposta incluirá dados com a estrutura a seguir:

create_time string  (opcional)

Apenas saída. O carimbo de data/hora em que o webhook foi criado.

id string  (opcional)

Apenas saída. O ID do webhook.

name string  (opcional)

Opcional. O nome do webhook fornecido pelo usuário.

new_signing_secret string  (opcional)

Apenas saída. O novo secret de assinatura do webhook. Preenchido apenas na criação.

signing_secrets array (SigningSecret)  (opcional)

Apenas saída. Os secrets de assinatura associados a este webhook.

Representa um secret de assinatura usado para verificar payloads de webhook.

Campos

expire_time string  (opcional)

Apenas saída. A data de validade da chave secreta de assinatura.

truncated_secret string  (opcional)

Apenas saída. A versão truncada da chave secreta de assinatura.

state enum (string)  (opcional)

Apenas saída. O estado do webhook.

Valores possíveis:

  • enabled

    O webhook está ativado.

  • disabled

    O webhook foi desativado pelo usuário.

  • disabled_due_to_failed_deliveries

    O webhook está desativado devido a falhas na entrega.

subscribed_events array (enum (string))  (opcional)

Obrigatório. Os eventos a que o webhook está inscrito. Eventos disponíveis: - batch.succeeded - batch.expired - batch.failed - interaction.requires_action - interaction.completed - interaction.failed - video.generated

Valores possíveis:

  • batch.succeeded

    O processamento em lote foi concluído.

  • batch.expired

    O lote não foi processado dentro do período de 48 horas.

  • batch.failed

    O job em lote falhou.

  • interaction.requires_action

    A interação exige uma ação (por exemplo, chamada de função).

  • interaction.completed

    A interação foi concluída.

  • interaction.failed

    Falha na interação.

  • video.generated

    A geração de vídeo foi concluída.

update_time string  (opcional)

Apenas saída. O carimbo de data/hora da última atualização do webhook.

uri string  (opcional)

Obrigatório. O URI para onde os eventos de webhook serão enviados.

Exemplo

Exemplo de resposta

{
  "create_time": "string",
  "id": "string",
  "name": "string",
  "new_signing_secret": "string",
  "signing_secrets": [
    {
      "expire_time": "string",
      "truncated_secret": "string"
    }
  ],
  "state": "enabled",
  "subscribed_events": [
    "batch.succeeded"
  ],
  "update_time": "string",
  "uri": "string"
}

DeleteWebhook

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

Exclui um webhook.

Parâmetros de caminho / consulta

id string  (obrigatório)

Obrigatório. O ID do webhook a ser excluído. Formato: `{webhook_id}`

Resposta

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

Exemplo

Recursos

Webhook

Um recurso de webhook.

Campos

create_time string  (opcional)

Apenas saída. O carimbo de data/hora em que o webhook foi criado.

id string  (opcional)

Apenas saída. O ID do webhook.

name string  (opcional)

Opcional. O nome do webhook fornecido pelo usuário.

new_signing_secret string  (opcional)

Apenas saída. O novo secret de assinatura do webhook. Preenchido apenas na criação.

signing_secrets array (SigningSecret)  (opcional)

Apenas saída. Os secrets de assinatura associados a este webhook.

Representa um secret de assinatura usado para verificar payloads de webhook.

Campos

expire_time string  (opcional)

Apenas saída. A data de validade da chave secreta de assinatura.

truncated_secret string  (opcional)

Apenas saída. A versão truncada da chave secreta de assinatura.

state enum (string)  (opcional)

Apenas saída. O estado do webhook.

Valores possíveis:

  • enabled

    O webhook está ativado.

  • disabled

    O webhook foi desativado pelo usuário.

  • disabled_due_to_failed_deliveries

    O webhook está desativado devido a falhas na entrega.

subscribed_events array (enum (string))  (opcional)

Obrigatório. Os eventos a que o webhook está inscrito. Eventos disponíveis: - batch.succeeded - batch.expired - batch.failed - interaction.requires_action - interaction.completed - interaction.failed - video.generated

Valores possíveis:

  • batch.succeeded

    O processamento em lote foi concluído.

  • batch.expired

    O lote não foi processado dentro do período de 48 horas.

  • batch.failed

    O job em lote falhou.

  • interaction.requires_action

    A interação exige uma ação (por exemplo, chamada de função).

  • interaction.completed

    A interação foi concluída.

  • interaction.failed

    Falha na interação.

  • video.generated

    A geração de vídeo foi concluída.

update_time string  (opcional)

Apenas saída. O carimbo de data/hora da última atualização do webhook.

uri string  (opcional)

Obrigatório. O URI para onde os eventos de webhook serão enviados.