API Base URL:
Authentication
All requests require authentication using an API key passed in the HTTP headers.
Use the jwt-token obtained from the Login API.
Data Format
All request and response payloads are in JSON format.
Headers
Header Name | Type | Value/Description |
|---|---|---|
| string |
|
Content-Type | string |
|
Response
param | type | remark |
|---|---|---|
code | number | Result code |
msg | string | Status message |
data | object | Response data payload |
API
Address: /api/account/login
Method: POST
Success Response
{
"code": 0,
"msg": "success",
"data": {
"uid": 10086,
"jwt-token": "ey06eXAi01JKV10i1C1hb6c101JIUzI1N19.ey9pG3M101JodHRw01BvYxBplnJIZ6hhdGlwLmWvb581LC1hdNQ101JodHRwczovL31JZ6hhdGlwLmWvb581LC1pYXQ10jE3MzK30TEx0DIsImV4CC16MTcz0TC50MMMiuXZGF8YS16eyJ1aMQ10jEMWBg2LC1hY2WvdW501joIZmFu23FqQ6tvb21ZXkuY29tIn19.3-bTMmzqjFg0t_sHzlftRwRxMrlv-zb96NFro0qxaHU",
"expire_at": 1739798382 }
}Request Parameters
Parameter Name | Type | Required | Example | Remark |
|---|---|---|---|---|
account | string | Yes | Login account | |
password | string | Yes | 123456 | Login password, must be MD5 hashed for backend |
remember_me | int | No | 0 | 7-day auto-login: 1=Yes, 0=No |
auth_key | string | No | hdskhasda | Key for quick login from activation email |
Response Data
Name | Type | Description | Example |
|---|---|---|---|
uid | int | User ID | 10086 |
jwt-token | string | Login success token | ey.0eXAiOiJKV1QiLCJhbGciOiJIUz1fNiJ9.eyJpc3MiOi... |
expire_at | int | Expiration time | 1739798382 |
API
Address: /api/user/info
Method: GET
Success Response
{
"code": 0,
"msg": "success",
"data": {
"uid": 123456,
"account": "raymond083",
"email": "[email protected]",
"token": "aaabbbccc", // api_token "balance": 92499, // Unit: US Cents "traffic_left": 8080, // Unit: MB "trial_status": 1, // Trial eligibility: 1: Eligible; 0: Not eligible "commission_rate": 0.03 // Cryptocurrency fee rate }
}Response Data
Name | Type | Description | Example |
|---|---|---|---|
uid | int | User ID | 123456 |
account | string | Username | ray1234 |
string | User email | ||
token | string | User token | aaabbbccc |
balance | int | Balance, Unit: US Cents | 92499 |
traffic_left | int | Traffic remaining, Unit: MB (divide by 1000 for GB) | 8080 |
trial_status | string | Trial eligibility: 1: Eligible; 0: Not eligible | 1 |
commission_rate | string | Cryptocurrency fee rate | 0.03 |
API
Address: /api/traffic/usage
Method: GET
Success Response
{
"code": 0,
"msg": "success",
"data": {
"x": [
"2025-04-21",
"2025-04-22",
"2025-04-23",
"2025-04-24",
"2025-04-25",
"2025-04-26",
"2025-04-27",
"2025-04-28" ],
"y": [
15.05, // Unit: Mb 0,
95.78,
14.42,
0,
0,
0,
0 ]
}
}Request Parameters
Parameter Name | Type | Required | Example | Description |
|---|---|---|---|---|
sdate | string | Yes | 2025-04-21 | Start date |
edate | string | Yes | 2025-04-28 | End date |
Response Data
Name | Type | Example | Description |
|---|---|---|---|
x | array | ["2025-04-01"] | X-axis scale - Time |
y | array | [15.05] | Y-axis scale - Usage (Unit: Mb) |
API
Address: /api/traffic/changelog
Method: GET
Success Response
{
"code": 0,
"msg": "success",
"data": {
"list": [
{
"type": "Allocation", // Value range: ['Used', 'Add', 'Allocation', 'Recycle'] "amount": 80000,
"after": 142230,
"remark": "FromUidHaiadqa5iaw",
"date_time": "2025-07-24 04:01:09" },
{
"type": "Allocation",
"amount": 20000,
"after": 62230,
"remark": "FromUidHaiadqa5iaw",
"date_time": "2025-07-24 04:01:09" }
],
"total": 56 }
}Request Parameters
Parameter Name | Type | Required | Example | Description |
|---|---|---|---|---|
sdate | string | Yes | 2025-04-01 | Start date for query |
edate | string | Yes | 2025-04-02 | End date for query |
type | string | No | used | Record type: Empty value queries all. Value range: ['used', 'add', 'allocation', 'recycle'] |
page | int | No | 1 | Pagination parameter (Page number) |
size | int | No | 20 | Pagination parameter (Page size) |
export | int | No | 0 | Whether to export data (1=Export) |
Response Data
Name | Type | Example | Description |
|---|---|---|---|
list | object[] | List of changes | |
type | string | Allocation | Change type |
amount | int | 142230 | Change amount |
after | int | 62230 | Remaining after change |
remark | string | FromUidHaiadqa5iaw | Change remark |
date_time | string | 2025-07-24 04:01:09 | Change date and time |
total | int | 56 | Total list count |
API
Address: /api/traffic/details
Method: GET
Success Response
{
"code": 0,
"msg": "success",
"data": {
"total": 1,
"list": [
{
"time": "2025-04-21",
"uid": 8561510800,
"geo": "US",
"region": "",
"count": "15.05 MB",
"username": "[email protected]" }
]
}
}Request Parameters
Parameter Name | Type | Required | Example | Description |
|---|---|---|---|---|
sdate | string | Yes | 2023-01-01 | Start time |
edate | string | Yes | 2023-01-01 | End time |
page | int | No | 1 | Pagination parameter (Page number) |
psize | int | No | 10 | Pagination parameter (Page size) |
gb | string | No | d | Time aggregation type: d=day, h=hour |
gbg | int | No | 1 | Show detailed region: |
subid | int | No | -1 | Account ID: Sub-account; |
export | int | No | 0 | Whether to export (1=Export) |
Response Data
Name | Type | Example | Description |
|---|---|---|---|
total | int | 10 | Total count of data list |
list | object[] | List of details | |
time | string | 2025-04-01 | Time |
uid | number | 123456 | User ID |
geo | string | US | Country/Region code |
region | string | Region name (if detailed) | |
count | string | 15.05 MB | Usage amount |
username | string | Username |
API
Address: /api/order/pricemenu
Method: GET
Success Response
{
"code": 0,
"msg": "Success",
"data": [
{
"id": 101,
"title": "1GB",
"traffic_gb": 1,
"per_gb_price": 320,
"price": 320,
"recommend_tips": "",
"default_checked": 0,
"is_top": 1 // Whether pinned: 1=Yes; 0=No }
]
}Response Data
Name | Type | Example | Description |
|---|---|---|---|
id | int | 101 | Package ID |
title | string | 1GB | Package name |
traffic_gb | int | 1 | Traffic amount (GB) |
per_gb_price | int | 320 | Price per GB |
price | int | 320 | Total price |
recommend_tips | string | Save 37% | Discount tips |
default_checked | int | 0 | Wether selected by default |
is_top | int | 1 | Whether pinned |
API
Address: /api/order/packages
Method: GET
Request Parameters
Parameter Name | Type | Required | Example | Remarks |
|---|---|---|---|---|
old* | string | No | 1235666 | Order ID (Assuming 'old' is a typo for 'oid' or 'order_id') |
pay_type | string | No | balance | Payment method. |
sdate | string | Yes | 2025-01-01 | Order start time |
edate | string | Yes | 2025-02-01 | Order end time |
page | int | No | 1 | Pagination parameter (Page number) |
size | int | No | 10 | Pagination parameter (Page size) |
Note: old likely intended to be order_id or oid.
Response Data
Name | Type | Example | Description |
|---|---|---|---|
total | int | 22 | Total list count |
list | object[] | List of changes | |
id | int | 302392746 | Order ID |
price | int | 2500 | Payment amount, Unit: US Cents |
pay_type | string | balance | Payment method |
add_time | int | 1739870415 | Order creation time (timestamp) |
quantity | int | 1 | Traffic amount, Unit: GB |
API
Address: /api/dynamic/gateways
Method: GET
Success Response
{
"code": 0,
"msg": "success",
"data": [
{
"host": "geo.redhatip.com",
"port": 32345 }
]
}Response Data
Name | Type | Example | Description |
|---|---|---|---|
host | string | geo.ipcook.com | Gateway domain |
port | int | 32345 | Gateway port |
API
Address: /api/dynamic/stock
Method: GET
Success Response
{
"code": 0,
"msg": "success",
"data": {
"uid": 10086,
"jwt-token": "ey06eXAi01JKV10i1C1hb6c101JIUzI1N19.ey9pG3M101JodHRw01BvYxBplnJIZ6hhdGlwLmWvb581LC1hdNQ101JodHRwczovL31JZ6hhdGlwLmWvb581LC1pYXQ10jE3MzK30TEx0DIsImV4CC16MTcz0TC50MMMiuXZGF8YS16eyJ1aMQ10jEMWBg2LC1hY2WvdW501joIZmFu23FqQ6tvb21ZXkuY29tIn19.3-bTMmzqjFg0t_sHzlftRwRxMrlv-zb96NFro0qxaHU",
"expire_at": 1739798382 }
}Request Parameters
Parameter Name | Type | Required | Example | Description |
|---|---|---|---|---|
c | int | Yes | 1 | Whether to return child list |
Response Data
Name | Type | Example | Description |
|---|---|---|---|
id | int | 1 | Country ID |
name | string | US | Country code |
stock | boolean | true | Whether in stock |
child | object[] | Child list (regions/states) |
API
Address: /api/dynamic/citys
Method: GET
Success Response
{
"code": 0,
"msg": "success",
"data": [
{
"id": 80804,
"name": "Dallas",
"enname": "Dallas" },
{
"id": 80805,
"name": "Houston",
"enname": "Houston" }
]
}Request Parameters
Parameter Name | Type | Required | Description |
|---|---|---|---|
g | int | Yes | geo_id |
Response Data
Name | Type | Example | Description |
|---|---|---|---|
id | int | 80004 | Region/City ID |
name | string | Dallas | Region/City name |
enname | string | Dallas | Region/City name (English) |
API
Address: /api/auth/sub_list
Method: GET
Success Response
{
"code": 0,
"msg": "success",
"data": [
{
"id": 123456,
"username": "1",
"password": "1",
"traffic_left": 12120, // Remaining traffic Unit: MB, divide by 1000 for GB "traffic_used": 0, // Used traffic Unit: MB, divide by 1000 for GB "remark": "",
"add_time": 1741148830,
},
{
"id": "a1adqa5iks",
"username": "12345678891111126",
"password": "12345678891111135",
"traffic_left": 20,
"traffic_used": 0,
"remark": "111",
"add_time": 1741160175,
}
]
}Response Data
Name | Type | Example | Description |
|---|---|---|---|
id | int | 123456 | Sub-account ID |
username | string | aa41160175 | Sub-account username |
password | string | aa41160175 | Sub-account password |
traffic_left | int | 20 | Remaining traffic (MB) |
traffic_used | int | 10 | Used traffic (MB) |
remark | string | 111 | Remark |
add_time | int | 1741160175 | Addition time (timestamp) |
API
Address: /api/auth/passadd
Method: POST
Success Response
{
"code": 0,
"msg": "success",
"data": {
"id": "aiadqa5i5d" }
}Request Parameters
Parameter Name | Type | Required | Example | Remarks |
|---|---|---|---|---|
username | string | Yes | suhkhnkjCV1WS2 | Username, 12-24 characters, case-sensitive |
password | string | Yes | USUUV882sxxa | Password, 12-24 characters, case-sensitive |
traffic_gb | float | Yes | 0.01 | Initially allocated traffic, Unit: GB, range 0.01 - 10000 |
remark | string | Yes | hello | Auth remark |
Response Data
Name | Type | Example | Description |
|---|---|---|---|
id | string | aiadqa5i5d | Auth ID |
API
Address: /api/auth/passdelete
Method: GET
Success Response
{
"code": 0,
"msg": "success",
"data": {}
}Request Parameters
Parameter Name | Type | Required | Example | Remarks |
|---|---|---|---|---|
account_id | string | Yes | suhkhnkj | Auth ID |
API
Address: /api/auth/passupdate
Method: GET
Success Response
{
"code": 0,
"msg": "success",
"data": {}
}Request Parameters
Parameter Name | Type | Required | Example | Remarks |
|---|---|---|---|---|
username | string | Yes | suhkhnkjCV1WS2 | Username, 12-24 characters, case-sensitive |
password | string | Yes | USUUv882sxxa | Password, 12-24 characters, case-sensitive |
account_id | string | Yes | aiadqa5lkn | Sub-auth ID |
API
Address: /api/auth/trafficupdate
Method: GET
Success Response
{
"code": 0,
"msg": "success",
"data": []
}Request Parameters
Parameter Name | Type | Required | Example | Remarks |
|---|---|---|---|---|
account_id | string | Yes | aiadqa5l5d2 | Auth ID |
traffic_gb | float | Yes | 0.01 | Traffic to allocate, Unit: GB, range 0.01 - 10000 |
type | string | Yes | add | Allocation type: add/minus => add/subtract |
API
Address: /api/dynamic/genips
Method: GET
Request Parameters
Parameter Name | Type | Required | Example | Remarks |
|---|---|---|---|---|
auth | string | Yes | ip | Authentication mode: |
g | string | Yes | US | Country ISO code. |
protocol | string | No | http | Protocol: socks5/http |
n | int | Yes | 1 | Quantity |
sign | string | Yes | 12sad54dsa | MD5 hash of user token |
accessid* | int | Yes | 123456 | User ID |
r | string | No | randomize | Required when auth is pwd. Values: randomize/sticky |
i | string | No | 12m | IP rotation interval. Required when auth is pwd and mode (r) is sticky |
f | int | No | 1 | Required when auth is pwd. Values: 1/2/3/4 (Meaning likely documented elsewhere) |
sub_uid | int | No | 123456 | Sub-auth ID (Required when auth is pwd) |
h | string | No | geo.ipcook.com | Hostname (Required when auth is pwd) |
p | int | No | 32156 | Port (Required when auth is pwd) |
API
Address: /api/auth/remarkupdate
Method: GET
Success Response
{
"code": 0,
"msg": "success",
"data": {}
}Request Parameters
Parameter Name | Type | Required | Example | Remarks |
|---|---|---|---|---|
username | string | Yes | suhkhnkjCV1WS2 | Username, 12-24 characters, case-sensitive |
password | string | Yes | USUUv882sxxa | Password, 12-24 characters, case-sensitive |
account_id | string | Yes | aiadqa5lkn | Sub-auth ID |
API
Address: /api/dynamic/whiteipget
Method: GET
Success Response
{
"code": 0,
"msg": "success",
"data": [
"127.0.0.1:1111",
"127.0.0.1:1122",
"127.0.0.1:1133",
"127.0.0.1:1144",
"127.0.0.1:1155" ]
}Request Parameters
Parameter Name | Type | Required | Example | Remarks |
|---|---|---|---|---|
g | int | Yes | 1 | Region ID |
n | int | Yes | 1 | Quantity |
Response Data
Name | Type | Example | Description |
|---|---|---|---|
data | string[] | IP:Port array |
API
Address: /api/auth/whiteipadd
Method: GET
Success Response
{
"code": 0,
"msg": "success",
"data": []
}Request Parameters
Parameter Name | Type | Required | Example | Remarks |
|---|---|---|---|---|
ip | string | Yes | 1.2.3.45 | IPv4 address |
remark | string | No | hello | IP remark |
API
Address: /api/auth/whiteipupdate
Method: GET
Success Response
{
"code": 0,
"msg": "success",
"data": {}
}Request Parameters
Parameter Name | Type | Required | Example | Remarks |
|---|---|---|---|---|
ip | string | Yes | 1.2.3.4 | IP address to update |
remark | string | Yes | suhkhnkjCV1WS2 | Remark, max 500 characters, single/double quotes not allowed |
API
Address: /api/auth/whiteipget
Method: GET
Success Response
{
"code": 0,
"msg": "success",
"data": {
"total": 13,
"list": [
{
"ip": "127.0.0.1:1111",
"remark": "hello",
"add_time": 1740139633 },
{
"ip": "127.0.0.1:1122",
"remark": "hello",
"add_time": 1740139836 },
{
"ip": "127.0.0.1:1133",
"remark": "hello",
"add_time": 1740139886 },
{
"ip": "127.0.0.1:1144",
"remark": "hello",
"add_time": 1740139788 }
]
}
}Request Parameters
Parameter Name | Type | Required | Example | Remarks |
|---|---|---|---|---|
keyword | string | No | suhkhnkjCV1WS2 | Search keyword |
order | string | No | ip | Sort field: 'ip', 'add_time' |
ordered | string | No | asc | Sort direction: asc/desc |
page | int | No | 1 | Page number, default 1 |
size | int | No | 10 | Page size, default 10 |
Response Data
Name | Type | Example | Description |
|---|---|---|---|
total | number | 10 | Total list count |
list | object[] | List of whitelisted IPs | |
ip | string | 127.0.0.1:1111 | IP address |
remark | string | 11 | Remark |
add_time | number | 1740139788 | Addition time (timestamp) |
API
Address: /api/auth/whiteipdelete
Method: GET
Success Response
{
"code": 0,
"msg": "success",
"data": []
}Request Parameters
Parameter Name | Type | Required | Example | Remarks |
|---|---|---|---|---|
ip | string | Yes | 127.0.0.1:1111 | IPv4 address |
API
Address: /api/order/bandwidth
Method: GET
Success Response
{
"code": 0,
"msg": "Success",
"data": {
"total": 0,
"list": [ // Order list
{
"id": 126918259, // Order ID
"pay_type": "balance", // Payment method
"price": 35000, // Order amount, in cents
"add_time": 1692345600,// Order timestamp
"bandwidth": 100, // Effective bandwidth
"day": 30, // Days
"status": 1 // Status: 0 Unpaid, 1 Paid, 3 Refunded
}
]
}
}Request Parameters
Parameter Name | Type | Required | Example | Remarks |
|---|---|---|---|---|
oid | string | No | 126918259 | Region ID |
pay_type | number | No | balance | Payment method |
sdate | string | Yes | 2026-01-01 | Start time |
edate | string | Yes | 2026-01-01 | End time |
page | number | Yes | 1 | Pagination parameter |
size | number | Yes | 10 | Pagination parameter |
status | number | No | 1 | Status. 0 unpaid, 1 paid, 3 refunded |
Response Data
Name | Type | Example | Description |
|---|---|---|---|
total | nunber | 1 | - |
list | object [] | Order list | |
id | nunber | 126918259 | Order ID |
pay_type | string | balance | Payment method |
price | nunber | 35000 | Order amount, in fen (cents) |
add_time | nunber | 1692345600 | Order time (timestamp) |
status | nunber | 1 | Status. 0 unpaid, 1 paid, 3 refunded |
bandwidth | nunber | 100 | Effective bandwidth |
day | nunber | 30 | Number of days |
API
Address: /api/order/checkBandwidthRenew
Method: GET
Success Response
{
"code": 0,
"msg": "Success",
"data": {
"total_price": 74667, // Total payable price (including fee), in cents
"amount": 74667, // Actual payment amount, in cents
"exchange_rate": 1, // Exchange rate
"currency": "USD", // Currency
"commission_rate": "0%", // Fee rate
"commission_price": 0, // Fee, in cents
"order_id": "102401234567", // Order cache ID; pass as o when paying
"day": 32, // Total billed days (price-difference days rounded up + renewal days)
"renew_day": 30, // Renewal days (> 0 only when renewing; 0 when only upgrading)
"cur_bandwidth": 100, // Current (original) bandwidth, Mbps
"bandwidth": 200, // Effective bandwidth (after upgrade, or current), Mbps
"slotting_allowance": 0, // Channel fee, in cents
"old_expire_time": 1787222928, // Original expiration time
"expire_time": 1787222928, // New expiration time
"old_unit_price": 200, // Original unit price
"unit_price": 0, // Unit price, in cents
"remaining_days": 2, // Price-difference days
"raw_price": 74667, // Original price (no discount), in cents
"deduct": 0 // Remaining value of the old cycle deducted when renewing across tiers (integer cents); 0 if not across tiers
}
}Request Parameters
Parameter Name | Type | Required | Example | Remarks |
|---|---|---|---|---|
b | number | No | 100 | IPv4 address |
d | number | No | 30 | IP remark |
p | string | Yes | balance | |
step | number | No | 1 |
Response Data
Name | Type | Example | Description |
|---|---|---|---|
total_price | nunber | 74667 | Total payable price (including fee), in cents |
amount | nunber | 74667 | Actual payment amount, in cents |
exchange_rate | nunber | 1 | Exchange rate |
currency | string | USD | Currency |
commission_rate | string | 0% | Fee rate |
commission_price | nunber | 0 | Fee, in cents |
order_id | string | 102401234567 | Order cache ID; pass as o when paying |
day | nunber | 32 | Total billed days (price-difference days rounded up + renewal days) |
renew_day | nunber | 30 | Renewal days (> 0 only when renewing; 0 when only upgrading) |
old_expire_time | nunber | 1787222928 | Original expiration time |
expire_time | nunber | 1787222928 | New expiration time |
old_unit_price | nunber | 200 | Original unit price |
unit_price | nunber | 0 | Unit price, in cents |
remaining_days | nunber | 2 | Price-difference days |
deduct | nunber | 0 | Remaining value of the old cycle deducted when renewing across tiers (integer cents); 0 if not across tiers |
cur_bandwidth | nunber | 100 | Current (original) bandwidth, Mbps |
bandwidth | nunber | 200 | Effective bandwidth (after upgrade, or current), Mbps |
slotting_allowance | nunber | 0 | Channel fee, in cents |
raw_price | nunber | 74667 | Original price (no discount), in cents |
API
Address: /api/order/checkBandwidth
Method: GET
Success Response
{
"code": 0,
"msg": "Success",
"data": {
"total_price": 36050, // Total payable price (fee included), in cents
"amount": 36050, // Actual payment amount (in the corresponding currency)
"exchange_rate": 1, // Exchange rate (not 1 for non-USD currencies)
"currency": "USD", // Currency (USD/RUB/EUR/CNY, etc.)
"discount_rate": 0.03, // Discount rate (0~1)
"discount": 1050, // Total discount amount, in cents (= period_discount + coupons_discount)
"period_discount": 0, // Duration discount amount, in cents (always 0 for bandwidth products)
"coupons_discount": 1050, // Coupon code discount amount, in cents
"commission_rate": "3%", // Payment fee rate (string)
"commission_price": 1050, // Fee amount, in cents
"order_id": "102401234567", // Order cache ID; pass as o to the payment API
"day": 30, // Days
"bandwidth": 100, // Purchased bandwidth, Mbps
"unit_price": 1167, // Unit price, in cents
"slotting_allowance": 0, // Channel fee, in cents (> 0 for some payment methods)
"raw_price": 35000 // Original price (excluding discount/fee), in cents
}
}Request Parameters
Parameter Name | Type | Required | Example | Remarks |
|---|---|---|---|---|
b | number | Yes | 100 | Bandwidth, multiple of 100. Range 100~9900 |
d | number | Yes | 30 | Days, multiple of 30. Max 360 |
p | string | Yes | balance | Payment method |
redeem_code | string | No | a112233 | Discount code |
Response Data
Name | Type | Example | Description |
|---|---|---|---|
total_price | nunber | 36050 | Total payable price (fee included), in cents |
amount | nunber | 36050 | Actual payment amount (in the corresponding currency) |
exchange_rate | nunber | 1 | Exchange rate (not 1 for non-USD currencies) |
currency | string | USD | Currency (USD/RUB/EUR/CNY, etc.) |
discount_rate | nunber | 0.03 | Discount rate (0~1) |
discount | nunber | 1050 | Total discount amount, in cents (= period_discount + coupons_discount) |
period_discount | nunber | 0 | Duration discount amount, in cents (always 0 for bandwidth products) |
coupons_discount | nunber | 1050 | Coupon code discount amount, in cents |
commission_rate | string | 3% | Payment fee rate (string) |
commission_price | nunber | 1050 | Fee amount, in cents |
order_id | string | 102401234567 | Order cache ID; pass as o to the payment API |
day | number | 30 | Days |
bandwidth | number | 100 | Purchased bandwidth, Mbps |
slotting_allowance | number | 0 | Channel fee, in cents (> 0 for some payment methods) |
raw_price | number | 35000 | Original price (excluding discount/fee), in cents |
unit_price | number | 1167 | Unit price, in cents |
API
Address: /api/bandwidth/bwusage
Method: GET
Success Response
{
"code": 0,
"msg": "Success",
"data": [
{
"time": "08-23 16", // Date tick
"bandwidth": 0, // Bandwidth value
"unit": "Gbps" // Unit
},
{
"time": "08-23 17",
"bandwidth": 0,
"unit": "Gbps"
}
]
}Request Parameters
Parameter Name | Type | Required | Example | Remarks |
|---|---|---|---|---|
sdate | string | Yes | 1 | Start date |
edate | string | Yes | 1 | End date |
time_type | string | Yes | m | Aggregation type. m => minute, h => hour |
Response Data
Name | Type | Example | Description |
|---|---|---|---|
time | string | 08-23 16 | Date tick |
bandwidth | number | 0 | Bandwidth value |
unit | string | Gbps | Unit |
API
Address: /api/bandwidth/bwlogs
Method: GET
Success Response
{
"code": 0,
"msg": "Success",
"data": {
"total": 1,
"list": [
{
"date": "", // Date
"uid": 0, // User ID
"username": 0, // Username
"bw": 0, // Bandwidth
"unit": "Mbps" // Unit
}
]
}
}Request Parameters
Parameter Name | Type | Required | Example | Remarks |
|---|---|---|---|---|
sdate | string | Yes | 2026-09-01 | Start date |
edate | string | Yes | 2026-09-02 | End date |
time_type | string | Yes | h | Aggregation type. m => minute, h => hour |
export | number | No | 0 | Whether to export. 1 = yes, 0 = no |
Response Data
Name | Type | Example | Description |
|---|---|---|---|
total | number | 1 | - |
list | object [] | 1 | - |
date | string | 2026-09-01 | Date |
uid | number | 111149185 | User ID |
username | string | 11weqwe121 | Username |
bw | number | 0 | Bandwidth |
unit | string | Mbps | Unit |
API
Address: /api/dynamic/bandwidthInfo
Method: GET
Success Response
{
"code": 0,
"msg": "Success",
"data": {
"username": "12vdxer1C437wn", // Account
"password": "12vdxer1C437wn", // Password
"port": 0, // Port
"bandwidth": 100, // Bandwidth specification
"expire_time": 1789812030, // Expiration time
"domains": [ // Gateway domain list
]
}
}Response Data
Name | Type | Example | Description |
|---|---|---|---|
username | string | 12vdxer1C437wn | Bandwidth Account |
password | string | 12vdxer1C437wn | Bandwidth Password |
bandwidth | number | 100 | Bandwidth specification |
port | number | 0 | Bandwidth Port |
expire_time | number | 1789812030 | Expiration time |
domains | string [] | - | Gateway domain list |
API
Address: /api/dynamic/changeBandwidthPwd
Method: POST
Success Response
{
"code": 0,
"msg": "success",
"data": []
}Request Parameters
Parameter Name | Type | Required | Example | Remarks |
|---|---|---|---|---|
username | Tr Text | Yes | 1 | Account, 12-24 characters |
password | Tr Text | Yes | 1 | Password, 12-24 characters |
Response Data
Name | Type | Example | Description |
|---|---|---|---|
data | string[] | - | - |
API
Address: /api/static/priceMenu
Method: GET
Success Response
{
"code": 0,
"msg": "Success",
"data": {
"only_num": 0,
"stock": { //Regional Inventory Region ID: Inventory Quantity
"6": 506,
"3": 243,
"1": 1008,
"9": 496,
"15": 252,
"2": 253,
"8": 253,
"4": 253,
"5": 1
},
"proxy_packages": [ //Number of Plans
{
"name": "1 IPs",
"amount": 1,
"discount": 1.6,
"discount_tips": "+60%",
"status":1
}
],
"day_packages": [ // Duration plans (>= 10)
{
"name": "5d",
"amount": 5,
"discount": 1,
"discount_tips": "0%",
"status":1
}
],
"day_packages_less10": [ // Duration plans (<= 9)
{
"name": "30d",
"amount": 30,
"discount": 1,
"discount_tips": "0%",
"status":1
}
]
}
}Request Parameters
Parameter Name | Type | Required | Example | Remarks |
|---|---|---|---|---|
t | number | Yes | 1 | Type: 1 DC 4 ISP |
Response Data
Name | Type | Example | Description |
|---|---|---|---|
only_num | number | 0 | Numbers Only |
6 | number | 506 | Region ID: Inventory Quantity |
3 | number | 243 | Region ID: Inventory Quantity |
1 | number | 1088 | Region ID: Inventory Quantity |
9 | number | 496 | Region ID: Inventory Quantity |
15 | number | 252 | Region ID: Inventory Quantity |
2 | number | 253 | Region ID: Inventory Quantity |
8 | number | 253 | Region ID: Inventory Quantity |
4 | number | 253 | Region ID: Inventory Quantity |
5 | number | 1 | Region ID: Inventory Quantity |
proxy_packages | object [] | Number of Plans | |
name | string | 1 IPs | Plan Name: 1 IPs=1 proxy |
amount | number | 1 | Plan Quantity |
discount | number | 1.6 | Plan Discount |
discount_tips | string | +60% | Discount percentage |
status | number | 1 | Plan status |
day_packages | object [] | Duration plans (>= 10) | |
name | string | 5d | Plan name: 5d=5Day |
amount | number | 5 | Plan Quantity |
discount | number | 1 | Plan Discount |
discount_tips | string | 0% | Discount percentage |
status | number | 1 | Plan status |
day_packages_less10 | object [] | Duration plans (<= 9) | |
name | string | 30d | Plan name: 30d=30Day |
amount | number | 30 | Plan Quantity |
discount | number | 1 | Plan Discount |
discount_tips | string | 0% | Discount percentage |
status | number | 1 | Plan status |
API
Address: /api/order/checkIp
Method: POST
Success Response
{
"code": 0,
"msg": "Success",
"data": {
"sub_orders": [ //Details on purchasing from multiple regions
{
"area_id": 1, //Region ID
"number": 5, //Purchase Quantity
"location": "US" //Region Name
},
{
"area_id": 3,
"number": 3,
"location": "CA"
},
{
"area_id": 0,
"number": 2,
"location": "Random"
}
],
"total_price": 1164, //Fees to be paid (unit: cents)
"amount": 1164, //Fees to be paid. Unit: Hong Kong cents (HK cents) depending on the currency.
"exchange_rate": 1, //Exchange rate
"currency": "USD", //Currency
"discount_rate": 0.03, //Discount percentage
"discount": 36, //Discount Amount (Unit: cents)
"period_discount": 36, //Duration Discount (unit: cents)
"coupons_discount": 0,//Coupon discount (unit: cents)
"commission_rate": "0%",//Commission rate
"commission_price": 0,//Transaction fee (unit: cents)
"order_id": "469911732178462097330108518", //Order number
"day": 30, // Days
"number": 10, //Quantity
"slotting_allowance": 0, //Access fee
"unit_price": 4, //Unit price
"raw_price": 1200 //Original price
}
}Request Parameters
Parameter Name | Type | Required | Example | Remarks |
|---|---|---|---|---|
t | Tr text | Yes | 1 | Type: 1DC 4ISP |
n | Tr text | Yes | 1 | Total quantity |
d | Tr text | Yes | 1 | Days |
p | Tr text | Yes | balance | Payment method |
redeem_code | Tr text | No | 123 | Discount code |
items | Tr text | Yes | [ {“a”: 1, “n”: 5}, {“a”: 3, “n”: 3}, {“a”: 0, “n”: 2} ] | Purchase quantity per region |
Response Data
Name | Type | Example | Description |
|---|---|---|---|
sub_orders | object [] | Purchase quantity per region | |
area_id | number | 1 | Region ID |
number | number | 5 | Quantity |
location | string | US | Region name |
total_price | number | 1164 | Total price, unit: cents |
amount | number | 1164 | Price the user needs to pay. The unit is the cent of the corresponding currency (e.g., for Alipay HK, this is HK cents) |
exchange_rate | number | 1 | Exchange rate |
currency | string | USD | Currency |
discount_rate | number | 0.03 | Discount rate |
discount | number | 36 | Total discount, unit: cents |
period_discount | number | 36 | Duration discount, unit: cents |
coupons_discount | number | 0 | Redeem code discount, unit: cents |
commission_rate | string | 0% | Commission rate |
commission_price | number | 0 | Commission fee |
order_id | number | 469911732178462097330108518 | Order ID |
day | number | 30 | Days |
number | number | 10 | Quantity |
slotting_allowance | number | 0 | Slotting allowance / Channel fee |
unit_price | number | 4 | Unit price |
raw_price | number | 1200 | Original price |
API
Address: api/order/payip
Method: GET
Success Response
{
"code": 0,
"msg": "Success",
"data": []
}Request Parameters
Parameter Name | Type | Required | Example | Remarks |
|---|---|---|---|---|
o | string | Yes | 206918259 | The order ID is obtained from api/order/checkIp |
Response Data
Name | Type | Example | Description |
|---|---|---|---|
data | string[] | - | - |
API
Address: api/static/iplist
Method: GET
Success Response
{
"code": 0,
"msg": "Success",
"data": {
"total": 1,
"list": [
{
"proxy_id": 12569758, //proxy id
"ip": "154.56.47.2", //ip
"port": 30123, //port
"username": "12gfUPWHZGxZG", //Proxy username
"password": "12gfUPWHZGxZG", //Proxy password
"remark": "", //remark
"status": 1, // Status: 1 Available, 2 Inactive, 3 Expired, 5 Error
"expire_time": 1756786560,
"area": "US-Washington/Seattle"
}
]
}
}Request Parameters
Parameter Name | Type | Required | Example | Remarks |
|---|---|---|---|---|
ip_type | number | Yes | 1 | Proxy type. 1=>dc, 4=>isp |
status | number | No | 1 | Proxy status. 1 available, 2 disabled, 3 expired, 5 abnormal, 6 expiring soon (within 24h), 7 expiring soon (within 48h) |
area_id | number | No | 1 | Area ID. Multiple IDs joined with English commas. Obtained via api/static/stock |
page | number | Yes | 1 | Pagination parameter |
size | number | Yes | 10 | Pagination parameter |
proxy_id | number | No | 12569758 | Proxy ID. Exact match. Comma-separated for batch. Max 100 |
ip | string | No | 154.56.47.2 | IP address. Exact match (non-fuzzy). Comma-separated for batch. Max 100 |
order_id | string | No | 126918259 | Order ID. Exact match. Comma-separated for batch. Max 100 |
remark | string | No | test | Remark. Fuzzy match |
username | string | No | 12gfUPWHZGxZG | Proxy username. Fuzzy match |
password | string | No | 12gfUPWHZGxZG | Proxy password. Fuzzy match |
Response Data
Name | Type | Example | Description |
|---|---|---|---|
total | number | 1 | - |
list | object [] | - | - |
proxy_id | number | 12569758 | Proxy ID |
ip | string | 154.56.47.2 | Proxy IP |
port | number | 30123 | Proxy Port |
username | string | 12gfUPWHZGxZG | Proxy Username |
password | string | 12gfUPWHZGxZG | Proxy Password |
remark | string | test | remark |
status | number | 1 | Status. 1 available, 2 disabled, 3 expired, 5 abnormal |
expire_time | number | 1756786560 | Expiration time |
area | string | US-Washington/Seattle | Proxy Location |