Smart

This page will guide you on how to generate sticky and rotating proxies, Supported countries, other optional features, White labeling and FAQs regarding Smart APIs.

How to generate sticky proxies:

const string = (length) => {
  let result = '';
  const characters = 'abcdefghijklmnopqrstuvwxyz1234567890';
  const charactersLength = characters.length;
  for (let i = 0; i < length; i++) {
    result += characters.charAt(Math.floor(Math.random() * charactersLength));
  }
  return result;
};

function proxyGenerationSticky(amount, country, username, password) {
  proxy = [];
  for (var i = 0; i < parseInt(amount); i++) {
    proxy.push(
      `smrt.x.proxiess.com:7000:${username}:${password}-cc-${country.toLowerCase()}-sessid-${string(8,
      )}-sesstime-30\n`,
    );
  }
  return proxy.join('');
}

General Proxy format for Smart Sticky:

<Domain>:<Port>:<username>:<password>-cc-<country code>-sessid-<session id>-sesstime-30

Follow the below table for generate HTTP/HTTPS and SOCKS5.

API
Authentication
Domain
Port

Smartproxy

HTTP/HTTPS

smrt.x.proxiess.com

7000

Smartproxy EU

HTTP/HTTPS

smrteu.x.proxiess.com

7002

Smartproxy Asia

HTTP/HTTPS

smrtasia.x.proxiess.com

7003

Smartproxy

SOCKS5

sockssmrt.x.proxiess.com

7004

Smartproxy EU

SOCKS5

sockssmrteu.x.proxiess.com

7005

Smartproxy Asia

SOCKS5

sockssmrtasia.x.proxiess.com

7006

How to generate rotating proxies:

function proxyGenerationRotating(amount, country, username, password) {
  proxy = [];
  for (var i = 0; i < parseInt(amount); i++) {
    proxy.push(
      `smrt.x.proxiess.com:7000:${username}:${password}-cc-${country.toLowerCase()}\n`,
    );
  }
  return proxy.join('');
}

General Proxy format for Smart Rotating:

<Domain>:<Port>:<username>:<password>-cc-<country code>

Follow the below table for generate HTTP/HTTPS and SOCKS5.

API
Authentication
Domain
Port

Smartproxy

HTTP/HTTPS

smrt.x.proxiess.com

7000

Smartproxy EU

HTTP/HTTPS

smrteu.x.proxiess.com

7002

Smartproxy Asia

HTTP/HTTPS

smrtasia.x.proxiess.com

7003

Smartproxy

SOCKS5

sockssmrt.x.proxiess.com

7004

Smartproxy EU

SOCKS5

sockssmrteu.x.proxiess.com

7005

Smartproxy Asia

SOCKS5

sockssmrtasia.x.proxiess.com

7006

Supported countries:

