Access

Get Entry Nodes

GET /access/entry-nodes

Different entry nodes help to determine the faster route from the country you are situated in.

In almost all cases, you should use geo.iproyal.com which will automatically determine the best server for your location.

Example request:

curl -X GET https://resi-api.iproyal.com/v1/access/entry-nodes \
     -H "Authorization: Bearer <your_api_token>"

Example response:

[
    {
        "dns": "proxy.iproyal.com",
        "ips": ["91.239.130.34"],
        "ports": [
            {
                "name": "http|https",
                "port": 12321,
                "alternative_ports": [
                    11200,
                    ...
                ]
            },
            {
                "name": "socks5",
                "port": 32325,
                "alternative_ports": [
                    51200,
                    ...
                ]
            }
        ]
    },
    {
        "dns": "us.proxy.iproyal.com",
        "ips": ["23.146.144.102", "23.146.144.102"],
        "ports": [
            {
                "name": "http|https",
                "port": 12321,
                "alternative_ports": [
                    11246,
                    ...
                ]
            },
            {
                "name": "socks5",
                "port": 32325,
                "alternative_ports": [
                    51200,
                    ...
                ]
            }
        ]
    },
    ...
]

Get Countries

GET /access/countries

Returns a list of countries, cities, states, and ISPs (Internet Service Providers) that could be used to target a specific proxy. It also returns prefixes to use for each. For more information on how to build a proxy string, refer to our 'Proxy' subsection.

Proxy

Depending on some settings set for you as a user, it will return different results.

  • Identity verification - provides a larger selection of options.

  • Skip ISP Static (Admin activatable) - on top of verified identity, includes a parameter that will reflect the availability of proxies, skipping static proxies.

  • ISPs enabled (Admin activatable) - includes ISPs in every location.

  • Show IP availability (Admin activatable) - adds a parameter that shows the availability of proxies in that location.

Example request:

curl -X GET https://resi-api.iproyal.com/v1/access/countries \
     -H "Authorization: Bearer <your_api_token>"

Example response:

{
    "prefix": "_country-",
    "countries": [
        {
            "code": "ae",
            "name": "United Arab Emirates",
            "cities": {
                "prefix": "_city-",
                "options": [
                    {
                        "code": "abudhabi",
                        "name": "Abu dhabi",
                        "isps": {
                            "prefix": "_isp-",
                            "options": [
                                {
                                    "code": "emiratesintegratedtelecommunicationscompanypjsc",
                                    "name": "Emirates Integrated Telecommunications Company PJSC",
                                    "ip_availability": "low",
                                    "ip_availability_skip_isp_static": "low"
                                },
                                {
                                    "code": "emiratestelecommunicationsgroupcompanyetisalatgrouppjsc",
                                    "name": "Emirates Telecommunications Group Company (Etisalat Group) PJSC",
                                    "ip_availability": "medium",
                                    "ip_availability_skip_isp_static": "medium"
                                }
                            ]
                        },
                        "ip_availability": "medium",
                        "ip_availability_skip_isp_static": "medium"
                    },
                    {
                        "code": "ajman",
                        "name": "'ajman",
                        "isps": {
                            "prefix": "_isp-",
                            "options": [
                                {
                                    "code": "emiratesintegratedtelecommunicationscompanypjsc",
                                    "name": "Emirates Integrated Telecommunications Company PJSC",
                                    "ip_availability": "low",
                                    "ip_availability_skip_isp_static": "low"
                                },
                                {
                                    "code": "emiratestelecommunicationsgroupcompanyetisalatgrouppjsc",
                                    "name": "Emirates Telecommunications Group Company (Etisalat Group) PJSC",
                                    "ip_availability": "low",
                                    "ip_availability_skip_isp_static": "low"
                                }
                            ]
                        },
                        "ip_availability": "medium",
                        "ip_availability_skip_isp_static": "medium"
                    },
                    ...
                ]
            }
        },
        ...
    ]
}

Get Regions

Similarly to #countries, it returns available regions for use when targeting a proxy.

GET /access/regions

Example request:

curl -X GET https://resi-api.iproyal.com/v1/access/regions \
     -H "Authorization: Bearer <your_api_token>"

Example response:

{
    "prefix": "_region-",
    "regions": [
        {
            "code": "africa",
            "name": "Africa"
        },
        {
            "code": "arabstates",
            "name": "Arab States"
        },
        {
            "code": "asiapacific",
            "name": "Asia & Pacific"
        },
        {
            "code": "europe",
            "name": "Europe"
        },
        {
            "code": "middleeast",
            "name": "Middle east"
        },
        {
            "code": "northamerica",
            "name": "North America"
        },
        {
            "code": "southlatinamerica",
            "name": "South/Latin America"
        }
    ]
}

Get Country Sets

GET /access/country-sets

Similarly to #countries, it returns available country sets to use when targeting a proxy.

Example request:

curl -X GET https://resi-api.iproyal.com/v1/access/country-sets \
     -H "Authorization: Bearer <your_api_token>"

Example response:

{
    "prefix": "_set-",
    "countrySets": [
        {
            "code": "courir",
            "name": "COURIR"
        },
        {
            "code": "mesh1",
            "name": "MESH 1"
        },
        {
            "code": "mesh2",
            "name": "MESH 2"
        },
        {
            "code": "nikeas",
            "name": "NIKE ASIA"
        },
        {
            "code": "nikeeu",
            "name": "NIKE EU"
        },
        {
            "code": "nikena",
            "name": "NIKE US"
        },
        {
            "code": "zalando",
            "name": "ZALANDO"
        }
    ]
}

Generate Proxy List

POST /access/generate-proxy-list

If subuser_hash is supplied, username and password are not needed, and vice versa - if username and password are supplied - subuser_hash is not needed.

The location you wish to use needs to be prefixed with a "prefix" that is described in the Get Countries, for example if you want to target Singapore - "_country-sg"

Body Parameters

NameTypeDescriptionAvailable options

format

String

Format in which proxy strings will be returned

{hostname}:{port}:{username}:{password}
{hostname}:{port}@{username}:{password}
{username}:{password}:{hostname}:{port}

hostname

String

Hostname that will be used

port

String

Port as protocol type

http|https
socks5

rotation

String

Rotation that will be used

sticky
random

subuser_hash

String

Subuser that will be used

location

String

Location that will be used

proxy_count

Integer

Proxy count that will be returned

username

String

Username that will be used

password

String

Password that will be used

lifetime

String

For sticky sessions this will tell how long this session will last

5s
10m
20h

Example request:

curl -X POST https://resi-api.iproyal.com/v1/access/generate-proxy-list \
     -H "Content-Type: application/json" \
     -H "Authorization: Bearer <your_api_token>" \
     -d '{
           "format": "{hostname}:{port}:{username}:{password}",
           "hostname": "example.hostname.com",
           "port": "http|https",
           "rotation": "sticky",
           "location": "_country-sg",
           "proxy_count": 10,
           "subuser_hash": "example_subuser_hash",
           "lifetime": "2h"
         }'

Last updated