API Directory: limites e cotas

Os limites e as cotas protegem a infraestrutura do Google contra um processo automatizado que usa a API Directory de maneira inadequada. Solicitações excessivas de uma API podem resultar de um erro de digitação inofensivo ou de um sistema projetado ineficientemente que faz chamadas desnecessárias de API. Seja qual for a causa, bloquear o tráfego de uma fonte específica assim que ele atinge um limite é necessário para garantir a integridade geral do sistema do Google Workspace. Elas garantem que as ações de um desenvolvedor não afetem negativamente a comunidade de modo mais amplo.

No caso improvável de falha da sua solicitação de API, a API vai retornar um código de status HTTP e o motivo do erro. Além disso, o corpo da resposta conterá uma descrição detalhada do que causou o erro.

A lista a seguir mostra os possíveis códigos de erro, os motivos, as descrições correspondentes e a ação recomendada para erros causados por limites de cota.

Código Motivo Descrição Ação recomendada
403 userRateLimitExceeded Indica que o limite da taxa de usuário foi ultrapassado. O valor padrão definido no console do Google Cloud é de 2.400 consultas por minuto,usuário e projeto do Google Cloud. Aumente os limites por usuário na página de cotas da API SDK Admin do seu projeto do Google Cloud ou diminua a taxa de envio de solicitações usando a espera exponencial.
403 quotaExceeded Indica que o limite de solicitações simultâneas para uma determinada operação foi atingido. Tente novamente usando a espera exponencial. Reduza a taxa de envio das solicitações.
429 rateLimitExceeded Indica que o limite de solicitações simultâneas para uma determinada operação foi atingido. Tente novamente usando a espera exponencial. Reduza a taxa de envio das solicitações. Esse limite é por conta do Google Workspace, não por cliente de API ou usuário. Não é possível aumentar essa limite.

Implementação de backoff exponencial

Backoff exponencial é o processo em que um cliente repete periodicamente uma solicitação com falha por um período cada vez maior. É uma estratégia de gerenciamento de erros padrão para aplicativos de rede. O uso da espera exponencial aumenta a eficiência do uso da largura de banda, reduz o número de solicitações necessárias para receber uma resposta bem-sucedida e maximiza o rendimento de solicitações em ambientes simultâneos.

Veja a seguir o fluxo de implementação de backoff exponencial simples.

  1. Fazer uma solicitação para a API
  2. Receber uma resposta de erro que tem um código de erro passível de repetição
  3. Aguarde 1 segundo e random_number_milliseconds.
  4. Repetir a solicitação
  5. Receber uma resposta de erro que tem um código de erro passível de repetição
  6. Aguarde 2 segundos e random_number_milliseconds.
  7. Repetir a solicitação
  8. Receber uma resposta de erro que tem um código de erro passível de repetição
  9. Aguarde 4 segundos e random_number_milliseconds.
  10. Repetir a solicitação
  11. Receber uma resposta de erro que tem um código de erro passível de repetição
  12. Aguarde 8 segundos e random_number_milliseconds.
  13. Repetir a solicitação
  14. Receber uma resposta de erro que tem um código de erro passível de repetição
  15. Aguarde 16 segundos e random_number_milliseconds.
  16. Repetir a solicitação
  17. Se você continuar recebendo um erro, pare e registre-o.

No fluxo acima, random_number_milliseconds é um número aleatório de milissegundos menor ou igual a 1.000. Ele é necessário para evitar determinados erros de bloqueio em algumas implementações simultâneas. É preciso redefinir o random_number_milliseconds após cada espera.

Observação: o período de espera é sempre (2 ^ n) + random_number_milliseconds, em que n é um número inteiro monotonicamente crescente, definido inicialmente como 0. n é incrementado em 1 para cada iteração (cada solicitação).

O algoritmo é definido para terminar quando n é 5. Esse limite entra em vigor somente para impedir que os clientes façam novas tentativas infinitamente e resulta em um atraso total de cerca de 32 segundos antes de uma solicitação ser considerada "um erro irrecuperável". Seu cliente de API pode implementar um número maior de tentativas, se necessário.

Limites e cotas de APIs

Categorias de limite da API Limites
Criação de usuários Não é possível criar mais de 10 usuários por domínio por segundo usando a API Directory.
Grupo adicionado como participante de outro grupo Pode haver um atraso de até 10 minutos antes que os participantes do grupo filho apareçam como participantes do grupo pai. Esse limite pode mudar de acordo com a capacidade do sistema.
Dispositivos móveis

