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

Подключение

Сквозные примеры превращения данных API в рабочее прокси-подключение.

Шаги

  1. Прочитайте данные подключенияGET /subscription/ дает proxy_host, proxy_port (HTTP) и proxy_port_socks5 (SOCKS5).
  2. Получите учетные данныеGET /sub-users/ (или создайте доступ через POST /sub-users/) дает real_login и password.
  3. Выберите таргетинг — получите гео-значения suffix из /geo/* и суффиксы сессии/фильтра из /session-options/.
  4. Постройте имя пользователя — добавьте суффиксы к real_login (см. Грамматика имени пользователя).
  5. Подключитесь — используйте username:password@proxy_host:proxy_port.

Построение имени пользователя

Дано:

  • real_login = u12ab_worker1, password = Str0ngPass
  • proxy_host = gate.cyberyozh.net, proxy_port = 10000
  • суффикс страны us, 5-минутная sticky-сессия, фильтр качества
username = u12ab_worker1-us-s-Ab3xK9pQ-ttl-5m-filter-iqs
proxy = u12ab_worker1-us-s-Ab3xK9pQ-ttl-5m-filter-iqs:Str0ngPass@gate.cyberyozh.net:10000

cURL через прокси

HTTP(S):

curl -x 'http://u12ab_worker1-us-s-Ab3xK9pQ-ttl-5m-filter-iqs:Str0ngPass@gate.cyberyozh.net:10000' \
https://api.ipify.org

SOCKS5 (обратите внимание на порт SOCKS5 из proxy_port_socks5):

curl -x 'socks5h://u12ab_worker1-us:Str0ngPass@gate.cyberyozh.net:11000' \
https://api.ipify.org

Полная ротация (новый IP на каждый запрос — опустите суффикс сессии):

curl -x 'http://u12ab_worker1-us:Str0ngPass@gate.cyberyozh.net:10000' \
https://api.ipify.org

Python (requests)

import secrets
import string
import requests

API = 'https://app.cyberyozh.com/api/v2/rotating-proxies'
HEADERS = {'X-Api-Key': 'your_api_key_here'}

# 1. Connection data
sub = requests.get(f'{API}/subscription/', headers=HEADERS).json()
host, port = sub['proxy_host'], sub['proxy_port']

# 2. Credentials (first access)
access = requests.get(f'{API}/sub-users/', headers=HEADERS).json()['results'][0]
login, password = access['real_login'], access['password']

# 3. Targeting: US, 5-minute sticky session, quality filter
country_suffix = 'us'
session_id = ''.join(secrets.choice(string.ascii_letters + string.digits) for _ in range(8))
username = f'{login}-{country_suffix}-s-{session_id}-ttl-5m-filter-iqs'

# 4. Connect
proxy = f'http://{username}:{password}@{host}:{port}'
resp = requests.get('https://api.ipify.org', proxies={'http': proxy, 'https': proxy})
print('Exit IP:', resp.text)

Удержание sticky-сессии

Повторно используйте тот же session_id между запросами, чтобы сохранить тот же исходящий IP, пока не истечет TTL; сгенерируйте новый session_id, чтобы переключиться на новый IP:

def sticky_username(login: str, country_suffix: str, session_id: str, ttl: str = '10m') -> str:
return f'{login}-{country_suffix}-s-{session_id}-ttl-{ttl}'

Примечания

  • Всегда читайте proxy_host/порты из GET /subscription/, а не задавайте жестко — они могут отличаться для разных подписок.
  • Гео-значения suffix определяются провайдером; получайте их из гео-endpoint'ов.
  • Для аутентификации по IP вместо логина/пароля добавьте IP вашего клиента через whitelist.