Orders
Orders are how you buy traffic (residential / mobile) or ISP batches. Different products use different sub-resources; both share the /orders envelope.
Common shape
curl -X POST -H "Authorization: Bearer API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: order-2026-05-28-001" \
-d '{ "product": "residential", "gb": 50 }' \
https://api.helodata.com/v1/ordersResponse:
{
"id": "ord_01HX2K3PQ4M5",
"product": "residential",
"status": "completed",
"total_usd": 225.00,
"details": { "gb": 50, "price_per_gb": 4.50 },
"created_at": "2026-05-28T10:00:00Z"
}Residential / Mobile (bandwidth)
Bandwidth is added to your sub-user pool immediately. Traffic is consumed across all sub-users of that product.
ISP batches
ISP orders create a batch — a dedicated set of static IPs.
Returns the order envelope plus a batch_id you'll use to manage the IPs:
status transitions: provisioning → completed (typically 1–5 min, up to 24h for long-tail countries).
ISP batch lifecycle
GET
/isp/batches
List batches
GET
/isp/batches/{id}
Get one batch
GET
/isp/batches/{id}/ips?format=plain|csv|json
Download IPs
POST
/isp/batches/{id}/refresh
Refresh all IPs in batch (once per period)
POST
/isp/batches/{id}/renew
Extend billing period
POST
/isp/batches/{id}/rotate-password
Change batch password
DELETE
/isp/batches/{id}
Release the entire batch
POST
/isp/ips/{ip_id}/replace
Replace one bad IP
List
Replace one IP
Free up to 14 days from purchase; afterwards 10% of batch per period is free. See IP management.
Renew
Inventory check (before ordering)
Returns available quantity, cities, and pricing per ASN.
Errors
409
insufficient_balance
Account balance can't cover the order
409
kyc_required
Account is under a risk review; complete KYC to proceed (not required by default)
422
insufficient_inventory
Not enough IPs in the requested geo/ASN
422
quantity_out_of_range
Quantity below 5 or above 5000
Last updated
Was this helpful?