ProxyCC OpenAPI
Please log in to view the app_key authentication key on the homepage of your personal center.
Please keep the key safe, as it has administrator privileges for your account.
Base URLs:
https://api.proxy.cc
Authentication method
App Key 认证
POST Parameters:
app_key: {your_app_key}
Or as a query parameter:
?app_key={your_app_key}
Response format
All interfaces return a unified JSON format:
{
"code": 200,
"message": "操作成功",
"data": {}
}
code: Status code, 200 indicates success, other values indicate failuremessage: Response message (Chinese)data: Response data
Authentication
This interface supports the following two authentication methods:
1. Bearer Token(JWT)
Pass the Token through the HTTP Header.
Header 示例:
Authorization: Bearer <your_jwt_token>
API Key Authentication
This interface uses the API Key method for authentication.
The client needs to include the app_key parameter in the request, otherwise the request will be rejected.
Example:
GET /api/example?app_key=your_app_key
POST /api/example?app_key=your_app_key
Content-Type: application/json
Proxy Account Management
GET Proxy Account List
GET /open/whitelist-account/list
Return example
Successful Response (200)
{
"code": 200,
"msg": "string",
"data": {
"list": [
{
"id": 0,
"username": "string",
"password": "string",
"created_at": "string",
"remark": "string",
"product_type": 9,
"usage_flow": 0,
"limit_flow": 102400,
"status": 0
}
]
}
}
Return Result
| Status Code | Status Code Meaning | Description | Data Model |
|---|---|---|---|
| 200 | OK | Request successful | Inline |
Return Data Structure
Status Code 200
| Name | Type | Required | Constraint | Chinese Name | Description |
|---|---|---|---|---|---|
| » code | responseCode | false | none | Status code, 200 success, 3 app_key invalid | |
| » msg | string | false | none | Status message | |
| » data | object | false | none | none | |
| »» list | [object] | false | none | none | |
| »»» id | integer | false | none | Account number | |
| »»» username | string | false | none | Agent account name | |
| »»» password | string | false | none | Agent account password | |
| »»» created_at | string | false | none | Add Time | |
| »»» remark | string | false | none | Remarks | |
| »»» product_type | productTypes | false | none | Package Type, 9 Dynamic Residential Traffic Package, 11 Dynamic Residential IP, 14 Static Datacenter IP, 25 Static Residential IP | |
| »»» usage_flow | integer | false | none | Traffic Used, Unit: KB | |
| »»» limit_flow | integer | false | none | Custom traffic limit: Unit GB, maximum 102400, 0 for unlimited | |
| »»» status | integer | false | none | Enable status: 1 enabled, 0 disabled |
Enum Value
| Property | Value |
|---|---|
| product_type | 9 |
| product_type | 11 |
| product_type | 14 |
| product_type | 25 |
POST Add Proxy Account
POST /open/whitelist-account/add
Body Request Parameters
{
"app_key": "stringstringstringstringstringst",
"accounts": "user01:pass,user02:pass,user03:pass",
"remark": "",
"product_type": 9
}
Request Parameters
| Name | Location | Type | Required | Description |
|---|---|---|---|---|
| body | body | object | No | none |
| » app_key | body | string | No | Authorization Key |
| » accounts | body | string | No | Account password, please fill in the format username:password. Only numbers and letters are supported for the account and password. Do not enter any special symbols or spaces. Separate the account and password with a colon. Batch addition is supported, and proxy accounts are separated by English commas (,). |
| » remark | body | string | No | Proxy account description |
| » product_type | body | productTypes | No | Package Type, 9 Dynamic Residential Traffic Package, 11 Dynamic Residential IP, 14 Static Datacenter IP, 25 Static Residential IP |
Enum Value
| Property | Value |
|---|---|
| » product_type | 9 |
| » product_type | 11 |
| » product_type | 14 |
| » product_type | 25 |
Return example
200 Response
{
"code": 200,
"msg": "string",
"data": null
}
Return Result
| Status Code | Status Code Meaning | Description | Data Model |
|---|---|---|---|
| 200 | OK | Request successful | Inline |
Return Data Structure
Status Code 200
| Name | Type | Required | Constraint | Chinese Name | Description |
|---|---|---|---|---|---|
| » code | integer | false | none | Status code: 200 Success, 3 invalid app_key, 156 account not real-name authenticated | |
| » msg | string | false | none | Status message | |
| » data | null | false | none | none |
POST Delete Proxy Account
POST /open/whitelist-account/delete
Please note that deletion is irreversible, and used traffic and other data cannot be queried after deletion. Deletion takes approximately 5 minutes, and charges may still be incurred during this period.
Body Request Parameters
{
"app_key": "stringstringstringstringstringst",
"accounts": "user01,user02"
}
Request Parameters
| Name | Location | Type | Required | Description |
|---|---|---|---|---|
| body | body | object | No | none |
| » app_key | body | string | No | Authorization Key |
| » accounts | body | string | No | Proxy account, only supports numbers and letters. Supports batch operations, separate proxy accounts with English commas (,). |
Return example
200 Response
{
"code": 200,
"msg": "string",
"data": null
}
Return Result
| Status Code | Status Code Meaning | Description | Data Model |
|---|---|---|---|
| 200 | OK | Request Success | Inline |
Return Data Structure
Status Code 200
| Name | Type | Required | Constraint | Chinese Name | Description |
|---|---|---|---|---|---|
| » code | integer | false | none | Status code: 200 Success, 3 invalid app_key, 156 account not real-name authenticated | |
| » msg | string | false | none | Status message | |
| » data | null | false | none | none |
POST Disable Proxy Account
POST /open/whitelist-account/disable
Disabling has an approximately 5-minute waiting period, during which fees may still be incurred.
Body Request Parameters
{
"app_key": "stringstringstringstringstringst",
"accounts": "user01,user02"
}
Request Parameters
| Name | Location | Type | Required | Description |
|---|---|---|---|---|
| body | body | object | No | none |
| » app_key | body | string | No | Authorization Key |
| » accounts | body | string | No | Proxy account, only supports numbers and letters. Supports batch operations, separate proxy accounts with English commas (,). |
Return example
200 Response
{
"code": 200,
"msg": "string",
"data": null
}
Return Result
| Status Code | Status Code Meaning | Description | Data Model |
|---|---|---|---|
| 200 | OK | Request Success | Inline |
Return Data Structure
Status Code 200
| Name | Type | Required | Constraint | Chinese Name | Explanation |
|---|---|---|---|---|---|
| » code | integer | false | none | Status code, 200 success, 3 app_key invalid, 156 account not real-name authenticated | |
| » msg | string | false | none | Status message | |
| » data | null | false | none | none |
POST Enable Proxy Account
POST /open/whitelist-account/enable
Body Request Parameters
{
"app_key": "stringstringstringstringstringst",
"accounts": "user01,user02"
}
Request Parameters
| Name | Location | Type | Required | Description |
|---|---|---|---|---|
| body | body | object | No | none |
| » app_key | body | string | No | Authorization Key |
| » accounts | body | string | No | Proxy account, only supports numbers and letters. Supports batch operations, separate proxy accounts with English commas (,). |
Return example
200 Response
{
"code": 200,
"msg": "string",
"data": null
}
Return Result
| Status Code | Status Code Meaning | Description | Data Model |
|---|---|---|---|
| 200 | OK | Request Success | Inline |
Return Data Structure
Status Code 200
| Name | Type | Required | Constraint | Chinese Name | Description |
|---|---|---|---|---|---|
| » code | integer | false | none | Status code: 200 Success, 3 invalid app_key, 156 account not real-name authenticated | |
| » msg | string | false | none | Status message | |
| » data | null | false | none | none |
POST Modify proxy account password
POST /open/whitelist-account/change-password
Please note that there is a 5-minute waiting period after modification, during which the old password may still be used normally.
Body Request Parameters
{
"app_key": "stringstringstringstringstringst",
"account": "user",
"password": "pass"
}
Request Parameters
| Name | Location | Type | Required | Description |
|---|---|---|---|---|
| body | body | object | No | none |
| » app_key | body | string | No | Authorization Key |
| » account | body | string | No | Proxy account, only supports numbers and letters. |
| » password | body | string | No | New password for proxy account, only numbers and letters are supported. |
Return example
200 Response
{
"code": 200,
"msg": "string",
"data": null
}
Return Result
| Status Code | Status Code Meaning | Description | Data Model |
|---|---|---|---|
| 200 | OK | Request Success | Inline |
Return Data Structure
Status Code 200
| Name | Type | Required | Constraint | Chinese Name | Description |
|---|---|---|---|---|---|
| » code | integer | false | none | Status code: 200 Success, 3 invalid app_key, 156 account not real-name authenticated | |
| » msg | string | false | none | Status message | |
| » data | null | false | none | none |
POST Modify proxy account remarks
POST /open/whitelist-account/change-remark
Body Request Parameters
{
"app_key": "stringstringstringstringstringst",
"account": "user",
"remark": ""
}
Request Parameters
| Name | Location | Type | Required | Description |
|---|---|---|---|---|
| body | body | object | No | none |
| » app_key | body | string | No | Authorization Key |
| » account | body | string | No | Proxy account, only supports numbers and letters. |
| » remark | body | string | No | New agent account note, within 32 Chinese characters or 64 English characters. |
Return example
200 Response
{
"code": 200,
"msg": "string",
"data": null
}
Return Result
| Status Code | Status Code Meaning | Description | Data Model |
|---|---|---|---|
| 200 | OK | Request Success | Inline |
Return Data Structure
Status Code 200
| Name | Type | Required | Constraint | Chinese Name | Description |
|---|---|---|---|---|---|
| » code | integer | false | none | Status code: 200 Success, 3 invalid app_key, 156 account not real-name authenticated | |
| » msg | string | false | none | Status message | |
| » data | null | false | none | none |
POST Modify Agent Account Traffic Limit
POST /open/whitelist-account/change-limit
Please note that traffic statistics may have a delay of up to 5 minutes, meaning the actual traffic consumption may exceed this limit.
Body Request Parameters
{
"app_key": "stringstringstringstringstringst",
"account": "user",
"limit": 0
}
Request Parameters
| Name | Location | Type | Required | Description |
|---|---|---|---|---|
| body | body | object | No | none |
| » app_key | body | string | No | Authorization Key |
| » account | body | string | No | Proxy account, only supports numbers and letters. |
| » limit | body | integer | No | Traffic limit, unit: GB, 0 means no limit |
Return example
200 Response
{
"code": 200,
"msg": "string",
"data": null
}
Return Result
| Status Code | Status Code Meaning | Description | Data Model |
|---|---|---|---|
| 200 | OK | Request Success | Inline |
Return Data Structure
Status Code 200
| Name | Type | Required | Constraint | Chinese Name | Description |
|---|---|---|---|---|---|
| » code | integer | false | none | Status code: 200 Success, 3 invalid app_key, 156 account not real-name authenticated | |
| » msg | string | false | none | Status message | |
| » data | null | false | none | none |
Traffic Log Query
GET Usage Traffic Aggregated by Day
GET /open/user-usage-flow/total
Request Parameters
| Name | Location | Type | Required | Description |
|---|---|---|---|---|
| app_key | query | string(password) | Yes | Authentication Key |
| start_time | query | string(Y-m-d H:i:s) | No | Start time, accurate to the second. Please note that there is a delay of up to 5 minutes in logging. Default within 7 days. |
| end_time | query | string(Y-m-d H:i:s) | No | End time, accurate to the second. Please note that there is a delay of up to 5 minutes in logging. Defaults to the current time. |
| username | query | string | No | Sub-account name, defaults to query all accounts, can specify a sub-account. Please note that if you have added sub-accounts with the same name, this query will return all usage records for proxy accounts with the same name. |
| product_type | query | number | No | Package Type |
Return example
200 Response
{
"code": 200,
"msg": "string",
"data": {
"list": [
{
"day": "2022-08-01",
"flow": 0
}
]
}
}
Return Result
| Status Code | Status Code Meaning | Description | Data Model |
|---|---|---|---|
| 200 | OK | Request Success | Inline |
Return Data Structure
Status Code 200
| Name | Type | Required | Constraint | Chinese Name | Description |
|---|---|---|---|---|---|
| » code | integer | false | none | Status code: 200 Success, 3 invalid app_key, 156 account not real-name authenticated | |
| » msg | string | false | none | Status message | |
| » data | object | false | none | none | |
| »» list | [object] | false | none | none | |
| »»» day | string | false | none | Date | |
| »»» flow | integer | false | none | Traffic consumption, unit: KB |
Package inquiry
GET purchased package list
GET /open/user-product/list
Request Parameters
| Name | Location | Type | Required | Description |
|---|---|---|---|---|
| app_key | query | string(password) | Yes | Authentication Key |
| trade_no | query | string | No | Order number, please enter the complete order number. Fuzzy search is not supported. |
| page | query | number | No | Pagination, default: 1 |
| size | query | number | No | Number of items per page, default: 20 |
| product_type | query | number | No | Package Type |
Return example
200 Response
{
"code": 200,
"msg": "string",
"data": {
"list": [
{
"id": 0,
"created_at": "2022-05-13 12:14:15",
"expired_at": "2022-05-13 12:14:15",
"product_type": 9,
"trade_no": "2022051312134339861461465434",
"order": {
"created_at": "2022-05-13 12:13:43",
"pay_at": "2022-05-13 12:13:43",
"title": "入门级"
}
}
],
"page": 1,
"page_size": 20,
"total_count": 0,
"total_page": 0
}
}
Return Result
| Status Code | Status Code Meaning | Description | Data Model |
|---|---|---|---|
| 200 | OK | Request Success | Inline |
Return Data Structure
Status Code 200
| Name | Type | Required | Constraint | Chinese Name | Description |
|---|---|---|---|---|---|
| » code | integer | false | none | Status code: 200 Success, 3 invalid app_key, 156 account not real-name authenticated | |
| » msg | string | false | none | Status message | |
| » data | object | false | none | none | |
| »» list | [object] | false | none | none | |
| »»» id | integer | false | none | Package Number | |
| »»» created_at | string | false | none | Package Activation Time | |
| »»» expired_at | string | false | none | Package Expiration Time, after expiration the traffic cannot be used. | |
| »»» product_type | productTypes | false | none | Package Type, 9 Dynamic Residential Traffic Package, 11 Dynamic Residential IP, 14 Static Datacenter IP, 25 Static Residential IP | |
| »»» trade_no | string | false | none | Order transaction number | |
| »»» order | object | false | none | none | |
| »»»» created_at | string | false | none | Order creation time | |
| »»»» pay_at | string | false | none | Order payment time | |
| »»»» title | string | false | none | Order Description | |
| »» page | integer | false | none | Current Page | |
| »» page_size | integer | false | none | Page Size | |
| »» total_count | integer | false | none | Total number of records | |
| »» total_page | integer | false | none | Total number of pages |
Enum Value
| Property | Value |
|---|---|
| product_type | 9 |
| product_type | 11 |
| product_type | 14 |
| product_type | 25 |
IP Extraction
GET Extract IP
GET /open/ip/v3
Request Parameters
| Name | Location | Type | Required | Description |
|---|---|---|---|---|
| app_key | query | string(password) | No | Access Key |
| cc | query | string | No | Country or Region |
| state | query | string | No | State or Province |
| city | query | string | No | City |
| format | query | string | No | Get Format |
| lb | query | string | No | Separator, valid only for text format |
| num | query | number | No | Extraction Quantity |
| life | query | number | No | Keep Cycle - Minutes |
| ep | query | string | No | Proxy Network |
Return example
200 Response
{
"code": 200,
"msg": "string",
"data": {
"list": [
[
"150.109.114.72:1140",
"150.109.114.72:1141",
"150.109.114.72:1142",
"150.109.114.72:1143",
"150.109.114.72:1144",
"150.109.114.72:1145",
"150.109.114.72:1146",
"150.109.114.72:1147",
"150.109.114.72:1148",
"150.109.114.72:1149"
]
]
}
}
Return Result
| Status Code | Status Code Meaning | Description | Data Model |
|---|---|---|---|
| 200 | OK | Request Success | Inline |
Return Data Structure
Status Code 200
| Name | Type | Required | Constraint | Chinese Name | Description |
|---|---|---|---|---|---|
| » code | integer | false | none | Status code: 200 Success, 3 invalid app_key, 156 account not real-name authenticated | |
| » msg | string | false | none | Status message | |
| » data | object | false | none | none | |
| »» list | [any] | false | none | none |
GET City List
GET /open/ip/dynamic-citys
Return example
200 Response
{
"code": 200,
"msg": "string",
"data": {
"list": [
{
"name_zh_cn": "美国",
"name_en": "United States",
"continent_code": "NA",
"country_code": "US",
"items": [
{
"city": null,
"state": null,
"continent_code": null,
"country_code": null
}
]
}
]
}
}
Return Result
| Status Code | Status Code Meaning | Description | Data Model |
|---|---|---|---|
| 200 | OK | Request Success | Inline |
Return Data Structure
Status Code 200
| Name | Type | Required | Constraint | Chinese Name | Description |
|---|---|---|---|---|---|
| » code | integer | false | none | Status code: 200 Success, 3 invalid app_key, 156 account not real-name authenticated | |
| » msg | string | false | none | Status message | |
| » data | object | false | none | none | |
| »» list | [object] | false | none | List | |
| »»» name_zh_cn | string | false | none | Country or region name | |
| »»» name_en | string | false | none | Country or region name | |
| »»» continent_code | string | false | none | Continent code | |
| »»» country_code | string | false | none | Country or region code | |
| »»» items | [object] | false | none | State or Province | |
| »»»» city | string | false | none | City name | |
| »»»» state | string | false | none | Province or state name code | |
| »»»» continent_code | string | false | none | Continent code | |
| »»»» country_code | string | false | none | Country or region code |
GET City Search
GET /open/ip/dynamic-citys/search
Request Parameters
| Name | Location | Type | Required | Description |
|---|---|---|---|---|
| country_code | query | string | Yes | Country or region code |
| state | query | string | Yes | State or province code |
Return example
200 Response
{
"code": 200,
"msg": "string",
"data": {
"list": ["string"]
}
}
Return Result
| Status Code | Status Code Meaning | Description | Data Model |
|---|---|---|---|
| 200 | OK | Request Success | Inline |
Return Data Structure
Status Code 200
| Name | Type | Required | Constraint | Chinese Name | Description |
|---|---|---|---|---|---|
| » code | integer | false | none | Status code: 200 Success, 3 invalid app_key, 156 account not real-name authenticated | |
| » msg | string | false | none | Status message | |
| » data | object | false | none | none | |
| »» list | [string] | false | none | List |
GET State List
GET /open/ip/dynamic-states
Return example
200 Response
{
"code": 200,
"msg": "string",
"data": {
"list": [
{
"name_zh_cn": "美国",
"name_en": "United States",
"continent_code": "NA",
"country_code": "US",
"items": [
{
"state": null,
"continent_code": null,
"country_code": null
}
]
}
]
}
}
Return Result
| Status Code | Status Code Meaning | Description | Data Model |
|---|---|---|---|
| 200 | OK | Request Success | Inline |
Return Data Structure
Status Code 200
| Name | Type | Required | Constraint | Chinese Name | Description |
|---|---|---|---|---|---|
| » code | integer | false | none | Status code: 200 Success, 3 invalid app_key, 156 account not real-name authenticated | |
| » msg | string | false | none | Status message | |
| » data | object | false | none | none | |
| »» list | [object] | false | none | List | |
| »»» name_zh_cn | string | false | none | Country or region name | |
| »»» name_en | string | false | none | Country or region name | |
| »»» continent_code | string | false | none | Continent code | |
| »»» country_code | string | false | none | Country or region code | |
| »»» items | [object] | false | none | State or Province | |
| »»»» state | string | false | none | Province or state name code | |
| »»»» continent_code | string | false | none | Continent code | |
| »»»» country_code | string | false | none | Country or region code |
GET State/Province Search
GET /open/ip/dynamic-states/search
Request Parameters
| Name | Location | Type | Required | Description |
|---|---|---|---|---|
| country_code | query | string | Yes | Country or region code |
Return example
200 Response
{
"code": 200,
"msg": "string",
"data": {
"list": ["string"]
}
}
Return Result
| Status Code | Status Code Meaning | Description | Data Model |
|---|---|---|---|
| 200 | OK | Request Success | Inline |
Return Data Structure
Status Code 200
| Name | Type | Required | Constraint | Chinese Name | Description |
|---|---|---|---|---|---|
| » code | integer | false | none | Status code: 200 Success, 3 invalid app_key, 156 account not real-name authenticated | |
| » msg | string | false | none | Status message | |
| » data | object | false | none | none | |
| »» list | [string] | false | none | List |
GET Extract Purchased Static IP List
GET /open/ip/get-static-ip
Request Parameters
| Name | Location | Type | Required | Description |
|---|---|---|---|---|
| country_code | query | string | No | Country or region code |
| product_type | query | number | No | Product Type, 25: Static Residential IP, 14: Data Center IP |
| trade_no | query | string | No | Filter IPs by Order Number |
| page | query | number | No | Page number |
| size | query | number | No | Page size |
| status | query | number | No | Status, 1: valid, 2: invalid, 3: expiring soon, 4: under maintenance |
Enum Value
| Property | Value |
|---|---|
| product_type | 14 |
| product_type | 25 |
| status | 1 |
| status | 2 |
| status | 3 |
| status | 4 |
Return example
200 Response
{}
Return Result
| Status Code | Status Code Meaning | Description | Data Model |
|---|---|---|---|
| 200 | OK | none | Inline |
Return Data Structure
GET Get the number of static IPs in the sales area
GET /open/static-ip-region
Request Parameters
| Name | Location | Type | Required | Description |
|---|---|---|---|---|
| isp | query | string | No | IP Type |
IP Type Description
| IP Type | Description |
|---|---|
| 1 | Residential Static IP |
| 0 | Data Center Static IP |
Return example
200 Response
{
"code": 200,
"msg": "请求成功",
"data": {
"list": [
{
"code": "US",
"number": 55
}
]
}
}
Return Result
| Status Code | Status Code Meaning | Description | Data Model |
|---|---|---|---|
| 200 | OK | none | Inline |
Return Data Structure
Status Code 200
| Name | Type | Required | Constraint | Chinese Name | Description |
|---|---|---|---|---|---|
| » code | integer | false | none | Status Code, 200 Success | |
| » msg | string | false | none | Status message | |
| » data | object | false | none | none | |
| »» list | [object] | false | none | none | |
| »»» code | string | false | none | Country or region code | |
| »»» number | integer | false | none | Quantity |
Order Management
GET Order List
GET /open/order/list
Request Parameters
| Name | Location | Type | Required | Description |
|---|---|---|---|---|
| page_no | query | integer | No | none |
| page_size | query | integer | No | none |
| trade_no | query | string | No | Order number |
| status | query | integer | No | Order Status |
| product_type | query | integer | No | Product Type |
Detailed Description
status: Order Status
| Status | Description |
|---|---|
| 0 | Pending Payment |
| 1 | Paid |
| 2 | Cancelled due to timeout |
| 3 | Refunded |
product_type: 产品类型
| Product Type | Description |
|---|---|
| 3 | Top Up Balance |
| 9 | Dynamic Traffic Package |
| 11 | Dynamic Global Hourly Package V2 |
| 12 | Long-term IDC traffic package |
| 13 | Residential static IP traffic package |
| 14 | Data center static IP package |
| 15 | Long-term ISP traffic package |
| 16 | Static Traffic Package |
| 17 | Dynamic IP Quantity Package |
| 18 | web-scraper |
| 19 | Static IP Renewal |
| 20 | Static IP Replacement Quota |
| 21 | Static Traffic Package v2 |
| 24 | Static Traffic Add-on Package |
| 25 | Residential Static IP Package |
| 26 | Order Completion - Some payment channels require users to manually enter the amount, such as: virtual currency. If there is a shortfall, you need to contact customer service to make a supplementary payment through this product |
| 27 | Serp |
| 28 | Video |
Enum Value
| Property | Value |
|---|---|
| status | 0 |
| status | 1 |
| status | 2 |
| status | 3 |
| product_type | 3 |
| product_type | 9 |
| product_type | 11 |
| product_type | 12 |
| product_type | 14 |
| product_type | 16 |
| product_type | 17 |
| product_type | 18 |
| product_type | 19 |
| product_type | 21 |
| product_type | 24 |
| product_type | 25 |
| product_type | 26 |
| product_type | 27 |
| product_type | 28 |
Return example
200 Response
{
"code": 0,
"message": "操作成功",
"data": {
"list": [
{
"id": 0,
"trade_no": "string",
"product_id": 0,
"product_name": "string",
"total_fee": 0.1,
"pay_fee": 0.1,
"status": 0,
"created_at": "2019-08-24T14:15:22Z"
}
],
"pagination": {
"total": 0,
"page_no": 0,
"page_size": 0,
"total_pages": 0
}
}
}
Return Result
| Status Code | Status Code Meaning | Description | Data Model |
|---|---|---|---|
| 200 | OK | Success | Inline |
Return Data Structure
POST Create Order
POST /open/order/create
Due to the variety of packages and different configurations for each package, please fill in the parameters according to the actual situation. Improperly filled parameters may cause the order creation to fail.
examples:
Renew Static IP
{
"pid": x, // 联系客服获取
"upids": "1,2,3,4,5,6", // 从 /end-point/ip/get-static-ip 获取对应的ID
"pm_id": 1 // 从 /end-point/payment/list 获取
"coupon_sn: "xxx", // 可选 优惠券
}
Body Request Parameters
{
"pid": 0,
"upids": "string",
"amount": 0,
"pm_id": 0,
"region_list": "string",
"coupon_sn": "string",
"use_invitation_registration_discount": true,
"renew_duration": 0,
"product_sku_bandwidth_id": 0,
"product_sku_concurrency_id": 0,
"recharge_amount": 0
}
Request Parameters
| Name | Location | Type | Required | Description |
|---|---|---|---|---|
| body | body | object | Yes | none |
| » pid | body | integer | Yes | Package ID |
| » upids | body | string | No | Renewal Package ID List |
| » amount | body | number | No | New Package Quantity |
| » pm_id | body | integer | Yes | Payment method ID |
| » region_list | body | string | No | Specify region + quantity when purchasing a static IP |
| » coupon_sn | body | string | No | Coupon code |
| » use_invitation_registration_discount | body | boolean | No | Whether to use invitation registration discount |
| » renew_duration | body | integer | No | Renewal Duration - Static IP Optional |
| » product_sku_bandwidth_id | body | integer | No | Package 11: Bandwidth Package ID |
| » product_sku_concurrency_id | body | integer | No | Package 11: Concurrent Package ID |
| » recharge_amount | body | integer | No | Package 3: Recharge Amount |
Return example
200 Response
{
"code": 0,
"message": "操作成功",
"data": {
"id": 0,
"trade_no": "string",
"product_id": 0,
"product_name": "string",
"total_fee": 0.1,
"pay_fee": 0.1,
"status": 0,
"created_at": "2019-08-24T14:15:22Z"
}
}
Return Result
| Status Code | Status Code Meaning | Description | Data Model |
|---|---|---|---|
| 200 | OK | Created successfully | Inline |
Return Data Structure
POST Cancel Order
POST /open/order/close
Body Request Parameters
{
"trade_no": "string"
}
Request Parameters
| Name | Location | Type | Required | Description |
|---|---|---|---|---|
| body | body | object | Yes | none |
| » trade_no | body | string | Yes | none |
Return Result
| Status Code | Status Code Meaning | Description | Data Model |
|---|---|---|---|
| 200 | OK | Operation successful | None |
User management
GET Get User Information - Not Yet Open
GET /open/user/info
Return example
200 Response
{
"code": 0,
"message": "操作成功",
"data": {
"id": 0,
"email": "[email protected]",
"phone": "string",
"balance": 0.1,
"status": 0,
"is_real_name": true,
"created_at": "2019-08-24T14:15:22Z"
}
}
Return Result
| Status Code | Status Code Meaning | Description | Data Model |
|---|---|---|---|
| 200 | OK | Success | Inline |
Return Data Structure
Payment Management
GET Get Payment Method List
GET /open/payment/groups
Request Parameters
| Name | Location | Type | Required | Description |
|---|---|---|---|---|
| trade_no | query | string | No | Order number - can be passed in when some orders need to obtain a specific payment method |
Return example
200 Response
{
"code": 0,
"message": "操作成功",
"data": {
"list": [
{
"name": "支付方式分组",
"logos": ["https://example.com/logo1.png", "https://example.com/logo2.png"],
"items": [
{
"id": 1,
"title": "title1",
"logo": "https://example.com/logo1.png",
"group": "online",
"disabled": false,
"min": 10,
"max": 5000
}
]
}
]
}
}
Return Result
| Status Code | Status Code Meaning | Description | Data Model |
|---|---|---|---|
| 200 | OK | Successfully obtained | Inline |
Return Data Structure
| Name | Type | Required | Constraint | Chinese Name | Description |
|---|---|---|---|---|---|
| » code | integer | false | none | Status code: 200 Success, 3 invalid app_key, 156 account not real-name authenticated | |
| » msg | string | false | none | Status message | |
| » data | object | false | none | none | |
| »» name | string | false | none | Group Name | |
| »» logos | string[] | false | none | Group Icon List | |
| »» items | object[] | false | none | Grouped Item List | |
| »»» id | integer | false | none | Payment Method ID | |
| »»» title | string | false | none | Payment Method Name | |
| »»» logo | string | false | none | Payment Method Logo | |
| »»» group | string | false | none | Payment Method Grouping Identifier | |
| »»» disabled | boolean | false | none | Whether to disable (default false) | |
| »» min | number | false | none | Minimum amount | |
| »»» max | number | false | none | Maximum amount |
Marketing
GET Recharge Bonus Ratio
GET /open/activity/balance-recharge-gift-ratio
Recharge Bonus Ratio
Return example
200 Response
{
"code": 0,
"msg": "操作成功",
"data": {
"list": [
{
"amount": 100,
"ratio": 1.2
}
]
}
}
Return Result
| Status Code | Status Code Meaning | Description | Data Model |
|---|---|---|---|
| 200 | OK | OK | Inline |
Return Data Structure
| Name | Type | Required | Constraint | Chinese Name | Description |
|---|---|---|---|---|---|
| » code | integer | false | none | Status code: 200 Success, 3 invalid app_key, 156 account not real-name authenticated | |
| » msg | string | false | none | Status message | |
| » data | object | false | none | none | |
| » list | [object] | false | none | none | |
| »» amount | integer | false | none | Recharge Amount | |
| »» ratio | number | false | none | Recharge Ratio |
Data Structure Description (Schemas)
productTypes (Package Types)
| Field | Type | Description |
|---|---|---|
| product_type | integer | Package Type |
Description of Optional Values:
| Value | Meaning |
|---|---|
| 9 | Dynamic Residential Traffic Package |
| 11 | Dynamic Residential IP |
| 14 | Static Datacenter IP |
| 25 | Residential Static IP |
API Key
Used for interface authentication, please pass it through the Query parameter.
| Parameter name | Location | Type | Required | Description |
|---|---|---|---|---|
| app_key | query | string | Yes | Authentication Key |
Common Response Fields
responseCode
| Field | Type | Example | Description |
|---|---|---|---|
| code | integer | 200 | Status code (200 success, 3 means invalid app_key) |
responseMsg
| Field | Type | Example | Description |
|---|---|---|---|
| message | string | success | Response Information |
成功响应(SuccessResponse)
{
"code": 0,
"message": "操作成功",
"data": {}
}
Error Response (ErrorResponse)
{
"code": 400,
"message": "参数错误",
"errors": {}
}
User
{
"id": 0,
"email": "[email protected]",
"phone": "string",
"balance": 0.1,
"status": 0,
"is_real_name": true,
"created_at": "2019-08-24T14:15:22Z"
}
| Name | Type | Required | Constraint | Chinese Name | Description |
|---|---|---|---|---|---|
| id | integer | false | none | none | |
| string(email) | false | none | none | ||
| phone | string | false | none | none | |
| balance | number(float) | false | none | none | |
| status | integer | false | none | none | |
| is_real_name | boolean | false | none | none | |
| created_at | string(date-time) | false | none | none |
Order
{
"id": 0,
"trade_no": "string",
"product_id": 0,
"product_name": "string",
"total_fee": 0.1,
"pay_fee": 0.1,
"status": 0,
"created_at": "2019-08-24T14:15:22Z"
}
| Name | Type | Required | Constraint | Chinese Name | Description |
|---|---|---|---|---|---|
| id | integer | false | none | none | |
| trade_no | string | false | none | none | |
| product_id | integer | false | none | none | |
| product_name | string | false | none | none | |
| total_fee | number(float) | false | none | none | |
| pay_fee | number(float) | false | none | none | |
| status | integer | false | none | none | |
| created_at | string(date-time) | false | none | none |
Product
{
"id": 0,
"name": "string",
"type": 0,
"price": 0.1,
"description": "string"
}
| Name | Type | Required | Constraint | Chinese Name | Description |
|---|---|---|---|---|---|
| id | integer | false | none | none | |
| name | string | false | none | none | |
| type | integer | false | none | none | |
| price | number(float) | false | none | none | |
| description | string | false | none | none |
WhiteIp
{
"id": 0,
"ip": "string",
"remark": "string",
"created_at": "2019-08-24T14:15:22Z"
}
| Name | Type | Required | Constraint | Chinese Name | Description |
|---|---|---|---|---|---|
| id | integer | false | none | none | |
| ip | string | false | none | none | |
| remark | string | false | none | none | |
| created_at | string(date-time) | false | none | none |
WhitelistAccount
{
"id": 0,
"username": "string",
"limit": 0,
"used": 0,
"status": 0
}
| Name | Type | Required | Constraint | Chinese Name | Description |
|---|---|---|---|---|---|
| id | integer | false | none | none | |
| username | string | false | none | none | |
| limit | integer | false | none | none | |
| used | integer | false | none | none | |
| status | integer | false | none | none |
Coupon
{
"id": 0,
"name": "string",
"code": "string",
"discount": 0.1,
"expire_time": "2019-08-24T14:15:22Z"
}
| Name | Type | Required | Constraint | Chinese Name | Description |
|---|---|---|---|---|---|
| id | integer | false | none | none | |
| name | string | false | none | none | |
| code | string | false | none | none | |
| discount | number(float) | false | none | none | |
| expire_time | string(date-time) | false | none | none |
Article
{
"id": 0,
"title": "string",
"content": "string",
"created_at": "2019-08-24T14:15:22Z"
}
| Name | Type | Required | Constraint | Chinese Name | Description |
|---|---|---|---|---|---|
| id | integer | false | none | none | |
| title | string | false | none | none | |
| content | string | false | none | none | |
| created_at | string(date-time) | false | none | none |
Pagination
{
"total": 0,
"page_no": 0,
"page_size": 0,
"total_pages": 0
}
| Name | Type | Required | Constraint | Chinese Name | Explanation |
|---|---|---|---|---|---|
| total | integer | false | none | none | |
| page_no | integer | false | none | none | |
| page_size | integer | false | none | none | |
| total_pages | integer | false | none | none |