HProxy/ docs

Using your proxies

List your plans

GET /v1/plans returns the active plans you own — the result of your completed orders, with remaining data.

GET /v1/plans
{
  "plans": [
    {
      "id": "cmjfabc...",
      "product": "RESIDENTIAL_STANDARD",
      "dataGbTotal": 5,
      "dataGbRemaining": 4.98,
      "expiresAt": null,
      "createdAt": "2026-06-30T12:00:00.000Z"
    }
  ]
}

Generate proxy lines

POST /v1/plans/{id}/generate returns ready-to-connect lines for one of your plans, in host:port:user:pass form. Every targeting field is optional.

bash
curl -X POST https://hproxy.com/v1/plans/cmjfabc.../generate \
  -H "X-API-Key: hpx_xxxxxxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{ "count": 3, "protocol": "http", "country": "US", "stickyMinutes": 10 }'

Body parameters

countnumberHow many lines to return (default 1).
protocol"http" | "socks5"Defaults to "http".
countrystringExit country (e.g. US). Letters only.
state / citystringFiner geo-targeting where the product supports it.
ispstringISP targeting (Survey residential).
stickyMinutesnumberKeep the same exit IP for this many minutes. 0 = rotating.
Targeting is validated against a strict character set. A field the product doesn't support (e.g. ISP targeting on a Basic plan) is **rejected with a clear 400**, never silently dropped — so you always get what you asked for, or a reason why not.
Generating lines doesn't consume data — you're billed by what you route through them. The credentials are yours; keep them safe.
Was this helpful?