API para desarrolladores de planes de IP
Una pequeña API REST con respuestas JSON: consulta planes, países y precios exactos sin una clave, y verifica el saldo y compra planes con tu clave API. Cada respuesta tiene ok: true o false.
- URL base
- https://proxyworld.cc/api/v1
- Autenticación
- Authorization: Bearer pwk_...
- Formato
- JSON over HTTPS
- Límite
- 300 solicitudes por minuto por clave
Endpoints
| Método | Ruta | Clave | Qué hace |
|---|---|---|---|
| GET | /plans | No | Todos los planes con precio unitario por 30 días, precios por volumen, cantidad mínima y máxima y países permitidos. |
| GET | /countries | No | Los 24 países con línea regional, ciudades y disponibilidad en la nube. |
| GET | /price?plan=rotate-max&quantity=2&days=90 | No | Total exacto para un plan, cantidad y período (30, 90, 180 o 360 días). |
| GET | /balance | Sí | Saldo en la cuenta en dólares estadounidenses. |
| POST | /orders | Sí | Compra un plan con saldo. Cuerpo: plan, cantidad, días, país (para planes que lo requieren). |
| GET | /orders | Sí | Tus últimos 100 pedidos con estado y detalles de acceso. |
| GET | /orders/{id} | Sí | Un pedido por su código (PO-...). |
Ejemplos
cURL
curl -s https://proxyworld.cc/api/v1/price?plan=static-ip\&quantity=10\&days=30
curl -s -X POST https://proxyworld.cc/api/v1/orders \
-H "Authorization: Bearer pwk_YOUR_KEY" \
-H "Content-Type: application/json" \
-d '{"plan":"static-ip","quantity":10,"days":30,"country":"DE"}'Python
import requests
KEY = "pwk_YOUR_KEY"
r = requests.post("https://proxyworld.cc/api/v1/orders",
headers={"Authorization": f"Bearer {KEY}"},
json={"plan": "rotate-max", "quantity": 2, "days": 90})
print(r.status_code, r.json())Node.js
const r = await fetch("https://proxyworld.cc/api/v1/orders", {
method: "POST",
headers: { Authorization: "Bearer pwk_YOUR_KEY", "Content-Type": "application/json" },
body: JSON.stringify({ plan: "cloud-pc-b", quantity: 2, days: 30, country: "NL" }),
});
console.log(r.status, await r.json());Respuesta a POST /orders
{
"ok": true,
"order": {
"id": "PO-7KQ2M9XHTA",
"product": "static",
"plan": "static-ip",
"quantity": 10,
"days": 30,
"country": "DE",
"price": "40.20",
"status": "processing",
"status_text": "Setting up",
"created_at": "2026-11-05T09:00:00.000Z",
"active_at": null,
"ends_at": null,
"access": null
}
}Un nuevo pedido comienza como procesamiento y se vuelve activo cuando el servicio está listo; el acceso luego contiene el código de inicio de sesión (planes de aplicación), la lista de proxies y usuario (planes de proxy) o las direcciones de Escritorio Remoto (PCs en la nube). Consulta GET /orders/{id} cada pocos segundos hasta que cambie.
Errores
| HTTP | error | Significado |
|---|---|---|
| 400 | bad_plan, bad_qty, bad_days, bad_country | La solicitud se verifica antes de cargar cualquier cosa. |
| 401 | unauthorized | Envía el encabezado Authorization: Bearer pwk_... |
| 402 | funds | El saldo es menor que el precio; la respuesta incluye need, la cantidad faltante. No se carga nada. |
| 429 | rate_limited | Más de 300 solicitudes en un minuto con una misma clave. |
| 503 | network | El servicio no pudo configurarse en este momento; no se carga nada. Inténtalo de nuevo más tarde. |
Crea o reemplaza tu clave en la consola bajo API. La clave se muestra una vez y se almacena solo como un hash; reemplazarla detiene la clave antigua de inmediato.