Устранить ошибки

API Google Drive возвращает информацию об ошибках двух уровней:

  • Коды ошибок HTTP и сообщения заголовков.
  • В теле ответа содержится JSON-объект с дополнительными сведениями, которые помогут определить, как обработать ошибку.

Приложения Google Drive должны перехватывать и обрабатывать все ошибки, которые могут возникнуть при использовании REST API. В этом руководстве приведены инструкции по устранению конкретных ошибок API Google Drive.

Сводка кодов состояния HTTP

Код ошибки Описание
200 - OK Запрос выполнен успешно (это стандартный ответ для успешных HTTP-запросов).
400 - Bad Request Запрос не может быть выполнен из-за ошибки, допущенной клиентом.
401 - Unauthorized Запрос содержит неверные учетные данные.
403 - Forbidden Запрос получен и понят, но у пользователя нет разрешения на его выполнение.
404 - Not Found Запрошенная страница не найдена.
429 - Too Many Requests Слишком много запросов к API.
500, 502, 503, 504 - Server Errors При обработке запроса возникла непредвиденная ошибка.

400 ошибок

Эти ошибки означают, что запрос был неприемлем, часто из-за отсутствия обязательного параметра.

badRequest

Эта ошибка может возникнуть из-за любой из следующих проблем в вашем коде:

  • Не указано обязательное поле или параметр.
  • Указанное значение или комбинация указанных полей недопустимы.
  • Вы попытались добавить дубликат родительского файла к файлу в Google Диске.
  • Вы попытались добавить родительский элемент, который создаст цикл в графе каталогов.

Приведенный ниже пример JSON иллюстрирует данную ошибку:

{
  "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."
  }
}

Чтобы исправить эту ошибку, проверьте поле message и внесите соответствующие изменения в свой код.

illegalKeepForeverModification

Эта ошибка возникает при попытке установить значение false для ревизии файла BLOB, помеченной как "Keep Forever". Следующий пример в формате JSON иллюстрирует эту ошибку:

{
 "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."
 }
}

Для устранения этой ошибки необходимо навсегда удалить ревизию файла BLOB, чтобы снять параметр "Хранить навсегда".

invalidSharingRequest

Эта ошибка возникает по нескольким причинам. Чтобы определить причину, оцените поле reason в возвращаемом JSON. Чаще всего эта ошибка возникает по следующим причинам:

  • Ссылка на файл успешно отправлена, но уведомление по электронной почте доставлено некорректно.
  • Изменение списка контроля доступа (ACL) для этого пользователя запрещено.

В поле message указана фактическая ошибка.

Отправка прошла успешно, но уведомление по электронной почте было доставлено некорректно.

Приведенный ниже пример JSON иллюстрирует данную ошибку:

{
  "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"
  }
}

Чтобы исправить эту ошибку, сообщите пользователю (тому, кто поделился ссылкой), что он не смог поделиться ссылкой, поскольку уведомление по электронной почте не было отправлено на указанный адрес. Пользователь должен убедиться, что у него указан правильный адрес электронной почты и что он может получать электронные письма.

Изменение списка контроля доступа (ACL) для этого пользователя запрещено.

Приведенный ниже пример JSON иллюстрирует данную ошибку:

{
  "error": {
    "errors": [
      {
        "domain": "global",
        "reason": "invalidSharingRequest",
        "message": "Bad Request. User message: \"ACL change not allowed.\""
      }
    ],
    "code": 400,
    "message": "Bad Request"
  }
}

Чтобы исправить эту ошибку, проверьте настройки общего доступа домена Google Workspace, к которому принадлежит файл. Возможно, эти настройки запрещают предоставление доступа за пределы домена, или же предоставление доступа к общему диску может быть не разрешено.

401 ошибок

Эти ошибки означают, что запрос не содержит действительного токена доступа.

authError

Эта ошибка возникает, когда используемый вами токен доступа просрочен или недействителен. Также причиной может быть отсутствие авторизации для запрошенных областей действия. Следующий пример в формате JSON иллюстрирует эту ошибку:

{
  "error": {
    "errors": [
      {
        "domain": "global",
        "reason": "authError",
        "message": "Invalid Credentials",
        "locationType": "header",
        "location": "Authorization",
      }
    ],
    "code": 401,
    "message": "Invalid Credentials"
  }
}

