API Reference
Programmatically manage proxies, orders, and deposits. The 1001Proxy API is a REST API with JSON request and response bodies, standard HTTP status codes, and Bearer token authentication.
Quick Start
1. Get your API key
Sign in to your dashboard and navigate to Dashboard → API Keys. Create a new key or copy your existing one.
2. Base URL
All API requests use this base URL:
https://api.1001proxy.io/api/v13. Make your first request
Verify your API key by fetching your account details:
curl -H "Authorization: Bearer YOUR_API_KEY" \
https://api.1001proxy.io/api/v1/accountAuthentication
All API requests must include your API key in the Authorization header as a Bearer token:
Authorization: Bearer YOUR_API_KEYExample
curl -H "Authorization: Bearer sk_live_abc123def456" \
https://api.1001proxy.io/api/v1/accountRate Limiting
To ensure fair usage, the API enforces rate limits per API key:
| Scope | Limit |
|---|---|
| General requests | 60 / minute |
| Order creation (POST /orders) | 10 / minute |
When you exceed a rate limit, the API responds with 429 Too Many Requests and includes a Retry-After header indicating how many seconds to wait before retrying.
HTTP/1.1 429 Too Many Requests
Retry-After: 12
Content-Type: application/json
{ "error": "Rate limit exceeded. Retry after 12 seconds." }Error Codes
| Status | Meaning | Example |
|---|---|---|
| 400 | Bad Request | Missing or invalid parameters |
| 401 | Unauthorized | Missing or invalid API key |
| 402 | Insufficient Funds | Account balance too low for this order |
| 403 | Forbidden | API key does not have access to this resource |
| 404 | Not Found | The requested resource does not exist |
| 429 | Rate Limited | Too many requests — see Retry-After header |
| 502 | Upstream Error | Proxy provider returned an error |
Account
/api/v1/accountRetrieve your account details including balance and email.
curl -H "Authorization: Bearer YOUR_API_KEY" \
https://api.1001proxy.io/api/v1/account/api/v1/account/transactionsList your recent balance transactions (deposits, charges, refunds).
Path / Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| page | number | optional | Page number (default 1) |
| limit | number | optional | Items per page (default 20, max 100) |
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://api.1001proxy.io/api/v1/account/transactions?limit=10"Orders
/api/v1/orders/calcCalculate the price of an order before placing it.
Request Body
| Name | Type | Required | Description |
|---|---|---|---|
| type | string | required | Proxy type: residential, datacenter, isp, mobile, ipv6 |
| quantity | number | required | Amount (GB for residential, IPs for others) |
| period | number | optional | Duration in days (datacenter/isp/mobile) |
| country | string | optional | ISO country code |
curl -X POST -H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"type":"residential","quantity":5,"country":"US"}' \
https://api.1001proxy.io/api/v1/orders/calc/api/v1/ordersPlace a new proxy order. Funds are deducted from your balance.
Request Body
| Name | Type | Required | Description |
|---|---|---|---|
| type | string | required | Proxy type: residential, datacenter, isp, mobile, ipv6 |
| quantity | number | required | Amount (GB for residential, IPs for others) |
| period | number | optional | Duration in days |
| country | string | optional | ISO country code |
curl -X POST -H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"type":"residential","quantity":5,"country":"US"}' \
https://api.1001proxy.io/api/v1/orders/api/v1/ordersList all your orders with optional filtering.
Path / Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| page | number | optional | Page number (default 1) |
| limit | number | optional | Items per page (default 20, max 100) |
| type | string | optional | Filter by proxy type |
| status | string | optional | Filter by status: active, expired, cancelled |
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://api.1001proxy.io/api/v1/orders?status=active&limit=10"/api/v1/orders/:idGet details of a specific order.
Path / Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | required | Order ID |
curl -H "Authorization: Bearer YOUR_API_KEY" \
https://api.1001proxy.io/api/v1/orders/ord_abc123/api/v1/orders/:id/proxiesGet the proxy list (IPs, ports, credentials) for an order.
Path / Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | required | Order ID |
curl -H "Authorization: Bearer YOUR_API_KEY" \
https://api.1001proxy.io/api/v1/orders/ord_abc123/proxies/api/v1/orders/:id/downloadDownload the proxy list as a text file.
Path / Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | required | Order ID |
| format | string | optional | Format: txt (default), csv, json |
curl -H "Authorization: Bearer YOUR_API_KEY" \
"https://api.1001proxy.io/api/v1/orders/ord_abc123/download?format=txt"/api/v1/orders/:id/extendExtend an active order's duration. Charges your balance.
Path / Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| id | string | required | Order ID |
Request Body
| Name | Type | Required | Description |
|---|---|---|---|
| period | number | required | Additional days to extend |
curl -X POST -H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"period":30}' \
https://api.1001proxy.io/api/v1/orders/ord_abc123/extendReference Data
/api/v1/reference/:typeGet reference data for countries, proxy types, or periods. Use this to populate forms.
Path / Query Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| type | string | required | One of: countries, proxy-types, periods |
curl -H "Authorization: Bearer YOUR_API_KEY" \
https://api.1001proxy.io/api/v1/reference/countriesDeposits
/api/v1/deposits/addressesList your existing deposit wallet addresses.
curl -H "Authorization: Bearer YOUR_API_KEY" \
https://api.1001proxy.io/api/v1/deposits/addresses/api/v1/deposits/addressesGenerate a new crypto deposit address for a given currency.
Request Body
| Name | Type | Required | Description |
|---|---|---|---|
| currency | string | required | Currency code: BTC, ETH, USDT, LTC |
| network | string | optional | Network (e.g. ERC20, TRC20 for USDT) |
curl -X POST -H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"currency":"BTC"}' \
https://api.1001proxy.io/api/v1/deposits/addresses