JetLink

URL: http://96.253.78.35:8080 | Локация: USA, Virginia

1. Получить все устройства

Возвращает полный список всех модемов на сервере с их текущим статусом.

Эндпоинт: GET /apix/show_status_json

2. Получить свободные устройства с учетом Dedicated/Shared логики

Возвращает список свободных устройств. Для Dedicated/Mix: устройство свободно если нет портов или все порты просрочены. Для Shared: устройство свободно если активных портов меньше 5.

Эндпоинты: GET /apix/show_status_json + GET /apix/list_ports_json

3. Получить занятые устройства с учетом Dedicated/Shared логики

Возвращает список занятых устройств согласно логике типа сервера.

Эндпоинты: GET /apix/show_status_json + GET /apix/list_ports_json

4. Создать порт с автогенерацией credentials и на выбор OS Fingerprint

Создает новый порт на выбранном устройстве. Автоматически генерирует уникальные логин, пароль и назначает свободные порты.

Эндпоинты: POST /crud/store_port + GET /apix/apply_port?arg={portID}

5. Получить proxy, OpenVPN, reset link

Получает полные данные доступа для существующего порта.

Эндпоинты: GET /apix/list_ports_json + GET /get_vpn_profile/{portID}.ovpn

6. Изменить OS Fingerprint без изменения других параметров

Обновляет только OS fingerprint для активного порта, сохраняя все остальные настройки.

Эндпоинты: POST /crud/store_port + GET /apix/apply_port?arg={portID}

7. Продлить порт с опциональной ротацией устройства

Продлевает срок действия порта. При включенной ротации переносит порт на свободное устройство.

Эндпоинты: POST /crud/store_port + GET /apix/apply_port?arg={portID}

8. Удалить порт конкретный или все просроченные

Удаляет указанный порт или все порты с истекшим сроком действия.

Эндпоинт: GET /apix/purge_port?arg={portID}

9. Получить все активные порты с кредами и ссылками

Возвращает список всех активных портов (с датой окончания больше текущей) включая данные доступа.

Эндпоинт: GET /apix/list_ports_json

10. Перезагрузка устройства которое принадлежит порту

Перезагружает устройство. Устройство определяется через порт автоматически.

Важно: Устройство нужно получить через порт, так как оно может быть заменено администратором!
Эндпоинт: GET /apix/reboot_modem_by_imei?IMEI={IMEI}

11. Включение автоматической ротации IP адреса на устройстве

Включает автоматическую смену IP через заданный интервал. Устройство определяется через порт.

Важно: IMEI и name устройства - обязательные поля которые нельзя менять!
Эндпоинты: POST /crud/store_modem + POST /modem/settings

12. Получить статистику сервера

Собирает статистику на основе данных устройств и портов согласно описанной логике.

Эндпоинты: GET /apix/show_status_json + GET /apix/list_ports_json

13. Перенос порта на другое устройство

Переносит порт на другое устройство путем пересоздания.

Эндпоинты: POST /crud/store_port + GET /apix/apply_port?arg={portID}

Архитектура решения

Proxysmart - это система управления мобильными прокси-серверами, построенная на физических устройствах с SIM-картами различных операторов.

Структура системы

📍
Локация
USA, Virginia
+
📡
Оператор
Verizon
=
🖥️
Сервер
US-VA-Verizon
Устройства на сервере:
📱
Device 1
IMEI: 353990074165890
📱
Device 2
IMEI: 862329041087719
📱
Device N
...
Порты создаются на устройствах:
HTTP: 8100-8999 SOCKS5: 5100-5999 OpenVPN

Глоссарий терминов

Локация

Географическое расположение серверного оборудования.

Примеры:
  • USA, New York
  • USA, Los Angeles
  • USA, Chicago

Оператор

Мобильный оператор, предоставляющий SIM-карты.

Примеры:
  • Verizon
  • AT&T
  • T-Mobile
  • Sprint

Сервер

Физический сервер расположенный в локации с выделенным оптоволоконным каналом фул дуплекс не менее 1 гигабита/с, к которому подключаются устройства с сим-картами. В одной локации может быть несколько серверов, у каждого будет уникальный статический IP адрес для интеграции.

Формула: Локация + Оператор(ы) = Сервер
Примеры:
  • New York + Verizon = "US-NY-Verizon"
  • Chicago + (AT&T + T-Mobile) = "US-Chicago-Mix"

Типы серверов

Dedicated сервер

Одно устройство - один порт. Доступен только один оператор.

