查询IP资源
## 1 接口描述
接口地址:https://proxy.qg.net/query ;
本接口用于查询用户可用的代理IP资源列表;
该接口单个Key的请求频率限制为:(通道数*5+10)次/分钟;
方法:HTTP、GET,需要注意不能混合使用;
编码:参数和返回内容均采用utf-8编码。
## 2 输入参数说明
|参数名|是否必选|类型|描述|
|:---- |:---|:----- |----- |
|Key |是 |String |查询的Key值 |
|TaskID |否 |String|任务ID;多个用","分割;默认全部 |
|Detail |否 |Integer|详情,0:关闭;1:开启;默认为0 |
## 3 返回值
接口可返回json格式,字段说明如下:
|参数名|类型|描述|
|:---- |:----- |----- |
|Code |Integer |结果编码,0:成功;-1:失败|
|TotalNum |Integer |总IP数|
|TaskNum |Integer |任务数|
|TaskList |Array |任务列表|
## 4 示例
请求接口示例:
```
curl "https://proxy.qg.net/query?Key=请改成您的Key"
```
返回示例:
```
{
"Code": 0,
"TaskList": [
{
"TaskID": "91107E16D28AC5A",
"Num": 1,
"Data": [
{
"IP": "127.0.0.1",
"port": "21504",
"deadline": "2022-11-18 15:06:05",
"host": "114.231.8.147:21504"
}
]
}
],
"TaskNum": 1,
"TotalNum": 1
}
```
**重点:在共享企业池的产品中使用该接口,查询出来的IP资源Data结构中的host和IP是不一样的,其他产品下host和IP是一样的。企业池产品中用户使用host进行代理,这时真实的代理IP为IP字段的IP(运营商为移动的情况下可能不会那么准确,即使代理IP可能不通,也都是同一个地区的IP,影响不会大)**
## 5 接口返回错误码
| 错误码 | 描述 |
| ------------ | ------------ |
| -1 | 未知错误 |
| -10 | 参数不合法 |
| -11 | 请求过于频繁 |
| -12 | Authkey被封禁 |
| -100 | 计划不存在或已过期 |
查询可用区域
## 1 接口描述
接口地址: https://proxy.qg.net/resources ;
本接口用于查询平台可用的代理IP资源列表;
该接口单个Key的请求频率限制为:60 次/分钟;
方法:HTTP、GET,需要注意不能混合使用;
编码:参数和返回内容均采用utf-8编码。
## 2 输入参数说明
|参数名|是否必选|类型|描述|
|:---- |:---|:----- |----- |
|Key |是 |String |查询的Key值 |
|AreaId |否 |String|区域编号 |
|Isp |否 |Integer|运营商编号 |
|Status |否 |Integer|可用状态,0:不可用;1:可用 |
## 3 返回值
接口可返回文本格式、json格式、xml格式,字段说明如下:
|参数名|类型|描述|
|:---- |:----- |----- |
|Code |Integer |结果编码,0:成功;-1:失败|
|Data|Array| 资源列表 |
## 4 示例
请求接口示例:
```
curl "https://proxy.qg.net/resources?Key=请改成您的Key"
```
返回示例:
```
{
"Code": 0,
"Data": [
{
"AreaId": "350500",
"AreaName": "福建泉州市",
"Isp": "1",
"IspName": "电信",
"Status": "1"
}
]
}
```
##5 接口返回错误码
| 错误码 | 描述 |
| ---- | ------------- |
| -1 | 未知错误 |
| -10 | 参数不合法 |
| -11 | 请求过于频繁 |
| -12 | AuthKey被封禁 |
| -15 | Authkey对应的业务无此功能权限 |
| -100 | 计划不存在或已过期 |
密钥查询
**简要描述:**
- 获取密钥信息
**输入示例:**
- https://qg.net/api/proxyip/authkeyList
**返回示例**
JSON格式
```
{
"RequestId":"ASDF4ASF-ASDFASF",
"Code": 200,
"Data": {
"1":{
"Authkey": "按量的Key",
"Authpwd": "218DBDA51A4C",
"Remark": null,
"Suid_list": [
{
"Number": 10000,
"Buy_time": "2021-03-17 09:47:34",
"End_time": "2023-03-17 09:47:34",
"Order_status": 1,
"Type": 2,
"Ip_type": 2,
"Resource_available": 10000,
"Resource_no": "SyqLAfghF"
}
]
},
"2":{
"Authkey": "按时的Key",
"Authpwd": "xxxx",
"Remark": null,
"Suid_list": [
{
"Suid": "crgrum1a",
"Number": 1,
"Buy_time": "2021-03-18 11:46:03",
"End_time": "2021-04-18 11:46:03",
"Order_status": 1,
"Type": 2,
"Ip_type": 2
}
]
}
},
"Message":"获取成功"
}
```
**返回参数说明**
|参数名|类型|说明|
|:----- |:-----|----- |
|RequestId |string |请求编号 |
|Code |integer |返回状态码 |
|Message |string |返回内容 |
|Authkey |string |Authkey |
|Authpwd |string |Authpwd |
|Remark |string |备注 |
|Suid_list |array |关联的业务列表|
**关联的业务列表参数说明**
|参数名|类型|说明|
|:----- |:-----|----- |
|Number |integer |按量:ip数;按时:通道数|
|Connect |integer |IP类型为隧道时,连接数; IP类型为动态或静态时,连接数限制|
|Buy_time |string |购买时间|
|End_time |string |到期时间|
|Order_status |string |状态,1:正常; 3:过期; -1:已失效; -4:开通失败; -5:续费失败; -6:升级失败; -7:锁定|
|Type |integer |资源类型,1:独享;2:共享;3:独占|
|Ip_type |integer |IP类型,1:静态;2:动态;3:隧道|
|Resource_available |integer |按量业务余量 |
|Resource_no |string |按量业务标识 |
|Suid |string |按时业务标识 |
**备注:**
更多返回错误代码请看首页的错误代码描述。
按量产品购买询价
**简要描述:**
按量产品购买询价。
**输入参数:**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|spec_id |是 |integer |按量产品ID |
|resource_number |否 |integer | 购买数量 |
**输入示例:**
- https://qg.net/api/Proxyip/getResourcePrice?spec_id=888&resource_number=1
**返回示例**
JSON格式
```
{
"RequestId":"ASDF4ASF-ASDFASF",
"Code": 200,
"Data": {
"OriginPrice":134,
"TotalPrice":68
},
"Message":"获取成功"
}
```
**返回参数说明**
|参数名|类型|说明|
|:----- |:-----|----- |
|RequestId |string |请求编号 |
|Code |integer |返回状态码 |
|Message |string |返回内容 |
|OriginPrice |float |原价 |
|TotalPrice |float |应付价格 |
**备注:**
更多返回错误代码请看首页的错误代码描述。
按量产品购买
**简要描述:**
按量产品购买。
**输入参数:**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|spec_id |是 |integer| 按量产品ID |
|resource_number |是 |integer | 购买数量 |
|Authkey |否 |string |Authkey |
**输入示例:**
- https://qg.net/api/Proxyip/resourcePay?spec_id=888&resource_number=1
**返回示例**
JSON格式
```
{
"RequestId": "28A6D3E5-2369-B23C-8020-C2DC58AB7474"
"Code": 200,
"Message": "购买成功",
"Data": {
"Resource_no": "FYdqRLDsS",
"Authkey": "ZYJLHVK1",
"Authpwd": "0DBF3A35A953",
"Tunnel_url" : "tunnel.qg.net:3434"
},
}
```
**返回参数说明**
|参数名|类型|说明|
|:----- |:-----|----- |
|RequestId |string |请求编号 |
|Code |integer |返回状态码 |
|Message |string |返回内容 |
|Resource_no |string |按量业务标识 |
|Authkey |string |Authkey |
|Authpwd |string |Authpwd |
|Tunnel_url |string |隧道地址 |
**备注:**
更多返回错误代码请看首页的错误代码描述。
查询按时业务详情
**简要描述:**
获取按时业务详细信息。
**参数:**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|suid |是 |string |业务标识 |
**输入示例:**
- https://qg.net/api/proxyip/view?suid=ebt2c7qr
**返回示例**
JSON格式
```
{
"RequestId":"ASDF4ASF-ASDFASF",
"Code": 200,
"Data": {
"Authkey": "2BE0556E",
"Number": 3,
"Buy_time": "2021-03-25 14:46:50",
"End_time": "2022-03-28 14:46:50",
"Order_status": 1,
"Type": 1,
"Ip_type": 2,
"Tunnel_url": "tunnel.qg.net:3434"
},
"Message":"获取成功"
}
```
**返回参数说明**
|参数名|类型|说明|
|:----- |:-----|----- |
|RequestId |string |请求编号 |
|Code |integer |返回状态码 |
|Message |string |返回内容 |
|Authkey |string |Authkey |
|Number |integer |通道数|
|Connect |integer |连接数|
|Buy_time |string |购买时间|
|End_time |string |到期时间|
|Order_status |string |状态 1:正常, 3:过期,-4:开通失败; -5:续费失败, -6:升级失败, -7:锁定|
|Type |integer |资源类型 1:独享,2:共享;3:独占|
|Ip_type |integer |IP类型 1:静态,2:动态,3:隧道|
|Tunnel_url |string |隧道地址|
**备注:**
更多返回错误代码请看首页的错误代码描述。
按时业务升级
**简要描述:**
- 业务升级
**输入参数:**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|suid |是 |string |业务标识 |
|number |否 |integer | 升级后通道数,IP类型为静态、动态和隧道固定时长时必传;IP类型为隧道每次请求换ip时不需要传 |
|connect |否 |integer | 升级后连接数,IP类型为隧道每次请求换ip时必传;其他类型不需要传 |
**输入示例:**
- https://qg.net/api/product/upgradeOrderPay?suid=xxx&number=xxx&公共部分
**返回示例**
JSON格式
```
{
"RequestId":'423369C7-AD6F-3GT6-NMJ7-E2RG5N6HG7D3',
"Code": 200,
"Message": "订单支付成功!",
"Data": {
"Number": 3
},
}
```
**返回参数说明**
|参数名|类型|说明|
|:----- |:-----|----- |
|RequestId |string |请求编号 |
|Code |integer |返回状态码 |
|Message |string |返回内容 |
|Number |integer | 升级后通道数 |
|Connect |integer | 升级后连接数 |
**备注:**
更多返回错误代码请看首页的错误代码描述。
按时业务升级询价
**简要描述:**
- 业务升级询价
**输入参数:**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|suid |是 |string |业务标识 |
|number |否 |integer | 升级后通道数,IP类型为静态、动态和隧道固定时长时必传;IP类型为隧道每次请求换ip时不需要传 |
|connect |否 |integer | 升级后连接数,IP类型为隧道每次请求换ip时必传;其他类型不需要传 |
**输入示例:**
- https://qg.net/api/Proxyip/getUpgradePrice?suid=xxx&number=1
**返回示例**
JSON格式
```
{
"RequestId":"ASDF4ASF-ASDFASF",
"Code": 0,
"Data": {
"OriginalPrice": "160",
"TotalPrice": "120",
},
"Message":"获取成功"
}
```
**返回参数说明**
|参数名|类型|说明|
|:----- |:-----|----- |
|RequestId |string |请求编号 |
|Code |integer |返回状态码 |
|Message |string |返回内容 |
|OriginalPrice |float |原价 |
|TotalPrice |float |应付价格 |
**备注:**
更多返回错误代码请看首页的错误代码描述。
按时业务续费
**简要描述:**
- 业务续费
**输入参数:**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|suid |是 |string |业务标识|
|duration |是 |string |续费时长 单位:
- d: 天 例:1d(1天)
- w: 周 例:1w(1周)
- m: 月 例:1m(1个月)
|
**输入示例:**
- https://qg.net/api/Proxyip/renewOrderPay?suid=xxx&duration=1d
**返回示例**
JSON格式
```
{
"RequestId":'423369C7-AD6F-3GT6-NMJ7-E2RG5N6HG7D3',
"Code": 200,
"Message": "订单支付成功!",
"Data": {
"EndTime": "2022-03-29 14:35:54"
},
}
```
**返回参数说明**
|参数名|类型|说明|
|:----- |:-----|----- |
|RequestId |string |请求编号 |
|Code |integer |返回状态码 |
|Message |string |返回内容 |
|EndTime |date |业务到期时间 |
**备注:**
更多返回错误代码请看首页的错误代码描述。
按时业务续费询价
**简要描述:**
- 业务续费询价
**输入参数:**
|参数名|必选|类型|说明|
|:---- |:---|:----- |----- |
|suid |是 |string |业务标识 |
|duration |是 |string | 续费时长 单位:
- d: 天 例:1d(1天)
- w: 周 例:1w(1周)
- m: 月 例:1m(1个月)
|
**输入示例:**
- https://qg.net/api/Proxyip/getRenewPrice?suid=xxx&duration=1m
**返回示例**
JSON格式
```
{
"RequestId":"ASDF4ASF-ASDFASF",
"Code": 0,
"Data": {
"TotalPrice": "1231",
"OriginalPrice": "12154545",
"EndTime": "2020-05-20 00:00:00",
},
"Message":"获取成功",
}
```
**返回参数说明**
|参数名|类型|说明|
|:----- |:-----|----- |
|RequestId |string |请求编号 |
|Code |integer |返回状态码 |
|Message |string |返回内容 |
|TotalPrice |float |应付价格 |
|OriginalPrice |float |原价 |
|EndTime |date |业务到期时间 |
**备注:**
更多返回错误代码请看首页的错误代码描述