API de Directory: Límites y cuotas

Los límites y las cuotas protegen la infraestructura de Google de un proceso automatizado que usa 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 diseñado de manera ineficiente que realiza llamadas innecesarias a la API. Sea cual sea la causa, es necesario bloquear el tráfico de una fuente específica, una vez que alcanza cierto nivel, para mantener el buen estado general del sistema de Google Workspace. Se asegura de que las acciones de un desarrollador no puedan afectar negativamente a la comunidad en general.

En el caso improbable de que tu solicitud a la API falle, la API mostrará 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 la acción recomendada para los 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 frecuencia del usuario. El valor predeterminado establecido en la consola de Google Cloud es de 2,400 consultas por minuto por usuario por proyecto de Google Cloud. Aumenta los límites por usuario en la página Cuotas de la API del SDK de Admin de tu proyecto de Google Cloud o ralentiza la velocidad a la que envías las solicitudes con la pausa 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 reducir 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 se aplica por cuenta de Google Workspace, no por cliente de API ni por usuario. No se puede aumentar este límite.

Implementar retirada exponencial

La retirada exponencial es el proceso en el que un cliente vuelve a intentar periódicamente una solicitud con errores durante un período creciente. 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 que se requieren para obtener una respuesta correcta y maximiza la capacidad de procesamiento de las solicitudes en entornos simultáneos.

A continuación, se muestra el flujo para implementar una retirada exponencial simple.

  1. Realiza una solicitud a la API
  2. Recibir una respuesta de error que tiene un código de error que se puede reintentar
  3. Espera 1 s + random_number_milliseconds segundos
  4. Cómo reintentar una solicitud
  5. Recibir una respuesta de error que tiene un código de error que se puede reintentar
  6. Espera 2 s + random_number_milliseconds segundos
  7. Cómo reintentar una solicitud
  8. Recibir una respuesta de error que tiene un código de error que se puede reintentar
  9. Espera 4 s + random_number_milliseconds segundos
  10. Cómo reintentar una solicitud
  11. Recibir una respuesta de error que tiene un código de error que se puede reintentar
  12. Espera 8 s + random_number_milliseconds segundos
  13. Cómo reintentar una solicitud
  14. Recibir una respuesta de error que tiene un código de error que se puede reintentar
  15. Espera 16 s + random_number_milliseconds segundos
  16. Cómo reintentar una solicitud
  17. Si el error persiste, detén el proceso y regístralo.

En el flujo anterior, random_number_milliseconds es una cantidad aleatoria 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 se debe redefinir 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 monotónica, definido inicialmente como 0. n aumenta en 1 para cada iteración (cada solicitud).

El algoritmo está configurado para terminar cuando n sea 5. Este límite solo se implementa para evitar que los clientes reintenten las solicitudes de forma infinita y genera una demora total de alrededor de 32 segundos antes de que una solicitud se considere "un error irrecuperable". Si es necesario, tu cliente de API puede implementar una mayor cantidad de intentos.

Límites y cuotas de la API

Categorías de límites de la API Límites
Cómo crear usuarios No puedes crear más de 10 usuarios por dominio por segundo con la API de Directory.
Grupo agregado como miembro a otro grupo Es posible que haya una demora de hasta 10 minutos antes de que los miembros del grupo secundario aparezcan como miembros del grupo superior. Este límite puede cambiar según la capacidad del sistema.
Dispositivos móviles

Con la API de Directory, puedes realizar las siguientes acciones:

  • 20 solicitudes de acción por segundo.
  • 20 solicitudes de eliminación por segundo.
  • 10 solicitudes de obtención por segundo
  • 10 solicitudes de lista por segundo.
Cambia el nombre de los usuarios La propagación en todos los servicios puede tardar hasta 10 minutos. Antes de cambiar el nombre de un usuario, se recomienda que salga de todas las sesiones y servicios del navegador. Para obtener más información, consulta Cómo actualizar usuarios.
Cómo crear o actualizar unidades organizativas
  • No puedes crear ni actualizar más de 1 unidad organizativa por cliente por segundo con la API de Directory.
  • La jerarquía de unidades organizativas del cliente se limita a 35 niveles de profundidad.
  • La cantidad total de unidades organizativas por cliente no debe exceder las 40,000.
Categorías de cuotas de la API Cuotas
Dispositivos Chrome annotatedLocation, caracteres máximos La cantidad máxima de caracteres para la información de ubicación de un dispositivo es de 200.
Dispositivos Chrome notes, caracteres máximos 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 La cantidad máxima de caracteres para el nombre de un usuario de un dispositivo es de 100.
Alias de dominio, máximo La cantidad máxima de alias de dominio es de 20.
Grupos, descripción La cantidad máxima de caracteres en una descripción es de 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. Las demás ediciones no tienen límite para la cantidad de grupos.
Grupos y miembros por grupo Con una cuenta de la edición gratuita heredada de G Suite, un grupo puede contener hasta 100 miembros. Las demás ediciones no tienen límite para la cantidad de miembros que puede tener un grupo. Para conocer los límites de membresías de grupo por usuario, consulta Información sobre las políticas y los límites de los grupos.
Cadena de consulta maxResults La API muestra lo siguiente:
  • Chrome y dispositivos móviles: Un valor predeterminado y un máximo de 100 entradas por página.
  • Grupos y miembros del grupo: Un máximo de 200 entradas por página.
  • Usuarios: Una cantidad predeterminada de 100 entradas y un máximo de 500 entradas por página.