Для устранения этой ошибки обновите токен доступа, используя долгосрочный токен обновления. Если это не поможет, направьте пользователя через процесс OAuth, как описано в разделе «Выбор областей действия API Google Drive» .

fileNotDownloadable

Эта ошибка возникает при попытке использовать метод revisions.get с параметром alt=media URL в документе Google Workspace. Следующий пример JSON иллюстрирует эту ошибку:

{
  "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."
  }
}

Чтобы исправить эту ошибку, попробуйте выполнить одно из следующих действий:

  • Удалите параметр URL alt=media если хотите просмотреть метаданные конкретной ревизии, например, MIME-тип.
  • Для экспорта содержимого документа Google Workspace в байтах используйте метод files.export . Дополнительную информацию см. в разделе «Экспорт содержимого документа Google Workspace» .

403 ошибки

Эти ошибки означают, что превышен лимит использования или у пользователя отсутствуют необходимые права доступа. Чтобы определить причину, оцените поле reason в возвращаемом JSON-файле.

Для получения информации об ограничениях API Google Диска см. раздел «Ограничения использования» . Для получения информации об ограничениях на папки Google Диска см. раздел «Ограничения на файлы и папки» .

activeItemCreationLimitExceeded

Ошибка activeItemCreationLimitExceeded возникает, когда превышен лимит на количество создаваемых элементов для одной учетной записи. Каждый пользователь может создать до 500 миллионов элементов с помощью одной учетной записи. Для получения дополнительной информации см. раздел «Лимит элементов пользователя» .

{
 "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."
 }
}

Чтобы исправить эту ошибку:

  1. Сообщите пользователю, что Google Drive не позволяет создавать более 500 миллионов элементов в одной учетной записи.

  2. Если пользователю необходимо создавать элементы в этой же учетной записи, попросите его навсегда удалить некоторые объекты. В противном случае он может использовать другую учетную запись, которая уже соответствует этому требованию.

appNotAuthorizedToFile

Эта ошибка возникает, если ваше приложение не включено в список контроля доступа (ACL) для файла. Из-за этой ошибки пользователь не может открыть файл с помощью вашего приложения. Следующий пример JSON иллюстрирует эту ошибку:

{
  "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}."
  }
}

Чтобы исправить эту ошибку, попробуйте выполнить одно из следующих действий:

  • Откройте окно выбора файлов в Google Диске и предложите пользователю открыть файл.
  • Предложите пользователю открыть файл с помощью контекстного меню «Открыть с помощью» в интерфейсе Google Диска вашего приложения.
  • Используйте метод files.get , чтобы проверить поле isAppAuthorized в ресурсе files и убедиться, что ваше приложение создало или открыло файл.

cannotModifyInheritedTeamDrivePermission

Эта ошибка возникает, когда пользователь пытается изменить унаследованные разрешения элемента на общем диске. Удалить унаследованные разрешения элемента на общем диске невозможно. Следующий пример в формате JSON иллюстрирует эту ошибку:

{
  "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."
  }
}

Для исправления этой ошибки пользователю необходимо изменить права доступа к прямому или косвенному родительскому элементу, от которого они были унаследованы. Дополнительную информацию см. в разделе «Как работают права доступа ». Вы также можете получить ресурс permissions , чтобы узнать, унаследованы ли права доступа к этому элементу общего диска или применены напрямую.

dailyLimitExceeded

Эта ошибка возникает, когда достигнут лимит API для вашего проекта. Следующий пример JSON иллюстрирует эту ошибку:

{
  "error": {
    "errors": [
      {
        "domain": "usageLimits",
        "reason": "dailyLimitExceeded",
        "message": "Daily Limit Exceeded"
      }
    ],
    "code": 403,
    "message": "Daily Limit Exceeded"
  }
}

Эта ошибка возникает, когда владелец приложения установил лимит квоты для ограничения использования определенного ресурса. Для устранения этой ошибки снимите все ограничения на использование квоты «Запросов в день» .

domainPolicy

Эта ошибка возникает, когда политика домена пользователя не разрешает доступ вашего приложения к Google Диску. Следующий пример в формате JSON иллюстрирует эту ошибку:

{
  "error": {
    "errors": [
      {
        "domain": "global",
        "reason": "domainPolicy",
        "message": "The domain administrators have disabled Drive apps."
      }
    ],
    "code": 403,
    "message": "The domain administrators have disabled Drive apps."
  }
}

