CINXE.COM
API文档 | Trojan Panel
<!DOCTYPE html> <html lang="en-US"> <head> <meta charset="utf-8"> <meta name="viewport" content="width=device-width,initial-scale=1"> <title>API文档 | Trojan Panel</title> <meta name="generator" content="VuePress 1.9.7"> <link rel="icon" href="logo.png"> <script> var _hmt = _hmt || []; (function() { var hm = document.createElement("script"); hm.src = "https://hm.baidu.com/hm.js?37275f991707c27db91dbb6f668ee1c6"; var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(hm, s); })(); </script> <script async="true" src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-9763379843362753" crossorigin="anonymous"></script> <meta name="description" content="支持Xray/Trojan-Go/Hysteria/NaiveProxy的多用户Web管理面板"> <link rel="preload" href="/assets/css/0.styles.12f79669.css" as="style"><link rel="preload" href="/assets/js/app.384b123e.js" as="script"><link rel="preload" href="/assets/js/2.1c3af5e4.js" as="script"><link rel="preload" href="/assets/js/8.9f4c9859.js" as="script"><link rel="prefetch" href="/assets/js/10.2cfadcc6.js"><link rel="prefetch" href="/assets/js/11.0fe16700.js"><link rel="prefetch" href="/assets/js/12.a62f3732.js"><link rel="prefetch" href="/assets/js/13.4ac64c97.js"><link rel="prefetch" href="/assets/js/14.aa539760.js"><link rel="prefetch" href="/assets/js/15.051117bc.js"><link rel="prefetch" href="/assets/js/16.87edfbed.js"><link rel="prefetch" href="/assets/js/17.376c9f99.js"><link rel="prefetch" href="/assets/js/18.d0bccbb6.js"><link rel="prefetch" href="/assets/js/19.93bfc192.js"><link rel="prefetch" href="/assets/js/20.b7466b43.js"><link rel="prefetch" href="/assets/js/21.c041670b.js"><link rel="prefetch" href="/assets/js/22.5e0c267f.js"><link rel="prefetch" href="/assets/js/23.bbef9ad9.js"><link rel="prefetch" href="/assets/js/3.d121da88.js"><link rel="prefetch" href="/assets/js/4.859a94f2.js"><link rel="prefetch" href="/assets/js/5.7fbb9279.js"><link rel="prefetch" href="/assets/js/6.a6f419ac.js"><link rel="prefetch" href="/assets/js/7.498f78f2.js"><link rel="prefetch" href="/assets/js/9.26681ddf.js"> <link rel="stylesheet" href="/assets/css/0.styles.12f79669.css"> </head> <body> <div id="app" data-server-rendered="true"><div class="theme-container"><header class="navbar"><div class="sidebar-button"><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" role="img" viewBox="0 0 448 512" class="icon"><path fill="currentColor" d="M436 124H12c-6.627 0-12-5.373-12-12V80c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12zm0 160H12c-6.627 0-12-5.373-12-12v-32c0-6.627 5.373-12 12-12h424c6.627 0 12 5.373 12 12v32c0 6.627-5.373 12-12 12z"></path></svg></div> <a href="/" class="home-link router-link-active"><img src="/logo.png" alt="Trojan Panel" class="logo"> <span class="site-name can-hide">Trojan Panel</span></a> <div class="links"><div class="search-box"><input aria-label="Search" autocomplete="off" spellcheck="false" value=""> <!----></div> <nav class="nav-links can-hide"><div class="nav-item"><a href="/start/introduce.html" class="nav-link"> 新手起步 </a></div><div class="nav-item"><div class="dropdown-wrapper"><button type="button" aria-label="相关教程" class="dropdown-title"><span class="title">相关教程</span> <span class="arrow down"></span></button> <button type="button" aria-label="相关教程" class="mobile-dropdown-title"><span class="title">相关教程</span> <span class="arrow right"></span></button> <ul class="nav-dropdown" style="display:none;"><li class="dropdown-item"><!----> <a href="/install-tutorial/installation.html" class="nav-link"> 安装教程 </a></li><li class="dropdown-item"><!----> <a href="/tutorial/using-tutorials.html" class="nav-link"> 使用教程 </a></li></ul></div></div><div class="nav-item"><div class="dropdown-wrapper"><button type="button" aria-label="开发文档" class="dropdown-title"><span class="title">开发文档</span> <span class="arrow down"></span></button> <button type="button" aria-label="开发文档" class="mobile-dropdown-title"><span class="title">开发文档</span> <span class="arrow right"></span></button> <ul class="nav-dropdown" style="display:none;"><li class="dropdown-item"><!----> <a href="/api/api.html" aria-current="page" class="nav-link router-link-exact-active router-link-active"> API文档 </a></li><li class="dropdown-item"><!----> <a href="/sdk/sdk.html" class="nav-link"> Core SDK </a></li></ul></div></div><div class="nav-item"><a href="/faq/faq.html" class="nav-link"> FAQ </a></div><div class="nav-item"><a href="/change/change-log.html" class="nav-link"> 更新日志 </a></div><div class="nav-item"><a href="https://github.com/trojanpanel" target="_blank" rel="noopener noreferrer" class="nav-link external"> GitHub <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></div> <!----></nav></div></header> <div class="sidebar-mask"></div> <aside class="sidebar"><nav class="nav-links"><div class="nav-item"><a href="/start/introduce.html" class="nav-link"> 新手起步 </a></div><div class="nav-item"><div class="dropdown-wrapper"><button type="button" aria-label="相关教程" class="dropdown-title"><span class="title">相关教程</span> <span class="arrow down"></span></button> <button type="button" aria-label="相关教程" class="mobile-dropdown-title"><span class="title">相关教程</span> <span class="arrow right"></span></button> <ul class="nav-dropdown" style="display:none;"><li class="dropdown-item"><!----> <a href="/install-tutorial/installation.html" class="nav-link"> 安装教程 </a></li><li class="dropdown-item"><!----> <a href="/tutorial/using-tutorials.html" class="nav-link"> 使用教程 </a></li></ul></div></div><div class="nav-item"><div class="dropdown-wrapper"><button type="button" aria-label="开发文档" class="dropdown-title"><span class="title">开发文档</span> <span class="arrow down"></span></button> <button type="button" aria-label="开发文档" class="mobile-dropdown-title"><span class="title">开发文档</span> <span class="arrow right"></span></button> <ul class="nav-dropdown" style="display:none;"><li class="dropdown-item"><!----> <a href="/api/api.html" aria-current="page" class="nav-link router-link-exact-active router-link-active"> API文档 </a></li><li class="dropdown-item"><!----> <a href="/sdk/sdk.html" class="nav-link"> Core SDK </a></li></ul></div></div><div class="nav-item"><a href="/faq/faq.html" class="nav-link"> FAQ </a></div><div class="nav-item"><a href="/change/change-log.html" class="nav-link"> 更新日志 </a></div><div class="nav-item"><a href="https://github.com/trojanpanel" target="_blank" rel="noopener noreferrer" class="nav-link external"> GitHub <span><svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" focusable="false" x="0px" y="0px" viewBox="0 0 100 100" width="15" height="15" class="icon outbound"><path fill="currentColor" d="M18.8,85.1h56l0,0c2.2,0,4-1.8,4-4v-32h-8v28h-48v-48h28v-8h-32l0,0c-2.2,0-4,1.8-4,4v56C14.8,83.3,16.6,85.1,18.8,85.1z"></path> <polygon fill="currentColor" points="45.7,48.7 51.3,54.3 77.2,28.5 77.2,37.2 85.2,37.2 85.2,14.9 62.8,14.9 62.8,22.9 71.5,22.9"></polygon></svg> <span class="sr-only">(opens new window)</span></span></a></div> <!----></nav> <ul class="sidebar-links"><li><a href="/api/api.html" aria-current="page" class="active sidebar-link">API文档</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/api/api.html#开发前必读" class="sidebar-link">开发前必读</a></li><li class="sidebar-sub-header"><a href="/api/api.html#开放接口" class="sidebar-link">开放接口</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/api/api.html#验证码" class="sidebar-link">验证码</a></li><li class="sidebar-sub-header"><a href="/api/api.html#登录" class="sidebar-link">登录</a></li><li class="sidebar-sub-header"><a href="/api/api.html#注册" class="sidebar-link">注册</a></li><li class="sidebar-sub-header"><a href="/api/api.html#系统默认设置" class="sidebar-link">系统默认设置</a></li><li class="sidebar-sub-header"><a href="/api/api.html#订阅" class="sidebar-link">订阅</a></li><li class="sidebar-sub-header"><a href="/api/api.html#logo" class="sidebar-link">logo</a></li></ul></li><li class="sidebar-sub-header"><a href="/api/api.html#首页" class="sidebar-link">首页</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/api/api.html#仪表板" class="sidebar-link">仪表板</a></li><li class="sidebar-sub-header"><a href="/api/api.html#流量排行榜" class="sidebar-link">流量排行榜</a></li></ul></li><li class="sidebar-sub-header"><a href="/api/api.html#账户" class="sidebar-link">账户</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/api/api.html#注销" class="sidebar-link">注销</a></li><li class="sidebar-sub-header"><a href="/api/api.html#查询单个账户" class="sidebar-link">查询单个账户</a></li><li class="sidebar-sub-header"><a href="/api/api.html#创建账户" class="sidebar-link">创建账户</a></li><li class="sidebar-sub-header"><a href="/api/api.html#获取当前账户信息" class="sidebar-link">获取当前账户信息</a></li><li class="sidebar-sub-header"><a href="/api/api.html#分页查询账户" class="sidebar-link">分页查询账户</a></li><li class="sidebar-sub-header"><a href="/api/api.html#通过id删除账户" class="sidebar-link">通过id删除账户</a></li><li class="sidebar-sub-header"><a href="/api/api.html#修改密码" class="sidebar-link">修改密码</a></li><li class="sidebar-sub-header"><a href="/api/api.html#修改用户名或者邮箱" class="sidebar-link">修改用户名或者邮箱</a></li><li class="sidebar-sub-header"><a href="/api/api.html#修改账户" class="sidebar-link">修改账户</a></li><li class="sidebar-sub-header"><a href="/api/api.html#获取clash订阅地址" class="sidebar-link">获取Clash订阅地址</a></li><li class="sidebar-sub-header"><a href="/api/api.html#获取指定账户的clash订阅地址" class="sidebar-link">获取指定账户的Clash订阅地址</a></li><li class="sidebar-sub-header"><a href="/api/api.html#重设下载和上传流量" class="sidebar-link">重设下载和上传流量</a></li><li class="sidebar-sub-header"><a href="/api/api.html#导出账户" class="sidebar-link">导出账户</a></li><li class="sidebar-sub-header"><a href="/api/api.html#导入账户" class="sidebar-link">导入账户</a></li><li class="sidebar-sub-header"><a href="/api/api.html#批量创建账户" class="sidebar-link">批量创建账户</a></li><li class="sidebar-sub-header"><a href="/api/api.html#导出未使用的账户" class="sidebar-link">导出未使用的账户</a></li></ul></li><li class="sidebar-sub-header"><a href="/api/api.html#角色" class="sidebar-link">角色</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/api/api.html#查询角色列表" class="sidebar-link">查询角色列表</a></li></ul></li><li class="sidebar-sub-header"><a href="/api/api.html#服务器" class="sidebar-link">服务器</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/api/api.html#根据id查询服务器" class="sidebar-link">根据id查询服务器</a></li><li class="sidebar-sub-header"><a href="/api/api.html#创建服务器" class="sidebar-link">创建服务器</a></li><li class="sidebar-sub-header"><a href="/api/api.html#分页查询服务器" class="sidebar-link">分页查询服务器</a></li><li class="sidebar-sub-header"><a href="/api/api.html#删除服务器" class="sidebar-link">删除服务器</a></li><li class="sidebar-sub-header"><a href="/api/api.html#更新服务器" class="sidebar-link">更新服务器</a></li><li class="sidebar-sub-header"><a href="/api/api.html#查询服务器列表" class="sidebar-link">查询服务器列表</a></li><li class="sidebar-sub-header"><a href="/api/api.html#查询服务器状态" class="sidebar-link">查询服务器状态</a></li><li class="sidebar-sub-header"><a href="/api/api.html#导出服务器" class="sidebar-link">导出服务器</a></li><li class="sidebar-sub-header"><a href="/api/api.html#导入服务器" class="sidebar-link">导入服务器</a></li></ul></li><li class="sidebar-sub-header"><a href="/api/api.html#节点" class="sidebar-link">节点</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/api/api.html#根据id查询节点" class="sidebar-link">根据id查询节点</a></li><li class="sidebar-sub-header"><a href="/api/api.html#查询节点连接信息" class="sidebar-link">查询节点连接信息</a></li><li class="sidebar-sub-header"><a href="/api/api.html#创建节点" class="sidebar-link">创建节点</a></li><li class="sidebar-sub-header"><a href="/api/api.html#分页查询节点" class="sidebar-link">分页查询节点</a></li><li class="sidebar-sub-header"><a href="/api/api.html#删除节点" class="sidebar-link">删除节点</a></li><li class="sidebar-sub-header"><a href="/api/api.html#更新节点" class="sidebar-link">更新节点</a></li><li class="sidebar-sub-header"><a href="/api/api.html#获取节点二维码" class="sidebar-link">获取节点二维码</a></li><li class="sidebar-sub-header"><a href="/api/api.html#复制url" class="sidebar-link">复制URL</a></li><li class="sidebar-sub-header"><a href="/api/api.html#节点部分属性的默认值" class="sidebar-link">节点部分属性的默认值</a></li></ul></li><li class="sidebar-sub-header"><a href="/api/api.html#节点类型" class="sidebar-link">节点类型</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/api/api.html#查询节点类型列表" class="sidebar-link">查询节点类型列表</a></li></ul></li><li class="sidebar-sub-header"><a href="/api/api.html#系统设置" class="sidebar-link">系统设置</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/api/api.html#查询系统设置" class="sidebar-link">查询系统设置</a></li><li class="sidebar-sub-header"><a href="/api/api.html#更新系统配置" class="sidebar-link">更新系统配置</a></li><li class="sidebar-sub-header"><a href="/api/api.html#上传静态网站文件" class="sidebar-link">上传静态网站文件</a></li><li class="sidebar-sub-header"><a href="/api/api.html#上传logo" class="sidebar-link">上传logo</a></li></ul></li><li class="sidebar-sub-header"><a href="/api/api.html#黑名单" class="sidebar-link">黑名单</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/api/api.html#分页查询黑名单" class="sidebar-link">分页查询黑名单</a></li><li class="sidebar-sub-header"><a href="/api/api.html#删除黑名单" class="sidebar-link">删除黑名单</a></li><li class="sidebar-sub-header"><a href="/api/api.html#创建黑名单" class="sidebar-link">创建黑名单</a></li></ul></li><li class="sidebar-sub-header"><a href="/api/api.html#邮件" class="sidebar-link">邮件</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/api/api.html#查询邮件发送记录" class="sidebar-link">查询邮件发送记录</a></li></ul></li><li class="sidebar-sub-header"><a href="/api/api.html#文件任务" class="sidebar-link">文件任务</a><ul class="sidebar-sub-headers"><li class="sidebar-sub-header"><a href="/api/api.html#分页查询文件任务" class="sidebar-link">分页查询文件任务</a></li><li class="sidebar-sub-header"><a href="/api/api.html#删除文件任务" class="sidebar-link">删除文件任务</a></li><li class="sidebar-sub-header"><a href="/api/api.html#下载文件任务的文件" class="sidebar-link">下载文件任务的文件</a></li><li class="sidebar-sub-header"><a href="/api/api.html#获取文件模板" class="sidebar-link">获取文件模板</a></li></ul></li></ul></li></ul> </aside> <main class="page"> <div class="theme-default-content content__default"><h1 id="api文档"><a href="#api文档" class="header-anchor">#</a> API文档</h1> <h2 id="开发前必读"><a href="#开发前必读" class="header-anchor">#</a> 开发前必读</h2> <ol><li><p>接口认证和鉴权</p> <p>除了开放接口,其余接口必须设置请求头<code>Authorization</code>用于认证和鉴权</p> <p><code>Authorization</code>值格式为<code>Bearer ${Token}</code></p> <p><code>${Token}</code>可通过登录接口(<code>/api/auth/login</code>)获得</p></li> <li><p>通用返回对象</p> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token punctuation">{</span><span class="token punctuation">}</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p></li></ol> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>code</td> <td>是</td> <td>状态码 20000/成功 50000/系统错误 50014/登录过期 50008/认证失败 50401/未认证 50403/暂无权限</td></tr> <tr><td>type</td> <td>是</td> <td>类型 success/成功 error/错误 warning/警告</td></tr> <tr><td>data</td> <td>否</td> <td>返回值</td></tr></tbody></table> <h2 id="开放接口"><a href="#开放接口" class="header-anchor">#</a> 开放接口</h2> <h3 id="验证码"><a href="#验证码" class="header-anchor">#</a> 验证码</h3> <p>接口地址: <code>/api/auth/generateCaptcha</code></p> <p>请求方式: <code>GET</code></p> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"captchaId"</span><span class="token operator">:</span> <span class="token string">"VeC7Raoxo33hQTrnJT8s"</span><span class="token punctuation">,</span> <span class="token property">"captchaImg"</span><span class="token operator">:</span> <span class="token string">"data:image/png;base64,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"</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>captchaId</td> <td>是</td> <td>验证码id</td></tr> <tr><td>captchaImg</td> <td>是</td> <td>验证码图片</td></tr></tbody></table> <h3 id="登录"><a href="#登录" class="header-anchor">#</a> 登录</h3> <p>接口地址: <code>/api/auth/login</code></p> <p>请求方式: <code>POST</code></p> <p>请求示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"username"</span><span class="token operator">:</span> <span class="token string">"sysadmin"</span><span class="token punctuation">,</span> <span class="token property">"pass"</span><span class="token operator">:</span> <span class="token string">"123456"</span><span class="token punctuation">,</span> <span class="token property">"captchaId"</span><span class="token operator">:</span> <span class="token string">"y1mAtmYe4fErHN6vcYvo"</span><span class="token punctuation">,</span> <span class="token property">"captchaCode"</span><span class="token operator">:</span> <span class="token string">"25"</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>username</td> <td>是</td> <td>登录用户名</td></tr> <tr><td>pass</td> <td>是</td> <td>登录密码</td></tr> <tr><td>captchaId</td> <td>否</td> <td>验证码id</td></tr> <tr><td>captchaCode</td> <td>否</td> <td>验证码值</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"token"</span><span class="token operator">:</span> <span class="token string">"eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJhY2NvdW50Vm8iOnsiaWQiOjEsInF1b3RhIjowLCJkb3dubG9hZCI6MCwidXBsb2FkIjowLCJ1c2VybmFtZSI6InN5c2FkbWluIiwiZW1haWwiOiIiLCJyb2xlSWQiOjEsImRlbGV0ZWQiOjAsInByZXNldEV4cGlyZSI6MCwicHJlc2V0UXVvdGEiOjAsImxhc3RMb2dpblRpbWUiOjAsImV4cGlyZVRpbWUiOjAsImNyZWF0ZVRpbWUiOiIwMDAxLTAxLTAxVDAwOjAwOjAwWiIsInJvbGVzIjpbInN5c2FkbWluIiwiYWRtaW4iLCJ1c2VyIl19LCJleHAiOjE2OTIzODM4MzQsImlzcyI6InRyb2phbi1wYW5lbCJ9.ymvQ_VPsCvxjNpQUPTZ3fjWTZJk-URujCt3vSI-bnw8"</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>token</td> <td>是</td> <td>授权Token</td></tr></tbody></table> <h3 id="注册"><a href="#注册" class="header-anchor">#</a> 注册</h3> <p>接口地址: <code>/api/auth/register</code></p> <p>请求方式: <code>POST</code></p> <p>请求示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"username"</span><span class="token operator">:</span> <span class="token string">"123456"</span><span class="token punctuation">,</span> <span class="token property">"pass"</span><span class="token operator">:</span> <span class="token string">"123456"</span><span class="token punctuation">,</span> <span class="token property">"captchaId"</span><span class="token operator">:</span> <span class="token string">"BqEEo9jEdZrmfzz8K7R9"</span><span class="token punctuation">,</span> <span class="token property">"captchaCode"</span><span class="token operator">:</span> <span class="token string">"9"</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>username</td> <td>是</td> <td>登录用户名</td></tr> <tr><td>pass</td> <td>是</td> <td>登录密码</td></tr> <tr><td>captchaId</td> <td>否</td> <td>验证码id</td></tr> <tr><td>captchaCode</td> <td>否</td> <td>验证码值</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token null keyword">null</span> <span class="token punctuation">}</span> </code></pre></div><h3 id="系统默认设置"><a href="#系统默认设置" class="header-anchor">#</a> 系统默认设置</h3> <p>接口地址: <code>/api/auth/setting</code></p> <p>请求方式: <code>GET</code></p> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"registerEnable"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"registerQuota"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"registerExpireDays"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"trafficRankEnable"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"captchaEnable"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"emailEnable"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"systemName"</span><span class="token operator">:</span> <span class="token string">"Trojan Panel"</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>registerEnable</td> <td>是</td> <td>是否开放注册</td></tr> <tr><td>registerQuota</td> <td>是</td> <td>注册用户默认配额 单位/MB</td></tr> <tr><td>registerExpireDays</td> <td>是</td> <td>注册用户过期天数 单位/天</td></tr> <tr><td>captchaEnable</td> <td>是</td> <td>是否开启验证码登录</td></tr> <tr><td>emailEnable</td> <td>是</td> <td>是否开启邮箱功能 0/否 1/是</td></tr> <tr><td>systemName</td> <td>是</td> <td>系统名称</td></tr></tbody></table> <h3 id="订阅"><a href="#订阅" class="header-anchor">#</a> 订阅</h3> <p>接口地址: <code>/api/subscribe/:token</code></p> <p>请求方式: <code>GET</code></p> <p>请求示例:</p> <div class="language- extra-class"><pre class="language-text"><code>/api/auth/subscribe/NUNjOWtCZHhwWGpUYXZKSjRvNF9JTFBMU3VZWmphOTB4MEpmZWVicGt1UFBHZmRT </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>token</td> <td>是</td> <td>Token</td></tr></tbody></table> <h3 id="logo"><a href="#logo" class="header-anchor">#</a> logo</h3> <p>接口地址: <code>/api/image/logo</code></p> <p>请求方式: <code>GET</code></p> <p>返回示例:</p> <p>Content-Type: application/octet-stream</p> <h2 id="首页"><a href="#首页" class="header-anchor">#</a> 首页</h2> <h3 id="仪表板"><a href="#仪表板" class="header-anchor">#</a> 仪表板</h3> <p>接口地址: <code>/api/dashboard/panelGroup</code></p> <p>请求方式: <code>GET</code></p> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"quota"</span><span class="token operator">:</span> <span class="token number">-1</span><span class="token punctuation">,</span> <span class="token property">"residualFlow"</span><span class="token operator">:</span> <span class="token number">-1</span><span class="token punctuation">,</span> <span class="token property">"nodeCount"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"expireTime"</span><span class="token operator">:</span> <span class="token number">4078656000000</span><span class="token punctuation">,</span> <span class="token property">"accountCount"</span><span class="token operator">:</span> <span class="token number">8</span><span class="token punctuation">,</span> <span class="token property">"cpuUsed"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"memUsed"</span><span class="token operator">:</span> <span class="token number">32.9</span><span class="token punctuation">,</span> <span class="token property">"diskUsed"</span><span class="token operator">:</span> <span class="token number">32.3</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>quota</td> <td>是</td> <td>配额</td></tr> <tr><td>residualFlow</td> <td>是</td> <td>剩余流量</td></tr> <tr><td>nodeCount</td> <td>是</td> <td>节点总数</td></tr> <tr><td>expireTime</td> <td>是</td> <td>到期时间</td></tr> <tr><td>accountCount</td> <td>是</td> <td>用户总数</td></tr> <tr><td>cpuUsed</td> <td>是</td> <td>CPU使用率</td></tr> <tr><td>memUsed</td> <td>是</td> <td>内存使用率</td></tr> <tr><td>diskUsed</td> <td>是</td> <td>磁盘使用率</td></tr></tbody></table> <h3 id="流量排行榜"><a href="#流量排行榜" class="header-anchor">#</a> 流量排行榜</h3> <p>接口地址: <code>/api/dashboard/trafficRank</code></p> <p>请求方式: <code>GET</code></p> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token punctuation">[</span> <span class="token punctuation">{</span> <span class="token property">"username"</span><span class="token operator">:</span> <span class="token string">"23****34"</span><span class="token punctuation">,</span> <span class="token property">"trafficUsed"</span><span class="token operator">:</span> <span class="token string">"0"</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token punctuation">{</span> <span class="token property">"username"</span><span class="token operator">:</span> <span class="token string">"12****23"</span><span class="token punctuation">,</span> <span class="token property">"trafficUsed"</span><span class="token operator">:</span> <span class="token string">"0"</span> <span class="token punctuation">}</span> <span class="token punctuation">]</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>username</td> <td>是</td> <td>登录用户名</td></tr> <tr><td>trafficUsed</td> <td>是</td> <td>已用流量</td></tr></tbody></table> <h2 id="账户"><a href="#账户" class="header-anchor">#</a> 账户</h2> <h3 id="注销"><a href="#注销" class="header-anchor">#</a> 注销</h3> <p>接口地址: <code>/api/account/logout</code></p> <p>请求方式: <code>POST</code></p> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token null keyword">null</span> <span class="token punctuation">}</span> </code></pre></div><h3 id="查询单个账户"><a href="#查询单个账户" class="header-anchor">#</a> 查询单个账户</h3> <p>接口地址: <code>/api/account/selectAccountById</code></p> <p>请求方式: <code>GET</code></p> <p>请求示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"id"</span><span class="token operator">:</span> <span class="token number">1</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>id</td> <td>是</td> <td>主键</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"id"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"username"</span><span class="token operator">:</span> <span class="token string">"sysadmin"</span><span class="token punctuation">,</span> <span class="token property">"roleId"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"email"</span><span class="token operator">:</span> <span class="token string">"123@gmail.com"</span><span class="token punctuation">,</span> <span class="token property">"presetExpire"</span><span class="token operator">:</span> <span class="token number">7</span><span class="token punctuation">,</span> <span class="token property">"presetQuota"</span><span class="token operator">:</span> <span class="token number">1073741824</span><span class="token punctuation">,</span> <span class="token property">"expireTime"</span><span class="token operator">:</span> <span class="token number">1692519522967</span><span class="token punctuation">,</span> <span class="token property">"deleted"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"quota"</span><span class="token operator">:</span> <span class="token number">-1</span><span class="token punctuation">,</span> <span class="token property">"download"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"upload"</span><span class="token operator">:</span> <span class="token number">0</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>id</td> <td>是</td> <td>主键</td></tr> <tr><td>username</td> <td>是</td> <td>登录用户名</td></tr> <tr><td>roleId</td> <td>是</td> <td>角色id 1/系统管理员 3/普通用户</td></tr> <tr><td>email</td> <td>是</td> <td>邮箱</td></tr> <tr><td>presetExpire</td> <td>是</td> <td>预设过期时长 单位/天</td></tr> <tr><td>presetQuota</td> <td>是</td> <td>预设配额 单位/byte</td></tr> <tr><td>expireTime</td> <td>是</td> <td>过期时间</td></tr> <tr><td>deleted</td> <td>是</td> <td>是否禁用 0/正常 1/禁用</td></tr> <tr><td>quota</td> <td>是</td> <td>配额 单位/byte</td></tr> <tr><td>download</td> <td>是</td> <td>下载 单位/byte</td></tr> <tr><td>upload</td> <td>是</td> <td>上传 单位/byte</td></tr></tbody></table> <h3 id="创建账户"><a href="#创建账户" class="header-anchor">#</a> 创建账户</h3> <p>接口地址: <code>/api/account/createAccount</code></p> <p>请求方式: <code>POST</code></p> <p>请求示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"quota"</span><span class="token operator">:</span> <span class="token number">1024</span><span class="token punctuation">,</span> <span class="token property">"username"</span><span class="token operator">:</span> <span class="token string">"123456"</span><span class="token punctuation">,</span> <span class="token property">"pass"</span><span class="token operator">:</span> <span class="token string">"123456"</span><span class="token punctuation">,</span> <span class="token property">"email"</span><span class="token operator">:</span> <span class="token string">"123@gmail.com"</span><span class="token punctuation">,</span> <span class="token property">"roleId"</span><span class="token operator">:</span> <span class="token number">3</span><span class="token punctuation">,</span> <span class="token property">"deleted"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"expireTime"</span><span class="token operator">:</span> <span class="token number">1693061885000</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>quota</td> <td>是</td> <td>配额 单位/MB</td></tr> <tr><td>username</td> <td>是</td> <td>登录用户名</td></tr> <tr><td>pass</td> <td>是</td> <td>登录密码</td></tr> <tr><td>email</td> <td>否</td> <td>邮箱</td></tr> <tr><td>roleId</td> <td>是</td> <td>角色id 1/系统管理员 3/普通用户</td></tr> <tr><td>deleted</td> <td>是</td> <td>是否禁用 0/正常 1/禁用</td></tr> <tr><td>expireTime</td> <td>是</td> <td>过期时间</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token null keyword">null</span> <span class="token punctuation">}</span> </code></pre></div><h3 id="获取当前账户信息"><a href="#获取当前账户信息" class="header-anchor">#</a> 获取当前账户信息</h3> <p>接口地址: <code>/api/account/getAccountInfo</code></p> <p>请求方式: <code>GET</code></p> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"id"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"username"</span><span class="token operator">:</span> <span class="token string">"sysadmin"</span><span class="token punctuation">,</span> <span class="token property">"roles"</span><span class="token operator">:</span> <span class="token punctuation">[</span> <span class="token string">"sysadmin"</span><span class="token punctuation">,</span> <span class="token string">"admin"</span><span class="token punctuation">,</span> <span class="token string">"user"</span> <span class="token punctuation">]</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>id</td> <td>是</td> <td>主键</td></tr> <tr><td>username</td> <td>是</td> <td>登录用户名</td></tr> <tr><td>roles</td> <td>是</td> <td>角色</td></tr></tbody></table> <h3 id="分页查询账户"><a href="#分页查询账户" class="header-anchor">#</a> 分页查询账户</h3> <p>接口地址: <code>/api/account/selectAccountPage</code></p> <p>请求方式: <code>GET</code></p> <p>请求示例:</p> <div class="language- extra-class"><pre class="language-text"><code>/api/account/selectAccountPage?pageNum=1&pageSize=20&username=admin&deleted=0&orderFields=role_id,create_time&orderBy=desc&lastLoginTime=1 </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>pageNum</td> <td>是</td> <td>页号</td></tr> <tr><td>pageSize</td> <td>是</td> <td>页大小</td></tr> <tr><td>username</td> <td>否</td> <td>登录用户名</td></tr> <tr><td>deleted</td> <td>否</td> <td>是否禁用 0/正常 1/禁用</td></tr> <tr><td>orderFields</td> <td>否</td> <td>排序字段 quota/总流量 role_id/角色 last_login_time/最后一次登录时间 expire_time/到期时间 deleted/是否禁用 create_time/创建时间</td></tr> <tr><td>orderBy</td> <td>否</td> <td>排序方式 asc/正序 desc/倒序</td></tr> <tr><td>lastLoginTime</td> <td>否</td> <td>是否使用过 0/未使用过 1/使用过</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"pageNum"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"pageSize"</span><span class="token operator">:</span> <span class="token number">20</span><span class="token punctuation">,</span> <span class="token property">"total"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"accounts"</span><span class="token operator">:</span> <span class="token punctuation">[</span> <span class="token punctuation">{</span> <span class="token property">"id"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"quota"</span><span class="token operator">:</span> <span class="token number">-1</span><span class="token punctuation">,</span> <span class="token property">"download"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"upload"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"username"</span><span class="token operator">:</span> <span class="token string">"sysadmin"</span><span class="token punctuation">,</span> <span class="token property">"email"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"roleId"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"deleted"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"presetExpire"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"presetQuota"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"lastLoginTime"</span><span class="token operator">:</span> <span class="token number">1692430857369</span><span class="token punctuation">,</span> <span class="token property">"expireTime"</span><span class="token operator">:</span> <span class="token number">4078656000000</span><span class="token punctuation">,</span> <span class="token property">"createTime"</span><span class="token operator">:</span> <span class="token string">"2022-04-01T00:00:00+08:00"</span> <span class="token punctuation">}</span> <span class="token punctuation">]</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>pageNum</td> <td>是</td> <td>页号</td></tr> <tr><td>pageSize</td> <td>是</td> <td>页大小</td></tr> <tr><td>total</td> <td>是</td> <td>总数</td></tr> <tr><td>accounts</td> <td>否</td> <td>账户</td></tr> <tr><td>id</td> <td>否</td> <td>主键</td></tr> <tr><td>quota</td> <td>否</td> <td>配额 单位/byte</td></tr> <tr><td>download</td> <td>否</td> <td>下载 单位/byte</td></tr> <tr><td>upload</td> <td>否</td> <td>上传 单位/byte</td></tr> <tr><td>username</td> <td>否</td> <td>登录用户名</td></tr> <tr><td>email</td> <td>否</td> <td>邮箱</td></tr> <tr><td>roleId</td> <td>否</td> <td>角色id 1/系统管理员 3/普通用户</td></tr> <tr><td>deleted</td> <td>否</td> <td>是否禁用 0/正常 1/禁用</td></tr> <tr><td>presetExpire</td> <td>否</td> <td>预设过期时长 单位/天</td></tr> <tr><td>presetQuota</td> <td>否</td> <td>预设配额 单位/byte</td></tr> <tr><td>lastLoginTime</td> <td>否</td> <td>最后一次登录时间</td></tr> <tr><td>expireTime</td> <td>否</td> <td>过期时间</td></tr> <tr><td>createTime</td> <td>否</td> <td>创建时间</td></tr></tbody></table> <h3 id="通过id删除账户"><a href="#通过id删除账户" class="header-anchor">#</a> 通过id删除账户</h3> <p>接口地址: <code>/api/account/deleteAccountById</code></p> <p>请求方式: <code>POST</code></p> <p>请求示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"id"</span><span class="token operator">:</span> <span class="token number">2</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>id</td> <td>是</td> <td>主键</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token null keyword">null</span> <span class="token punctuation">}</span> </code></pre></div><h3 id="修改密码"><a href="#修改密码" class="header-anchor">#</a> 修改密码</h3> <p>接口地址: <code>/api/account/updateAccountPass</code></p> <p>请求方式: <code>POST</code></p> <p>请求示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"oldPass"</span><span class="token operator">:</span> <span class="token string">"123456"</span><span class="token punctuation">,</span> <span class="token property">"newPass"</span><span class="token operator">:</span> <span class="token string">"123123"</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>oldPass</td> <td>是</td> <td>原密码</td></tr> <tr><td>newPass</td> <td>是</td> <td>新密码</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token null keyword">null</span> <span class="token punctuation">}</span> </code></pre></div><h3 id="修改用户名或者邮箱"><a href="#修改用户名或者邮箱" class="header-anchor">#</a> 修改用户名或者邮箱</h3> <p>接口地址: <code>/api/account/updateAccountProperty</code></p> <p>请求方式: <code>POST</code></p> <p>请求示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"email"</span><span class="token operator">:</span> <span class="token string">"123456@gmail.com"</span><span class="token punctuation">,</span> <span class="token property">"username"</span><span class="token operator">:</span> <span class="token string">"sysadmin"</span><span class="token punctuation">,</span> <span class="token property">"pass"</span><span class="token operator">:</span> <span class="token string">"123456"</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>email</td> <td>否</td> <td>邮箱</td></tr> <tr><td>username</td> <td>否</td> <td>登录用户名</td></tr> <tr><td>pass</td> <td>是</td> <td>登录密码</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token null keyword">null</span> <span class="token punctuation">}</span> </code></pre></div><h3 id="修改账户"><a href="#修改账户" class="header-anchor">#</a> 修改账户</h3> <p>接口地址: <code>/api/account/updateAccountById</code></p> <p>请求方式: <code>POST</code></p> <p>请求示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"id"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"quota"</span><span class="token operator">:</span> <span class="token number">1024</span><span class="token punctuation">,</span> <span class="token property">"username"</span><span class="token operator">:</span> <span class="token string">"123456"</span><span class="token punctuation">,</span> <span class="token property">"pass"</span><span class="token operator">:</span> <span class="token string">"123123"</span><span class="token punctuation">,</span> <span class="token property">"roleId"</span><span class="token operator">:</span> <span class="token number">3</span><span class="token punctuation">,</span> <span class="token property">"deleted"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"expireTime"</span><span class="token operator">:</span> <span class="token number">1692378469728</span><span class="token punctuation">,</span> <span class="token property">"email"</span><span class="token operator">:</span> <span class="token string">""</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>id</td> <td>是</td> <td>主键</td></tr> <tr><td>quota</td> <td>是</td> <td>配额 单位/MB</td></tr> <tr><td>username</td> <td>是</td> <td>登录用户名</td></tr> <tr><td>pass</td> <td>否</td> <td>登录密码</td></tr> <tr><td>roleId</td> <td>是</td> <td>角色id</td></tr> <tr><td>deleted</td> <td>是</td> <td>是否禁用 0/正常 1/禁用</td></tr> <tr><td>expireTime</td> <td>是</td> <td>过期时间</td></tr> <tr><td>email</td> <td>否</td> <td>邮箱</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token null keyword">null</span> <span class="token punctuation">}</span> </code></pre></div><h3 id="获取clash订阅地址"><a href="#获取clash订阅地址" class="header-anchor">#</a> 获取Clash订阅地址</h3> <p>接口地址: <code>/api/account/clashSubscribe</code></p> <p>请求方式: <code>GET</code></p> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token string">"/api/auth/subscribe/b0dBQVh1b1FlOEtLdUZPeWRZMGZYdGJuMC1UNWppSktOdm1aTEhlcU5ocVRuOG55"</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>data</td> <td>是</td> <td>订阅地址</td></tr></tbody></table> <h3 id="获取指定账户的clash订阅地址"><a href="#获取指定账户的clash订阅地址" class="header-anchor">#</a> 获取指定账户的Clash订阅地址</h3> <p>接口地址: <code>/api/account/clashSubscribeForSb</code></p> <p>请求方式: <code>GET</code></p> <p>请求示例:</p> <div class="language- extra-class"><pre class="language-text"><code>/api/account/clashSubscribeForSb?id=1 </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>id</td> <td>是</td> <td>主键</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token string">"/api/auth/subscribe/SkxhejNnQkQtbWZDb2owbUNDVjFsQWwzUzNsOWVxeGprME9qWHNfOGc4R0dMdUZP"</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>data</td> <td>是</td> <td>订阅地址</td></tr></tbody></table> <h3 id="重设下载和上传流量"><a href="#重设下载和上传流量" class="header-anchor">#</a> 重设下载和上传流量</h3> <p>接口地址: <code>/api/account/resetAccountDownloadAndUpload</code></p> <p>请求方式: <code>POST</code></p> <p>请求示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"id"</span><span class="token operator">:</span> <span class="token number">1</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>id</td> <td>是</td> <td>主键</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token null keyword">null</span> <span class="token punctuation">}</span> </code></pre></div><h3 id="导出账户"><a href="#导出账户" class="header-anchor">#</a> 导出账户</h3> <p>接口地址: <code>/api/account/exportAccount</code></p> <p>请求方式: <code>POST</code></p> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token null keyword">null</span> <span class="token punctuation">}</span> </code></pre></div><h3 id="导入账户"><a href="#导入账户" class="header-anchor">#</a> 导入账户</h3> <p>接口地址: <code>/api/account/importAccount</code></p> <p>请求方式: <code>POST</code></p> <p>请求示例:</p> <p>Form Data</p> <div class="language- extra-class"><pre class="language-text"><code>file: (binary) cover: 1 </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>file</td> <td>是</td> <td>文件二进制</td></tr> <tr><td>cover</td> <td>是</td> <td>是否根据用户名覆盖 0/否 1/是</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token null keyword">null</span> <span class="token punctuation">}</span> </code></pre></div><h3 id="批量创建账户"><a href="#批量创建账户" class="header-anchor">#</a> 批量创建账户</h3> <p>接口地址: <code>/api/account/createAccountBatch</code></p> <p>请求方式: <code>POST</code></p> <p>请求示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"num"</span><span class="token operator">:</span> <span class="token number">5</span><span class="token punctuation">,</span> <span class="token property">"presetQuota"</span><span class="token operator">:</span> <span class="token number">1024</span><span class="token punctuation">,</span> <span class="token property">"presetExpire"</span><span class="token operator">:</span> <span class="token number">7</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>num</td> <td>是</td> <td>数量</td></tr> <tr><td>presetQuota</td> <td>是</td> <td>预设配额 单位/MB</td></tr> <tr><td>presetExpire</td> <td>是</td> <td>预设过期时长 单位/天</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token null keyword">null</span> <span class="token punctuation">}</span> </code></pre></div><h3 id="导出未使用的账户"><a href="#导出未使用的账户" class="header-anchor">#</a> 导出未使用的账户</h3> <p>接口地址: <code>/api/account/exportAccountUnused</code></p> <p>请求方式: <code>POST</code></p> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token null keyword">null</span> <span class="token punctuation">}</span> </code></pre></div><h2 id="角色"><a href="#角色" class="header-anchor">#</a> 角色</h2> <h3 id="查询角色列表"><a href="#查询角色列表" class="header-anchor">#</a> 查询角色列表</h3> <p>接口地址: <code>/api/role/selectRoleList</code></p> <p>请求方式: <code>GET</code></p> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token punctuation">[</span> <span class="token punctuation">{</span> <span class="token property">"id"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"name"</span><span class="token operator">:</span> <span class="token string">"sysadmin"</span><span class="token punctuation">,</span> <span class="token property">"desc"</span><span class="token operator">:</span> <span class="token string">"System Admin"</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token punctuation">{</span> <span class="token property">"id"</span><span class="token operator">:</span> <span class="token number">2</span><span class="token punctuation">,</span> <span class="token property">"name"</span><span class="token operator">:</span> <span class="token string">"admin"</span><span class="token punctuation">,</span> <span class="token property">"desc"</span><span class="token operator">:</span> <span class="token string">"Admin"</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token punctuation">{</span> <span class="token property">"id"</span><span class="token operator">:</span> <span class="token number">3</span><span class="token punctuation">,</span> <span class="token property">"name"</span><span class="token operator">:</span> <span class="token string">"user"</span><span class="token punctuation">,</span> <span class="token property">"desc"</span><span class="token operator">:</span> <span class="token string">"User"</span> <span class="token punctuation">}</span> <span class="token punctuation">]</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>id</td> <td>是</td> <td>主键</td></tr> <tr><td>name</td> <td>是</td> <td>名称</td></tr> <tr><td>desc</td> <td>是</td> <td>描述</td></tr></tbody></table> <h2 id="服务器"><a href="#服务器" class="header-anchor">#</a> 服务器</h2> <h3 id="根据id查询服务器"><a href="#根据id查询服务器" class="header-anchor">#</a> 根据id查询服务器</h3> <p>接口地址: <code>/api/nodeServer/selectNodeServerById</code></p> <p>请求方式: <code>GET</code></p> <p>请求示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"id"</span><span class="token operator">:</span> <span class="token number">1</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>id</td> <td>是</td> <td>主键</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"id"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"name"</span><span class="token operator">:</span> <span class="token string">"测试服务器"</span><span class="token punctuation">,</span> <span class="token property">"grpcPort"</span><span class="token operator">:</span> <span class="token number">8100</span><span class="token punctuation">,</span> <span class="token property">"createTime"</span><span class="token operator">:</span> <span class="token string">"2023-08-19T01:24:22+08:00"</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>id</td> <td>是</td> <td>主键</td></tr> <tr><td>name</td> <td>是</td> <td>服务器名称</td></tr> <tr><td>grpcPort</td> <td>是</td> <td>API端口</td></tr> <tr><td>createTime</td> <td>是</td> <td>创建时间</td></tr></tbody></table> <h3 id="创建服务器"><a href="#创建服务器" class="header-anchor">#</a> 创建服务器</h3> <p>接口地址: <code>/api/nodeServer/createNodeServer</code></p> <p>请求方式: <code>POST</code></p> <p>请求示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"ip"</span><span class="token operator">:</span> <span class="token string">"trojanpanel.github.io"</span><span class="token punctuation">,</span> <span class="token property">"name"</span><span class="token operator">:</span> <span class="token string">"测试服务器"</span><span class="token punctuation">,</span> <span class="token property">"grpcPort"</span><span class="token operator">:</span> <span class="token number">8100</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>ip</td> <td>是</td> <td>服务器IP</td></tr> <tr><td>name</td> <td>是</td> <td>服务器名称</td></tr> <tr><td>grpcPort</td> <td>是</td> <td>API端口</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token null keyword">null</span> <span class="token punctuation">}</span> </code></pre></div><h3 id="分页查询服务器"><a href="#分页查询服务器" class="header-anchor">#</a> 分页查询服务器</h3> <p>接口地址: <code>/api/nodeServer/selectNodeServerPage</code></p> <p>请求方式: <code>GET</code></p> <p>请求示例:</p> <div class="language- extra-class"><pre class="language-text"><code>/api/nodeServer/selectNodeServerPage?pageNum=1&pageSize=20&ip=trojanpanel.github.io&name=测试服务器 </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>pageNum</td> <td>是</td> <td>页号</td></tr> <tr><td>pageSize</td> <td>是</td> <td>页大小</td></tr> <tr><td>ip</td> <td>否</td> <td>服务器IP</td></tr> <tr><td>name</td> <td>否</td> <td>服务器名称</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"nodeServers"</span><span class="token operator">:</span> <span class="token punctuation">[</span> <span class="token punctuation">{</span> <span class="token property">"id"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"name"</span><span class="token operator">:</span> <span class="token string">"测试服务器"</span><span class="token punctuation">,</span> <span class="token property">"ip"</span><span class="token operator">:</span> <span class="token string">"trojanpanel.github.io"</span><span class="token punctuation">,</span> <span class="token property">"grpcPort"</span><span class="token operator">:</span> <span class="token number">8100</span><span class="token punctuation">,</span> <span class="token property">"createTime"</span><span class="token operator">:</span> <span class="token string">"2023-08-19T01:24:22+08:00"</span><span class="token punctuation">,</span> <span class="token property">"status"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"trojanPanelCoreVersion"</span><span class="token operator">:</span> <span class="token string">"v2.1.2"</span> <span class="token punctuation">}</span> <span class="token punctuation">]</span><span class="token punctuation">,</span> <span class="token property">"pageNum"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"pageSize"</span><span class="token operator">:</span> <span class="token number">20</span><span class="token punctuation">,</span> <span class="token property">"total"</span><span class="token operator">:</span> <span class="token number">1</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>nodeServers</td> <td>否</td> <td>服务器对象</td></tr> <tr><td>id</td> <td>否</td> <td>主键</td></tr> <tr><td>name</td> <td>否</td> <td>服务器名称</td></tr> <tr><td>ip</td> <td>否</td> <td>服务器名称</td></tr> <tr><td>grpcPort</td> <td>否</td> <td>API端口</td></tr> <tr><td>createTime</td> <td>否</td> <td>创建时间</td></tr> <tr><td>status</td> <td>否</td> <td>状态 0/异常 1/正常</td></tr> <tr><td>trojanPanelCoreVersion</td> <td>否</td> <td>Trojan Panel Core 版本</td></tr> <tr><td>pageNum</td> <td>是</td> <td>页号</td></tr> <tr><td>pageSize</td> <td>是</td> <td>页大小</td></tr> <tr><td>total</td> <td>是</td> <td>总数</td></tr></tbody></table> <h3 id="删除服务器"><a href="#删除服务器" class="header-anchor">#</a> 删除服务器</h3> <p>接口地址: <code>/api/nodeServer/deleteNodeServerById</code></p> <p>请求方式: <code>POST</code></p> <p>请求示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"id"</span><span class="token operator">:</span> <span class="token number">1</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>id</td> <td>是</td> <td>主键</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token null keyword">null</span> <span class="token punctuation">}</span> </code></pre></div><h3 id="更新服务器"><a href="#更新服务器" class="header-anchor">#</a> 更新服务器</h3> <p>接口地址: <code>/api/nodeServer/updateNodeServerById</code></p> <p>请求方式: <code>POST</code></p> <p>请求示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"id"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"ip"</span><span class="token operator">:</span> <span class="token string">"143.201.86.91"</span><span class="token punctuation">,</span> <span class="token property">"name"</span><span class="token operator">:</span> <span class="token string">"测试服务器"</span><span class="token punctuation">,</span> <span class="token property">"grpcPort"</span><span class="token operator">:</span> <span class="token number">8100</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>id</td> <td>是</td> <td>主键</td></tr> <tr><td>ip</td> <td>是</td> <td>服务器IP</td></tr> <tr><td>name</td> <td>是</td> <td>服务器名称</td></tr> <tr><td>grpcPort</td> <td>是</td> <td>API端口</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token null keyword">null</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <h3 id="查询服务器列表"><a href="#查询服务器列表" class="header-anchor">#</a> 查询服务器列表</h3> <p>接口地址: <code>/api/nodeServer/selectNodeServerList</code></p> <p>请求方式: <code>GET</code></p> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token punctuation">[</span> <span class="token punctuation">{</span> <span class="token property">"id"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"name"</span><span class="token operator">:</span> <span class="token string">"测试服务器"</span> <span class="token punctuation">}</span> <span class="token punctuation">]</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>id</td> <td>是</td> <td>主键</td></tr> <tr><td>name</td> <td>是</td> <td>名称</td></tr></tbody></table> <h3 id="查询服务器状态"><a href="#查询服务器状态" class="header-anchor">#</a> 查询服务器状态</h3> <p>接口地址: <code>/api/nodeServer/nodeServerState</code></p> <p>请求方式: <code>GET</code></p> <p>请求示例:</p> <div class="language- extra-class"><pre class="language-text"><code>/api/nodeServer/nodeServerState?id=1 </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>id</td> <td>是</td> <td>主键</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"cpuUsed"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"memUsed"</span><span class="token operator">:</span> <span class="token number">32.8</span><span class="token punctuation">,</span> <span class="token property">"diskUsed"</span><span class="token operator">:</span> <span class="token number">32.3</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>cpuUsed</td> <td>是</td> <td>CPU使用率</td></tr> <tr><td>memUsed</td> <td>是</td> <td>内存使用率</td></tr> <tr><td>diskUsed</td> <td>是</td> <td>磁盘使用率</td></tr></tbody></table> <h3 id="导出服务器"><a href="#导出服务器" class="header-anchor">#</a> 导出服务器</h3> <p>接口地址: <code>/api/nodeServer/exportNodeServer</code></p> <p>请求方式: <code>POST</code></p> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token null keyword">null</span> <span class="token punctuation">}</span> </code></pre></div><h3 id="导入服务器"><a href="#导入服务器" class="header-anchor">#</a> 导入服务器</h3> <p>接口地址: <code>/api/nodeServer/importNodeServer</code></p> <p>请求方式: <code>POST</code></p> <p>请求参数:</p> <div class="language- extra-class"><pre class="language-text"><code>file: (binary) cover: 1 </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>file</td> <td>是</td> <td>文件二进制</td></tr> <tr><td>cover</td> <td>是</td> <td>是否根据用户名覆盖 0/否 1/是</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token null keyword">null</span> <span class="token punctuation">}</span> </code></pre></div><h2 id="节点"><a href="#节点" class="header-anchor">#</a> 节点</h2> <h3 id="根据id查询节点"><a href="#根据id查询节点" class="header-anchor">#</a> 根据id查询节点</h3> <p>接口地址: <code>/api/node/selectNodeById</code></p> <p>请求方式: <code>GET</code></p> <p>请求示例:</p> <div class="language- extra-class"><pre class="language-text"><code>/api/node/selectNodeById?id=1 </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>id</td> <td>是</td> <td>主键</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"id"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"nodeServerId"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"nodeSubId"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"nodeTypeId"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"name"</span><span class="token operator">:</span> <span class="token string">"vless-reality"</span><span class="token punctuation">,</span> <span class="token property">"domain"</span><span class="token operator">:</span> <span class="token string">"trojanpanel.github.io"</span><span class="token punctuation">,</span> <span class="token property">"port"</span><span class="token operator">:</span> <span class="token number">443</span><span class="token punctuation">,</span> <span class="token property">"priority"</span><span class="token operator">:</span> <span class="token number">100</span><span class="token punctuation">,</span> <span class="token property">"createTime"</span><span class="token operator">:</span> <span class="token string">"2023-08-19T23:20:27+08:00"</span><span class="token punctuation">,</span> <span class="token property">"uuid"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"alterId"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"xrayProtocol"</span><span class="token operator">:</span> <span class="token string">"vless"</span><span class="token punctuation">,</span> <span class="token property">"xrayFlow"</span><span class="token operator">:</span> <span class="token string">"xtls-rprx-vision"</span><span class="token punctuation">,</span> <span class="token property">"xraySSMethod"</span><span class="token operator">:</span> <span class="token string">"aes-256-gcm"</span><span class="token punctuation">,</span> <span class="token property">"realityPbk"</span><span class="token operator">:</span> <span class="token string">"JraCqHw8lrQ-YdgrBSpBVTA4fhqHLfTUpZiP45x5gRI"</span><span class="token punctuation">,</span> <span class="token property">"xraySettings"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"xraySettingsEntity"</span><span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"fallbacks"</span><span class="token operator">:</span> <span class="token punctuation">[</span> <span class="token punctuation">{</span> <span class="token property">"name"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"alpn"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"path"</span><span class="token operator">:</span> <span class="token null keyword">null</span><span class="token punctuation">,</span> <span class="token property">"dest"</span><span class="token operator">:</span> <span class="token string">"80"</span><span class="token punctuation">,</span> <span class="token property">"xver"</span><span class="token operator">:</span> <span class="token number">0</span> <span class="token punctuation">}</span> <span class="token punctuation">]</span><span class="token punctuation">,</span> <span class="token property">"network"</span><span class="token operator">:</span> <span class="token string">"tcp"</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token property">"xrayStreamSettingsEntity"</span><span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"network"</span><span class="token operator">:</span> <span class="token string">"tcp"</span><span class="token punctuation">,</span> <span class="token property">"security"</span><span class="token operator">:</span> <span class="token string">"reality"</span><span class="token punctuation">,</span> <span class="token property">"tlsSettings"</span><span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"serverName"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"alpn"</span><span class="token operator">:</span> <span class="token punctuation">[</span> <span class="token string">"h2"</span><span class="token punctuation">,</span> <span class="token string">"http/1.1"</span> <span class="token punctuation">]</span><span class="token punctuation">,</span> <span class="token property">"allowInsecure"</span><span class="token operator">:</span> <span class="token boolean">false</span><span class="token punctuation">,</span> <span class="token property">"fingerprint"</span><span class="token operator">:</span> <span class="token string">"chrome"</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token property">"realitySettings"</span><span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"dest"</span><span class="token operator">:</span> <span class="token string">"trojanpanel.github.io:8863"</span><span class="token punctuation">,</span> <span class="token property">"xver"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"serverNames"</span><span class="token operator">:</span> <span class="token punctuation">[</span> <span class="token string">"trojanpanel.github.io"</span> <span class="token punctuation">]</span><span class="token punctuation">,</span> <span class="token property">"fingerprint"</span><span class="token operator">:</span> <span class="token string">"chrome"</span><span class="token punctuation">,</span> <span class="token property">"privateKey"</span><span class="token operator">:</span> <span class="token string">"GCRTXDZm1zuBdsQSM3Up9awTqxuzNwF6yXr5kxVT11w"</span><span class="token punctuation">,</span> <span class="token property">"shortIds"</span><span class="token operator">:</span> <span class="token punctuation">[</span> <span class="token string">"c6b6b5bf30c98f05"</span> <span class="token punctuation">]</span><span class="token punctuation">,</span> <span class="token property">"spiderX"</span><span class="token operator">:</span> <span class="token string">"/SCalpsSw"</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token property">"wsSettings"</span><span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"path"</span><span class="token operator">:</span> <span class="token string">"/trojan-panel-websocket-path"</span><span class="token punctuation">,</span> <span class="token property">"headers"</span><span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"Host"</span><span class="token operator">:</span> <span class="token string">""</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token property">"xrayTag"</span><span class="token operator">:</span> <span class="token string">"user"</span><span class="token punctuation">,</span> <span class="token property">"xraySniffing"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"xrayAllocate"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"trojanGoSni"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"trojanGoMuxEnable"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"trojanGoWebsocketEnable"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"trojanGoWebsocketPath"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"trojanGoWebsocketHost"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"trojanGoSsEnable"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"trojanGoSsMethod"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"trojanGoSsPassword"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"hysteriaProtocol"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"hysteriaObfs"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"hysteriaUpMbps"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"hysteriaDownMbps"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"hysteriaServerName"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"hysteriaInsecure"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"hysteriaFastOpen"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"naiveProxyUsername"</span><span class="token operator">:</span> <span class="token string">""</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>id</td> <td>是</td> <td>主键</td></tr> <tr><td>nodeServerId</td> <td>是</td> <td>服务器id</td></tr> <tr><td>nodeSubId</td> <td>是</td> <td>节点分表id</td></tr> <tr><td>nodeTypeId</td> <td>是</td> <td>节点类型id</td></tr> <tr><td>name</td> <td>是</td> <td>名称</td></tr> <tr><td>domain</td> <td>是</td> <td>域名/IP</td></tr> <tr><td>port</td> <td>是</td> <td>端口</td></tr> <tr><td>priority</td> <td>是</td> <td>优先级</td></tr> <tr><td>createTime</td> <td>是</td> <td>创建时间</td></tr> <tr><td>uuid</td> <td>是</td> <td>UUID</td></tr> <tr><td>alterId</td> <td>是</td> <td>Alter ID</td></tr> <tr><td>xrayProtocol</td> <td>是</td> <td>Xray 协议名称</td></tr> <tr><td>xrayFlow</td> <td>是</td> <td>Xray 流控</td></tr> <tr><td>xraySSMethod</td> <td>是</td> <td>Xray Shadowsocks加密方式</td></tr> <tr><td>realityPbk</td> <td>是</td> <td>Xray reality的公钥</td></tr> <tr><td>xraySettingsEntity</td> <td>是</td> <td>Xray settings 参考Xray文档</td></tr> <tr><td>xrayStreamSettingsEntity</td> <td>是</td> <td>Xray streamSettings 参考Xray文档</td></tr> <tr><td>xrayTag</td> <td>是</td> <td>Xray tag</td></tr> <tr><td>xraySniffing</td> <td>是</td> <td>Xray sniffing</td></tr> <tr><td>xrayAllocate</td> <td>是</td> <td>Xray allocate</td></tr> <tr><td>trojanGoSni</td> <td>是</td> <td>TrojanGo sni</td></tr> <tr><td>trojanGoMuxEnable</td> <td>是</td> <td>TrojanGo 是否开启多路复用 0/关闭 1/开启</td></tr> <tr><td>trojanGoWebsocketEnable</td> <td>是</td> <td>TrojanGo 是否开启websocket 0/否 1/是</td></tr> <tr><td>trojanGoWebsocketPath</td> <td>是</td> <td>TrojanGo websocket路径</td></tr> <tr><td>trojanGoWebsocketHost</td> <td>是</td> <td>TrojanGo websocket host</td></tr> <tr><td>trojanGoSsEnable</td> <td>是</td> <td>TrojanGo 是否开启ss加密 0/否 1/是</td></tr> <tr><td>trojanGoSsMethod</td> <td>是</td> <td>TrojanGo ss加密方式</td></tr> <tr><td>trojanGoSsPassword</td> <td>是</td> <td>TrojanGo ss密码</td></tr> <tr><td>hysteriaProtocol</td> <td>是</td> <td>Hysteria 协议名称 udp/faketcp</td></tr> <tr><td>hysteriaObfs</td> <td>是</td> <td>Hysteria 混淆密码</td></tr> <tr><td>hysteriaUpMbps</td> <td>是</td> <td>Hysteria 单客户端最大上传速度 单位:Mbps</td></tr> <tr><td>hysteriaDownMbps</td> <td>是</td> <td>Hysteria 单客户端最大下载速度 单位:Mbps</td></tr> <tr><td>hysteriaServerName</td> <td>是</td> <td>Hysteria 用于验证服务端证书的 hostname</td></tr> <tr><td>hysteriaInsecure</td> <td>是</td> <td>Hysteria 忽略一切证书错误</td></tr> <tr><td>hysteriaFastOpen</td> <td>是</td> <td>Hysteria 启用 Fast Open (降低连接建立延迟)</td></tr> <tr><td>naiveProxyUsername</td> <td>是</td> <td>NaiveProxy用户名</td></tr></tbody></table> <h3 id="查询节点连接信息"><a href="#查询节点连接信息" class="header-anchor">#</a> 查询节点连接信息</h3> <p>接口地址: <code>/api/node/selectNodeInfo</code></p> <p>请求方式: <code>GET</code></p> <p>请求示例:</p> <div class="language- extra-class"><pre class="language-text"><code>/api/node/selectNodeInfo?id=1 </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>id</td> <td>是</td> <td>主键</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"id"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"nodeServerId"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"nodeSubId"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"nodeTypeId"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"name"</span><span class="token operator">:</span> <span class="token string">"vless-reality"</span><span class="token punctuation">,</span> <span class="token property">"domain"</span><span class="token operator">:</span> <span class="token string">"trojanpanel.github.io"</span><span class="token punctuation">,</span> <span class="token property">"port"</span><span class="token operator">:</span> <span class="token number">443</span><span class="token punctuation">,</span> <span class="token property">"priority"</span><span class="token operator">:</span> <span class="token number">100</span><span class="token punctuation">,</span> <span class="token property">"createTime"</span><span class="token operator">:</span> <span class="token string">"2023-08-19T23:20:27+08:00"</span><span class="token punctuation">,</span> <span class="token property">"password"</span><span class="token operator">:</span> <span class="token string">"oGAAXuoQe8KKuFOydY0fXtbn0-T5jiJKNvmZLHeqNhqTn8ny"</span><span class="token punctuation">,</span> <span class="token property">"uuid"</span><span class="token operator">:</span> <span class="token string">"7a57ec2e-bb05-5544-9c30-05814b376eba"</span><span class="token punctuation">,</span> <span class="token property">"alterId"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"xrayProtocol"</span><span class="token operator">:</span> <span class="token string">"vless"</span><span class="token punctuation">,</span> <span class="token property">"xrayFlow"</span><span class="token operator">:</span> <span class="token string">"xtls-rprx-vision"</span><span class="token punctuation">,</span> <span class="token property">"xraySSMethod"</span><span class="token operator">:</span> <span class="token string">"aes-256-gcm"</span><span class="token punctuation">,</span> <span class="token property">"realityPbk"</span><span class="token operator">:</span> <span class="token string">"JraCqHw8lrQ-YdgrBSpBVTA4fhqHLfTUpZiP45x5gRI"</span><span class="token punctuation">,</span> <span class="token property">"xraySettingsEntity"</span><span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"fallbacks"</span><span class="token operator">:</span> <span class="token punctuation">[</span> <span class="token punctuation">{</span> <span class="token property">"name"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"alpn"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"path"</span><span class="token operator">:</span> <span class="token null keyword">null</span><span class="token punctuation">,</span> <span class="token property">"dest"</span><span class="token operator">:</span> <span class="token string">"80"</span><span class="token punctuation">,</span> <span class="token property">"xver"</span><span class="token operator">:</span> <span class="token number">0</span> <span class="token punctuation">}</span> <span class="token punctuation">]</span><span class="token punctuation">,</span> <span class="token property">"network"</span><span class="token operator">:</span> <span class="token string">"tcp"</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token property">"xrayStreamSettingsEntity"</span><span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"network"</span><span class="token operator">:</span> <span class="token string">"tcp"</span><span class="token punctuation">,</span> <span class="token property">"security"</span><span class="token operator">:</span> <span class="token string">"reality"</span><span class="token punctuation">,</span> <span class="token property">"tlsSettings"</span><span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"serverName"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"alpn"</span><span class="token operator">:</span> <span class="token punctuation">[</span> <span class="token string">"h2"</span><span class="token punctuation">,</span> <span class="token string">"http/1.1"</span> <span class="token punctuation">]</span><span class="token punctuation">,</span> <span class="token property">"allowInsecure"</span><span class="token operator">:</span> <span class="token boolean">false</span><span class="token punctuation">,</span> <span class="token property">"fingerprint"</span><span class="token operator">:</span> <span class="token string">"chrome"</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token property">"realitySettings"</span><span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"dest"</span><span class="token operator">:</span> <span class="token string">"trojanpanel.github.io:8863"</span><span class="token punctuation">,</span> <span class="token property">"xver"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"serverNames"</span><span class="token operator">:</span> <span class="token punctuation">[</span> <span class="token string">"trojanpanel.github.io"</span> <span class="token punctuation">]</span><span class="token punctuation">,</span> <span class="token property">"fingerprint"</span><span class="token operator">:</span> <span class="token string">"chrome"</span><span class="token punctuation">,</span> <span class="token property">"privateKey"</span><span class="token operator">:</span> <span class="token string">"GCRTXDZm1zuBdsQSM3Up9awTqxuzNwF6yXr5kxVT11w"</span><span class="token punctuation">,</span> <span class="token property">"shortIds"</span><span class="token operator">:</span> <span class="token punctuation">[</span> <span class="token string">"c6b6b5bf30c98f05"</span> <span class="token punctuation">]</span><span class="token punctuation">,</span> <span class="token property">"spiderX"</span><span class="token operator">:</span> <span class="token string">"/SCalpsSw"</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token property">"wsSettings"</span><span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"path"</span><span class="token operator">:</span> <span class="token string">"/trojan-panel-websocket-path"</span><span class="token punctuation">,</span> <span class="token property">"headers"</span><span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"Host"</span><span class="token operator">:</span> <span class="token string">""</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token property">"xrayTag"</span><span class="token operator">:</span> <span class="token string">"user"</span><span class="token punctuation">,</span> <span class="token property">"xraySniffing"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"xrayAllocate"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"trojanGoSni"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"trojanGoMuxEnable"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"trojanGoWebsocketEnable"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"trojanGoWebsocketPath"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"trojanGoWebsocketHost"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"trojanGoSsEnable"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"trojanGoSsMethod"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"trojanGoSsPassword"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"hysteriaProtocol"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"hysteriaObfs"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"hysteriaUpMbps"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"hysteriaDownMbps"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"hysteriaServerName"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"hysteriaInsecure"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"hysteriaFastOpen"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"naiveProxyUsername"</span><span class="token operator">:</span> <span class="token string">""</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>id</td> <td>是</td> <td>主键</td></tr> <tr><td>nodeServerId</td> <td>是</td> <td>服务器id</td></tr> <tr><td>nodeSubId</td> <td>是</td> <td>节点分表id</td></tr> <tr><td>nodeTypeId</td> <td>是</td> <td>节点类型id</td></tr> <tr><td>name</td> <td>是</td> <td>名称</td></tr> <tr><td>domain</td> <td>是</td> <td>域名/IP</td></tr> <tr><td>port</td> <td>是</td> <td>端口</td></tr> <tr><td>priority</td> <td>是</td> <td>优先级</td></tr> <tr><td>createTime</td> <td>是</td> <td>创建时间</td></tr> <tr><td>password</td> <td>是</td> <td>连接密码</td></tr> <tr><td>uuid</td> <td>是</td> <td>UUID</td></tr> <tr><td>alterId</td> <td>是</td> <td>Alter ID</td></tr> <tr><td>xrayProtocol</td> <td>是</td> <td>Xray 协议名称</td></tr> <tr><td>xrayFlow</td> <td>是</td> <td>Xray 流控</td></tr> <tr><td>xraySSMethod</td> <td>是</td> <td>Xray Shadowsocks加密方式</td></tr> <tr><td>realityPbk</td> <td>是</td> <td>Xray reality的公钥</td></tr> <tr><td>xraySettingsEntity</td> <td>是</td> <td>Xray settings 参考Xray文档</td></tr> <tr><td>xrayStreamSettingsEntity</td> <td>是</td> <td>Xray streamSettings 参考Xray文档</td></tr> <tr><td>xrayTag</td> <td>是</td> <td>Xray tag</td></tr> <tr><td>xraySniffing</td> <td>是</td> <td>Xray sniffing</td></tr> <tr><td>xrayAllocate</td> <td>是</td> <td>Xray allocate</td></tr> <tr><td>trojanGoSni</td> <td>是</td> <td>TrojanGo sni</td></tr> <tr><td>trojanGoMuxEnable</td> <td>是</td> <td>TrojanGo 是否开启多路复用 0/关闭 1/开启</td></tr> <tr><td>trojanGoWebsocketEnable</td> <td>是</td> <td>TrojanGo 是否开启websocket 0/否 1/是</td></tr> <tr><td>trojanGoWebsocketPath</td> <td>是</td> <td>TrojanGo websocket路径</td></tr> <tr><td>trojanGoWebsocketHost</td> <td>是</td> <td>TrojanGo websocket host</td></tr> <tr><td>trojanGoSsEnable</td> <td>是</td> <td>TrojanGo 是否开启ss加密 0/否 1/是</td></tr> <tr><td>trojanGoSsMethod</td> <td>是</td> <td>TrojanGo ss加密方式</td></tr> <tr><td>trojanGoSsPassword</td> <td>是</td> <td>TrojanGo ss密码</td></tr> <tr><td>hysteriaProtocol</td> <td>是</td> <td>Hysteria 协议名称 udp/faketcp</td></tr> <tr><td>hysteriaObfs</td> <td>是</td> <td>Hysteria 混淆密码</td></tr> <tr><td>hysteriaUpMbps</td> <td>是</td> <td>Hysteria 单客户端最大上传速度 单位:Mbps</td></tr> <tr><td>hysteriaDownMbps</td> <td>是</td> <td>Hysteria 单客户端最大下载速度 单位:Mbps</td></tr> <tr><td>hysteriaServerName</td> <td>是</td> <td>Hysteria 用于验证服务端证书的 hostname</td></tr> <tr><td>hysteriaInsecure</td> <td>是</td> <td>Hysteria 忽略一切证书错误</td></tr> <tr><td>hysteriaFastOpen</td> <td>是</td> <td>Hysteria 启用 Fast Open (降低连接建立延迟)</td></tr> <tr><td>naiveProxyUsername</td> <td>是</td> <td>NaiveProxy用户名</td></tr></tbody></table> <h3 id="创建节点"><a href="#创建节点" class="header-anchor">#</a> 创建节点</h3> <p>接口地址: <code>/api/node/createNode</code></p> <p>请求方式: <code>POST</code></p> <p>请求示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"nodeServerId"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"nodeTypeId"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"name"</span><span class="token operator">:</span> <span class="token string">"vless-reality"</span><span class="token punctuation">,</span> <span class="token property">"domain"</span><span class="token operator">:</span> <span class="token string">"trojanpanel.github.io"</span><span class="token punctuation">,</span> <span class="token property">"port"</span><span class="token operator">:</span> <span class="token number">443</span><span class="token punctuation">,</span> <span class="token property">"priority"</span><span class="token operator">:</span> <span class="token number">100</span><span class="token punctuation">,</span> <span class="token property">"xrayProtocol"</span><span class="token operator">:</span> <span class="token string">"vless"</span><span class="token punctuation">,</span> <span class="token property">"xrayFlow"</span><span class="token operator">:</span> <span class="token string">"xtls-rprx-vision"</span><span class="token punctuation">,</span> <span class="token property">"xraySSMethod"</span><span class="token operator">:</span> <span class="token string">"aes-256-gcm"</span><span class="token punctuation">,</span> <span class="token property">"realityPbk"</span><span class="token operator">:</span> <span class="token string">"JraCqHw8lrQ-YdgrBSpBVTA4fhqHLfTUpZiP45x5gRI"</span><span class="token punctuation">,</span> <span class="token property">"xraySettings"</span><span class="token operator">:</span> <span class="token string">"{\"clients\":[],\"fallbacks\":[{\"name\":\"\",\"alpn\":\"\",\"dest\":\"80\",\"xver\":0}],\"network\":\"tcp\",\"decryption\":\"none\"}"</span><span class="token punctuation">,</span> <span class="token property">"xrayStreamSettings"</span><span class="token operator">:</span> <span class="token string">"{\"network\":\"tcp\",\"security\":\"reality\",\"tlsSettings\":{\"serverName\":\"\",\"alpn\":[\"h2\",\"http/1.1\"],\"allowInsecure\":false,\"fingerprint\":\"chrome\"},\"realitySettings\":{\"dest\":\"trojanpanel.github.io:8863\",\"xver\":0,\"serverNames\":[\"trojanpanel.github.io\"],\"fingerprint\":\"chrome\",\"privateKey\":\"GCRTXDZm1zuBdsQSM3Up9awTqxuzNwF6yXr5kxVT11w\",\"shortIds\":[\"c6b6b5bf30c98f05\"],\"spiderX\":\"/SCalpsSw\"},\"wsSettings\":{\"path\":\"/trojan-panel-websocket-path\",\"headers\":{\"Host\":\"\"}}}"</span><span class="token punctuation">,</span> <span class="token property">"xrayTag"</span><span class="token operator">:</span> <span class="token string">"user"</span><span class="token punctuation">,</span> <span class="token property">"xraySniffing"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"xrayAllocate"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"trojanGoSni"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"trojanGoMuxEnable"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"trojanGoWebsocketEnable"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"trojanGoWebsocketPath"</span><span class="token operator">:</span> <span class="token string">"/trojan-panel-websocket-path"</span><span class="token punctuation">,</span> <span class="token property">"trojanGoWebsocketHost"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"trojanGoSsEnable"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"trojanGoSsMethod"</span><span class="token operator">:</span> <span class="token string">"AES-128-GCM"</span><span class="token punctuation">,</span> <span class="token property">"trojanGoSsPassword"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"hysteriaProtocol"</span><span class="token operator">:</span> <span class="token string">"udp"</span><span class="token punctuation">,</span> <span class="token property">"hysteriaObfs"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"hysteriaUpMbps"</span><span class="token operator">:</span> <span class="token number">100</span><span class="token punctuation">,</span> <span class="token property">"hysteriaDownMbps"</span><span class="token operator">:</span> <span class="token number">100</span><span class="token punctuation">,</span> <span class="token property">"hysteriaServerName"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"hysteriaInsecure"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"hysteriaFastOpen"</span><span class="token operator">:</span> <span class="token number">0</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>nodeServerId</td> <td>是</td> <td>服务器id</td></tr> <tr><td>nodeTypeId</td> <td>是</td> <td>节点类型id</td></tr> <tr><td>name</td> <td>是</td> <td>名称</td></tr> <tr><td>domain</td> <td>是</td> <td>域名/IP</td></tr> <tr><td>port</td> <td>是</td> <td>端口</td></tr> <tr><td>priority</td> <td>是</td> <td>优先级</td></tr> <tr><td>xrayProtocol</td> <td>否</td> <td>Xray 协议名称</td></tr> <tr><td>xrayFlow</td> <td>否</td> <td>Xray 流控</td></tr> <tr><td>xraySSMethod</td> <td>否</td> <td>Xray Shadowsocks加密方式</td></tr> <tr><td>realityPbk</td> <td>否</td> <td>Xray reality的公钥</td></tr> <tr><td>xraySettings</td> <td>否</td> <td>Xray settings</td></tr> <tr><td>xrayStreamSettings</td> <td>否</td> <td>Xray streamSettings</td></tr> <tr><td>xrayTag</td> <td>否</td> <td>Xray tag</td></tr> <tr><td>xraySniffing</td> <td>否</td> <td>Xray sniffing</td></tr> <tr><td>xrayAllocate</td> <td>否</td> <td>Xray allocate</td></tr> <tr><td>trojanGoSni</td> <td>否</td> <td>TrojanGo sni</td></tr> <tr><td>trojanGoMuxEnable</td> <td>是</td> <td>TrojanGo 是否开启多路复用 0/关闭 1/开启</td></tr> <tr><td>trojanGoWebsocketEnable</td> <td>是</td> <td>TrojanGo 是否开启websocket 0/否 1/是</td></tr> <tr><td>trojanGoWebsocketPath</td> <td>否</td> <td>TrojanGo websocket路径</td></tr> <tr><td>trojanGoWebsocketHost</td> <td>否</td> <td>TrojanGo websocket host</td></tr> <tr><td>trojanGoSsEnable</td> <td>是</td> <td>TrojanGo 是否开启ss加密 0/否 1/是</td></tr> <tr><td>trojanGoSsMethod</td> <td>否</td> <td>TrojanGo ss加密方式</td></tr> <tr><td>trojanGoSsPassword</td> <td>否</td> <td>TrojanGo ss密码</td></tr> <tr><td>hysteriaProtocol</td> <td>否</td> <td>Hysteria 协议名称 udp/faketcp</td></tr> <tr><td>hysteriaObfs</td> <td>否</td> <td>Hysteria 混淆密码</td></tr> <tr><td>hysteriaUpMbps</td> <td>是</td> <td>Hysteria 单客户端最大上传速度 单位:Mbps</td></tr> <tr><td>hysteriaDownMbps</td> <td>是</td> <td>Hysteria 单客户端最大下载速度 单位:Mbps</td></tr> <tr><td>hysteriaServerName</td> <td>否</td> <td>Hysteria 用于验证服务端证书的 hostname</td></tr> <tr><td>hysteriaInsecure</td> <td>否</td> <td>Hysteria 忽略一切证书错误</td></tr> <tr><td>hysteriaFastOpen</td> <td>否</td> <td>Hysteria 启用 Fast Open (降低连接建立延迟)</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token null keyword">null</span> <span class="token punctuation">}</span> </code></pre></div><h3 id="分页查询节点"><a href="#分页查询节点" class="header-anchor">#</a> 分页查询节点</h3> <p>接口地址: <code>/api/node/selectNodePage</code></p> <p>请求方式: <code>GET</code></p> <p>请求示例:</p> <div class="language- extra-class"><pre class="language-text"><code>/api/node/selectNodePage?pageNum=1&pageSize=20&name=vless-reality&nodeServerId=1 </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>pageNum</td> <td>是</td> <td>页号</td></tr> <tr><td>pageSize</td> <td>是</td> <td>页大小</td></tr> <tr><td>name</td> <td>否</td> <td>名称</td></tr> <tr><td>nodeServerId</td> <td>否</td> <td>服务器id</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"nodes"</span><span class="token operator">:</span> <span class="token punctuation">[</span> <span class="token punctuation">{</span> <span class="token property">"id"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"nodeServerId"</span><span class="token operator">:</span> <span class="token number">2</span><span class="token punctuation">,</span> <span class="token property">"nodeSubId"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"nodeTypeId"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"name"</span><span class="token operator">:</span> <span class="token string">"vless-reality"</span><span class="token punctuation">,</span> <span class="token property">"domain"</span><span class="token operator">:</span> <span class="token string">"trojanpanel.github.io"</span><span class="token punctuation">,</span> <span class="token property">"port"</span><span class="token operator">:</span> <span class="token number">443</span><span class="token punctuation">,</span> <span class="token property">"priority"</span><span class="token operator">:</span> <span class="token number">100</span><span class="token punctuation">,</span> <span class="token property">"createTime"</span><span class="token operator">:</span> <span class="token string">"2023-08-19T23:20:27+08:00"</span><span class="token punctuation">,</span> <span class="token property">"status"</span><span class="token operator">:</span> <span class="token number">1</span> <span class="token punctuation">}</span> <span class="token punctuation">]</span><span class="token punctuation">,</span> <span class="token property">"pageNum"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"pageSize"</span><span class="token operator">:</span> <span class="token number">20</span><span class="token punctuation">,</span> <span class="token property">"total"</span><span class="token operator">:</span> <span class="token number">1</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>pageNum</td> <td>是</td> <td>页号</td></tr> <tr><td>pageSize</td> <td>是</td> <td>页大小</td></tr> <tr><td>total</td> <td>是</td> <td>总数</td></tr> <tr><td>nodes</td> <td>否</td> <td>节点</td></tr> <tr><td>id</td> <td>否</td> <td>主键</td></tr> <tr><td>nodeServerId</td> <td>否</td> <td>服务器id</td></tr> <tr><td>nodeSubId</td> <td>否</td> <td>节点分表id</td></tr> <tr><td>nodeTypeId</td> <td>否</td> <td>节点类型id</td></tr> <tr><td>name</td> <td>否</td> <td>名称</td></tr> <tr><td>domain</td> <td>否</td> <td>域名/IP</td></tr> <tr><td>port</td> <td>否</td> <td>端口</td></tr> <tr><td>createTime</td> <td>否</td> <td>创建时间</td></tr> <tr><td>status</td> <td>否</td> <td>状态 0/异常 1/正常</td></tr></tbody></table> <h3 id="删除节点"><a href="#删除节点" class="header-anchor">#</a> 删除节点</h3> <p>接口地址: <code>/api/node/deleteNodeById</code></p> <p>请求方式: <code>POST</code></p> <p>请求示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"id"</span><span class="token operator">:</span> <span class="token number">1</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>id</td> <td>是</td> <td>主键</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token null keyword">null</span> <span class="token punctuation">}</span> </code></pre></div><h3 id="更新节点"><a href="#更新节点" class="header-anchor">#</a> 更新节点</h3> <p>接口地址: <code>/api/node/updateNodeById</code></p> <p>请求方式: <code>POST</code></p> <p>请求示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"id"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"nodeServerId"</span><span class="token operator">:</span> <span class="token number">2</span><span class="token punctuation">,</span> <span class="token property">"nodeSubId"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"nodeTypeId"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"name"</span><span class="token operator">:</span> <span class="token string">"vless-reality"</span><span class="token punctuation">,</span> <span class="token property">"domain"</span><span class="token operator">:</span> <span class="token string">"trojanpanel.github.io"</span><span class="token punctuation">,</span> <span class="token property">"port"</span><span class="token operator">:</span> <span class="token number">443</span><span class="token punctuation">,</span> <span class="token property">"priority"</span><span class="token operator">:</span> <span class="token number">100</span><span class="token punctuation">,</span> <span class="token property">"xrayProtocol"</span><span class="token operator">:</span> <span class="token string">"vless"</span><span class="token punctuation">,</span> <span class="token property">"xrayFlow"</span><span class="token operator">:</span> <span class="token string">"xtls-rprx-vision"</span><span class="token punctuation">,</span> <span class="token property">"xraySSMethod"</span><span class="token operator">:</span> <span class="token string">"aes-256-gcm"</span><span class="token punctuation">,</span> <span class="token property">"realityPbk"</span><span class="token operator">:</span> <span class="token string">"JraCqHw8lrQ-YdgrBSpBVTA4fhqHLfTUpZiP45x5gRI"</span><span class="token punctuation">,</span> <span class="token property">"xraySettings"</span><span class="token operator">:</span> <span class="token string">"{\"clients\":[],\"fallbacks\":[{\"name\":\"\",\"alpn\":\"\",\"path\":null,\"dest\":\"80\",\"xver\":0}],\"network\":\"tcp\",\"decryption\":\"none\"}"</span><span class="token punctuation">,</span> <span class="token property">"xrayStreamSettings"</span><span class="token operator">:</span> <span class="token string">"{\"network\":\"tcp\",\"security\":\"reality\",\"tlsSettings\":{\"serverName\":\"\",\"alpn\":[\"h2\",\"http/1.1\"],\"allowInsecure\":false,\"fingerprint\":\"chrome\"},\"realitySettings\":{\"dest\":\"trojanpanel.github.io:8863\",\"xver\":0,\"serverNames\":[\"trojanpanel.github.io\"],\"fingerprint\":\"chrome\",\"privateKey\":\"GCRTXDZm1zuBdsQSM3Up9awTqxuzNwF6yXr5kxVT11w\",\"shortIds\":[\"c6b6b5bf30c98f05\"],\"spiderX\":\"/SCalpsSw\"},\"wsSettings\":{\"path\":\"/trojan-panel-websocket-path\",\"headers\":{\"Host\":\"\"}}}"</span><span class="token punctuation">,</span> <span class="token property">"xrayTag"</span><span class="token operator">:</span> <span class="token string">"user"</span><span class="token punctuation">,</span> <span class="token property">"xraySniffing"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"xrayAllocate"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"trojanGoSni"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"trojanGoMuxEnable"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"trojanGoWebsocketEnable"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"trojanGoWebsocketPath"</span><span class="token operator">:</span> <span class="token string">"/trojan-panel-websocket-path"</span><span class="token punctuation">,</span> <span class="token property">"trojanGoWebsocketHost"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"trojanGoSsEnable"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"trojanGoSsMethod"</span><span class="token operator">:</span> <span class="token string">"AES-128-GCM"</span><span class="token punctuation">,</span> <span class="token property">"trojanGoSsPassword"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"hysteriaProtocol"</span><span class="token operator">:</span> <span class="token string">"udp"</span><span class="token punctuation">,</span> <span class="token property">"hysteriaObfs"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"hysteriaUpMbps"</span><span class="token operator">:</span> <span class="token number">100</span><span class="token punctuation">,</span> <span class="token property">"hysteriaDownMbps"</span><span class="token operator">:</span> <span class="token number">100</span><span class="token punctuation">,</span> <span class="token property">"hysteriaServerName"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"hysteriaInsecure"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"hysteriaFastOpen"</span><span class="token operator">:</span> <span class="token number">0</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>id</td> <td>是</td> <td>主键</td></tr> <tr><td>nodeServerId</td> <td>是</td> <td>服务器id</td></tr> <tr><td>nodeSubId</td> <td>是</td> <td>节点分表id</td></tr> <tr><td>nodeTypeId</td> <td>是</td> <td>节点类型id</td></tr> <tr><td>name</td> <td>是</td> <td>名称</td></tr> <tr><td>domain</td> <td>是</td> <td>域名/IP</td></tr> <tr><td>port</td> <td>是</td> <td>端口</td></tr> <tr><td>priority</td> <td>是</td> <td>优先级</td></tr> <tr><td>xrayProtocol</td> <td>否</td> <td>Xray 协议名称</td></tr> <tr><td>xrayFlow</td> <td>否</td> <td>Xray 流控</td></tr> <tr><td>xraySSMethod</td> <td>否</td> <td>Xray Shadowsocks加密方式</td></tr> <tr><td>realityPbk</td> <td>否</td> <td>Xray reality的公钥</td></tr> <tr><td>xraySettings</td> <td>否</td> <td>Xray settings</td></tr> <tr><td>xrayStreamSettings</td> <td>否</td> <td>Xray streamSettings</td></tr> <tr><td>xrayTag</td> <td>否</td> <td>Xray tag</td></tr> <tr><td>xraySniffing</td> <td>否</td> <td>Xray sniffing</td></tr> <tr><td>xrayAllocate</td> <td>否</td> <td>Xray allocate</td></tr> <tr><td>trojanGoSni</td> <td>否</td> <td>TrojanGo sni</td></tr> <tr><td>trojanGoMuxEnable</td> <td>是</td> <td>TrojanGo 是否开启多路复用 0/关闭 1/开启</td></tr> <tr><td>trojanGoWebsocketEnable</td> <td>是</td> <td>TrojanGo 是否开启websocket 0/否 1/是</td></tr> <tr><td>trojanGoWebsocketPath</td> <td>否</td> <td>TrojanGo websocket路径</td></tr> <tr><td>trojanGoWebsocketHost</td> <td>否</td> <td>TrojanGo websocket host</td></tr> <tr><td>trojanGoSsEnable</td> <td>是</td> <td>TrojanGo 是否开启ss加密 0/否 1/是</td></tr> <tr><td>trojanGoSsMethod</td> <td>否</td> <td>TrojanGo ss加密方式</td></tr> <tr><td>trojanGoSsPassword</td> <td>否</td> <td>TrojanGo ss密码</td></tr> <tr><td>hysteriaProtocol</td> <td>否</td> <td>Hysteria 协议名称 udp/faketcp</td></tr> <tr><td>hysteriaObfs</td> <td>否</td> <td>Hysteria 混淆密码</td></tr> <tr><td>hysteriaUpMbps</td> <td>是</td> <td>Hysteria 单客户端最大上传速度 单位:Mbps</td></tr> <tr><td>hysteriaDownMbps</td> <td>是</td> <td>Hysteria 单客户端最大下载速度 单位:Mbps</td></tr> <tr><td>hysteriaServerName</td> <td>否</td> <td>Hysteria 用于验证服务端证书的 hostname</td></tr> <tr><td>hysteriaInsecure</td> <td>否</td> <td>Hysteria 忽略一切证书错误</td></tr> <tr><td>hysteriaFastOpen</td> <td>否</td> <td>Hysteria 启用 Fast Open (降低连接建立延迟)</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token null keyword">null</span> <span class="token punctuation">}</span> </code></pre></div><h3 id="获取节点二维码"><a href="#获取节点二维码" class="header-anchor">#</a> 获取节点二维码</h3> <p>接口地址: <code>/api/node/nodeQRCode</code></p> <p>请求方式: <code>POST</code></p> <p>请求示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"id"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"clientType"</span><span class="token operator">:</span> <span class="token string">"Shadowrocket"</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>id</td> <td>是</td> <td>主键</td></tr> <tr><td>clientType 是</td> <td>客户端类型 Shadowrocket/v2rayN</td> <td></td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token string">"iVBORw0KGgoAAAANSUhEUgAAAQAAAAEAAQMAAABmvDolAAAABlBMVEX///8AAABVwtN+AAAEvElEQVR42uyZMY77rhPFB1HQhQtE5hopLHGllO6go8yVkFzkGlh7gUlHgXh/DZvsbp/Yxf/3pdiV1p+VkJn3eDOmf+u/tRSAGCyar4bU1ijwo5+JDAPIBwGFdAx2Il8N204+Bp7II3EhfRSwYU0RE+m8WLU1A5wc8hJ4w/pBAIyvdjFQnTyi2opHPRqIdnJrDWSBe7zaThqgA4FCOrHdir5Ha4uu4aY2tGWhP4e1NwAg3ex0ni8LP7b1nm6n6Twvy9+ifQ+QZSKjkAHZojNZW846Gv4jv50BtYn0uOhRD0AOrFAoJH7u8RCgzWSt+8oezJMIkB3WKrXxKQDrCljXfDaWVDbVqqKByjQ9j/sIoC1XVmW+GEtuRbW2n2cy5PpRABFpsGi9BpykOPjRSVeDol4luT/g83K1W6FLsKyQTZR6ILLj5ycAhawB2102kRSaSTipMgeMfz0MmOlqi8a9gl2mELtDJmPRX5vcGyDVfCVMrl0Cn9RazY1U8XVhcmv+CKC2TAGEr2aqBdanuk2ynWY6COgaNVA560xspfjjA8XHRTw4HwQUnQ1jGx77/W6G+SxWFX8QIMqrooHZJJJNjmqcF4PiftT/HqD6TMuVim4e9jT5ulwfKBqRfs5if0Ckd8N09tmMCy6xhWQYyBs6CJBfV6IzmUSnSfJDn87z68knACK9Jtgi/s2kMgVW2xfqwpNaDwJGJgrsykwLussXuvKkxfKwNToKaLoS4Xt1nw2IXFsWfjntAUCRv0mA8pFJrYhk0WaTfrX5LjDyIiSq+WgtUAOUlH0CNhwEKKzZ3ECkc8BDUnGk6UwLSaSgg4Di13QTBV4WthKbge2rhcrbz5t8FwCyYd4KmThS8RK6azqB1Ss/7A6Qk6ZXWgEkq4Bq+FF0DhX4boIOABSa5AfJMBW2+xxGVEuJp1fv/zawrStu1hWPyKdJ32tQRY+zeN6b+wPk2rxcbXHyNlSXu7tPLtMC95Te/oBsMkWWFwVrsebFjiYI1m2ZDgK6zoFR5MbhR58vdKWJdCRM6mPA7OuVJ9d8tCj6Xq+i+CSuOh8G+BbAkzQJjK2ZSuMsxnWXjwJIp5tFIyPJfM1BgsNag32NON4Him+BIS4XxtCMrt9mzhO9jHRvQFrMaMeEbCG7rXK7yLkEbC8L2h0Qp10sF7dmY22ZTWJ8D5jcrxXvDBB5JLEgfU90UisQx2wtcXHPUc/bgLS5oOLWujC67EFJcUQ8U/EBgCrkwfS9L5JmENjKbOqfwd3eAE26BR5bjfaBdiFCd2J8T+l9AKDZJ6Do9krFkPYPsO41uNsdGKEwQMJ4YNlkiH0ijYhfbe4NjLh4o63oOxhoBhLYGi3c1W+e3BeQuLhcGW2WY5LgOnpeE3/aqA8ATddgpQEJdjy6PTp5qbzDgNFjspThuF+1RLV+FqdV35faAcD4CkPcdb4YVtuKdBtqBG/b72ea94BCEoG7yz5ZyaImorhm8Bv+9wfEuZm6Qx3zk2qg8LVKE/Tn88QRAHcthttdo8DoI1S9avIgADxpORk5phgeKL6anwzzPjC+qUF9SSKVBoSu3YnI+aWLAwDpfiLccLnTRCaNHIUK91u0OwP/1v/P+l8AAAD//4gWpbFrY3nEAAAAAElFTkSuQmCC"</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>data</td> <td>是</td> <td>二维码Base64</td></tr></tbody></table> <h3 id="复制url"><a href="#复制url" class="header-anchor">#</a> 复制URL</h3> <p>接口地址: <code>/api/node/nodeURL</code></p> <p>请求方式: <code>POST</code></p> <p>请求示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"id"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"clientType"</span><span class="token operator">:</span> <span class="token string">"Shadowrocket"</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>id</td> <td>是</td> <td>主键</td></tr> <tr><td>clientType 是</td> <td>客户端类型 Shadowrocket/v2rayN</td> <td></td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token string">"vless://7a57ec2e-bb05-5544-9c30-05814b376eba@trojanpanel.github.io:443?type=tcp\u0026security=reality\u0026flow=xtls-rprx-vision\u0026pbk=JraCqHw8lrQ-YdgrBSpBVTA4fhqHLfTUpZiP45x5gRI\u0026fp=chrome\u0026spx=%2FSCalpsSw\u0026sid=c6b6b5bf30c98f05\u0026sni=trojanpanel.github.io#vless-reality"</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>data</td> <td>是</td> <td>分享链接</td></tr></tbody></table> <h3 id="节点部分属性的默认值"><a href="#节点部分属性的默认值" class="header-anchor">#</a> 节点部分属性的默认值</h3> <p>接口地址: <code>/api/node/nodeDefault</code></p> <p>请求方式: <code>GET</code></p> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"publicKey"</span><span class="token operator">:</span> <span class="token string">"JraCqHw8lrQ-YdgrBSpBVTA4fhqHLfTUpZiP45x5gRI"</span><span class="token punctuation">,</span> <span class="token property">"privateKey"</span><span class="token operator">:</span> <span class="token string">"GCRTXDZm1zuBdsQSM3Up9awTqxuzNwF6yXr5kxVT11w"</span><span class="token punctuation">,</span> <span class="token property">"shortId"</span><span class="token operator">:</span> <span class="token string">"c6b6b5bf30c98f05"</span><span class="token punctuation">,</span> <span class="token property">"spiderX"</span><span class="token operator">:</span> <span class="token string">"/SCalpsSw"</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>publicKey</td> <td>是</td> <td>Xray reality公钥</td></tr> <tr><td>privateKey</td> <td>是</td> <td>Xray reality私钥</td></tr> <tr><td>shortId</td> <td>是</td> <td>Xray reality shortId</td></tr> <tr><td>spiderX</td> <td>是</td> <td>Xray reality spiderX</td></tr></tbody></table> <h2 id="节点类型"><a href="#节点类型" class="header-anchor">#</a> 节点类型</h2> <h3 id="查询节点类型列表"><a href="#查询节点类型列表" class="header-anchor">#</a> 查询节点类型列表</h3> <p>接口地址: <code>/api/nodeType/selectNodeTypeList</code></p> <p>请求方式: <code>GET</code></p> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token punctuation">[</span> <span class="token punctuation">{</span> <span class="token property">"id"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"name"</span><span class="token operator">:</span> <span class="token string">"xray"</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token punctuation">{</span> <span class="token property">"id"</span><span class="token operator">:</span> <span class="token number">2</span><span class="token punctuation">,</span> <span class="token property">"name"</span><span class="token operator">:</span> <span class="token string">"trojan-go"</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token punctuation">{</span> <span class="token property">"id"</span><span class="token operator">:</span> <span class="token number">3</span><span class="token punctuation">,</span> <span class="token property">"name"</span><span class="token operator">:</span> <span class="token string">"hysteria"</span> <span class="token punctuation">}</span><span class="token punctuation">,</span> <span class="token punctuation">{</span> <span class="token property">"id"</span><span class="token operator">:</span> <span class="token number">4</span><span class="token punctuation">,</span> <span class="token property">"name"</span><span class="token operator">:</span> <span class="token string">"naiveproxy"</span> <span class="token punctuation">}</span> <span class="token punctuation">]</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>id</td> <td>是</td> <td>主键</td></tr> <tr><td>name</td> <td>是</td> <td>名称</td></tr></tbody></table> <h2 id="系统设置"><a href="#系统设置" class="header-anchor">#</a> 系统设置</h2> <h3 id="查询系统设置"><a href="#查询系统设置" class="header-anchor">#</a> 查询系统设置</h3> <p>接口地址: <code>/api/system/selectSystemByName</code></p> <p>请求方式: <code>GET</code></p> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"id"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"registerEnable"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"registerQuota"</span><span class="token operator">:</span> <span class="token number">1024</span><span class="token punctuation">,</span> <span class="token property">"registerExpireDays"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"resetDownloadAndUploadMonth"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"trafficRankEnable"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"captchaEnable"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"expireWarnEnable"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"expireWarnDay"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"emailEnable"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"emailHost"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"emailPort"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"emailUsername"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"emailPassword"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"systemName"</span><span class="token operator">:</span> <span class="token string">"Trojan Panel"</span><span class="token punctuation">,</span> <span class="token property">"clashRule"</span><span class="token operator">:</span> <span class="token string">"rules:\n - RULE-SET,applications,DIRECT\n - DOMAIN,clash.razord.top,DIRECT\n - DOMAIN,yacd.haishan.me,DIRECT\n - RULE-SET,private,DIRECT\n - RULE-SET,reject,REJECT\n - RULE-SET,icloud,DIRECT\n - RULE-SET,apple,DIRECT\n - RULE-SET,google,DIRECT\n - RULE-SET,proxy,PROXY\n - RULE-SET,direct,DIRECT\n - RULE-SET,lancidr,DIRECT\n - RULE-SET,cncidr,DIRECT\n - RULE-SET,telegramcidr,PROXY\n - GEOIP,,DIRECT\n - GEOIP,CN,DIRECT\n - MATCH,PROXY\n\nrule-providers:\n reject:\n type: http\n behavior: domain\n url: \"https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/reject.txt\"\n path: ./ruleset/reject.yaml\n interval: 86400\n\n icloud:\n type: http\n behavior: domain\n url: \"https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/icloud.txt\"\n path: ./ruleset/icloud.yaml\n interval: 86400\n\n apple:\n type: http\n behavior: domain\n url: \"https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/apple.txt\"\n path: ./ruleset/apple.yaml\n interval: 86400\n\n google:\n type: http\n behavior: domain\n url: \"https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/google.txt\"\n path: ./ruleset/google.yaml\n interval: 86400\n\n proxy:\n type: http\n behavior: domain\n url: \"https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/proxy.txt\"\n path: ./ruleset/proxy.yaml\n interval: 86400\n\n direct:\n type: http\n behavior: domain\n url: \"https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/direct.txt\"\n path: ./ruleset/direct.yaml\n interval: 86400\n\n private:\n type: http\n behavior: domain\n url: \"https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/private.txt\"\n path: ./ruleset/private.yaml\n interval: 86400\n\n gfw:\n type: http\n behavior: domain\n url: \"https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/gfw.txt\"\n path: ./ruleset/gfw.yaml\n interval: 86400\n\n greatfire:\n type: http\n behavior: domain\n url: \"https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/greatfire.txt\"\n path: ./ruleset/greatfire.yaml\n interval: 86400\n\n tld-not-cn:\n type: http\n behavior: domain\n url: \"https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/tld-not-cn.txt\"\n path: ./ruleset/tld-not-cn.yaml\n interval: 86400\n\n telegramcidr:\n type: http\n behavior: ipcidr\n url: \"https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/telegramcidr.txt\"\n path: ./ruleset/telegramcidr.yaml\n interval: 86400\n\n cncidr:\n type: http\n behavior: ipcidr\n url: \"https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/cncidr.txt\"\n path: ./ruleset/cncidr.yaml\n interval: 86400\n\n lancidr:\n type: http\n behavior: ipcidr\n url: \"https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/lancidr.txt\"\n path: ./ruleset/lancidr.yaml\n interval: 86400\n\n applications:\n type: http\n behavior: classical\n url: \"https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/applications.txt\"\n path: ./ruleset/applications.yaml\n interval: 86400"</span><span class="token punctuation">,</span> <span class="token property">"xrayTemplate"</span><span class="token operator">:</span> <span class="token string">"{\n \"log\": {\n \"loglevel\": \"warning\"\n },\n \"api\": {\n \"tag\": \"api\",\n \"services\": [\n \"HandlerService\",\n \"LoggerService\",\n \"StatsService\"\n ]\n },\n \"dns\": null,\n \"routing\": {\n \"rules\": [\n {\n \"inboundTag\": [\n \"api\"\n ],\n \"outboundTag\": \"api\",\n \"type\": \"field\"\n }\n ]\n },\n \"policy\": {\n \"levels\": {\n \"0\": {\n \"statsUserUplink\": true,\n \"statsUserDownlink\": true\n }\n },\n \"system\": {\n \"statsInboundUplink\": true,\n \"statsInboundDownlink\": true\n }\n },\n \"inbounds\": [],\n \"outbounds\": [\n {\n \"protocol\": \"freedom\"\n }\n ],\n \"transport\": null,\n \"stats\": {},\n \"reverse\": null,\n \"fakeDns\": null\n}"</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>id</td> <td>是</td> <td>主键</td></tr> <tr><td>registerEnable</td> <td>是</td> <td>是否开放注册 0/否 1/是</td></tr> <tr><td>registerQuota</td> <td>是</td> <td>注册用户默认配额 单位/MB</td></tr> <tr><td>registerExpireDays</td> <td>是</td> <td>注册用户过期天数 单位/天</td></tr> <tr><td>resetDownloadAndUploadMonth</td> <td>是</td> <td>是否每月重设下载和上传流量</td></tr> <tr><td>trafficRankEnable</td> <td>是</td> <td>是否开启流量排行 0/否 1/是</td></tr> <tr><td>captchaEnable</td> <td>是</td> <td>是否开启验证码登录 0/否 1/是</td></tr> <tr><td>expireWarnEnable</td> <td>是</td> <td>是否开启到期警告 0/否 1/是</td></tr> <tr><td>expireWarnDay</td> <td>是</td> <td>到期警告 单位/天</td></tr> <tr><td>emailEnable</td> <td>是</td> <td>是否开启邮箱功能 0/否 1/是</td></tr> <tr><td>emailHost</td> <td>是</td> <td>系统邮箱设置 host</td></tr> <tr><td>emailPort</td> <td>是</td> <td>系统邮箱设置 port</td></tr> <tr><td>emailUsername</td> <td>是</td> <td>系统邮箱设置 username</td></tr> <tr><td>emailPassword</td> <td>是</td> <td>系统邮箱设置 password</td></tr> <tr><td>systemName</td> <td>是</td> <td>系统名称</td></tr> <tr><td>clashRule</td> <td>是</td> <td>Clash模板</td></tr> <tr><td>xrayTemplate</td> <td>是</td> <td>Xray模板</td></tr></tbody></table> <h3 id="更新系统配置"><a href="#更新系统配置" class="header-anchor">#</a> 更新系统配置</h3> <p>接口地址: <code>/api/system/updateSystemById</code></p> <p>请求方式: <code>POST</code></p> <p>请求示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"id"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"registerEnable"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"registerQuota"</span><span class="token operator">:</span> <span class="token number">1024</span><span class="token punctuation">,</span> <span class="token property">"registerExpireDays"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"resetDownloadAndUploadMonth"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"trafficRankEnable"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"captchaEnable"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"expireWarnEnable"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"expireWarnDay"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"emailEnable"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"emailHost"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"emailPort"</span><span class="token operator">:</span> <span class="token number">0</span><span class="token punctuation">,</span> <span class="token property">"emailUsername"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"emailPassword"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"systemName"</span><span class="token operator">:</span> <span class="token string">"Trojan Panel"</span><span class="token punctuation">,</span> <span class="token property">"clashRule"</span><span class="token operator">:</span> <span class="token string">"rules:\n - RULE-SET,applications,DIRECT\n - DOMAIN,clash.razord.top,DIRECT\n - DOMAIN,yacd.haishan.me,DIRECT\n - RULE-SET,private,DIRECT\n - RULE-SET,reject,REJECT\n - RULE-SET,icloud,DIRECT\n - RULE-SET,apple,DIRECT\n - RULE-SET,google,DIRECT\n - RULE-SET,proxy,PROXY\n - RULE-SET,direct,DIRECT\n - RULE-SET,lancidr,DIRECT\n - RULE-SET,cncidr,DIRECT\n - RULE-SET,telegramcidr,PROXY\n - GEOIP,,DIRECT\n - GEOIP,CN,DIRECT\n - MATCH,PROXY\n\nrule-providers:\n reject:\n type: http\n behavior: domain\n url: \"https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/reject.txt\"\n path: ./ruleset/reject.yaml\n interval: 86400\n\n icloud:\n type: http\n behavior: domain\n url: \"https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/icloud.txt\"\n path: ./ruleset/icloud.yaml\n interval: 86400\n\n apple:\n type: http\n behavior: domain\n url: \"https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/apple.txt\"\n path: ./ruleset/apple.yaml\n interval: 86400\n\n google:\n type: http\n behavior: domain\n url: \"https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/google.txt\"\n path: ./ruleset/google.yaml\n interval: 86400\n\n proxy:\n type: http\n behavior: domain\n url: \"https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/proxy.txt\"\n path: ./ruleset/proxy.yaml\n interval: 86400\n\n direct:\n type: http\n behavior: domain\n url: \"https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/direct.txt\"\n path: ./ruleset/direct.yaml\n interval: 86400\n\n private:\n type: http\n behavior: domain\n url: \"https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/private.txt\"\n path: ./ruleset/private.yaml\n interval: 86400\n\n gfw:\n type: http\n behavior: domain\n url: \"https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/gfw.txt\"\n path: ./ruleset/gfw.yaml\n interval: 86400\n\n greatfire:\n type: http\n behavior: domain\n url: \"https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/greatfire.txt\"\n path: ./ruleset/greatfire.yaml\n interval: 86400\n\n tld-not-cn:\n type: http\n behavior: domain\n url: \"https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/tld-not-cn.txt\"\n path: ./ruleset/tld-not-cn.yaml\n interval: 86400\n\n telegramcidr:\n type: http\n behavior: ipcidr\n url: \"https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/telegramcidr.txt\"\n path: ./ruleset/telegramcidr.yaml\n interval: 86400\n\n cncidr:\n type: http\n behavior: ipcidr\n url: \"https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/cncidr.txt\"\n path: ./ruleset/cncidr.yaml\n interval: 86400\n\n lancidr:\n type: http\n behavior: ipcidr\n url: \"https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/lancidr.txt\"\n path: ./ruleset/lancidr.yaml\n interval: 86400\n\n applications:\n type: http\n behavior: classical\n url: \"https://cdn.jsdelivr.net/gh/Loyalsoldier/clash-rules@release/applications.txt\"\n path: ./ruleset/applications.yaml\n interval: 86400"</span><span class="token punctuation">,</span> <span class="token property">"xrayTemplate"</span><span class="token operator">:</span> <span class="token string">"{\n \"log\": {\n \"loglevel\": \"warning\"\n },\n \"api\": {\n \"tag\": \"api\",\n \"services\": [\n \"HandlerService\",\n \"LoggerService\",\n \"StatsService\"\n ]\n },\n \"dns\": null,\n \"routing\": {\n \"rules\": [\n {\n \"inboundTag\": [\n \"api\"\n ],\n \"outboundTag\": \"api\",\n \"type\": \"field\"\n }\n ]\n },\n \"policy\": {\n \"levels\": {\n \"0\": {\n \"statsUserUplink\": true,\n \"statsUserDownlink\": true\n }\n },\n \"system\": {\n \"statsInboundUplink\": true,\n \"statsInboundDownlink\": true\n }\n },\n \"inbounds\": [],\n \"outbounds\": [\n {\n \"protocol\": \"freedom\"\n }\n ],\n \"transport\": null,\n \"stats\": {},\n \"reverse\": null,\n \"fakeDns\": null\n}"</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>id</td> <td>是</td> <td>主键</td></tr> <tr><td>registerEnable</td> <td>是</td> <td>是否开放注册 0/否 1/是</td></tr> <tr><td>registerQuota</td> <td>是</td> <td>注册用户默认配额 单位/MB</td></tr> <tr><td>registerExpireDays</td> <td>是</td> <td>注册用户过期天数 单位/天</td></tr> <tr><td>resetDownloadAndUploadMonth</td> <td>是</td> <td>是否每月重设下载和上传流量</td></tr> <tr><td>trafficRankEnable</td> <td>是</td> <td>是否开启流量排行 0/否 1/是</td></tr> <tr><td>captchaEnable</td> <td>是</td> <td>是否开启验证码登录 0/否 1/是</td></tr> <tr><td>expireWarnEnable</td> <td>是</td> <td>是否开启到期警告 0/否 1/是</td></tr> <tr><td>expireWarnDay</td> <td>是</td> <td>到期警告 单位/天</td></tr> <tr><td>emailEnable</td> <td>是</td> <td>是否开启邮箱功能 0/否 1/是</td></tr> <tr><td>emailHost</td> <td>是</td> <td>系统邮箱设置 host</td></tr> <tr><td>emailPort</td> <td>是</td> <td>系统邮箱设置 port</td></tr> <tr><td>emailUsername</td> <td>是</td> <td>系统邮箱设置 username</td></tr> <tr><td>emailPassword</td> <td>是</td> <td>系统邮箱设置 password</td></tr> <tr><td>systemName</td> <td>是</td> <td>系统名称</td></tr> <tr><td>clashRule</td> <td>是</td> <td>Clash模板</td></tr> <tr><td>xrayTemplate</td> <td>是</td> <td>Xray模板</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token null keyword">null</span> <span class="token punctuation">}</span> </code></pre></div><h3 id="上传静态网站文件"><a href="#上传静态网站文件" class="header-anchor">#</a> 上传静态网站文件</h3> <p>接口地址: <code>/api/system/uploadWebFile</code></p> <p>请求方式: <code>POST</code></p> <p>请求示例:</p> <p>Form Data</p> <div class="language- extra-class"><pre class="language-text"><code>file: (binary) </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>file</td> <td>是</td> <td>文件二进制</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token null keyword">null</span> <span class="token punctuation">}</span> </code></pre></div><h3 id="上传logo"><a href="#上传logo" class="header-anchor">#</a> 上传logo</h3> <p>接口地址: <code>/api/system/uploadLogo</code></p> <p>请求方式: <code>POST</code></p> <p>请求示例:</p> <p>Form Data</p> <div class="language- extra-class"><pre class="language-text"><code>file: (binary) </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>file</td> <td>是</td> <td>文件二进制</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token null keyword">null</span> <span class="token punctuation">}</span> </code></pre></div><h2 id="黑名单"><a href="#黑名单" class="header-anchor">#</a> 黑名单</h2> <h3 id="分页查询黑名单"><a href="#分页查询黑名单" class="header-anchor">#</a> 分页查询黑名单</h3> <p>接口地址: <code>/api/blackList/selectBlackListPage</code></p> <p>请求方式: <code>GET</code></p> <p>请求示例:</p> <div class="language- extra-class"><pre class="language-text"><code>/api/blackList/selectBlackListPage?pageNum=1&pageSize=20&ip=143.201.86.91 </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>pageNum</td> <td>是</td> <td>页号</td></tr> <tr><td>pageSize</td> <td>是</td> <td>页大小</td></tr> <tr><td>ip</td> <td>否</td> <td>IP地址</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"pageNum"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"pageSize"</span><span class="token operator">:</span> <span class="token number">20</span><span class="token punctuation">,</span> <span class="token property">"total"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"blackLists"</span><span class="token operator">:</span> <span class="token punctuation">[</span> <span class="token punctuation">{</span> <span class="token property">"id"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"ip"</span><span class="token operator">:</span> <span class="token string">"143.201.86.91"</span><span class="token punctuation">,</span> <span class="token property">"createTime"</span><span class="token operator">:</span> <span class="token string">"2023-08-19T16:24:58+08:00"</span> <span class="token punctuation">}</span> <span class="token punctuation">]</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>pageNum</td> <td>是</td> <td>页号</td></tr> <tr><td>pageSize</td> <td>是</td> <td>页大小</td></tr> <tr><td>total</td> <td>是</td> <td>总数</td></tr> <tr><td>blackLists</td> <td>否</td> <td>黑名单</td></tr> <tr><td>id</td> <td>否</td> <td>主键</td></tr> <tr><td>ip</td> <td>否</td> <td>IP地址</td></tr> <tr><td>createTime</td> <td>否</td> <td>创建时间</td></tr></tbody></table> <h3 id="删除黑名单"><a href="#删除黑名单" class="header-anchor">#</a> 删除黑名单</h3> <p>接口地址: <code>/api/blackList/deleteBlackListByIp</code></p> <p>请求方式: <code>POST</code></p> <p>请求示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"ip"</span><span class="token operator">:</span> <span class="token string">"143.201.86.91"</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>IP</td> <td>是</td> <td>IP地址</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token null keyword">null</span> <span class="token punctuation">}</span> </code></pre></div><h3 id="创建黑名单"><a href="#创建黑名单" class="header-anchor">#</a> 创建黑名单</h3> <p>接口地址: <code>/api/blackList/createBlackList</code></p> <p>请求方式: <code>POST</code></p> <p>请求示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"ip"</span><span class="token operator">:</span> <span class="token string">"143.201.86.91"</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>ip</td> <td>是</td> <td>IP地址</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token null keyword">null</span> <span class="token punctuation">}</span> </code></pre></div><h2 id="邮件"><a href="#邮件" class="header-anchor">#</a> 邮件</h2> <h3 id="查询邮件发送记录"><a href="#查询邮件发送记录" class="header-anchor">#</a> 查询邮件发送记录</h3> <p>接口地址: <code>/api/emailRecord/selectEmailRecordPage</code></p> <p>请求方式: <code>GET</code></p> <p>请求示例:</p> <div class="language- extra-class"><pre class="language-text"><code>/api/emailRecord/selectEmailRecordPage?pageNum=1&pageSize=20&toEmail=123&state=1 </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>pageNum</td> <td>是</td> <td>页号</td></tr> <tr><td>pageSize</td> <td>是</td> <td>页大小</td></tr> <tr><td>toEmail</td> <td>否</td> <td>收件人</td></tr> <tr><td>state</td> <td>否</td> <td>状态</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"emailRecords"</span><span class="token operator">:</span> <span class="token punctuation">[</span><span class="token punctuation">]</span><span class="token punctuation">,</span> <span class="token property">"pageNum"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"pageSize"</span><span class="token operator">:</span> <span class="token number">20</span><span class="token punctuation">,</span> <span class="token property">"total"</span><span class="token operator">:</span> <span class="token number">1</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>pageNum</td> <td>是</td> <td>页号</td></tr> <tr><td>pageSize</td> <td>是</td> <td>页大小</td></tr> <tr><td>total</td> <td>是</td> <td>总数</td></tr> <tr><td>emailRecords</td> <td>否</td> <td>发送记录</td></tr> <tr><td>id</td> <td>否</td> <td>主键</td></tr> <tr><td>toEmail</td> <td>否</td> <td>收件人邮箱</td></tr> <tr><td>subject</td> <td>否</td> <td>主题</td></tr> <tr><td>content</td> <td>否</td> <td>内容'</td></tr> <tr><td>state</td> <td>否</td> <td>状态 0/未发送 1/发送成功 -1/发送失败</td></tr> <tr><td>createTime</td> <td>否</td> <td>创建时间</td></tr></tbody></table> <h2 id="文件任务"><a href="#文件任务" class="header-anchor">#</a> 文件任务</h2> <h3 id="分页查询文件任务"><a href="#分页查询文件任务" class="header-anchor">#</a> 分页查询文件任务</h3> <p>接口地址: <code>/api/fileTask/selectFileTaskPage</code></p> <p>请求方式: <code>GET</code></p> <p>请求示例:</p> <div class="language- extra-class"><pre class="language-text"><code>/api/fileTask/selectFileTaskPage?pageNum=1&pageSize=20&accountUsername=sysadmin </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>pageNum</td> <td>是</td> <td>页号</td></tr> <tr><td>pageSize</td> <td>是</td> <td>页大小</td></tr> <tr><td>accountUsername</td> <td>否</td> <td>创建人</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token punctuation">{</span> <span class="token property">"fileTasks"</span><span class="token operator">:</span> <span class="token punctuation">[</span> <span class="token punctuation">{</span> <span class="token property">"id"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"name"</span><span class="token operator">:</span> <span class="token string">"batchCreateAccountExport-20230819161912.json"</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"status"</span><span class="token operator">:</span> <span class="token number">2</span><span class="token punctuation">,</span> <span class="token property">"errMsg"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"accountUsername"</span><span class="token operator">:</span> <span class="token string">"sysadmin"</span><span class="token punctuation">,</span> <span class="token property">"createTime"</span><span class="token operator">:</span> <span class="token string">"2023-08-19T16:19:12+08:00"</span> <span class="token punctuation">}</span> <span class="token punctuation">]</span><span class="token punctuation">,</span> <span class="token property">"pageNum"</span><span class="token operator">:</span> <span class="token number">1</span><span class="token punctuation">,</span> <span class="token property">"pageSize"</span><span class="token operator">:</span> <span class="token number">20</span><span class="token punctuation">,</span> <span class="token property">"total"</span><span class="token operator">:</span> <span class="token number">1</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>pageNum</td> <td>是</td> <td>页号</td></tr> <tr><td>pageSize</td> <td>是</td> <td>页大小</td></tr> <tr><td>total</td> <td>是</td> <td>总数</td></tr> <tr><td>fileTasks</td> <td>否</td> <td>文件任务</td></tr> <tr><td>id</td> <td>否</td> <td>主键</td></tr> <tr><td>name</td> <td>否</td> <td>文件名称</td></tr> <tr><td>type</td> <td>否</td> <td>类型 1/用户导入 2/服务器导入 3/用户导出 4/服务器导出</td></tr> <tr><td>status</td> <td>否</td> <td>状态 -1/失败 0/等待 1/正在执行 2/成功</td></tr> <tr><td>errMsg</td> <td>否</td> <td>错误信息</td></tr> <tr><td>accountUsername</td> <td>否</td> <td>登录用户名</td></tr> <tr><td>createTime</td> <td>否</td> <td>创建时间</td></tr></tbody></table> <h3 id="删除文件任务"><a href="#删除文件任务" class="header-anchor">#</a> 删除文件任务</h3> <p>接口地址: <code>/api/fileTask/deleteFileTaskById</code></p> <p>请求方式: <code>POST</code></p> <p>请求示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"id"</span><span class="token operator">:</span> <span class="token number">1</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>id</td> <td>是</td> <td>主键</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"code"</span><span class="token operator">:</span> <span class="token number">20000</span><span class="token punctuation">,</span> <span class="token property">"type"</span><span class="token operator">:</span> <span class="token string">"success"</span><span class="token punctuation">,</span> <span class="token property">"message"</span><span class="token operator">:</span> <span class="token string">""</span><span class="token punctuation">,</span> <span class="token property">"data"</span><span class="token operator">:</span> <span class="token null keyword">null</span> <span class="token punctuation">}</span> </code></pre></div><h3 id="下载文件任务的文件"><a href="#下载文件任务的文件" class="header-anchor">#</a> 下载文件任务的文件</h3> <p>接口地址: <code>/api/fileTask/downloadFileTask</code></p> <p>请求方式: <code>POST</code></p> <p>请求示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"id"</span><span class="token operator">:</span> <span class="token number">1</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>id</td> <td>是</td> <td>主键</td></tr></tbody></table> <p>返回示例:</p> <p>Content-Type: application/octet-stream</p> <div class="language- extra-class"><pre class="language-text"><code>[ { "username": "83tBsbt6dJ0j", "pass": "83tBsbt6dJ0j" }, { "username": "BxjLbz4rQyYd", "pass": "BxjLbz4rQyYd" }, { "username": "XLtcPBGHMEJz", "pass": "XLtcPBGHMEJz" }, { "username": "foxXLpN0KQkp", "pass": "foxXLpN0KQkp" }, { "username": "bX3pahuM7Lma", "pass": "bX3pahuM7Lma" } ] </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>username</td> <td>是</td> <td>登录用户名</td></tr> <tr><td>pass</td> <td>是</td> <td>登录密码</td></tr></tbody></table> <h3 id="获取文件模板"><a href="#获取文件模板" class="header-anchor">#</a> 获取文件模板</h3> <p>接口地址: <code>/api/fileTask/downloadTemplate</code></p> <p>请求方式: <code>POST</code></p> <p>请求示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">{</span> <span class="token property">"id"</span><span class="token operator">:</span> <span class="token number">1</span> <span class="token punctuation">}</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>id</td> <td>是</td> <td>主键</td></tr></tbody></table> <p>返回示例:</p> <div class="language-json extra-class"><pre class="language-json"><code><span class="token punctuation">[</span> <span class="token punctuation">{</span> <span class="token property">"grpc_port"</span><span class="token operator">:</span> <span class="token number">8100</span><span class="token punctuation">,</span> <span class="token property">"ip"</span><span class="token operator">:</span> <span class="token string">"127.0.0.1"</span><span class="token punctuation">,</span> <span class="token property">"name"</span><span class="token operator">:</span> <span class="token string">"example"</span> <span class="token punctuation">}</span> <span class="token punctuation">]</span> </code></pre></div><p>参数说明:</p> <table><thead><tr><th>参数</th> <th>必须</th> <th>说明</th></tr></thead> <tbody><tr><td>ip</td> <td>是</td> <td>服务器IP</td></tr> <tr><td>name</td> <td>是</td> <td>服务器名称</td></tr> <tr><td>grpc_port</td> <td>是</td> <td>API端口</td></tr></tbody></table></div> <footer class="page-edit"><!----> <div class="last-updated"><span class="prefix">Last Updated:</span> <span class="time">3/15/2024, 2:15:21 PM</span></div></footer> <!----> </main></div><div class="global-ui"><!----></div></div> <script src="/assets/js/app.384b123e.js" defer></script><script src="/assets/js/2.1c3af5e4.js" defer></script><script src="/assets/js/8.9f4c9859.js" defer></script> </body> </html>