# Все статусы, которые может вернуть шлюз, и способы устранения ошибок.

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


## Ответы шлюза

| Статус | Причина в теле ответа | Причина ошибки | Решение |
| --- | --- | --- | --- |
| 407 Proxy Authentication Required | invalid_credentials | Неверное имя пользователя или пароль либо IP подключения не внесён в белый список, а учётные данные не переданы | Снова скопируйте пару из панели управления; сверьте белый список с результатом команды `curl https://api.ipify.org`, запущенной без прокси |
| 400 Bad Request | invalid_parameter: … | Параметр имени пользователя неизвестен или имеет неверный формат либо сочетание параметров недопустимо (`-state-` за пределами США, `-city-` без `-cc-`) | Исправьте строку, указанную в теле ответа; см. [Таргетинг и сессии](https://hodlproxy.com/ru/docs/username-parameters) |
| 402 Payment Required | insufficient_balance | Для используемой сети пула не осталось трафика либо дополнительный пользователь исчерпал свой лимит | Купите трафик или увеличьте лимит дополнительного пользователя; проверьте [`GET /v1/balance`](https://hodlproxy.com/ru/docs/api#get-v1-balance) |
| 403 Forbidden | blocked_destination | Целевой адрес или порт запрещён (порт 25 либо адрес из нашего списка запрещённых) или учётная запись приостановлена | Прочитайте описание причины; свяжитесь с нами, если считаете, что адрес попал в список по ошибке |
| 502 Bad Gateway | no_exit_available / exit_failed | Нет подключённого устройства, соответствующего параметрам, либо выбранное устройство отключилось во время запроса | Повторите запрос один раз (при ротации уже будет выбран другой выходной узел); если ошибка повторяется, расширьте параметры таргетинга |
| 504 Gateway Timeout | target_timeout | Целевой сервер не ответил через выходной узел за отведённое время | Повторите запрос с новым IP; увеличьте тайм-аут клиента, если целевой сервер обычно отвечает медленно |

> Info: Шлюз никогда не возвращает `429`. На нашей стороне для вас нет ограничения частоты запросов; ответ `429` всегда приходит от целевого сайта и означает, что запросы к этому домену нужно отправлять реже или распределить между большим числом сессий.


## Ошибка шлюза или целевого сервера?

Ошибка шлюза возникает до получения хотя бы одного байта от целевого сервера: при HTTPS-запросе это ответ на `CONNECT`, который большинство клиентов показывает как ошибку подключения или прокси, а не как HTTP-ответ. Ошибка целевого сервера приходит внутри туннеля с его собственными заголовками и телом ответа. `curl -v` сразу показывает разницу: посмотрите, какой ответ следует после `CONNECT`.


## Контрольный список диагностики

1. Выполните самый простой запрос без параметров: `curl -x http://USER:PASS@res.hodlproxy.com:9000 https://api.ipify.org`. Если он работает, проблема в параметре или вашем клиенте.
2. Проверьте схему прокси: URL прокси начинается с `http://` (или `socks5h://` для порта 9001), но никогда с `https://`, даже если целевой сайт использует HTTPS.
3. Возвращайте параметры по одному. Ответ `400` указывает неверный параметр; `502` при узком сочетании параметров означает, что сейчас в указанном месте нет подключённых устройств.
4. При использовании белого списка сравните адрес в разделе **Настройки → Белый список** с результатом команды `curl https://api.ipify.org`, запущенной на том же компьютере **без** прокси. Облачные серверы часто выходят в интернет через NAT-шлюз с другим адресом.
5. Проверьте баланс именно той сети, которую используете: трафик резидентских и мобильных прокси учитывается раздельно.
6. Проверьте переменные окружения (`HTTP_PROXY`, `HTTPS_PROXY`, `ALL_PROXY`, `NO_PROXY`), которые могут переопределять параметры, переданные в коде.
7. Если сертификат TLS не проходит проверку, значит, TLS-трафик перехватывает система между вами и шлюзом (корпоративный прокси или антивирус). Шлюз никогда не изменяет сертификаты.


## Симптомы и их обычные причины

| Что вы видите | Что это обычно означает | Что делать |
| --- | --- | --- |
| `curl: (56) Received HTTP code 407 from proxy after CONNECT` | Учётные данные отклонены | Скопируйте их заново; если вы задали собственный пароль, закодируйте специальные символы в процентах |
| Один и тот же IP при каждом запросе | Клиент повторно использует одно keep-alive-соединение либо в имени пользователя остался `-sid-` | Закрывайте соединение между запросами или удалите идентификатор сессии |
| Разный IP при каждом запросе, хотя задан `-sid-` | Время жизни меньше интервала между запросами либо идентификатор меняется при каждом запросе (например, в шаблоне используется случайное значение) | Зафиксируйте идентификатор и увеличьте `-ttl-` |
| `Connection reset by peer` во время загрузки | Домашнее устройство отключилось от сети | Повторите запрос; при ротации уже будет использован другой выходной узел, а в закреплённой сессии следующий запрос получит новый IP |
| В curl работает, а в браузере — нет | В браузере не задан пароль прокси либо флаг игнорирует учётные данные | Используйте аутентификацию Playwright или Puppeteer либо [белый список](https://hodlproxy.com/ru/docs/authentication#ip-whitelist) |
| Целевой сайт отвечает кодом 403 или показывает CAPTCHA | Целевой сайт оценивает посещение, а не сам прокси | Перейдите на резидентские или мобильные прокси, добавьте закреплённую сессию для многоэтапных сценариев, согласуйте заголовки со страной выходного узла и ограничьте частоту запросов к каждому домену |
| Всё работает медленно | Выходной узел расположен далеко или домашнее устройство подключено по медленной линии | Выберите ближайшую к целевому сайту страну, используйте короткие сессии, чтобы следующая попала на более быстрый канал, либо выберите серверные или ISP-прокси ради максимальной скорости |
| `SSL certificate problem` | Перехват TLS на вашей стороне | Отключите перехват или добавьте его корневой сертификат в доверенные; шлюз здесь ни при чём |


## Проблема не решена?

Отправьте нам точный запрос (удалив учётные данные), метку времени в UTC, полученные статус и тело ответа, а также IP выходного узла, если запрос прошёл. На [странице контактов](https://hodlproxy.com/ru/contact) указано, как связаться с командой; владельцы учётных записей могут открыть обращение из панели управления.


Источник: https://hodlproxy.com/ru/docs/errors
