La API de Mail Admin Quarantine aplica cuotas de uso por minuto para cada proyecto de Google Cloud con el objetivo de proteger la infraestructura de Google Workspace que busca y recupera mensajes en cuarentena. Las cuotas se agrupan según el tipo de trabajo que realiza un método.
Cuotas
En la siguiente tabla, se enumeran las cuotas. Cada cuota es por minuto y por proyecto de Cloud, y se cuentan todas las solicitudes que realiza el proyecto en todos los clientes de Google Workspace y los administradores que se suplantan.
| Cuota | Valor | Métodos |
|---|---|---|
| Solicitudes de búsqueda y de listas | 60 solicitudes por minuto | customers.quarantinedMessages.list, customers.quarantinedMessages.search |
| Leer solicitudes | 1,200 solicitudes por minuto | customers.quarantinedMessages.get, customers.quarantines.get, customers.quarantines.list, customers.operations.get |
| Escribir solicitudes | 300 solicitudes por minuto | customers.quarantinedMessages.release, customers.quarantinedMessages.deny, customers.quarantinedMessages.batchRelease, customers.quarantinedMessages.batchDeny |
Cada llamada a la API cuenta como una solicitud, sin importar el tamaño de la página o, en el caso de los métodos por lotes, la cantidad de mensajes en el lote. Por ejemplo, una solicitud batchRelease
con 500 mensajes consume una solicitud de escritura.
Puedes ver el uso de cuota actual de tu proyecto en la consola de Google Cloud en APIs y servicios > APIs y servicios habilitados > API de Admin Quarantine > Cuotas y límites del sistema.
Restricciones de solicitudes
| Restricción | Valor |
|---|---|
pageSize máximo para las solicitudes list y search |
300 mensajes |
Cantidad máxima de mensajes por solicitud batchRelease o batchDeny |
500 mensajes |
| Ventana de búsqueda y lista | Mensajes recibidos en los últimos 30 días |
Resuelve errores de cuota
Cuando tu proyecto excede una cuota, la API devuelve un error HTTP 429 con
el estado RESOURCE_EXHAUSTED:
{
"error": {
"code": 429,
"message": "Quota exceeded for quota metric 'Search and list quarantined messages requests' and limit 'Search and list requests per minute per project' of service 'mailadminquarantine.googleapis.com' for consumer 'project_number:123456789012'.",
"status": "RESOURCE_EXHAUSTED"
}
}
Para mantenerte dentro de las cuotas, haz lo siguiente:
- Vuelve a intentarlo con una retirada exponencial. Cuando recibas un error
429, espera antes de volver a intentarlo y aumenta el tiempo de espera después de cada intento fallido. Para obtener más detalles, consulta Retirada exponencial. - Usa el tamaño de página útil más grande. Las solicitudes de búsqueda y de lista tienen la cuota más pequeña. Solicita hasta 300 mensajes por página en lugar de muchas páginas pequeñas.
- Usa filtros. Limita las solicitudes
searchcon unfilteroquerypara recuperar solo los mensajes que necesitas. - Usa métodos por lotes para las acciones masivas. Una sola solicitud
batchReleaseobatchDenypuede liberar o rechazar hasta 500 mensajes, en comparación con un mensaje por llamadareleaseodeny. - Sondea las operaciones con moderación. Cuando esperes una operación por lotes, llama
al método
getdel recursocustomers.operationscada pocos segundos en lugar de hacerlo de forma continua. - Sincroniza de forma incremental. En lugar de volver a enumerar toda la cuarentena en cada
ejecución, filtra por
status = PENDING_TRIAGEy procesa solo los mensajes nuevos.
Los aumentos de cuota no están disponibles durante la Versión preliminar para desarrolladores. Si tu caso de uso requiere cuotas más altas, comparte tus comentarios a través del Programa de versión preliminar para desarrolladores de Google Workspace.