Los recursos de alias de usuario y de unidad organizativa no usan la paginación de respuestas. Todos los correos electrónicos principales del usuario se muestran en orden alfabético y el orden de la respuesta no distingue mayúsculas de minúsculas.
Varios dominios, cantidad máxima de dominios permitidos en una cuenta 600 (1 dominio principal + 599 dominios adicionales)
Unidad organizativa, cantidad máxima de usuarios que se pueden mover 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 de 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 que tienen un plan flexible de Google Workspace, crear usuarios con esta API tendrá un impacto monetario y generará cargos en la cuenta de facturación de tu cliente. Por ejemplo, si tienes un plan flexible de Google Workspace, crear 10 usuarios hará que se publiquen cargos por 10 licencias de Google Workspace en tu cuenta, prorrateados a partir del momento en que se realice la creación. Si tienes un plan anual, ya te comprometiste a pagar por una cantidad determinada de licencias por adelantado y solo puedes crear tantos usuarios como lo indique tu compromiso. Para obtener más información sobre los planes de facturación y tu cuenta de facturación, consulta el Centro de ayuda de 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, consulta el Centro de ayuda de administración.
Grupos, eliminación Si borras un grupo, no se borrarán las cuentas de usuario de los miembros del grupo.
Grupos y miembros del grupo, cambio de dirección 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 se realice el cambio, la API reflejará automáticamente los cambios en la dirección de correo electrónico.
Grupos y configuración La configuración de acceso de los grupos, las opciones de uso compartido, la supervisión y el archivo de debates se administran con la Consola del administrador. Para obtener más información sobre la configuración de los grupos, consulta el Centro de ayuda de administración.
Grupos y envío de mensajes Para disuadir el spam y el abuso de 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 Cómo evitar que los correos electrónicos enviados a usuarios de Gmail se bloqueen o envíen a la carpeta de spam .
Grupos que envían mensajes de NDR No puedes enviar ni reenviar los avisos de no entrega (NDR), también llamados “mensajes de rebote”, a un grupo.
Limitaciones de los grupos creados por los usuarios Para conocer los límites de los grupos creados por los usuarios, consulta el Centro de ayuda de administración.
Unidad organizativa, activación o desactivación de servicios Usa la Consola del administrador para activar y desactivar servicios en una unidad organizativa.
Contraseñas Puede contener cualquier combinación de caracteres. Se requiere un mínimo de 8 caracteres. La longitud máxima es de 100 caracteres.
Fotos En esta versión de la API, una foto es la foto de perfil de Google más reciente del usuario.
Nombres de usuario Los nombres de usuario pueden contener letras (a-z), números (0-9), guiones (-), guiones bajos (_) y Google Workspace reconoce puntos (.). Esto no es lo mismo que Gmail. Un nombre de usuario no puede contener un signo igual (=), corchetes (<,>) ni más de un punto (.) consecutivo. Para obtener más información, consulta el Centro de ayuda de administración.
Nombres de usuario y cambio de nombre Google Hangouts descarta todas las invitaciones de chat recordadas después de cambiar el nombre. El usuario debe solicitar permiso para volver a chatear con amigos. El nombre de usuario anterior se retiene como alias de correo electrónico para garantizar la entrega continua de correo en el caso de la configuración de reenvío de correo electrónico y no estará disponible como nombre de usuario nuevo. Para obtener detalles importantes sobre el impacto de cambiar el nombre de los usuarios, consulta el Centro de ayuda de administración. Usa la operación Borrar el alias de un usuario para quitar el alias de correo electrónico después de cambiar el nombre.
Usuarios en 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. Los componentes de varios dominios son los siguientes:
  • Dominio principal: El dominio principal de tu cuenta es el del administrador que aceptó el acuerdo de las Condiciones del Servicio de Google Workspace. Este dominio se encuentra a nivel de la cuenta en la unidad organizativa de nivel superior. Cuando te registres para obtener una cuenta de Google Workspace, te recomendamos que uses tu dominio empresarial como dominio principal y que reserves los demás para usos especializados, como pruebas piloto y pruebas.
    • Todos los administradores avanzados pueden administrar la cuenta completa.
    • La API no puede cambiar ni mover el dominio principal de la cuenta de Google Workspace. Sin embargo, la API puede cambiar el nombre de la cuenta de un usuario y cambiar su dirección de correo electrónico de un dominio a otro.
    • En el caso de las cuentas de Google Workspace, tienes 21 días para verificar que eres el propietario del dominio principal. En el caso de los dominios adicionales, debes verificar la propiedad del dominio antes de usarlo para la dirección de correo electrónico principal de un usuario. En estos casos, no se aplica el período de gracia de 21 días.
    • En esta versión de la API, la configuración del dominio principal se aplica a todos los dominios asociados con la cuenta, excepto el acceso de los usuarios a los servicios de Google Workspace.
  • Dominios adicionales de la cuenta: Después de establecer tu dominio principal y configurar tu cuenta, puedes agregar tus dominios adicionales a la cuenta. Para dominios adicionales, verifica tu propiedad cuando configures el dominio y antes de usarlo para la dirección de correo electrónico principal de un usuario.
  • Dominio principal del usuario: El dominio que se usa en la dirección de correo electrónico principal del usuario es su dominio principal. Este dominio puede ser cualquier dominio de la cuenta, incluido el dominio principal.
Para conocer las limitaciones más recientes de varios dominios, consulta limitaciones de varios dominios. Esto incluye información sobre los alias de dominio, la combinación de cuentas, etcétera.
Advertencias, miembros del grupo GROUP_CANNOT_CONTAIN_CYCLE: La API no permite un ciclo en las membresías de grupo. Por ejemplo, si el grupo1 es miembro del grupo2, el grupo2 no puede ser miembro del grupo1.