3.板卡
1. 申请板卡
接口地址: /v1/arm/card/apply/add
请求方式: POST
请求数据类型: application/json
响应数据类型: */*,application/json
支持版本: v1.18.0
callbackUrl 由 v1.19.0 版本提供
接口描述:
申请系统中的板卡资源
请求参数:
| 参数名称 | 参数说明 | 位置 | 是否必须 | 数据类型 | 描述 |
|---|---|---|---|---|---|
| nodeUuid | 节点 uuid | body | true | string | |
| projectId | 项目Id | body | false | string | 默认当前用户的默认项目 |
| name | 板卡名称 | body | true | string | 名称不能重复 [ 批量创建时命名规则为{name}-1,{name}-2 以此类推 ] |
| createType | 类型 | body | true | integer | 1:板卡&容器 2:裸板卡 |
| armCardOfferingUuid | 板卡规格uuid | body | true | string | 通过 获取板卡计算规格 接口获取 |
| num | 申请板卡数量 | body | true | integer | 单次不能超过10000。 可通过 获取板卡可用数量 接口获取最大可申请数量 |
| snList | 板卡 SN列表 | body | false | list | 列表长度不能超过200 |
| armServerUuids | 服务器 uuid列表 | body | false | list | 服务器 uuid列表 |
| os | 操作系统 | body | false | string | 目前只支持Android、debian |
| osVersion | 操作系统版本 | body | false | string | 操作系统的版本号 |
| tagIds | 标签id | body | false | Set<Long> | |
| callbackUrl | 通知回调地址 | body | false | string | POST请求 |
请求示例
POST "/openapi/v1/arm/card/apply/add"
body:
{
"nodeUuid":"81f62329436eed8f36d0595bf81b63db",
"projectId":"7b5a664173f526309e43faf775f09d1d",
"name":"test-api",s
"createType":1,
"armCardOfferingUuid":"f64a987692a711ef9b070242ac12000d",
"num":1,
"snList":["ORG2M32QC2J231400077"],
"armServerUuids":["s-08f5fb859a9d9161c2727bf57e586f02"],
"os":"Android",
"osVersion":"13",
"tagIds":[200,257],
"callbackUrl": "http://127.0.0.1/notice"
}
响应参数:
| 参数名称 | 参数说明 | 类型 | 描述 |
|---|---|---|---|
| code | 返回代码 | integer(int32) | |
| message | 返回处理消息 | string | |
| result | 返回数据对象 | object | |
| jobs | 任务结果 | list<object> | |
| jobId | 任务ID | string | |
| code | 任务提交状态码 | integer | 对应响应状态码表 |
| message | 任务提交描述 | string | |
| uuid | 板卡 uuid | string | |
| sn | 板卡 SN | string | |
| projectId | 项目Id | string | |
| timestamp | 时间戳 | integer(int64) | |
| traceId | 请求处理ID | string |
响应示例:
{
"message": "操作成功",
"code": 200,
"result": {
"jobs": [
{
"jobId": "b183d73346ca4b6685b76fae0f0d64e5",
"code": 200,
"sn": "OR65T31QC2D221000072",
"message": "success",
"uuid": "0b4294e92763a79283def0e83bb9303a",
"projectId": "7b5a664173f526309e43faf775f09d1d"
}
]
},
"timestamp": 1733917959524,
"traceId": "E20241211195239510262"
}
2. 退订板卡
接口地址: /v1/arm/card/apply/unsubscribe
请求方式: POST
请求数据类型: application/json
响应数据类型: */*,application/json
支持版本: v2.8.0
接口描述:
退订板卡
请求参数:
| 参数名称 | 参数说明 | 位置 | 是否必须 | 数据类型 | 描述 |
|---|---|---|---|---|---|
| nodeUuid | 节点 uuid | body | true | string | |
| uuids | 板卡uuid列表 | body | true | List<String> | |
| callbackUrl | 通知回调地址 | body | false | string | POST请求 |
请求示例
POST "/openapi/v1/arm/card/apply/unsubscribe"
body:
{
"uuids": ["e123de61c90d0abbd503c48c769bb38a"],
"nodeUuid":"81f62329436eed8f36d0595bf81b63db",
"callbackUrl": "http://127.0.0.1/notice"
}
响应参数:
| 参数名称 | 参数说明 | 类型 | 描述 |
|---|---|---|---|
| code | 返回代码 | integer(int32) | |
| message | 返回处理消息 | string | |
| result | 返回数据对象 | object | |
| jobs | 任务结果 | list<object> | |
| jobId | 任务id | string | |
| code | 任务提交状态码 | integer | 对应响应状态码表 |
| message | 任务提交描述 | string | |
| uuid | 板卡 uuid | string | |
| sn | 板卡 SN | string | |
| timestamp | 时间戳 | integer(int64) | |
| traceId | 请求处理ID | string |
响应示例:
{
"message": "操作成功",
"code": 200,
"result": {
"jobs": [
{
"jobId": "c5ebec444805454c97f8884804796dde",
"code": 200,
"sn": "OR65Q61QC2D240403252",
"message": "success",
"uuid": "ef8f33d103ffc9b79af8709397e3d559"
}
]
},
"timestamp": 1742985329522,
"traceId": "E20250326183529385229"
}
3. 板卡分页列表
接口地址: /v2/card/page/list
请求方式: POST
请求数据类型: application/json
响应数据类型: */*,application/json
支持版本: v1.2.0
接口描述:
分页查询已申请的板卡列表
请求参数:
| 参数名称 | 参数说明 | 位置 | 是否必须 | 数据类型 | 描述 |
|---|---|---|---|---|---|
| nodeUuids | 节点uuid列表 | body | false | List |
筛选条件 |
| armCardSns | 板卡 SN | body | false | List |
筛选条件,指定板卡 SN查询,最多200个 |
| projectId | 项目Id | body | false | string | 默认当前用户的默认项目 |
| hardwareModels | 计算型号 | body | false | List |
筛选条件 |
| levels | 开数 | body | false | List |
筛选条件 ,1 - 6 开数 |
| tagIds | 标签Id | body | false | string | 筛选条件,多个用逗号隔开 |
| tagNames | 标签名称 | body | false | string | 筛选条件,多个用逗号,隔开 |
| instanceLimits | 容器数量超额(0:不超额,1:超额 ,-1:未创建容器的板卡或裸板卡) | body | false | List |
当超额为“-1”,表示未创建的容器的板卡或者裸板卡,当超额为“1”,表示板卡上创建的容器总数>开数,当超额为“0”,表示板卡上创建的容器总数=开数 |
| pageNum | 当前页码 | body | false | integer | 默认 1 |
| pageSize | 当前页面数据量 | body | false | integer | 默认 10 |
请求示例,实际请求请替换参数值:
POST "/openapi/v2/card/page/list?time=1720774436&sign=3bbf04e6c524bc028d543148ea55447cad066f896431980e01d80488d1212807"
body:
{
"pageNum": 1,
"pageSize": 10,
"projectId": "project_admin"
}
响应参数:
| 参数名称 | 参数说明 | 类型 | 描述 |
|---|---|---|---|
| code | 返回代码 | integer(int32) | |
| message | 返回处理消息 | string | |
| result | 返回数据对象 | IPage<object> | |
| records | 当前页的数据列表 | list<object> | |
| uuid | 板卡 uuid | string | |
| sn | 板卡 SN | string | |
| ip | 板卡 IP | string | |
| name | 板卡 名称 | string | |
| status | 板卡状态 | integer | 1正常、3异常、30NMS离线、40关机 |
| areaUuid | 区域 uuid | string | |
| areaName | 区域名称 | string | |
| nodeUuid | 节点 uuid | string | |
| nodeName | 节点名称 | string | |
| armServerUuid | 服务器 uuid | string | |
| position | 板卡硬件位置 | string | |
| sortIndex | 板卡硬件排序 | integer | |
| level | 开数 | integer | 1 - 6 开 |
| hardwareModel | 硬件型号 | String | Orion865;Orion8G2;Cruise10 |
| hardwareCode | 容器计算规格 | string | Orion865_8C_12G;Cruise10_4C_4G |
| rom | rom版本 | string | |
| tagNames | 标签 | list | |
| createType | 板卡类型 | integer | 板卡类型:1为带容器的板卡,2为裸板卡 |
| armCardOfferingUuid | 板卡计算规格uuid | String | |
| createTime | 创建时间 | string | |
| instanceNum | 容器数量 | integer | 容器数量,板卡上实际的容器数量 |
| instanceLimit | 容器数量超额 | integer | 当超额为“-1”,表示未创建的容器的板卡或者裸板卡,当超额为“1”,表示板卡上创建的容器总数>开数,当超额为“0”,表示板卡上创建的容器总数=开数 |
| total | 总记录数 | integer | |
| current | 当前页码 | integer | |
| pages | 总页数 | integer | |
| size | 每页显示条数 | integer | |
| traceId | 请求处理ID | string | |
| timestamp | 时间戳 | integer(int64) |
响应示例:
{
"message": "操作成功!",
"code": 200,
"result": {
"total": 10,
"current": 1,
"pages": 10,
"size": 1,
"records": [
{
"uuid": "03d0b1e9f4a90e067a3b92b338d586b9",
"sn": "OR65M62QC2D242406627",
"ip": "172.30.0.67",
"armServerUuid": "s-8c2c9cca5853789031ac60d332a2bdfd",
"status": 1,
"createTime": "2025-01-11 14:04:02",
"level": 4,
"position": "1-8",
"sortIndex": "7",
"areaUuid": "f2a584df5e91724a94a31a4a68b5dcd0",
"areaName": "华南",
"nodeUuid": "beb95a81559b894a92c9f1bb13c7aeba",
"nodeName": "qs-fs-pre",
"hardwareCode": "Orion865_2C_4G",
"name": "hf_auto_test-1",
"rom": "OR65L10CDA_V2.2.55_20250715_1708",
"tagNames": [
"HF自动化测试专用-勿动"
],
"createType": 1,
"armCardOfferingUuid": "f64a987692a711ef9b070242ac12000d",
"hardwareModel": "Orion865",
"status": 1,
"instanceNum": 4,
"instanceLimit": 0
}
]
},
"timestamp": 1755765049212,
"traceId": "C20250821163049212129"
}
4. 板卡详情
接口地址: /v2/card/details/{uuid}
请求方式: GET
请求数据类型: application/json
响应数据类型: */*,application/json
支持版本: v1.7.6
接口描述:
查询系统中的板卡资源
请求参数:
| 参数名称 | 参数说明 | 位置 | 是否必须 | 数据类型 | 描述 |
|---|---|---|---|---|---|
| uuid | 板卡 uuid | path | true | string |
响应参数:
| 参数名称 | 参数说明 | 类型 | 描述 |
|---|---|---|---|
| code | 返回代码 | integer(int32) | |
| message | 返回处理消息 | string | |
| result | 返回数据对象 | object | |
| uuid | 板卡 uuid | string | |
| name | 板卡名称 | string | |
| sn | 板卡 SN | string | 板卡 SN |
| cloudVirtualIp | 板卡 IP | string | 板卡 IP |
| createType | 板卡类型 | integer | 板卡类型:1为带容器的板卡,2为裸板卡 |
| refreshRate | 刷新率 | integer | |
| onlineStatus | 在线状态 | integer | |
| status | 板卡状态 | integer | 1正常、3异常、30NMS离线、40关机 |
| tagNames | 标签名称 | List |
|
| armCardOfferingUuid | 板卡计算规格uuid | string | |
| nodeName | 节点名称 | string | |
| nodeUuid | 节点 uuid | string | |
| areaUuid | 区域 uuid | string | |
| areaName | 区域名称 | string | |
| instanceNum | 板卡下创建容器数量 | integer | |
| instanceOffering | 容器计算规格 | list<object> | 如果容器数量为0,则为空 |
| uuid | 计算规格 uuid | string | |
| name | 计算规格名称 | string | |
| level | 几开 | integer | |
| cpu | cpu 数量 | integer | |
| memory | 内存 | integer | |
| instances | 容器集合 | list<object> | |
| uuid | 容器 uuid | string | |
| name | 容器名称 | string | |
| ip | 容器 IP | string | |
| cceStatus | cce 容器状态 | string | docker ps 命令看到的原生容器状态 |
| cceImage | cce 镜像 | string | |
| mounts | 云盘挂载信息 | object | |
| cloudDriveUuid | 云盘 uuid | string | |
| mountPath | 挂载目录 | string | |
| instanceLimit | 容器数量超额 | integer | 当超额为“-1”,表示未创建的容器的板卡或者裸板卡,当超额为“1”,表示板卡上创建的容器总数>开数,当超额为“0”,表示板卡上创建的容器总数=开数 |
| ssh | ssh链接信息 | list<object> | |
| password | 密码 | string | |
| expired | 失效时间 | string | |
| port | 端口 | integer | |
| ip | ip | string | |
| username | 账号 | string | |
| timestamp | 时间戳 | integer(int64) | |
| traceId | 请求处理ID | string |
响应示例:
{
"message": "操作成功",
"code": 200,
"result": {
"nodeName": "office",
"instanceNum": 3,
"cloudVirtualIp": "172.31.1.18",
"createType": 1,
"nodeUuid": "91a07b982a616b5e5141247b1f6149bc",
"uuid": "c-054154bc2a86f4a1a9464f3fd7675356",
"refreshRate": 30,
"onlineStatus": 1,
"areaName": "TEST",
"name": "TEST-2",
"areaUuid": "1938e94db546063f258e4c8ecfb48871",
"sn": "OR65M22QC1E223700085",
"tagNames": [
"HF自动化测试专用-勿动"
],
"armCardOfferingUuid": "f64a987692a711ef9b070242ac12000d",
"instanceOffering": {
"uuid": "f06fba679ff711eea4070242ac120002",
"name": "Orion865",
"level": 3,
"memory": 4,
"cpu": 3
},
"instances": [
{
"cceStatus": "Up",
"ip": "10.255.0.5",
"name": "TEST-2-i1",
"cceImage": "172.31.0.5:3735/android10:1.0.143",
"uuid": "i-7685f9c1b819484bf15ddbaf643a6ae1"
}
],
"mounts": [
{
"mountPath": "/data/mount/mi802",
"cloudDriveUuid": "3e25ec2f7103483b8abc8e3cde49ebca"
},
{
"mountPath": "/data/mount/mi8029",
"cloudDriveUuid": "088234e7fbd149b0945d6428913577be"
}
],
"ssh": {
"password": "eyJtZXRhIjoiZXlKdVlXMWxJam9pZW5GNUlpd2lkSGx3WlNJNklqSXdJbjA9Iiwic2lnbiI6InBFZGZLaUhQQUpoRE9qWDFhbDM3TFE9PSJ9",
"expired": "2026-04-23 18:41:11",
"port": 2226,
"ip": "192.168.40.86",
"username": "172.31.1.54_22_32_1776940871987"
},
"status": 1,
"instanceLimit": 0
},
"timestamp": 1716969633383,
"traceId": "E20240529160033383074"
}
5. 板卡重启
接口地址: /v2/card/powerReset
请求方式: POST
请求数据类型: application/json
响应数据类型: */*,application/json
支持版本: v1.7.4
接口描述:
批量重启指定板卡
注:重启板卡会导致该板卡下的容器不可用
请求示例,实际请求请替换参数值:
请求参数
| 参数名称 | 参数说明 | 位置 | 是否必须 | 数据类型 | 描述 |
|---|---|---|---|---|---|
| uuids | 板卡 uuid 集合 | body | true | list |
批量操作 |
| callbackUrl | 通知回调地址 | body | false | string | POST请求 |
响应参数:
| 参数名称 | 参数说明 | 类型 | 描述 |
|---|---|---|---|
| code | 返回代码 | integer(int32) | |
| message | 返回处理消息 | string | |
| success | 成功标志 | boolean | |
| result | 返回数据对象 | list<object> | |
| jobId | 任务ID | string | |
| code | 任务提交状态码 | integer | 对应响应状态码表 |
| message | 任务提交描述 | string | |
| uuid | 板卡 uuid | string | |
| nodeUuid | 板卡 uuid | string | |
| sn | 板卡 SN | string | |
| timestamp | 时间戳 | integer(int64) | |
| traceId | 请求处理ID | string |
响应示例:
{
"code": 0,
"message": "操作成功",
"result": [
{
"jobId": "b59b5f35f7d743d3ad740b8df05277bf",
"code": 200,
"message": "success",
"nodeUuid": "91a07b982a616b5e5141247b1f6149bc",
"uuid": "ae674f4546c74bf48c00c211334f214a",
"sn": "OR65T31QC2D221000025"
}
],
"timestamp": 0,
"traceId": "20220708171922A029"
}
6. 板卡软重启
接口地址: /v2/card/reboot
请求方式: POST
请求数据类型: application/json
响应数据类型: */*,application/json
支持版本: v1.19.0
接口描述:
批量软重启指定板卡
注:重启板卡会导致该板卡下的容器不可用
请求参数
| 参数名称 | 参数说明 | 位置 | 是否必须 | 数据类型 | 描述 |
|---|---|---|---|---|---|
| uuids | 板卡 uuid 集合 | body | true | list |
批量操作 |
| callbackUrl | 通知回调地址 | body | false | string | POST请求 |
请求示例,实际请求请替换参数值:
响应参数:
| 参数名称 | 参数说明 | 类型 | 描述 |
|---|---|---|---|
| code | 返回代码 | integer(int32) | |
| message | 返回处理消息 | string | |
| success | 成功标志 | boolean | |
| result | 返回数据对象 | list<object> | |
| jobId | 任务ID | string | |
| code | 任务提交状态码 | integer | 对应响应状态码表 |
| message | 任务提交描述 | string | |
| uuid | 板卡 uuid | string | |
| nodeUuid | 节点 uuid | string | |
| sn | 板卡 SN | string | |
| timestamp | 时间戳 | integer(int64) | |
| traceId | 请求处理ID | string |
响应示例:
{
"code": 0,
"message": "操作成功",
"result": [
{
"jobId": "b59b5f35f7d743d3ad740b8df05277bf",
"code": 200,
"message": "success",
"nodeUuid": "91a07b982a616b5e5141247b1f6149bc",
"uuid": "ae674f4546c74bf48c00c211334f214a",
"sn": "OR65T31QC2D221000025"
}
],
"timestamp": 0,
"traceId": "20220708171922A029"
}
7. 板卡可用数量(申请板卡使用)
接口地址: /v1/arm/card/apply/available/num
请求方式: POST
请求数据类型: application/json
响应数据类型: */*,application/json
支持版本: v1.18.0
接口描述:
获取板卡可用数量
请求参数:
| 参数名称 | 参数说明 | 位置 | 是否必须 | 数据类型 | 描述 |
|---|---|---|---|---|---|
| nodeUuid | 节点 uuid | body | true | string | |
| armServerUuid | 服务器 uuid | body | false | string | 可选。可通过 获取BMC服务器列表 接口获取 |
| offeringUuid | 板卡规格uuid | body | true | string | 通过 获取板卡计算规格 接口获取 |
| snList | 板卡 SN列表 | body | false | list | |
| armServerUuids | 服务器 uuid列表 | body | false | list | 服务器 uuid列表 |
| os | 操作系统 | body | false | string | 目前只支持Android、debian |
| osVersion | 操作系统版本 | body | false | string | 操作系统的版本号 |
请求示例
POST "/openapi/v1/arm/card/apply/available/num"
body:
{
"offeringUuid":"f64a987692a711ef9b070242ac12000d",
"nodeUuid":"81f62329436eed8f36d0595bf81b63db",
"armServerUuid":"s-08f5fb859a9d9161c2727bf57e586f02"
}
响应参数:
| 参数名称 | 参数说明 | 类型 | 描述 |
|---|---|---|---|
| code | 返回代码 | integer(int32) | |
| message | 返回处理消息 | string | |
| result | 返回数据对象 | object | |
| armCardNum | 可用板卡数 | integer(int32) | |
| timestamp | 时间戳 | integer(int64) | |
| traceId | 请求处理ID | string |
响应示例:
{
"message": "操作成功",
"code": 200,
"result": {
"armCardNum": 5
},
"timestamp": 1730201010116,
"traceId": "E20241029192330116567"
}
8. BMC服务器列表(申请板卡使用)
接口地址: /v1/arm/card/apply/ip/list
请求方式: POST
请求数据类型: application/json
响应数据类型: */*,application/json
支持版本: v1.18.0
接口描述:
获取BMC服务器列表
请求参数:
| 参数名称 | 参数说明 | 位置 | 是否必须 | 数据类型 | 描述 |
|---|---|---|---|---|---|
| nodeUuid | 节点 uuid | body | true | string |
请求示例
响应参数:
| 参数名称 | 参数说明 | 类型 | 描述 |
|---|---|---|---|
| code | 返回代码 | integer(int32) | |
| message | 返回处理消息 | string | |
| result | 返回数据对象 | object | |
| ipList | ip列表 | list<object> | |
| ip | ip | string | |
| uuid | 服务器uuid | string | |
| timestamp | 时间戳 | integer(int64) | |
| traceId | 请求处理ID | string |
响应示例: