文档首页

爱快 OpenAPI - 高级服务 (1.0.0)

Download OpenAPI specification:

来源于 ikuai-doc/openapi_specs/advanced/

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

FTP服务管理API

来源文件: advanced/advanced-ftp-server.json

获取FTP服务配置

获取当前FTP服务的配置信息,包括服务开关、端口和外网访问控制。

Authorizations:
bearerAuth

Responses

Response samples

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

更新FTP服务配置

全量更新FTP服务配置。所有字段均为必填,即使未修改也必须携带原值。

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

Authorizations:
bearerAuth
Request Body schema: application/json
required

FTP服务配置(全量更新,所有字段必填,未修改的字段须传原值)

open_ftp
required
integer
Enum: 0 1

FTP服务开关(0关闭,1开启)

ftp_port
required
integer [ 1 .. 65535 ]

FTP服务端口,范围1-65535,但排除600-799、1234-1240、12345、34567

ftp_access
required
integer
Enum: 0 1

是否允许外网访问(0不允许,1允许)

Responses

Request samples

Content type
application/json
{
  • "open_ftp": 1,
  • "ftp_port": 21,
  • "ftp_access": 1
}

Response samples

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

获取FTP用户列表

获取FTP用户列表,支持分页、过滤和排序。

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

页码(从1开始)

limit
integer >= 1
Default: 20

每页记录数

key
string
Enum: "username" "enabled" "permission" "home_dir"

搜索字段名,与pattern联合使用

pattern
string

搜索关键词,与key联合使用

order
string
Default: "id"
Enum: "id" "username" "enabled"

排序字段

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

排序方式

Responses

Response samples

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

新增FTP用户

创建新的FTP用户。tagname由系统自动设置为username的值,无需传入。

home_dir 应先通过 GET /api/v4.0/system/files?path=/ 查询可用存储目录, 再从返回的 results.data[].f_name 组合为目录路径,例如 /test-001

Authorizations:
bearerAuth
Request Body schema: application/json
required

FTP用户创建数据

enabled
required
string
Enum: "yes" "no"

用户状态

username
required
string [ 1 .. 15 ] characters

用户名(唯一,不可重复)

passwd
required
string [ 1 .. 64 ] characters

密码

permission
required
string
Enum: "rw" "ro"

读写权限(rw读写,ro只读)

home_dir
required
string

用户目录。先调用 GET /api/v4.0/system/files?path=/ 获取可用目录,再填写对应目录路径;不可为 /,不可含 ..

upload
integer [ 0 .. 1000000000 ]
Default: 0

上传限速(KByte/s),0不限速

download
integer [ 0 .. 1000000000 ]
Default: 0

下载限速(KByte/s),0不限速

Responses

Request samples

Content type
application/json
{
  • "enabled": "yes",
  • "username": "testuser",
  • "passwd": "123456",
  • "permission": "rw",
  • "home_dir": "/test-001",
  • "upload": 0,
  • "download": 0
}

Response samples

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

更新FTP用户

全量更新FTP用户配置。所有字段均为必填,即使未修改也必须携带原值。tagname由系统自动设置为username的值。

home_dir 应先通过 GET /api/v4.0/system/files?path=/ 查询可用存储目录, 再从返回的 results.data[].f_name 组合为目录路径,例如 /test-001

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

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

FTP用户ID

Request Body schema: application/json
required

FTP用户更新数据(全量更新,所有字段必填,未修改的字段须传原值)

enabled
required
string
Enum: "yes" "no"

用户状态

username
required
string [ 1 .. 15 ] characters

用户名(唯一,不可重复)

passwd
required
string [ 1 .. 64 ] characters

密码

permission
required
string
Enum: "rw" "ro"

读写权限(rw读写,ro只读)

home_dir
required
string

用户目录。先调用 GET /api/v4.0/system/files?path=/ 获取可用目录,再填写对应目录路径;不可为 /,不可含 ..

upload
integer [ 0 .. 1000000000 ]
Default: 0

