文档首页

爱快 OpenAPI - 认证服务 (1.0.0)

Download OpenAPI specification:

来源于 ikuai-doc/openapi_specs/auth/

为避免 Redoc 单页一次性加载全部 API 导致浏览器 heap 过高,部署版按分类拆分。

PPPoE服务器管理API

来源文件: auth/auth-pppoe.json

获取PPPoE服务器配置

获取当前PPPoE服务器的配置信息。 包括服务状态、认证方式、网络配置、RADIUS设置等。

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "message": "Success",
  • "results": {
    }
}

更新PPPoE服务器配置

更新PPPoE服务器的配置信息。 支持更新认证方式、网络配置、RADIUS设置、连接控制等。

注意: 本接口为全量修改,请求时需传入所有字段。无需修改的字段请保持原值或传空值,未传入的字段可能被重置。

Authorizations:
bearerAuth
Request Body schema: application/json
required

PPPoE服务器配置数据

enabled
required
string
Enum: "yes" "no"

服务开启状态

server_name
string <= 100 characters
Default: "iKuai"

服务端名称

force_verify_name
required
integer
Default: 0
Enum: 0 1

强制校验服务名称,0为不强制,1为强制,不传则不修改

server_ip
required
string

服务器地址,必须为合法IP

dns1
required
string

DNS服务器1,必须为合法IP

dns2
required
string

DNS服务器2,必须为合法IP

authmode
required
integer
Default: 0
Enum: 0 1 2 3

认证方式:0-本地账户,1-本地账户空密码,2-任意用户,3-RADIUS

nas_identifier
required
string [ 1 .. 60 ] characters

NAS标识(authmode=3时必填,1-60个字符)

nas_ip_address
required
string

NAS IP地址(authmode=3时必填,合法IP)

radius_ip
required
string

RADIUS服务端IP(authmode=3时必填)

secret
required
string [ 1 .. 60 ] characters

共享密钥(authmode=3时必填,1-60个字符)

authport
required
integer [ 1 .. 65535 ]
Default: 1812

认证端口(authmode=3时必填)

accountport
required
integer [ 1 .. 65535 ]
Default: 1813

记账端口(authmode=3时必填)

addr_pool
required
string
Default: "10.1.1.2-10.1.1.254"

客户端地址池,格式为IP范围,多个用逗号分隔

comment
required
string <= 64 characters

备注信息,最多64个字符,不支持特殊字符

interface
required
string
Default: "lan1"

内网线路

rate_limit_lan
required
integer
Default: 1
Enum: 0 1

对内网访问限速,0为关闭,1为开启

drop_client
required
integer
Default: 1
Enum: 0 1

禁止客户端互访,0为关闭,1为开启

force_pppoe
required
integer
Default: 0
Enum: 0 1

强制拨号上网,0为关闭,1为开启

enhance_check
required
integer
Default: 1
Enum: 0 1

加强断线检测,0为关闭,1为开启

share_deny
required
integer
Default: 0
Enum: 0 1

共享数超出处理动作:0-踢掉,1-拒绝连接

bind_vlan
required
integer
Default: 0
Enum: 0 1

支持VLAN(QinQ)透传,0为关闭,1为开启

verify_vlan
required
integer
Default: 1
Enum: 0 1

是否校验VLAN(仅bind_vlan=1时必填),0为不校验,1为校验

bind_iface
required
integer
Default: 0
Enum: 0 1

支持绑定iface,0为关闭,1为开启

mtu
required
integer [ 1000 .. 1492 ]
Default: 1480

MTU值

mru
required
integer [ 1000 .. 1492 ]
Default: 1480

MRU值

lcp_echo_interval
required
integer [ 1 .. 60 ]
Default: 10

LCP echo间隔(秒)

lcp_echo_failure
required
integer [ 1 .. 60 ]
Default: 3

LCP echo失败次数

maxconnect
required
integer [ 0 .. 8760 ]
Default: 0

客户端最大连接时长(小时),0表示不限制

restart_timer
required
integer
Default: 0
Enum: 0 1

