Developer guide
You connect to a gateway with a username and password. Everything else, such as country and session, is set in the username.
Connection details
After purchase, your dashboard shows the host, ports, username and password for each plan. In the examples below, replace PROXY_HOST with the host from your dashboard.
| Protocol | Port | Format |
|---|---|---|
| HTTP (also tunnels to HTTPS sites) | 8080 | http://USERNAME:PASSWORD@PROXY_HOST:8080 |
| SOCKS5 | 1080 | socks5://USERNAME:PASSWORD@PROXY_HOST:1080 |
Some tools want host:port:user:pass instead. It is the same four values, and the format converter translates lists.
Is there a customer API?
No REST API for customers exists at the moment. The proxies speak standard HTTP and SOCKS5, so no API is needed to use them. Plans, credentials and usage are handled in the dashboard.
Examples
Each example requests our IP endpoint through the proxy and prints the exit address.
cURL
export PROXY_USER="your-username"
export PROXY_PASS="your-password"
curl --proxy "http://PROXY_HOST:8080" \
--proxy-user "$PROXY_USER:$PROXY_PASS" \
"https://proxyron.com/api/tools/myip"Python
import os
import requests # pip install requests
user = os.environ["PROXY_USER"]
password = os.environ["PROXY_PASS"]
proxy = f"http://{user}:{password}@PROXY_HOST:8080"
response = requests.get(
"https://proxyron.com/api/tools/myip",
proxies={"http": proxy, "https": proxy},
timeout=30,
)
response.raise_for_status()
print(response.json())Node.js
// npm install undici
import { ProxyAgent, fetch } from "undici";
const credentials = `${process.env.PROXY_USER}:${process.env.PROXY_PASS}`;
const dispatcher = new ProxyAgent({
uri: "http://PROXY_HOST:8080",
token: "Basic " + Buffer.from(credentials).toString("base64"),
});
const response = await fetch("https://proxyron.com/api/tools/myip", { dispatcher });
if (!response.ok) throw new Error(`HTTP ${response.status}`);
console.log(await response.json());Targeting through the username
Append options to the username, separated by dashes. The password does not change. Your base username never contains a dash, because dashes mark options.
| Option | Example |
|---|---|
| Country | USERNAME-country-US |
| Several countries | USERNAME-country-US,DE,FR |
| State and city | USERNAME-country-DE-state-DEBAY21-city-MUN1 |
| ISP | USERNAME-country-DE-asn-3320 |
| Sticky session | USERNAME-country-US-session-ab12cd-time-10 |
- Use a location or an ISP, not both. Several countries cannot be combined with either.
- City codes are not unique within a country, so always send the state with the city.
- The dashboard lists state, city and ISP codes per country, and builds the username for you.
Rotation and sessions
Without a session, the IP rotates on every request. With -session-ab12cd-time-10, the same six-character ID (lowercase letters and digits) keeps the same IP for 10 minutes. Use a new ID to get a new IP. The dashboard accepts durations from 1 to 1440 minutes.
Handling errors
Treat a proxy like any network dependency: set timeouts, retry with a backoff, and expect that a sticky IP can disappear. If requests fail with an authentication error after a password reset, update the stored password, because a reset takes effect immediately. When a plan runs out of traffic or is paused, requests stop working until you top it up or resume it.
Tools
The code generator produces examples for your host and adds Playwright, the URL generator builds usernames with targeting, and My IP shows the address you are coming from.