上传限速(KByte/s),0不限速

download
integer [ 0 .. 1000000000 ]
Default: 0

下载限速(KByte/s),0不限速

tagname
required
string

名称标签(系统自动设为username值,但须传入)

Responses

Request samples

Content type
application/json
{
  • "enabled": "yes",
  • "username": "testuser",
  • "passwd": "123456",
  • "permission": "rw",
  • "home_dir": "/test-001",
  • "upload": 0,
  • "download": 0,
  • "tagname": "testuser"
}

Response samples

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

启用/停用FTP用户

快速启用或停用指定的FTP用户账户。

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

FTP用户ID

Request Body schema: application/json
required
enabled
required
string
Enum: "yes" "no"

用户状态

Responses

Request samples

Content type
application/json
{
  • "enabled": "yes"
}

Response samples

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

删除FTP用户

删除指定的FTP用户账户。

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

FTP用户ID

Responses

Response samples

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

HTTP服务器管理API

来源文件: advanced/advanced-http-server.json

获取HTTP服务器列表

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

页码(从1开始)

limit
integer >= 1
Default: 20

每页记录数

key
string
Enum: "tagname" "enabled" "http_port" "server_name"

搜索字段名,与pattern联合使用

pattern
string

搜索关键词,与key联合使用

order
string
Default: "id"
Enum: "id" "tagname" "http_port"

排序字段

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

排序方式

Responses

Response samples

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

创建HTTP服务器

创建HTTP服务器。

home_dir 应先通过 GET /api/v4.0/system/files?path=/ 查询可用存储目录, 再从返回的 results.data[].f_name 组合为目录路径,例如 /test-001

Authorizations:
bearerAuth
Request Body schema: application/json
required
enabled
required
string
Enum: "yes" "no"

启用状态

tagname
required
string

服务器名称(唯一)

http_port
required
integer [ 1 .. 65535 ]

HTTP端口

server_name
string
Default: ""

服务器域名(ServerName),可为空

ssl_on
required
integer
Default: 0
Enum: 0 1

是否开启SSL加密(0关闭,1开启)

autoindex
required
integer
Default: 0
Enum: 0 1

是否开启目录浏览(0关闭,1开启)

download
required
integer >= 0
Default: 0

下载限速(KByte/s),0不限速

home_dir
required
string

用户目录路径。先调用 GET /api/v4.0/system/files?path=/ 获取可用目录,再填写对应目录路径;不可为 /,不可含 ..

access
required
integer
Default: 1
Enum: 0 1

是否允许外网访问(0不允许,1允许)

Responses

Request samples

Content type
application/json
{
  • "enabled": "yes",
  • "tagname": "myhttp",
  • "http_port": 8888,
  • "server_name": "",
  • "ssl_on": 0,
  • "autoindex": 0,
  • "download": 0,
  • "home_dir": "/test-001",
  • "access": 1
}

Response samples

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

更新HTTP服务器

全量更新HTTP服务器配置。所有字段均为必填,即使未修改也必须携带原值。

home_dir 应先通过 GET /api/v4.0/system/files?path=/ 查询可用存储目录, 再从返回的 results.data[].f_name 组合为目录路径,例如 /test-001

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

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

HTTP服务器ID

Request Body schema: application/json
required

全量更新,所有字段必填,未修改的字段须传原值

enabled
required
string
Enum: "yes" "no"

启用状态

tagname
required
string

服务器名称(唯一)

http_port
required
integer [ 1 .. 65535 ]

HTTP端口

server_name
required
string

服务器域名(ServerName),可为空

ssl_on
required
integer
Enum: 0 1

是否开启SSL加密(0关闭,1开启)

autoindex
required
integer
Enum: 0 1

是否开启目录浏览(0关闭,1开启)

download
required
integer >= 0

下载限速(KByte/s),0不限速

home_dir
required
string

用户目录路径。先调用 GET /api/v4.0/system/files?path=/ 获取可用目录,再填写对应目录路径;不可为 /,不可含 ..

access
required
integer
Enum: 0 1

是否允许外网访问(0不允许,1允许)

Responses

Request samples

Content type
application/json
{
  • "enabled": "yes",
  • "tagname": "myhttp",
  • "http_port": 8888,
  • "server_name": "",
  • "ssl_on": 0,
  • "autoindex": 0,
  • "download": 0,
  • "home_dir": "/test-001",
  • "access": 1
}

Response samples

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

启用/停用HTTP服务器

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

HTTP服务器ID

Request Body schema: application/json
required
enabled
required
string
Enum: "yes" "no"

Responses

Request samples

Content type
application/json
{
  • "enabled": "yes"
}

Response samples

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

删除HTTP服务器

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

HTTP服务器ID

Responses

Response samples

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

Samba服务管理API

来源文件: advanced/advanced-samba.json

获取Samba服务基础配置

Authorizations:
bearerAuth

Responses

Response samples

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

更新Samba服务基础配置

全量更新Samba服务基础配置。所有字段均为必填,即使未修改也必须携带原值。

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

Authorizations:
bearerAuth
Request Body schema: application/json
required

全量更新,所有字段必填,未修改的字段须传原值

enabled
required
string
Enum: "yes" "no"

开启或关闭状态

workgroup
required
string

工作组名称

wsdd2
required
integer
Enum: 0 1

启用网络发现(0关闭,1开启)

access
required
integer
Enum: 0 1

是否允许外网访问(0不允许,1允许)

Responses

Request samples

Content type
application/json
{
  • "enabled": "yes",
  • "workgroup": "WORKGROUP",
  • "wsdd2": 1,
  • "access": 1
}

Response samples

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

获取Samba用户列表

获取Samba共享目录用户列表。注意:响应中数据键为dir_data,总数键为dir_total。

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

页码(从1开始)

limit
integer >= 1
Default: 20

每页记录数

key
string
Enum: "username" "name" "enabled" "perm"

搜索字段名,与pattern联合使用

pattern
string

搜索关键词,与key联合使用

order
string
Default: "id"
Enum: "id" "username" "name"

排序字段

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

排序方式

Responses

Response samples

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

创建Samba用户

创建Samba共享目录用户。tagname由系统自动设置为name的值,无需传入。

home_dir 应先通过 GET /api/v4.0/system/files?path=/ 查询可用存储目录。 单个共享填写单个目录路径,例如 /test-001; 多个共享时可使用逗号分隔多个目录路径,并与 name 一一对应。

Authorizations:
bearerAuth
Request Body schema: application/json
required
enabled
required
string
Enum: "yes" "no"

开启或关闭状态

username
required
string

用户名(唯一,不可为root)

passwd
required
string

密码(不可为空)

name
required
string

共享名(唯一,不可为空,多个用逗号分隔)

perm
required
string
Default: "rw"
Enum: "rw" "ro"

用户权限(rw读写,ro只读)

guest
required
string
Default: "yes"
Enum: "yes" "no"

访客是否可以访问

browseable
required
string
Default: ""

是否可浏览,多个用逗号分隔

home_dir
required
string

共享目录路径。先调用 GET /api/v4.0/system/files?path=/ 获取可用目录,再填写对应目录路径;不可为 /,不可含 ..;多个值用逗号分隔

Responses

Request samples

Content type
application/json
{
  • "enabled": "yes",
  • "username": "testuser",
  • "passwd": "123456",
  • "name": "share1",
  • "perm": "rw",
  • "guest": "yes",
  • "browseable": "",
  • "home_dir": "/test-001"
}

Response samples

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

更新Samba用户

全量更新Samba用户配置。所有字段均为必填,即使未修改也必须携带原值。tagname由系统自动设为name值,但仍须传入。

home_dir 应先通过 GET /api/v4.0/system/files?path=/ 查询可用存储目录。 单个共享填写单个目录路径,例如 /test-001; 多个共享时可使用逗号分隔多个目录路径,并与 name 一一对应。

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

