REST API


Authentication token (also known as an application key) is a unique and secret account identifier. It is used to authenticate the request. Each API request must include an HTTP header named reproxy-auth-token containing the account authentication token.

reproxy-auth-token: 315c216965a7********29c254bb68b1

Authentication token is generated during registration.

Note. If you try to send a request without a token, an error will return:

{
    "status": false,
    "message": "missing or invalid api token"
}

Each request must be sent by the POST method.

Content-type header should be application/json

Get prices

URL: https://reproxy.network/api/prices.php

To get the current prices for IPv6 and IPv4 proxies, send a GET request. The data will be returned in JSON format.

As a result of the request, two parameters with a set of properties describing prices for IPv4 and IPv6 proxies will be returned. The keys of such properties are the number of threads, and the value, respectively, is the price (int, ₽).

Prices for IPv6 Private depend on currency exchange rates and change once a day. The list of subnets is subject to change.

PHP request example:

$result = file_get_contents('https://reproxy.network/api/prices.php');
$result = json_decode($result, true);
echo $result['ipv4']['100'];

Response example:

{
    "ipv4": {
        "50": 500,
        "100": 1000,
        "200": 1200,
        "300": 1500,
        "400": 1700,
        "500": 2000,
        "600": 2200,
        "700": 2500,
        "800": 2700,
        "900": 3000,
        "1000": 3200
    },
    "ipv6": {
        "50": 500,
        "100": 1000,
        "200": 1200,
        "300": 1500,
        "400": 1700,
        "500": 2000,
        "600": 2200,
        "700": 2500,
        "800": 2700,
        "900": 3000,
        "1000": 3200
    },
    "ipv6_private":{
        "ARIN /44": 9700,
        "ARIN /40": 14550,
        "RIPE /40": 14550,
        "ARIN /36": 33950,
        "RIPE /36": 29100,
        "RIPE /32": 48500,
        "RIPE /29": 97000
    }
}

Get the current balance

URL: https://reproxy.network/api/balance.php

PHP request example:

This request must not contain any fields. Just a POST request with the reproxy-auth-token header.