定时重启PPPoE服务,0为关闭,1为开启

restart_week
string

定时重启周期,由星期数字组成(1=周一...7=周日),如1234567表示每天。仅restart_timer=1时必填

restart_time
string

定时重启时间,格式HH:MM,多个用逗号分隔如06:00,18:00。仅restart_timer=1时必填

Responses

Request samples

Content type
application/json
{
  • "enabled": "no",
  • "server_name": "iKuai",
  • "force_verify_name": 0,
  • "server_ip": "10.1.1.1",
  • "dns1": "114.114.114.114",
  • "dns2": "119.29.29.29",
  • "authmode": 0,
  • "nas_identifier": "iKuai",
  • "nas_ip_address": "",
  • "radius_ip": "127.0.0.1",
  • "secret": "123",
  • "authport": 1812,
  • "accountport": 1813,
  • "addr_pool": "10.1.1.2-10.1.1.254",
  • "interface": "lan1",
  • "rate_limit_lan": 1,
  • "drop_client": 1,
  • "force_pppoe": 0,
  • "enhance_check": 1,
  • "share_deny": 0,
  • "bind_vlan": 0,
  • "verify_vlan": 1,
  • "bind_iface": 0,
  • "mtu": 1480,
  • "mru": 1480,
  • "lcp_echo_interval": 10,
  • "lcp_echo_failure": 3,
  • "maxconnect": 0,
  • "restart_timer": 0,
  • "restart_week": "",
  • "restart_time": ""
}

Response samples

Content type
application/json
Example
{
  • "code": 0,
  • "message": "Success"
}

WEB认证服务管理API

来源文件: auth/auth-web-services.json

获取WEB认证服务配置

获取当前WEB认证服务的配置信息。 包括认证方式、超时设置、QoS限速、Radius/LDAP配置、白名单等。 认证的配置需要确保云平台开启过认证。

Authorizations:
bearerAuth

Responses

Response samples

Content type
application/json
{
  • "code": 0,
  • "message": "Success",
  • "results": {
    }
}

用户账号管理API

来源文件: auth/authusers.json

获取用户账号列表

获取所有用户账号列表。 支持分页、排序、模糊匹配和过滤功能。

Authorizations:
bearerAuth
query Parameters
page
integer >= 1
Default: 1

页码(从1开始)

limit
integer >= 1
Default: 20

每页记录数

filter
string
Example: filter=enabled==yes

过滤条件,支持精确匹配和多条件组合。

支持的操作符:

  • "=="(等于)
  • "!="(不等于)
  • ">"(大于)
  • ">="(大于等于)
  • "<"(小于)
  • "<="(小于等于)

多条件连接语法:

  • AND逻辑:filter=field1==value1&filter=field2==value2
  • OR逻辑:filter=field1==value1,filter=field2==value2

支持的字段:username、ppptype、enabled、packages等 使用示例:

  • 单条件:filter=enabled==yes
  • AND条件:filter=enabled==yes&filter=ppptype==pppoe
  • OR条件:filter=username==test1,filter=username==test2
order
string
Default: "id"
Enum: "id" "username" "create_time" "expires" "start_time"

排序字段(id, username, create_time等)

order_by
string
Default: "desc"
Enum: "asc" "desc"

排序方式(asc:升序, desc:降序)

Responses

Response samples

Content type
application/json
{
  • "code": 0,
  • "message": "Success",
  • "results": {
    }
}

添加用户账号

添加新的用户账号。 支持多种拨号类型和配置选项。

Authorizations:
bearerAuth
Request Body schema: application/json
required

用户账号数据

enabled
required
string
Enum: "yes" "no"

账号状态

comment
string <= 64 characters

备注信息,最多64个字符,不支持特殊字符

username
required
string [ 1 .. 128 ] characters

用户名

passwd
required
string [ 1 .. 64 ] characters

密码(必填,最多64个字符)

expires
required
integer >= 0
Default: 0

过期日期(时间戳)

start_time
required
integer >= 0
Default: 0

开始日期(时间戳)

