L'API Google Drive renvoie deux niveaux d'informations sur les erreurs :
- Codes d'erreur HTTP et messages d'en-tête.
- Objet JSON dans le corps de la réponse, contenant des informations supplémentaires qui peuvent vous aider à déterminer comment gérer l'erreur.
Les applications Google Drive doivent intercepter et gérer toutes les erreurs qui peuvent survenir lors de l'utilisation de l'API REST. Ce guide vous explique comment résoudre des erreurs spécifiques de l'API Drive.
Récapitulatif des codes d'état HTTP
Code d'erreur | Description |
---|---|
200 - OK |
La requête a abouti (il s'agit de la réponse standard pour les requêtes HTTP ayant abouti). |
400 - Bad Request |
La demande ne peut pas être traitée en raison d'une erreur client. |
401 - Unauthorized |
La requête contient des identifiants non valides. |
403 - Forbidden |
La demande a été reçue et comprise, mais l'utilisateur n'est pas autorisé à l'effectuer. |
404 - Not Found |
Impossible de trouver la page demandée. |
429 - Too Many Requests |
Trop de requêtes envoyées à l'API. |
500, 502, 503, 504 - Server Errors |
Une erreur inattendue s'est produite lors du traitement de la demande. |
Erreurs 400
Ces erreurs signifient que la demande n'était pas acceptable, souvent en raison d'un paramètre obligatoire manquant.
badRequest
Cette erreur peut se produire en raison de l'un des problèmes suivants dans votre code :
- Un champ ou un paramètre obligatoire n'a pas été fourni.
- La valeur fournie ou une combinaison de champs fournis n'est pas valide.
- Vous avez essayé d'ajouter un parent en double à un fichier Drive.
- Vous avez essayé d'ajouter un parent qui créerait un cycle dans le graphique du répertoire.
L'exemple JSON suivant représente cette erreur :
{
"error": {
"code": 400,
"errors": [
{
"domain": "global",
"location": "orderBy",
"locationType": "parameter",
"message": "Sorting is not supported for queries with fullText terms. Results are always in descending relevance order.",
"reason": "badRequest"
}
],
"message": "Sorting is not supported for queries with fullText terms. Results are always in descending relevance order."
}
}
Pour corriger cette erreur, vérifiez le champ message
et ajustez votre code en conséquence.
illegalKeepForeverModification
Cette erreur se produit lorsque vous essayez de définir sur false
une révision de fichier blob marquée comme "Conserver indéfiniment". L'exemple JSON suivant représente cette erreur :
{
"error": {
"errors": [
{
"domain": "global",
"reason": "illegalKeepForeverModification",
"message": "Bad Request. Cannot update a revision to false that is marked as keepForever."
}
],
"code": 400,
"message": "Bad Request. Cannot update a revision to false that is marked as keepForever."
}
}
Pour corriger cette erreur, supprimez définitivement une révision de fichier blob afin de supprimer le paramètre "Conserver indéfiniment".
invalidSharingRequest
Cette erreur se produit pour plusieurs raisons. Pour déterminer la cause, évaluez le champ reason
du fichier JSON renvoyé. Cette erreur se produit le plus souvent pour les raisons suivantes :
- Le partage a bien été effectué, mais l'e-mail de notification n'a pas été correctement distribué.
- La modification de la liste de contrôle d'accès (LCA) n'est pas autorisée pour cet utilisateur.
Le champ message
indique l'erreur réelle.
Le partage a bien été effectué, mais l'e-mail de notification n'a pas été correctement envoyé
L'exemple JSON suivant représente cette erreur :
{
"error": {
"errors": [
{
"domain": "global",
"reason": "invalidSharingRequest",
"message": "Bad Request. User message: \"Sorry, the items were successfully shared but emails could not be sent to email@domain.com.\""
}
],
"code": 400,
"message": "Bad Request"
}
}
Pour résoudre ce problème, informez l'utilisateur (partageur) qu'il n'a pas pu partager le fichier, car l'e-mail de notification n'a pas pu être envoyé à l'adresse e-mail de destination. L'utilisateur doit s'assurer qu'il dispose de la bonne adresse e-mail et qu'il peut recevoir des e-mails.
La modification de la LCA n'est pas autorisée pour cet utilisateur
L'exemple JSON suivant représente cette erreur :
{
"error": {
"errors": [
{
"domain": "global",
"reason": "invalidSharingRequest",
"message": "Bad Request. User message: \"ACL change not allowed.\""
}
],
"code": 400,
"message": "Bad Request"
}
}
Pour corriger cette erreur, vérifiez les paramètres de partage du domaine Google Workspace auquel appartient le fichier. Il est possible que les paramètres interdisent le partage en dehors du domaine ou que le partage d'un Drive partagé ne soit pas autorisé.
Erreurs 401
Ces erreurs signifient que la requête ne contient pas de jeton d'accès valide.
authError
Cette erreur se produit lorsque le jeton d'accès que vous utilisez est expiré ou non valide. Cette erreur peut également être due à une autorisation manquante pour les niveaux d'accès demandés. L'exemple JSON suivant représente cette erreur :
{
"error": {
"errors": [
{
"domain": "global",
"reason": "authError",
"message": "Invalid Credentials",
"locationType": "header",
"location": "Authorization",
}
],
"code": 401,
"message": "Invalid Credentials"
}
}
Pour corriger cette erreur, actualisez le jeton d'accès à l'aide du jeton d'actualisation de longue durée. Si cela échoue, guidez l'utilisateur dans le flux OAuth, comme décrit dans Choisir les habilitations de l'API Google Drive.
fileNotDownloadable
Cette erreur se produit lorsque vous essayez d'utiliser la méthode revisions.get
avec le paramètre d'URL alt=media
sur un document Google Workspace. L'exemple JSON suivant représente cette erreur :
{
"error": {
"errors": [
{
"domain": "global",
"reason": "fileNotDownloadable",
"message": "Only files with binary content can be downloaded. Use Export with Docs Editors files."
}
],
"code": 403,
"message": "Only files with binary content can be downloaded. Use Export with Docs Editors files."
}
}
Pour résoudre ce problème, essayez l'une des solutions suivantes :
- Supprimez le paramètre d'URL
alt=media
si vous souhaitez afficher les métadonnées d'une révision spécifique, comme le type MIME. - Utilisez la méthode
files.export
pour exporter le contenu en octets d'un document Google Workspace. Pour en savoir plus, consultez Exporter le contenu d'un document Google Workspace.
Erreurs 403
Ces erreurs signifient qu'une limite d'utilisation a été dépassée ou que l'utilisateur ne dispose pas des droits d'accès appropriés. Pour déterminer la cause, évaluez le champ reason
du fichier JSON renvoyé.
Pour en savoir plus sur les limites de l'API Drive, consultez Limites d'utilisation. Pour en savoir plus sur les limites applicables aux dossiers Drive, consultez Limites applicables aux fichiers et aux dossiers.
activeItemCreationLimitExceeded
Une erreur activeItemCreationLimitExceeded
se produit lorsque la limite du nombre d'éléments créés par compte a été dépassée. Chaque utilisateur peut créer jusqu'à 500 millions d'éléments par compte. Pour en savoir plus, consultez Limites utilisateur-article.
{
"error": {
"errors": [
{
"domain": "global",
"reason": "activeItemCreationLimitExceeded",
"message": "This account has exceeded the creation limit of 500 million items. To create more items, permanently delete some items."
}
],
"code": 403,
"message": "This account has exceeded the creation limit of 500 million items. To create more items, permanently delete some items."
}
}
Solution :
Informez l'utilisateur que Drive empêche les comptes de créer plus de 500 millions d'éléments.
Si l'utilisateur doit créer des éléments dans ce même compte, demandez-lui de supprimer définitivement certains objets. Sinon, il peut utiliser un autre compte qui répond déjà à l'exigence.
appNotAuthorizedToFile
Cette erreur se produit lorsque votre application ne figure pas dans la LCA du fichier. Cette erreur empêche l'utilisateur d'ouvrir le fichier avec votre application. L'exemple JSON suivant représente cette erreur :
{
"error": {
"errors": [
{
"domain": "global",
"reason": "appNotAuthorizedToFile",
"message": "The user has not granted the app {appId} {verb} access to the file {fileId}."
}
],
"code": 403,
"message": "The user has not granted the app {appId} {verb} access to the file {fileId}."
}
}
Pour résoudre ce problème, essayez l'une des solutions suivantes :
- Ouvrez le sélecteur Google Drive et invitez l'utilisateur à ouvrir le fichier.
- Demandez à l'utilisateur d'ouvrir le fichier à l'aide du menu contextuel Ouvrir avec dans l'UI Drive de votre application.
- Utilisez la méthode
files.get
pour vérifier le champisAppAuthorized
de la ressourcefiles
et vous assurer que votre application a créé ou ouvert le fichier.
cannotModifyInheritedTeamDrivePermission
Cette erreur se produit lorsqu'un utilisateur tente de modifier les autorisations héritées d'un élément dans un Drive partagé. Il est impossible de supprimer les autorisations héritées d'un élément dans un Drive partagé. L'exemple JSON suivant représente cette erreur :
{
"error": {
"errors": [
{
"domain": "global",
"reason": "cannotModifyInheritedTeamDrivePermission",
"message": "Cannot update or delete an inherited permission on a shared drive item."
}
],
"code": 403,
"message": "Cannot update or delete an inherited permission on a shared drive item."
}
}
Pour corriger cette erreur, un utilisateur doit ajuster les autorisations de l'élément parent direct ou indirect à partir duquel elles ont été héritées. Pour en savoir plus, consultez Fonctionnement des autorisations. Vous pouvez également récupérer la ressource permissions
pour savoir si les autorisations sur cet élément de Drive partagé sont héritées ou appliquées directement.
dailyLimitExceeded
Cette erreur se produit lorsque la limite d'API pour votre projet a été atteinte. L'exemple JSON suivant représente cette erreur :
{
"error": {
"errors": [
{
"domain": "usageLimits",
"reason": "dailyLimitExceeded",
"message": "Daily Limit Exceeded"
}
],
"code": 403,
"message": "Daily Limit Exceeded"
}
}
Cette erreur s'affiche lorsque le propriétaire de l'application a défini une limite de quota pour plafonner l'utilisation d'une ressource spécifique. Pour corriger cette erreur, supprimez tous les plafonds d'utilisation pour le quota "Requêtes par jour".
domainPolicy
Cette erreur se produit lorsque le règlement du domaine de l'utilisateur n'autorise pas l'accès à Drive par votre application. L'exemple JSON suivant représente cette erreur :
{
"error": {
"errors": [
{
"domain": "global",
"reason": "domainPolicy",
"message": "The domain administrators have disabled Drive apps."
}
],
"code": 403,
"message": "The domain administrators have disabled Drive apps."
}
}
Solution :
- Informez l'utilisateur que le domaine n'autorise pas votre application à accéder aux fichiers dans Drive.
- Demandez à l'utilisateur de contacter l'administrateur du domaine pour demander l'accès à votre application.
downloadRestrictedForRevision
Cette erreur se produit lorsque l'utilisateur ne peut pas télécharger une révision de fichier blob. L'exemple JSON suivant représente cette erreur :
{
"error": {
"errors": [
{
"domain": "global",
"reason": "download_restricted_for_revision",
"message": "This revision cannot be downloaded by the authenticated user."
}
],
"code": 403,
"message": "This revision cannot be downloaded by the authenticated user."
}
}
Pour corriger cette erreur, informez l'utilisateur que la seule façon de télécharger les révisions de fichiers blob est de les marquer comme "Conserver indéfiniment". Pour en savoir plus, consultez Spécifier les révisions à enregistrer pour éviter la suppression automatique.
fileOwnerNotMemberOfTeamDrive
Cette erreur se produit lorsque vous essayez de déplacer un fichier vers un Drive partagé et que le propriétaire du fichier n'en est pas membre. L'exemple JSON suivant représente cette erreur :
{
"error": {
"errors": [
{
"domain": "global",
"reason": "fileOwnerNotMemberOfTeamDrive",
"message": "Cannot move a file into a shared drive as a writer when the owner of the file is not a member of that shared drive."
}
],
"code": 403,
"message": "Cannot move a file into a shared drive as a writer when the owner of the file is not a member of that shared drive."
}
}
Solution :
Ajoutez le membre au Drive partagé avec
role=owner
. Pour en savoir plus, consultez Partager des fichiers, des dossiers et des Drive.Ajoutez le fichier au Drive partagé. Pour en savoir plus, consultez Créer et remplir des dossiers.
fileWriterTeamDriveMoveInDisabled
Cette erreur se produit lorsqu'un administrateur de domaine n'a pas autorisé les utilisateurs disposant de role=writer
à déplacer des éléments dans un Drive partagé. L'utilisateur qui tente de déplacer les éléments dispose de moins d'autorisations que celles autorisées dans le Drive partagé de destination. L'exemple JSON suivant représente cette erreur :
{
"error": {
"errors": [
{
"domain": "global",
"reason": "fileWriterTeamDriveMoveInDisabled",
"message": "The domain administrator has not allowed writers to move items into a shared drive."
}
],
"code": 403,
"message": "The domain administrator has not allowed writers to move items into a shared drive."
}
}
Pour corriger cette erreur, utilisez le même compte utilisateur administrateur sur les Drives partagés source et de destination.
insufficientFilePermissions
Cette erreur se produit lorsque l'utilisateur n'a pas accès en écriture à un fichier et que votre application tente de le modifier. L'exemple JSON suivant est une représentation de cette erreur :
{
"error": {
"errors": [
{
"domain": "global",
"reason": "insufficientFilePermissions",
"message": "The user does not have sufficient permissions for file {fileId}."
}
],
"code": 403,
"message": "The user does not have sufficient permissions for file {fileId}."
}
}
Pour corriger cette erreur, demandez à l'utilisateur de contacter le propriétaire du fichier et de lui demander un accès en modification. Vous pouvez également vérifier les niveaux d'accès des utilisateurs dans les métadonnées récupérées par la méthode files.get
et afficher une interface utilisateur en lecture seule lorsque des autorisations sont manquantes.
myDriveHierarchyDepthLimitExceeded
Une erreur myDriveHierarchyDepthLimitExceeded
se produit lorsque la limite du nombre de niveaux de dossiers imbriqués est dépassée. Le dossier "Mon Drive" d'un utilisateur ne peut pas contenir plus de 100 niveaux de dossiers imbriqués. Pour en savoir plus, consultez Limite de profondeur des dossiers.
{
"error": {
"errors": [
{
"domain": "global",
"reason": "myDriveHierarchyDepthLimitExceeded",
"message": "Your My Drive can't contain more than 100 levels of folders. For details, see https://developers.google.com/workspace/drive/api/guides/handle-errors#nested-folder-levels."
}
],
"code": 403,
"message": "Your My Drive can't contain more than 100 levels of folders. For details, see https://developers.google.com/workspace/drive/api/guides/handle-errors#nested-folder-levels."
}
}
Solution :
- Informez l'utilisateur que Drive empêche de placer des dossiers à plus de 100 niveaux de profondeur.
- Si l'utilisateur doit créer un autre dossier imbriqué, demandez-lui de réorganiser le dossier parent prévu pour qu'il comporte moins de 100 niveaux de profondeur ou d'utiliser un autre dossier parent qui répond déjà à l'exigence.
numChildrenInNonRootLimitExceeded
Cette erreur se produit lorsque la limite du nombre d'enfants (dossiers, fichiers et raccourcis) d'un dossier est dépassée. Les dossiers, fichiers et raccourcis placés directement dans un dossier sont limités à 500 000. Les éléments imbriqués dans des sous-dossiers ne sont pas comptabilisés dans cette limite de 500 000 éléments. Pour en savoir plus sur les limites applicables aux dossiers Drive, consultez Limites applicables aux dossiers dans Google Drive.
L'exemple JSON suivant représente cette erreur :
{
"error": {
"errors": [
{
"domain": "global",
"reason": "numChildrenInNonRootLimitExceeded",
"message": "The limit for this folder's number of children (files and folders) has been exceeded."
}
],
"code": 403,
"message": "The limit for this folder's number of children (files and folders) has been exceeded."
}
}
Pour résoudre ce problème, essayez l'une des solutions suivantes :
- Informez l'utilisateur que Drive empêche les dossiers contenant plus de 500 000 éléments.
- Si l'utilisateur doit ajouter d'autres éléments au dossier complet, demandez-lui de réorganiser le dossier pour qu'il contienne moins de 500 000 éléments ou d'utiliser un dossier similaire qui contient déjà moins d'éléments.
rateLimitExceeded
Cette erreur se produit lorsque la limite de débit du projet a été atteinte. Cette limite varie en fonction du type de demande. L'exemple JSON suivant est une représentation de cette erreur :
{
"error": {
"errors": [
{
"domain": "usageLimits",
"message": "Rate Limit Exceeded",
"reason": "rateLimitExceeded",
}
],
"code": 403,
"message": "Rate Limit Exceeded"
}
}
Pour résoudre ce problème, essayez l'une des solutions suivantes :
- Augmentez le quota par utilisateur dans le projet Google Cloud. Pour en savoir plus, demandez une augmentation de quota.
- Regroupez les requêtes pour inclure plusieurs appels d'API dans une même requête HTTP.
- Utilisez un intervalle exponentiel entre les tentatives pour relancer la requête.
sharingRateLimitExceeded
Cette erreur se produit lorsque l'utilisateur atteint une limite de partage et est souvent liée à une limite d'e-mails. L'exemple JSON suivant représente cette erreur :
{
"error": {
"errors": [
{
"domain": "global",
"message": "Rate limit exceeded. User message: \"These item(s) could not be shared because a rate limit was exceeded: filename",
"reason": "sharingRateLimitExceeded",
}
],
"code": 403,
"message": "Rate Limit Exceeded"
}
}
Solution :
- N'envoyez pas d'e-mails lorsque vous partagez de grandes quantités de fichiers.
- Si un utilisateur effectue de nombreuses requêtes au nom de plusieurs utilisateurs d'un compte Google Workspace, envisagez d'utiliser un compte de service avec délégation au niveau du domaine à l'aide du paramètre
quotaUser
.
storageQuotaExceeded
Cette erreur se produit lorsque l'utilisateur atteint sa limite de stockage. L'exemple JSON suivant représente cette erreur :
{
"error": {
"errors": [
{
"domain": "global",
"message": "The user's Drive storage quota has been exceeded.",
"reason": "storageQuotaExceeded",
}
],
"code": 403,
"message": "The user's Drive storage quota has been exceeded."
}
}
Solution :
Vérifiez les limites de stockage de votre compte Drive. Pour en savoir plus, consultez Limites de stockage et d'importation pour Google Workspace.
Gérez votre espace de stockage dans Drive, Gmail et Google Photos.
teamDriveFileLimitExceeded
Cette erreur se produit lorsqu'un utilisateur tente de dépasser la limite stricte d'éléments dans un lecteur partagé. Dans le Drive partagé d'un utilisateur, chaque dossier peut contenir 500 000 éléments au maximum, y compris des fichiers, des dossiers et des raccourcis. Cette limite dépend du nombre d'éléments et non de votre utilisation de l'espace de stockage. Pour en savoir plus, consultez Limites des Drive partagés dans Google Drive.
L'exemple JSON suivant représente cette erreur :
{
"error": {
"errors": [
{
"domain": "global",
"reason": "teamDriveFileLimitExceeded",
"message": "The file limit for this shared drive has been exceeded."
}
],
"code": 403,
"message": "The file limit for this shared drive has been exceeded."
}
}
Pour résoudre ce problème, réduisez le nombre d'éléments dans le Drive partagé. Il peut être difficile d'organiser des Drive partagés comportant trop de fichiers ou d'y effectuer des recherches.
teamDriveHierarchyTooDeep
Une erreur teamDriveHierarchyTooDeep
se produit lorsque la limite du nombre de niveaux de dossiers imbriqués dans un Drive partagé a été dépassée. Un Drive partagé ne peut pas contenir plus de 100 niveaux de dossiers imbriqués. Pour en savoir plus, consultez Limite de profondeur des dossiers.
{
"error": {
"errors": [
{
"domain": "global",
"reason": "teamDriveHierarchyTooDeep",
"message": "The shared drive hierarchy depth will exceed the limit."
}
],
"code": 403,
"message": "The shared drive hierarchy depth will exceed the limit."
}
}
Solution :
- Informez l'utilisateur que les Drive partagés empêchent de placer des dossiers à plus de 100 niveaux de profondeur.
- Si l'utilisateur doit créer un autre dossier imbriqué, demandez-lui de réorganiser le dossier parent prévu pour qu'il comporte moins de 100 niveaux de profondeur ou d'utiliser un autre dossier parent qui répond déjà à l'exigence.
teamDriveMembershipRequired
Cette erreur se produit lorsqu'un utilisateur tente d'accéder à un Drive partagé dont il n'est pas membre. L'exemple JSON suivant représente cette erreur :
{
"error": {
"errors": [
{
"domain": "global",
"reason": "teamDriveMembershipRequired",
"message": "The attempted action requires shared drive membership."
}
],
"code": 403,
"message": "The attempted action requires shared drive membership."
}
}
Pour résoudre ce problème, essayez l'une des solutions suivantes :
Demandez au gestionnaire du Drive partagé de vous ajouter avec les autorisations appropriées pour l'action que vous devez effectuer.
Consultez les rôles et autorisations de Drive pour savoir qui peut accéder aux lecteurs partagés et les gérer. Pour en savoir plus sur les niveaux d'accès, consultez Créer un Drive partagé.
teamDrivesFolderMoveInNotSupported
Cette erreur se produit lorsqu'un utilisateur tente de déplacer un dossier de Mon Drive vers un Drive partagé. L'exemple JSON suivant est une représentation de cette erreur :
{
"error": {
"errors": [
{
"domain": "global",
"reason": "teamDrivesFolderMoveInNotSupported",
"message": "Moving folders into shared drives is not supported."
}
],
"code": 403,
"message": "Moving folders into shared drives is not supported."
}
}
Pour résoudre ce problème, essayez l'une des solutions suivantes :
Déplacez les éléments individuels du dossier vers un Drive partagé à l'aide de l'API Drive. Définissez le paramètre
supportsAllDrives=true
pour indiquer la compatibilité avec Mon Drive et les Drive partagés.Si vous devez déplacer le dossier vers un Drive partagé, utilisez l'interface utilisateur de Drive. Pour en savoir plus, consultez Déplacer des dossiers vers des Drive partagés en tant qu'administrateur.
teamDrivesParentLimit
Cette erreur se produit lorsqu'un utilisateur tente d'ajouter plusieurs parents à un élément dans un Drive partagé. L'exemple JSON suivant représente cette erreur :
{
"error": {
"errors": [
{
"domain": "global",
"reason": "teamDrivesParentLimit",
"message": "A shared drive item must have exactly one parent."
}
],
"code": 403,
"message": "A shared drive item must have exactly one parent."
}
}
Pour corriger cette erreur, utilisez des raccourcis Drive pour ajouter plusieurs liens à un fichier. Bien qu'un raccourci ne puisse avoir qu'un seul parent, un fichier de raccourci peut être copié vers des emplacements supplémentaires. Pour en savoir plus, consultez Créer un raccourci vers un fichier Drive.
UrlLeaseLimitExceeded
Cette erreur se produit lorsque vous essayez d'enregistrer des données de jeu Google Play via votre application. L'exemple JSON suivant représente cette erreur :
{
"error": {
"errors": [
{
"domain": "usageLimits",
"reason": "UrlLeaseLimitExceeded",
"message": "Too many pending uploads for this snapshot. Please finish or cancel some before creating more."
}
],
"code": 403,
"message": "Too many pending uploads for this snapshot. Please finish or cancel some before creating more."
}
}
Pour résoudre cette erreur, terminez ou annulez les importations d'instantanés avant d'en créer d'autres.
userRateLimitExceeded
Cette erreur se produit lorsque la limite par utilisateur a été atteinte. Il peut s'agir d'une limite de la console Google Cloud ou du backend Drive. L'exemple JSON suivant représente cette erreur :
{
"error": {
"errors": [
{
"domain": "usageLimits",
"reason": "userRateLimitExceeded",
"message": "User Rate Limit Exceeded"
}
],
"code": 403,
"message": "User Rate Limit Exceeded"
}
}
Pour résoudre ce problème, essayez l'une des solutions suivantes :
Augmentez le quota par utilisateur dans le projet Google Cloud. Pour en savoir plus, demandez une augmentation de quota.
Si un utilisateur effectue de nombreuses requêtes au nom de plusieurs utilisateurs d'un compte Google Workspace, envisagez d'utiliser un compte de service avec délégation au niveau du domaine à l'aide du paramètre
quotaUser
.Utilisez un intervalle exponentiel entre les tentatives pour relancer la requête.
Pour en savoir plus sur les limites de l'API Drive, consultez Limites d'utilisation.
Erreurs 404
Ces erreurs signifient que la ressource demandée n'est pas accessible ou n'existe pas.
notFound
Cette erreur se produit lorsque l'utilisateur n'a pas accès en lecture à un fichier ou que le fichier n'existe pas. L'exemple JSON suivant représente cette erreur :
{
"error": {
"errors": [
{
"domain": "global",
"reason": "notFound",
"message": "File not found {fileId}"
}
],
"code": 404,
"message": "File not found: {fileId}"
}
}
Solution :
- Si le fichier se trouve dans un Drive partagé et que vous utilisez la méthode
files.get
, assurez-vous que le paramètre de requêtesupportsAllDrives
est défini surtrue
. - Informez l'utilisateur qu'il n'a pas accès en lecture au fichier ou que le fichier n'existe pas.
- Demandez à l'utilisateur de contacter le propriétaire du fichier et de lui demander l'autorisation d'y accéder.
Erreurs 429
Ces erreurs signifient que trop de requêtes ont été envoyées à l'API trop rapidement.
rateLimitExceeded
Cette erreur se produit lorsque l'utilisateur a envoyé trop de requêtes dans un laps de temps donné. L'exemple JSON suivant représente cette erreur :
{
"error": {
"errors": [
{
"domain": "usageLimits",
"reason": "rateLimitExceeded",
"message": "Rate Limit Exceeded"
}
],
"code": 429,
"message": "Rate Limit Exceeded"s
}
}
Pour résoudre ce problème, utilisez un intervalle exponentiel entre les tentatives pour relancer la requête.
Erreurs 500, 502, 503 et 504
Ces erreurs se produisent lorsqu'une erreur de serveur inattendue survient lors du traitement de la requête. Ces erreurs peuvent être dues à différents problèmes, par exemple le chevauchement du timing d'une requête avec celui d'une autre requête ou une requête pour une action non prise en charge, comme la tentative de mise à jour des autorisations pour une seule page dans Google Sites au lieu de l'ensemble du site.
Voici une liste des erreurs 5xx :
- Erreur de backend 500
- 502 Passerelle incorrecte
- 503 Service indisponible.
- 504 Expiration du délai de la passerelle
Pour résoudre ce problème, utilisez un intervalle exponentiel entre les tentatives pour relancer la requête.