As a result, two fields will be returned: status (true) and the user`s current balance (int).

$url = 'https://reproxy.network/api/balance.php';
$options = array(
    'http' => array(
        'header'  => "reproxy-auth-token: 315c216965a7********29c254bb68b1\r\n".
                     "Content-Type: application/json; charset=UTF-8\r\n",
        'method'  => 'POST'
    )
);
$context = stream_context_create($options);
$result = file_get_contents($url, false, $context);

Response example:

{
    "status": true,
    "balance": 2900
}

Get proxy packages

URL: https://reproxy.network/api/package.php

Allows you to get data about active proxy packages. Accepts two parameters: proxy type and package. The second parameter can take the value 'all' to return all active proxy packages, or id of a specific proxy package to return data only about the specified package.

If successful, returns two parameters: 'status' and 'data'. The first parameter has a logical value true. The second parameter is an array, regardless of whether all active packages are returned proxy or one specific one. Accordingly, if one specific proxy package was requested - the array will contain one element.

In case of an error returns three parameters: 'status', 'status_code' and 'message'. The first parameter has the boolean value is false. The second one returns the error code and the last one, respectively, the error description.

Request Parameters:

Name Data type Description Values
type string Optional. Proxy Package Type
  • ipv6 - IPv6 proxy packages
  • ipv4 - IPv4 proxy packages
  • ipv6_private - IPv6 Private proxy packages
Default: ipv6
package string/int Optional. ID of the proxy package
  • all (string) - returns all active proxy packages and information about them
  • id (int) - returns the proxy package corresponding to the transmitted identifier
Default: 'all'

Response parameters (successful request):

Name Data type Description
status string Response status
data array Array of proxy packages

Each element of the data array contains 9 fields that determine the status of the proxy package:

  • id (int) - ID of the proxy package
  • left_time (int) - The time until the expiration of the proxy package in unixtime format
  • thread_max (int) - The number of threads of the package according to the tariff
  • thread_current (int) - The number of threads used at the time of the request
  • auth_type (string) - Package authorization type (ip/login:password)
  • auth_login (string) - Authorization login
  • auth_psw (string) - Authorization password
  • auth_ip (string) - Authorization IP
  • renewal (boolean) - Auto-renewal of the package (on/off)
  • country (string) - Proxy country (for ipv6)

Elements of the data array for IPv6 private proxies:

  • id (int) - ID of the proxy package
  • left_time (int) - The time until the expiration of the proxy package in unixtime format
  • thread_max (int) - The number of threads of the package according to the tariff
  • thread_current (int) - The number of threads used at the time of the request
  • auth_type (string) - Package authorization type (ip/login:password)
  • auth_login (string) - Authorization login
  • auth_psw (string) - Authorization password
  • auth_ip (string) - Authorization IP
  • server (string) - Server IP
  • subnet (string) - Server subnet
  • http_start_port (int) - Start port for HTTP protocol
  • http_end_port (int) - End port for HTTP protocol
  • socks_start_port (int) - Start port for SOCKS protocol
  • socks_end_port (int) - End port for SOCKS protocol

PHP request example:

$url = 'https://reproxy.network/api/package.php';
$data = array(
    'type' => 'ipv6',
    'package' => 174
);
$options = array(
    'http' => array(
        'header'  => "reproxy-auth-token: 315c216965a7********29c254bb68b1\r\n".
                    "Content-Type: application/json; charset=UTF-8\r\n",
        'method'  => 'POST',
        'content' => json_encode($data)
    )
);
$context  = stream_context_create($options);
$result = file_get_contents($url, false, $context);

Response example (successful request):

{
    "status": true,
    "data":[
        {
            "id": 174,
            "left_time": 259200,
            "thread_max": 50,
            "thread_current": 0,
            "auth_type": "ip",
            "auth_login": "login_174",
            "auth_psw": "eW3G3j7gId",
            "auth_ip": "127.0.0.1",
            "renewal": true,
            "country": "UKR"//only for ipv6
        }
    ]
}

Change proxy package

URL: https://reproxy.network/api/changes.php

This method allows you to change the state of the proxy package, namely: authorization type, ip authorization, or enable/disable auto-renewal of the proxy package.

If successful, returns the request status (true).

In case of an error returns three parameters: 'status', 'status_code' and 'message'. The first parameter has the boolean value is false. The second one returns the error code and the last one, respectively, the error description.

Request Parameters:

Name Data type Description Values
type string Optional. Proxy Package Type
  • ipv6 - IPv6 proxy packages
  • ipv4 - IPv4 proxy packages
  • ipv6_private - IPv6 Private proxy packages
Default: ipv6
package int Required. ID of the proxy package
change_type string Required. Parameter of the package`s changeable information
  • auth_type - authorization type (ipv6, ipv4, ipv6_private)
  • auth_ip - IP authorization of the package (ipv6, ipv4, ipv6_private)
  • renewal - Auto-renewal of the package (ipv6, ipv4)
  • country - Country of the ipv6 package (ipv6)
change_value string/boolean Required. New value of the parameter being changed For change_type=='auth_type':
  • ip - change to ip authorization
  • login - change to authorization by login:password
For change_type=='auth_ip':
  • IP in the format xxx.xxx.xxx.xxx
For change_type=='renewal':
  • true - enable auto-renewal
  • false - turn off auto-renewal
For change_type=='country':

PHP request example:

$url = 'https://reproxy.network/api/changes.php';
$data = array(
    'type' => 'ipv6',
    'package' => 172,
    'change_type' => 'renewal',
    'change_value' => true
);
$options = array(
    'http' => array(
        'header'  => "reproxy-auth-token: 315c216965a7********29c254bb68b1\r\n".
                    "Content-Type: application/json; charset=UTF-8\r\n",
        'method'  => 'POST',
        'content' => json_encode($data)
    )
);
$context  = stream_context_create($options);
$result = file_get_contents($url, false, $context);

Response example (successful request):

{
    "status":true
}

Buy proxy package