Чтобы исправить эту ошибку:

  1. Сообщите пользователю, что домен не разрешает вашему приложению доступ к файлам в Google Диске.
  2. Попросите пользователя связаться с администратором домена, чтобы запросить доступ к вашему приложению.

downloadRestrictedForRevision

Эта ошибка возникает, когда пользователь не может загрузить версию файла BLOB-объекта. Следующий пример в формате JSON иллюстрирует эту ошибку:

{
  "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."
  }
}

Чтобы исправить эту ошибку, сообщите пользователю, что загрузить версии файлов BLOB можно только в том случае, если они помечены как «Сохранить навсегда». Дополнительную информацию см. в разделе «Укажите версии для сохранения, чтобы предотвратить автоматическое удаление ».

fileNotExportable

Эта ошибка возникает, когда пользователь пытается экспортировать файл Google Videos. Следующий пример в формате JSON иллюстрирует эту ошибку:

{
  "error": {
    "errors": [
      {
        "domain": "global",
        "reason": "fileNotExportable",
        "message": "Google Vids does not support files.export. Use files.download with Vids files."
      }
    ],
    "code": 403,
    "message": "Google Vids does not support files.export. Use files.download with Vids files."
  }
}

Чтобы исправить эту ошибку, сообщите пользователю, что файлы Google Vids необходимо загружать с помощью метода files.download , поскольку метод files.export не поддерживается. Дополнительную информацию см. в разделе «Загрузка и экспорт файлов» .

fileOwnerNotMemberOfTeamDrive

Эта ошибка возникает при попытке переместить файл на общий диск, если владелец файла не является его участником. Следующий пример в формате JSON иллюстрирует эту ошибку:

{
  "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."
  }
}

Чтобы исправить эту ошибку:

  1. Добавьте пользователя на общий диск с role=owner . Дополнительную информацию см. в разделе «Общий доступ к файлам, папкам и дискам» .

  2. Добавьте файл на общий диск. Для получения дополнительной информации см. раздел «Создание и заполнение папок» .

fileWriterTeamDriveMoveInDisabled

Эта ошибка возникает, когда администратор домена не разрешил пользователям с role=writer перемещать элементы на общий диск. Пользователь, пытающийся переместить элементы, имеет меньше прав, чем разрешено на целевом общем диске. Следующий пример в формате JSON иллюстрирует эту ошибку:

{
  "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."
  }
}

Для устранения этой ошибки используйте одну и ту же учетную запись администратора на исходном и целевом общих дисках.

insufficientFilePermissions

Эта ошибка возникает, когда у пользователя нет прав на запись в файл, а ваше приложение пытается его изменить. Следующий пример в формате JSON иллюстрирует эту ошибку:

{
  "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}."
  }
}

Для исправления этой ошибки посоветуйте пользователю связаться с владельцем файла и запросить доступ на редактирование. Вы также можете проверить уровни доступа пользователя в метаданных, полученных методом files.get , и отобразить интерфейс только для чтения, если разрешения отсутствуют.

myDriveHierarchyDepthLimitExceeded

Ошибка myDriveHierarchyDepthLimitExceeded возникает, когда превышен лимит на количество уровней вложенных папок. В папке «Мой диск» пользователя не может быть более 100 уровней вложенных папок. Для получения дополнительной информации см. раздел «Лимит глубины папок» .

{
 "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."
 }
}

Чтобы исправить эту ошибку:

  1. Сообщите пользователю, что Google Drive не позволяет создавать папки, вложенные более чем на 100 уровней.
  2. Если пользователю необходимо создать еще одну вложенную папку, посоветуйте ему реорганизовать родительскую папку таким образом, чтобы она имела менее 100 уровней вложенности, или использовать другую родительскую папку, которая уже соответствует требованиям.

numChildrenInNonRootLimitExceeded

Эта ошибка возникает, когда превышен лимит на количество дочерних элементов (папок, файлов и ярлыков) в папке. Лимит в 500 000 элементов существует для папок, файлов и ярлыков, находящихся непосредственно в папке. Элементы, вложенные в подпапки, не учитываются в этом лимите. Для получения дополнительной информации об ограничениях папок в Google Диск см. раздел «Ограничения папок в Google Диск» .

Приведенный ниже пример JSON иллюстрирует данную ошибку:

{
 "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."
 }
}

