Proxy API for developers & AI agents

Everything on NanProxy can be done over a small REST API. There is no API key or account: an order is accessed with the secret token returned when it is created.

Base URL: https://api.nanproxy.com · OpenAPI spec · llms.txt

1. Choose a product and get a price

curl "https://api.nanproxy.com/catalog"
curl "https://api.nanproxy.com/price?product=ipv4&count=1&period=7&country=us"

Products: ipv4, ipv6, ipv4-shared, mtproto. Periods (days): 7, 14, 30, 60, 90, plus 3 for ipv6 (see products[].periods in /catalog).

2. Create the order

curl -X POST "https://api.nanproxy.com/buy" \
  -H "Content-Type: application/json" \
  -d '{"product":"ipv4","country":"us","period":7,"count":1,"type":"socks","payinCurrency":"XNO"}'

The response contains token (shown only once, store it), priceUsd and payment with payinAddress, payinAmount, payinCurrency and paymentLink. Supported tickers come from GET /payin-currencies (e.g. XNO, BTC, USDT-TRX, USDC-BASE, NANUSD).

3. Pay

Send exactly payinAmount of payinCurrency to payinAddress before expireAt. Or open paymentLink in a browser.

4. Get the credentials

curl "https://api.nanproxy.com/order" -H "Authorization: Bearer np_..."

Poll every ~10 seconds. When status is active, proxies[] contains host, port, user, pass and expiresAt.

5. Extend before expiry

curl -X POST "https://api.nanproxy.com/extend" \
  -H "Authorization: Bearer np_..." -H "Content-Type: application/json" \
  -d '{"period":30,"payinCurrency":"XNO"}'

Pay the returned payment the same way. All proxies of the order keep their IPs and credentials.

Errors & limits

Errors return {"error": "message"} with status 400 (invalid input), 401 (bad token), 409 (no stock / not extendable), 429 (too many orders) or 503.