Ошибки
Все коды ошибок API: errorId, errorCode, что они значат и что делать.
Любой ответ — HTTP 200 с errorId. 0 — успех; иначе в ответе есть errorCode и понятное человеку errorDescription:
{
"errorId": 1,
"errorCode": "ERROR_KEY_DOES_NOT_EXIST",
"errorDescription": "Account authorization key not found in the system."
}- Проверяйте
errorId != 0, а не HTTP-статус. - Ветвите логику по
errorCode;errorDescription— для людей и может меняться. - Id 1–55 совпадают с реестром Anti-Captcha, id от 90 — коды этого сервиса. Неизвестный сбой —
ERROR_INTERNAL(90), но никогда неerrorId: 0. - Неудачная задача не списывается. Имена кодов в протоколе 2Captcha — в разделе Совместимость с 2Captcha.
Все коды#
- Что значит
clientKeyотсутствует, повреждён, отозван или неизвестен.- Что делать
- Скопируйте ключ заново в Кабинете → API-ключи; проверьте, нет ли пробелов и переносов строк и не ключ ли это другого сервиса.
- Что значит
- У ключа уже максимум задач в работе (по умолчанию 200).
- Что делать
- Дождитесь завершения части задач и повторите через 1–2 секунды или поднимите лимит параллельности ключа в кабинете.
- Что значит
- Доступный баланс меньше цены задачи. Деньги, зарезервированные под задачи в работе, недоступны.
- Что делать
- Пополните баланс. Test-ключам баланс не нужен.
- Что значит
- Запрос пришёл с IP-адреса, которого нет в списке разрешённых для ключа.
- Что делать
- Добавьте адрес или сеть в список разрешённых IP ключа или очистите список.
- Что значит
- Задачу не удалось решить за все попытки. Зарезервированные деньги возвращены — задача бесплатна.
- Что делать
- Создайте новую задачу. Если повторяется, проверьте
websiteURL,websiteKey,isInvisible/pageActionи прокси.
- Что значит
- Неизвестный метод, неверный HTTP-метод или тело — не валидный JSON (например,
taskIdпередан строкой). - Что делать
- Отправляйте
POSTс JSON-телом на описанный метод.
- Что значит
- Задачи с таким id нет в вашем аккаунте или её результат истёк (10 минут после решения). Этот же код получают отчёты о нерешённых задачах.
- Что делать
- Проверьте
taskIdи ключ — задачи видны аккаунту, который их создал. Забирайте результат вскоре после готовности или используйте вебхуки.
- Что значит
- Запросы с этого IP-адреса заблокированы из-за злоупотреблений.
- Что делать
- Напишите в поддержку, указав email аккаунта и IP-адрес.
- Что значит
- Нет
taskили он неверен: пустое обязательное поле, значение вне диапазона,callbackUrl— не публичный http(s)-адрес или тело больше 1 МиБ. Поле названо вerrorDescription. - Что делать
- Исправьте поле из
errorDescriptionи отправьте задачу снова.
- Что значит
- Неизвестный или выключенный тип задачи.
- Что делать
- Берите тип из getTaskTypes. Имена чувствительны к регистру:
RecaptchaV2TaskProxyless, а неReCaptchaV2TaskProxyLess.
- Что значит
- Прокси отклонил соединение.
- Что делать
- Проверьте адрес, порт и тип прокси и то, что он принимает подключения из интернета.
- Что значит
- Истёк таймаут подключения к прокси.
- Что делать
- Проверьте, что прокси работает; возьмите более быстрый.
- Что значит
- Прокси принял соединение, но не ответил вовремя.
- Что делать
- Возьмите более стабильный прокси.
- Что значит
- IP прокси заблокирован Google или сайтом.
- Что делать
- Смените прокси, лучше на резидентный или мобильный.
- Что значит
- Задача не решена вовремя: ни один воркер не взял её за 180 секунд или закончились попытки. Не списывается.
- Что делать
- Создайте новую задачу. Если повторяется, загляните на страницу статуса и проверьте прокси.
- Что значит
- Google отклонил ключ сайта.
- Что делать
- Возьмите
websiteKeyсо страницы заново (data-sitekeyили параметрk); не путайте ключи v2, v3 и Enterprise.
- Что значит
- Ключ сайта не действует для домена из
websiteURL. - Что делать
- Передавайте адрес страницы, на которой виджет действительно показан.
- Что значит
- Сайт считает браузер устаревшим.
- Что делать
- Передайте актуальный десктопный
userAgent.
- Что значит
- Прокси не загружает изображения (код для совместимости).
- Что делать
- Используйте другой прокси.
- Что значит
- Неверный логин или пароль прокси.
- Что делать
- Проверьте
proxyLoginиproxyPassword.
- Что значит
- Тип виджета не совпадает с
isInvisible: невидимая reCAPTCHA отправлена как видимая или наоборот. - Что делать
- Укажите
isInvisibleв соответствии с виджетом на странице.
- Что значит
- Аккаунт заблокирован.
- Что делать
- Напишите в поддержку.
- Что значит
- Временный сбой на нашей стороне. С этим id приходит и любая неизвестная ошибка — но никогда не
errorId: 0. - Что делать
- Повторите с растущей паузой (1, 2, 4… секунды). Если не проходит, загляните на страницу статуса.
- Что значит
- Превышен лимит: больше 30
createTaskили 50getTaskResultв секунду на ключ либо больше 100 запросов в секунду с одного IP. - Что делать
- Снизьте частоту и повторите с паузой; опрашивайте каждую задачу раз в 2–3 секунды.
- Что значит
- Достигнут суточный или месячный лимит трат ключа.
- Что делать
- Поднимите или снимите лимит в настройках ключа либо дождитесь следующих суток или месяца.