Чтобы исправить эту ошибку, попробуйте выполнить одно из следующих действий:

  • Сообщите пользователю, что Google Drive не поддерживает папки, содержащие более 500 000 элементов.
  • Если пользователю необходимо добавить больше элементов в заполненную папку, посоветуйте ему реорганизовать папку таким образом, чтобы в ней содержалось менее 500 000 элементов, или использовать аналогичную папку, которая уже содержит меньшее количество элементов.

rateLimitExceeded

Эта ошибка возникает, когда достигнут лимит запросов проекта. Этот лимит варьируется в зависимости от типа запроса. Следующий пример в формате JSON иллюстрирует эту ошибку:

{
 "error": {
  "errors": [
   {
    "domain": "usageLimits",
    "message": "Rate Limit Exceeded",
    "reason": "rateLimitExceeded",
   }
  ],
  "code": 403,
  "message": "Rate Limit Exceeded"
 }
}

Чтобы исправить эту ошибку, попробуйте выполнить одно из следующих действий:

sharingRateLimitExceeded

Эта ошибка возникает, когда пользователь достигает лимита на количество доступных для обмена файлами, и часто связана с лимитом на количество отправленных электронных писем. Следующий пример в формате JSON иллюстрирует эту ошибку:

{
 "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"
 }
}

Чтобы исправить эту ошибку:

  1. Не отправляйте электронные письма при обмене большими объемами файлов.
  2. Если один пользователь отправляет множество запросов от имени многих пользователей учетной записи Google Workspace, рассмотрите возможность использования служебной учетной записи с делегированием полномочий в масштабе всего домена с помощью параметра quotaUser .

storageQuotaExceeded

Эта ошибка возникает, когда пользователь достигает лимита хранилища. Следующий пример в формате JSON иллюстрирует эту ошибку:

{
 "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."
 }
}

Чтобы исправить эту ошибку:

  1. Проверьте ограничения на объем хранилища в вашем аккаунте Google Диск. Для получения дополнительной информации см. раздел «Ограничения на объем хранилища и загрузку в Google Рабочее пространство» .

  2. Управляйте своим хранилищем в Google Диск, Gmail и Google Фото .

  3. Приобретите больше места в хранилище Google .

teamDriveFileLimitExceeded

Эта ошибка возникает, когда пользователь пытается превысить строгий лимит элементов на общем диске. Каждая папка на общем диске пользователя имеет лимит в 500 000 элементов, включая файлы, папки и ярлыки. Этот лимит основан на количестве элементов, а не на использовании хранилища. Для получения дополнительной информации см. раздел «Лимиты общих дисков в Google Диск» .

Приведенный ниже пример JSON иллюстрирует данную ошибку:

{
  "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."
  }
}

Чтобы исправить эту ошибку, уменьшите количество элементов на общем диске. На общих дисках со слишком большим количеством файлов может быть сложно организовать и выполнить поиск.

teamDriveHierarchyTooDeep

Ошибка teamDriveHierarchyTooDeep возникает, когда превышен лимит на количество уровней вложенных папок на общем диске. Общий диск пользователя не может содержать более 100 уровней вложенных папок. Для получения дополнительной информации см. раздел «Лимит глубины папок» .

{
 "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."
 }
}

Чтобы исправить эту ошибку:

  1. Сообщите пользователю, что общие диски не позволяют размещать папки глубже 100 уровней.
  2. Если пользователю необходимо создать еще одну вложенную папку, посоветуйте ему реорганизовать родительскую папку таким образом, чтобы она имела менее 100 уровней вложенности, или использовать другую родительскую папку, которая уже соответствует требованиям.

teamDriveMembershipRequired

Эта ошибка возникает, когда пользователь пытается получить доступ к общему диску, участником которого он не является. Следующий пример в формате JSON иллюстрирует эту ошибку:

{
  "error": {
    "errors": [
      {
        "domain": "global",
        "reason": "teamDriveMembershipRequired",
        "message": "The attempted action requires shared drive membership."
      }
    ],
    "code": 403,
    "message": "The attempted action requires shared drive membership."
  }
}

Чтобы исправить эту ошибку, попробуйте выполнить одно из следующих действий:

  1. Обратитесь к администратору общего диска с просьбой добавить вас в систему с соответствующими правами доступа для выполнения необходимого действия.

  2. Ознакомьтесь с ролями и разрешениями Google Диска, чтобы узнать, кто может получать доступ к общим дискам и управлять ими. Дополнительную информацию об уровнях доступа можно также найти в разделе «Создание общего диска» .