Samba用户ID

Request Body schema: application/json
required

全量更新,所有字段必填,未修改的字段须传原值

enabled
required
string
Enum: "yes" "no"

开启或关闭状态

username
required
string

用户名(唯一,不可为root)

passwd
required
string

密码(不可为空)

name
required
string

共享名(唯一,不可为空)

perm
required
string
Enum: "rw" "ro"

用户权限(rw读写,ro只读)

guest
required
string
Enum: "yes" "no"

访客是否可以访问

browseable
required
string

是否可浏览,多个用逗号分隔

home_dir
required
string

共享目录路径。先调用 GET /api/v4.0/system/files?path=/ 获取可用目录,再填写对应目录路径;不可为 /,不可含 ..

tagname
required
string

名称标签(系统自动设为name值,但须传入)

Responses

Request samples

Content type
application/json
{
  • "enabled": "yes",
  • "username": "testuser",
  • "passwd": "123456",
  • "name": "share1",
  • "perm": "rw",
  • "guest": "yes",
  • "browseable": "",
  • "home_dir": "/test-001",
  • "tagname": "share1"
}

Response samples

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

启用/停用Samba用户

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

Samba用户ID

Request Body schema: application/json
required
enabled
required
string
Enum: "yes" "no"

Responses

Request samples

Content type
application/json
{
  • "enabled": "yes"
}

Response samples

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

删除Samba用户

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

Samba用户ID

Responses

Response samples

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

SNMP服务管理API

来源文件: advanced/advanced-snmpd.json

获取SNMP服务配置

Authorizations:
bearerAuth

Responses

Response samples

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

更新SNMP服务配置

全量更新SNMP服务配置。所有15个字段均为必填,即使未修改也必须携带原值。 条件必填规则:

  • version=2时:community必填
  • version=3时:username、security必填
  • security为authNoPriv时:auth_proto(MD5/SHA)、auth_pass(>=8字符)必填
  • security为authPriv时:auth_proto、auth_pass、priv_proto(DES/AES)、priv_pass(>=8字符)必填

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

Authorizations:
bearerAuth
Request Body schema: application/json
required

全量更新,所有字段必填,未修改的字段须传原值

enabled
required
string
Enum: "yes" "no"

服务开启状态

listen_port
required
integer [ 2 .. 65535 ]

SNMP监听端口,范围 1-65535,600-799 为系统保留不可用

syslocation
required
string

物理位置信息

syscontact
required
string

联系信息

sysname
required
string

系统名称

version
required
integer
Enum: 2 3

SNMP版本(仅支持2和3)

community
required
string

团体名(v2使用),version=2时不可为空

source
required
string

可访问的IP地址/网段

rw
required
string
Enum: "ro" "rw"

读写权限

username
required
string

用户名(v3使用),version=3时不可为空

security
required
string
Enum: "authNoPriv" "authPriv"

安全级别(v3使用),version=3时必须为authNoPriv或authPriv

auth_proto
required
string
Enum: "MD5" "SHA"

认证模式,security为authNoPriv或authPriv时必须为MD5或SHA

auth_pass
required
string [ 8 .. 30 ] characters

认证密码,security为authNoPriv或authPriv时必填,8-30字符

priv_proto
required
string
Enum: "DES" "AES"

加密模式,security为authPriv时必须为DES或AES

priv_pass
required
string [ 8 .. 30 ] characters

加密密码,security为authPriv时必填,8-30字符

Responses

Request samples

Content type
application/json
{
  • "enabled": "yes",
  • "listen_port": 161,
  • "syslocation": "",
  • "syscontact": "",
  • "sysname": "",
  • "version": 2,
  • "community": "public",
  • "source": "",
  • "rw": "ro",
  • "username": "",
  • "security": "authNoPriv",
  • "auth_proto": "",
  • "auth_pass": "",
  • "priv_proto": "",
  • "priv_pass": ""
}

Response samples

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