x-api-key you use for verifications, including one
minted through x402. There is no separate product key and no separate signup.
Base path: https://virtualsms.io/api/v1/proxies
Two endpoints are public and need no key:
GET /api/v1/proxies/catalog and
GET /api/v1/proxies/locations. Everything else requires authentication.Catalog
public
Pool types and the countries each one serves.
residential, mobile and datacenter, always returned in that order. Cached for
10 minutes.
Locations
public
Cities, states, ASNs or ZIP codes available inside one country for one pool type.
400. Cached for 6 hours.
Buy a proxy
authenticated
Adds gigabytes to a proxy and returns the credentials to use it.
proxy_host + proxy_port is the HTTP endpoint; proxy_port_socks is the SOCKS5 endpoint. Use
proxy_login / proxy_password as the proxy credentials.
Idempotency
SendX-Idempotency-Key: <your-key> (it takes precedence over a body idempotency_key). If you
send neither, one is derived from your user id, pool type, gigabytes and country — so an
accidental duplicate of the same request will not double-charge you.
Errors
List your proxies
authenticated
Per-proxy operations
All five take the proxy id in the path and require authentication. A proxy you do not own returns404.
Usage
Usage history
7d and 30d are accepted; anything else returns 400. Cached for 10 minutes.
Rotate
Optional body{"port": 823} — omit it, or send 0, for the default port.
Targeting
country_code is required. premium_2x: true means the city/ASN targeting you asked for is
billed at double rate on this pool.
Test
This endpoint returns HTTP
200 even when the dial fails — check the ok field, not the status
code. A failure looks like { "ok": false, "error": "<reason>" }. There is a 20-second
cooldown per proxy; calling it sooner returns 429.Availability
If the proxy product is disabled for the deployment you are calling, every endpoint above except/locations returns:
503.