Перейти к содержимому

Коды ошибок

На этой странице перечислены основные коды ошибок, которые возвращает API MoreLogin.


Формат ответа

Все ответы API имеют следующий стандартный вид:

{
  "code": 0,
  "msg": null,
  "data": {},
  "requestId": "unique-request-id"
}
ПолеТипОписание
codeinteger0 = успех, >0 = ошибка
msgstringСообщение об ошибке (null при успехе)
dataobjectДанные ответа
requestIdstringУникальный идентификатор запроса для диагностики

Как по коду определить область

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

ДиапазонОбласть
14xxxПрокси
15xxxГруппы и метки
19xxxПрофили браузера
20xxxКошелёк, заказы и тарификация
21001Слишком старая версия клиента
33xxxОблачный телефон
35xxxАутентификация API и ограничение частоты
39xxxОблачное хранилище
40xxxСреды выполнения облачного браузера
41xxxНастройка вебхуков
99xxxШлюз и проверка запроса

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


Общие коды ошибок

Могут вернуться из любой операции, поскольку исходят из проверки запроса, проверки прав и шлюза, а не из бизнес-логики.

КодОписаниеЧто делать
0Успех
21001Слишком старая версия клиентаОбновите десктопный клиент MoreLogin
35000Слишком частые запросы к APIПовторяйте подходящие операции с отступом и дрожанием; см. Ограничение частоты
99000Неизвестная системная ошибкаПовторите позже и сообщите requestId в поддержку
99001Недопустимые параметры запросаПроверьте формат тела запроса и обязательные поля
99002Нет прав на операциюПроверьте права своей учётной записи
99003Исключение в запросеВнесите нужную бизнес-правку согласно msg
99004Тело запроса слишком большоеУменьшите тело запроса
99005Такой запрос уже выполняетсяДождитесь завершения текущего запроса и повторите
99006Некорректный запросПроверьте HTTP-метод, заголовки и тело
99007IP запроса не в списке разрешённыхДобавьте IP вызывающей стороны в список разрешённых
99008Превышена квота запросов для IP или устройстваСнизьте количество запросов с этого IP или устройства
99009Слишком много запросовОтступите с дрожанием и повторите
99011Метка времени запроса истеклаОтправьте заново с текущей меткой времени
99012Требуется право на расходыИспользуйте аккаунт владельца команды или выдайте право на расходы

Облачный телефон (33xxx)