Com a API Directory, é possível realizar até:

  • 20 solicitações de ação por segundo.
  • 20 solicitações de exclusão por segundo.
  • 10 solicitações de recebimento por segundo.
  • 10 solicitações de lista por segundo.
Renomear usuários Pode levar até 10 minutos para a propagação em todos os serviços. Antes de renomear um usuário, é recomendável fazer logout dele de todas as sessões e serviços do navegador. Para mais detalhes, consulte Atualizar usuários.
Criação/atualização de unidades organizacionais
  • Não é possível criar/atualizar mais de uma unidade organizacional por cliente por segundo usando a API Directory.
  • A hierarquia da unidade organizacional do cliente é limitada a 35 níveis de profundidade.
  • O número total de unidades organizacionais por cliente não pode exceder 40.000.
Categorias de cota da API Cotas
Dispositivos Chrome annotatedLocation, caracteres máximos O número máximo de caracteres para as informações de local de um dispositivo é 200.
Dispositivos Chrome notes, caracteres máximos O número máximo de caracteres para as informações de notas de um dispositivo é 500.
Dispositivos Chrome, user caracteres no máximo O número máximo de caracteres para o nome de um usuário do dispositivo é 100.
Alias de domínio, máximo O número máximo de aliases de domínio é 20.
Grupos, descrição O número máximo de caracteres em uma descrição é 4.096.
Grupos por conta Com uma conta da edição sem custo financeiro legada do G Suite, o número de grupos é limitado a 10. As outras edições não têm limite de grupos.
Grupos e participantes por grupo Com uma conta da edição sem custo financeiro legada do G Suite, um grupo pode ter até 100 membros. As outras edições não têm limite para o número de participantes de um grupo. Para saber os limites de associação por usuário, consulte Entender as políticas e os limites do Grupos.
String de consulta maxResults A API retorna:
  • Chrome e dispositivos móveis: padrão e um máximo de 100 entradas por página.
  • Grupos e membros de grupos: padrão e máximo de 200 entradas por página.
  • Usuários: padrão de 100 entradas e máximo de 500 entradas por página.
Os recursos de alias de usuário e de unidade organizacional não usam a paginação de resposta. Todos os e-mails principais do usuário são retornados em ordem alfabética, e a ordem de resposta não diferencia maiúsculas de minúsculas.
Vários domínios, número máximo de domínios permitidos em uma conta 600 (1 domínio principal + 599 domínios adicionais)
Unidade organizacional, número máximo de usuários movidos de uma vez É possível mover 20 usuários de uma só vez. E os endereços de e-mail principais do usuário já precisam existir na conta.
Alias de usuário O número total de aliases permitidos para cada conta de usuário é 30.
Alias de usuário, usando um alias excluído Um alias de usuário excluído pode ser usado novamente imediatamente.

