WebApi 基础部分
本章涉及一些基础的后端与面板通讯所用Api
功能介绍
对应后端程序
不同后端有其对应的链接;
其中对应后端程序分别:ss,ssr,v2ray,trojan;
正确链接也可通过访问 Route 文件获得;
功能:CoreController
本章节重点为所有WebApi都会使用的通用方程内容:包含上报节点心跳信息,在线人数,用户流量使用情况,节点的审计规则获取与触发审计后的上报。
新特性:所有的发送的Get请求数据都会在 header头部 带有ETAG属性,用与请求header('IF-NONE-MATCH')
进行对比减少重复信息交互。
注意
节点后端与面板使用的时间误差不应该超过5分钟,否则API授权验证失败;
required 字段必须存在,后端可以多提供信息,但不能缺失required 字段,面板可以按需添加其他字段;
请求Header中推荐Accept
填入application/json
以明确需要json放回
上报节点心跳信息
POST
https://api.proxypanel.ml/api/{后端}/v1/nodeStatus/:id
后端周期性(每分钟)上传节点信息
Path Parameters
id*
number
节点ID:int(10) unsigned
Headers
key*
string
由管理后台线路系统,线路授权处取得授权密钥
timestamp*
number
每次请求的10位时间戳
Request Body
cpu*
string
cpu负载
mem*
string
内存负载
net*
string
网络负载
disk*
string
磁盘情况
uptime*
number
后端存活时长(单位:秒)
传入参数示例
上报节点在线信息
POST
https://api.proxypanel.ml/api/{后端}/v1/nodeOnline/:id
后端周期性(每分钟)上传节点在线信息
Path Parameters
id*
integer
节点ID:int(10) unsigned
Headers
key*
string
由管理后台线路系统,线路授权处取得授权密钥
timestamp*
integer
每次请求的10位时间戳
Request Body
uid*
integer
用户ID
ip*
string
在线IP
传入参数示例
上报用户流量日志
POST
https://api.proxypanel.ml/api/{后端}/v1/userTraffic/:id
后端周期性(每分钟)上传用户流量日志
Path Parameters
id*
integer
节点ID:int(10) unsigned
Headers
key*
string
由管理后台线路系统,线路授权处取得授权密钥
timestamp*
integer
每次请求的10位时间戳
Request Body
uid*
integer
用户ID
upload*
integer
上传
download*
integer
下载
传入参数示例
获取节点的审计规则
GET
https://api.proxypanel.ml/api/{后端}/v1/nodeRule/:id
后端启动和重载时获取对应节点的审计规则
Path Parameters
id*
integer
节点ID:int(10) unsigned
Headers
key*
string
由管理后台线路系统,线路授权处取得授权密钥
timestamp*
integer
每次请求的10位时间戳
上报用户触发审计规则记录
POST
https://api.proxypanel.ml/api/{后端}/v1/trigger/:id
用户触发则实时上报,后端需要过滤用户在5~10分钟内的重复访问(例:10分钟内反复触发仅上报一次)
Path Parameters
id*
integer
节点ID:int(10) unsigned
Headers
key*
string
由管理后台线路系统,线路授权处取得授权密钥
timestamp*
integer
每次请求的10位时间戳
Request Body
uid*
integer
用户ID
rule_id*
integer
规则ID
reason*
integer
触发原因
传入参数示例
最后更新于
这有帮助吗?