КодОписаниеЧто делать
20002The original monthly order was cancelledCreate a new monthly purchase for eligible Cloud Phones
20003The original monthly order was refundedCreate a new monthly purchase for eligible Cloud Phones
20004The original monthly order does not existVerify the Cloud Phone purchase state and contact support with requestId if it persists
20008The original monthly order is not completed or its status cannot be confirmedCheck the order and Cloud Phone state before retrying
20055A Cloud Phone does not exist, was deleted, or does not belong to the teamVerify every Cloud Phone ID and team ownership
20068A pending monthly payment order already existsComplete or cancel the pending order before using the activation API
20070A concurrent Cloud Phone purchase is already in progressWait for the in-flight purchase to settle, then read state before retrying
20071A selected monthly SKU is unavailable or has no active 30-day priceQuery the monthly SKU endpoint again and choose an available product
33420Paid and unpaid Cloud Phones cannot be activated in the same batchSeparate Cloud Phones by purchase state and submit compatible batches
33421Paid Cloud Phones from different purchase orders cannot be mixedSubmit one activation batch per original purchase order
33422Payment succeeded but activation is incomplete or cannot yet be confirmedInspect data.results and each Cloud Phone's expiry state; do not pay again blindly
33300Облачный телефон не существуетПроверьте ID облачного телефона и что он принадлежит вашей команде
33301Облачный телефон не включёнВключите его и дождитесь работоспособного состояния
33308Используется другим участником, выключить нельзяПовторите, когда другой участник освободит его
33309Используется другим участником, подключиться нельзяПовторите, когда другой участник освободит его
33315Задолженность на счёте, облачный телефон замороженПополните кошелёк
33316Недостаточно доступных профилейОбновите тариф
33317Право на профиль было отозваноПопросите администратора выдать доступ
33318Недостаточно средств для запускаПополните кошелёк
33321Профиль недоступенПеред повтором проверьте состояние профиля
33322Идёт проверка проксиОпрашивайте, пока проверка не завершится
33323Профиль запускаетсяДождитесь окончания запуска, повторно не отправляйте
33324Профиль уже запущенНичего делать не нужно
33325Профиль деактивированАктивируйте его перед использованием
33331Идёт смена устройства в один клик, выключить нельзяДождитесь завершения
33332Идёт перезагрузка, выключить нельзяДождитесь завершения
33333Идёт сброс, выключить нельзяДождитесь завершения
3333833345Страна, часовой пояс, язык, долгота или широта отсутствуют либо недопустимыСм. таблицу стран и часовых поясов
33346SKU снят с продажиВыберите другой skuId
33347Модель требует последнюю версию клиента для WindowsОбновите десктопный клиент MoreLogin
33367Идёт обслуживание, включить нельзяСроки восстановления смотрите в системных уведомлениях
33376Месячная тарификация истеклаПродлите подписку
3339833400Долгота, широта или высота вне диапазонаДолгота −180…180, широта −90…90, высота −50000…100000
33401Облачный телефон не поддерживает эту операциюИспользуйте поддерживаемую модель
33407Превышена квота пакета параллельных запусковДождитесь свободного слота или увеличьте квоту
33408Недопустимый формат номера телефонаНачните с +, код страны 1–3 цифры без 86, всего 8–14 цифр
33418Файл для трансляции не существует либо недопустимЗагрузите с uploadType=2 и используйте возвращённый fileId
33419Формат файла для трансляции не поддерживаетсяЗагрузите MP4 через /cloudphone/uploadFile
33005Не удалось установить приложениеПовторите и проверьте свободное место на устройстве
33014Слишком частые операцииОтступите и повторите
33714Приложение не существует или снято с публикацииОбновите библиотеку приложений
33814Шаблон RPA не существуетЗапросите список шаблонов заново и используйте актуальный templateId
33818Недопустимый формат параметра шаблона RPAПередавайте templateParameter как экранированную JSON-строку
33303Не удалось создать облачный телефонПеред повтором запросите /cloudphone/page; не отправляйте слепо
33320Прокси, привязанный к этому облачному телефону, удалёнПривяжите прокси заново через /cloudphone/setProxy
33326Используется другим участником, заменить устройство нельзяПовторите, когда другой участник освободит его
33350На части облачных телефонов не удалось включить ADBЭти телефоны не запущены либо не поддерживают ADB; перечитайте состояние и повторите только для них
33507Файл на устройстве не существуетПроверьте путь; запрос на скачивание сначала обходит родительский каталог

Операции установки и управления питанием могут дополнительно вернуть код, сопоставленный Сервисом, из диапазонов 3300133033, 3350033520, 3370033724 или 3390033910. Какой из них достижим, зависит от Сервиса, обслуживающего устройство, поэтому в операциях они не перечисляются по отдельности.

Профили браузера (19xxx)

