Los límites y las cuotas protegen la infraestructura de Google de un proceso automatizado que utiliza la API de Directory de forma inapropiada. Las solicitudes excesivas de una API pueden deberse a un error tipográfico inofensivo o a un sistema de diseño ineficiente que realiza llamadas innecesarias a la API. Sin importar la causa, es necesario bloquear el tráfico de una fuente específica una vez que se alcanza un nivel determinado para el estado general del sistema de Google Workspace. Garantiza que las acciones de un desarrollador no tengan un impacto negativo en la comunidad.
En el caso improbable de que falle tu solicitud de API, la API muestra un código de estado HTTP y el motivo del error. Además, el cuerpo de la respuesta contiene una descripción detallada de lo que causó el error.
En la siguiente lista, se muestran los posibles códigos de error, los motivos, las descripciones correspondientes y las acciones recomendadas para errores causados por alcanzar los límites de cuota.
Código | Motivo | Descripción | Acción recomendada |
---|---|---|---|
403 | userRateLimitExceeded | Indica que se superó el límite de usuarios. El valor predeterminado establecido en Google Developers Console es de 3,000 consultas cada 100 segundos por dirección IP. Puede aumentar este límite en Google Developers Console | Aumenta los límites por usuario en Google Developers Console o disminuye la velocidad a la que envías las solicitudes mediante la retirada exponencial. |
403 | quotaExceeded | Indica que se alcanzó el límite de solicitudes simultáneas para una operación determinada. | Vuelve a intentarlo con la retirada exponencial. Debes disminuir la velocidad a la que envías las solicitudes. |
429 | rateLimitExceeded | Indica que se alcanzó el límite de solicitudes simultáneas para una operación determinada. | Vuelve a intentarlo con la retirada exponencial. Debes disminuir la velocidad a la que envías las solicitudes. Este límite es por cuenta de Google Workspace, no por cliente de API ni por usuario. Este límite no se puede aumentar. |
Implementar retirada exponencial
La retirada exponencial es el proceso de un cliente que vuelve a intentar una solicitud con errores de forma periódica durante un período cada vez mayor. Es una estrategia estándar de manejo de errores para aplicaciones de red. El uso de la retirada exponencial aumenta la eficiencia del uso del ancho de banda, reduce la cantidad de solicitudes necesarias para obtener una respuesta exitosa y maximiza la capacidad de procesamiento de las solicitudes en entornos simultáneos.
El flujo para implementar una retirada exponencial simple es el siguiente.
- Realiza una solicitud a la API
- Recibir una respuesta de error que tiene un código de error que se puede reintentar
- Esperar 1 s +
random_number_milliseconds
segundos - Volver a intentar solicitud
- Recibir una respuesta de error que tiene un código de error que se puede reintentar
- Espera 2 s +
random_number_milliseconds
segundos - Volver a intentar solicitud
- Recibir una respuesta de error que tiene un código de error que se puede reintentar
- Espera 4 s +
random_number_milliseconds
segundos - Volver a intentar solicitud
- Recibir una respuesta de error que tiene un código de error que se puede reintentar
- Esperar 8 s +
random_number_milliseconds
segundos - Volver a intentar solicitud
- Recibir una respuesta de error que tiene un código de error que se puede reintentar
- Espera 16 s +
random_number_milliseconds
segundos - Volver a intentar solicitud
- Si aún recibes un error, detente y registra el error.
En el flujo anterior, random_number_milliseconds
es un número aleatorio de milisegundos menor o igual que 1,000. Esto es necesario para evitar ciertos errores de bloqueo en algunas implementaciones simultáneas.
random_number_milliseconds
debe volver a definirse después de cada espera.
Nota: La espera siempre es (2 ^ n) + random_number_milliseconds
, en la que n es un número entero que aumenta de forma monótona, inicialmente definido como 0. n aumenta de 1 a cada iteración (cada solicitud).
El algoritmo está configurado para terminar cuando n sea 5. Este límite se establece solo para evitar que los clientes vuelvan a intentarlo de forma infinita y genera un retraso total de aproximadamente 32 segundos antes de que se considere que una solicitud es un error irrecuperable. El cliente de la API puede implementar una mayor cantidad de intentos si es necesario.
Límites y cuotas de API
Categorías de límites de API | Límites |
---|---|
Cómo crear usuarios | No puedes crear más de 10 usuarios por dominio por segundo mediante la API de Directory. |
Se agregó el grupo como miembro a otro grupo | Puede haber una demora de hasta 10 minutos antes de que los miembros del grupo secundario aparezcan como miembros del grupo principal. Este límite puede cambiar según la capacidad del sistema. |
Cambia los nombres de los usuarios | La propagación a todos los servicios puede tardar hasta 10 minutos. Antes de cambiar el nombre de un usuario, se recomienda cerrar la sesión del usuario en todas las sesiones y servicios del navegador. Para obtener más detalles, consulta Actualizar usuarios. |
Crear o actualizar unidades organizativas |
|
Categorías de cuota de API | Cuotas |
Dispositivos Chrome: annotatedLocation , cantidad máxima de caracteres
|
La cantidad máxima de caracteres para la información de ubicación de un dispositivo es de 200. |
Dispositivos Chrome: notes , cantidad máxima de caracteres
|
La cantidad máxima de caracteres para la información de las notas de un dispositivo es de 500. |
Dispositivos Chrome, user caracteres como máximo
|
El número máximo de caracteres para el nombre de un usuario de dispositivo es 100. |
Alias de dominio, máximo | La cantidad máxima de alias de dominio es 20. |
Grupos, descripción | La cantidad máxima de caracteres en una descripción es 4,096. |
Grupos, por cuenta | Con una cuenta de la edición gratuita heredada de G Suite, la cantidad de grupos se limita a 10. Otras ediciones no tienen límite para la cantidad de grupos. |
Grupos, miembros por grupo | Con una cuenta de la edición gratuita heredada de G Suite, un grupo puede contener hasta 100 miembros. Otras ediciones no tienen límite para la cantidad de miembros que puede tener un grupo. Para conocer los límites de pertenencia a un grupo por usuario, consulta Comprende las políticas y los límites de los grupos. |
String de consulta de maxResults | La API muestra lo siguiente:
|
Dominios múltiples, cantidad máxima de dominios permitidos en una cuenta | 600 (1 dominio principal y 599 dominios adicionales) |
Unidad organizativa, cantidad máxima de usuarios movidos a la vez | Se pueden mover 20 usuarios a la vez. Además, las direcciones de correo electrónico principales del usuario ya deben existir en la cuenta. |
Alias de usuario | La cantidad total de alias permitidos para cada cuenta de usuario es 30. |
Alias de usuario con un alias borrado | Los alias de usuario borrados se pueden volver a usar de inmediato. |
Otros tipos de límites | Limitaciones y lineamientos |
---|---|
Facturación y creación de usuarios | En el caso de los usuarios de un plan flexible de Google Workspace, crear usuarios con esta API tendrá un impacto monetario y generará cargos en su cuenta de facturación del cliente. Por ejemplo, si tienes un plan flexible de Google Workspace, crear 10 usuarios generará cargos por 10 licencias de Google Workspace que se publiquen en tu cuenta, prorrateadas desde el momento en que se complete la creación. Si tiene un plan anual, ya se habría comprometido a pagar una cierta cantidad de licencias por adelantado y solo podrá crear la cantidad de usuarios que desee según su compromiso. Para obtener más información acerca de los planes de facturación y su cuenta de facturación, consulte el Centro de ayuda para la administración. |
Nombre y apellido | Los nombres y apellidos tienen un máximo de 40 caracteres. Admiten caracteres Unicode/UTF-8 y pueden contener espacios, letras (a-z), números (0-9), guiones (-), barras diagonales (/) y puntos (.). Para obtener más información sobre las reglas de uso de caracteres, consulte el Centro de ayuda para la administración. |
Borrando grupos | Si borras un grupo, no se borrarán sus cuentas de usuario. |
Cambio de grupos y direcciones de correo electrónico | En esta versión de la API, se puede cambiar la dirección de correo electrónico de un grupo antes de que se habilite el servicio de Google Workspace. Usa la Consola del administrador para cambiar la dirección de correo electrónico de un miembro del grupo. Una vez que lo hagas, la API reflejará automáticamente los cambios en la dirección de correo electrónico. |
Grupos, configuración | La configuración de acceso a los grupos, las opciones de uso compartido, la supervisión y el archivo de debates se administran mediante la Consola del administrador. Para obtener más información sobre la configuración de los grupos, consulte el Centro de ayuda para la administración. |
Grupos, enviando mensajes | Para evitar el spam y el abuso del correo electrónico, Google limita la cantidad de mensajes que puedes enviar a la vez a destinatarios externos. Si envías un mensaje a un grupo, cada miembro externo se cuenta como un destinatario. Para obtener más información, consulta Límites de envío de correo electrónico y Impide que se bloqueen o envíen correos electrónicos a usuarios de Gmail . |
Grupos y envío de mensajes NDR | No puedes enviar ni reenviar recibos que no sean de entrega (NDR), también llamados "mensajes de rebote" a un grupo. |
Grupos creados por usuarios, limitaciones | Para conocer los límites de grupos creados por los usuarios, consulte el Centro de ayuda para la administración |
Unidad organizativa, activar o desactivar servicios | Use la Consola del administrador para gestionar cómo activar y desactivar los servicios en una unidad organizativa. |
Contraseñas | Puede contener cualquier combinación de caracteres. Se requieren 8 caracteres como mínimo. La longitud máxima es de 100 caracteres. |
Fotos | En esta versión de la API, una foto es la última foto de perfil de Gmail Chat del usuario. Esto es diferente de la foto de perfil de Google. |
Nombres de usuario | Los nombres de usuario pueden contener letras (a-z), números (0-9), guiones (-), guiones bajos (_) y Google Workspace reconoce puntos o puntos (.). No es lo mismo que Gmail. Un nombre de usuario no puede contener un signo igual (=), corchetes (<>) ni más de un punto (.) en una fila. Para obtener más información, consulte el Centro de ayuda para la administración. |
Nombres de usuario, cambio de nombre | Google Hangouts descarta todas las invitaciones de chat recordadas después de cambiarles el nombre. El usuario debe solicitar permiso nuevamente para chatear con amigos. El nombre de usuario anterior se conserva como un alias de correo electrónico para garantizar la entrega continua del correo en el caso de la configuración de reenvío de correo electrónico y no estará disponible como un nuevo nombre de usuario. Para obtener detalles importantes sobre el impacto que tiene cambiar el nombre de los usuarios, consulte el Centro de ayuda de administración. Use la operación Borrar el alias de un usuario para quitar el alias de correo electrónico después de cambiarle el nombre. |
Usuarios de varios dominios | Una cuenta de Google Workspace puede incluir cualquiera de tus dominios. En una cuenta de varios dominios, los usuarios de un dominio pueden compartir servicios con usuarios de otros dominios de la cuenta. Varios componentes del dominio son los siguientes:
|
Advertencias para los miembros del grupo | GROUP_CANNOT_CONTAIN_CYCLE: La API no permite un ciclo de pertenencia a grupos. Por ejemplo, si el grupo1 es miembro del grupo2, el grupo2 no puede ser miembro del grupo1. |