C.1 HTTP API
C.1.0.1 基础信息
- BASEURL:
/api
C.1.0.2 Header
- iotbox-token: IoTBoXToken
C.1.0.3 返回Code
code | 描述 |
---|---|
200 | 带内容的成功返回 |
204 | 不带内容的成功返回 |
499 | 采集错误 |
498 | 读取错误 |
497 | 写入错误 |
496 | 文件未找到 |
496 | 恢复配置错误 |
494 | 更新错误 |
493 | 密码错误 |
492 | 用户已禁用 |
491 | 记录重复 |
490 | 脚本检查错误 |
489 | json格式有误 |
450 | 其他错误 |
404 | 资源未找到 |
401 | 未登录 |
400 | 参数错误 |
C.1.1 用户
C.1.1.1 登录
项目 | 内容 | 备注 |
---|---|---|
URL | /user/login | |
Method | POST |
- 请求参数
{
"password":"password",
"username":"admin"
}
- 返回示例
{
"token":"12599b49f6ab6b3abec7d32b3922e9d9"
}
C.1.1.2 登出
项目 | 内容 | 备注 |
---|---|---|
URL | /user/login | |
Method | DELETE |
C.1.1.3 登出
项目 | 内容 | 备注 |
---|---|---|
URL | /user/login | |
Method | DELETE |
C.1.1.4 INFO
项目 | 内容 | 备注 |
---|---|---|
URL | /user/info | |
Method | GET |
- 返回示例
{
"fingerprint": "3f7d0134a560d0393008b984fef2b936",
"hardware": "DEVDEVICE",
"id": 2,
"lisence": {
"count": {
"all": 11
},
"exp": 4100688000,
"fingerprint": "3f7d0134a560d0393008b984fef2b936",
"vpn": false
},
"role": 2,
"software": "2.0.20220509",
"username": "admin"
}
C.1.1.5 修改密码
项目 | 内容 | 备注 |
---|---|---|
URL | /user/change_password | |
Method | PUT |
- 请求参数
{
"password":"password",
"new_password":"new_password"
}
C.1.2 设备
C.1.2.1 设备列表
项目 | 内容 | 备注 |
---|---|---|
URL | /device | |
Method | GET | |
Query | keywords: 按设备名查询设备 |
返回示例
[ { "calc": "function calc(value)\n for i, v in ipairs(value.cnc_alarm) do\n value['cnc_alarm_' .. i .. '_msg'] = v.alarm_msg\n value['cnc_alarm_' .. i .. '_no'] = v.alarm_no\n value['cnc_alarm_' .. i .. '_type'] = v.alarm_type\n end\n value.cnc_alarm = nil\n return value\nend", "config": { "host": "192.168.9.207", "port": 8193 }, "enable": true, "id": 1, "interval": 20, "model": "default", "name": "D001", "state": 0, "type": "fanuc" } ]
C.1.2.2 新增设备
项目 | 内容 | 备注 |
---|---|---|
URL | /device | |
Method | POST |
请求参数
{ "calc": "function calc(value)\n for i, v in ipairs(value.cnc_alarm) do\n value['cnc_alarm_' .. i .. '_msg'] = v.alarm_msg\n value['cnc_alarm_' .. i .. '_no'] = v.alarm_no\n value['cnc_alarm_' .. i .. '_type'] = v.alarm_type\n end\n value.cnc_alarm = nil\n return value\nend", "config": { "host": "192.168.9.207", "port": 8193 }, "enable": true, "interval": 20, "model": "default", "name": "D001", "state": 0, "type": "fanuc" }
返回示例
{ "calc": "function calc(value)\n for i, v in ipairs(value.cnc_alarm) do\n value['cnc_alarm_' .. i .. '_msg'] = v.alarm_msg\n value['cnc_alarm_' .. i .. '_no'] = v.alarm_no\n value['cnc_alarm_' .. i .. '_type'] = v.alarm_type\n end\n value.cnc_alarm = nil\n return value\nend", "config": { "host": "192.168.9.207", "port": 8193 }, "enable": true, "id": 1, "interval": 20, "model": "default", "name": "D001", "state": 0, "type": "fanuc" }
C.1.2.3 获取设备
项目 | 内容 | 备注 |
---|---|---|
URL | /device/<id> | id为设备Id |
Method | GET |
返回示例
{ "calc": "function calc(value)\n for i, v in ipairs(value.cnc_alarm) do\n value['cnc_alarm_' .. i .. '_msg'] = v.alarm_msg\n value['cnc_alarm_' .. i .. '_no'] = v.alarm_no\n value['cnc_alarm_' .. i .. '_type'] = v.alarm_type\n end\n value.cnc_alarm = nil\n return value\nend", "config": { "host": "192.168.9.207", "port": 8193 }, "enable": true, "id": 1, "interval": 20, "model": "default", "name": "D001", "type": "fanuc", "variables": [ { "calc": "", "config": { "builtin": true }, "id": 8, "name": "cnc_type", "readable": true, "writable": false } ] }
C.1.2.4 修改设备
项目 | 内容 | 备注 |
---|---|---|
URL | /device/<id> | id为设备Id |
Method | PUT |
请求参数
{ "calc": "function calc(value)\n for i, v in ipairs(value.cnc_alarm) do\n value['cnc_alarm_' .. i .. '_msg'] = v.alarm_msg\n value['cnc_alarm_' .. i .. '_no'] = v.alarm_no\n value['cnc_alarm_' .. i .. '_type'] = v.alarm_type\n end\n value.cnc_alarm = nil\n return value\nend", "config": { "host": "192.168.9.207", "port": 8193 }, "enable": true, "id": 1, "interval": 20, "model": "default", "name": "D001", "type": "fanuc", "variables": [ { "calc": "", "config": { "builtin": true }, "id": 8, "name": "cnc_type", "readable": true, "writable": false } ] }
返回示例
{ "calc": "function calc(value)\n for i, v in ipairs(value.cnc_alarm) do\n value['cnc_alarm_' .. i .. '_msg'] = v.alarm_msg\n value['cnc_alarm_' .. i .. '_no'] = v.alarm_no\n value['cnc_alarm_' .. i .. '_type'] = v.alarm_type\n end\n value.cnc_alarm = nil\n return value\nend", "config": { "host": "192.168.9.207", "port": 8193 }, "enable": true, "id": 1, "interval": 20, "model": "default", "name": "D001", "type": "fanuc", "variables": [ { "calc": "", "config": { "builtin": true }, "id": 8, "name": "cnc_type", "readable": true, "writable": false } ] }
C.1.2.5 删除设备
项目 | 内容 | 备注 |
---|---|---|
URL | /device/<id> | id为设备Id |
Method | DELETE |
C.1.2.6 获取设备数据OBJECT
项目 | 内容 | 备注 |
---|---|---|
URL | /device/<id>/info | 如果query key为name时,id为设备名,否则id为设备id |
Method | GET | |
Query | key:id类型 type: 选择数据类型 before_item_calc 变量计算前 before_device_calc 设备计算前 |
返回示例
{ "cnc_type": { "id": 8, "ts": 1652085617619, "value": "FANUC 0i MF" }, "cnc_actfspeed": { "id": 27, "ts": 1652085617763, "value": 0 }, }
C.1.2.7 获取设备数据LIST
项目 | 内容 | 备注 |
---|---|---|
URL | /device/<id>/info_array | 如果query key为name时,id为设备名,否则id为设备id |
Method | GET | |
Query | key:id类型 type: 选择数据类型 before_item_calc 变量计算前 before_device_calc 设备计算前 |
返回示例
[ { "id": 20, "name": "cnc_tooloffsetnum", "ts": 1652085597698, "value": 0 }, { "id": 8, "name": "cnc_type", "ts": 1652085597615, "value": "FANUC 0i MF" } ]
C.1.2.8 检查设备故障
项目 | 内容 | 备注 |
---|---|---|
URL | /device/<id>/check_health | id为设备Id |
Method | GET |
返回示例
[ { "code": 90200, "important": false, "state": 0 }, { "code": 40000, "important": false, "state": 0 }, { "code": 10000, "important": false, "state": 0 } ]
C.1.2.9 获取设备变量
项目 | 内容 | 备注 |
---|---|---|
URL | /device/<id>/variable | id为设备Id |
Method | GET | |
Query | start: 返回偏移的数量 limit: 每次返回数量 |
返回示例
[ { "calc": "", "config": { "builtin": true }, "id": 34, "name": "cnc_stemper", "readable": true, "writable": false } ]
C.1.2.10 添加设备变量
项目 | 内容 | 备注 |
---|---|---|
URL | /device/<id>/variable | id为设备Id |
Method | POST |
请求参数
{ "calc": "", "config": { "builtin": true }, "name": "cnc_stemper", "readable": true, "writable": false }
返回示例
{ "calc": "", "config": { "builtin": true }, "id": 34, "name": "cnc_stemper", "readable": true, "writable": false }
C.1.2.11 修改变量
项目 | 内容 | 备注 |
---|---|---|
URL | /variable/<id> | id为变量id |
Method | PUT |
请求参数
{ "calc": "", "config": { "builtin": true }, "name": "cnc_stemper", "readable": true, "writable": false }
返回示例
{ "calc": "", "config": { "builtin": true }, "id": 34, "name": "cnc_stemper", "readable": true, "writable": false }
C.1.2.12 获取变量
项目 | 内容 | 备注 |
---|---|---|
URL | /variable/<id> | id为变量id |
Method | GET |
返回示例
{ "calc": "", "config": { "builtin": true }, "id": 34, "name": "cnc_stemper", "readable": true, "writable": false }
C.1.2.13 删除变量
项目 | 内容 | 备注 |
---|---|---|
URL | /variable/<id> | id为变量id |
Method | DELETE |
C.1.2.14 获取变量值
项目 | 描述 | |
---|---|---|
URL | /variable/<id>/value | id为变量id |
Method | GET |
返回示例
{ "ts": 1652086215825, "value": 123 }
C.1.2.15 写入变量值
项目 | 内容 | 备注 |
---|---|---|
URL | /variable/<id>/value | id为变量id |
Method | PUT |
请求示例
{ "value": 123 }
C.1.2.16 设备边缘计算测试
项目 | 内容 | 备注 |
---|---|---|
URL | /device/<id>/edge_test | id为设备id |
Method | PUT |
请求参数
{ "current": { "cnc_alarm": [ { "alarm_no": 1, "alarm_type": "T01", "alarm_msg": "待机中" }, { "alarm_no": 204, "alarm_type": "XXX", "alarm_msg": "急停" } ] }, "last": "", "calc": "function calc(value)\n for i, v in ipairs(value.cnc_alarm) do\n value['cnc_alarm_' .. i .. '_msg'] = v.alarm_msg\n value['cnc_alarm_' .. i .. '_no'] = v.alarm_no\n value['cnc_alarm_' .. i .. '_type'] = v.alarm_type\n end\n value.cnc_alarm = nil\n return value\nend" }
返回示例
{ "cnc_alarm_1_msg": "待机中", "cnc_alarm_1_no": 1, "cnc_alarm_1_type": "T01", "cnc_alarm_2_msg": "急停", "cnc_alarm_2_no": 204, "cnc_alarm_2_type": "XXX" }
C.1.2.17 变量边缘计算测试
项目 | 内容 | 备注 |
---|---|---|
URL | /variable/<id>/edge_test | id为变量id |
Method | PUT |
请求参数
{ "current": "abc", "last": "def", "calc": "function calc(current,last)\n current=current .. \"imok\"\n return current\nend" }
返回示例
{ "result": "abcimok" }
C.1.2.18 变量边缘计算测试
项目 | 内容 | 备注 |
---|---|---|
URL | /variable/<id>/edge_test | |
Method | PUT |
请求参数
{ "current": "abc", "last": "def", "calc": "function calc(current,last)\n current=current .. \"imok\"\n return current\nend" }
返回示例
{ "result": "abcimok" }
C.1.2.19 使用设备名与变量名获取读取的值
项目 | 内容 | 备注 |
---|---|---|
URL | /device/<device_name>/variable/<variable_name> | device_name: 设备名 variable_name:设备名 |
Method | GET | |
Query | type: 选择数据类型,可空 before_calc 变量计算前 force: 强制刷新数据 |
返回示例
{ "value":123, "ts": 1725878881541 }
C.1.2.20 使用设备名与变量名写入变量值
项目 | 内容 | 备注 |
---|---|---|
URL | /device/<device_name>/variable/<variable_name> | device_name: 设备名 variable_name:设备名 |
Method | PUT |
返回示例
{ "value":123, }
C.1.3 DNC
C.1.3.1 获取云端程序列表
项目 | 内容 | 备注 |
---|---|---|
URL | /device/<id>/dnc/cloudend | 如果query key为name时,id为设备名,否则id为设备id |
Query | key: id类型 path: 父路径,空时为/ |
|
Method | GET |
返回示例
[ {"name": "O1234", "kind": 1, //1为文件夹,2为文件 "time": "2019-08-29 20:13:14" "size": 0 } ]
C.1.3.2 删除云端程序
项目 | 内容 | 备注 |
---|---|---|
URL | /device/<id>/dnc/cloudend | 如果query key为name时,id为设备名,否则id为设备id |
Query | key: id类型<br>path: 程序路径 | |
Method | DELETE |
C.1.3.3 获取IoTBoX中程序列表
项目 | 内容 | 备注 |
---|---|---|
URL | /device/<id>/dnc/boxend | 如果query key为name时,id为设备名,否则id为设备id |
Query | key: id类型 | |
Method | GET |
返回示例
[ {"name": "O1234", "kind": 1, //1为文件夹,2为文件 "time": "2019-08-29 20:13:14" "size": 0 } ]
C.1.3.4 将IoTBoX程序上传到云端
项目 | 内容 | 备注 |
---|---|---|
URL | /device/<id>/dnc/boxend | 如果query key为name时,id为设备名,否则id为设备id |
Query | key: id类型 | |
Method | PUT |
请求示例
{"src": "O1234", //本地文件名 "dst": "/test/path/O1234.nc" //云端文件名 }
C.1.3.5 从云端下载程序到IoTBoX
项目 | 内容 | 备注 |
---|---|---|
URL | /device/<id>/dnc/boxend | 如果query key为name时,id为设备名,否则id为设备id |
Query | key: id类型 | |
Method | POST |
请求示例
{"dst": "O1234", //本地文件名 "src": "/test/path/O1234.nc" //云端文件名 }
C.1.3.6 删除IoTBoX程序
项目 | 内容 | 备注 |
---|---|---|
URL | /device/<id>/dnc/boxend | 如果query key为name时,id为设备名,否则id为设备id |
Query | key: id类型<br>path: 程序路径 | |
Method | DELETE |
C.1.3.7 获取机床中程序列表
项目 | 内容 | 备注 |
---|---|---|
URL | /device/<id>/dnc/toolend | 如果query key为name时,id为设备名,否则id为设备id |
Query | key: id类型 path: 父路径,空时为/ |
|
Method | GET |
返回示例
[ {"name": "O1234", "kind": 1, //1为文件夹,2为文件 "time": "2019-08-29 20:13:14" "size": 0 } ]
C.1.3.8 将机床程序上传到IoTBoX
项目 | 内容 | 备注 |
---|---|---|
URL | /device/<id>/dnc/toolend | 如果query key为name时,id为设备名,否则id为设备id |
Query | key: id类型 | |
Method | PUT |
请求示例
{"src": "/test/path/O1234", //机床文件名 "dst": "O1234" //**IoTBoX**文件名 }
C.1.3.9 从IoTBoX下载程序到机床
项目 | 内容 | 备注 |
---|---|---|
URL | /device/<id>/dnc/toolend | 如果query key为name时,id为设备名,否则id为设备id |
Query | key: id类型 | |
Method | POST |
请求示例
{"src": "O1234", //**IoTBoX**文件名 "dst": "/test/path/O1234.nc" //机床文件名 }
C.1.3.10 删除机床程序
项目 | 内容 | 备注 |
---|---|---|
URL | /device/<id>/dnc/toolend | 如果query key为name时,id为设备名,否则id为设备id |
Query | key: id类型<br>path: 程序路径 | |
Method | DELETE |
C.1.4 备份
C.1.4.1 导出备份
项目 | 内容 | 备注 |
---|---|---|
URL | /system/backup | |
Method | GET |
- 返回备份文件
C.1.4.2 恢复备份
项目 | 内容 | 备注 |
---|---|---|
URL | /system/backup | |
Method | POST | |
Body | 文件内容 |
C.1.5 配置
C.1.5.1 获取配置列表
项目 | 内容 | 备注 |
---|---|---|
URL | /manager/config | |
Method | GET | |
Query | keywords: 按名称搜索 type: 按type搜索 start: 返回偏移的数量 limit: 每次返回数量 |
返回示例
[ { "id": 1, "key": "test_key", "meta": {}, "name": "测试key", "public": false, "type": "system", "value": "test" } ]
C.1.5.2 新增配置
项目 | 内容 | 备注 |
---|---|---|
URL | /manager/config | |
Method | POST |
请求示例
{ "key": "test_key", "meta": {}, "name": "测试key", "public": false, "type": "system", "value": "test" }
返回示例
{ "id": 1, "key": "test_key", "meta": {}, "name": "测试key", "public": false, "type": "system", "value": "test" }
C.1.5.3 获取单个配置
项目 | 内容 | 备注 |
---|---|---|
URL | /manager/config/<id> | 如query key为1时id为配置名,否则id为配置id |
Query | key: 是否使用key获取配置 | |
Method | GET |
返回示例
{ "key": "test_key", "meta": {}, "name": "测试key", "public": false, "type": "system", "value": "test" }
C.1.5.4 获取单个配置(无鉴权公开配置)
项目 | 内容 | 备注 |
---|---|---|
URL | /public/config/<id> | 如query key为1时id为配置名,否则id为配置id |
Query | key: 是否使用key获取配置 | |
Method | GET |
返回示例
{ "key": "test_key", "meta": {}, "name": "测试key", "public": false, "type": "system", "value": "test" }
C.1.5.5 修改配置
项目 | 内容 | 备注 |
---|---|---|
URL | /manager/config/<id> | 如query key为1时id为配置名,否则id为配置id |
Query | key: 是否使用key获取配置 | |
Method | PUT |
请求示例
{ "key": "test_key", "meta": {}, "name": "测试key", "public": false, "type": "system", "value": "test" }
返回示例
{ "id": 1, "key": "test_key", "meta": {}, "name": "测试key", "public": false, "type": "system", "value": "test" }
C.1.5.6 删除配置
项目 | 内容 | 备注 |
---|---|---|
URL | /manager/config/<id> | 如query key为1时id为配置名,否则id为配置id |
Query | key: 是否使用key获取配置 | |
Method | DELETE |
C.1.6 调试
C.1.6.1 调试命令
项目 | 内容 | 备注 |
---|---|---|
URL | /system/cmd | |
Method | PUT |
请求参数
{"cmd": "ping", //可选命令ping,getip,telnet,route,reboot,restart "parameter": "192.168.1.3", //命令为ping参数可为ip或域名,命令为telnet时,参数为host:port "interface": "192.168.1.3" //命令为ping参数为网口,可为空 }
C.1.6.2 系统日志
项目 | 内容 | 备注 |
---|---|---|
URL | /log/debug | |
Method | WEBSOCKET |
C.1.7 IoTBoX配置
C.1.7.1 获取IoTBoX信息
项目 | 内容 | 备注 |
---|---|---|
URL | /gateway | |
Method | GET |
返回示例
{ "fingerprint": "8ea29081b4c78e7bfa539622eb0038c4", "hardware": "WD1ECS", "id": "8ea29081b4c78e7bfa539622eb0038c4", "ports": [ { "comment": "", "device": "eth0", "enable": true, "name": "Ethernet", "type": 3 }, { "comment": "", "device": "/dev/ttyS1", "enable": true, "name": "COM1", "type": 2 } ], "software": "2.0.09090429" }
C.1.7.2 配置IoTBoX信息
项目 | 内容 | 备注 |
---|---|---|
URL | /gateway | |
Method | PUT |
请求示例
{ "id": "8ea29081b4c78e7bfa539622eb0038c4" }
C.1.7.3 获取云端存储信息
项目 | 内容 | 备注 |
---|---|---|
URL | /dnc_config | |
Method | GET |
返回示例
{ "enable": true, "interval": 1, "type": "aws_s3", "secret_key": "SECRET_KEY", // 此配置根据type同 "access_key": "ACCESS_KEY", // 此配置根据type同 "api": "https:://minio.woody.vip/api" // 此配置根据type同 }
C.1.7.4 提交云端存储信息
项目 | 内容 | 备注 |
---|---|---|
URL | /dnc_config | |
Method | PUT |
请求示例
{ "enable": true, "interval": 1, "type": "aws_s3", "secret_key": "SECRET_KEY", // 此配置根据type同 "access_key": "ACCESS_KEY", // 此配置根据type同 "api": "https:://minio.woody.vip/api" // 此配置根据type同 }
C.1.8 IoTBoX授权
C.1.8.1 获取授权信息
项目 | 内容 | 备注 |
---|---|---|
URL | /lisence | |
Method | GET | |
Query | type: temp为临时授权,否则为正式授权 |
返回示例
{ "count": { "fanuc": 3 }, "exp": 4100688000, "fingerprint": "8ea29081b4c78e7bfa539622eb0038c4", "vpn": true }
C.1.8.2 提交授权信息
项目 | 内容 | 备注 |
---|---|---|
URL | /lisence | |
Method | PUT | |
Query | type: temp为临时授权,否则为正式授权 |
请求示例
{ "lisence": "xxxxx" }
C.1.9 网络信息
C.1.9.1 获取网口信息
项目 | 内容 | 备注 |
---|---|---|
URL | /network/interface | |
Method | GET |
返回示例
[ { "dhcp": 0, "gateway": "192.168.9.1", "id": 1, "ip": [ "192.168.9.107/24" ], "name": "eth0", "password": "", "ssid": "", "type": 1 } ]
C.1.9.2 修改网口信息
项目 | 内容 | 备注 |
---|---|---|
URL | /network/interface | |
Method | PUT |
请求示例
[ { "dhcp": 0, "gateway": "192.168.9.1", "id": 1, "ip": [ "192.168.9.107/24" ], "name": "eth0", "password": "", "ssid": "", "type": 1 } ]
C.1.9.3 新增网口
项目 | 内容 | 备注 |
---|---|---|
URL | /network/interface | |
Method | POST |
请求示例
{ "dhcp": 0, "gateway": "192.168.9.1", "id": 1, "ip": [ "192.168.9.107/24" ], "name": "eth0", "password": "", "ssid": "", "type": 1 }
C.1.9.4 删除网口
项目 | 内容 | 备注 |
---|---|---|
URL | /network/interface/<id> | id为网口id |
Method | DELETE |
C.1.9.5 获取DNS信息
项目 | 内容 | 备注 |
---|---|---|
URL | /network/dns | |
Method | GET |
返回示例
[ "114.114.114.114", "8.8.8.8" ]
C.1.9.6 修改DNS信息
项目 | 内容 | 备注 |
---|---|---|
URL | /network/dns | |
Method | PUT |
请求示例
[ "114.114.114.114", "8.8.8.8" ]
C.1.9.7 获取4G配置
项目 | 内容 | 备注 |
---|---|---|
URL | /network/4g | |
Method | GET |
返回示例
{ "apn": "test_apn", "password": "pass", "pincode": "1234", "username": "testuser" }
C.1.9.8 修改4G配置
项目 | 内容 | 备注 |
---|---|---|
URL | /network/4g | |
Method | PUT |
请求示例
{ "apn": "test_apn", "password": "pass", "pincode": "1234", "username": "testuser" }
C.1.9.9 获取路由开启状态
项目 | 内容 | 备注 |
---|---|---|
URL | /network/router | |
Method | GET |
返回示例
{ "enable": true }
C.1.9.10 修改开启状态
项目 | 内容 | 备注 |
---|---|---|
URL | /network/router | |
Method | PUT |
请求示例
{ "enable": true }
C.1.9.11 获取路由信息
项目 | 内容 | 备注 |
---|---|---|
URL | /network/custom_route | |
Method | GET |
返回示例
[ { "net": "192.168.3.1/24", "via": "192.168.9.1" } ]
C.1.9.12 修改路由信息
项目 | 内容 | 备注 |
---|---|---|
URL | /network/custom_route | |
Method | PUT |
请求示例
[ { "net": "192.168.3.1/24", "via": "192.168.9.1" } ]
C.1.9.13 获取测试网络信息
项目 | 内容 | 备注 |
---|---|---|
URL | /network/test_resource | |
Method | GET |
返回示例
{ "host": "www.jd.com", "ip": "114.114.114.114" }
C.1.9.14 修改测试网络信息
项目 | 内容 | 备注 |
---|---|---|
URL | /network/test_resource | |
Method | PUT |
请求示例
{ "host": "www.jd.com", "ip": "114.114.114.114" }
C.1.10 端口转发
C.1.10.1 获取端口转发列表
项目 | 内容 | 备注 |
---|---|---|
URL | /proxy | |
Method | GET |
返回示例
[ { "id": 1, "id_in_server": 24, "ip": "192.168.9.33", "name": "办公电脑", "port": 3389, "proxy_port": 9081, "type": "" } ]
C.1.10.2 新增端口转发
项目 | 内容 | 备注 |
---|---|---|
URL | /proxy | |
Method | POST |
请求示例
{ "name": "办公电脑", "ip": "192.168.9.33", "port": 3389 }
C.1.10.3 获取端口转发
项目 | 内容 | 备注 |
---|---|---|
URL | /proxy/<id> | id为端口转发id |
Method | GET |
返回示例
{ "id": 1, "id_in_server": 24, "ip": "192.168.9.33", "name": "办公电脑", "port": 3389, "proxy_port": 9081, "type": "" }
C.1.10.4 修改端口转发
项目 | 内容 | 备注 |
---|---|---|
URL | /proxy/<id> | id为端口转发id |
Method | PUT |
请求示例
{ "name": "办公电脑", "ip": "192.168.9.33", "port": 3389 }
C.1.10.5 删除端口转发
项目 | 内容 | 备注 |
---|---|---|
URL | /proxy/<id> | id为端口转发id |
Method | DELETE |
C.1.11 推送配置
C.1.11.1 获取推送列表
项目 | 内容 | 备注 |
---|---|---|
URL | /publish | |
Method | GET |
返回示例
[ { "config": { "host": "111", "port": 222, "publisher_ssl_enable": false, "publisher_ssl_version": "default", "version": "v2" }, "enable": true, "enable_control": true, "enable_publish": true, "id": 1, "interval": 1, "name": "aaaa", "type": "mqtt_common" } ]
C.1.11.2 新增推送
项目 | 内容 | 备注 |
---|---|---|
URL | /publish | |
Method | POST |
请求示例
{ "type": "mqtt_common", "enable_publish": true, "enable_control": true, "offline_cache": false, "config": { "publisher_ssl_enable": false, "publisher_ssl_version": "default", "version": "v2", "host": "192.168.9.33", "port": 1883 }, "interval": 1, "offlineCache": true, "name": "aaaa" }
C.1.11.3 获取推送
项目 | 内容 | 备注 |
---|---|---|
URL | /publish/<id> | id为推送id |
Method | GET |
返回示例
{ "config": { "host": "111", "port": 222, "publisher_ssl_enable": false, "publisher_ssl_version": "default", "version": "v2" }, "enable": true, "enable_control": true, "enable_publish": true, "id": 1, "interval": 1, "name": "aaaa", "type": "mqtt_common" }
C.1.11.4 修改推送
项目 | 内容 | 备注 |
---|---|---|
URL | /publish/<id> | id为推送id |
Method | PUT |
请求示例
{ "config": { "host": "111", "port": 222, "publisher_ssl_enable": false, "publisher_ssl_version": "default", "version": "v2" }, "enable": true, "enable_control": true, "enable_publish": true, "id": 1, "interval": 1, "name": "aaaa", "type": "mqtt_common" }
C.1.11.5 删除推送
项目 | 内容 | 备注 |
---|---|---|
URL | /publish/<id> | id为推送id |
Method | DELETE |
C.1.12 自定义推送平台
C.1.12.1 获取推送平台列表
项目 | 内容 | 备注 |
---|---|---|
URL | /publish_type | |
Method | GET |
返回示例
[ { "id": 1, "builtin": 0, "rank": 100, "schema": "xxxx", "script": ", "name": "巫迪V2" } ]
C.1.12.2 新增推送平台
项目 | 内容 | 备注 |
---|---|---|
URL | /publish_type | |
Method | POST |
请求示例
{ "builtin": 0, "rank": 100, "schema": "xxxx", "script": ", "name": "巫迪V2" }
C.1.12.3 获取推送平台
项目 | 内容 | 备注 |
---|---|---|
URL | /publish_type/<id> | id为推送平台id |
Method | GET |
返回示例
{ "id": 1, "builtin": 0, "rank": 100, "schema": "xxxx", "script": ", "name": "巫迪V2" }
C.1.12.4 修改推送平台
项目 | 内容 | 备注 |
---|---|---|
URL | /publish_type/<id> | id为推送平台id |
Method | PUT |
请求示例
{ "id": 1, "builtin": 0, "rank": 100, "schema": "xxxx", "script": ", "name": "巫迪V2" }
C.1.12.5 删除推送平台
项目 | 内容 | 备注 |
---|---|---|
URL | /publish_type/<id> | id为推送平台id |
Method | DELETE |
C.1.12.6 测试推送平台
项目 | 内容 | 备注 |
---|---|---|
URL | /publish_type/<id>/test | id为推送id |
Method | PUT |
C.1.13 系统更新
C.1.13.1 检查更新
项目 | 内容 | 备注 |
---|---|---|
URL | /system/update | |
Method | GET |
返回示例
{ "id": 1, "builtin": 0, "rank": 100, "schema": "xxxx", "script": ", "name": "巫迪V2" }
C.1.13.2 确认更新
项目 | 内容 | 备注 |
---|---|---|
URL | /system/update | |
Method | PUT |
请求示例
{ "id": 1, "builtin": 0, "rank": 100, "schema": "xxxx", "script": ", "name": "巫迪V2" }
C.1.13.3 上传更新固件
项目 | 内容 | 备注 |
---|---|---|
URL | /system/update | |
Method | POST |
C.1.14 VPN配置
C.1.14.1 获取VPN信息
项目 | 内容 | 备注 |
---|---|---|
URL | /vpn | |
Method | GET |
返回示例
{ "enable": true, "password": "woody", "type": 1, "username": "8ea29081b4c78e7bfa539622eb0038c4" }
C.1.14.2 修改VPN信息
项目 | 内容 | 备注 |
---|---|---|
URL | /vpn | |
Method | PUT |
请求示例
{ "enable": true, "password": "woody", "type": 1, "username": "8ea29081b4c78e7bfa539622eb0038c4" }