КодОписаниеЧто делать
19001Профиль с таким именем уже существуетВыберите уникальное имя или опустите envName, чтобы имя сгенерировалось
19002Создание профиля не удалось на стороне сервисаПеред повтором подтвердите через /env/page
19004Недопустимый формат user agentПередайте разбираемый advancedSetting.ua
19005Недопустимый формат cookieПередавайте cookies как экранированную строку JSON-массива
19039Профиль не найденПроверьте envId / uniqueId и что профиль принадлежит вашей команде
19063Достигнут лимит количества профилейУдалите профили или обновите тариф
19064Нет прав на эту группуПопросите администратора выдать доступ к группе
19065Нет прав на этот профильПопросите администратора выдать доступ к профилю
19099Недостаточно доступных профилей, использование ограниченоОбновите тариф
19100Недопустимый ID платформыИспользуйте platformId из /system/platform/list
19101Недопустимый ID сайтаИспользуйте siteId из /system/platform/list
19102URL пользовательской платформы не может быть пустымПередавайте platformUrl, когда platformId равен 9999
19103Недопустимый формат URL автозапускаПередавайте корректные абсолютные URL в afterStartupConfig
19104Недопустимый ID группыИспользуйте группу, существующую в вашей команде
19105Недопустимый ID меткиИспользуйте метки, существующие в вашей команде
19106Недопустимый ID проксиИспользуйте прокси, существующий в вашей команде, либо опустите proxyId
19107Недопустимая версия ядра браузераВыберите версию из /env/advanced/ua/versions
19108Недопустимая версия user agentВыберите версию из /env/advanced/ua/versions
19109Версия user agent не совпадает с самим user agentСогласуйте uaVersion с advancedSetting.ua либо передайте только одно из них
19110Недопустимый формат пользовательского URLПередайте корректный абсолютный URL
19111Firefox поддерживает только Windows и macOSВыберите Windows или macOS либо перейдите на Chrome
19112Ключ шифрования не задан, включить шифрование профиля нельзяНастройте ключ шифрования команды либо передайте isEncrypt=0
19141Не более 100 символов, только цифры, буквы и пробелыСократите accountInfo.otpSecret и уберите прочие символы
19142Профили со сквозным шифрованием изменить нельзяДля зашифрованных профилей используйте клиент MoreLogin
19143Версия клиента слишком старая для этого ядраОбновите десктопный клиент MoreLogin
19147Превышен суточный лимит созданияОбновите тариф, чтобы поднять лимит
19149Не выбран тип кешаУкажите хотя бы один класс кеша для очистки
19159Операционная система не совпадает с расширенными настройкамиПри обновлении ОС менять нельзя; оставьте advancedSetting.os как сохранено
19160Тип браузера не совпадает с расширенными настройкамиПри обновлении браузер менять нельзя; оставьте advancedSetting.vendor как сохранено
19175Координаты вне зоны обслуживанияВыберите координаты в пределах поддерживаемой зоны
19193Владелец общего доступа запретил редактирование этого профиляПопросите владельца разрешить редактирование

Облачное хранилище (39xxx)

КодОписаниеЧто делать
39001Информация об облачном хранилище не найденаПроверьте, что облачное хранилище выделено команде
39011Файл не найденПроверьте ID файла
39014URL доступа к файлу пустЗарегистрируйте загрузку заново
39037Недопустимый параметр расширения файлаПередайте поддерживаемое расширение
39041Достигнута квота хранилищаУдалите файлы, чтобы освободить место
39044Дублирующееся имя файлаПереименуйте файл
39045Слишком много неподтверждённых предподписанных загрузокСначала завершите или отмените неподтверждённые загрузки
39046Файл не был загружен успешноЗагрузите файл на предподписанный URL до вызова complete
39047Срок облачного хранилища истёкПродлите облачное хранилище
39048Метка облачного хранилища не найденаИспользуйте метку из /cloudstorage/tag/all
39049ID меток не могут быть пустымиПередайте хотя бы одну метку; пустой список отклоняется
39050Имя файла длиннее 60 символовСократите имя
39051Размер файла должен быть больше 0 Б и меньше 2 ГБРазделите или сожмите файл

Прокси (14xxx) и кошелёк (20xxx)

КодОписаниеЧто делать
14003Не удалось обновить прокси либо прокси не существуетПроверьте ID прокси
14017Прокси нельзя удалитьНеистёкший прокси облачной платформы удалить нельзя; дождитесь истечения срока
14023Тип прокси не существуетИспользуйте поддерживаемое значение сервиса
14024Прокси не существуетПроверьте ID прокси
14519Динамические прокси изменить нельзяУправляйте динамическими прокси вне эндпоинтов прокси
20018Не удалось получить цену товараПовторите позже и сообщите requestId в поддержку
20029Счёт кошелька недоступенПроверьте кошелёк команды
20032Не удалось запросить балансПовторите позже и сообщите requestId в поддержку
20041Недостаточно средствПополните кошелёк

Среды выполнения облачного браузера (40xxx)

Возвращаются эндпоинтами /cloudbrowser/start, /cloudbrowser/stop и /cloudbrowser/connect. Коды, возникающие после отправки запроса на запуск, проявляются в /cloudbrowser/page, а не в ответе на запуск.

