Типы ошибок и что с ними делать
Если запрос магазина не удалось выполнить, Маркет возвращает в ответ параметр errors
. Он содержит коды возникших ошибок (параметр code
) и их краткие описания ошибок (параметр message
).
Если ошибок с определенным кодом станет слишком много, вы получите уведомление об этом в кабинете.
Что обозначают коды ошибок
Код |
Название |
Что случилось и что делать |
|
|
Что-то не так в содержании запроса — например, вы пытаетесь изменить статус несуществующего заказа. Ориентируйтесь на описание ошибки, чтобы понять, что именно не так. |
|
|
В запросе не указан (или указан, но не там) авторизационный токен. |
|
|
|
|
|
Запрашиваемый ресурс не найден. Проверьте адреса запросов, по которым обращается система магазина. |
|
|
На указанном ресурсе нет такого метода. Проверьте адреса запросов, по которым обращается система магазина. |
|
|
Запрашиваемый тип контента не поддерживается методом. Проверьте корректность запроса. |
|
|
Маркет получил от магазина слишком много таких запросов. Убедитесь, что ваша система не отправляет ничего лишнего. |
|
|
Метод невозможно использовать для этого магазина. Ориентируйтесь на описание ошибки, чтобы понять, что именно не так. |
|
|
Внутренняя ошибка сервера Маркета. Такая ошибка через некоторое время исчезнет сама собой. Если этого не происходит, обратитесь в службу поддержки. |
|
|
Сервер Маркета перегружен. Такая ошибка через некоторое время исчезнет сама собой. |
Ошибки в содержании запросов (400)
Возможные причины такой ошибки зависят от конкретного запроса. В описании многих запросов есть раздел, описывающий варианты ошибки 400 для конкретных данных.
Некоторые варианты ошибок с кодом 400 одинаковы для разных запросов:
Описание |
Перевод |
Что делать |
Campaign type is not allowed |
Метод не поддерживает модель работы вашего магазина. |
Убедитесь, что вы используете метод, который поддерживает модель работы вашего магазина. |
Collection of field must not be empty |
Параметр не должен быть пустым. |
Укажите хотя бы один элемент для параметра. |
Invalid status: 'status' |
Указан некорректный статус. |
Проверьте корректность передаваемого статуса для фильтрации заказов по статусу. |
JSON: {message} |
В формате JSON-данных содержится ошибка. |
Проверьте корректность JSON. |
Missing field |
Не указан обязательный параметр. |
Укажите значение для обязательного параметра. |
Outlet is disabled for editing by partner |
Нельзя изменить информацию или удалить точку продажи магазина, так как вы отказались от доставки в пункты выдачи заказов Маркета. Подробнее о правилах доставки для DBS-магазинов читайте в Справке Маркета для продавцов. |
Обратитесь в службу поддержки, если вы готовы включить доставку в пункты выдачи заказов Маркета. |
The request is too big: {message} |
Превышено ограничение на размер HTTP-запроса. |
Размер содержимого не может превышать 512 КБ. Разбейте запрос на несколько. |
Too long time period. Maximum is 'maxPeriod' days |
Указан слишком большой диапазон дат. Максимальный диапазон — |
Сократите диапазон дат для фильтрации заказов по дате. |
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] |
Значение (длина) параметра должно быть между значениями |
Проверьте корректность значения параметра. |
Value / length of field (value) must be greater / less than [or equal to] limit |
Значение (длина) параметра должно быть равно либо больше (меньше) указанного значения |
Проверьте корректность значения параметра. |
Value of field has too high scale: 'price' |
Задана слишком высокая точность для параметра. |
Задайте значение параметра с меньшей точностью. |
Value of field must match the pattern: 'regExp' |
Значение параметра должно соответствовать регулярному выражению. |
Проверьте корректность значения параметра. |
String (value) is not a valid country code according to ISO 3166-1 alpha-2 |
Недопустимый код страны. |
Укажите код страны в формате ISO 3166-1 alpha-2. |
Ошибки 401 Unauthorized
Описание |
Перевод |
Что делать |
Api-Key token is invalid |
Api-Key-токен недействителен. |
Проверьте написание Api-Key-токена. Если ошибка сохраняется, получите новый токен. Как это сделать |
Api-Key token is revoked |
Api-Key-токен был удален. |
Получите новый токен. Как это сделать |
Api-Key token format invalid |
Неправильный формат Api-Key-токена. Префикс и длина токена корректны. |
Проверьте написание Api-Key-токена. Если ошибка сохраняется, получите новый токен. Как это сделать |
Api-Key token length invalid |
Неправильная длина Api-Key-токена. |
Проверьте написание Api-Key-токена. Если ошибка сохраняется, получите новый токен. Как это сделать |
Api-Key token prefix invalid |
Неправильный префикс Api-Key-токена. |
Убедитесь, что в заголовке вы не используете префикс Если префикса нет, проверьте написание Api-Key-токена. Если ошибка сохраняется, получите новый токен. Как это сделать |
Authorization header has invalid syntax |
Формат HTTP-заголовка |
Сделайте заголовок по инструкции. |
Credentials are not specified |
В запросе не указаны авторизационные данные. |
Сделайте заголовок по инструкции: |
OAuth credentials are not specified |
В запросе не указаны авторизационные данные. |
Сделайте заголовок |
OAuth token is not specified |
В запросе не указан авторизационный OAuth-токен. |
Сделайте заголовок |
Unsupported authorization type specified in Authorization header |
Тип авторизации, переданный в HTTP-заголовке |
Сделайте заголовок по инструкции. |
Ошибки 403 Forbidden
Описание |
Перевод |
Что делать |
Access denied |
Доступ запрещен. |
Проверьте правильность указания ресурса, а также наличие прав доступа к нему у пользователя, чей авторизационный токен используется в запросе. Подробно о доступе |
Access to API denied for the client / campaign |
Доступ к партнерскому API для клиента или магазина запрещен. |
Обратитесь к своему агентству для предоставления доступа к API. |
Scope is invalid |
OAuth-токен получен через приложение без доступа к Маркету. |
Получите новый токен. Как это сделать |
Token does not have any of the scopes to access the API method |
Нет доступа к методу. |
Получите доступ хотя бы к одной группе методов, которые перечислены в тексте ошибки. Как это сделать |
OAuth token is invalid |
Указанный авторизационный OAuth-токен недействителен. |
Получите новый токен. Как это сделать |
OAuth token is invalid (account has been globally logged out) |
Пользователь воспользовался функцией «Выйти везде» в Яндекс ID. |
Получите новый токен. Как это сделать |
User account is disabled |
Учетная запись пользователя, для которого выдан указанный авторизационный токен, заблокирована. |
Обратитесь в службу поддержки. |
Contact not found for login 'login' and campaignId 'campaignId' |
Не найдена учетная запись пользователя, логин которой передан для подписи электронного акта приема-передачи. |
Выберите логин пользователя, который привязан к кабинету или магазину. |
The method is not supported for Market Yandex Go sellers |
Метод недоступен для продавцов Market Yandex Go. Эти ограничения указаны в описании к методам. |
— |
Contacts with available roles for signing not found for login 'login' |
Учетная запись пользователя, логин которой передан для подписи электронного акта приема-передачи, не обладает необходимыми доступами. |
Передайте логин пользователя, который привязан к кабинету или магазину и обладает необходимыми доступами. Доступы к методам по Api-Key |
Ошибки 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 в рамках одного магазина или партнера до |
Hit rate limit of 'N' requests per 'period' for resource 'R' |
Превышено ресурсное ограничение на количество |
Время, до которого действует ограничение, указано в заголовке |
Ошибки 423 Locked
Описание |
Перевод |
Что делать |
Campaign is in business migration |
Магазин находится в процессе переноса в другой кабинет. |
Дождитесь окончания переноса. |
Business is in migration |
В кабинете происходят миграции магазинов. |
Дождитесь окончания переноса. |
Partner use only default price |
В кабинете используются цены для всех магазинов. |
Установить цену для отдельного магазина не получится. Задавайте единые цены для всех магазинов кабинета. |
Ошибки 503 Service Unavailable
Описание |
Перевод |
Что делать |
Service temporarily unavailable. Please, try again later |
Сервер временно недоступен из-за высокой загрузки. |
Попробуйте повторить запрос через некоторое время. |
Пример сообщения об ошибке
Запрос:
GET /campaigns/10003/orders HTTP/1.1
Host: api.partner.market.yandex.ru
Accept: */*
Api-Key: ACMA:I4c4CxCSYaI41RSC2uYWP2qj3Rhhm4knMiBEga5K:151c0664a
Ответ:
{
"errors": [
{
"code": "UNAUTHORIZED",
"message": "Api-Key token is invalid"
}
],
"status": "ERROR"
}