Содержание
Документация API
Управляйте прокси по HTTP: смена IP, перезапуск линии, чтение SMS, выбор отпечатка ОС. Маршруты, ответы, лимиты и примеры.
update Обновлено
Быстрый старт
API работает с одним прокси за раз: с тем, чьи логин и пароль вы передаёте.
- Базовый адрес:
https://frproxy.com - Аутентификация: Basic Auth, с логином и паролем прокси, а не вашего аккаунта. Они
указаны в разделе
Мои прокси. - Ответы: JSON.
Первый запрос, который меняет IP прокси:
curl -X POST -u "USER:PASS" https://frproxy.com/api/v1/rotate
Замените USER и PASS на учётные данные вашего прокси.
Маршруты
| Метод | Маршрут | Назначение |
|---|---|---|
GET или POST |
/api/v1/rotate |
Сменить IP прокси |
GET или POST |
/apix/<port>/<token> |
Сменить IP по короткой ссылке, без учётных данных |
POST |
/api/v1/reboot |
Перезапустить линию |
GET |
/api/v1/sms |
Прочитать полученные SMS |
POST |
/api/v1/spoof |
Выбрать отпечаток ОС |
GET или POST |
/api/v1/wg-rotate |
Сменить IP туннеля WireGuard |
Аутентификация
Каждый запрос передаёт логин и пароль прокси через Basic Auth. В curl для этого служит опция
-u, в Python-библиотеке requests параметр auth.
curl -u "USER:PASS" https://frproxy.com/api/v1/sms
- Смена пароля прокси в разделе
Мои проксисразу меняет и пароль API. - Истёкшим прокси управлять нельзя: API отвечает
403. - Учётные данные можно указать и в адресе:
https://USER:PASS@frproxy.com/api/v1/rotate. Некоторые браузеры и инструменты не принимают такую форму; короткой ссылке, описанной ниже, она не нужна.
Смена IP
GET или POST /api/v1/rotate
Мобильная линия прокси переподключается к сети и получает от оператора новый IP. Ответ приходит сразу, а ротация продолжается в фоне: обычно около десяти секунд. В это время прокси не отвечает, а открытые соединения разрываются.
curl -X POST -u "USER:PASS" https://frproxy.com/api/v1/rotate
Ответ:
{
"success": true,
"status": "rotation started — 轮换已启动 — ротация запущена",
"wait_sec": 30,
"retry_after": 30
}
| Поле | Значение |
|---|---|
success |
true: ротация запущена. |
status |
Информационное сообщение на английском, китайском и русском. Не опирайтесь на него в скрипте. |
wait_sec |
Сколько секунд подождать, прежде чем пользоваться новым IP. |
retry_after |
Сколько секунд подождать, прежде чем запрашивать новую ротацию. |
GET принимается, чтобы хватало простой ссылки: ротацию может запустить браузер, закладка или
инструмент. Нового IP в ответе нет; чтобы его узнать, см. ниже «Проверка нового IP».
Прокси тарифа «Базовый»
Прокси тарифа «Базовый» делит линию с другими прокси. Тот же маршрут выдаёт новый IP только этому прокси, не затрагивая ни линию, ни соседей. Ответ ждёт, пока IP будет готов, и сообщает его:
{
"success": true,
"status": "new ip assigned — 已分配新 IP — назначен новый IP",
"ip": "203.0.113.42",
"wait_sec": 0,
"retry_after": 86400
}
- Один новый IP на прокси раз в 24 ч. До этого срока API отвечает
429и сообщает оставшееся время. - Если выдача занимает больше 55 с, ответ будет
202соstatus«new ip in progress»: IP появится чуть позже. - У прокси тарифа «Базовый» нет короткой ссылки в разделе
Мои прокси: используйте этот маршрут.
Короткая ссылка
GET или POST /apix/<port>/<token>
Та же смена IP, но без логина и пароля в адресе. Ссылку можно вставить как есть в браузер, закладку или инструмент.
curl https://frproxy.com/apix/15002/a1b2c3d4e5f6
- Ссылка каждого прокси находится в разделе
Мои прокси, за меткой «СМЕНА IP», а также на странице API вашего аккаунта. - Тот же ответ и те же лимиты, что у
/api/v1/rotate. - Токен позволяет только сменить IP этого прокси: он не даёт доступа ни к самому прокси, ни к вашему аккаунту. И всё же храните его при себе: его владелец может сменить ваш IP в любой момент.
- Он не меняется, когда вы меняете пароль прокси.
Проверка нового IP
Ротация не возвращает полученный IP, кроме прокси тарифа «Базовый». Чтобы его узнать, обратитесь к сервису определения IP через сам прокси:
curl -x http://USER:PASS@frproxy.com:15002 https://api64.ipify.org
Замените 15002 на HTTP-порт вашего прокси. Команда выводит адрес, который видят сайты, в IPv4 или
IPv6 в зависимости от линии. Другие способы описаны в статье
Проверка прокси.
Перезапуск линии
POST /api/v1/reboot
Перезапускает устройство, на котором работает линия прокси: модем или телефон. Это средство на случай, когда прокси перестал отвечать. Чтобы сменить IP, достаточно ротации, и связь прерывается на меньшее время.
curl -X POST -u "USER:PASS" https://frproxy.com/api/v1/reboot
Ответ, когда устройство получило команду:
{
"status": "ok"
}
Если команда проходит дольше 40 с, API отвечает 202, не дожидаясь конца, а
перезапуск завершается сам:
{
"status": "pending",
"message": "The restart is under way and continues on the device (up to 2 minutes for a phone)."
}
- Линия возвращается обычно через одну-две минуты. Если она не вернулась, подождите 10 мин, прежде чем повторять: перезапуски подряд не ускоряют её возвращение.
- Недоступно для прокси тарифа «Базовый» (
403): линия общая, и её перезапуск отключил бы остальные прокси. - Интервалы между перезапусками и ротациями описаны ниже, в разделе «Лимиты».
Чтение SMS
GET /api/v1/sms
Возвращает SMS, полученные на SIM-карту прокси с момента, когда прокси был закреплён за вами. Сообщения, пришедшие раньше, не возвращаются.
curl -u "USER:PASS" https://frproxy.com/api/v1/sms
Ответ:
[
{
"Index": "3",
"Phone": "+33612345678",
"Content": "Your verification code is 481920",
"Date": "2026-10-27 14:05:12"
}
]
| Поле | Значение |
|---|---|
Index |
Номер сообщения на SIM-карте. |
Phone |
Отправитель: номер или короткое имя, например «Orange». |
Content |
Текст сообщения. |
Date |
Дата получения в формате ГГГГ-ММ-ДД ЧЧ:ММ:СС, по парижскому времени. |
- Названия полей начинаются с заглавной буквы.
- Если опция SMS на вашем прокси не включена, список пуст:
[].
Выбор отпечатка ОС
POST /api/v1/spoof?os=<value>
Приближает TCP/IP-отпечаток соединений (TTL, окно и опции TCP) к отпечатку системы, которую объявляет ваш браузер. HTTP-заголовки не изменяются. Принцип описан в статье TCP-подмена ОС.
curl -X POST -u "USER:PASS" "https://frproxy.com/api/v1/spoof?os=windows"
Ответ:
{
"status": "ok",
"os": "windows"
}
Значение os |
Отпечаток |
|---|---|
windows |
Windows |
macos |
macOS |
linux |
Linux |
android |
Android |
ios |
iOS |
пусто (os=) |
Нет: исходный отпечаток устройства |
osможно передать и в теле запроса, как поле формы. Заглавные буквы допускаются.- Настройка действует на всю линию: если её делят несколько прокси, для всех применяется последняя настройка.
- Доступно, если опция входит в ваш тариф; иначе API отвечает
403.
Туннель WireGuard
GET или POST /api/v1/wg-rotate
У каждого туннеля WireGuard своя ссылка ротации, на его карточке в разделе Мои прокси. Логин
состоит из wg и номера туннеля, паролем служит токен туннеля:
curl -u "wg12:TOKEN" https://frproxy.com/api/v1/wg-rotate
- Тот же ответ и те же лимиты, что у ротации прокси.
- Туннель, проданный вместе с прокси, выходит через ту же линию: смена IP одного меняет IP и другого.
- Если прокси, на котором работает туннель, истёк, API отвечает
403.
Лимиты
| Действие | Лимит |
|---|---|
| Смена IP | 1 раз в 30 с на прокси, панель, API и короткая ссылка вместе |
| Новый IP прокси тарифа «Базовый» | 1 раз в 24 ч на прокси |
| Перезапуск линии | 1 раз в 5 мин |
| Чтение SMS | 100 в минуту |
| Выбор отпечатка ОС | 10 в минуту |
Ещё два правила защищают линию, какой бы прокси ни отправил запрос:
- нельзя перезапускать линию во время ротации и в течение 2 мин после неё;
- нельзя запускать ротацию в течение 5 мин после перезапуска, а также пока линия не вернулась (не больше 10 мин).
Ротации и перезапуски подряд держат линию отключённой дольше, чем каждое действие по отдельности.
При отказе API отвечает 429 с заголовком Retry-After: это число секунд, которое нужно
подождать перед повтором. Отказ ничего не расходует.
Коды ответа
| Код | Значение | Что делать |
|---|---|---|
200 |
Успех. | Ничего. |
202 |
Принято: действие продолжается в фоне. | Подождать, затем проверить. |
400 |
Неверный параметр, например неизвестное значение os. |
Исправить запрос. |
401 |
Учётные данные отсутствуют или неверны, либо короткая ссылка неизвестна. | Проверить учётные данные прокси или заново скопировать ссылку. |
403 |
Прокси истёк, опция не входит в тариф, либо действие недоступно для этого прокси. | Продлить прокси или выбрать другое действие. |
404 |
Короткая ссылка искажена. | Заново скопировать ссылку из раздела Мои прокси. |
405 |
HTTP-метод не принимается. | Использовать GET или POST, как указано. |
409 |
Для этого прокси тарифа «Базовый» новый IP уже выдаётся. | Подождать несколько секунд. |
422 |
Новый IP для этого прокси тарифа «Базовый» пока недоступен. | Повторить позже. |
429 |
Слишком рано: действует лимит или защитное правило. | Подождать время, указанное в Retry-After. |
502 |
Линия или сервер не отвечает. | Повторить через минуту; если не проходит, написать в поддержку. |
Ошибка приходит в таком виде:
{
"error": "…"
}
Сообщение предназначено для человека, его язык и формулировка могут меняться: ваш код должен опираться на HTTP-код ответа.
Полный пример
Этот скрипт на Python меняет IP прокси, ждёт, пока новый IP будет готов, и выводит старый и новый
адреса. Если запрос пришёл слишком рано (429), скрипт ждёт указанное время и пробует ещё раз.
import time
import requests
API = "https://frproxy.com"
AUTH = ("USER", "PASS")
PROXY = "http://USER:PASS@frproxy.com:15002"
def current_ip():
r = requests.get("https://api64.ipify.org",
proxies={"http": PROXY, "https": PROXY}, timeout=30)
r.raise_for_status()
return r.text
def rotate():
r = requests.post(API + "/api/v1/rotate", auth=AUTH, timeout=90)
if r.status_code == 429:
time.sleep(int(r.headers["Retry-After"]))
r = requests.post(API + "/api/v1/rotate", auth=AUTH, timeout=90)
r.raise_for_status()
time.sleep(r.json()["wait_sec"])
before = current_ip()
rotate()
print(before, "->", current_ip())
См. также
- Смена IP: когда её делать и когда не стоит.
- Приём SMS
- TCP-подмена ОС
- ИИ-агенты и автоматизация
- Частые ошибки: 407, тайм-аут, соединение отклонено.
Нужен французский мобильный прокси? Настоящая французская линия 4G/5G, порт HTTP и порт SOCKS5, смена IP по запросу.
Посмотреть тарифыarrow_forward