КодОписаниеЧто делать
40001Облачный браузер уже запущенНичего делать не нужно; подключитесь к существующему запуску
40002В текущем состоянии облачный браузер остановить нельзяПеречитайте /cloudbrowser/page и повторите
40003Проверка прокси не удаласьУбедитесь, что привязанный прокси достижим
40006Операция облачного браузера не удаласьПовторите; если не удалась архивация, смотрите cloudBrowserArchiveStatus
40008Запущенный облачный браузер не найденСначала запустите его либо перечитайте /cloudbrowser/page
40009Нельзя подключиться к запуску другого участникаПопросите этого участника освободить его
40010Не удалось подключиться к облачному браузеруПовторите; токен доступа к рабочему столу не был выпущен
40015К профилю не привязан проксиСначала привяжите прокси через /env/setProxy/batch
40016Не удалось отправить запрос на запускПовторите
40020Облачный браузер останавливаетсяДождитесь завершения остановки
40021Облачный браузер уже запускаетсяНе отправляйте повторно; опрашивайте /cloudbrowser/page
40023Профиль используетсяСначала закройте другую сессию
40024Облачный браузер не запустился вовремяЗапустите его снова
40025Привязанный прокси больше не существуетПривяжите прокси заново
40026Привязанный прокси истёкПродлите или замените прокси
40027Привязанный прокси ещё выделяетсяПовторите после завершения выделения
40028Локальные прокси не поддерживаютсяИспользуйте нелокальный прокси
40029Этот тип прокси не поддерживаетсяИспользуйте поддерживаемый тип прокси
40037Профили со сквозным шифрованием не могут использовать облачный браузерИспользуйте незашифрованный профиль

Вебхуки (41xxx)

Возвращаются эндпоинтами настройки вебхуков, когда URL обратного вызова отклонён.

КодОписаниеЧто делать
41001URL обратного вызова должен быть корректным HTTPS-адресомПередайте HTTPS-URL длиной не более 1024 символов, без данных пользователя и фрагмента, с корректным портом, и убедитесь, что все адреса, в которые он разрешается, маршрутизируются в интернете

Аутентификация API (35xxx) и команды (12xxx)

КодОписаниеЧто делать
12002Команда не существуетКоманда участника была удалена; обратитесь в поддержку
35002Аутентификация API не удаласьПроверьте client_id (API ID) и client_secret (API-ключ)
35005У запроса нет прав на операциюУчастник отключён либо IP вызывающей стороны не проходит списки разрешённых и запрещённых IP Open API

Коды состояния HTTP

СтатусОписание
200Запрос обработан (бизнес-результат смотрите в поле code)
401Не авторизовано — токен доступа недействителен или истёк
403Запрещено — недостаточно прав
429Слишком много запросов — превышен лимит частоты
500Внутренняя ошибка сервера — обратитесь в поддержку

Текущий шлюз приложения обозначает собственный отказ по лимиту частоты бизнес-кодом 35000 и не выставляет HTTP 429 явно. Пограничный прокси или будущая версия шлюза всё же может вернуть 429, поэтому клиентам следует обрабатывать оба варианта.


Семантика повторов и восстановления

Категория сбояПовторять?Требуемое поведение клиента
Ошибка валидации, прав, баланса или неподдерживаемой возможностиНетИсправьте запрос, права, баланс или выбранный ресурс, и только затем повторяйте
Ограничение частоты (35000)Да, с условиямиОтступайте с дрожанием; проверяйте code в теле, даже когда HTTP-статус равен 200
Временный сбой сервера или СервисаДа, с условиямиЧтение повторять можно; для записи сначала запросите состояние ресурса или задачи
Асинхронная операция принятаНе отправляйте повторно сразуОпрашивайте документированный эндпоинт состояния до успеха, ошибки или таймаута
Результат неизвестен после сетевого таймаутаСначала проверьте состояниеНе повторяйте слепо создание, покупку, регистрацию загрузки или создание расписания

В публичном API сейчас нет общего заголовка ключа идемпотентности. Поэтому запросы состояния для конкретного эндпоинта — часть безопасного восстановления для запросов, меняющих состояние.

Для асинхронных операций ответ с code: 0 может означать «принято», а не «завершено». Ориентируйтесь на документацию операции: её поле состояния и конечные состояния.

Полный список операций см. в матрице повторов и завершения эндпоинтов, а порядок опроса и конечные состояния — в Асинхронных операциях.


Совет: обращаясь в поддержку, всегда указывайте requestId из ответа — это ускорит разбор.