查询所有API Key
接口路径
http
GET /api/open/token/search配额计算说明
配额字段为内部额度单位,换算成金额(人民币)的方式:
金额(¥) = quota ÷ quota_per_unit × usd_exchange_rate其中:
quota:来自本接口返回的data[].remain_quota(剩余)或data[].used_quota(已用);月度相关可用data[].monthly_quota_limit、data[].current_month_usedquota_per_unit、usd_exchange_rate、quota_display_type:来自 查询换算参数 接口(GET /api/open/status)
若 quota_display_type = USD(美元),则去掉 × usd_exchange_rate。
当 unlimited_quota = true 时,令牌额度不受限,不必用 remain_quota 换算「剩余余额」。
请求参数
| 字段 | 类型 | 是否必传 | 说明 | 限制条件 | 备注 |
|---|---|---|---|---|---|
| p | int | 否 | 页码 | 默认 1 | 示例: 1 |
| page_size | int | 否 | 每页条数 | 默认 10,最大 5000 | 示例: 20 |
| size | int | 否 | 每页条数(别名) | 与 page_size 同义 | 优先级低于 page_size |
| ps | int | 否 | 每页条数(别名) | 与 page_size 同义 | 优先级低于 page_size |
| keyword | string | 否 | Token 名称关键字 | 模糊匹配 name | 示例: api-key |
| token | string | 否 | 密钥片段 | 模糊匹配 key;会自动去掉前缀 sk- | 示例: abc123 |
| status | string | 否 | Token 状态 | 见下文状态枚举表 | 示例: 1 |
| group | string | 否 | 分组名称 | 匹配 group 或 groups JSON | 示例: default |
| enterprise_id | int | 否 | 企业 ID | 查询企业下信息必传,不传则按照个人模式查询 | 示例: 1001 |
| scope | string | 否 | 查询范围 | 见下文 Scope 枚举表;默认 mine | 示例: organization |
| organization_id | int | 否 | 部门 ID | 企业模式;指定查询哪个部门 | 示例: 2001 |
| user_id | int | 否 | 用户 ID 过滤 | 按拥有者用户筛选 | 示例: 100 |
请求示例
JSON
GET 'https://neolink.com/backend/api/open/token/search?keyword=prod&status=1&scope=organization&organization_id=2001&p=1&page_size=20'
GET 'https://neolink.com/backend/api/open/token/search?token=abc1&scope=mine'
GET 'https://neolink.com/backend/api/open/token/search?group=default&scope=all&user_id=100'返回信息
| 字段 | 类型 | 是否必传 | 说明 | 备注 |
|---|---|---|---|---|
| success | bool | 是 | 请求是否成功 | 固定值 |
| message | string | 是 | 错误提示信息(成功时为空) | 固定值 |
| data | []Token | 是 | Token 列表 | 详见下表 |
| total | int | 是 | 总记录数 | 满足条件的 Token 总数 |
Token 对象字段说明
| 字段 | 类型 | 是否必传 | 说明 | 备注 |
|---|---|---|---|---|
| id | int | 是 | Token 记录 ID | 数据库唯一标识 |
| name | string | 是 | Token 名称 | 自定义名称 |
| key | string | 是 | 密钥显示值 | 仅显示后4位 |
| status | int | 是 | Token 状态 | 1=正常;2=禁用;3=已过期;4=预算不足 |
| created_time | int64 | 是 | 创建时间 | Unix 秒级时间戳 |
| accessed_time | int64 | 否 | 最后访问时间 | Unix 秒级时间戳;未访问过则为 0 |
| expired_time | int64 | 是 | 过期时间 | Unix 秒级时间戳;-1=永不过期 |
| remain_quota | int64 | 是 | 剩余配额 | 当前可用配额;换算见上文「配额计算说明」 |
| used_quota | int64 | 是 | 已用配额 | 已消耗配额;换算见上文「配额计算说明」 |
| unlimited_quota | bool | 是 | 是否无限配额 | true=不受限;false=受限 |
| user_id | int | 是 | 所属用户 ID | 创建者用户 ID |
| enterprise_id | int | 是 | 企业 ID | 所属企业 |
| organization_id | int | 是 | 组织 ID | 所属部门 |
| busi_type | int | 是 | 业务类型 | 1=API;2=其他 |
| group | string | 是 | 主分组 | 默认分组名 |
| groups | []string | 是 | 分组数组 | 所属的全部分组 |
| model_limits | string | 是 | 模型限制 | 逗号分隔模型列表 |
| model_limits_enabled | bool | 是 | 模型限制是否启用 | true=启用;false=不启用 |
| allow_ips | string | 是 | IP 白名单 | 逗号分隔 IP 或 CIDR |
| monthly_quota_limit | int64 | 是 | 月配额上限 | 当月最高配额限制 |
| current_month | int | 是 | 当前月份 | 格式 YYYYMM |
| current_month_used | int64 | 是 | 当月已用 | 当月消耗配额 |
| cross_group_retry | bool | 是 | 跨分组重试 | true=启用;false=禁用 |
| created_by_member_id | int | 是 | 创建人成员 ID | 企业内创建者的成员ID |
| member_display_name | string | 是 | 创建人显示名 | 真名或昵称 |
| member_username | string | 是 | 创建人用户名 | 登录用户名 |
| member_mobile_masked | string | 是 | 创建人手机号(掩码) | 仅显示后4位 |
| creator_deleted | bool | 是 | 创建人是否已删除 | true=已删除;false=正常 |
返回示例
JSON
成功响应
{
"success": true,
"message": "",
"data": [
{
"id": 5001,
"name": "api-key-prod-1",
"key": "sk-a5b0",
"status": 1,
"created_time": 1711468800,
"accessed_time": 1711584000,
"expired_time": -1,
"remain_quota": 1000000,
"used_quota": 500000,
"unlimited_quota": false,
"user_id": 100,
"enterprise_id": 1001,
"organization_id": 2001,
"busi_type": 1,
"group": "default",
"groups": ["default", "premium"],
"groups_meta": [
{
"name": "default",
"ratio": "1",
"desc": "默认分组"
},
{
"name": "premium",
"ratio": "1.5",
"desc": "高级分组"
}
],
"model_limits": "gpt-4,gpt-3.5-turbo",
"model_limits_enabled": true,
"allow_ips": "10.0.0.1,192.168.1.0/24",
"monthly_quota_limit": 2000000,
"current_month": 202607,
"current_month_used": 300000,
"cross_group_retry": true,
"created_by_member_id": 101,
"member_display_name": "张三",
"member_username": "zhangsan",
"member_mobile_masked": "1385678",
"creator_deleted": false
}
],
"total": 156
}
错误响应
{
"success": false,
"message": "status 仅支持 1(正常)、2(禁用)、3(已过期) 或 4(预算不足)"
}