Skip to content

API 概览

NOLUX 提供 RESTful API 接口,支持外部系统集成和二次开发。本文档介绍 API 的通用规范。

基础信息

项目说明
基础 URLhttps://api.nolux.cn/api/v1
协议HTTPS(强制)
数据格式JSON
字符编码UTF-8
时区UTC(响应中的时间戳均为 ISO 8601 格式)
API 版本v1(通过 URL 路径区分)

认证方式

所有 API 请求(除登录接口外)需在请求头中携带 JWT Access Token:

http
Authorization: Bearer eyJhbGciOiJIUzI1NiIs...

详细的认证流程参见 认证 API

请求格式

通用请求头

http
Content-Type: application/json
Authorization: Bearer {access_token}
X-Tenant-ID: {tenant_id}
Accept-Language: zh-CN
请求头必填说明
AuthorizationJWT Access Token
Content-Type固定为 application/json
X-Tenant-ID租户 ID(多租户用户切换租户时使用)
Accept-Language响应语言,默认 zh-CN

请求体规范

  • POSTPUTPATCH 请求使用 JSON 格式的请求体
  • GETDELETE 请求使用 URL 查询参数
  • 所有字段名使用 snake_case 命名
  • 日期时间格式:2026-03-14T10:30:00Z(ISO 8601)
  • 金额单位:分(integer),显示时自行转换为元

响应格式

成功响应

json
{
  "code": 200,
  "message": "success",
  "data": {
    "id": "uuid-string",
    "name": "示例数据"
  }
}

列表响应(分页)

json
{
  "code": 200,
  "message": "success",
  "data": {
    "items": [
      {"id": "1", "name": "项目 A"},
      {"id": "2", "name": "项目 B"}
    ],
    "total": 100,
    "page": 1,
    "page_size": 20,
    "pages": 5
  }
}

错误响应

json
{
  "code": 422,
  "message": "参数校验失败",
  "errors": [
    {
      "field": "email",
      "message": "邮箱格式不正确"
    }
  ]
}

分页

列表接口统一支持分页查询:

参数类型默认值说明
pageinteger1页码,从 1 开始
page_sizeinteger20每页条数,最大 100
sort_bystringcreated_at排序字段
sort_orderstringdesc排序方向:asc / desc

示例:

http
GET /api/v1/products?page=2&page_size=50&sort_by=name&sort_order=asc

筛选

列表接口支持通过查询参数进行筛选:

http
GET /api/v1/orders?status=paid&channel=tmall&date_from=2026-03-01&date_to=2026-03-14

常用筛选参数:

参数说明示例
status状态筛选status=active
channel渠道筛选channel=tmall
date_from开始日期date_from=2026-03-01
date_to结束日期date_to=2026-03-14
keyword关键词搜索keyword=面膜

错误码

HTTP 状态码

状态码说明
200请求成功
201创建成功
204删除成功(无返回体)
400请求参数错误
401未认证(Token 缺失或过期)
403无权限(RBAC 校验失败)
404资源不存在
409资源冲突(如重复创建)
422参数校验失败
429请求频率超限
500服务器内部错误

业务错误码

错误码说明
AUTH_001用户名或密码错误
AUTH_002账号已被禁用
AUTH_003Refresh Token 已过期
TENANT_001租户不存在
TENANT_002租户已暂停
QUOTA_001API 调用配额已用尽
QUOTA_002AI Token 配额已用尽
QUOTA_003连接器数量已达上限
PERM_001无操作权限
PERM_002数据范围越权

限流

API 根据订阅方案实施请求频率限制:

方案限流策略
Starter1,000 次/日,60 次/分钟
Growth10,000 次/日,300 次/分钟
Enterprise100,000 次/日,1,000 次/分钟
Custom按协议配置

限流响应头:

http
X-RateLimit-Limit: 300
X-RateLimit-Remaining: 287
X-RateLimit-Reset: 1710410400

超出限流时返回 429 Too Many Requests

json
{
  "code": 429,
  "message": "请求频率超限,请稍后重试",
  "retry_after": 30
}

SDK 与工具

API 文档

NOLUX 提供交互式 API 文档:

  • Swagger UIhttps://api.nolux.cn/docs
  • ReDochttps://api.nolux.cn/redoc
  • OpenAPI 规范https://api.nolux.cn/openapi.json

cURL 示例

bash
# 获取商品列表
curl -X GET "https://api.nolux.cn/api/v1/products?page=1&page_size=20" \
  -H "Authorization: Bearer {access_token}" \
  -H "Content-Type: application/json"

建议

在开发过程中,建议使用 Swagger UI 进行接口调试,它提供了完整的请求/响应示例和在线测试功能。


相关文档

AI 驱动商务操作系统