Buy and manage IP
Lifecycle endpoints for working with proxies on the account. Same set of operations works for all four proxy types (ipv4, ipv6, isp, mobile) with minor per-type quirks called out in each section.
Concepts
proxyType. Always one of ipv4, ipv6, isp, mobile. Required in every request as either a query parameter or a body field.
id vs orderId. Most types address proxies individually by id. IPv6 is the exception — IPv6 proxies are bought, listed, and renewed by orderId, because every IPv6 order is treated as an indivisible group.
mobile-only fields. Mobile proxies have a few extra concepts: a list of operators, a rotation time per operator, and a reboot link to manually rotate the IP. See Mobile tariffs.
Common response envelope. Every endpoint on this page returns this top-level shape on success — only the operation-specific fields differ:
{
"success": true,
"user": "client@gmail.com",
"balance": 13.09,
"currency": "USD",
"proxyType": "ipv4"
}
Field | Type | Description |
|---|---|---|
| boolean | Operation status. |
| string | Account email. |
| number | Account balance after the operation, in |
| string | ISO currency code. |
| string | Echoes the requested type. |
For all other top-level fields and per-type proxy object shapes, see each operation below.
Operation | Method | Path |
|---|---|---|
|
| |
|
| |
|
| |
|
| |
|
| |
|
|
All paths are relative to /client-api/v1/<apiKey>/.
List bought proxies
Returns all active proxies of the requested type.
Query parameter
Name | Type | Required | Description |
|---|---|---|---|
| string | yes | One of: |
Example request
curl "https://proxy-ipv4.com/client-api/v1/$KEY/get/proxies?proxyType=ipv4"
Example response
Top-level adds countOfProxy and proxies. Switch tabs — proxy object shape differs per type, and IPv6 is grouped by order.
json
{
"success": true,
"user": "client@gmail.com",
"balance": 13.09,
"currency": "USD",
"proxyType": "ipv4",
"countOfProxy": 2,
"proxies": [
{
"id": "id1",
"ip": "185.81.112.215",
"country": "GBR",
"dateStart": "2022-08-29T14:55:38.293+00:00",
"dateEnd": "2022-08-30T23:59:38.293+00:00",
"httpsPort": "49162",
"socks5Port": "49163",
"authInfo": { "login": "authLogin123", "password": "authPassword" }
}
]
}json
{
"success": true,
"user": "client@gmail.com",
"balance": 13.09,
"currency": "USD",
"proxyType": "ipv4",
"countOfProxy": 2,
"proxies": [
{
"id": "id1",
"ip": "185.81.112.215",
"country": "GBR",
"dateStart": "2022-08-29T14:55:38.293+00:00",
"dateEnd": "2022-08-30T23:59:38.293+00:00",
"httpsPort": "49162",
"socks5Port": "49163",
"authInfo": { "login": "authLogin123", "password": "authPassword" }
}
]
}json
{
"success": true,
"user": "client@gmail.com",
"balance": 13.09,
"currency": "USD",
"proxyType": "ipv6",
"countOfProxy": 2,
"proxies": [
{
"orderId": "orderId1",
"ips": [
{
"id": "id1",
"ip": "140.82.53.23:10002",
"country": "FRA",
"dateStart": "2022-08-03T14:04:59.131+00:00",
"dateEnd": "2022-10-02T14:04:59.159+00:00",
"protocol": "SOCKS5",
"authInfo": { "login": "authLogin123", "password": "authPassword" }
}
]
}
]
}json
{
"success": true,
"user": "client@gmail.com",
"balance": 13.09,
"currency": "USD",
"proxyType": "mobile",
"countOfProxy": 2,
"proxies": [
{
"id": "id1",
"ip": "61.62.63.64",
"country": "FRA",
"dateStart": "2022-08-30T14:54:25.414+00:00",
"dateEnd": "2022-09-29T23:59:25.414+00:00",
"httpsPort": "7781",
"socks5Port": "8891",
"mobileOperator": "freemobilesas_france",
"rotationTime": 0,
"rebootLink": "https://proxy-ipv4.com/modem/reboot/448eac96-8546-4389-8f56-54b2b4798d12",
"authInfo": { "login": "authLogin123", "password": "authPassword" }
}
]
}Top-level fields
Field | Type | Description |
|---|---|---|
| number | Total proxies of the requested type. |
| array | List of proxies. For IPv6, items are order groups containing |
Proxy object fields
Field | Type | Present in | Description |
|---|---|---|---|
| string | All | Proxy ID. Use it when extending IPv4, ISP, or Mobile. |
| string | IPv6 only | Order ID. IPv6 can only be extended by whole order — use this for extend operations. |
| array | IPv6 only | Per-order list of individual proxy objects. |
| string | All | The IP address. For IPv6 the value includes a port (e.g. |
| string | All | ISO 3166-1 alpha-3 country code. |
| string | All | ISO 8601 timestamps for the rent window. |
| string | IPv4, ISP, Mobile | Ports for HTTP/HTTPS and SOCKS5. |
| string | IPv6 only |
|
| string | Mobile only | Operator tag, e.g. |
| number | Mobile only | IP rotation interval in minutes. |
| string | Mobile only | URL to manually trigger IP rotation. |
| object | All |
|
Mobile tariffs
Mobile-only. Returns available combinations of country, operator, and rotation time. Use this to discover valid mobileOperator and rotationTime values before calling Calculate purchase price or Place an order for mobile proxies.
Example request
curl "https://proxy-ipv4.com/client-api/v1/$KEY/get/mobile/tariffs"
Example response
{
"success": true,
"user": "client@gmail.com",
"balance": 13.09,
"currency": "USD",
"tariffs": [
{
"country": "GBR",
"mobileOperator": [
{ "name": "Three", "rotationTime": [0, 5, 10] },
{ "name": "O2", "rotationTime": [5, 10] }
]
},
{
"country": "USA",
"mobileOperator": [
{ "name": "AT&T Wireless", "rotationTime": [0, 5, 10] }
]
}
]
}
Response fields
Field | Type | Description |
|---|---|---|
| array | List of country-level tariff entries. |
| string | ISO 3166-1 alpha-3 country code. |
| array | Operators available in this country. |
| string | Operator tag — pass as |
| array of numbers | Allowed |
Calculate purchase price
Returns total cost and per-proxy price for a hypothetical order. Use before Place an order to surface validation issues without spending balance.
Query parameters
Name | Type | Required | Description |
|---|---|---|---|
| string | yes | One of: |
| number | yes | Rental period. Get valid values from Available rent periods. |
| string | yes | ISO 3166-1 alpha-3 code. Get valid values from Available countries. |
| number | yes | Number of proxies. For IPv6, must be ≥ 10. |
| string | conditional | Purpose of use. Required unless |
| string | conditional | Custom purpose, ≥ 5 characters. Mobile only — use when |
| string | mobile only | Operator tag from Mobile tariffs. |
| number | mobile only | Rotation interval in minutes from Mobile tariffs. |
Examples
bash
curl "https://proxy-ipv4.com/client-api/v1/$KEY/get/order/price\bash
curl "https://proxy-ipv4.com/client-api/v1/$KEY/get/order/price\Note `count=10` — IPv6 requires at least 10.
bash
curl "https://proxy-ipv4.com/client-api/v1/$KEY/get/order/price\curl "https://proxy-ipv4.com/client-api/v1/$KEY/get/order/price\
?proxyType=mobile&days=7&goal=instagram&country=FRA&count=1\
&mobileOperator=freemobilesas_france&rotationTime=5"Example response
{
"success": true,
"user": "client@gmail.com",
"balance": 13.09,
"currency": "USD",
"proxyType": "ipv4",
"days": 7,
"count": 2,
"goal": "instagram",
"amount": 2.78,
"price": 1.39
}
For mobile, the response additionally echoes mobileOperator and rotationTime.
Response fields
Field | Type | Description |
|---|---|---|
| mixed | Echoes the requested values. |
| number | Total cost in |
| number | Per-proxy cost. |
| mixed | Mobile only — echoes the requested values. |
Calculate extension price
Returns total cost and per-proxy price for extending existing proxies. Use before Extend proxies.
Query parameters
Name | Type | Required | Description |
|---|---|---|---|
| string | yes | One of: |
| number | yes | Renewal period. Same valid values as for purchase. |
| string | for IPv4, ISP, Mobile | Comma-separated proxy IDs. |
| string | for IPv6 | Comma-separated order IDs. IPv6 extends whole orders. |
Examples
curl "https://proxy-ipv4.com/client-api/v1/$KEY/get/extend/price\
?proxyType=ipv4&days=7&IpId=id1,id2,id3"curl "https://proxy-ipv4.com/client-api/v1/$KEY/get/extend/price\
?proxyType=ipv4&days=7&IpId=id1,id2,id3"Uses `orderId` instead of `IpId`.
curl "https://proxy-ipv4.com/client-api/v1/$KEY/get/extend/price\
?proxyType=ipv6&days=30&orderId=orderId1,orderId2"curl "https://proxy-ipv4.com/client-api/v1/$KEY/get/extend/price\
?proxyType=ipv4&days=7&IpId=id1,id2,id3"Example response
{
"success": true,
"user": "client@gmail.com",
"balance": 13.09,
"currency": "USD",
"proxyType": "ipv4",
"days": 7,
"count": 3,
"amount": 9.13,
"price": 3.04,
"ipId": ["id1", "id2", "id3"]
}{
"success": true,
"user": "client@gmail.com",
"balance": 13.09,
"currency": "USD",
"proxyType": "ipv4",
"days": 7,
"count": 3,
"amount": 9.13,
"price": 3.04,
"ipId": ["id1", "id2", "id3"]
}Adds `ordersId` (the requested order IDs) and expanded `ipId` (every
proxy contained in those orders).
{
"success": true,
"user": "client@gmail.com",
"balance": 13.09,
"currency": "USD",
"proxyType": "ipv6",
"days": 30,
"count": 20,
"amount": 123.42,
"price": 6.17,
"ordersId": ["orderId1", "orderId2"],
"ipId": ["id1", "id2", "id3", "id4", "id5", "id6", "id7", "id8", "id9", "id10",
"id11", "id12", "id13", "id14", "id15", "id16", "id17", "id18", "id19", "id20"]
}{
"success": true,
"user": "client@gmail.com",
"balance": 13.09,
"currency": "USD",
"proxyType": "ipv4",
"days": 7,
"count": 3,
"amount": 9.13,
"price": 3.04,
"ipId": ["id1", "id2", "id3"]
}Response fields
Field | Type | Description |
|---|---|---|
| number | Echoes the requested period. |
| number | Total proxies being extended. For IPv6 — sum of proxies across requested orders. |
| number | Total extension cost. |
| number | Per-proxy extension cost. |
| array | Proxy IDs included in this extension. For IPv6, expanded from the requested orders. |
| array | IPv6 only — echoes the requested order IDs. |
Place an order
Request body
Name | Type | Required | Description |
|---|---|---|---|
| string | yes | One of: |
| number | yes | Rental period. |
| string | yes | ISO 3166-1 alpha-3 code. |
| number | yes | Number of proxies. For IPv6, must be ≥ 10. |
| string | yes | Purpose of use. |
| string | yes |
|
| string | conditional | IP allowlisted for authentication. Required when |
| string | IPv6 only |
|
| string | mobile only | Operator tag from Mobile tariffs. |
| number | mobile only | Rotation interval in minutes from Mobile tariffs. |
Example request
curl -X POST https://proxy-ipv4.com/client-api/v1/API_KEY/order \
-H "Content-Type: application/json" \
-d '{
"proxyType": "ipv4",
"days": 90,
"goal": "instagram",
"country": "GBR",
"count": 2,
"authType": "login"
}'curl -X POST https://proxy-ipv4.com/client-api/v1/API_KEY/order \
-H "Content-Type: application/json" \
-d '{
"proxyType": "ipv4",
"days": 90,
"goal": "instagram",
"country": "GBR",
"count": 2,
"authType": "login"
}'Adds `protocol`. Requires `count >= 10`.
curl -X POST https://proxy-ipv4.com/client-api/v1/API_KEY/order \
-H "Content-Type: application/json" \
-d '{
"proxyType": "ipv6",
"days": 30,
"goal": "instagram",
"country": "GBR",
"count": 10,
"authType": "login",
"protocol": "SOCKS5"
}'Adds `mobileOperator` and `rotationTime`.
curl -X POST https://proxy-ipv4.com/client-api/v1/$KEY/order \
-H "Content-Type: application/json" \
-d '{
"proxyType": "mobile",
"days": 30,
"goal": "instagram",
"country": "FRA",
"count": 1,
"authType": "login",
"mobileOperator": "freemobilesas_france",
"rotationTime": 5
}'When `authType=ip`, add `authIp`. Works for any `proxyType`.
curl -X POST https://proxy-ipv4.com/client-api/v1/$KEY/order \
-H "Content-Type: application/json" \
-d '{
"proxyType": "ipv4",
"days": 90,
"goal": "instagram",
"country": "GBR",
"count": 2,
"authType": "ip",
"authIp": "203.0.113.42"
}'Example response
{
"success": true,
"user": "client@gmail.com",
"balance": 4.09,
"currency": "USD",
"proxyType": "ipv4",
"orderNumber": "DV-16620211552356-jA"
}Response fields
Field | Type | Description |
|---|---|---|
| string | The new order's number. Use it to look up proxies in List bought proxies — for IPv6 it appears as |
| number | Remaining balance after the charge. |
Extend proxies
Renews existing proxies and charges the balance.
Request body
Name | Type | Required | Description |
|---|---|---|---|
| string | yes | One of: |
| number | yes | Renewal period. |
| array of strings | for IPv4, ISP, Mobile | Proxy IDs to extend. |
| array of strings | for IPv6 | Order IDs to extend. |
Example request
```bash
curl -X POST https://proxy-ipv4.com/client-api/v1/$KEY/extend \
-H "Content-Type: application/json" \
-d '{
"proxyType": "ipv4",
"days": 30,
"IpId": ["id1", "id2"]
}'
```
```bash
curl -X POST https://proxy-ipv4.com/client-api/v1/$KEY/extend \
-H "Content-Type: application/json" \
-d '{
"proxyType": "ipv4",
"days": 30,
"IpId": ["id1", "id2"]
}'
```
```bash
curl -X POST https://proxy-ipv4.com/client-api/v1/$KEY/extend \
-H "Content-Type: application/json" \
-d '{
"proxyType": "ipv4",
"days": 30,
"IpId": ["id1", "id2"]
}'
```
Uses `orderId` array.
```bash
curl -X POST https://proxy-ipv4.com/client-api/v1/$KEY/extend \
-H "Content-Type: application/json" \
-d '{
"proxyType": "ipv6",
"days": 30,
"orderId": ["orderId1"]
}'
```
Example response
{
"success": true,
"user": "client@gmail.com",
"balance": 4.09,
"currency": "USD"
}
Response fields
Field | Type | Description |
|---|---|---|
| number | Remaining balance after the charge. |