L'API Mail Admin Quarantine applique des quotas d'utilisation par minute pour chaque projet Google Cloud afin de protéger l'infrastructure Google Workspace qui recherche et récupère les messages mis en quarantaine. Les quotas sont regroupés par type de travail effectué par une méthode.
Quotas
Le tableau suivant liste les quotas. Chaque quota est par minute et par projet Cloud, et comptabilise toutes les requêtes effectuées par le projet pour l'ensemble des clients Google Workspace et des administrateurs dont l'identité est empruntée.
| Quota | Valeur | Méthodes |
|---|---|---|
| Requêtes de recherche et de listage | 60 requêtes par minute | customers.quarantinedMessages.list, customers.quarantinedMessages.search |
| Requêtes de lecture | 1 200 requêtes par minute | customers.quarantinedMessages.get, customers.quarantines.get, customers.quarantines.list, customers.operations.get |
| Requêtes d'écriture | 300 requêtes par minute | customers.quarantinedMessages.release, customers.quarantinedMessages.deny, customers.quarantinedMessages.batchRelease, customers.quarantinedMessages.batchDeny |
Chaque appel d'API est comptabilisé comme une requête, quelle que soit la taille de la page ou, pour les méthodes par lot, le nombre de messages dans le lot. Par exemple, une requête batchRelease contenant 500 messages consomme une requête d'écriture.
Vous pouvez consulter l'utilisation actuelle des quotas de votre projet dans la console Google Cloud, sous API et services > API et services activés > API Admin Quarantine > Quotas et limites du système.
Contraintes de requête
| Contrainte | Valeur |
|---|---|
pageSize maximum pour les requêtes list et search |
300 messages |
Nombre maximal de messages par requête batchRelease ou batchDeny |
500 messages |
| Fenêtre de recherche et de liste | Messages reçus au cours des 30 derniers jours |
Résoudre les erreurs de quota
Lorsque votre projet dépasse un quota, l'API renvoie une erreur HTTP 429 avec l'état 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"
}
}
Pour ne pas dépasser les quotas :
- Réessayez avec un intervalle exponentiel entre les tentatives. Lorsque vous recevez une erreur
429, attendez avant de réessayer et augmentez le temps d'attente après chaque tentative infructueuse. Pour en savoir plus, consultez Intervalle exponentiel entre les tentatives. - Utilisez la plus grande taille de page utile. Les requêtes de recherche et de liste ont le quota le plus faible. Demandez jusqu'à 300 messages par page au lieu de nombreuses petites pages.
- Utilisez des filtres. Affinez les requêtes
searchavec unfilterou unqueryafin de ne récupérer que les messages dont vous avez besoin. - Utilisez des méthodes par lot pour les actions groupées. Une seule requête
batchReleaseoubatchDenypeut libérer ou refuser jusqu'à 500 messages, contre un message par appelreleaseoudeny. - Interrogez les opérations avec parcimonie. Lorsque vous attendez une opération par lot, appelez la méthode
getde la ressourcecustomers.operationstoutes les quelques secondes plutôt qu'en continu. - Synchronisez de manière incrémentielle. Au lieu de lister à nouveau l'intégralité de la quarantaine à chaque exécution, filtrez sur
status = PENDING_TRIAGEet ne traitez que les nouveaux messages.
Les augmentations de quota ne sont pas disponibles pendant la version Preview développeur. Si votre cas d'utilisation nécessite des quotas plus élevés, partagez vos commentaires via le programme Google Workspace Developer Preview.