Outros tipos de limites Limitações e diretrizes
Como criar e faturar usuários Para usuários em um plano flexível do Google Workspace, a criação de usuários usando essa API vai ter impacto financeiro e resultar em cobranças na sua conta de faturamento do cliente. Por exemplo, se você estiver em um plano flexível do Google Workspace, a criação de 10 usuários vai resultar em cobranças de 10 licenças do Google Workspace na sua conta, prorateadas a partir do momento em que a criação for concluída. Se você tiver um plano anual, já terá se comprometido a pagar por um determinado número de licenças antecipadamente e só poderá criar o número de usuários correspondente. Para mais informações sobre os planos de faturamento e sua conta de faturamento, consulte a Central de Ajuda de administração.
Nome e sobrenome O nome e o sobrenome têm no máximo 40 caracteres. Eles aceitam caracteres Unicode/UTF-8 e podem conter espaços, letras (a-z), números (0-9), hifens (-), barras (/) e pontos (.). Para mais informações sobre as regras de uso de caracteres, consulte a Central de Ajuda para administradores.
Grupos, exclusão A exclusão de um grupo não remove as contas de usuário dos participantes.
Grupos e participantes, mudança de endereço de e-mail Nesta versão da API, o endereço de e-mail de um grupo pode ser alterado antes da ativação do serviço do Google Workspace. Use o Admin Console para mudar o endereço de e-mail de um membro do grupo. Depois que a mudança é feita, a API reflete automaticamente as alterações no endereço de e-mail.
Grupos, configurações As configurações de acesso de grupos, as opções de compartilhamento, o monitoramento e o arquivamento de discussões são gerenciados usando o Admin Console. Para mais informações sobre as configurações de grupos, consulte a Central de Ajuda para administradores.
Grupos, envio de mensagens Para evitar spam e abuso de e-mail, o Google limita o número de mensagens que você pode enviar de uma vez para destinatários externos. Se você enviar uma mensagem para um grupo, cada participante externo será contado como um destinatário. Saiba mais em Limites de envio de e-mails e Impedir que e-mails para usuários do Gmail sejam bloqueados ou enviados para a pasta "Spam" .
Grupos, envio de mensagens NDR Não é possível enviar nem encaminhar recibos de falha de envio (NDRs, na sigla em inglês), também chamados de "mensagens rejeitadas", para um grupo.
Grupos criados por usuários, limitações Para limites de grupos criados por usuários, consulte a Central de Ajuda para administradores.
Unidade organizacional, ativando/desativando serviços Use o Admin Console para ativar e desativar serviços em uma unidade organizacional.
Senhas Pode conter qualquer combinação de caracteres. É necessário usar pelo menos 8 caracteres. O comprimento máximo é de 100 caracteres.
Fotos Nesta versão da API, uma foto é a foto do perfil mais recente do usuário no Google.
Nomes de usuários Os nomes de usuário podem conter letras (a-z), números (0-9), traços (-), sublinhados (_) e pontos (.). O Google Workspace reconhece pontos (.). Isso não é o mesmo que o Gmail. Um nome de usuário não pode conter um sinal de igual (=), colchetes (<,>) ou mais de um ponto (.) em uma linha. Para mais informações, consulte a Central de Ajuda para administradores.
Nomes de usuários, renomeação O Google Hangouts descarta todos os convites de chat lembrados após a renomeação. O usuário precisa pedir permissão para conversar com os amigos novamente. O nome de usuário antigo é mantido como um alias de e-mail para garantir a entrega contínua de e-mails no caso de configurações de encaminhamento de e-mail e não estará disponível como um novo nome de usuário. Para detalhes importantes sobre o impacto da alteração de nome de usuários, consulte a Central de Ajuda para administradores. Use a operação Excluir o alias de um usuário para remover o alias de e-mail depois de renomear.
Usuários em vários domínios Uma conta do Google Workspace pode incluir qualquer um dos seus domínios. Em uma conta de vários domínios, os usuários de um domínio podem compartilhar serviços com usuários de outros domínios da conta. Os componentes de vários domínios são:
  • Domínio principal: é o domínio do administrador que aceitou os Termos de Serviço do Google Workspace. Esse domínio está no nível da conta na unidade organizacional de nível superior. Ao se inscrever em uma conta do Google Workspace, recomendamos usar o domínio da sua empresa como principal e reservar os outros para usos especializados, como testes e pilotos.
    • Todos os superadministradores podem gerenciar a conta completa.
    • A API não pode mudar ou mover o domínio principal da conta do Google Workspace. No entanto, a API pode renomear a conta de um usuário, mudando o endereço de e-mail de um domínio para outro.
    • Para contas do Google Workspace, você tem 21 dias para verificar a propriedade do domínio principal. Para outros domínios, você precisa verificar a propriedade antes de usar o domínio para o endereço de e-mail principal de um usuário. Nesses casos, o período de carência de 21 dias não se aplica.
    • Nesta versão da API, as configurações do domínio principal se aplicam a todos os domínios associados à conta, exceto o acesso do usuário aos serviços do Google Workspace.
  • Outros domínios da conta: depois de definir o domínio principal e configurar a conta, você pode adicionar outros domínios. Para outros domínios, verifique sua propriedade ao configurar o domínio e antes de usá-lo para o endereço de e-mail principal de um usuário.
  • Domínio principal do usuário: o domínio usado no endereço de e-mail principal do usuário é o domínio principal dele. Esse domínio pode ser qualquer um na conta, incluindo o principal.
Para conferir as últimas limitações de vários domínios, consulte limitações de vários domínios. Isso inclui informações sobre aliases de domínio, mesclagem de contas etc.
Avisos e membros do grupo GROUP_CANNOT_CONTAIN_CYCLE: a API não permite um ciclo em associações de grupo. Por exemplo, se o grupo1 for membro do grupo2, o grupo2 não poderá ser membro do grupo1.