Максимальное количество портов на устройство: 1

Shared сервер

Одно устройство - до 5 портов. Доступен только один оператор.

Максимальное количество портов на устройство: 5

Mix сервер

То же что Dedicated, но могут быть разные операторы (Verizon, T-Mobile, AT&T).

Максимальное количество портов на устройство: 1

Устройство

Физическое оборудование: модем, роутер, телефон.

ВАЖНО: Устройство может быть заменено администратором в любой момент!
Примеры:
  • Модем: MC8010CA, E3372, MR6400
  • Роутер: DW5811e, USB модемы
  • Телефон: Android устройства
Идентификаторы:
  • IMEI: 15 цифр (например: 353990074165890)
  • Nickname: Произвольное имя (например: dongle_101)

Порт

Виртуальная точка доступа для клиента.

Включает: HTTP proxy, SOCKS5 proxy, OpenVPN.

Порты: HTTP (8100-8999), SOCKS (5100-5999)

IMEI

International Mobile Equipment Identity - уникальный 15-значный идентификатор устройства.

Пример: 353990074165890

Proxy

Промежуточный сервер для маршрутизации интернет-трафика через мобильное устройство.

HTTP Proxy SOCKS5 Proxy

VPN (OpenVPN)

Virtual Private Network - зашифрованное соединение через мобильное устройство.

OS Fingerprint

Эмуляция отпечатка операционной системы для обхода детекции, может быть добавлен новый по запросу.

Доступные опции:
  • Без спуфинга
  • Android (p0f compliant, медленный)
  • Android (настоящий, почти как Linux)
  • iOS (p0f compliant)
  • iOS/iPhone (настоящий)
  • Windows 10 (настоящий)
  • MacOS X
  • MacOS 12.6 / iPhone 13 Pro Max

Ротация IP

Процесс смены IP адреса путем переподключения к сети оператора.

Методы:
  • Смена через защищенную ссылку, которая генерируется для порта
  • Автоматическая по таймеру
  • По API запросу через IMEI

Важные заметки

  • Device replacement: Устройство может поменяться по ряду причин (поломка, профилактика, ротация)
  • Api speed: API достаточно медленный, подумайте над тем чтобы ожидать завершения или разрывать сеанс
  • Device ownership: Всегда проверяйте принадлежность устройства перед операциями
  • Ограничения скорости:
    • Не меняйте IP чаще чем раз в минуту
    • Не перегружайте устройство чаще чем раз в час
  • Port rotation: При продлении порта желательно ротировать устройство на свободное

Быстрый старт

Этот интерфейс предназначен для тестирования интеграции с Proxysmart API. Все операции выполняются на тестовом сервере http://96.253.78.35:8080/ с учетными данными proxy:proxy.

Основной процесс работы:

  1. Получите список свободных устройств
  2. Создайте порт на свободном устройстве
  3. Получите данные доступа (HTTP proxy, SOCKS5 proxy, OpenVPN)
  4. При необходимости измените OS fingerprint
  5. При необходимости продлите порт
  6. При необходимости перенесите порт на другое устройство
  7. При необходимости перезагрузите устройство которое принадлежит порту
  8. Удалите порт после использования
1

Получить все устройства

Возвращает полный список всех устройств (модемов) на сервере с их текущим статусом, сетевыми параметрами и характеристиками.

Логика работы:
Выполняет запрос к эндпоинту /apix/show_status_json и возвращает массив всех устройств. Каждое устройство содержит информацию о модеме (IMEI, модель, никнейм) и сетевые данные (IP, оператор, статус подключения).
Endpoint: GET /apix/show_status_json

Пример кода:

Пример ответа:

2

Получить свободные устройства

Возвращает список свободных устройств с учетом типа сервера (Dedicated/Shared/Mix).

Логика работы:
Получает все устройства и порты, затем фильтрует по логике типа сервера. Для Dedicated/Mix: устройство свободно если нет портов или все порты просрочены. Для Shared: устройство свободно если активных портов меньше 5.
Endpoint: GET /apix/show_status_json + GET /apix/list_ports_json

Пример кода:

Пример ответа:

3

Получить занятые устройства

Возвращает список занятых устройств с учетом типа сервера.

Логика работы:
Получает все устройства и вычитает из них свободные. Устройство считается занятым если на нем есть активные порты согласно логике типа сервера.
Endpoint: GET /apix/show_status_json + GET /apix/list_ports_json

Пример кода:

Пример ответа:

4

Создать порт

