На этой странице приведены все коды ошибок Interactions API, описан формат ответа с ошибкой и объясняется, как API возвращает ошибки для разных типов запросов.
Стандартные коды ошибок API
Эти общие коды ошибок на уровне запроса соответствуют стандартным кодам статуса HTTP.
Используйте поле code в логике приложения, чтобы обрабатывать ошибки программно.
| Код | Статус HTTP | Описание | Рекомендуемые действия |
|---|---|---|---|
invalid_request |
400 Bad Request | Полезная нагрузка запроса имеет неверный формат или содержит недопустимые параметры. | Проверьте синтаксис и параметры запроса в документации по API. |
failed_precondition |
400 Bad Request | Запрос не может быть обработан, поскольку не выполнено необходимое условие (например, отключены платежные функции). | Проверьте статус платежного аккаунта проекта или требования к аккаунту. |
out_of_range |
416 Requested Range Not Satisfiable | Параметр запроса находится за пределами допустимого диапазона. | Проверьте значения и ограничения параметров. |
parameter_unknown |
400 Bad Request | Запрос содержит неизвестный параметр. | Удалите нераспознанный параметр и повторите попытку. |
authentication |
401 Unauthorized | Ключ API отсутствует, недействителен или срок его действия истек. | Проверьте ключ API. |
payment_required |
402 Payment Required | Ваш баланс предоплаты исчерпан. | Добавьте средства в платежный аккаунт или включите автоматическое пополнение. Не повторяйте попытку: запрос не будет выполнен, пока не будут добавлены бонусы. |
permission_denied |
403 Forbidden | У вашего ключа API нет разрешения на доступ к этому ресурсу или доступ к API вашего проекта ограничен. | Проверьте разрешения ключа API, соответствие требованиям к уровню проекта и статус платежного аккаунта. Подробнее об устранении неполадок, связанных с ограничением или недоступностью проекта… |
not_found |
Ошибка 404: не найдено | Запрошенный ресурс не найден. | Проверьте путь к ресурсу и параметры. |
model_not_found |
Ошибка 404: не найдено | Указанная модель не найдена. | Проверьте название модели или выберите другую. |
already_exists |
409 Conflict | Объект, который вы хотите создать, уже существует. | Прежде чем создавать ресурс заново, проверьте, существует ли он. |
aborted |
409 Conflict | Операция была прервана из-за конфликта или ошибки проверки параллелизма. | Повторите запрос на более высоком уровне приложения. |
rate_limit_exceeded |
429 Too Many Requests | Вы превысили лимит запросов или токенов в минуту или секунду. | Подождите и повторите попытку с экспоненциальной выдержкой. |
quota_exceeded |
429 Too Many Requests | Вы превысили дневную квоту. | Подождите, пока квота сбросится, или запросите ее увеличение. |
too_many_requests |
429 Too Many Requests | Вы отправили слишком много запросов за короткий период времени. | Подождите и повторите попытку с экспоненциальной выдержкой. |
cancelled |
499 Client Closed Request | Клиент отменил запрос до его завершения. | Ничего предпринимать не нужно. Обычно это означает, что клиент отключился. |
api_error |
500 Внутренняя ошибка сервера | На сервере произошла непредвиденная ошибка. | Повторите запрос. Если проблема не исчезнет, обратитесь в службу поддержки. |
unimplemented |
501 Not Implemented | Операция или функция не реализована или не поддерживается. | Проверьте возможности API или переключитесь на поддерживаемую функцию. |
service_unavailable |
Сервис недоступен (ошибка 503). | Сервис временно перегружен или недоступен. | Подождите и повторите попытку с экспоненциальной выдержкой. |
deadline_exceeded |
Превышено время ожидания шлюза (ошибка 504). | Запрос не был выполнен в установленный срок. | Удалите или увеличьте срок, чтобы использовать значение по умолчанию. |
Коды блокировки генерации
Эти коды ошибок указывают на то, что правила, безопасность или ограничения на контент заблокировали выходные данные модели. Если вы получили один из этих кодов, измените входные данные и повторите попытку.
| Код | Описание |
|---|---|
safety |
Запрос заблокирован из-за нарушений правил безопасности (опасный контент). |
recitation |
Запрос заблокирован из-за ограничений, связанных с авторскими правами или декламацией. |
language |
Запрос заблокирован из-за неподдерживаемого языка. |
prohibited_content |
Запрос заблокирован из-за нарушения правил в отношении запрещенного контента. |
spii |
Запрос заблокирован из-за ограничений, связанных с конфиденциальной информацией, позволяющей идентифицировать личность. |
blocklist |
Запрос заблокирован из-за запрещенных слов в черном списке. |
image_safety |
Генерация изображений заблокирована из-за нарушений правил безопасности. |
image_prohibited_content |
Генерация изображения заблокирована из-за нарушения правил в отношении запрещенного контента. |
image_recitation |
Генерирование изображений заблокировано из-за ограничений, связанных с авторскими правами или цитированием. |
image_other |
Генерация изображений заблокирована по неизвестной причине. |
content_blocked |
Запрос заблокирован по неуказанной причине, связанной с правилами. |
Коды ошибок генерации
Эти коды ошибок указывают на структурную проблему с выходными данными, сгенерированными моделью (например, неправильный вызов функции или необъявленный вызов инструмента).
| Код | Описание |
|---|---|
malformed_function_call |
Модель создала вызов функции, который не удалось обработать. |
malformed_tool_call |
Модель сгенерировала вызов инструмента, который не удалось обработать. |
unexpected_tool_call |
Модель вызвала инструмент, который не был объявлен в запросе. |
no_image |
Модель не смогла создать изображение. |
too_many_tool_calls |
Модель сгенерировала больше вызовов инструментов, чем разрешено. |
missing_thought_signature |
В ответе отсутствует обязательная подпись размышления. |
Формат ответа об ошибке
Все ошибки Interactions API возвращают объект error, содержащий code и message. Например, если передать неподдерживаемый тип инструмента, возвращается следующее:
{
"error": {
"code": "invalid_request",
"message": "The value 'invalid_tool_type_xyz' is not supported for 'type' at 'tools[0]'. Supported values: 'function', 'code_execution', 'mcp_server', 'filesystem', 'google_maps', 'google_search', 'bash', 'computer_use', 'file_search', 'url_context'."
}
}
| Поле | Тип | Описание |
|---|---|---|
code |
string | Машиночитаемый код ошибки в snake_case. |
message |
string | Человекочитаемое описание проблемы. |
Как отправляются сообщения об ошибках
API возвращает ошибки по-разному в зависимости от того, какой HTTP-запрос вы делаете: стандартный или потоковый (SSE).
Стандартные HTTP-запросы
Для стандартных (непотоковых) запросов API задает код статуса HTTP-ответа (например, 400 Bad Request, 401 Unauthorized или 429 Too Many Requests) и возвращает объект error в теле ответа JSON:
{
"error": {
"code": "invalid_request",
"message": "The value 'invalid_tool_type_xyz' is not supported for 'type' at 'tools[0]'."
}
}
Запросы потоковой передачи (SSE)
Для потоковых запросов (stream: true) API отправляет события ошибок через поток Server-Sent Events (SSE) с параметром event_type, установленным на "error". Поле error содержит ту же структуру code и message:
{
"event_type": "error",
"error": {
"code": "not_found",
"message": "Failed to get completed interaction: Result not found."
}
}
Полная схема событий SSE приведена в документации по Interactions API.
Дальнейшие действия
- Устранение неполадок с API. Решение распространенных проблем и ошибок.
- Ограничения частоты запросов. Узнайте об ограничениях на количество запросов и обработке квот.