Countries: [
    { name: 'US', display: 'USA' },
    { name: 'CA', display: 'Canada' },
    { name: 'GB', display: 'GB' },
    { name: 'DE', display: 'Germany' },
    { name: 'FR', display: 'France' },
    { name: 'ES', display: 'Spain' },
    { name: 'IT', display: 'Italy' },
    { name: 'SE', display: 'Sweden' },
    { name: 'GR', display: 'Greece' },
    { name: 'PT', display: 'Portugal' },
    { name: 'NL', display: 'Netherlands' },
    { name: 'BE', display: 'Belgium' },
    { name: 'RU', display: 'Russia' },
    { name: 'UA', display: 'Ukraine' },
    { name: 'PL', display: 'Poland' },
    { name: 'IL', display: 'Israel' },
    { name: 'TR', display: 'Turkey' },
    { name: 'AU', display: 'Australia' },
    { name: 'MY', display: 'Malaysia' },
    { name: 'TH', display: 'Thailand' },
    { name: 'KR', display: 'South Korea' },
    { name: 'JP', display: 'Japan' },
    { name: 'PH', display: 'Philippines' },
    { name: 'SG', display: 'Singapore' },
    { name: 'CN', display: 'China' },
    { name: 'HK', display: 'Hong Kong' },
    { name: 'TW', display: 'Taiwan' },
    { name: 'IN', display: 'India' },
    { name: 'PK', display: 'Pakistan' },
    { name: 'IR', display: 'Iran' },
    { name: 'ID', display: 'Indonesia' },
    { name: 'AZ', display: 'Azerbaijan' },
    { name: 'KZ', display: 'Kazakhstan' },
    { name: 'AE', display: 'UAE' },
    { name: 'MX', display: 'Mexico' },
    { name: 'BR', display: 'Brazil' },
    { name: 'AR', display: 'Argentina' },
    { name: 'CL', display: 'Chile' },
    { name: 'PE', display: 'Peru' },
    { name: 'EC', display: 'Ecuador' },
    { name: 'CO', display: 'Colombia' },
    { name: 'ZA', display: 'South Africa' },
    { name: 'EG', display: 'Egypt' },
    { name: 'AO', display: 'Angola' },
    { name: 'CM', display: 'Cameroon' },
    { name: 'CF', display: 'Central African Republic' },
    { name: 'TD', display: 'Chad' },
    { name: 'BJ', display: 'Benin' },
    { name: 'ET', display: 'Ethiopia' },
    { name: 'DJ', display: 'Djibouti' },
    { name: 'GM', display: 'Gambia' },
    { name: 'GH', display: 'Ghana' },
    { name: 'CI', display: "Côte d'Ivoire" },
    { name: 'KE', display: 'Kenya' },
    { name: 'LR', display: 'Liberia' },
    { name: 'MG', display: 'Madagascar' },
    { name: 'ML', display: 'Mali' },
    { name: 'MR', display: 'Mauritania' },
    { name: 'MU', display: 'Mauritius' },
    { name: 'MA', display: 'Morocco' },
    { name: 'MZ', display: 'Mozambique' },
    { name: 'NG', display: 'Nigeria' },
    { name: 'SN', display: 'Senegal' },
    { name: 'SC', display: 'Seychelles' },
    { name: 'ZW', display: 'Zimbabwe' },
    { name: 'SS', display: 'South Sudan' },
    { name: 'SD', display: 'Sudan' },
    { name: 'TG', display: 'Togo' },
    { name: 'TN', display: 'Tunisia' },
    { name: 'UG', display: 'Uganda' },
    { name: 'ZM', display: 'Zambia' },
    { name: 'AF', display: 'Afghanistan' },
    { name: 'BH', display: 'Bahrain' },
    { name: 'BD', display: 'Bangladesh' },
    { name: 'AM', display: 'Armenia' },
    { name: 'BT', display: 'Bhutan' },
    { name: 'MM', display: 'Myanmar' },
    { name: 'KH', display: 'Cambodia' },
    { name: 'GE', display: 'Georgia' },
    { name: 'IQ', display: 'Iraq' },
    { name: 'JO', display: 'Jordan' },
    { name: 'LB', display: 'Lebanon' },
    { name: 'MV', display: 'Maldives' },
    { name: 'MN', display: 'Mongolia' },
    { name: 'OM', display: 'Oman' },
    { name: 'QA', display: 'Qatar' },
    { name: 'SA', display: 'Saudi Arabia' },
    { name: 'VN', display: 'Vietnam' },
    { name: 'TM', display: 'Turkmenistan' },
    { name: 'UZ', display: 'Uzbekistan' },
    { name: 'YE', display: 'Yemen' },
    { name: 'AL', display: 'Albania' },
    { name: 'AD', display: 'Andorra' },
    { name: 'AT', display: 'Austria' },
    { name: 'BA', display: 'Bosnia and Herzegovina' },
    { name: 'BG', display: 'Bulgaria' },
    { name: 'BY', display: 'Belarus' },
    { name: 'HR', display: 'Croatia' },
    { name: 'CY', display: 'Cyprus' },
    { name: 'CZ', display: 'Czech Republic' },
    { name: 'DK', display: 'Denmark' },
    { name: 'EE', display: 'Estonia' },
    { name: 'FI', display: 'Finland' },
    { name: 'HU', display: 'Hungary' },
    { name: 'IS', display: 'Iceland' },
    { name: 'IE', display: 'Ireland' },
    { name: 'LV', display: 'Latvia' },
    { name: 'LI', display: 'Liechtenstein' },
    { name: 'LT', display: 'Lithuania' },
    { name: 'LU', display: 'Luxembourg' },
    { name: 'MT', display: 'Malta' },
    { name: 'MC', display: 'Monaco' },
    { name: 'MD', display: 'Moldova' },
    { name: 'ME', display: 'Montenegro' },
    { name: 'NO', display: 'Norway' },
    { name: 'RO', display: 'Romania' },
    { name: 'RS', display: 'Serbia' },
    { name: 'SK', display: 'Slovakia' },
    { name: 'SI', display: 'Slovenia' },
    { name: 'CH', display: 'Switzerland' },
    { name: 'MK', display: 'Macedonia' },
    { name: 'BS', display: 'Bahamas' },
    { name: 'BZ', display: 'Belize' },
    { name: 'VG', display: 'British Virgin Islands' },
    { name: 'CR', display: 'Costa Rica' },
    { name: 'CU', display: 'Cuba' },
    { name: 'DM', display: 'Dominica' },
    { name: 'HT', display: 'Haiti' },
    { name: 'HN', display: 'Honduras' },
    { name: 'JM', display: 'Jamaica' },
    { name: 'AW', display: 'Aruba' },
    { name: 'PA', display: 'Panama' },
    { name: 'PR', display: 'Puerto Rico' },
    { name: 'TT', display: 'Trinidad and Tobago' },
    { name: 'FJ', display: 'Fiji' },
    { name: 'NZ', display: 'New Zealand' },
    { name: 'BO', display: 'Bolivia' },
    { name: 'PY', display: 'Paraguay' },
    { name: 'UY', display: 'Uruguay' },
    { name: 'VE', display: 'Venezuela' },
  ]

