Getting Started with Scarab Proxies

Everything you need to integrate and use our proxy services.

Quick Start

Get up and running with Scarab Proxies in under 5 minutes.

1

Create an Account

Sign up for a free account. No credit card required.

2

Get Your Credentials

Find your username and password in the dashboard under "Proxy Credentials".

3

Make Your First Request

Use the credentials with our proxy endpoint:

cURL
curl -x "http://USERNAME:PASSWORD@proxy.scarabproxies.com:8080" \
     "https://api.ipify.org?format=json"
Note: Replace USERNAME and PASSWORD with your actual credentials from the dashboard.

Authentication

We support two authentication methods:

Username/Password Authentication

Include credentials in the proxy URL:

http://USERNAME:PASSWORD@proxy.scarabproxies.com:8080

IP Whitelist Authentication

Add your server's IP address to the whitelist in your dashboard, then connect without credentials:

http://proxy.scarabproxies.com:8080
Tip: IP whitelist is recommended for production servers with static IPs. Use username/password for development or dynamic IPs.

Proxy Endpoints

Proxy Type HTTP/HTTPS SOCKS5
Residential residential.scarabproxies.com:8080 residential.scarabproxies.com:1080
Datacenter datacenter.scarabproxies.com:8080 datacenter.scarabproxies.com:1080
Mobile mobile.scarabproxies.com:8080 mobile.scarabproxies.com:1080
Auto-Select proxy.scarabproxies.com:8080 proxy.scarabproxies.com:1080

Geo-Targeting

Target specific locations by adding parameters to your username:

Country Targeting

USERNAME-country-us:PASSWORD@residential.scarabproxies.com:8080

State/Region Targeting

USERNAME-country-us-state-california:PASSWORD@residential.scarabproxies.com:8080

City Targeting

USERNAME-country-us-city-losangeles:PASSWORD@residential.scarabproxies.com:8080

ASN Targeting

USERNAME-asn-7922:PASSWORD@residential.scarabproxies.com:8080

Supported Country Codes

Use ISO 3166-1 alpha-2 codes: us, gb, de, fr, jp, au, ca, br, etc.

Session Control

Rotating Sessions (Default)

By default, each request gets a new IP address:

USERNAME:PASSWORD@residential.scarabproxies.com:8080

Sticky Sessions

Maintain the same IP for multiple requests by adding a session ID:

USERNAME-session-abc123:PASSWORD@residential.scarabproxies.com:8080
Session Duration:
  • Residential: Up to 30 minutes
  • Datacenter: Up to 24 hours
  • Mobile: Up to 60 minutes
Sessions automatically renew with each request.

Session with Targeting

Combine session and location parameters:

USERNAME-country-us-session-abc123:PASSWORD@residential.scarabproxies.com:8080

Integration Examples

Python (requests)

Python
import requests

proxies = {
    "http": "http://USERNAME:PASSWORD@residential.scarabproxies.com:8080",
    "https": "http://USERNAME:PASSWORD@residential.scarabproxies.com:8080"
}

response = requests.get("https://httpbin.org/ip", proxies=proxies)
print(response.json())

Node.js (axios)

JavaScript
const axios = require('axios');
const HttpsProxyAgent = require('https-proxy-agent');

const agent = new HttpsProxyAgent(
    'http://USERNAME:PASSWORD@residential.scarabproxies.com:8080'
);

axios.get('https://httpbin.org/ip', { httpsAgent: agent })
    .then(response => console.log(response.data));

Python (Selenium)

Python
from selenium import webdriver
from selenium.webdriver.chrome.options import Options

PROXY = "residential.scarabproxies.com:8080"

chrome_options = Options()
chrome_options.add_argument(f'--proxy-server=http://{PROXY}')

# For authenticated proxies, use a proxy extension or seleniumwire
driver = webdriver.Chrome(options=chrome_options)
driver.get("https://httpbin.org/ip")

Python (Scrapy)

Python (settings.py)
# settings.py
DOWNLOADER_MIDDLEWARES = {
    'scrapy.downloadermiddlewares.httpproxy.HttpProxyMiddleware': 110,
}

HTTP_PROXY = 'http://USERNAME:PASSWORD@residential.scarabproxies.com:8080'

# Or in spider
def start_requests(self):
    yield scrapy.Request(
        url='https://example.com',
        meta={'proxy': 'http://USERNAME:PASSWORD@residential.scarabproxies.com:8080'}
    )

Puppeteer

JavaScript
const puppeteer = require('puppeteer');

(async () => {
    const browser = await puppeteer.launch({
        args: ['--proxy-server=residential.scarabproxies.com:8080']
    });
    
    const page = await browser.newPage();
    await page.authenticate({
        username: 'USERNAME',
        password: 'PASSWORD'
    });
    
    await page.goto('https://httpbin.org/ip');
    console.log(await page.content());
    
    await browser.close();
})();

API Reference

Manage your account and proxies programmatically.

Base URL

https://api.scarabproxies.com/v1

Authentication

Include your API key in the header:

Authorization: Bearer YOUR_API_KEY

Endpoints

Method Endpoint Description
GET /account Get account info and balance
GET /usage Get bandwidth usage stats
GET /whitelist List whitelisted IPs
POST /whitelist Add IP to whitelist
DELETE /whitelist/{ip} Remove IP from whitelist

Error Handling

Error Code Meaning Solution
407 Proxy Authentication Required Check username/password or whitelist your IP
429 Too Many Requests Reduce request rate or upgrade plan
502 Bad Gateway Target site may be blocking; try different IP
503 Service Unavailable Temporary issue; retry with backoff
ECONNREFUSED Connection Refused Check endpoint and port; verify firewall

Best Practices

1. Use Appropriate Proxy Types

Match proxy type to your use case. Residential for sensitive sites, datacenter for speed, mobile for social platforms.

2. Implement Retry Logic

Add exponential backoff for failed requests. Not every request will succeed on the first try.

3. Respect Rate Limits

Don't hammer target sites. Add delays between requests to appear more human.

4. Rotate User Agents

Combine IP rotation with user agent rotation for better success rates.

5. Monitor Usage

Track your bandwidth consumption and success rates through the dashboard.

6. Use Sessions Wisely

Use sticky sessions for multi-step processes, rotating for single requests.

Need Help?

Our support team is available 24/7 to assist with integration.