Доступ к API

Взаимодействие разработчиков с API происходит посредством GET запросов и JSON ответов.

Обращение к API производится по адресу:

https://proxy-shop.ru/api/{api_key}/{login}/{method}/{params}
  • {api} – Секретный API-ключ. Доступен в личном кабинете и одинаков для всех пакетов приобретенных на один email.
  • {login} – Логин от пакета, к которому происходит обращение, например U12345678. Также вместо логина возможно использование ключа ALL в этом случае обращение через API произойдет ко всем пакетам привязанным к одному API-ключу.
  • {method} – Один из доступных методов представленных ниже.
  • {params} – Дополнительные параметры в зависимости от используемого метода (могут отсутствовать).

Обращение к API возможно не чаще трех раз в минуту! При превышении данного порога выдается ошибка.
 

Возможные ответы:

При успешном выполнении запроса:

{ "method": "change_proxy", "status": "ok", "user": "U12345678", "response": "PROXY_CHANGED" }
  • method – Используемый метод.
  • status – Всегда “ok” при успешном выполнении запроса.
  • user – Логин от пакета, к которому было обращение или “ALL” при обращении ко всем пакетам.
  • response – Результат выполненного запроса.

При ошибочном выполнении запроса:

{ "method": "change_proxy", "status": "error", "user": "U12345678", "response": "DAILY_LIMIT" }
  • method – Используемый метод.
  • status – Всегда “error” при неудачном выполнении запроса.
  • user – Логин от пакета, к которому было обращение или “ALL” при обращении ко всем пакетам. Данный параметр может отсутствовать.
  • response – Результат выполненного запроса.

 

Общие статусы ошибок для всех методов:

Статусы запросов отображаются в поле “response” JSON ответов:

{ "method": "info_proxy", "status": "error", "response": "ERROR_AUTHENTICATION" }
  • BAD_REQUEST – Некорректный GET запрос.
  • BAD_METHOD – Некорректный метод.
  • BAD_PARAMETERS – Некорректные параметры метода.
  • ERROR_AUTHENTICATION – Ошибка аутентификации (неверные API-ключ или логин).
  • API_LIMIT – Превышение лимита запросов к API в единицу времени.

 

Доступные методы:

  • export_proxy – Получение списка прокси.
  • change_proxy – Замена всех прокси в пакете.
  • bind_proxy – Привязка прокси к IP-адресу.
  • rotate_proxy – Настройка интервала IP-ротатора.
  • protocol_proxy – Смена протокола подключения к прокси.
  • info_proxy – Получение информации о пакетах прокси.

 

Метод “export_proxy”

Метод используется для получения списков прокси в настраиваемом формате.

Возможные параметры метода:

  • [IP] – Адрес сервера.
  • [PORT] – Порт прокси.
  • [LOGIN] – Логин от прокси.
  • [PASSWORD] – Пароль от прокси.
  • [PROTOCOL] – Протокол подключения.

Если не указывать параметры метода, то ответ по умолчанию будет в формате “[IP]:[PORT]”.

Пример запроса:

https://proxy-shop.ru/api/1ca3374ce544ee76c6ac8c3753cc03d8/U12345678/export_proxy/[IP]:[PORT]@[LOGIN]:[PASSWORD]

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

{ "method": "export_proxy", "status": "ok", "user": "U12345678", "response": "192.168.0.1:[email protected]:MyPassword,192.168.0.1:[email protected]:MyPassword" }

 

Метод “change_proxy”

Метод используется для замены прокси в пакетах.
Данный метод не имеет параметров.

Пример запроса:

https://proxy-shop.ru/api/1ca3374ce544ee76c6ac8c3753cc03d8/U12345678/change_proxy

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

{ "method": "change_proxy", "status": "ok", "user": "U12345678", "response": "PROXY_CHANGED" }

Возможные ответы метода:

  • PROXY_CHANGED – Прокси успешно изменены.
  • DAILY_LIMIT – Прокси не изменены в связи с дневным лимитом замены.
  •  

    Метод “bind_proxy”

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

    Пример запроса:

    https://proxy-shop.ru/api/1ca3374ce544ee76c6ac8c3753cc03d8/U12345678/bind_proxy/192.168.0.1

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

    { "method": "bind_proxy", "status": "ok", "user": "U12345678", "response": "PROXY_BINDED" }

    Возможные ответы метода:

  • PROXY_BINDED – Прокси успешно привязаны к IP.
  •  

    Метод “rotate_proxy”

    Метод используется для настройки интервала времени IP-ротатора для пакетов с соответствующей опцией.
    В качестве параметра используется целое число из ряда: 0, 30, 60, 90, 120, 150, 180, 210, 240, 300, 360, 420, 480, 540, 600, 660, 720.
    При указании числа не входящего в данный ряд, параметр всегда округляется в большую сторону. При указании значения “0” IP-ротатор отключается. Если не указывать параметры метода, то по умолчанию он выставляется в значение “30”.

    Пример запроса:

    https://proxy-shop.ru/api/1ca3374ce544ee76c6ac8c3753cc03d8/U12345678/rotate_proxy/60

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

    { "method": "rotate_proxy", "status": "ok", "user": "U12345678", "response": "ROTATOR_SET_60" }

    Возможные ответы метода:

  • ROTATOR_SET_NUMBER – Интервал IP-ротатора установлен.
  • ROTATOR_OFF – IP-ротатор отключен.
  • NO_ROTATOR – Пакет не имеет опции IP-ротатора.
  •  

    Метод “protocol_proxy”

    Метод используется для смены протокола подключения к прокси между HTTP/HTTPS и SOCKS5.
    Возможные параметры метода:

    • HTTP – Установка HTTP/HTTPS протокола для прокси.
    • SOCKS – Установка SOCKS5 протокола для прокси.

    Если не указывать параметры метода, то по умолчанию он выставляется в значение “HTTP”.

    Пример запроса:

    https://proxy-shop.ru/api/1ca3374ce544ee76c6ac8c3753cc03d8/U12345678/protocol_proxy/SOCKS

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

    { "method": "protocol_proxy", "status": "ok", "user": "U12345678", "response": "PROTOCOL_CHANGED_SOCKS" }

    Возможные ответы метода:

  • PROTOCOL_CHANGED_STRING – Протокол подключения изменен.
  •  

    Метод “info_proxy”

    Метод используется для получения информации о пакетах прокси.
    Данный метод не имеет параметров.

    Пример запроса:

    https://proxy-shop.ru/api/1ca3374ce544ee76c6ac8c3753cc03d8/ALL/info_proxy

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

    { "method": "info_proxy", "status": "ok", "user": "ALL", "response": "123456|U12345678|HTTP|RU|20.01.2017-17:01:05, 654321|U87654321|SOCKS|USA|02.12.2016-12:12:17" }

    Метод возвращает строку “response” в виде:

  • номер_заказа|логин|протокол_подключения|страна_прокси|дата_истечения