1. 授权相关
LoliaFRP Open API
  • 用户信息 / 注册登录接口
    • 获取用户信息
      GET
  • 流量相关接口
    • 获取单个隧道的实时数据
      GET
    • 获取用户流量统计
      GET
    • 获取用户每日流量
      GET
    • 获取各隧道流量排行
      GET
    • 获取用户流量汇总
      GET
    • 获取流量扣费明细
      GET
    • 获取单个隧道实时流量
      GET
  • 隧道相关接口
    • 创建隧道
      POST
    • 获取隧道列表
      GET
    • 获取隧道详情
      GET
    • 获取隧道 frpc 配置
      GET
    • 通过 Token 获取隧道配置
      GET
    • 删除隧道
      DELETE
    • 编辑隧道
      PUT
  • 域名白名单接口
    • 获取域名列表
      GET
    • 添加域名
      POST
    • 验证域名
      POST
    • 删除域名
      DELETE
  • 节点相关接口
    • 获取节点列表
    • 重置节点隧道 Token
  • 主页接口
    • 获取主页统计
  • OAuth2 相关接口
    • 管理相关
      • 获取我创建的 OAuth 应用列表
      • 创建 OAuth 应用
      • 获取 OAuth 应用详情
      • 删除 OAuth 应用
      • 更新 OAuth 应用
      • 重置 OAuth 应用密钥
      • 获取已授权的应用列表
      • 撤销对应用的授权
    • 授权相关
      • OAuth2 授权请求(获取授权页信息)
        GET
      • 用户确认/拒绝授权
        POST
      • 获取/刷新访问令牌
        POST
      • 撤销令牌
        POST
  • 公共接口
  • 获取客户端最新版本
    GET
  • 数据模型
    • long
  1. 授权相关

获取/刷新访问令牌

POST
https://api.lolia.link/api/v1/oauth2/token
最后修改时间:2026-09-24 12:25:20

授权码流程第 3 步(服务端/客户端调用,无需用户登录态)。支持 grant_type:authorization_code(用授权码换令牌)与 refresh_token(刷新访问令牌)。请求体支持 application/x-www-form-urlencoded(推荐,RFC 标准)或 application/json,按 Content-Type 自动识别。客户端认证:仅支持在请求体中传 client_id + client_secret(client_secret_post),不支持 HTTP Basic(Authorization 头会被忽略);public 客户端无需 client_secret。authorization_code:code 与 redirect_uri 必填,redirect_uri 须与 approve 时完全一致;授权码一次性、10 分钟有效;若授权时使用了 PKCE 则必须传 code_verifier(43128 位 [A-Za-z0-9-._]),public 客户端必须使用 PKCE。refresh_token:refresh_token 必填,会签发新 access_token 并使旧令牌失效,refresh_token 本身保持不变且过期时间不延长。被封禁用户无法换取/刷新令牌。所有响应均为 RFC 6749 风格:成功为标准令牌 JSON,失败为 {error, error_description},均不使用 code/msg/data 包装。

鉴权:OAuth2 客户端鉴权(client_id / client_secret)

错误响应:

codemsg
400invalid_request: 请求参数错误: <校验错误详情>
401invalid_client: 无效的客户端ID
401invalid_client: 应用已停用
401invalid_client: 客户端认证失败
400invalid_request: 缺少code或redirect_uri参数
400invalid_grant: 无效的授权码
400invalid_grant: 授权码已过期
400invalid_grant: 授权码已被使用
400invalid_grant: 授权码验证失败
400invalid_grant: public 客户端必须使用 PKCE
400invalid_request: 缺少 code_verifier 参数
400invalid_grant: code_verifier 校验失败
400invalid_grant: PKCE 校验失败
400invalid_grant: 用户不可用
400invalid_request: 缺少refresh_token参数
400invalid_grant: 无效的刷新令牌
400invalid_grant: 刷新令牌已过期
400invalid_grant: 客户端ID不匹配
400unsupported_grant_type: 不支持的grant_type: <grant_type>
500server_error: 内部错误
500server_error: 授权码处理失败
500server_error: 查询用户状态失败
500server_error: 生成令牌失败
500server_error: 创建令牌失败

请求参数

Body 参数application/x-www-form-urlencoded必填

请求示例代码

Shell
JavaScript
Java
Swift
Go
PHP
Python
HTTP
C
C#
Objective-C
Ruby
OCaml
Dart
R
请求示例请求示例
Shell
JavaScript
Java
Swift
curl --location 'https://api.lolia.link/api/v1/oauth2/token' \
--header 'Authorization: Bearer <token>' \
--data-urlencode 'grant_type=' \
--data-urlencode 'client_id=' \
--data-urlencode 'client_secret=' \
--data-urlencode 'code=' \
--data-urlencode 'redirect_uri=' \
--data-urlencode 'code_verifier=' \
--data-urlencode 'refresh_token='

返回响应

🟢200成功
application/json
Bodyapplication/json

示例
{
  "access_token": "oauth2_Kf8...",
  "token_type": "Bearer",
  "expires_in": 86400,
  "refresh_token": "oauth2_Rt2...",
  "scope": "user:read tunnel:read"
}
🟠400错误 400
🟠401错误 401
🔴500错误 500
修改于 2026-09-24 12:25:20
上一页
用户确认/拒绝授权
下一页
撤销令牌
Built with