URL: https://reproxy.network/api/buy.php

This method allows to purchase proxy packages. To do this, you need to pass the minimum one parameter: the number of threads. The remaining parameters are optional and they will take the default value if they are not defined (see request parameters).

If successful, three parameters will be returned: request status (true), balance balance and array, which stores the data for each purchased key.

In case of an error returns three parameters: 'status', 'status_code' and 'message'. The first parameter has the boolean value is false. The second one returns the error code and the last one, respectively, the error description.

Request Parameters:

Name Data type Description Values
type string Optional. Proxy Package Type
  • ipv6 - IPv6 proxy packages
  • ipv4 - IPv4 proxy packages
  • ipv6_private - IPv6 Private proxy packages
Default: ipv6
count int Optional. Number of proxy packages By default: 1
threads_count int Required. Number of proxy packages

For IPv6 and IPv4:

  • 50
  • 100
  • 200
  • 300
  • 400
  • 500
  • 600
  • 700
  • 800
  • 900
  • 1000

For private IPv6: 1000 or greater, multiple of 1000. Default: 1000 (1000, 2000, 3000...)

auth_type string Optional. Proxy Package authorization type
  • ip - authorization by ip
  • login - authorization by login:password
By default: ip
auth_ip string Optional. ip authorization of the proxy package
  • IP in the format xxx.xxx.xxx.xxx
By default: 127.0.0.1
renewal boolean Optional. Enable/disable auto-renewal of the proxy package
  • true - enable auto-renewal
  • false - turn off auto-renewal
By default: false

Not available for private IPv6

country string Optional. Country of the ipv6 package. For IPv6 packages only
By default: UKR

Available only for IPv6

subnet string Required. IPv6 private subnet. For IPv6 Private only
  • ARIN /44
  • RIPE /44
  • ARIN /40
  • RIPE /40
  • ARIN /36
  • RIPE /36
  • RIPE /32
  • RIPE /29

For IPv6 Private only

Response parameters (successful request):

Name Data type Description
status string Response status
balance int Balance of funds on the account
data array Array of proxy packages

Each element of the data array contains 9 fields that determine the status of the proxy package:

  • id (int) - ID of the proxy package
  • left_time (int) - The time until the expiration of the proxy package in unixtime format
  • thread_max (int) - The number of threads of the package according to the tariff
  • thread_current (int) - The number of threads used at the time of the request
  • auth_type (string) - Package authorization type (ip/login:password)
  • auth_login (string) - Authorization login
  • auth_psw (string) - Authorization password
  • auth_ip (string) - Authorization IP
  • renewal (boolean) - Auto-renewal of the package (on/off)
  • country (string) - Proxy country (for ipv6)

PHP request example:

$url = 'https://reproxy.network/api/buy.php';
$data = array(
    'type' => 'ipv6',
    'count' => 2,
    'threads_count' => 100,
    'auth_type' => 'ip',
    'auth_ip' => '127.1.0.1',
    'renewal' => true
);
$options = array(
    'http' => array(
        'header'  => "reproxy-auth-token: 315c216965a7********29c254bb68b1\r\n".
                    "Content-Type: application/json; charset=UTF-8\r\n",
        'method'  => 'POST',
        'content' => json_encode($data)
    )
);
$context  = stream_context_create($options);
$result = file_get_contents($url, false, $context);

Response example (successful request):

{
    "status": true,
    "balance": 347900,
    "data": [
        {
            "id": 186,
            "left_time": 2592000,
            "thread_max": 100,
            "thread_current": 0,
            "auth_type": "ip",
            "auth_login": "login_186",
            "auth_psw": "Z6glt2A7pO",
            "auth_ip": "127.1.0.1",
            "renewal":true,
            "country": UKR
        },
        {
            "id": 187,
            "left_time": 2592000,
            "thread_max": 100,
            "thread_current": 0,
            "auth_type": "ip",
            "auth_login": "login_187",
            "auth_psw": "e9V1E3kxQy",
            "auth_ip": "127.1.0.1",
            "renewal": true,
            "country": UKR
        }
    ]
}