Типы ошибок и что с ними делать

Если запрос магазина не удалось выполнить, Маркет возвращает в ответ параметр errors. Он содержит коды возникших ошибок (параметр code) и их краткие описания ошибок (параметр message).

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

Что обозначают коды ошибок

Код

Название

Что случилось и что делать

400

Виды ошибок

Bad Request

Что-то не так в содержании запроса — например, вы пытаетесь изменить статус несуществующего заказа. Ориентируйтесь на описание ошибки, чтобы понять, что именно не так.

401

Виды ошибок

Unauthorized

В запросе не указан (или указан, но не там) авторизационный токен. Где его взять и как указать

403

Виды ошибок

Forbidden

Авторизационный токен не сработал. Скорее всего, у него истек срок годности или вы удалили из числа сотрудников человека, на которого был оформлен токен. Воспользуйтесь инструкциями в статье об авторизации.

404

Виды ошибок

Not Found

Запрашиваемый ресурс не найден. Проверьте адреса запросов, по которым обращается система магазина.

405

Виды ошибок

Method Not Allowed

На указанном ресурсе нет такого метода. Проверьте адреса запросов, по которым обращается система магазина.

415

Виды ошибок

Unsupported Media Type

Запрашиваемый тип контента не поддерживается методом. Проверьте корректность запроса.

420

Виды ошибок

Enhance Your Calm

Маркет получил от магазина слишком много таких запросов. Убедитесь, что ваша система не отправляет ничего лишнего.

423

Виды ошибок

Locked

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

500

Internal Server Error

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

503

Виды ошибок

Service Unavailable

Сервер Маркета перегружен. Такая ошибка через некоторое время исчезнет сама собой.

Ошибки в содержании запросов (400)

Возможные причины такой ошибки зависят от конкретного запроса. В описании многих запросов есть раздел, описывающий варианты ошибки 400 для конкретных данных.

Некоторые варианты ошибок с кодом 400 одинаковы для разных запросов:

Описание

Перевод

Что делать

Collection of field

must not be empty

Параметр не должен быть пустым.

Укажите хотя бы один элемент для параметра.

Invalid status: 'status'

Указан некорректный статус.

Проверьте корректность передаваемого статуса для фильтрации заказов по статусу.

JSON: {message}

В формате JSON-данных содержится ошибка.

Проверьте корректность JSON.

Missing field

Не указан обязательный параметр.

Укажите значение для обязательного параметра.

The request is too big

Превышено ограничение на размер HTTP-запроса.

Размер содержимого не может превышать 512 КБ. Разбейте запрос на несколько.

Too long time period.

Maximum is 'maxPeriod' days

Указан слишком большой диапазон дат. Максимальный диапазон — maxPeriod.

Сократите диапазон дат для фильтрации заказов по дате.

Unexpected character

'character':

expected a valid value

'values'

Недопустимый символ.

Проверьте кодировку тела запроса. Требуемая кодировка — UTF-8.

Unexpected end of content

Тело запроса неожиданно завершается.

Проверьте корректность формата данных, передаваемых в теле запроса.

Value / length of field

(value) must be between

min and max [exclusively]

Значение (длина) параметра должно быть между значениями min и max и не равно им.

Проверьте корректность значения параметра.

Value / length of field

(value) must be greater /

less than [or equal to] limit

Значение (длина) параметра должно быть равно либо больше (меньше) указанного значения limit.

Проверьте корректность значения параметра.

Value of field has too

high scale: 'price'

Задана слишком высокая точность для параметра.

Задайте значение параметра с меньшей точностью.

Value of field must match

the pattern: 'regExp'

Значение параметра должно соответствовать регулярному выражению.

Проверьте корректность значения параметра.

Ошибки 401 Unauthorized

