Инструкция по API

Конечная точка нашего API: https://api.proxy-solutions.net

Для аутентификации используется api-ключ - его можно получить и изменить в личном кабинете.

Ответы сервера и параметры в POST запросах передаются в формате JSON (кодировка UTF-8) При успешном выполнении запроса HTTP-статус ответа будет 200:OK

Если при выполнении запроса произошла ошибка, сервер возвращает один из HTTP-статусов:
400: Этот статус возвращается для большинства ошибок
403: Ошибка аутентификации
404: Для ошибок в URL методов и отсутствующих элементов
5**: Для наших ошибок

При этом тело ответа будет содержать JSON с описанием ошибки:

    {
      success: false,
      error: <описание ошибки>
    }
   

Справочники
Заметьте: мы никогда не меняем id существующих тарифов и локаций, только добавляем новые, так что эти данные можно смело сохранять локально.

GET /{api_key}/locations

Возвращает список локаций (стран и городов)
Результат:

  {
         success: true,

         countries: [
            {
               id: <int>,     // id страны
               code: <str>,   //
               name: <str>,

               cities: [
                  {
                     id: <int>,
                     name: <str>
                  },

                  ...
               ]
            },

            ...
         ]
      }

GET /{api_key}/services

Возвращает список тарифов

      Результат:

      {
         success: true,

         services: [
            {
               id:  <int>,
               name: <str>,        Название тарифа
               location_choiсe:    Возможность выбора локации: 'none' | 'country' | 'city'
               description: <str>  Описание
            },

            ...
         ]
      }

POST /{api_key}/price

Расчет цены

Параметры:
         service_id: <int>   Тариф
         location_id: <int>  Локация

         quantity: <int>  Количество адресов, по умолчанию 1
         period: <int>    Период в месяцах, по умолчанию 1
         currency:  <str>  Код валюты, по умолчанию "USD"
         

Получение списка заказов
Результат:

         {
         success: true,

         service_id: <int>   Тариф
         location_id: <int>  Локация
         quantity: <int>  Количество адресов
         period: <int>   Период в месяцах
         price_base: <float>  Количество адресов
         price:  <float>   Период в месяцах
      }
    

Работа с заказами

GET /{api_key}/orders

Получение списка заказов
Результат:

         {
         success: true,

         balance: <n.nn>  Состояние баланса на момент запроса

         orders: [
            {
               id: <int>,
               service_id: <int>,  Действующий тариф
               location_id: <int>, Выбранная локация
               quantity: <int>,    Количество адресов
               period: <int>,      Период, в месяцах

               created_at: <unix timestamp>,  Дата создания заказа
               auto_continuation: <bool>,     Автопродление

               status: <str>,  Текущее состояние заказа 'active'|'suspended'|'closed'

               activated_at: <unix timestamp>,  Дата активации
               expires_at: <unix timestamp>     Дата завершения
            },

            ...
         ]
      }
    

GET /{api_key}/orders/{order_id}

Получение подробной информации по заказу
Результат:

        {
         success: true,

         order: {
            id: <int>,
            service_id: <int>, // Действующий тариф
            location_id: <int>, // Выбранная локация
            quantity: <int>, // Количество адресов
            period: <int>, // Период, в месяцах

            created_at: <unix timestamp>, // Дата создания заказа
            auto_continuation: <bool>, // Автопродление

            status: <str>,

            activated_at: <unix timestamp>, // Дата активации
            expires_at: <unix timestamp>, // Дата завершения

            credentials: {
               auth_type: Тип аутентификации на прокси 'login'|'ip'

               login: <str>,
               password: <str>,

               ip_list: [<str>,<str>]
            },

            proxies: [
               { ip: <str>, port: <int> },
               ...
            ]
         }
      }
      

POST /{api_key}/orders

Добавление нового заказа
Параметры:

         service_id: <int>   Тариф
         location_id: <int>  Локация

         quantity: <int>  Количество адресов, по умолчанию 1
         period: <int>    Период в месяцах, по умолчанию 1

         auto_continuation: <bool>  Автопродление, по умолчанию true

         Параметр credentials указывать не обязательно.
         По умолчанию тип аутентификации 'login', уникальная пара login/password будет
         сгенерирована сервером.

         credentials: {
               auth_type: Тип аутентификации на прокси 'login'|'ip'

               Для auth_type == 'login' (по логину/паролю)

               login: <str>,
               password: <str>,

               Для auth_type == 'ip' (по белому списку ip)

               ip_list: [<str>,<str>]
         }
         

Результат:

        {
         success: true,

         order: {
            id: <int>,
            service_id: <int>,  Действующий тариф
            location_id: <int>, Выбранная локация
            quantity: <int>,    Количество адресов
            period: <int>,      Период, в месяцах

            created_at: <unix timestamp>,  Дата создания заказа
            auto_continuation: <bool>,     Автопродление

            status: <str>,

            activated_at: <unix timestamp>,  Дата активации
            expires_at: <unix timestamp>,    Дата завершения

            credentials: {
               auth_type: 'login'|'ip'  Тип аутентификации на прокси

               login: <str>,
               password: <str>,

               ip_list: [<str>,<str>]
            },

            proxies: [
               { ip: <str>, port: <int> },
               ...
            ]
         }
      }

         

