Residential proxies
Rotating residential proxies
Connect over HTTP or SOCKS5 with one credential, and change the residential IP behind it on demand.
How it works
A key is a stable token and secret pair. You use them as the proxy username and password. The gateway address never changes; what changes is the Vietnamese residential IP your traffic egresses from.
That is the one way this differs from most rotate-key vendors, and it works in your favour: there is no need to re-read an endpoint after every rotation, and no window where your client is pointed at an address that has already moved on.
Connect
curl -x http://TOKEN:SECRET@proxy.hoangha.shop:8080 https://api.ipify.orgcurl --socks5-hostname TOKEN:SECRET@proxy.hoangha.shop:1080 https://api.ipify.orgFor a GUI client, enter the host and port separately with TOKEN as the username and SECRET as the password. Both are shown on your /proxies dashboard, along with ready-to-paste snippets.
Rotate the IP
/api/v1/rotateChanges the residential IP behind your key and returns the new one. Rate-limited to one rotation per 60 seconds; a call inside that window returns 429 with a Retry-After header rather than silently doing nothing.
| Field | Type | Description |
|---|---|---|
| key | string | Your credentials as token:secret. Alternatively pass token and secret separately. |
| checkOnly | boolean | Report the current IP without rotating. Costs nothing against the 60s floor. |
| protocol | string | http (default) or socks5. Selects which endpoint the response advertises. |
curl "https://proxy.hoangha.shop/api/v1/rotate?key=hp_AbC123:s3cr3t"{
"status": "success",
"proxy": "proxy.hoangha.shop:8080:hp_AbC123:s3cr3t",
"host": "proxy.hoangha.shop",
"port": 8080,
"username": "hp_AbC123",
"password": "s3cr3t",
"protocol": "http",
"location": "vn",
"publicIp": "113.161.44.19",
"timeRemaining": 1800,
"nextChangeAt": "2026-08-01T10:30:00+00:00",
"expiredAt": "2026-08-02T09:00:00+00:00",
"rotateCount": 3,
"nextRotateAt": "2026-08-01T10:01:00+00:00"
}timeRemaining is the seconds until this IP rotates by itself. nextRotateAt is when you are allowed to rotate manually again. They answer different questions and are both reported so you never have to guess.Read the current IP
/api/v1/currentIdentical to /api/v1/rotate?checkOnly=true. Use it to confirm which IP you are on without spending a rotation.
curl "https://proxy.hoangha.shop/api/v1/current?key=hp_AbC123:s3cr3t"Rotating vs sticky
A rotating key changes its IP by itself every 30 minutes, on top of any rotation you trigger. Use it when you want a spread of addresses and do not care which one a given request goes out on.
A sticky key holds one IP until you rotate it deliberately, the key expires, or the underlying line redials. Use it when something on the other end ties a session to an address: a login, a cart, a multi-step flow. The rotate endpoint still works on a sticky key, so you keep manual control; only the timer is off.
/api/v1/current if your flow depends on the exact address.Key lifecycle
- Keys are sold by the day. A key stops resolving at its expiry and its IP returns to the pool.
- Renew in place from the dashboard for up to 7 days after expiry. The token and secret do not change, so nothing needs re-pasting into your clients.
- Past that window, renewal is refused and you buy a fresh key.
- Left idle, a key rotates itself every 30 minutes. You never sit on a stale IP.
Errors
| Field | Type | Description |
|---|---|---|
| 407 | Proxy Auth Required | Unknown key, wrong secret, expired, or revoked. Check the credentials and the expiry on your dashboard. |
| 429 | Too Many Requests | A rotation inside the 60s floor, or too many API calls from one address. Honour Retry-After. |
| 502 | Bad Gateway | The assigned residential line could not be reached. Rotate to move to another IP. |
| 503 | Service Unavailable | Your key is valid but has no IP assigned yet, or the per-key connection ceiling (200) is reached. |
Limits
| Field | Type | Description |
|---|---|---|
| Concurrent connections | 200 | Per key. Further connections are refused with 503 until one closes. |
| Bandwidth | unmetered | Traffic is measured and shown on your dashboard, but not billed or capped. |
| Minimum between rotations | 60s | Enforced by the upstream line provider, not by us. |
| Automatic rotation | 30 min | Roughly how long a residential IP lives before the ISP reassigns it anyway. |
Acceptable use and logging
These are real Vietnamese fibre lines registered to us. Everything you send leaves from an address traceable to our company, so what you do with a key is our problem too, and we keep records accordingly.
For every connection we record the time, your key, your source address, the egress IP it left from, the destination hostname and port, and the number of bytes. We do not record URLs, paths, query strings, headers or any content, and we could not produce them if asked. Records are kept for 24 months and then deleted.
403 (HTTP) or reply code 0x02 (SOCKS5). Gambling is illegal to operate or facilitate in Vietnam.