API Documentation
Getting Started
The ZProxies API allows you to programmatically manage your proxy orders, zones, and servers. All API requests require authentication using your API key.
Base URL: https://zproxies.com/api
Authentication: Include your API key in the request headers using either:
Authorization: Bearer YOUR_API_KEYX-API-Key: YOUR_API_KEY
Security: Never share your API key publicly or commit it to version control. Generate a new key from your account page if compromised.
/api/zones
Get list of available zones/locations for ordering proxies.
Query Parameters
| Parameter | Type | Description |
|---|---|---|
order_type |
string | Filter by order type (IPv6c, IPv4r, etc.) |
enabled_only |
boolean | Only show enabled zones (default: true) |
curl -X GET "https://zproxies.com/api/zones" \
-H "Authorization: Bearer YOUR_API_KEY"
/api/orders
Get list of your orders.
Query Parameters
| Parameter | Type | Description |
|---|---|---|
status |
string | Filter by status (Active, expired, cancelled) |
limit |
integer | Number of results (default: 100, max: 1000) |
offset |
integer | Pagination offset (default: 0) |
curl -X GET "https://zproxies.com/api/orders?status=Active&limit=10" \
-H "Authorization: Bearer YOUR_API_KEY"
/api/orders/{id}
Get detailed information about a specific order including proxy list.
curl -X GET "https://zproxies.com/api/orders/123" \
-H "Authorization: Bearer YOUR_API_KEY"
/api/orders/calculate-price
Calculate the price for an IPv6 proxy order before creating an invoice.
Request Body (JSON)
| Field | Type | Description |
|---|---|---|
quantity |
integer | IPv6 proxy count, minimum 50 and maximum 2000 |
zone_id |
integer | Zone/location ID |
coupon |
string | Optional coupon code |
curl -X POST "https://zproxies.com/api/orders/calculate-price" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"zone_id": 1, "quantity": 50}'
/api/orders/new
Create an IPv6 proxy order invoice. By default the API tries to pay from your account balance. Add funds first if your balance is not enough.
Order invoices are paid with account balance only. Card or crypto payments should be used to top up balance, not to pay order invoices directly.
Request Body (JSON)
| Field | Type | Description |
|---|---|---|
quantity |
integer | IPv6 proxy count, minimum 50 and maximum 2000 |
zone_id |
integer | Zone/location ID |
auto_pay |
boolean | Default true. If false, creates a pending invoice only. |
whitelist |
string | Optional comma-separated IP whitelist, maximum 3 IPs |
curl -X POST "https://zproxies.com/api/orders/new" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"zone_id": 1, "quantity": 50, "auto_pay": true}'
/api/invoices/{id}/pay
Pay a pending, partial, or overdue order invoice from account balance. If setup needs staff attention, the invoice stays paid and the response status is paid_setup_required.
curl -X POST "https://zproxies.com/api/invoices/123/pay" \
-H "Authorization: Bearer YOUR_API_KEY"
/api/orders/{id}/renew
Renew an active or suspended order using account balance.
curl -X POST "https://zproxies.com/api/orders/123/renew" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"coupon": "SAVE10"}'
/api/orders/{id}/whitelist
Add an IP address to order whitelist.
Request Body (JSON)
| Field | Type | Description |
|---|---|---|
ip |
string | IP address to add (required) |
curl -X POST "https://zproxies.com/api/orders/123/whitelist" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"ip": "203.0.113.1"}'
/api/orders/{id}/whitelist
Remove an IP address from order whitelist.
Request Body (JSON)
| Field | Type | Description |
|---|---|---|
ip |
string | IP address to remove (required) |
curl -X DELETE "https://zproxies.com/api/orders/123/whitelist" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"ip": "203.0.113.1"}'
/api/servers
Get list of available servers.
Query Parameters
| Parameter | Type | Description |
|---|---|---|
zone_id |
integer | Filter by zone ID |
enabled_only |
boolean | Only show enabled servers (default: true) |
curl -X GET "https://zproxies.com/api/servers?zone_id=1" \
-H "Authorization: Bearer YOUR_API_KEY"
Order management
These endpoints manage an existing order. Replace {id} with the numeric order ID.
curl -H "Authorization: Bearer YOUR_API_KEY" https://zproxies.com/api/user/profile{"auto_renew": true} to set it explicitly.format: ip:port, ip:port:user:pass, or user:pass@ip:port.curl -X POST "https://zproxies.com/api/orders/123/auto-renew" \
-H "Authorization: Bearer YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"auto_renew": true}'Error Responses
All API endpoints return JSON responses with error information when requests fail:
401 Unauthorized
{
"error": true,
"message": "Authentication required"
}
403 Forbidden
{
"error": true,
"message": "Account disabled"
}
404 Not Found
{
"error": true,
"message": "Order not found"
}
500 Internal Server Error
{
"error": true,
"message": "Failed to retrieve orders"
}
Rate Limiting
API requests are rate limited to prevent abuse:
- 10,000 requests per day
- 1,000 requests per hour
If you exceed the rate limit, you'll receive a 429 Too Many Requests response.
Need Help?
If you have questions about the API or need assistance, please open a support ticket or contact our support team.