即时拨测
更新时间:2024-01-23
探测任务相关
创建探测任务
请求结构
- method:POST
- URL:/csm/api/v1/site/once/{protocolType}/taskCreate
请求参数
protocolType | String | 要创建的协议类型,全大写,可选: HTTP/HTTPS/PING/FTP/TCP/UDP/DNS | 是 | Path参数 |
---|---|---|---|---|
userId | String | 用户id | 是 | RequestBody参数 |
address | String | 探测地址,如:www.baidu.com | 是 | RequestBody参数 |
advancedFlag | Boolean | 是否开启高级配置,HTTP/HTTPS/TCP适用 | 否 | RequestBody参数 |
ipType | String | 探测点类型: ipv4/ipv6 | 是 | RequestBody参数 |
idc | String | 探测点,可以通过2.1的探测点列表接口获取,多个探测点通过逗号连接,如:beijing-CMNET,beijing-UNICOM | 是 | RequestBody参数 |
timeout | int | 超时时间 | 是 | RequestBody参数 |
protocolType | String | 要创建的协议类型,全大写,可选:HTTP/HTTPS/PING/FTP/TCP/UDP/DNS。要与请求路径中protocolType一致。 | 是 | RequestBody参数 |
onceConfig | OnceConfig | 普通任务配置 | 是 | RequestBody参数 |
advancedConfig | AdvancedConfig | 高级任务配置 | 否 | RequestBody参数 |
groupId | String | 重新探测创建的任务属于同一个group | 否 | RequestBody参数 |
taskType | String | 任务类型,目前只支持:NET_QUAILTY (网络质量) | 是 | RequestBody参数 |
OnceConfig
名称 | 类型 | 描述 |
---|---|---|
anonymousLogin | boolean | 是否匿名登录,选填 |
method | String | HTTP/HTTPS参数,请求方法,必填 |
postContent | String | HTTP/HTTPS参数, POST请求内容,选填 |
kidnapWhite | String | DNS参数,DNS劫持白名单,选填 |
resolveType | String | DNS参数,查询方式,可选:* RECURSION,选填 |
server | String | DNS参数,DNS服务器,如:114.114.114.114,选填 |
packetCount | int | Ping参数,Ping发包数,必填 |
port | int | TCP/UDP/FTP参数,端口号,如:21,必填 |
inputType | int | UDP参数,输入类型: 1: 文本 2: 十六进制格式 0: 无,选填 |
input | String | UDP参数,请求内容,选填 |
outputType | int | UDP参数,输入类型: 1: 文本 2: 十六进制格式 0: 无,选填 |
expectedOutput | String | UDP参数,期望输出,选填 |
username | String | FTP参数,用户名,选填 |
password | String | FTP参数,登陆密码,选填 |
AdvancedConfig
名称 | 类型 | 描述 |
---|---|---|
cookies | String | HTTP/HTTPS参数,请求头中Cookie字段,选填 |
userAgent | String | HTTP/HTTPS参数,请求头中User-Agent字段,选填 |
host | String | HTTP/HTTPS参数,请求头中HSOT字段,选填 |
responseCode | String | HTTP/HTTPS参数,响应码 Code,选填 |
responseCheck | String | HTTP/HTTPS参数,响应内容匹配,选填 |
username | String | HTTP/HTTPS参数,验证用户名,选填 |
password | String | HTTP/HTTPS参数,验证密码,选填 |
inputType | int | TCP参数,输入类型: 1: 文本 2: 十六进制格式 0: 无,选填 |
input | String | TCP参数,请求内容,选填 |
outputType | int | TCP参数,输入类型:1: 文本 2: 十六进制格式 0: 无,选填 |
expectedOutput | String | TCP参数,期望输出,选填 |
请求示例
JSON
1POST /csm/api/v1/site/once/HTTP/taskCreate
2{
3 "userId": "453bf9588c9e488f9ba2c984129090dc",
4 // 探测地址
5 "address": "www.baidu.com",
6 // 是否开启高级配置,HTTP/HTTPS/TCP适用
7 "advancedFlag": true,
8 // 探测点类型 ipv4/ipv6
9 "ipType": "ipv4",
10 // 探测点
11 "idc": "beijing-CMNET,beijing-UNICOM,beijing-CHINANET,guangdong-CMNET,fujian-CMNET,henan-CMNET,hebei-CHINANET",
12 // 超时时间
13 "timeout": 60,
14 // 协议类型
15 // 各协议类型,全大写
16 "protocolType": "HTTP",
17 // 任务类型
18 // NET_QUAILTY - 网络质量
19 "taskType": "NET_QUAILTY",
20 "onceConfig": {
21 // HTTP/HTTPS
22 // 请求方法
23 "method": "get",
24 // HTTP POST请求内容
25 "postContent": "",
26
27 // DNS
28 // DNS劫持白名单
29 "kidnapWhite": "192.168.1.1",
30 // 查询方式
31 "resolveType": "RECURSION",
32 // DNS服务器
33 "server": "114.114.114.114",
34
35 // PING
36 // Ping发包数
37 "packetCount": 4,
38
39 // TCP/UDP/FTP端口号
40 "port": 22,
41
42 // UDP
43 // UDP请求格式
44 "inputType": 2,
45 // UDP请求内容
46 "input": "0x11",
47 // UDP响应匹配格式
48 "outputType": 2,
49 // UDP响应内容匹配
50 "expectedOutput": "0x11",
51
52 // FTP
53 // FTP登录名
54 "username": "",
55 // FTP登陆密码
56 "password": ""
57 },
58 "advancedConfig": {
59 // HTTP/HTTPS
60 // 请求头中Cookie字段
61 "cookies": "auth=abc",
62 // 请求头中User-Agent字段
63 "userAgent": "os=macOS",
64 // 请求头中HSOT字段
65 "host": "1.1.1.1",
66 // HTTP Code
67 "responseCode": "200",
68 // 响应内容匹配
69 "responseCheck": "success",
70 // HTTP验证用户名
71 "username": "admin",
72 // HTTP验证密码
73 "password": "",
74
75 // TCP
76 // TCP请求格式
77 "inputType": 2,
78 // TCP请求内容
79 "input": "0x11",
80 // TCP响应匹配格式
81 "outputType": 2,
82 // TCP响应内容匹配
83 "expectedOutput": "0x11"
84 }
85}
86
87// Response
88{
89 "requestId":"90742375b871445d8907be7748397ef4",
90 "success":true,
91 "result":{
92 // 任务id
93 "siteId":"jspjUbhwHVotroGFKeRChlriwxlftkxH",
94 // 任务的组id
95 "groupId":"be388838-9381-423e-b4ac-afac8dfe70e3"
96 },
97 "code":200
98}
探测历史记录
请求结构
- method:POST
- URL:/csm/api/v1/site/once/taskList
请求参数
名称 | 类型 | 描述 | 是否必须 | 参数位置 |
---|---|---|---|---|
userId | String | 用户ID | 否 | RequestBody参数 |
url | String | 探测地址,如:www.baidu.com,直接模糊查询 | 否 | RequestBody参数 |
pageNo | int | 分页数 | 是 | RequestBody参数 |
pageSize | int | 分页大小 | 是 | RequestBody参数 |
order | String | 返回列表的顺序,默认为 desc 降序,还可选 asc 升序 | 否 | RequestBody参数 |
orderBy | String | 排序列表依据的字段,默认为创建时间 | 否 | RequestBody参数 |
groupId | String | 重新探测创建的任务属于同一个group | 否 | RequestBody参数 |
请求示例
JSON
1POST /csm/api/v1/site/once/taskList
2{
3 // 请求页
4 "pageNo":1,
5 // 请求页大小
6 "pageSize":10,
7 // 用户id
8 "userId": "453bf9588c9e488f9ba2c984129090dc",
9 // 搜索url,支持模糊匹配
10 "url": "baidu"
11}
12
13// Response
14{
15 "requestId": "8075cc28167807369286310353357a",
16 "code": 200,
17 "result": {
18 "taskList": [
19 {
20 // 任务id
21 "siteId": "PymZbqvHNJfXRcvSEiBOHmcfBWNAjaDB",
22 // 组ID,查询探测历史用
23 "groupId":"be388838-9381-423e-b4ac-afac8dfe70e3",
24 // 用户
25 "userId": "a0d04d7c202140cb80155ff7b6752ce4",
26 // 任务类型,目前只有网络质量
27 // NET_QUALITY - 网络质量
28 "taskType": "NET_QUALITY",
29 // 协议类型
30 "protocolType": "HTTP",
31 // 探测地址
32 "url": "www.baidu.com",
33 // 任务的探测点总数
34 "agentNum": 7,
35 // 返回结果探测点总数
36 "sumSampleNum": 7,
37 // 整体可用率,统计所有探测点计算
38 "success": 100,
39 // 探测时间 ,探测结果完成的时间
40 "monitorTime": "2023-03-06 10:40:14",
41 // 创建时间
42 "createTime": "2023-03-06 10:40:14",
43 // 任务状态
44 // PROBING - 探测中
45 // FINISH - 已完成
46 // FAILED - 探测失败
47 "status": "FINISH"
48 }
49 ],
50 // 当前页
51 "pageNo": 1,
52 // 页大小
53 "pageSize": 10,
54 // 总记录数
55 "totalCount": 1
56 },
57 "success": true,
58 "message": "success"
59}
删除探测记录
请求结构
- method:POST
- URL:/csm/api/v1/site/once/taskDelete
请求参数
名称 | 类型 | 描述 | 是否必须 | 参数位置 |
---|---|---|---|---|
userId | String | 用户ID | 是 | RequestBody参数 |
siteId | String | 探测任务id | 是 | RequestBody参数 |
请求示例
JSON
1POST /csm/api/v1/site/once/taskDelete
2{
3 // 用户id
4 "userId":"453bf9588c9e488f9ba2c984129090dc",
5 // 探测任务id
6 "siteId":"vLZFWRbcubOVuPgQVgNdZsBiNRuuHIIr"
7}
8
9// Response
10{
11 "requestId": "aa2431ff8cb74ba2b9a26d788209a77b",
12 "message": "",
13 "success": true,
14 "result": {
15 "siteId": "vLZFWRbcubOVuPgQVgNdZsBiNRuuHIIr", // 被删除的任务id
16 "groupId": "d13f2b4a-1892-44cb-a3f4-0c7ede23826d"
17 },
18 "code": 200
19}
探测任务结果
请求结构
- method:POST
- URL: /csm/api/v1/site/once/loadData
请求参数
名称 | 类型 | 描述 | 是否必须 | 参数位置 |
---|---|---|---|---|
userId | String | 用户ID | 是 | RequestBody参数 |
siteId | String | 任务ID | 是 | RequestBody参数 |
pageNo | int | 分页数 | 是 | RequestBody参数 |
pageSize | int | 分页大小 | 是 | RequestBody参数 |
order | String | asc/desc | 否 | RequestBody参数 |
orderBy | String | 排序字段,只能传对应协议类型的指标名 | 否 | RequestBody参数 |
filterArea | String | 按省市过滤探测结果,优先级更高,和filterIsp二选一 | 否 | RequestBody参数 |
filterIsp | String | 按运营商过滤探测结果,和area只能传一个 | 否 | RequestBody参数 |
请求示例
JSON
1 POST /csm/api/v1/site/once/loadData
2{
3 // 请求页
4 "pageNo":1,
5 // 请求页大小
6 "pageSize":10,
7 // 按省市过滤探测结果,优先级更高
8 "filterArea": "beijing",
9
10 // 用户id
11 "userId":"453bf9588c9e488f9ba2c984129090dc",
12 // 探测任务id
13 "siteId":"vLZFWRbcubOVuPgQVgNdZsBiNRuuHIIr"
14}
15
16// Response
17{
18 "requestId": "aa2431ff8cb74ba2b9a26d788209a77b",
19 "code": 200,
20 "result": {
21 // 探测点总数
22 "totalNum": 1,
23 // 页
24 "pageNo": 1,
25 // 页大小
26 "pageSize": 10,
27 // 排序方式
28 "order": "desc",
29 // 排序字段
30 "orderBy": "monitorTime",
31 // 任务状态
32 // PROBING - 探测中
33 // FINISH - 已完成
34 // FAILED - 已失败
35 "status": "FINISH",
36 // 协议类型
37 "protocolType": "HTTP",
38 // 探测地址
39 "url": "www.baidu.com",
40 // 任务类型
41 // NET_QUALITY - 网络质量
42 "taskType": "NET_QUALITY",
43 // 按省市过滤探测结果,优先级更高
44 "filterArea": "beijing",
45 // 按运营商过滤探测结果,和area只能传一个
46 "filterIsp": "CMNET",
47 // 站点任务id
48 "siteId": "id",
49 // nmp侧任务id
50 "jobId": "id",
51 // 任务组id
52 "groupId": "id",
53 // 用户id
54 "userId": "id",
55 // 任务类型指标名,顺序固定
56 "metricOrder": [
57 "totalTime",
58 "dnsTime",
59 "dnsKidnap"
60 ],
61 // 省市集合
62 "allAreas": [
63 "hebei",
64 "tianjin",
65 "hubei",
66 "beijing",
67 "fujian"
68 ],
69 // 指标概览
70 "overviewData": {
71 // 指标部分只会返回该任务协议类型拥有的
72 "metrics": {
73 // 建连时间
74 "connectTime": 17.2,
75 // dns解析事件
76 "dnsTime": 0.005
77 },
78 // 可用率
79 "success": 89,
80 // 采集点总数
81 "sumSampleNum": 7,
82 // 成功数
83 "rightSampleNum": 7,
84 // 失败数
85 "errSampleNum": 0
86 },
87 // 探测详情, 探测点列表
88 "detailData": [
89 {
90 // 探测点数据id
91 "id": 123,
92 // 地域
93 "agentProv": "shanghai",
94 // 运营商
95 "agentIsp": "CHINANET",
96 // 探测端的id
97 "clientId": "122.137.20.16.1",
98 // 探测端城市
99 "clientCity" : "上海",
100 // 解析结果ip
101 "remoteAddr": "220.181.38.150",
102 // 解析结果ip所在地
103 "remoteCity": "保定",
104 // 解析结果ip所在省
105 "remoteArea":"河北",
106 // 解析结果ip所在县/区
107 "remoteCounty":"顺平",
108 // 协议类型 ipv4/ipv6
109 "ipProtocol": "ipv4",
110 // 任务url
111 "url": "www.baidu.com",
112 // dns解析结果
113 "analysisResult": [
114 "112.53.42.114",
115 "112.53.42.52",
116 "2402:4e00:1020:1404:0:9227:71a3:83d2",
117 "2402:4e00:1020:1404:0:9227:71ab:2b74",
118 "ins-r23tsuuf.ias.tencent-cloud.net."
119 ],
120 // 对应协议类型的指标
121 "metrics": {
122 // dnd解析时间
123 "dnsTime": 0.02,
124 // 丢包率
125 "packetLostRate": 0,
126 // 建连时间
127 "connectTime": 44,
128 // 重定向时间
129 "redirectTime": 0,
130 // 任务总耗时
131 "totalTime": 395
132 },
133 // 可用率
134 "success": 100,
135 // 探测时间
136 "monitorTime": "2023-03-06 10:40:55",
137 // 任务状态
138 // PROBING - 探测中
139 // FINISH - 已完成
140 // FAILED - 探测失败
141 "status": "FINISH"
142 }
143 ],
144 // 任务配置,所有字段与创建任务中的请求相同
145 "taskConfig": {
146 ...
147 }
148 },
149 "success": true,
150 "message": "success"
151}
探测详情
请求结构
- Method:POST
- URL:/csm/api/v1/site/once/groupTask
请求参数
名称 | 类型 | 描述 | 是否必须 | 参数位置 |
---|---|---|---|---|
userId | String | 用户ID | 是 | RequestBody参数 |
siteId | String | 任务ID | 否 | RequestBody参数 |
siteIds | List<String> | 任务id列表,和groupId字段只生效一个,优先groupId | 否 | RequestBody参数 |
groupId | String | 组id,同源任务为一个组 | 否 | RequestBody参数 |
pageNo | int | 分页数 | 是 | RequestBody参数 |
pageSize | int | 分页大小 | 是 | RequestBody参数 |
order | String | asc/desc | 否 | RequestBody参数 |
orderBy | String | 排序字段,只能传对应协议类型的指标名 | 否 | RequestBody参数 |
filterArea | String | 按省市过滤探测结果,优先级更高,和filterIsp二选一 | 否 | RequestBody参数 |
filterIsp | String | 按运营商过滤探测结果,和area只能传一个 | 否 | RequestBody参数 |
响应示例
JSON
1POST /csm/api/v1/site/once/groupTask
2{
3 // 组id,同源任务为一个组
4 "groupId": "groub0716ac8-9bf5-4a65-819c-a708f88cd013pId",
5
6 // 用户id
7 "userId": "453bf9588c9e488f9ba2c984129090dc",
8 // 任务详情展示的id,组结果需要过滤当前任务
9 "siteId": "jspjUbhwHVotroGFKeRChlriwxlftkxH",
10 // 页
11 "pageNo": 1,
12 // 页大小
13 "pageSize": 10,
14 // 排序方式
15 "order": "desc",
16 // 排序字段
17 // 为空时默认会取metrics中的第一个指标名
18 "orderBy": "monitorTime"
19 // 按运营商过滤探测结果,和area只能传一个
20 "filterIsp": "CMNET",
21}
22
23// Response
24{
25 "requestId": "aa2431ff8cb74ba2b9a26d788209a77b",
26 "code": 200,
27 "result": {
28 // 历史任务数
29 "totalNum": 1,
30 // 任务总探测点数
31 "sumSampleNum":66
32 // 页
33 "pageNo": 1,
34 // 页大小
35 "pageSize": 10,
36 // 排序方式
37 "order": "desc",
38 // 排序字段
39 "orderBy": "monitorTime",
40 // 协议类型
41 "protocolType": "HTTP",
42 // 探测地址
43 "url": "www.baidu.com",
44 // 任务类型
45 // NET_QUALITY - 网络质量
46 "taskType": "NET_QUALITY",
47 // 按省市过滤探测结果,优先级更高
48 "filterArea": "beijing",
49 // 按运营商过滤探测结果,和area只能传一个
50 "filterIsp": "CMNET",
51 // 组id
52 "groupId": "id",
53 // 探测结果省市集合
54 "allAreas": [
55 "hebei",
56 "tianjin",
57 "hubei",
58 "beijing",
59 "fujian"
60 ],
61 // 指标概览
62 "overviewData": {
63 // 指标部分只会返回该任务协议类型拥有的
64 "metrics": {
65 // 建连时间
66 "connectTime": 17.2,
67 // dns解析事件
68 "dnsTime": 0.005
69 },
70 // 可用率
71 "success": 89,
72 // 采集点总数
73 "sumSampleNum": 7,
74 // 成功数
75 "rightSampleNum": 7,
76 // 失败数
77 "errSampleNum": 0
78 },
79 // 探测详情, 探测点列表
80 "detailData": [
81 {
82 // 探测点数据id
83 "id": 123,
84 // 地区
85 "region":"EAST",
86 // 地域
87 "agentProv": "shanghai",
88 // 运营商
89 "agentIsp": "CHINANET",
90 // 探测ip
91 "clientId": "122.137.20.16.1",
92 // 探测目标的ip
93 "remoteAddr": "220.181.38.150",
94 // 探测ip城市
95 "clientCity" : "上海",
96 // 解析结果ip所在地
97 "remoteCity": "保定",
98 // 解析结果ip所在省
99 "remoteArea":"河北",
100 // 解析结果ip所在县/区
101 "remoteCounty":"顺平",
102 // 协议类型 ipv4/ipv6
103 "ipProtocol": "ipv4",
104 // 任务url
105 "url": "www.baidu.com",
106 // dns解析结果
107 "analysisResult": [
108 "112.53.42.114",
109 "112.53.42.52",
110 "2402:4e00:1020:1404:0:9227:71a3:83d2",
111 "2402:4e00:1020:1404:0:9227:71ab:2b74",
112 "ins-r23tsuuf.ias.tencent-cloud.net."
113 ],
114 // 对应协议类型的指标
115 "metrics": {
116 // dnd解析时间
117 "dnsTime": 0.02,
118 // 丢包率
119 "packetLostRate": 0,
120 // 建连时间
121 "connectTime": 44,
122 // 重定向时间
123 "redirectTime": 0,
124 // 任务总耗时
125 "totalTime": 395
126 },
127 // 可用率
128 "success": 100,
129 // 探测时间
130 "monitorTime": "2023-03-06 10:40:55",
131 // 任务状态
132 // PROBING - 探测中
133 // FINISH - 已完成
134 // FAILED - 探测失败
135 "status": "FINISH"
136 }
137 ]
138 },
139 "success": true,
140 "message": "success"
141}
重新探测
请求结构
- Method:POST
- URL:/csm/api/v1/site/once/createFromTask
请求参数
名称 | 类型 | 描述 | 是否必须 | 参数位置 |
---|---|---|---|---|
userId | String | 用户ID | 是 | RequestBody参数 |
siteId | String | 任务详情展示的id,组结果需要过滤当前任务 | 是 | RequestBody参数 |
响应示例
JSON
1POST /csm/api/v1/site/once/createFromTask
2{
3 // 要重新探测的任务id
4 "siteId": "SVierfbmcidTWxysYCsvsHwANzaFh***",
5 // 用户id
6 "userId": "a0d04d7c202140cb80155ff7b6752***",
7}
8
9
10// Response
11{
12 "requestId": "10c6cc006a544477918e3440e4a8b026",
13 "message": "",
14 "success": true,
15 "result": {
16 // 新的任务id
17 "siteId": "LToOrLqHTPhrhTRppTzHJAtMtPNhrmHL",
18 // 组id, 获取探测历史用
19 "groupId": "dadb06bb-bffe-449d-99b6-d52af98634d4"
20 },
21 "code": 200
22}
历史探测列表
请求结构
- Method:POST
- URL:/csm/api/v1/site/once/groupTaskList
请求参数
名称 | 类型 | 描述 | 是否必须 | 参数位置 |
---|---|---|---|---|
userId | String | 用户ID | 否 | RequestBody参数 |
siteId | String | 任务详情展示的id,组结果需要过滤当前任务 | 否 | RequestBody参数 |
groupId | String | 组id | 否 | RequestBody参数 |
响应示例
JSON
1POST /csm/api/v1/site/once/groupTaskList
2{
3 // 用户id
4 "userId": "453bf9588c9e488f9ba2c984129090dc",
5 // 组id
6 "groupId": "de3cf1fa-a53c-45b0-a331-6a054218b1e4",
7 // 当前探测任务的id,历史列表要过滤该id
8 "siteId" : "YjrgZFVzXOidYPSgkOzSJZAKuazZAKGH",
9}
10
11// Response
12{
13 "requestId": "8075cc28167807369286310353357a",
14 "code": 200,
15 "result": {
16 "taskList": [
17 {
18 // 任务id
19 "siteId": "YjrgZFVzXOidYPSgkOzSJZAKuazZAKGH",
20 // 组ID,查询探测历史用
21 "groupId":"de3cf1fa-a53c-45b0-a331-6a054218b1e4",
22 // 探测地址
23 "url": "www.baidu.com",
24 // 创建时间
25 "createTime": "2023-03-06 10:40:14",
26 }
27 ],
28 // 总记录数
29 "totalCount": 1
30 },
31 "success": true,
32 "message": "success"
33}
探测点接口
获取当前探测点
请求结构
- Method:GET
- URL:/csm/api/v1/site/once/siteAgent
请求参数
名称 | 类型 | 描述 | 是否必须 | 参数位置 |
---|---|---|---|---|
userId | String | 用户ID | 是 | Query参数 |
ipType | String | ip的类型,ipv6、ipv4两种 | 否 | Query 参数 |
响应示例
JSON
1GET /csm/api/v1/site/once/siteAgent?userId=453bf9588c9e488f9ba2c984129090dc
2
3// Response
4{
5 "requestId": "6d1cfdc92bc14f99862e1b7fa05713a5",
6 "success": true,
7 "result": {
8 {
9 "whiteUser": true,
10 "siteAgents": [
11 {
12 "agentId": "shandong-CMNET",
13 "agentName": "山东移动",
14 // NORTH -- 华北
15 // EAST -- 华东
16 // SOUTH -- 华南
17 // NORTHEAST -- 东北
18 // CENTRAL -- 华中
19 // NORTHWEST -- 西北
20 // SOUTHWEST -- 西南
21 "region": "EAST"
22 // ipv4有效探测点
23 "status": 10,
24 // ipv6有效探测点
25 "ipv6Status": 1,
26 },
27 {
28 "agentId": "xizang-CMNET",
29 "agentName": "西藏移动",
30 "region": "NORTHWEST"
31 "status": 10,
32 "ipv6Status": 1,
33 }
34 ]
35 },
36 "code": 200
37 }