Описание Перевод Что делать
Unsupported authorization type specified in Authorization header Тип авторизации, переданный в HTTP-заголовке Authorization, не поддерживается. Сделайте заголовок по инструкции.
Authorization header has invalid syntax Формат HTTP-заголовка Authorization некорректен. Сделайте заголовок по инструкции.
OAuth credentials are not specified В запросе не указаны авторизационные данные. Сделайте заголовок Authorization по инструкции.
OAuth token is not specified В запросе не указан авторизационный токен. Сделайте заголовок Authorization по инструкции.

Ошибки 403 Forbidden

Описание Перевод Что делать
Access denied Доступ запрещен. Проверьте правильность указания ресурса, а также наличие прав доступа к нему у пользователя, чей авторизационный токен используется в запросе. Подробно о доступе
Access to API denied for the client / campaign Доступ к партнерскому API для клиента или магазина запрещен. Обратитесь к своему агентству для предоставления доступа к API.
Scope is invalid Токен получен через приложение без доступа к Маркету. Получите новый токен по инструкции.
Token is invalid Указанный авторизационный токен не действителен. Получите новый токен по инструкции.
User account is disabled Учетная запись пользователя, для которого выдан указанный авторизационный токен, заблокирована. Обратитесь в службу поддержки.

Ошибки 404 Not Found

Описание Перевод Что делать
Campaign not found: 'campaignId' Указанная в запросе кампания не найдена. Проверьте корректность передаваемого идентификатора кампании.
Feed not found: 'feedId' Указанный в запросе прайс-лист не найден. Проверьте корректность передаваемого идентификатора прайс-листа.
Login not found: 'login' Указанный в запросе логин не найден. Проверьте корректность передаваемого логина.
Model not found: 'modelId' Указанная в запросе модель не найдена. Проверьте корректность передаваемого идентификатора модели.

Ошибки 405 Method Not Allowed

Описание Перевод Что делать
Request method 'method' not supported Запрашиваемый HTTP-метод не поддерживается. Проверьте методы, которые поддерживаются ресурсом.

Ошибки 415 Unsupported Media Type

Описание Перевод Что делать
Content type 'content-type' not supported Запрашиваемый тип контента не поддерживается. Передайте один из поддерживаемых типов контента.
Missing Content-Type Не указан тип контента. Передайте тип контента.
Unknown content-type: 'content-type' Запрашиваемый тип контента — неизвестен. Передайте один из поддерживаемых типов контента.

Ошибки 420 Enhance Your Calm

Описание

Перевод

Что делать

Hit rate limit of 'N' parallel requests

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

Уменьшите количество параллельных запросов к партнерскому API в рамках одного магазина или партнера до N запросов.

Hit rate limit of 'N' requests

per 'period' for resource 'R'

Превышено ресурсное ограничение на количество N запросов к ресурсу R за период period для одного и того же магазина или партнера. Что это такое

Время, до которого действует ограничение, указано в заголовке X-RateLimit-Resource-Until. Использование ресурса станет возможным после наступления указанного времени.

Ошибки 423 Locked

Описание Перевод Что делать
Partner is in business migration Магазин находится в процессе переноса в другой кабинет. Дождитесь окончания переноса.
Partner use only default price В кабинете используются основные цены. Установить цену для отдельного магазина не получится. Задавайте единые цены для всех магазинов кабинета.

Ошибки 503 Service Unavailable

Описание Перевод Что делать
Service temporarily unavailable. Please, try again later Сервер временно недоступен из-за высокой загрузки. Попробуйте повторить запрос через некоторое время.

Пример сообщения об ошибке

Запрос:

GET /v2/10003/orders.json HTTP/1.1
Host: api.partner.market.yandex.ru
Accept: */*
Authorization: Bearer y0_BfRRRRRV2L8sWWvNkSNNNNSrLHaNXg4cCMswFbL6MWab9lktL2KPsMw

Ответ:

{
  "errors": [
    {
      "code": "UNAUTHORIZED",
      "message": "OAuth token is not specified"
    }
  ]
}