所需 OAuth scope:tunnel:write
创建隧道,成功返回 HTTP 201。隧道名称由服务端随机生成,初始状态 inactive。前置条件/业务规则:账户未封禁;已绑定 QQ 或已通过实名认证;隧道数量不能超过用户上限 max_tunnel_count;节点 need_kyc=true 时需已通过实名认证;HTTP/HTTPS 隧道必须提供 custom_domain,且该域名(或其父域名)已在域名白名单中验证通过,不允许泛域名;节点 beian_required=true 时域名还需有 ICP 备案。HTTP/HTTPS 隧道 remote_port 固定为 80(忽略传入值);TCP/UDP 隧道 remote_port 不传或为 0 时自动分配,指定时必须在节点可用端口范围内且未被占用。创建时可直接传入 config 保存 Auto TLS 和高级配置,与编辑接口使用相同校验:auto_tls=true 仅 HTTPS 且需自定义域名;http_redirect=true 仅 HTTPS(客户端功能需节点 frps >= 0.69.2);proxy_protocol_version 为 v1/v2 或空字符串,protocol 为 tcp/kcp 或空字符串,字符串首尾空白会去除。节点必须支持所选协议,HTTPS 使用节点的 http 能力标识。
鉴权:OAuth2 Access Token,Authorization: Bearer {{oauthAccessToken}}
OAuth2:支持 OAuth2 Access Token,需要 scope tunnel:write
错误响应:
| code | msg |
|---|---|
| 401 | authorization header is missing |
| 401 | invalid token |
| 403 | OAuth2权限不足,需要以下权限之一: tunnel:write |
| 400 | 请求参数错误: <校验错误> |
| 400 | 节点不存在 |
| 400 | HTTP/HTTPS 类型的隧道必须配置自定义域名 |
| 400 | 域名验证失败: 域名未添加到白名单 |
| 400 | 端口不在节点的可用端口范围内 |
| 401 | 用户不存在 |
| 403 | 账户已被封禁 |
| 403 | 请先绑定 QQ 或完成实名认证后再创建或启动隧道 |
| 403 | 隧道数量已达到限制 |
| 403 | 该节点需要实名认证,请先完成KYC |
| 403 | 该域名未通过验证或不可用,请先添加并验证域名 |
| 403 | 该节点需要域名备案,请先完成ICP备案 |
| 409 | 端口已被占用 |
| 409 | 没有可用的端口 |
| 500 | 创建隧道失败 |
| 400 | 节点不支持所选隧道协议 |
| 400 | 仅 HTTPS 类型隧道支持 Auto TLS |
| 400 | 开启 Auto TLS 前必须配置自定义域名 |
| 400 | 仅 HTTPS 类型隧道支持 HTTP 自动跳转 |
| 400 | 配置无效: proxy_protocol_version 仅支持 v1/v2 |
| 400 | 配置无效: protocol 仅支持 tcp/kcp |