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_KEY
  • X-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.

GET

/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"
GET

/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"
GET

/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"
POST

/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}'
POST

/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}'
POST

/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"
POST

/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"}'
POST

/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"}'
DELETE

/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"}'
GET

/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.

GET /api/user/profile — Return the authenticated customer profile and account information.
curl -H "Authorization: Bearer YOUR_API_KEY" https://zproxies.com/api/user/profile
POST /api/orders/{id}/auto-renew — Toggle auto-renew, or send {"auto_renew": true} to set it explicitly.
POST /api/orders/{id}/reset-ips — Request new IPv6 addresses when the order is active and its reset cooldown has elapsed.
POST /api/orders/{id}/regenerate-password — Generate a new proxy authentication password for an active password-authenticated order.
GET /api/orders/{id}/download — Download the proxy list. Optional format: ip:port, ip:port:user:pass, or user:pass@ip:port.
POST /api/orders/{id}/release — Release an order and its proxy resources. This action cannot be undone.
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.