POST /{api_key}/orders/{id}

Изменение завершенного заказа
Параметры

         period: <int>    Период, в месяцах
         auto_continuation: <bool>  Включить/выключить автопродление

         credentials: {
               auth_type: Тип аутентификации на прокси 'login'|'ip'

               Для auth_type == 'login' (по логину/паролю)

               login: <str>,
               password: <str>,

               Для auth_type == 'ip' (по белому списку ip)

               ip_list: [<str>,<str>]
         }
   

Результат:

     {
         success: true,

         order: {
            id: <int>,
            service_id: <int>,  Действующий тариф
            location_id: <int>, Выбранная локация
            quantity: <int>,    Количество адресов
            period: <int>,      Период, в месяцах

            created_at: <unix timestamp>,  Дата создания заказа
            auto_continuation: <bool>,     Автопродление

            status: <str>,

            activated_at: <unix timestamp>,  Дата активации
            expires_at: <unix timestamp>,    Дата завершения

            credentials: {
               auth_type: 'login'|'ip'  Тип аутентификации на прокси

               // Для auth_type == 'login' (аутентификация по логину/паролю)
               login: <str>,
               password: <str>,

               // Для auth_type == 'ip' (аутентификация по белому списку ip)
               ip_list: [<str>,<str>]
            },

            proxies: [
               { ip: <str>, port: <int> },
               ...
            ]
         }
      }
   

POST /{api_key}/orders/{id}/continue

Продление заказа
Параметры:

        append_addrs: <int>        Добавление адресов.
        remove_addrs: [<int>, ...]  Удаление конкретных адресов.

        Добавлять и удалять адреса можно только после завершения заказа,
        причем, нельзя делать и то, и другое одновременно.

        period: <int>    Период (в месяцах) на который продлевается заказ
        auto_continuation: <int>  Включить/выключить автопродление

Результат:

  {
         success: true,

         order: {
            id: <int>,
            service_id: <int>,  Действующий тариф
            location_id: <int>, Выбранная локация
            quantity: <int>,    Количество адресов
            period: <int>,      Период, в месяцах

            created_at: <unix timestamp>,  Дата создания заказа
            auto_continuation: <bool>,     Автопродление

            status: &str>,

            activated_at: <unix timestamp>,  Дата активации
            expires_at: <unix timestamp>,    Дата завершения

            credentials: {
               auth_type: 'login'|'ip'  Тип аутентификации на прокси

               // Для auth_type == 'login' (аутентификация по логину/паролю)
               login: &str>,
               password: &str>,

               // Для auth_type == 'ip' (аутентификация по белому списку ip)
               ip_list: [&str>,&str>]
            },

            proxies: [
               { ip: &str>, port: <int> },
               ...
            ]
         }
      }

customer tools api

Прокси-чекер

POST /{api_key}/checker

Запуск проверки

Параметры:

        proxies: [
            {
               ip:  <str>,
               port:  <int>,

               // Необязательные параметры
               login:  <str>,
               password:  <str>,
               proto: "SOCKS4"|"SOCKS5"|"HTTP"|"HTTPS",
            }
         ]
   

Результат:

      {
         success: true,
         task_id: <str> // Идентификатор задания
      }

   

GET /{api_key}/checker/{task_id}

Возвращает статус проверки и результаты, если проверка завершена


Результат:

        {
         success: true,
         status: "pending"|"complete"|"failed" // Статус проверки

         proxies: [
            {
               ip:  <str>,
               port:  <int>,
               login:  <str>,
               password:  <str>,

               status: "alive"|"dead",

               proto: "SOCKS4"|"SOCKS5"|"HTTP"|"HTTPS",

               location: {
                  code:  <str> // Код страны
                  name:  <str> // Страна
               },

               latency:  <int>, // Задержка в милисекундах
               anonymity:  <int>
            },

            ...
         ]
      }
   

Бесплатные прокси

POST /{api_key}/free-proxies

Получение списка прокси


Параметры:

         protocols: ["SOCKS4","SOCKS5"...], // Желаемые протоколы
         countries: ["DE","FR",...], // Желаемые страны
         latency:  <int>, // Максимальная задержка в миллисекундах
         anonimity:  <int>, // Минимальный уровень анонимности
   

Результат:

       {
         success: true,

         proxies: [
            {
               ip: <str>,
               port: <int>,
               proto: <str>,

               location: {
                  code: <str> // Код страны
                  name: <str> // Страна
               },

               latency: <int>, // Задержка в милисекундах (при последней проверке)
               anonymity: <int>
            },

            ...
         ]
      }
   

Ласкаво просимо до Особистого кабінету!


Всі ваші замовлення та інформація про них зберігаються тут.

Ви можете використовувати широкий функціонал сервісу, не виходячи з особистого кабінету.

Якщо Ви робите покупку на нашому сайті вперше, код доступу в особистий кабінет прийде на пошту, яка була вказана при оформленні замовлення. Процес реєстрації облікового запису повністю автоматичний, вам достатньо лише зробити замовлення.