Other Optional Features:

Generate custom endpoints (proxies):

Generate custom back connect endpoints:

White labeling:

Use this method to brand your proxies with your own domain/company name

To brand the proxies under your domain follow these steps:

  1. Open the DNS configuration for your domain.

  2. Create a C Name Record pointing to the domain.

  3. Whatever you enter in the name/host will decide the domain which points to our API IP.

  4. Thus if your domain is API.com and you enter the host premium pointing to the Smart Proxies domain, your proxies will be formatted premium.yourdomain.com:port:user:pass

  5. An example on Godaddy is linked below:

API
Authentication
Domain
Port

Smartproxy

HTTP/HTTPS

smrt.x.proxiess.com

7000

Smartproxy EU

HTTP/HTTPS

smrteu.x.proxiess.com

7002

Smartproxy Asia

HTTP/HTTPS

smrtasia.x.proxiess.com

7003

Smartproxy

SOCKS5

sockssmrt.x.proxiess.com

7004

Smartproxy EU

SOCKS5

sockssmrteu.x.proxiess.com

7005

Smartproxy Asia

SOCKS5

sockssmrtasia.x.proxiess.com

7006

FAQ

What is Authorization?

This is a header value you provide with every request. We are using the Bearer token so send in the header like this: "Authorization: Bearer <your API token>"

  • Im getting this error: {"message":"username cannot be null or undefined.","timestamp":1634146275996} how do I fix it?

Make sure you have this "Content-Type": "application/json" header present in your requests.

Headers

Please check on how to send requests with headers in whichever languages you are using.

POST Request:

{
	"Authorization": "Bearer <your api token>",
	"Content-Type": "application/json"
} 

# Sample curl request
curl --location --request POST '<https://smart.proxiesapi.xyz/proxy_api/v1/smart/users/update>' \\
         --data-raw '{
							"user_id": 52145,
					    "password": "5saxae",
					    "traffic_limit": 1
     }' -H "Authorization: Bearer <your api token>" -H "Content-Type: application/json"

GET Request:

{
	"Authorization": "Bearer <your api token>",
}
# Sample curl request
curl --location --request GET 'https://smart.proxiesapi.xyz/proxy_api/v1/smart/users/52145' \
         -H "Authorization: Bearer <your api token>"

Last updated