Getting Started
Create an API key in the Proxio dashboard, verify it with GET /account, and generate your first proxy list, with copy-paste examples in cURL, Python, and Node.js.
This page takes you from zero to your first working API call. You'll create a
key in the dashboard, confirm it with a GET /account request, and then pull
a ready-to-use proxy list, all in cURL, Python, and Node.js.
The base URL for every request is https://dashboard.proxio.net/api/v1. Endpoint
paths like /account are relative to it.
Create an API key
In the dashboard, go to Settings → API Keys and create a new key. Pick a preset that matches what the key will do:
- Read-only (
read) for dashboards and monitoring. - Automation (
read,write) to also manage credentials, whitelists, sessions, and webhooks. - Full (
read,write,purchase) to also place orders and renewals that spend from your wallet.
The full key is shown once, at creation time. Copy it immediately and store
it in a secret manager, it starts with pxo_ and cannot be retrieved again. If
you lose it, revoke it and create a new one.
Treat the key like a password
Anyone with your pxo_… key can act as your account within its scopes. Never
commit it to source control or paste it into a browser. For extra safety, set
an IP allowlist on the key.
Verify the key
Call GET /account with your key in the Authorization header. A 200
confirms the key is valid and shows your profile, wallet balance, and service
totals.
curl https://dashboard.proxio.net/api/v1/account \
-H "Authorization: Bearer pxo_9fJ2kQ7xR4mN8pL1dW6vB3cH5tZ0aYqS7dK2mN9x"# pip install requests
import requests
BASE = "https://dashboard.proxio.net/api/v1"
API_KEY = "pxo_9fJ2kQ7xR4mN8pL1dW6vB3cH5tZ0aYqS7dK2mN9x"
resp = requests.get(
f"{BASE}/account",
headers={"Authorization": f"Bearer {API_KEY}"},
timeout=15,
)
resp.raise_for_status()
print(resp.json()["data"])// Node 18+ has global fetch, no dependencies needed.
const BASE = "https://dashboard.proxio.net/api/v1"
const API_KEY = "pxo_9fJ2kQ7xR4mN8pL1dW6vB3cH5tZ0aYqS7dK2mN9x"
const res = await fetch(`${BASE}/account`, {
headers: { Authorization: `Bearer ${API_KEY}` },
})
if (!res.ok) throw new Error(`HTTP ${res.status}`)
const { data } = await res.json()
console.log(data)200 response:
{
"data": {
"user": { "id": "clx_9a2f", "email": "[email protected]", "created_at": "2026-01-02T10:00:00.000Z" },
"wallet": { "currency": "USD", "balance": "42.50" },
"totals": { "active_services": 3, "total_services": 7, "active_credentials": 5 }
},
"meta": { "request_id": "req_8Ke2jP4mQ" }
}Find a service
The API calls a package a service. List yours to grab an id to work with:
curl "https://dashboard.proxio.net/api/v1/services?status=active&limit=5" \
-H "Authorization: Bearer pxo_9fJ2kQ7xR4mN8pL1dW6vB3cH5tZ0aYqS7dK2mN9x"import requests
BASE = "https://dashboard.proxio.net/api/v1"
API_KEY = "pxo_9fJ2kQ7xR4mN8pL1dW6vB3cH5tZ0aYqS7dK2mN9x"
resp = requests.get(
f"{BASE}/services",
headers={"Authorization": f"Bearer {API_KEY}"},
params={"status": "active", "limit": 5},
timeout=15,
)
resp.raise_for_status()
services = resp.json()["data"]
print(services[0]["id"], services[0]["category"])const BASE = "https://dashboard.proxio.net/api/v1"
const API_KEY = "pxo_9fJ2kQ7xR4mN8pL1dW6vB3cH5tZ0aYqS7dK2mN9x"
const res = await fetch(`${BASE}/services?status=active&limit=5`, {
headers: { Authorization: `Bearer ${API_KEY}` },
})
const { data } = await res.json()
console.log(data[0].id, data[0].category)Copy the id of a RESIDENTIAL service for the next step. See
Services for the full list and detail shapes.
Generate your first proxy list
Ask the service for ten ready-to-use proxy lines. Targeting is embedded directly
in the username, so each line is paste-ready, no separate configuration.
session=sticky pins each line to one IP, which makes the session segments
visible in the output below.
curl "https://dashboard.proxio.net/api/v1/services/clpkg_2a9x/proxy-list?count=10&country=us&session=sticky&format=txt" \
-H "Authorization: Bearer pxo_9fJ2kQ7xR4mN8pL1dW6vB3cH5tZ0aYqS7dK2mN9x"import requests
BASE = "https://dashboard.proxio.net/api/v1"
API_KEY = "pxo_9fJ2kQ7xR4mN8pL1dW6vB3cH5tZ0aYqS7dK2mN9x"
SERVICE_ID = "clpkg_2a9x"
resp = requests.get(
f"{BASE}/services/{SERVICE_ID}/proxy-list",
headers={"Authorization": f"Bearer {API_KEY}"},
params={"count": 10, "country": "us", "session": "sticky", "format": "txt"},
timeout=15,
)
resp.raise_for_status()
print(resp.text)const BASE = "https://dashboard.proxio.net/api/v1"
const API_KEY = "pxo_9fJ2kQ7xR4mN8pL1dW6vB3cH5tZ0aYqS7dK2mN9x"
const SERVICE_ID = "clpkg_2a9x"
const res = await fetch(
`${BASE}/services/${SERVICE_ID}/proxy-list?count=10&country=us&session=sticky&format=txt`,
{ headers: { Authorization: `Bearer ${API_KEY}` } },
)
console.log(await res.text())200 response (text/plain):
abc123xyz-region-us-sessid-k3n8f2p9q1ab1-sesstime-10:[email protected]:16666
abc123xyz-region-us-sessid-m7b2c4d6e8fg2-sesstime-10:[email protected]:16666Each line is username:password@host:port, ready to drop into any HTTP client.
The Proxy List page covers the full username grammar,
every query parameter, and recipes like "1000 sticky US sessions for 30 minutes".
Where next
Proxio API
The Proxio REST API gives you one base URL, one auth scheme, one response envelope, cursor pagination, idempotent writes, signed webhooks, and an OpenAPI 3.1 document. Manage services, credentials, usage, orders, and proxy lists programmatically.
Authentication
Authenticate to the Proxio API with a single Bearer key. Learn the pxo_ key format, the read / write / purchase scopes, per-key IP allowlists, expiry, and how to rotate keys safely.

