Drop into your code
Same username string works in every language and every proxy-aware library. Copy whichever fits your stack.
Python · requests
python
import requests
PROXY = "http://psx_YOUR_ID-mbl-us:YOUR_PROXY_PASSWORD@gw.proxies.sx:7000"
proxies = {"http": PROXY, "https": PROXY}
r = requests.get("https://api.ipify.org?format=json", proxies=proxies, timeout=30)
print(r.json())Node.js · Playwright
javascript
// Playwright with proxy
import { chromium } from 'playwright';
const browser = await chromium.launch({
proxy: {
server: 'http://gw.proxies.sx:7000',
username: 'psx_YOUR_ID-mbl-us',
password: 'YOUR_PROXY_PASSWORD',
},
});Multi-account loop · sticky session per account
python
# 100 separate accounts, each on its own consistent IP
import requests, secrets
for account_id in range(100):
sid = f"acct{account_id:03d}_{secrets.token_hex(4)}"
proxy = f"http://psx_YOUR_ID-mbl-us-sid-{sid}:YOUR_PROXY_PASSWORD@gw.proxies.sx:7000"
proxies = {"http": proxy, "https": proxy}
# ... use proxies for this account's session ...Token reference
The full vocabulary. Mix and match — order matters only for required tokens (account, pool, country). Optional tokens come after, in any order.
Required (in order)
| Position | Token | Values |
|---|---|---|
| 1 | account | psx_* |
| 2 | pool | mbl · peer · any · best |
| 3 | country | us · gb · de · fr · es |
Optional (any order, after required)
| Token | Value | What it does |
|---|---|---|
| -sid-<id> | 8–64 · [a-z0-9_] | Sticky session · same IP for the session |
| -rot-<mode> | auto5 · auto10 · auto20 · auto60 · sticky · hard | Rotation policy |
| -carrier-<name> | tmobile · vodafone · ee · orange · … | Carrier targeting |
| -city-<name> | newyork · london · berlin · … | City-level targeting |
| -failover-<policy> | any · samecountry · samecarrier · strict | What to do when modem drops mid-session |
| -ttl-<sec> | 60 – 86400 | Session time-to-live in seconds |
Common patterns
| Use case | Username pattern |
|---|---|
| Web scraping · auto-rotate every 10 min | psx_X-mbl-us-rot-auto10 |
| Sneaker drop · fresh IP per checkout | psx_X-mbl-us-rot-hard |
| Multi-account · one IP per account | psx_X-mbl-us-sid-acct042 |
| SERP tracking · NYC T-Mobile | psx_X-mbl-us-city-newyork-carrier-tmobile |
| Ad verification · London EE | psx_X-mbl-gb-city-london-carrier-ee |
| Crawler · German rotating per request | psx_X-mbl-de-rot-hard |
| Long-running session · 1 hour TTL | psx_X-mbl-fr-sid-job1-ttl-3600 |
| Strict failover · same carrier only | psx_X-mbl-es-carrier-vodafone-failover-samecarrier |
FAQ
Where do I get my account ID and password?▾
Sign in to client.proxies.sx and copy the psx_ account ID + proxy password from your dashboard. Both are needed to authenticate.
What's the difference between Random and Sticky session?▾
Random gets a new endpoint per connection (best for stateless scraping). Sticky pins all connections sharing the same sid to the same modem (best for multi-step browsing or one-IP-per-account).
Why are sticky session IDs validated?▾
Common values like "test", "demo", "user", "admin", and sequential numbers are rejected so two customers don't accidentally collide on the same session. Pick something random per account.
Can I combine carrier + city + sticky + rotation?▾
Yes. The tokens compose freely. Example: psx_X-mbl-us-city-newyork-carrier-tmobile-sid-job42-rot-sticky = a NYC T-Mobile IP that stays the same for the duration of the session.
What if my chosen city or carrier has no online modems?▾
The gateway falls back according to your failover policy. Default is samecountry. Set strict if you want a 502 error instead of a fallback.
Does this work with Playwright / Puppeteer / Selenium?▾
Yes — they all accept standard HTTP/SOCKS5 proxy auth. Pass the username + password as proxy credentials and you're done.
How fast does it switch when I change the username?▾
Instant. There's no provisioning lag — the gateway parses your username on every connection and routes accordingly. You can change country/carrier/rotation per request if you want.
next step
Generate a string above, paste it into curl, see a real mobile IP.
The Pool Gateway routes through real T-Mobile, Vodafone, EE, Orange, and Telefónica modems. Pay only for the GB you actually use.