Pre-launchThe spec on this site is committed; the gateway is not yet in service.Ask for early access →
ProxyNomad

proxynomad.com / Quickstartgate.proxynomad.com : 7000 to 7301

First request to first success.

There is no SDK and nothing to install. If your HTTP client can use a proxy, you are already integrated; this page is the whole manual.

§ 01 Endpoints gate.proxynomad.com
ports 7000 to 7301

One gateway, three doors.

Everything routes through gate.proxynomad.com. The port picks the product; your credentials work on all of them, each drawing from its own prepaid balance.

  • Residential :7000
    http connect
    gate.proxynomad.com:7000
    socks5
    gate.proxynomad.com:7001
    rotation
    per request
  • ISP :7200
    http connect
    gate.proxynomad.com:7200
    socks5
    gate.proxynomad.com:7201
    rotation
    static, you address your IPs
  • Datacenter :7300
    http connect
    gate.proxynomad.com:7300
    socks5
    gate.proxynomad.com:7301
    rotation
    per request
§ 02 Authenticate proxy auth or
ip allowlist

Credentials in the proxy URL.

You get a username and password from the dashboard. Standard proxy auth, nothing custom: put them in the proxy URL and go. Routing instructions are appended to the username as hyphen-separated segments, so switching city or carrier is a string edit, not a config system.

Prefer no credentials in code? Allowlist your server IPs in the dashboard and the gateway trusts them directly; targeting then travels in an X-Nomad-Route header with the same syntax. Rotate your password from the dashboard any time; old sessions drain, new connections use the new secret.

curl
# rotating residential, Berlin
curl -x "http://USER-country-de-city-berlin:PASS\
@gate.proxynomad.com:7000" https://ifconfig.me
# run it twice: two different Berlin addresses
auth standard proxy
no creds ip allowlist
password rotate any time
standard proxy auth, three stacks
§ 03 Target lowercase, underscores
for spaces

Routing syntax, complete.

Segments combine left to right, all optional, all lowercase. Values with spaces use underscores: city-mexico_city, city-sao_paulo.

Routing syntax: username segments with example and meaning
SegmentExampleMeaning
country-<cc>country-deISO 3166-1 alpha-2 country code
city-<name>city-berlinCity, used with country. Residential only.
asn-<number>asn-3320Pin the autonomous system: a specific ISP or carrier
session-<id>session-job42_aSticky session. Any id you invent, letters, digits, underscore.
ip-<address>ip-203_0_113_44ISP only: address one specific IP from your allocation

Example, assembled: USER-country-br-city-sao_paulo-session-cart_19 means a São Paulo residential exit that holds for this session id.

Worksheet · Route composerbuilds the string per the spec above

Username

USER

port 7000sticky up to 30 minutestls end to end

§ 04 Sessions one identity per
session id

Sticky when you say so.

Without a session segment every request gets a fresh exit. With one, the exit holds: up to 30 minutes on residential. Reuse the id to keep the identity; change it to rotate deliberately. Run parallel identities by running parallel ids, one per logical visitor, which is how crawlers keep carts, logins and A/B cohorts from bleeding into each other.

If the device behind your session goes offline, the gateway replaces it from the same targeting scope and your id keeps working. Your code never learns the difference unless it checks the IP, which, for session-critical flows, it should.

BASE="http://USER-country-it-city-milan"
GATE="gate.proxynomad.com:7000"

curl -x "$BASE-session-visitor_a:PASS@$GATE" https://ifconfig.me
curl -x "$BASE-session-visitor_b:PASS@$GATE" https://ifconfig.me
# two stable Milan identities, one per session id
residential ≤ 30 min
rotate change the id
two identities, side by side
§ 05 The pattern that saves money first pass :7300
on block :7000

Datacenter first, residential on block.

The single most effective cost optimization in this business is a port number in your retry logic. Send everything through datacenter at $0.60/GB; only the requests that come back blocked pay residential rates on the second attempt. On mixed target lists the blended cost typically lands near the datacenter price while the success rate looks residential.

Tune the trigger to your targets: a 403 or 429 is unambiguous, but plenty of sites serve their block as a 200 with a challenge page or a suspiciously empty body. Match on what your parser failed to find, not only on status codes.

DC  = "http://USER-country-us:PASS@gate.proxynomad.com:7300"
RES = "http://USER-country-us:PASS@gate.proxynomad.com:7000"

def fetch(url):
    r = requests.get(url,
                     proxies={"http": DC, "https": DC},
                     timeout=30)
    if r.status_code in (403, 429) or looks_blocked(r):
        r = requests.get(url,
                         proxies={"http": RES, "https": RES},
                         timeout=60)
    return r
first pass :7300
on block :7000
datacenter $0.60/GB
tiered fetch, python
§ 06 Errors four codes from us
the rest is the target

What the gateway tells you.

ResponseMeaningWhat to do
407Credentials rejectedCheck username segments and password; test without targeting first
402Balance for this product is emptyTop up, or set the low-balance alert you skipped
502No healthy exit matched your targetingWiden targeting, or tell us: frequent 502 on a broad scope is our bug
504Exit accepted, then died before answeringRetry; it is already a different exit
Anything elseThe target speaking, delivered through the tunnelThat includes 403s and CAPTCHA pages: rotate, slow down, or move up a proxy tier
§ 07 Support

Stuck between step 2 and step 6?

That is what support is for, and here it is an engineer. Bring logs.

Put a real route under your next job.

Start pay as you go, or send us the target first and we will tell you honestly what it needs. Trials: enough traffic to test against production, no card required.