Limites de uso

Como a API Google Forms é um serviço compartilhado, aplicamos cotas e limitações para garantir que ela seja usada de maneira justa por todos os usuários e proteger a integridade geral do sistema do Google Workspace.

Se você exceder uma cota, geralmente receberá uma resposta de código de status HTTP 429: Too many requests. Se isso acontecer, use um algoritmo de espera exponencial e tente novamente mais tarde. Desde que você fique dentro das cotas por minuto abaixo, não haverá limite para o número de solicitações que podem ser feitas por dia.

Observação:as visualizações de formulários têm limites adicionais. Consulte Configurar e receber notificações push para mais informações.

A tabela a seguir detalha os limites de solicitação:

Cotas
Solicitações de leitura
Por dia em cada projeto Ilimitado
Por minuto em cada projeto 975
Por minuto, usuário e projeto 390
Solicitações de leitura caras

Usado para solicitações forms.responses.list.

Por dia em cada projeto Ilimitado
Por minuto em cada projeto 450
Por minuto, usuário e projeto 180
Solicitações de gravação
Por dia em cada projeto Ilimitado
Por minuto em cada projeto 375
Por minuto, usuário e projeto 150

Resolver erros de cota com base no tempo

Para todos os erros baseados em tempo (máximo de N solicitações por X minutos), recomendamos que seu código identifique a exceção e use uma espera exponencial truncada para garantir que os dispositivos não gerem carga excessiva.

A espera exponencial é uma estratégia padrão de tratamento de erros para aplicativos de rede. Um algoritmo de espera exponencial repete solicitações usando tempos de espera exponencialmente crescentes entre as solicitações, até um tempo máximo de espera. Se as solicitações ainda falharem, é importante que o atraso entre as solicitações aumente ao longo do tempo até que elas sejam bem-sucedidas.

Exemplo de algoritmo

Um algoritmo de espera exponencial repete solicitações exponencialmente, aumentando o tempo de espera entre novas tentativas até um tempo máximo de espera. Por exemplo:

  1. Faça uma solicitação para a API Google Forms.
  2. Se a solicitação falhar, aguarde 1 + random_number_milliseconds e tente de novo.
  3. Se a solicitação falhar, aguarde 2 + random_number_milliseconds e tente de novo.
  4. Se a solicitação falhar, aguarde 4 + random_number_milliseconds e tente de novo.
  5. E assim por diante, até um tempo maximum_backoff.
  6. Continue aguardando e tentando até um número máximo de tentativas, mas não aumente o período de espera entre elas.

onde:

  • O tempo de espera é min(((2^n)+random_number_milliseconds), maximum_backoff), com n incrementado em 1 a cada iteração (solicitação).
  • random_number_milliseconds é um número aleatório de milissegundos menor ou igual a 1.000. Isso ajuda a evitar casos em que muitos clientes são sincronizados por alguma situação e todos tentam novamente ao mesmo tempo, enviando solicitações em ondas sincronizadas. O valor de random_number_milliseconds é recalculado após cada solicitação de nova tentativa.
  • maximum_backoff costuma ser 32 ou 64 segundos. O valor apropriado depende do caso de uso.

O cliente pode continuar tentando novamente depois de maximum_backoff. As novas tentativas após esse ponto não precisam continuar aumentando o tempo de espera. Por exemplo, se um cliente usar um tempo maximum_backoff de 64 segundos, depois de atingir esse valor, ele poderá tentar novamente a cada 64 segundos. Em algum momento, os clientes serão impedidos de tentar novamente indefinidamente.

O tempo de espera entre novas tentativas e o número de novas tentativas dependem do caso de uso e das condições da rede.

Preços

O uso da API Google Forms está disponível sem custo adicional. Exceder os limites de solicitações de cota não gera cobranças extras, e a conta não será faturada.

Solicitar aumento de cota

Dependendo do uso de recursos do seu projeto, talvez seja necessário solicitar um aumento de cota. As chamadas de API por uma conta de serviço usam uma única conta. O pedido de aumento de cota não garante a aprovação. Grandes aumentos de cotas podem levar mais tempo para serem aprovados.

Nem todos os projetos têm as mesmas cotas. À medida que você usa cada vez mais o Google Cloud, pode ser necessário aumentar as cotas. Caso espere um aumento significativo no uso, solicite o ajuste das cotas na página "Cotas" do console do Google Cloud.

Para saber mais, consulte os seguintes recursos: