API para desenvolvedores (planos de IP)
Uma API REST compacta com respostas JSON: consulte planos, países e preços exatos sem chave, e verifique saldo ou compre planos com sua chave API. Todas as respostas incluem ok: true ou false.
- URL base
- https://proxyworld.cc/api/v1
- Autenticação
- Authorization: Bearer pwk_...
- Formato
- JSON over HTTPS
- Limite
- 300 requisições por minuto por chave
Endpoints
| Método | Caminho | Chave | Função |
|---|---|---|---|
| GET | /plans | Não | Todos os planos com preço unitário (30 dias), descontos por volume, quantidades mínima/máxima e países permitidos. |
| GET | /countries | Não | Os 24 países com linha regional, cidades e disponibilidade em nuvem. |
| GET | /price?plan=rotate-max&quantity=2&days=90 | Não | Total exato para um plano, quantidade e período (30, 90, 180 ou 360 dias). |
| GET | /balance | Sim | Saldo da conta em dólares americanos. |
| POST | /orders | Sim | Compre um plano usando saldo. Corpo: plano, quantidade, dias, país (para planos que exigem). |
| GET | /orders | Sim | Seus últimos 100 pedidos com status e detalhes de acesso. |
| GET | /orders/{id} | Sim | Um pedido pelo seu código (PO-...). |
Exemplos
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());Resposta para 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
}
}Um novo pedido inicia como processing e muda para active quando o serviço está pronto; access então contém o código de login (planos de app), a lista de proxies e usuário (planos de proxy) ou os endereços do Remote Desktop (PCs na nuvem). Consulte GET /orders/{id} a cada alguns segundos até a mudança.
Erros
| HTTP | erro | Significado |
|---|---|---|
| 400 | bad_plan, bad_qty, bad_days, bad_country | A solicitação é verificada antes de qualquer cobrança. |
| 401 | unauthorized | Envie o cabeçalho Authorization: Bearer pwk_... |
| 402 | funds | O saldo é menor que o preço; a resposta inclui 'need', o valor faltante. Nada é cobrado. |
| 429 | rate_limited | Mais de 300 solicitações em um minuto com uma chave. |
| 503 | network | O serviço não pôde ser configurado agora; nada é cobrado. Tente novamente mais tarde. |
Crie ou substitua sua chave no console em API. A chave é exibida uma vez e armazenada apenas como um hash; substituí-la desativa a chave antiga imediatamente.