Создает новый порт на указанном устройстве с автоматической генерацией учетных данных.

Логика работы:
Генерирует уникальный portID, логин, пароль, назначает свободные HTTP и SOCKS порты. Сохраняет порт через /crud/store_port, затем применяет настройки через /apix/apply_port.
Endpoint: POST /crud/store_port + GET /apix/apply_port

Пример кода:

Пример ответа:

5

Получить данные доступа

Получает полные данные доступа для существующего порта.

Логика работы:
Ищет порт по portID в списке всех портов через /apix/list_ports_json. Возвращает прокси credentials, ссылку для смены IP и ссылку на скачивание OpenVPN конфига.
Endpoint: GET /apix/list_ports_json + /get_vpn_profile/{portID}.ovpn

Пример кода:

Пример ответа:

6

Изменить OS Fingerprint

Изменяет OS fingerprint для активного порта без изменения других параметров.

Логика работы:
Получает текущие данные порта, сохраняет все параметры кроме OS, обновляет только OS fingerprint через /crud/store_port и применяет изменения.
Endpoint: POST /crud/store_port + GET /apix/apply_port

Пример кода:

Пример ответа:

7

Продлить порт

Продлевает срок действия порта с опциональной ротацией на новое устройство.

Логика работы:
При ротации ищет свободное устройство. Создает порт заново с теми же credentials на новом устройстве через POST /crud/store_port, затем применяет изменения.
Endpoint: POST /crud/store_port + GET /apix/apply_port

Пример кода:

Пример ответа:

8

Удалить порты

Удаляет конкретный порт или все просроченные порты.

Логика работы:
Для удаления просроченных: проходит по всем портам и удаляет те, у которых PROXY_VALID_BEFORE меньше текущего времени. Использует /apix/purge_port для каждого порта.
Endpoint: GET /apix/purge_port

Пример кода:

Пример ответа:

9

Получить активные порты

Возвращает список всех активных (не просроченных) портов с полными данными доступа.

Логика работы:
Получает все порты через /apix/list_ports_json, фильтрует по дате окончания (больше текущей). Возвращает только порты с установленной датой окончания.
Endpoint: GET /apix/list_ports_json

Пример кода:

Пример ответа:

10

Перезагрузка устройства

Перезагружает устройство, на котором находится указанный порт.

Логика работы:
ВАЖНО: сначала определяет IMEI устройства через порт (так как устройство может быть заменено). Затем выполняет перезагрузку через /apix/reboot_modem_by_imei.
Endpoint: GET /apix/reboot_modem_by_imei

Пример кода:

Пример ответа:

11

Автоматическая ротация IP

Включает автоматическую смену IP адреса через заданный интервал.

Логика работы:
Получает устройство через порт, затем получает NICK устройства через /apix/show_single_status_json, сохраняет настройки модема с параметром AUTO_IP_ROTATION через /crud/store_modem. ВАЖНО: IMEI и name обязательны и не должны меняться!
Endpoint: GET /apix/show_single_status_json + POST /crud/store_modem + POST /modem/settings

Пример кода:

Пример ответа:

12

Статистика сервера

Собирает и возвращает полную статистику по устройствам и портам.

Логика работы:
Анализирует данные из /apix/show_status_json и /apix/list_ports_json. Подсчитывает количество устройств (всего/онлайн/оффлайн/доступно), портов (активные/просроченные), группирует по операторам и моделям.
Endpoint: GET /apix/show_status_json + GET /apix/list_ports_json

Пример кода:

Пример ответа:

13

Перенос порта

Переносит порт на другое устройство с сохранением всех настроек.

Логика работы:
Создает порт на новом устройстве с теми же параметрами через POST /crud/store_port, затем применяет изменения.
Endpoint: POST /crud/store_port + GET /apix/apply_port

Пример кода:

Пример ответа:

Полный класс API

Пример интеграции

Важные замечания

  • Проверка устройства: Всегда получайте IMEI устройства через порт перед операциями перезагрузки или ротации IP.
  • Смена устройства: При переносе или продлении порта с ротацией порт создается на новом устройстве с теми же параметрами.
  • Скорость API: API может работать медленно. Используйте таймауты и обработку ошибок.
  • Ограничения: Не меняйте IP чаще раза в минуту, не перезагружайте устройство чаще раза в час.
  • Автоматическая ротация: При сохранении настроек модема IMEI и name обязательны и не должны изменяться!
  • Типы серверов: Логика определения свободных устройств зависит от типа сервера (Dedicated/Shared/Mix).