ppptype
required
string
Enum: "any" "pppoe" "pptp" "l2tp" "ovpn" "web" "pppoe_relay" "ike"

拨号类型

pppname
string

PPPoE中继类型使用,选择外网接口

share
required
integer >= 1
Default: 1

共享数

auto_mac
required
integer
Default: 0
Enum: 0 1

自动绑定MAC

upload
required
integer >= 0
Default: 0

上传限速(KB/s)

download
required
integer >= 0
Default: 0

下载限速(KB/s)

ip_type
required
integer
Default: 0
Enum: 0 1

IP类型(0:固定IP,1:地址池)

object

固定IP或地址池配置

mac
string^([0-9A-Fa-f]{2}[:-]){5}([0-9A-Fa-f]{2})$

绑定MAC地址

address
string <= 512 characters

住址

name
string <= 128 characters

姓名

phone
string <= 64 characters

手机号

cardid
string <= 64 characters

证件号码

pppoev6_wan
string

PPPoE接口继承WAN的前缀

packages
required
integer >= 0
Default: 0

套餐类型(对应套餐功能的id,id=0表示自定义)

bind_vlanid
required
string^(0|([1-9][0-9]{0,3}|[1-3][0-9]{4}|40[0-8][0-...

绑定VLANID(0表示不绑定,支持格式2000/2000.400,数字范围1-4090)

bind_ifname
required
string

绑定网卡名称(any表示任意网卡)

auto_vlanid
required
integer
Default: 0
Enum: 0 1

开启自动绑定VLAN

Responses

Request samples

Content type
application/json
{
  • "username": "testuser",
  • "passwd": "123456",
  • "enabled": "yes",
  • "ppptype": "any",
  • "comment": "测试账号",
  • "expires": 0,
  • "start_time": 1766483024,
  • "share": 1,
  • "auto_mac": 0,
  • "upload": 0,
  • "download": 0,
  • "ip_type": 0,
  • "src_addr": {
    },
  • "mac": "",
  • "address": "",
  • "name": "",
  • "phone": "",
  • "cardid": "",
  • "pppoev6_wan": "",
  • "packages": 0,
  • "bind_vlanid": "0",
  • "bind_ifname": "any",
  • "auto_vlanid": 0
}

Response samples

Content type
application/json
Example
{
  • "code": 0,
  • "message": "success"
}

获取指定用户账号

根据ID获取单个用户账号的详细信息。 需要提供有效的账号ID。

Authorizations:
bearerAuth
path Parameters
id
required
integer <int64> >= 1
Example: 3

用户账号ID

Responses

Response samples

Content type
application/json
{
  • "code": 0,
  • "message": "Success",
  • "results": {
    }
}

修改用户账号

修改指定用户账号的配置信息。

注意: 本接口为全量修改,请求时需传入所有字段。无需修改的字段请保持原值或传空值,未传入的字段可能被重置。

Authorizations:
bearerAuth
path Parameters
id
required
integer <int64> >= 1
Example: 3

用户账号ID

Request Body schema: application/json
required

用户账号更新数据

username
required
string [ 1 .. 64 ] characters

用户名(编辑页不可修改,需带回原值)

passwd
required
string [ 1 .. 64 ] characters

密码(最多64个字符)

enabled
required
string
Enum: "yes" "no"

账号状态

ppptype
required
string
Enum: "any" "pppoe" "pptp" "l2tp" "ovpn" "web" "pppoe_relay" "ike"

拨号类型

packages
required
integer >= 0

套餐类型(0表示自定义)

upload
required
integer [ 0 .. 999999 ]

上传限速(KB/s)

download
required
integer [ 0 .. 999999 ]

下载限速(KB/s)

start_time
required
integer >= 0

开始日期(时间戳)

expires
required
integer >= 0

过期日期(时间戳,0表示不过期)

share
required
integer [ 1 .. 999 ]

共享数

ip_type
required
integer
Enum: 0 1

IP类型(0:固定IP,1:地址池)

auto_mac
required
integer
Enum: 0 1

自动绑定MAC

auto_vlanid
required
integer
Enum: 0 1

开启自动绑定VLAN

bind_vlanid
required
string

绑定VLANID(0表示不绑定)

pppname
required
string

PPPoE中继类型使用,选择外网接口

pppoev6_wan
required
string

PPPoE接口继承WAN的前缀

bind_ifname
required
string

绑定网卡名称(any表示任意网卡)

required
object

固定IP或地址池配置

mac
required
string

绑定MAC地址

address
required
string

住址

name
required
string

姓名

phone
required
string

手机号

cardid
required
string

证件号码

comment
required
string <= 64 characters

备注信息,最多64个字符,不支持特殊字符

Responses

Request samples

Content type
application/json
{
  • "enabled": "yes",
  • "comment": "更新后的备注",
  • "expires": 0,
  • "start_time": 1766483024,
  • "share": 2,
  • "auto_mac": 0,
  • "upload": 100,
  • "download": 200,
  • "ip_type": 1,
  • "src_addr": {
    },
  • "mac": "",
  • "address": "",
  • "name": "",
  • "phone": "",
  • "cardid": "",
  • "pppoev6_wan": "",
  • "packages": 0,
  • "bind_vlanid": "0",
  • "bind_ifname": "any",
  • "auto_vlanid": 0
}

Response samples

Content type
application/json
Example
{
  • "code": 0,
  • "message": "success"
}

删除用户账号

删除指定的用户账号。 删除后账号将被永久移除,无法恢复。

Authorizations:
bearerAuth
path Parameters
id
required
integer <int64> >= 1
Example: 3

用户账号ID

Responses

Response samples

Content type
application/json
{
  • "code": 0,
  • "message": "success"
}

认证用户管理API

来源文件: auth/online-users.json

获取认证用户列表

获取所有认证用户配置列表。 支持分页、排序、模糊匹配和过滤功能。 包括在线用户的详细信息,如认证时间、会话ID、IP地址、MAC地址等。

Authorizations:
bearerAuth
query Parameters
page
integer >= 1
Default: 1

页码(从1开始)

limit
integer >= 1
Default: 20

每页记录数

filter
string
Example: filter=ppptype==pptp

过滤条件,支持精确匹配和多条件组合。

支持的操作符:

  • "=="(等于)
  • "!="(不等于)
  • ">"(大于)
  • ">="(大于等于)
  • "<"(小于)
  • "<="(小于等于)

多条件连接语法:

  • AND逻辑:filter=field1==value1&filter=field2==value2
  • OR逻辑:filter=field1==value1,filter=field2==value2

支持的字段:username、name、ppptype、ip_addr、mac、auth_time、phone、interface、proxy_username、comment等

order
string
Default: "auth_time"
Enum: "id" "username" "ip_addr_int" "auth_time"

排序字段(id、username、auth_time等)

order_by
string
Default: "desc"
Enum: "asc" "desc"

排序方式(asc:升序, desc:降序)

Responses

Response samples

Content type
application/json
{
  • "message": "Success",
  • "results": {
    }
}

获取指定认证用户

根据ID获取单个认证用户的详细信息。 需要提供有效的用户ID。

Authorizations:
bearerAuth
path Parameters
id
required
integer <int64> >= 1
Example: 1

认证用户ID

Responses

Response samples

Content type
application/json
{
  • "message": "Success",
  • "results": {
    }
}

断开认证用户

断开指定认证用户的连接。 删除后用户将被强制下线,需要重新认证。

Authorizations:
bearerAuth
path Parameters
id
required
integer <int64> >= 1
Example: 1

认证用户ID

Responses

Response samples

Content type
application/json
{
  • "message": "success"
}

套餐管理API

来源文件: auth/packages.json

获取套餐列表

获取所有套餐列表。 支持分页、排序、模糊匹配和过滤功能。

Authorizations:
bearerAuth
query Parameters
page
integer >= 1
Default: 1

页码(从1开始)

limit
integer >= 1
Default: 20

每页记录数

filter
string
Example: filter=packname==test

过滤条件,支持精确匹配和多条件组合。

支持的操作符:

  • "=="(等于)
  • "!="(不等于)
  • ">"(大于)
  • ">="(大于等于)
  • "<"(小于)
  • "<="(小于等于)

多条件连接语法:

  • AND逻辑:filter=field1==value1&filter=field2==value2
  • OR逻辑:filter=field1==value1,filter=field2==value2

支持的字段:packname、price等 使用示例:

  • 单条件:filter=packname==test
  • AND条件:filter=price>=100&filter=price<=500
order
string
Default: "id"
Enum: "id" "packname" "price" "up_speed" "down_speed"

排序字段(id, packname, price等)

order_by
string
Default: "desc"
Enum: "asc" "desc"

排序方式(asc:升序, desc:降序)

Responses

Response samples

Content type
application/json
{
  • "message": "Success",
  • "results": {
    }
}

添加套餐

添加新的套餐。 支持配置套餐时间、价格和速率。

Authorizations:
bearerAuth
Request Body schema: application/json
required

套餐数据

packname
required
string [ 1 .. 15 ] characters

套餐名称(必填,最多15个字符)

packtime
required
string^([1-9][0-9]{0,2})[mdh]$

套餐时间(格式:数字+时间单位)

  • 时间单位:m=月,d=天,h=小时
  • 数字范围:1-999,不能为前导零
  • 示例:3m=3个月,3d=3天,3h=3小时
price
required
integer [ 1 .. 99999 ]

套餐价格

up_speed
required
integer [ 0 .. 999999 ]

上行速率(KB/s)

down_speed
required
integer [ 0 .. 999999 ]

下行速率(KB/s)

comment
string <= 64 characters

备注信息,最多64个字符,不支持特殊字符

Responses

Request samples

Content type
application/json
{
  • "packname": "基础套餐",
  • "packtime": "3m",
  • "price": 100,
  • "up_speed": 500,
  • "down_speed": 1000,
  • "comment": "月度基础套餐"
}

Response samples

Content type
application/json
Example
{
  • "code": 0,
  • "message": "success"
}

获取指定套餐

根据ID获取单个套餐的详细信息。 需要提供有效的套餐ID。

Authorizations:
bearerAuth
path Parameters
id
required
integer <int64> >= 1
Example: 1

套餐ID

Responses

Response samples

Content type
application/json
{
  • "message": "Success",
  • "results": {
    }
}

修改套餐

修改指定套餐的配置信息。

注意: 本接口为全量修改,请求时需传入所有字段。无需修改的字段请保持原值或传空值,未传入的字段可能被重置。

Authorizations:
bearerAuth
path Parameters
id
required
integer <int64> >= 1
Example: 1

套餐ID

Request Body schema: application/json
required

套餐更新数据

packname
required
string [ 1 .. 15 ] characters

套餐名称(必填,最多15个字符)

packtime
required
string^([1-9][0-9]{0,2})[mdh]$

套餐时间(格式:数字+时间单位)

  • 时间单位:m=月,d=天,h=小时
  • 数字范围:1-999,不能为前导零
  • 示例:3m=3个月,3d=3天,3h=3小时
price
required
integer [ 1 .. 99999 ]

套餐价格

up_speed
required
integer [ 0 .. 999999 ]

上行速率(KB/s)

down_speed
required
integer [ 0 .. 999999 ]

下行速率(KB/s)

comment
string <= 64 characters

备注信息,最多64个字符,不支持特殊字符

Responses

Request samples

Content type
application/json
{
  • "packname": "升级套餐",
  • "packtime": "6m",
  • "price": 200,
  • "up_speed": 1000,
  • "down_speed": 2000,
  • "comment": "半年升级套餐"
}

Response samples

Content type
application/json
Example
{
  • "code": 0,
  • "message": "success"
}

删除套餐

删除指定的套餐。 删除后套餐将被永久移除,无法恢复。

Authorizations:
bearerAuth
path Parameters
id
required
integer <int64> >= 1
Example: 1

套餐ID

Responses

Response samples

Content type
application/json
{
  • "message": "success"
}