teamDrivesFolderMoveInNotSupported

Эта ошибка возникает, когда пользователь пытается переместить папку из раздела «Мой диск» на общий диск. Следующий пример в формате JSON иллюстрирует эту ошибку:

{
  "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."
  }
}

Чтобы исправить эту ошибку, попробуйте выполнить одно из следующих действий:

  • Переместите отдельные элементы из папки на общий диск, используя API Google Диска. Установите параметр supportsAllDrives=true , чтобы указать на поддержку как «Мой диск», так и общих дисков.

  • Если вам необходимо переместить папку на общий диск, используйте пользовательский интерфейс Google Диска. Дополнительную информацию см. в разделе «Перемещение папок на общие диски от имени администратора» .

teamDrivesParentLimit

Эта ошибка возникает, когда пользователь пытается добавить более одного родительского элемента к общему диску. Следующий пример в формате JSON иллюстрирует эту ошибку:

{
  "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."
  }
}

Чтобы исправить эту ошибку, используйте ярлыки Google Диска для добавления нескольких ссылок на файл. Хотя у ярлыка может быть только один родительский файл, файл ярлыка можно скопировать в дополнительные места. Для получения дополнительной информации см. раздел «Создание ярлыка для файла Google Диска» .

UrlLeaseLimitExceeded

Эта ошибка возникает при попытке сохранить данные игры из Google Play через ваше приложение. Следующий пример в формате JSON иллюстрирует эту ошибку:

{
 "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."
 }
}

Чтобы исправить эту ошибку, завершите или отмените загрузку всех снимков перед созданием новых.

userRateLimitExceeded

Эта ошибка возникает, когда достигнут лимит на одного пользователя. Это может быть лимит из консоли Google Cloud или лимит из административной панели Google Drive. Следующий пример в формате JSON иллюстрирует эту ошибку:

{
 "error": {
  "errors": [
   {
    "domain": "usageLimits",
    "reason": "userRateLimitExceeded",
    "message": "User Rate Limit Exceeded"
   }
  ],
  "code": 403,
  "message": "User Rate Limit Exceeded"
 }
}

Чтобы исправить эту ошибку, попробуйте выполнить одно из следующих действий:

Для получения информации об ограничениях API Drive см. раздел «Ограничения использования» .

Ошибки 404

Эти ошибки означают, что запрошенный ресурс недоступен или не существует.

notFound

Эта ошибка возникает, когда у пользователя нет прав на чтение файла или файл не существует. Следующий пример в формате JSON иллюстрирует эту ошибку:

{
  "error": {
    "errors": [
      {
        "domain": "global",
        "reason": "notFound",
        "message": "File not found {fileId}"
      }
    ],
    "code": 404,
    "message": "File not found: {fileId}"
  }
}

Чтобы исправить эту ошибку:

  1. Если файл находится на общем диске, и вы используете метод files.get , убедитесь, что параметр запроса supportsAllDrives установлен в true .
  2. Сообщите пользователю, что у него нет прав на чтение файла или что файл не существует.
  3. Попросите пользователя связаться с владельцем файла и запросить разрешение на доступ к нему.

429 ошибок

Эти ошибки означают, что в API было отправлено слишком много запросов слишком быстро.

rateLimitExceeded

Эта ошибка возникает, когда пользователь отправляет слишком много запросов за определенный промежуток времени. Следующий пример в формате JSON иллюстрирует эту ошибку:

{
  "error": {
    "errors": [
      {
        "domain": "usageLimits",
        "reason": "rateLimitExceeded",
        "message": "Rate Limit Exceeded"
      }
    ],
    "code": 429,
    "message": "Rate Limit Exceeded"s
  }
}

Для устранения этой ошибки используйте экспоненциальную задержку для повторной отправки запроса.

ошибки 500, 502, 503, 504

Эти ошибки возникают, когда во время обработки запроса происходит непредвиденная ошибка сервера. Причиной таких ошибок могут быть различные проблемы, включая совпадение времени выполнения запроса с другим запросом или запрос на неподдерживаемое действие, например, попытка обновить разрешения для отдельной страницы в Google Sites вместо всего сайта.

Ниже приведён список ошибок 5xx:

  • Ошибка бэкэнда 500
  • 502 Неверный шлюз
  • Сервис 503 недоступен
  • 504 Таймаут шлюза

Для устранения этой ошибки используйте экспоненциальную задержку для повторной отправки запроса.