kboss/docs/API模块文档.md
2025-10-20 17:07:42 +08:00

14776 lines
327 KiB
Markdown
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
title: 默认模块
language_tabs:
- shell: Shell
- http: HTTP
- javascript: JavaScript
- ruby: Ruby
- python: Python
- php: PHP
- java: Java
- go: Go
toc_footers: []
includes: []
search: true
code_clipboard: true
highlight_theme: darkula
headingLevel: 2
generator: "@tarslib/widdershins v4.0.30"
---
# 默认模块
Base URLs:
# Authentication
# 产品模板
## GET 产品模板添加
GET /product/specification_template_add.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 否 |运营机构id|
|patternname|query|string| 否 |模板名称|
|productid|query|string| 否 |给哪个供应商添加的id|
|spec_pattern|query|string| 否 |模板内容|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 产品模板查找
GET /product/specification_template_search.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|providerid|query|string| 否 |指定供应商id|
> 返回示例
> 200 Response
```json
{
"msg": "string",
"data": [
{
"id": "string",
"orgid": "string",
"patternname": "string",
"productid": "string",
"spec_pattern": "string",
"del_flg": "string",
"create_at": "string"
}
]
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» msg|string|true|none||none|
|» data|[object]|true|none||none|
|»» id|string|false|none||none|
|»» orgid|string|false|none||none|
|»» patternname|string|false|none||none|
|»» productid|string|false|none||none|
|»» spec_pattern|string|false|none||none|
|»» del_flg|string|false|none||none|
|»» create_at|string|false|none||none|
## GET 产品模板删除
GET /product/specification_template_delete.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |产品模板查找时返回的id|
> 返回示例
> 200 Response
```json
{
"msg": "string"
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» msg|string|true|none||none|
## GET 产品模板更新
GET /product/specification_template_update.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |查找时返回的id|
|orgid|query|string| 否 |机构id|
|patternname|query|string| 否 |模板名称|
|productid|query|string| 否 |产品id|
|spec_pattern|query|string| 否 |模板内容|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 未来网络产品查找
GET /product/wlwl_parameter_search.dspy
不传输参数 返回所有内容
同时传high_school / chaosuan_center / route_num / broadband 返回 'data': {'price': '350000', 'distance': '长距离'}
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|high_school |query|string| 否 |上海交通大学 北京航空航天大学|
|route_num|query|string| 否 |路由数|
|broadband|query|string| 否 |宽带|
|chaosuan_center |query|string| 否 |济南超算 无锡超算 广州超算 青岛超算|
|discount|query|string| 否 |折扣|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 规格数据增加
GET /product/specific_data_add.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |none|
|productid|query|string| 否 |产品id|
|spec_data|query|string| 否 |规格数据|
> 返回示例
> 200 Response
```json
{
"msg": "string"
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» msg|string|true|none||none|
## GET 规格数据查找
GET /product/specific_data_search.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 规格数据删除
GET /product/specific_data_delete.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 规格数据更新
GET /product/specific_data_update.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |none|
|productid|query|string| 否 |产品id|
|spec_data|query|string| 否 |规格数据|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 产品组查询
GET /product/provider_product_group.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|prefix|query|string| 否 |查找供应商拼音前缀|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "string",
"data": {
"大数据平台": [
{
"id": "string",
"providerid": "string",
"providerpid": "string",
"name": "string",
"description": "string",
"label": "string",
"productgroup": "string",
"ptype": "string",
"classify": "string",
"state": "string",
"effect_date": "string",
"expire_date": "string",
"salemode": "string",
"product_code": "string",
"spec_note": "string",
"product_area": "string",
"specific_pattern": "string",
"reseller_orgid": "string",
"del_flg": "string",
"create_at": "string"
}
],
"泛CDN": [
{
"id": "string",
"providerid": "string",
"providerpid": "string",
"name": "string",
"description": "string",
"label": "string",
"productgroup": "string",
"ptype": "string",
"classify": "string",
"state": "string",
"effect_date": "string",
"expire_date": "string",
"salemode": "string",
"product_code": "string",
"spec_note": "string",
"product_area": "string",
"specific_pattern": "string",
"reseller_orgid": "string",
"del_flg": "string",
"create_at": "string"
}
],
"AI能力引擎": [
{
"id": "string",
"providerid": "string",
"providerpid": "string",
"name": "string",
"description": "string",
"label": "string",
"productgroup": "string",
"ptype": "string",
"classify": "string",
"state": "string",
"effect_date": "string",
"expire_date": "string",
"salemode": "string",
"product_code": "string",
"spec_note": "string",
"product_area": "string",
"specific_pattern": "string",
"reseller_orgid": "string",
"del_flg": "string",
"create_at": "string"
}
],
"云与业务安全": [
{
"id": "string",
"providerid": "string",
"providerpid": "string",
"name": "string",
"description": "string",
"label": "string",
"productgroup": "string",
"ptype": "string",
"classify": "string",
"state": "string",
"effect_date": "string",
"expire_date": "string",
"salemode": "string",
"product_code": "string",
"spec_note": "string",
"product_area": "string",
"specific_pattern": "string",
"reseller_orgid": "string",
"del_flg": "string",
"create_at": "string"
}
],
"网络": [
{
"id": "string",
"providerid": "string",
"providerpid": "string",
"name": "string",
"description": "string",
"label": "string",
"productgroup": "string",
"ptype": "string",
"classify": "string",
"state": "string",
"effect_date": "string",
"expire_date": "string",
"salemode": "string",
"product_code": "string",
"spec_note": "string",
"product_area": "string",
"specific_pattern": "string",
"reseller_orgid": "string",
"del_flg": "string",
"create_at": "string"
}
],
"边缘计算": [
{
"id": "string",
"providerid": "string",
"providerpid": "string",
"name": "string",
"description": "string",
"label": "string",
"productgroup": "string",
"ptype": "string",
"classify": "string",
"state": "string",
"effect_date": "string",
"expire_date": "string",
"salemode": "string",
"product_code": "string",
"spec_note": "string",
"product_area": "string",
"specific_pattern": "string",
"reseller_orgid": "string",
"del_flg": "string",
"create_at": "string"
}
],
"计算": [
{
"id": "string",
"providerid": "string",
"providerpid": "string",
"name": "string",
"description": "string",
"label": "string",
"productgroup": "string",
"ptype": "string",
"classify": "string",
"state": "string",
"effect_date": "string",
"expire_date": "string",
"salemode": "string",
"product_code": "string",
"spec_note": "string",
"product_area": "string",
"specific_pattern": "string",
"reseller_orgid": "string",
"del_flg": "string",
"create_at": "string"
}
],
"云原生平台": [
{
"id": "string",
"providerid": "string",
"providerpid": "string",
"name": "string",
"description": "string",
"label": "string",
"productgroup": "string",
"ptype": "string",
"classify": "string",
"state": "string",
"effect_date": "string",
"expire_date": "string",
"salemode": "string",
"product_code": "string",
"spec_note": "string",
"product_area": "string",
"specific_pattern": "string",
"reseller_orgid": "string",
"del_flg": "string",
"create_at": "string"
}
],
"数据库": [
{
"id": "string",
"providerid": "string",
"providerpid": "string",
"name": "string",
"description": "string",
"label": "string",
"productgroup": "string",
"ptype": "string",
"classify": "string",
"state": "string",
"effect_date": "string",
"expire_date": "string",
"salemode": "string",
"product_code": "string",
"spec_note": "string",
"product_area": "string",
"specific_pattern": "string",
"reseller_orgid": "string",
"del_flg": "string",
"create_at": "string"
}
],
"智能内容科技": [
{
"id": "string",
"providerid": "string",
"providerpid": "string",
"name": "string",
"description": "string",
"label": "string",
"productgroup": "string",
"ptype": "string",
"classify": "string",
"state": "string",
"effect_date": "string",
"expire_date": "string",
"salemode": "string",
"product_code": "string",
"spec_note": "string",
"product_area": "string",
"specific_pattern": "string",
"reseller_orgid": "string",
"del_flg": "string",
"create_at": "string"
}
],
"智慧城市": [
{
"id": "string",
"providerid": "string",
"providerpid": "string",
"name": "string",
"description": "string",
"label": "string",
"productgroup": "string",
"ptype": "string",
"classify": "string",
"state": "string",
"effect_date": "string",
"expire_date": "string",
"salemode": "string",
"product_code": "string",
"spec_note": "string",
"product_area": "string",
"specific_pattern": "string",
"reseller_orgid": "string",
"del_flg": "string",
"create_at": "string"
}
],
"存储": [
{
"id": "string",
"providerid": "string",
"providerpid": "string",
"name": "string",
"description": "string",
"label": "string",
"productgroup": "string",
"ptype": "string",
"classify": "string",
"state": "string",
"effect_date": "string",
"expire_date": "string",
"salemode": "string",
"product_code": "string",
"spec_note": "string",
"product_area": "string",
"specific_pattern": "string",
"reseller_orgid": "string",
"del_flg": "string",
"create_at": "string"
}
],
"SME企业服务": [
{
"id": "string",
"providerid": "string",
"providerpid": "string",
"name": "string",
"description": "string",
"label": "string",
"productgroup": "string",
"ptype": "string",
"classify": "string",
"state": "string",
"effect_date": "string",
"expire_date": "string",
"salemode": "string",
"product_code": "string",
"spec_note": "string",
"product_area": "string",
"specific_pattern": "string",
"reseller_orgid": "string",
"del_flg": "string",
"create_at": "string"
}
],
"视频云平台": [
{
"id": "string",
"providerid": "string",
"providerpid": "string",
"name": "string",
"description": "string",
"label": "string",
"productgroup": "string",
"ptype": "string",
"classify": "string",
"state": "string",
"effect_date": "string",
"expire_date": "string",
"salemode": "string",
"product_code": "string",
"spec_note": "string",
"product_area": "string",
"specific_pattern": "string",
"reseller_orgid": "string",
"del_flg": "string",
"create_at": "string"
}
],
"智能短信": [
{
"id": "string",
"providerid": "string",
"providerpid": "string",
"name": "string",
"description": "string",
"label": "string",
"productgroup": "string",
"ptype": "string",
"classify": "string",
"state": "string",
"effect_date": "string",
"expire_date": "string",
"salemode": "string",
"product_code": "string",
"spec_note": "string",
"product_area": "string",
"specific_pattern": "string",
"reseller_orgid": "string",
"del_flg": "string",
"create_at": "string"
}
]
}
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
|» data|object|true|none||none|
|»» 大数据平台|[object]|true|none||none|
|»»» id|string|true|none||none|
|»»» providerid|string|true|none||none|
|»»» providerpid|string|true|none||none|
|»»» name|string|true|none||none|
|»»» description|string|true|none||none|
|»»» label|string|true|none||none|
|»»» productgroup|string|true|none||none|
|»»» ptype|string|true|none||none|
|»»» classify|string|true|none||none|
|»»» state|string|true|none||none|
|»»» effect_date|string|true|none||none|
|»»» expire_date|string|true|none||none|
|»»» salemode|string|true|none||none|
|»»» product_code|string|true|none||none|
|»»» spec_note|string|true|none||none|
|»»» product_area|string|true|none||none|
|»»» specific_pattern|string|true|none||none|
|»»» reseller_orgid|string|true|none||none|
|»»» del_flg|string|true|none||none|
|»»» create_at|string|true|none||none|
|»» 泛CDN|[object]|true|none||none|
|»»» id|string|true|none||none|
|»»» providerid|string|true|none||none|
|»»» providerpid|string|true|none||none|
|»»» name|string|true|none||none|
|»»» description|string|true|none||none|
|»»» label|string|true|none||none|
|»»» productgroup|string|true|none||none|
|»»» ptype|string|true|none||none|
|»»» classify|string|true|none||none|
|»»» state|string|true|none||none|
|»»» effect_date|string|true|none||none|
|»»» expire_date|string|true|none||none|
|»»» salemode|string|true|none||none|
|»»» product_code|string|true|none||none|
|»»» spec_note|string|true|none||none|
|»»» product_area|string|true|none||none|
|»»» specific_pattern|string|true|none||none|
|»»» reseller_orgid|string|true|none||none|
|»»» del_flg|string|true|none||none|
|»»» create_at|string|true|none||none|
|»» AI能力引擎|[object]|true|none||none|
|»»» id|string|true|none||none|
|»»» providerid|string|true|none||none|
|»»» providerpid|string|true|none||none|
|»»» name|string|true|none||none|
|»»» description|string|true|none||none|
|»»» label|string|true|none||none|
|»»» productgroup|string|true|none||none|
|»»» ptype|string|true|none||none|
|»»» classify|string|true|none||none|
|»»» state|string|true|none||none|
|»»» effect_date|string|true|none||none|
|»»» expire_date|string|true|none||none|
|»»» salemode|string|true|none||none|
|»»» product_code|string|true|none||none|
|»»» spec_note|string|true|none||none|
|»»» product_area|string|true|none||none|
|»»» specific_pattern|string|true|none||none|
|»»» reseller_orgid|string|true|none||none|
|»»» del_flg|string|true|none||none|
|»»» create_at|string|true|none||none|
|»» 云与业务安全|[object]|true|none||none|
|»»» id|string|true|none||none|
|»»» providerid|string|true|none||none|
|»»» providerpid|string|true|none||none|
|»»» name|string|true|none||none|
|»»» description|string¦null|true|none||none|
|»»» label|string¦null|true|none||none|
|»»» productgroup|string|true|none||none|
|»»» ptype|string|true|none||none|
|»»» classify|string|true|none||none|
|»»» state|string|true|none||none|
|»»» effect_date|string|true|none||none|
|»»» expire_date|string|true|none||none|
|»»» salemode|string|true|none||none|
|»»» product_code|string|true|none||none|
|»»» spec_note|string|true|none||none|
|»»» product_area|string|true|none||none|
|»»» specific_pattern|string|true|none||none|
|»»» reseller_orgid|string|true|none||none|
|»»» del_flg|string|true|none||none|
|»»» create_at|string|true|none||none|
|»» 网络|[object]|true|none||none|
|»»» id|string|true|none||none|
|»»» providerid|string|true|none||none|
|»»» providerpid|string|true|none||none|
|»»» name|string|true|none||none|
|»»» description|string|true|none||none|
|»»» label|string|true|none||none|
|»»» productgroup|string|true|none||none|
|»»» ptype|string|true|none||none|
|»»» classify|string|true|none||none|
|»»» state|string|true|none||none|
|»»» effect_date|string|true|none||none|
|»»» expire_date|string|true|none||none|
|»»» salemode|string|true|none||none|
|»»» product_code|string|true|none||none|
|»»» spec_note|string|true|none||none|
|»»» product_area|string|true|none||none|
|»»» specific_pattern|string|true|none||none|
|»»» reseller_orgid|string|true|none||none|
|»»» del_flg|string|true|none||none|
|»»» create_at|string|true|none||none|
|»» 边缘计算|[object]|true|none||none|
|»»» id|string|false|none||none|
|»»» providerid|string|false|none||none|
|»»» providerpid|string|false|none||none|
|»»» name|string|false|none||none|
|»»» description|string|false|none||none|
|»»» label|string|false|none||none|
|»»» productgroup|string|false|none||none|
|»»» ptype|string|false|none||none|
|»»» classify|string|false|none||none|
|»»» state|string|false|none||none|
|»»» effect_date|string|false|none||none|
|»»» expire_date|string|false|none||none|
|»»» salemode|string|false|none||none|
|»»» product_code|string|false|none||none|
|»»» spec_note|string|false|none||none|
|»»» product_area|string|false|none||none|
|»»» specific_pattern|string|false|none||none|
|»»» reseller_orgid|string|false|none||none|
|»»» del_flg|string|false|none||none|
|»»» create_at|string|false|none||none|
|»» 计算|[object]|true|none||none|
|»»» id|string|true|none||none|
|»»» providerid|string|true|none||none|
|»»» providerpid|string|true|none||none|
|»»» name|string|true|none||none|
|»»» description|string|true|none||none|
|»»» label|string|true|none||none|
|»»» productgroup|string|true|none||none|
|»»» ptype|string|true|none||none|
|»»» classify|string|true|none||none|
|»»» state|string|true|none||none|
|»»» effect_date|string|true|none||none|
|»»» expire_date|string|true|none||none|
|»»» salemode|string|true|none||none|
|»»» product_code|string|true|none||none|
|»»» spec_note|string|true|none||none|
|»»» product_area|string|true|none||none|
|»»» specific_pattern|string|true|none||none|
|»»» reseller_orgid|string|true|none||none|
|»»» del_flg|string|true|none||none|
|»»» create_at|string|true|none||none|
|»» 云原生平台|[object]|true|none||none|
|»»» id|string|true|none||none|
|»»» providerid|string|true|none||none|
|»»» providerpid|string|true|none||none|
|»»» name|string|true|none||none|
|»»» description|string|true|none||none|
|»»» label|string|true|none||none|
|»»» productgroup|string|true|none||none|
|»»» ptype|string|true|none||none|
|»»» classify|string|true|none||none|
|»»» state|string|true|none||none|
|»»» effect_date|string|true|none||none|
|»»» expire_date|string|true|none||none|
|»»» salemode|string|true|none||none|
|»»» product_code|string|true|none||none|
|»»» spec_note|string|true|none||none|
|»»» product_area|string|true|none||none|
|»»» specific_pattern|string|true|none||none|
|»»» reseller_orgid|string|true|none||none|
|»»» del_flg|string|true|none||none|
|»»» create_at|string|true|none||none|
|»» 数据库|[object]|true|none||none|
|»»» id|string|true|none||none|
|»»» providerid|string|true|none||none|
|»»» providerpid|string|true|none||none|
|»»» name|string|true|none||none|
|»»» description|string|true|none||none|
|»»» label|string|true|none||none|
|»»» productgroup|string|true|none||none|
|»»» ptype|string|true|none||none|
|»»» classify|string|true|none||none|
|»»» state|string|true|none||none|
|»»» effect_date|string|true|none||none|
|»»» expire_date|string|true|none||none|
|»»» salemode|string|true|none||none|
|»»» product_code|string|true|none||none|
|»»» spec_note|string|true|none||none|
|»»» product_area|string|true|none||none|
|»»» specific_pattern|string|true|none||none|
|»»» reseller_orgid|string|true|none||none|
|»»» del_flg|string|true|none||none|
|»»» create_at|string|true|none||none|
|»» 智能内容科技|[object]|true|none||none|
|»»» id|string|false|none||none|
|»»» providerid|string|false|none||none|
|»»» providerpid|string|false|none||none|
|»»» name|string|false|none||none|
|»»» description|string|false|none||none|
|»»» label|string|false|none||none|
|»»» productgroup|string|false|none||none|
|»»» ptype|string|false|none||none|
|»»» classify|string|false|none||none|
|»»» state|string|false|none||none|
|»»» effect_date|string|false|none||none|
|»»» expire_date|string|false|none||none|
|»»» salemode|string|false|none||none|
|»»» product_code|string|false|none||none|
|»»» spec_note|string|false|none||none|
|»»» product_area|string|false|none||none|
|»»» specific_pattern|string|false|none||none|
|»»» reseller_orgid|string|false|none||none|
|»»» del_flg|string|false|none||none|
|»»» create_at|string|false|none||none|
|»» 智慧城市|[object]|true|none||none|
|»»» id|string|false|none||none|
|»»» providerid|string|false|none||none|
|»»» providerpid|string|false|none||none|
|»»» name|string|false|none||none|
|»»» description|string|false|none||none|
|»»» label|string|false|none||none|
|»»» productgroup|string|false|none||none|
|»»» ptype|string|false|none||none|
|»»» classify|string|false|none||none|
|»»» state|string|false|none||none|
|»»» effect_date|string|false|none||none|
|»»» expire_date|string|false|none||none|
|»»» salemode|string|false|none||none|
|»»» product_code|string|false|none||none|
|»»» spec_note|string|false|none||none|
|»»» product_area|string|false|none||none|
|»»» specific_pattern|string|false|none||none|
|»»» reseller_orgid|string|false|none||none|
|»»» del_flg|string|false|none||none|
|»»» create_at|string|false|none||none|
|»» 存储|[object]|true|none||none|
|»»» id|string|true|none||none|
|»»» providerid|string|true|none||none|
|»»» providerpid|string|true|none||none|
|»»» name|string|true|none||none|
|»»» description|string|true|none||none|
|»»» label|string|true|none||none|
|»»» productgroup|string|true|none||none|
|»»» ptype|string|true|none||none|
|»»» classify|string|true|none||none|
|»»» state|string|true|none||none|
|»»» effect_date|string|true|none||none|
|»»» expire_date|string|true|none||none|
|»»» salemode|string|true|none||none|
|»»» product_code|string|true|none||none|
|»»» spec_note|string|true|none||none|
|»»» product_area|string|true|none||none|
|»»» specific_pattern|string|true|none||none|
|»»» reseller_orgid|string|true|none||none|
|»»» del_flg|string|true|none||none|
|»»» create_at|string|true|none||none|
|»» SME企业服务|[object]|true|none||none|
|»»» id|string|true|none||none|
|»»» providerid|string|true|none||none|
|»»» providerpid|string|true|none||none|
|»»» name|string|true|none||none|
|»»» description|string|true|none||none|
|»»» label|string¦null|true|none||none|
|»»» productgroup|string|true|none||none|
|»»» ptype|string|true|none||none|
|»»» classify|string|true|none||none|
|»»» state|string|true|none||none|
|»»» effect_date|string|true|none||none|
|»»» expire_date|string|true|none||none|
|»»» salemode|string|true|none||none|
|»»» product_code|string|true|none||none|
|»»» spec_note|string|true|none||none|
|»»» product_area|string|true|none||none|
|»»» specific_pattern|string|true|none||none|
|»»» reseller_orgid|string|true|none||none|
|»»» del_flg|string|true|none||none|
|»»» create_at|string|true|none||none|
|»» 视频云平台|[object]|true|none||none|
|»»» id|string|true|none||none|
|»»» providerid|string|true|none||none|
|»»» providerpid|string|true|none||none|
|»»» name|string|true|none||none|
|»»» description|string|true|none||none|
|»»» label|string|true|none||none|
|»»» productgroup|string|true|none||none|
|»»» ptype|string|true|none||none|
|»»» classify|string|true|none||none|
|»»» state|string|true|none||none|
|»»» effect_date|string|true|none||none|
|»»» expire_date|string|true|none||none|
|»»» salemode|string|true|none||none|
|»»» product_code|string|true|none||none|
|»»» spec_note|string|true|none||none|
|»»» product_area|string|true|none||none|
|»»» specific_pattern|string|true|none||none|
|»»» reseller_orgid|string|true|none||none|
|»»» del_flg|string|true|none||none|
|»»» create_at|string|true|none||none|
|»» 智能短信|[object]|true|none||none|
|»»» id|string|false|none||none|
|»»» providerid|string|false|none||none|
|»»» providerpid|string|false|none||none|
|»»» name|string|false|none||none|
|»»» description|string|false|none||none|
|»»» label|string|false|none||none|
|»»» productgroup|string|false|none||none|
|»»» ptype|string|false|none||none|
|»»» classify|string|false|none||none|
|»»» state|string|false|none||none|
|»»» effect_date|string|false|none||none|
|»»» expire_date|string|false|none||none|
|»»» salemode|string|false|none||none|
|»»» product_code|string|false|none||none|
|»»» spec_note|string|false|none||none|
|»»» product_area|string|false|none||none|
|»»» specific_pattern|string|false|none||none|
|»»» reseller_orgid|string|false|none||none|
|»»» del_flg|string|false|none||none|
|»»» create_at|string|false|none||none|
## GET 首页产品列表
GET /product/get_firstpage_product_tree.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|url_link|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 首页获取基座和网络
GET /product/get_firstpage_jizuonet.dspy
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 首页产品详情页
GET /product/get_firstpage_net_detail.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 立即咨询添加
GET /product/add_user_inquiry.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|url_link|query|string| 否 |none|
|publish_type|query|string| 否 |none|
|relate_id|query|string| 否 |none|
|content|query|string| 否 |none|
|custom_type|query|string| 否 |none|
|name|query|string| 否 |none|
|phone|query|string| 否 |none|
|company|query|string| 否 |none|
|email|query|string| 否 |none|
|feedback|query|string| 否 |销售回访字段默认0回访了为1此处不是必传字段|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 立即咨询查找
GET /product/search_user_inquiry.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|url_link|query|string| 否 |none|
|to_excel|query|string| 否 |1:转换成excel|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 立即咨询更新
GET /product/update_user_inquiry.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |立即咨询查找返回的id|
|feedback|query|string| 否 |销售回访状态 反馈了就为1|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 立即咨询删除
GET /product/delete_user_inquiry.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |立即咨询查找返回的id|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 产品资源概览
GET /product/resource_overview.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|userid|query|string| 否 |不是必传参数|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 资源到期预警
GET /product/get_resource_expire_time.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|userid|query|string| 否 |不是必传参数|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "string",
"data": [
{
"id": "string",
"name": "string",
"instanceid": "string",
"status": "string",
"expiretime": "string",
"days": 0
}
]
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
|» data|[object]|true|none||none|
|»» id|string|false|none||none|
|»» name|string|false|none||none|
|»» instanceid|string|false|none||none|
|»» status|string|false|none||none|
|»» expiretime|string|false|none||none|
|»» days|integer|false|none||none|
## GET 首页产品树增加
GET /product/homepage_category_tree_add.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|url_link|query|string| 是 |none|
|userid|query|string| 否 |none|
|parentid|query|string| 是 |none|
|priority|query|string| 是 |优先级|
|name|query|string| 是 |名称|
|icon|query|string| 否 |icon链接|
|source|query|string| 否 |来源 例如:佳杰|
|listurl|query|string| 否 |跳转链接|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 首页产品树查询
GET /product/homepage_category_tree_search.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|url_link|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 首页产品树更新
GET /product/homepage_category_tree_update.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |none|
|userid|query|string| 否 |none|
|url_link|query|string| 否 |none|
|parentid|query|string| 否 |none|
|priority|query|string| 否 |none|
|name|query|string| 否 |none|
|icon|query|string| 否 |none|
|source|query|string| 否 |none|
|listurl|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 首页产品树删除
GET /product/homepage_category_tree_delete.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 全网查找
GET /product/global_search.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|url_link|query|string| 是 |路由链接|
|keyword|query|string| 是 |查询关键字|
|publish_type|query|string| 是 |发布类型|
|display_page|query|string| 是 |概览:overview 列表页:list|
|current_page|query|string| 是 |默认1|
|page_size|query|string| 是 |默认8|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
# 产品模板/供需广场
## GET 公司类别添加
GET /product/company_category_add.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|userid|query|string| 否 |非必填|
|company_category|query|string| 否 |公司类型|
|url_link|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 公司类别查找
GET /product/company_category_search.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|userid|query|string| 否 |非必填|
|url_link|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 公司类别更新
GET /product/company_category_update.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |none|
|company_category|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 公司类别删除
GET /product/company_category_delete.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 所属类别添加
GET /product/product_category_add.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|userid|query|string| 否 |none|
|product_category|query|string| 否 |none|
|parentid|query|string| 否 |none|
|url_link|query|string| 否 |none|
|priority|query|string| 否 |展示优先级 123 1的展示优先级最高以此类推|
|permission|query|string| 否 |1:普通用户发布时能看到 0:客户看不到 (默认1)|
|cart_flag|query|string| 否 |是否展示cpu,gpu选线 1:展示 NULL:不展示|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "string"
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
## GET 所属类别查找
GET /product/product_category_search.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|userid|query|string| 否 |非必填|
|url_link|query|string| 否 |必填|
|to_page|query|string| 否 |show:首页 publish:发布页 没有登录传递show|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "string",
"data": [
{
"id": "string",
"name": "string",
"children": [
{
"id": "string",
"name": "string",
"children": [
null
]
}
]
}
]
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
|» data|[object]|true|none||none|
|»» id|string|true|none||none|
|»» name|string|true|none||none|
|»» children|[object]|true|none||none|
|»»» id|string|true|none||none|
|»»» name|string|true|none||none|
|»»» children|[any]|true|none||none|
## GET 所属类别更新
GET /product/product_category_update.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |none|
|product_category|query|string| 否 |none|
|cart_flag|query|string| 否 |是否显示cpu,gpu规格输入框|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 所属类别删除
GET /product/product_category_delete.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET (商品|需求)发布增加
GET /product/publish_product_add.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|userid|query|string| 否 |none|
|publish_type|query|string| 否 |1商品 2需求|
|cart_flag|query|string| 否 |是否支持GPU|
|url_link|query|string| 否 |none|
|img|query|string| 否 |图片|
|product_name|query|string| 否 |none|
|product_category|query|string| 否 |注意是双引号|
|company_name|query|string| 否 |none|
|company_type|query|string| 否 |none|
|contact_person|query|string| 否 |none|
|job_title|query|string| 否 |none|
|phone_number|query|string| 否 |none|
|email|query|string| 否 |none|
|cpu|query|string| 否 |none|
|memeory|query|string| 否 |none|
|gpu|query|string| 否 |none|
|sys_disk|query|string| 否 |系统盘|
|data_disk|query|string| 否 |数据盘|
|net_card|query|string| 否 |网络配置|
|price|query|string| 否 |价格|
|unit|query|string| 否 |价格单位|
|discount|query|string| 否 |折扣|
|discount_price|query|string| 否 |折扣后价格|
|service_charge|query|string| 否 |none|
|short_term|query|string| 否 |是否短租 1:是 0:否|
|priority|query|string| 否 |首页展示优先级 默认1, 数字越大越靠前|
|status|query|string| 否 |上架状态 默认0 0未上架 1: 已上架|
|label|query|string| 否 |首页标签|
|first_page|query|string| 否 |是否推送到首页 默认0, 0:不推送到首页 1: 推送到首页|
|requirement_summary|query|string| 否 |商品概述|
|related_parameters|query|string| 否 |相关参数|
|application_scenario|query|string| 否 |应用场景|
|audit_status|query|string| 否 |审核状态:默认:pending, pending待审/approved通过/rejected拒绝|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET (商品|需求)发布查找-首页
GET /product/publish_product_search_first_page.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|url_link|query|string| 否 |来源链接|
|publish_type|query|string| 否 |1商品 2需求|
|to_page|query|string| 否 |square: 去广场 first_page:去首页 默认first_page|
|product_category|query|string| 否 |产品类别|
|company_type|query|string| 否 |不是必填 公司类别|
|page_size|query|string| 否 |默认8|
|current_page|query|string| 否 |第几页 默认1|
|userid|query|string| 否 |none|
> 返回示例
> 500 Response
```
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|500|[Internal Server Error](https://tools.ietf.org/html/rfc7231#section-6.6.1)|none|Inline|
### 返回数据结构
## GET (商品|需求)管理查找
GET /product/publish_product_search.dspy
#### 1. 客户或运营 查询单条详情
>参数: id
#### 2. 客户查看
>参数:
page_size
current_page
publish_type
#### 3. 运营查看自己发布
>参数:
page_size
current_page
publish_type
manager_self='single' # 注意添加这个字段
#### 4. 运营查看所有人
>参数:
page_size
current_page
publish_type
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|url_link|query|string| 否 |none|
|userid|query|string| 否 |none|
|page_size|query|string| 否 |none|
|current_page|query|string| 否 |none|
|publish_type|query|string| 否 |none|
|manager_self|query|string| 否 |1.客户查找:NULL 2.运营查找自己发布: single 3.运营查找所有人: NULL|
|id|query|string| 否 |可选,单条查询|
|audit_status|query|string| 否 |审核状态:默认:pending, pending待审/approved通过/rejected拒绝|
|listing_status|query|string| 否 |上架状态listing上架/delisting下架|
|start_date|query|string| 否 |开始时间|
|end_date|query|string| 否 |结束时间|
|keyword|query|string| 否 |查询关键字|
|to_excel|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET (商品|需求)查找详情
GET /product/publish_product_search_detail.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |none|
|from|query|string| 否 |前端页面: f 后台页面: b|
|userid|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET (商品|需求)更新
GET /product/publish_product_update.dspy
#### 1. 运营(编辑/审核)客户的产品
#### 2. 运营编辑自己的产品 默认审批通过和发布成功
#### 3. 运营删除自己的产品 del_flg = '1'
#### 4. 运营下架自己的产品 listing_status = 'delisting'
***
#### 5. 客户编辑产品 审核状态是: 待审 上架状态是:空
#### 6. 客户要下架产品 listing_status = 'delisting'
#### 7. 客户仅编辑重新提交产品
> Body 请求参数
```yaml
sdsd: ""
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |需求/商品 id|
|userid|query|string| 否 |不是必填|
|audit_status|query|string| 否 |审核状态pending待审/approved通过/rejected拒绝/|
|listing_status|query|string| 否 |上架状态listing上架/delisting下架|
|reject_reason|query|string| 否 |none|
|body|body|object| 否 |none|
|» sdsd|body|string(binary)| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET (商品|需求) 导出 单条/多条
GET /product/publish_product_to_excel.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|ids|query|string| 否 |单条或多条 id数组, 注意双引号|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 首页产品类查找
GET /product/homepage_product_category.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|url_link|query|string| 否 |none|
|publish_type|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
# 用户/政企资质审核
## GET 资质添加
GET /user/enterprise_audit_info_add.dspy
> Body 请求参数
```yaml
{}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|userid|query|string| 否 |不是必填|
|account_type|query|string| 否 |账号类型: 1:政府 2:企业 3: 个人|
|company_name|query|string| 否 |公司名称|
|license_number|query|string| 否 |执照号码|
|license_original_img|query|string| 否 |营业执照正本照片路径|
|license_copy_img|query|string| 否 |营业执照副本照片路径|
|office_address|query|string| 否 |办公地址|
|registered_address|query|string| 否 |注册地址|
|contact_name|query|string| 否 |联系人姓名|
|telephone|query|string| 否 |固定电话|
|mobile_phone|query|string| 否 |移动电话|
|email|query|string| 否 |邮箱地址|
|audit_status|query|string| 否 |审核状态pending待审/approved通过/rejected拒绝/|
|reject_reason|query|string| 否 |驳回原因|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 资质查询
GET /user/enterprise_audit_info_search.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|url_link|query|string| 是 |none|
|userid|query|string| 否 |不是必填|
|audit_status|query|string| 否 |审核状态pending待审/approved通过/rejected拒绝/|
|current_page|query|string| 否 |默认1|
|page_size|query|string| 否 |默认10|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 资质更新
GET /user/enterprise_audit_info_update.dspy
1. 客户更新 审批状态默认为待审
2. 运营更新 审批approved, 会把驳回原因reject_reason置空
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 是 |none|
|userid|query|string| 否 |none|
|audit_status|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
# 用户/用户浏览记录
## GET 浏览记录查找
GET /user/user_browse_history_search.dspy
### product_info为空时 显示产品已下架
"userid": 用户ID,
"product_id": 产品ID,
"browse_time": 浏览时间,
"ip_address": 来源IP 默认空,
"user_agent": 代理 默认空,
"priority": 优先级 默认空,
"tag": 标签 默认空,
"product_info": 产品信息
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|userid|query|string| 否 |用户id (不是必填)|
|current_page|query|string| 否 |当前页 (不是必填)|
|page_size|query|string| 否 |页面数量 (不是必填)|
|start_time|query|string| 否 |开始时间 (不是必填)|
|end_time|query|string| 否 |结束时间 (不是必填)|
|publish_type|query|string| 否 |发布类型|
|url_link|query|string| 否 |url_link|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 浏览记录删除
GET /user/user_browse_history_delete.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |将要删除的记录ID|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
# 用户/用户关注收藏
## GET 关注收藏添加
GET /user/favorite_add.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|userid|query|string| 否 |用户id|
|productid|query|string| 否 |产品ID|
|favorite_type|query|string| 否 |1:商品 2:需求|
|tag|query|string| 否 |标签|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 关注收藏查找
GET /user/favorite_search.dspy
### product_info 为null标记为已下架该商品
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|userid|query|string| 否 |none|
|current_page|query|string| 否 |none|
|page_size|query|string| 否 |none|
|favorite_type|query|string| 否 |1:商品 2:需求|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 关注收藏删除
GET /user/favorite_delete.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|productid|query|string| 否 |ID|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
# kpi管理
## GET 运营kpi
GET /kpi/operate_kpi.dspy
运营kpi
type=运营 userid=''
销售kpi
type=销售 userid=''
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|userid|query|string| 否 |当前机构id|
|type|query|string| 否 |(type是销售传userid)/(type是运营传orgid)|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "string",
"data": {
"customer": {
"number": [
0
],
"date": [
"string"
],
"tongbi": [
0
],
"huanbi": [
0
]
}
}
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
|» data|object|true|none||none|
|»» customer|object|true|none||none|
|»»» number|[integer]|true|none||none|
|»»» date|[string]|true|none||none|
|»»» tongbi|[oneOf]|true|none||none|
*oneOf*
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|»»»» *anonymous*|number|false|none||none|
*xor*
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|»»»» *anonymous*|integer|false|none||none|
*continued*
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|»»» huanbi|[number]|true|none||none|
## GET 收入分析
GET /kpi/revenue_analysis.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|time|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 利润分析
GET /kpi/profit_analysis.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|time|query|string| 否 |none|
|userid|query|string| 否 |不是必填|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 客户获取账单列表
GET /kpi/user_get_bill.dspy
id账单号
business_op: 购买状态 BUY=购买 RECHARGE=充值 RECHARGE_ALIPAY=支付宝充值 REFUND=退款
provider_amt原价
amount折后价格
bill_date账单日期
bill_state: 0=未支付 1=已支付 2=已经取消
productname产品名称
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|user_orgid|query|string| 是 |用户userid|
|start_time|query|string| 否 |账单开始时间|
|end_time|query|string| 否 |账单结束时间|
|page_size|query|string| 是 |每页数量|
|current_page|query|string| 是 |当前页数|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 用户获取销售人员id
GET /pub/get_salesman.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|userid|query|string| 否 |用户id|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 运营获取所有账单
GET /kpi/operator_get_all_bill.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 否 |业主机构orgid 必填|
|salemanid|query|string| 否 |销售人员的id 不是必填|
|user_orgid|query|string| 否 |用户的orgid 不是必填|
|current_page|query|string| 否 |当前页 必填|
|page_size|query|string| 否 |每页数量 默认20 不是必填|
|start_time|query|string| 否 |开始时间 不是必填|
|end_time|query|string| 否 |结束时间 不是必填|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "string",
"data": {
"total_page": 0,
"total_num": 0,
"bill_sum": 0,
"page_size": 0,
"current_page": "string",
"bill_list": [
{
"id": "string",
"customerid": "string",
"orderid": "string",
"ordergoodsid": "string",
"business_op": "string",
"provider_amt": 0,
"quantity": 0,
"amount": 0,
"bill_date": "string",
"bill_timestamp": "string",
"bill_state": "string",
"productid": "string",
"providerid": "string",
"provider_billid": null,
"resourceid": null,
"del_flg": "string",
"create_at": "string",
"productname": "string",
"orgname": "string",
"orgcode": null,
"address": "string",
"salemanid": "string",
"salemanname": "string"
}
]
}
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
|» data|object|true|none||none|
|»» total_page|integer|true|none||none|
|»» total_num|integer|true|none||none|
|»» bill_sum|number|true|none||none|
|»» page_size|integer|true|none||none|
|»» current_page|string|true|none||none|
|»» bill_list|[object]|true|none||none|
|»»» id|string|true|none||none|
|»»» customerid|string|true|none||none|
|»»» orderid|string¦null|true|none||none|
|»»» ordergoodsid|string¦null|true|none||none|
|»»» business_op|string|true|none||none|
|»»» provider_amt|integer¦null|true|none||none|
|»»» quantity|integer¦null|true|none||none|
|»»» amount|integer|true|none||none|
|»»» bill_date|string|true|none||none|
|»»» bill_timestamp|string|true|none||none|
|»»» bill_state|string|true|none||none|
|»»» productid|string¦null|true|none||none|
|»»» providerid|string¦null|true|none||none|
|»»» provider_billid|null|true|none||none|
|»»» resourceid|null|true|none||none|
|»»» del_flg|string|true|none||none|
|»»» create_at|string|true|none||none|
|»»» productname|string|true|none||none|
|»»» orgname|string|true|none||none|
|»»» orgcode|null|true|none||none|
|»»» address|string|true|none||none|
|»»» salemanid|string|true|none||none|
|»»» salemanname|string|true|none||none|
## GET 获取客户数量
GET /kpi/get_cumulative_users.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|target|query|string| 否 |传递值枚举year/month/day|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "string",
"data": [
{
"target": "string",
"cumulative_users": 0
}
]
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
|» data|[object]|true|none||none|
|»» target|string|true|none||none|
|»» cumulative_users|integer|true|none||none|
## GET 大屏展示首页
GET /kpi/large_screen_first_page.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|flag|query|string| 是 |0为虚拟数据 1真实数据|
|orgid|query|string| 是 |业主机构/分销商 必填|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 大屏展示用户二
GET /kpi/large_screen_second_page.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|flag|query|string| 是 |0为虚拟数据 1真实数据|
|orgid|query|string| 是 |业主机构/分销商 必填|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 大屏展示经营三
GET /kpi/large_screen_third_page.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|flag|query|string| 是 |0为虚拟数据 1真实数据|
|orgid|query|string| 是 |业主机构/分销商 必填|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 大屏展示商户四
GET /kpi/large_screen_fourth_page.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|flag|query|string| 是 |0为虚拟数据 1真实数据|
|orgid|query|string| 是 |业主机构/分销商 必填|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
# 济南超算
## GET 用户同步状态查询
GET /hpc/sync_status_search.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|userid|query|string| 否 |销售的userid|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 同步用户购买产品
GET /hpc/hpc_sync_user.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|syncinfoid|query|string| 否 |同步状态查询接口返回的参数|
|customerid|query|string| 否 |用户orgid 同步状态查询接口返回的参数|
|productid|query|string| 否 |产品id 同步状态查询接口返回的参数|
|quantity|query|string| 否 |购买的产品数量 同步状态查询接口返回的参数|
|ldapuid|query|string| 否 |ldap账号 同步状态查询接口返回的参数|
|clustercode|query|string| 否 |集群账号 同步状态查询接口返回的参数|
|queuecode|query|string| 否 |队列账号 同步状态查询接口返回的参数|
|orgid|query|string| 否 |同步状态查询接口返回的参数|
|orgname|query|string| 否 |同步状态查询接口返回的参数|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 账号查询
GET /hpc/HpcLdapSearch.dspy
返回所有账号 以及 对应账号绑定的客户
如果账号没绑定 没有orgname字段
> 返回示例
> 200 Response
```json
{
"ldapuid": "string",
"clustercode": "string",
"queuecode": "string",
"orgid": "string",
"sync_status": null,
"last_access": "string",
"del_flg": "string",
"create_at": "string",
"orgname": "string"
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» ldapuid|string|true|none||none|
|» clustercode|string|true|none||none|
|» queuecode|string|true|none||none|
|» orgid|string|true|none||none|
|» sync_status|null|true|none||none|
|» last_access|string|true|none||none|
|» del_flg|string|true|none||none|
|» create_at|string|true|none||none|
|» orgname|string|true|none|绑定的用户名称|none|
## GET 未绑定用户查询
GET /hpc/HpcUserSearch.dspy
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 绑定用户
GET /hpc/bind_ldap.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |账号查询接口返回的id|
|clustercode|query|string| 否 |集群账号 账号查询接口返回的参数|
|queuecode|query|string| 否 |队列账号 账号查询接口返回的参数|
|ldapuid|query|string| 否 |ldap账号 账号查询接口返回的参数|
|orgid|query|string| 否 |要绑定的用户orgid 账号查询接口返回的参数|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 记录用户登录时间
GET /hpc/HpcAccessTime.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 否 |用户的orgid|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 新增账号
GET /hpc/HpcLdapAdd.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|clustercode|query|string| 否 |集群账号|
|queuecode|query|string| 否 |队列账号|
|ldapuid|query|string| 否 |ldap账号|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 删除账号
GET /hpc/HpcLdapDelete.dspy
1. 账号没有绑定过 参数orgid不填 或者 orgid为空
2. 账号已经绑定过 参数orgid必填
3. 已经同步成功的用户账号无法删除
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |账号查询接口返回的id|
|orgid|query|string| 否 |账号查询接口返回的orgid|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 更新账号
GET /hpc/HpcLdapUpdate.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |/hpc/HpcLdapSearch.dspy 返回的id|
|orgid|query|string| 否 |/hpc/HpcLdapSearch.dspy 返回的orgid|
|clustercode|query|string| 否 |/hpc/HpcLdapSearch.dspy 返回的集群账号|
|queuecode|query|string| 否 |/hpc/HpcLdapSearch.dspy 返回的队列账号|
|ldapuid|query|string| 否 |/hpc/HpcLdapSearch.dspy 返回的ladp账号|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 获取sign
POST /hpc/jnan_get_sign.dspy
2023-12-06 新增返回字段: warn_msg
场景:
购买后自动同步成功 返回null
购买后返回步成功返回: 您当前有未同步的购买信息, 请联系售后同步
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|userid|query|string| 否 |none|
|username|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 获取所有产品
GET /hpc/jncs_get_product.dspy
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
# 供应商
## GET 销售配置折扣底价审批接口
GET /product/customer_product_config_approve_send.dspy
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 供应商更新
GET /provider/providerUpdate.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |供应商机构id|
|orgname|query|string| 否 |供应商机构名称|
|contactor|query|string| 否 |联系人|
|contactor_phone|query|string| 否 |联系电话|
|province_id|query|string| 否 |省id|
|city_id|query|string| 否 |市id|
|distinct_id|query|string| 否 |区id|
|emailaddress|query|string| 否 |邮箱|
|address|query|string| 否 |地址|
|main_business|query|string| 否 |主营业务描述|
|orgcode|query|string| 否 |组织结构代码|
|license_img|query|string| 否 |营业执照|
|id_img|query|string| 否 |身份证|
|accountid|query|string| 否 |账号|
|provider_table_id|query|string| 否 |供应商表id|
|name|query|string| 否 |供应商名称|
|description|query|string| 否 |描述|
|appid|query|string| 否 |应用id|
|providerkey|query|string| 否 |应用key|
|state|query|string| 否 |状态|
|settle_mode|query|string| 否 |销售结算方式|
|settle_flowid|query|string| 否 |结算流程|
|settle_datep|query|string| 否 |结算日期模版|
|start_date|query|string| 否 |起效日期|
|end_date|query|string| 否 |失效日期|
|salemode|query|string| 否 |销售方式|
|protocolid|query|string| 否 |销售协议id|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 百度云创建用户
POST /v1/vs/account
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|name|query|string| 否 |none|
|email|query|string| 否 |none|
|mobilePhone|query|string| 否 |none|
|accountType|query|string| 否 |none|
|Host|header|string| 否 |none|
|Content-Type|header|string| 否 |none|
|Authorization|header|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 供应商产品查询
GET /product/provider_product_search.dspy
{
"status" : true ,
"msg" : "供应商产品查找成功" ,
"classify_list" : [
"未配置"
],
"data" :[]
}
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|protocolid|query|string| 是 |供应商给当前机构签的协议id|
|productname|query|string| 否 |产品名称|
|start_discount|query|string| 否 |起始折扣|
|end_discount|query|string| 否 |结束折扣|
|classify|query|string| 否 |专属分类 这个字段用于批量折扣设置|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 运营配置统一普通折扣
GET /product/discount_guanli_jia.dspy
注意:
productid 格式为 "A3eGE1BLcqxO8wXbuDq2T,BqBV4sk8jnEe316MagmlK"
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|bid_orgid|query|string| 是 |运营所属机构id|
|providerid|query|string| 是 |供应商id|
|productid|query|string| 是 |产品id|
|discount|query|string| 是 |统一折扣|
|productname|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 销售查看客户折扣底价
GET /product/xiaoshou_kan_zhekou.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|customerid|query|string| 是 |客户orgid|
|kv|query|string| 否 |kv=price时是销售查看售价设置, 没有这个字段是客户折扣设置|
|providerid|query|string| 否 |供应商筛选|
|productname|query|string| 否 |模糊查询的产品名称|
|start_discount|query|string| 否 |区间查询 起始折扣|
|end_discount|query|string| 否 |区间查询 结束折扣|
|classify|query|string| 否 |专属分类|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 运营查询统一折扣配置
GET /product/discount_guanli_cha.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|bid_orgid|query|string| 是 |当前机构id|
|providerid|query|string| 否 |供应商筛选查询|
|keyword|query|string| 否 |产品名称模糊查询|
|start_discount|query|string| 否 |起始折扣|
|end_discount|query|string| 否 |结束折扣|
|classify|query|string| 否 |专属分类查询|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 运营查询统一售价配置
GET /product/shoujia_guanli_cha.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|bid_orgid|query|string| 是 |运营所在orgid|
|providerid|query|string| 否 |要查询的供应商id|
|keyword|query|string| 否 |产品名称模糊查询|
|classify|query|string| 否 |专属分类查询|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 获取折扣
GET /get_discount
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|providerid|query|string| 是 |供应商id|
|userid|query|string| 否 |用户id|
|productid|query|string| 是 |产品id|
|prefix|query|string| 否 |供应商前缀|
|servicetype|query|string| 否 |供应商自带的产品pid|
|user_orgid|query|string| 否 |用户orgid|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
# 供应商/算力中心本地化
## GET 算力中心供应商列表
GET /provider/get_cpcc_provider.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 否 |机构id|
|cpccid|query|string| 否 |用于筛选指定算力中心|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "get cpcc success",
"data": [
{
"cpccid": "AROU9udKtPNyh0AZtO_WY",
"cpccname": "北京算网",
"provider_convert_state": true,
"init_product": false,
"provider_info": {
"providerid": "hwQKaILcp9g2rmnpjLbQ9",
"name": "算力中心AA"
}
}
]
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» provider_convert_state|string|true|none||转换供应商状态 未转换/已转换|
|» provider_info|string|true|none||供应商信息|
## GET 算力中心转供应商
GET /provider/cpccProviderAdd.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|name|query|string| 否 |等于cpccname|
|orgcode|query|string| 否 |等于cpccid|
|orgid|query|string| 否 |机构id|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 获取部件类型
GET /provider/get_cpcc_widget.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|cpcid|query|string| 否 |算力中心ID|
|type|query|string| 否 |gpu/cpu/disk/memory|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 配置产品
GET /provider/cpcc_product_add.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|reseller_orgid|query|string| 是 |=orgid 运营所在机构id|
|providerid|query|string| 是 |供应商id|
|product_type|query|string| 是 |1. customize:自定义产品 2. combination:组合产品|
|spec_note|query|string| 是 |当product_type为combination时 此参数必填|
|clusterid|query|string| 是 |站点ID 必传|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 客户查看产品
GET /provider/cpcc_kehu_kan_chanpin.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|domain_url|query|string| 是 |当前域名链接|
|duration|query|string| 是 |时长|
|duration_unit|query|string| 是 |时长单位|
|userid|query|string| 是 |不是必传|
|clusterid|query|string| 是 |none|
|resource_type|query|string| 是 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 创建K8S实例
GET /provider/create_cpcc_instance.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|userid|query|string| 否 |不是必传|
|productid|query|string| 否 |none|
|providerid|query|string| 否 |none|
|amount|query|string| 否 |none|
|duration_unit|query|string| 否 |none|
|duration|query|string| 否 |none|
|domain_url|query|string| 否 |none|
|clusterid|query|string| 否 |none|
|source_name|query|string| 否 |none|
|source_authuser|query|string| 否 |none|
|source_authpasswd|query|string| 否 |none|
|source_podengine|query|string| 否 |none|
|source_replicasetnum|query|string| 否 |none|
|instance_type|query|string| 否 |none|
|pod_imagepath|query|string| 否 |none|
|source_memrate|query|string| 否 |none|
|source_cpurate|query|string| 否 |none|
|source_selflabel|query|string| 否 |none|
|source_gpu|query|string| 否 |none|
|source_portmode|query|string| 否 |none|
|source_restartpolicy|query|string| 否 |none|
|source_apiport|query|string| 否 |none|
|source_insideport|query|string| 否 |none|
|source_outsideport|query|string| 否 |none|
|source_mountpath|query|string| 否 |none|
|source_storagelimits|query|string| 否 |none|
|disk_sys_limit|query|string| 否 |none|
|source_nodeselector|query|string| 否 |none|
|gpu_model|query|string| 否 |none|
|cpu_model|query|string| 否 |none|
|orgid|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
# 协议接口
## GET 协议添加
GET /product/sale_protocol_add.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|offer_salemanid|query|string| 否 |销售人员id|
|offer_orgid|query|string| 否 |卖方orgid|
|bid_orgid|query|string| 否 |买方orgid|
|salemode|query|string| 否 |销售模式|
|settlemode|query|string| 否 |结算模式|
|settle_dp|query|string| 否 |结算日期模版|
|protocolfile|query|string| 否 |协议文件|
|start_date|query|string| 否 |none|
|end_date|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 协议查找
GET /product/sale_protocol_search.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|bid_orgid|query|string| 否 |none|
|offer_orgid|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 协议删除
GET /product/sale_protocol_delete.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |协议表id|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 协议更新
GET /product/sale_protocol_update.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|protocolid|query|string| 否 |协议id|
|salemode|query|string| 否 |销售模式|
|start_date|query|string| 否 |开始时间|
|end_date|query|string| 否 |结束时间|
|protocolfile|query|string| 否 |协议文件|
|settlemode|query|string| 否 |结算模式|
|settle_dp|query|string| 否 |结算日期模版|
|provider_table_id|query|string| 否 |供应商修改协议时填写|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
# 申请审批
## POST 获取审批密钥
POST /apv/get_apv_key.dspy
> Body 请求参数
```json
{
"orgid": "gg"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{
"code": 0,
"data": [
{
"user_id": "string",
"send_dd_user_id": "string",
"source": "string",
"app_key": "string",
"app_secret": "string",
"http_aes_key": "string",
"http_token": "string",
"process_code": "string",
"process_name": "string",
"update_time": "string"
}
]
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» code|integer|true|none||none|
|» data|[object]|true|none||none|
|»» user_id|string|true|none||none|
|»» send_dd_user_id|string|true|none||none|
|»» source|string|true|none||none|
|»» app_key|string|true|none||none|
|»» app_secret|string|true|none||none|
|»» http_aes_key|string|true|none||none|
|»» http_token|string|true|none||none|
|»» process_code|string|true|none||none|
|»» process_name|string¦null|true|none||none|
|»» update_time|string|true|none||none|
## POST 保存审批密钥
POST /apv/save_apv_key.dspy
> Body 请求参数
```json
{
"id": "-K9htuHKMPGFaqxUdJ-sb",
"flag": "update",
"user_id": "ss",
"orgid": "ggs",
"send_dd_user_id": "00",
"source": "dd",
"app_key": "ding46800v9xr14eqxqy",
"app_secret": "4JXeCfHps7_skIetaJqbXaUcuPh0d2U7Ov01PAohjTpqx3UPDD9mzvl5Ls5iFV0j",
"http_aes_key": "AsRTUiiEz8VlAdBQ4TxOkukI5km7mx5pDGg6LVnEWbl",
"http_token": "t6E57RiEbW4yZnngwSJ9HfLJ6gl99"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 获取审批流信息
POST /apv/get_apv_flow.dspy
> Body 请求参数
```json
{
"orgid": "gg",
"business_id": "11"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{
"code": 0,
"msg": "string"
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» code|integer|true|none||none|
|» msg|string|true|none||none|
## POST 保存审批流信息
POST /apv/save_apv_flow.dspy
> Body 请求参数
```json
{
"orgid": "gg",
"user_id": "gg",
"business_id": "11",
"flag": "update",
"level_data": [
{
"level_id": "1",
"level_mode": "NONE",
"apv_dd_user_phone": [
"15938717631"
]
},
{
"level_id": "2",
"level_mode": "NONE",
"apv_dd_user_phone": [
"15938717631",
"1"
]
}
]
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 获取审批列表
POST /apv/get_apv_list.dspy
> Body 请求参数
```json
{
"user_id": "1"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "string"
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
## POST 获取业务列表
POST /apv/get_apv_business.dspy
> Body 请求参数
```json
{}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{
"code": 0,
"data": [
{
"user_id": "string",
"send_dd_user_id": "string",
"source": "string",
"app_key": "string",
"app_secret": "string",
"http_aes_key": "string",
"http_token": "string",
"process_code": "string",
"process_name": "string",
"update_time": "string"
}
]
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» code|integer|true|none||none|
|» data|[object]|true|none||none|
|»» user_id|string|true|none||none|
|»» send_dd_user_id|string|true|none||none|
|»» source|string|true|none||none|
|»» app_key|string|true|none||none|
|»» app_secret|string|true|none||none|
|»» http_aes_key|string|true|none||none|
|»» http_token|string|true|none||none|
|»» process_code|string|true|none||none|
|»» process_name|string¦null|true|none||none|
|»» update_time|string|true|none||none|
## POST 设置业务回调地址
POST /apv/apv_business.dspy
> Body 请求参数
```json
{
"business_name": "test",
"callback_url": "https://dev.kaiyuancloud.cn/account/addledgers.dspy"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
|» business_name|body|string| 是 |none|
|» callback_url|body|string| 是 |none|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "success",
"data": "WK76yFzB3o4yikmEI1b1D"
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
|» data|string|true|none||none|
## POST 设置审批模板
POST /apv/apv_template.dspy
> Body 请求参数
```json
{
"id": "6HV3USCHgqGj7Qtj4eFz6",
"business_id": "PoHcaRB7dhUqIe_a75F6h",
"title_template": "sss",
"detail_template": "sss"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
|» id|body|string| 是 |none|
|» business_id|body|string| 是 |none|
|» title_template|body|string| 是 |none|
|» detail_template|body|string| 是 |none|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "success"
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
## POST 获取审批模板
POST /apv/get_apv_template.dspy
> Body 请求参数
```json
{
"business_id": "PoHcaRB7dhUqIe_a75F6h"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
|» business_id|body|integer| 是 |none|
|» del_flg|body|string| 是 |none|
> 返回示例
> 200 Response
```json
{
"status": true,
"data": [
{
"id": "1",
"business_id": "1",
"title_template": "线下充值",
"detail_template": "充值金额:$price",
"del_flg": "0",
"create_at": "2023-08-21 16:35:27",
"update_at": "2023-08-21 16:35:27"
}
]
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» data|[object]|true|none||none|
|»» id|string|false|none||none|
|»» business_id|string|false|none||none|
|»» title_template|string|false|none||none|
|»» detail_template|string|false|none||none|
|»» del_flg|string|false|none||none|
|»» create_at|string|false|none||none|
|»» update_at|string|false|none||none|
## POST 删除审批业务
POST /apv/delete_apv_business.dspy
> Body 请求参数
```json
{
"id": "oyJq-X9K1X9-syAXGlfxl",
"del_flg": "1"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 删除审批模板
POST /apv/delete_apv_template.dspy
> Body 请求参数
```json
{
"id": "xx",
"del_flg": "dd"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 设置发送人和表单
POST /apv/send_key_create.dspy
> Body 请求参数
```json
{
"id": "fK4zjEpZsRNO44tI27yAI",
"user_id": "g",
"orgid": "g",
"send_phone": "15938717631",
"source": "dingding",
"business_id": "1",
"process_code": "PROC-B2DAA076-6A9F-4740-80AB-0D5D4410F7AC",
"process_name": "通用审批"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 查询发送人和表单
POST /apv/send_key_select.dspy
> Body 请求参数
```json
{
"orgid": "g",
"business_id": "1"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 获取审批表单
POST /apv/get_apv_form.dspy
> Body 请求参数
```json
{}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 通过手机号获取id
POST /apv/get_id_by_phone_dd.dspy
> Body 请求参数
```json
{
"orgid": "gg",
"phone": "11"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 发送审批测试接口
POST /test/send_apv.dspy
> Body 请求参数
```json
{
"phone": "15938717631",
"orgid": "mIWUHBeeDM8mwAFPIQ8pS",
"user_id": "wQBaNMZovPRw_jeet7aJF",
"business_id": "1",
"form_component": {
"title": {
"": ""
},
"detail": {
"price": "10000"
}
},
"result_org": "gKG8UaYPjA_29K7puzaTM"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
# 阿里云接口
## GET 查询可用地域
GET /ali/DescribeRegions.dspy
实例的计费方式,更多详情,请参见计费概述。取值范围
PrePaid包年包月。此时您必须确认自己的账号支持余额支付或者信用支付否则将报错InvalidPayMethod。
PostPaid按量付费。
资源类型。取值范围:
instanceECS实例
disk磁盘
reservedinstance预留实例券
scu存储容量单位包
根据汉语、英语和日语筛选返回结果。更多详情请参见RFC7231。取值范围
zh-CN中文。
en-US英文。
ja日文。
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|instance_charge_type|query|string| 否 |实例的计费方式|
|resource_type|query|string| 否 |资源类型|
|accept_language|query|string| 否 |根据汉语、英语和日语筛选返回结果|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 佳杰用户同步
GET /ali/jiajie_sync_user.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|userid|query|string| 否 |不是必传参数|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 佳杰获取跳转链接
GET /ali/jiajie_get_token_redirect.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|userid|query|string| 否 |不是必传参数|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "string",
"data": "string"
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
|» data|string|true|none||none|
# 服务器租赁
## POST 创建租赁产品
POST /lease/create_lease_data.dspy
> Body 请求参数
```json
{
"products": {
"product_name": "商品7",
"stock": "3",
"user_id": "gg",
"price": "1",
"lease_start_time": "2023-01-06",
"lease_end_time": "2023-09-26"
},
"servers": {
"store_name": "xx",
"device_type": "77",
"device_brand": "device_brand",
"resource_type": "resource_type ™️ ",
"card_type": "card_type",
"card_interface": "card_interface",
"cpu": "cc",
"memory": "memory",
"system_disk": "system_disk",
"data_disk": "data_disk",
"net_card1": "net_card1",
"net_card2": "net_card2",
"other_data": "other_data",
"price": "1"
}
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 查询租赁产品
POST /lease/filter_lease_data.dspy
> Body 请求参数
```json
"{\n \"status\": 1,\n \"product_name\": \"开元云科技A\",\n \"store_name\": \"北京\",\n \"page\": 1,\n \"rows\": 10,\n \"sort\": \"create_at desc\"\n // \"sort\": \"create_at desc\"\n}"
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 修改产品信息
POST /lease/update_product.dspy
> Body 请求参数
```json
{
"product": {
"id": "AmAlWMSg-M5JYI75EWqk-",
"product_name": "product_name",
"price": "1",
"stock": "10",
"user_id": "ddddd",
"lease_start_time": "2023-07-06",
"lease_end_time": "2123-09-06"
}
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 保存合同
POST /lease/save_contract.dspy
> Body 请求参数
```json
{
"bill_id": "XX",
"title": "title",
"user_id": "user_id",
"start_date": "2023-09-08",
"end_date": "2023-09-08",
"salesman": "salesman",
"client": "client",
"status": "status",
"remark": "remark"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 修改合同
POST /lease/update_contract.dspy
> Body 请求参数
```json
{
"id": "AAC1PBqCpgnTEr_iaznCd",
"title": "gg",
"user_id": "gg",
"start_date": "2023-09-08",
"end_date": "2023-09-08",
"salesman": "salesman",
"client": "client",
"status": "status",
"remark": "remark"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 获取合同
POST /lease/get_contract.dspy
> Body 请求参数
```json
{
"user_id": "gg"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 购买自有服务器
POST /lease/buy.dspy
> Body 请求参数
```json
"{\n \"bill_data\": {\n \"device_type\": \"123\",\n \"device_num\": \"2\",\n \"bandwidth\": \"123\",\n \"stored\": \"123\",\n \"test_type\": \"2\", // 测试期类型0:无测试1:免费2:收费\n \"test_price\":11, // 若填则大于0\n \"test_day\":2, // 若填则大于0\n \"user_id\": \"9KVhsVCJsW_29q3hRhMAr\",\n \"start_date\": \"2023-10-28\",\n \"end_date\": \"2023-10-30\",\n \"ip_num\": 2\n },\n \"device_ids\": [\n [\n \"yvxMXEwBk8qloavs-F7iu\", // 商品id\n \"05or94z-xvz3l2d0DZHPs\" // 设备id\n ],\n [\n \"yvxMXEwBk8qloavs-F7iu\",\n \"06yPhYgtfVXV0QSc8oeKl\"\n ]\n \n ]\n}"
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 统计空闲
POST /lease/report_disengaged.dspy
> Body 请求参数
```json
{
"select_date": "2023-01-08"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 获取产品列表
POST /lease/get_product_list.dspy
> Body 请求参数
```json
{}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 获取账单列表
POST /lease/get_bill_list.dspy
> Body 请求参数
```json
{
"user_id": "user_id",
"page": 1,
"rows": 3,
"sort": "create_at desc"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 获取账单详情
POST /lease/get_bill_detail.dspy
> Body 请求参数
```json
{
"bill_id": "ABl7_cp9l6k0kjrhls1NY"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 到期自动回收设备
POST /lease/update_stock.dspy
> Body 请求参数
```json
{}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 到期警告
POST /lease/expiration_warning.dspy
> Body 请求参数
```json
{}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 获取服务器数据
POST /lease/get_server_data.dspy
> Body 请求参数
```json
{
"field": "store_name"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 创建仓库
POST /lease/create_store.dspy
> Body 请求参数
```json
{
"name": "xx",
"location": "xxxx",
"address": "xxx",
"bandwidth_price": "123",
"stored_price": "1233",
"ip_price": "33",
"user_id": "xxxx"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 更新仓库
POST /lease/update_store.dspy
> Body 请求参数
```json
{
"id": "xx",
"name": "2",
"location": "xxxx",
"address": "xxx",
"bandwidth_price": "123",
"stored_price": "1233",
"ip_price": "33",
"user_id": "xxxx"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 获取仓库列表
POST /lease/get_store_list.dspy
> Body 请求参数
```json
{
"page": 1,
"rows": 21,
"sort": "create_at desc"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 获取去重后字段信息
POST /lease/get_distinct.dspy
> Body 请求参数
```json
{
"distinct": [
"product_name",
"store_name"
]
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
# 分销商
## GET 分销商折扣底价更新
GET /product/xiaoshou_gai_zhekou_dijia.dspy
1. 添加修改折扣产品 参数discount必填
price不传或为空
2. 添加修改底价产品 参数price必填
discount不传或为空
2. 添加修改回佣产品 参数price和discount不填
参数price和discount不填不传或为空
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|offer_orgid|query|string| 是 |卖方机构id|
|bid_orgid|query|string| 是 |分销商机构id|
|productid|query|string| 是 |产品id 数组格式|
|discount|query|string| 否 |折扣|
|price|query|string| 否 |底价|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 分销商产品折扣配置查
GET /product/reseller_discount_config_get.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|offer_orgid|query|string| 是 |供应商id|
|bid_orgid|query|string| 是 |分销商id|
|salemode|query|string| 是 |销售模式 折扣产品:0 底价产品:2 回佣产品: 1|
|flag|query|string| 否 |标志: 查看已经配置: 1, 查看没有配置产品: 0|
|range|query|string| 否 |折扣范围查询 格式“0.9,0.98”|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 分销商折扣底价删除
GET /product/discount_guanli_shan.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|zi_biao_id|query|string| 是 |子表id /product/reseller_discount_config_get.dspy返回|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 分销商独立信息添加
GET /reseller/independent_info_add.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |分销商表idreseller_table_id|
|domain_name|query|string| 否 |分销商域名|
|logo|query|string| 否 |分销商logo图片地址|
|license_number|query|string| 否 |icp备案号|
|license|query|string| 否 |生产许可证图片地址|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 查找logo_ipc信息
GET /reseller/get_ipc_logo.dspy
参数:
场景一: url_link初始化页面时只传只传只传传递的参数
参数:
场景二:
reseller_table_id: 查询是否添加过域名时(只传只传只传)传递的参数 有就返回True, domain_name等 没有就会返回False
上面两个参数根据场景
场景一:刚登录页面
场景二: 添加域名
场景一 添加后缀的方式访问 示例: https://kaiytuancloud.cn/domain/xterm.kaiyuancloud.cn
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|url_link|query|string| 否 |none|
|reseller_table_id|query|string| 否 |resellerOrgSearch.dspy返回的参数|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 分销商添加用户
GET /reseller/reseller_add_user.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|username|query|string| 否 |用户名称|
|password|query|string| 否 |密码|
|email|query|string| 否 |email|
|orgid|query|string| 否 |机构id|
|nick_name|query|string| 否 |用户名|
|address|query|string| 否 |地址|
|mobile|query|string| 否 |手机|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 分销商删除
GET /reseller/reseller_org_delete.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |resellerOrgSearch返回的id|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 分销商销售额查看
GET /reseller/reseller_analysis.dspy
start_date和end_date 不是必填
start_date和end_date 格式必须是 2023-08-01样式 不能是2023/08/01
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|reseller_orgid|query|string| 否 |分销商orgid|
|start_date|query|string| 否 |开始日期|
|end_date|query|string| 否 |结束日期|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
# 供应商结算统计
## POST 获取待结算的供应商list
POST /provider_settle/get_settle_list.dspy
> Body 请求参数
```json
{
"orgid": "mIWUHBeeDM8mwAFPIQ8pS"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 获取指定供应商的账单list
POST /provider_settle/get_settle_bill_list.dspy
> Body 请求参数
```json
"{\n \"start_date\":\"2023-11-01\",\n \"end_date\":\"2023-11-01\",\n \"provider_id\":\"8PIR6T-FGQU9sQatdZWqu\", // 供应商id\n \"orgid\":\"mIWUHBeeDM8mwAFPIQ8pS\" // 机构id\n}"
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 发起审批申请
POST /provider_settle/send_apv.dspy
> Body 请求参数
```json
{
"orgid": "mIWUHBeeDM8mwAFPIQ8pS",
"user_id": "g",
"business_name": "供应商结算统计",
"id": [
"ybBEmhdRLEU5-kVg7tmtG"
],
"phone": "15938717631"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 供应商自动结算-审批回调API
POST /provider_settle/apv_callback_provider_settle.dspy
> Body 请求参数
```json
"// 审批自动回调接口\n{\n \"apv_id\":\"KD-VCUKKRAaPw2Y6_Dti3A07441698031462\",\n \"status\":\"agree\" \n}"
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 供应商自动结算
POST /provider_settle/auto_provider_settle_cron_job.dspy
> Body 请求参数
```json
"// 定时任务自动调用接口"
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 导出-获取指定供应商的账单list
POST /provider_settle/get_settle_bill_list_to_excel.dspy
> Body 请求参数
```json
"{\n \"start_date\":\"2023-11-01\",\n \"end_date\":\"2023-11-01\",\n \"provider_id\":\"8PIR6T-FGQU9sQatdZWqu\", // 供应商id\n \"orgid\":\"mIWUHBeeDM8mwAFPIQ8pS\" // 机构id\n}"
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
# 百度云
## GET 获取tokenid
GET /baiduc/get_tokenid.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|userid|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 同步用户订单
GET /baiduc/update_baidu_order_list.dspy
参数orgid和userid二选一 不能同时填
填写orgid是更新所有客户订单
填写userid是更新指定用户订单
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 否 |更新本机构的所有客户订单 填这个不填userid|
|userid|query|string| 否 |更新指定用户的订单 选这个就不填orgid|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 获取百度用户列表
GET /baiduc/get_baidu_users_base_org.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 是 |必填|
|user_id_or_name|query|string| 否 |用户userid或者是用户名称 不是必填|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "string",
"data": [
{
"user_id": "string",
"username": "string"
}
]
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
|» data|[object]|true|none||none|
|»» user_id|string|true|none||none|
|»» username|string|true|none||none|
## GET 查询百度订单
GET /baiduc/get_local_baidu_orders.dspy
pageno 必填
pagesize 必填
userid 查询全部时不填
ordertype 订单类型NEW(新购)、RENEW(续费)、REFUND(退款)、SHIFT_CHARGE(后付费计费方案变更)、DILATATION(升级)、SHRINKAGE(降级)、RESIZE(后付费变配)、COMPENSATE_TIME(赔付时长)、TRANSFER_IN(转入)、TO_PREPAY(后付费转预付费)、TO_POSTPAY(预付费转后付费)、TIME_EXPAND(续时订单),注括号内为解释,参数赋值英文字符
servicetype 产品类型BCCBOS等
producttype 计费类型prepay/ postpay分别表示预付费/后付费
status 订单状态, NEED_PURCHASE等待支付,NEED_CONFIRM待确认,CONFIRMED已确认,CANCELLED已取消, DEFERRED_CREATE延迟创建,READY_FOR_CREATE待创建,CREATING创建中,CREATED创建完成,CREATE_FAILED创建失败,EXPIRED超期,REFUND_SUCC退款成功,REFUND_FAILED退款失败
autoreneworder 1或0 布尔值,表示是否查询下单来源是自动续费的订单
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|pageNo|query|string| 是 |必填|
|pageSize|query|string| 是 |必填|
|user_id_or_name|query|string| 否 |none|
|ordertype|query|string| 否 |订单类型|
|servicetype|query|string| 否 |产品类型|
|producttype|query|string| 否 |计费类型|
|status|query|string| 否 |订单状态|
|autoreneworder|query|string| 否 |是否自动续费|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "string",
"pagesize": 0,
"totalcount": 0,
"pageno": "string",
"data": [
{
"username": "string",
"user_id": "string",
"id": "string",
"orderid": "string",
"ordertype": "string",
"accountid": "string",
"servicetype": "string",
"producttype": "string",
"price": 0,
"status": "string",
"autoreneworder": "string",
"createtime": "string",
"updatetime": "string",
"del_flg": "string",
"create_at": "string",
"update_time": "string"
}
]
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
|» pagesize|integer|true|none||none|
|» totalcount|integer|true|none||none|
|» pageno|string|true|none||none|
|» data|[object]|true|none||none|
|»» username|string|true|none||none|
|»» user_id|string|true|none||none|
|»» id|string|true|none||none|
|»» orderid|string|true|none||none|
|»» ordertype|string|true|none||none|
|»» accountid|string|true|none||none|
|»» servicetype|string|true|none||none|
|»» producttype|string|true|none||none|
|»» price|number|true|none||none|
|»» status|string|true|none||none|
|»» autoreneworder|string|true|none||none|
|»» createtime|string|true|none||none|
|»» updatetime|string|true|none||none|
|»» del_flg|string|true|none||none|
|»» create_at|string|true|none||none|
|»» update_time|string|true|none||none|
## GET 订单交互处理
GET /baiducloud/get_baidu_orderlist.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|order_id|query|string| 否 |订单ID|
|userid|query|string| 否 |用户id|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 百度订单退款
GET /baiduc/baidu_confirm_refund_order.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|order_id|query|string| 否 |订单ID|
|baidu_id|query|string| 否 |百度用户ID|
|user_id|query|string| 否 |用户ID|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 资源查询
GET /baiduc/baidu_resource_query.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|userid|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "string"
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
## GET 取消退款
GET /baiduc/baidu_order_cancel.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|baidu_id|query|array[string]| 否 |none|
|order_id|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
# 发票开票
## POST 销售获取名下客户发票信息
POST /invoice/get_user_invoice.dspy
> Body 请求参数
```json
{
"user_id": "BplKduzcRmp0YzF_5G-EB"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 销售保存客户发票信息
POST /invoice/save_user_invoice.dspy
> Body 请求参数
```json
"{\n \"orgid\": \"g\",\n \"user_id\": \"BplKduzcRmp0YzF_5G-EB\",\n \"client_id\": \"O7FVnSdEyui8Ujq1LRq6v\", // 客户的机构id\n \"title_type\":1\n}"
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 销售修改客户发票信息
POST /invoice/update_user_invoice.dspy
> Body 请求参数
```json
"{ \n \"id\":\"1\",\n \"orgid\": \"gggg\",\n \"user_id\": \"BplKduzcRmp0YzF_5G-EB\",\n \"client_id\": \"O7FVnSdEyui8Ujq1LRq6v\", // 客户的机构id\n \"contract_number\": \"contract_number\",\n \"invoice_type\":2,\n \"invoice_title\": \"invoice_title\",\n \"tax_no\": \"tax_no\",\n \"bank_name\": \"bank_name\",\n \"bank_account\": \"bank_account\",\n \"phone\": \"phone\",\n \"receiver_name\": \"receiver_name\", \n \"address\": \"address\",\n \"post_code\": \"post_code\",\n \"title_type\":1\n}"
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 获取充值记录
POST /invoice/get_recharge_record.dspy
> Body 请求参数
```json
"{ \n \"customerid\": \"O7FVnSdEyui8Ujq1LRq6v\" \n // \"customerid\":\"mIWUHBeeDM8mwAFPIQ8pS\" // 客户的orgid\n}"
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 申请开票
POST /invoice/apv_invoice.dspy
> Body 请求参数
```json
"{\n \"orgid\": \"R_dUvCVA-mzv8qqx5vdd8\", // orgid\n \"maker\": \"R_dUvCVA-mzv8qqx5vdd8\", // user_id/orgid\n \"client_id\": \"R_dUvCVA-mzv8qqx5vdd8\", // 客户机构id 客户是一个机构\n \"user_id\": \"user_id\", // 当前登陆人的ID\n \"user_name\": \"user_name\", // 当前登陆人的名字\n \"recharge_id\": [ // 充值记录id\n // \"-pHC8OerOTyHvDAsQkllT\",\n \"4LaEJ-4X8H3gIxGV_7EJw\"\n // \"544VLt8UjVSb60FRM-MBp\",\n // \"58zrQIx4Ogp59FSCSuguC\",\n // \"5AqRdV3Aih_z8-5epXtEw\",\n // \"5LxIB7OE8pOClx9NLrUfS\",\n // \"6cDCyNMEqByMnYPQewG7b\",\n // \"6gJV2xPPlUWJh-4oXlol4\",\n // \"6xmq9oM_cXX6pIih6C68N\"\n ]\n}"
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 申请开票回调API
POST /invoice/invoice_callback.dspy
> Body 请求参数
```json
"{ \"orgid\":\"mIWUHBeeDM8mwAFPIQ8pS\",\n \"maker\": \"BplKduzcRmp0YzF_5G-EB\", // 发起人id 销售/客户id\n \"client_id\": \"xpkiSDsZRZp4WKD1V2Rp7\", // 客户id\n \"recharge_id\": [ // 充值记录id\n \"-pHC8OerOTyHvDAsQkllT\",\n \"4LaEJ-4X8H3gIxGV_7EJw\",\n \"544VLt8UjVSb60FRM-MBp\",\n \"58zrQIx4Ogp59FSCSuguC\",\n \"5AqRdV3Aih_z8-5epXtEw\",\n \"5LxIB7OE8pOClx9NLrUfS\",\n \"6cDCyNMEqByMnYPQewG7b\",\n \"6gJV2xPPlUWJh-4oXlol4\",\n \"6xmq9oM_cXX6pIih6C68N\"\n ]\n}"
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 销售获取名下的审批记录
POST /invoice/get_apv_list.dspy
> Body 请求参数
```json
"{\n \"user_id\":\"BplKduzcRmp0YzF_5G-EB\" // 销售user_id\n}"
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
# 租赁设备产品化
## POST 获取供应商list
POST /lease_product/get_provider.dspy
> Body 请求参数
```json
{
"orgid": "wLlfpADeWNZggdaARVpVo",
"org_type": 4
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 获取产品list
POST /lease_product/get_product.dspy
> Body 请求参数
```json
"{\n \"providerid\":\"PaqJvHbAgtz9qHrPKsCNo\" // 供应商id\n}"
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 获取设备list
POST /lease_product/get_server.dspy
> Body 请求参数
```json
"{\n \"providerid\":\"PaqJvHbAgtz9qHrPKsCNo\", // 供应商id\n \"productid\":\"0MiSPyfTrwF99c0JVX4ii\", // 可选参数 产品id\n \"status\":0 // 可选 设备状态 0可售\n}"
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 获取设备详情
POST /lease_product/get_server_detail.dspy
> Body 请求参数
```json
"{\n \"server_id\":\"RPSaFXLIcf4QzRyWkZ9ju\", // 可选参数 设备id\n // \"id\":\"4_r2czW5eAKOCPhJ6gF3u1\"\n}"
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 根据产品添加设备
POST /lease_product/create_server.dspy
> Body 请求参数
```json
{
"providerid": "3MEgM-2zZid7kYCa4-AuJ",
"provider_name": "济南超算",
"productid": "5GE5sro6Picw5QRCjVtM0",
"product_name": "CPU节点/64G X86-Intel- E5-2682V4",
"stock": 15,
"user_id": "9KVhsVCJsW_29q3hRhMAr",
"price": "200",
"end_date": "2024-02-23",
"other_data": "4234",
"store_name": "上海",
"parameter": [
{
"title": "device_type",
"parameter": "23",
"number": 1
},
{
"title": "device_brand",
"parameter": "4",
"number": 1
},
{
"title": "resource_type",
"parameter": "23423",
"number": 1
},
{
"title": "card_type",
"parameter": "4",
"number": 1
},
{
"title": "card_interface",
"parameter": "234234",
"number": 1
},
{
"title": "cpu",
"parameter": "234",
"number": 1
},
{
"title": "memory",
"parameter": "23423",
"number": 1
},
{
"title": "system_disk",
"parameter": "234",
"number": 1
},
{
"title": "data_disk",
"parameter": "234",
"number": 1
},
{
"title": "net_card1",
"parameter": "234",
"number": 1
},
{
"title": "net_card2",
"parameter": "234",
"number": 1
}
]
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 修改设备配置
POST /lease_product/update_server.dspy
> Body 请求参数
```json
"{\n \"id\": \"RPSaFXLIcf4QzRyWkZ9ju\", // serverid\n \"productid\":\"q38zge3bkgj7ATQHD2cmV\", // productid\n \"price\": 10111, // 单价\n \"stock\":11, // 新库存\n \"change_stock\": -1, // 库存变化\n \"end_date\":\"2024-09-29\" // 只传值,不能修改\n }"
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 根据产品id获取价格
POST /lease_product/get_price.dspy
> Body 请求参数
```json
"{\n \"productid\":\"productid2\", // 产品id\n}"
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 锁定设备
POST /lease_product/lock_server.dspy
> Body 请求参数
```json
{
"lease_start_time": "2023-11-30",
"lease_end_time": "2023-12-30",
"productid": "1",
"count": 111
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 保存订单id
POST /lease_product/save_order_id.dspy
> Body 请求参数
```json
{
"order_id": "",
"productid": "",
"count": 2
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 释放锁定商品by_order id
POST /lease_product/unlock_server_by_orderid.dspy
> Body 请求参数
```json
{
"order_id": "uM6KKHPSj9sAwGiIwtjfh"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 释放锁定商品by_id
POST /lease_product/unlock_server_by_id.dspy
> Body 请求参数
```json
{
"count": 1,
"productid": "1"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 获取设备的订单 list
POST /lease_product/get_order_list.dspy
> Body 请求参数
```json
{
"orgid": "mIWUHBeeDM8mwAFPIQ8pS"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 获取设备的订单详情
POST /lease_product/get_order_detail.dspy
> Body 请求参数
```json
{
"productid": "0zzwUzmGX7SHY_AHfz0NM"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 租赁到期自动释放设备
POST /lease_product/update_order.dspy
> Body 请求参数
```json
{
"id": "KZQ6tTMNcxO4GqK9x6kYP"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 购买设备
POST /lease_product/buy_server.dspy
> Body 请求参数
```json
{
"order_id": "FfdfLDifMB01uME215fGV"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 供应商-空闲率-租售率
POST /lease_product/provider_rate.dspy
> Body 请求参数
```json
{
"providerid": "PaqJvHbAgtz9qHrPKsCNo"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 商品-空闲率-租售率
POST /lease_product/product_rate.dspy
> Body 请求参数
```json
{
"productid": "1"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
# 站内信
## GET 获取未读信息及数量
GET /message/get_unreadmsg.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|userid|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 获取所有通知消息
GET /message/get_msg.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|userid|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": [
{
"id": "string",
"senderid": "string",
"receiverid": "string",
"msgtitle": "string",
"msgtext": "string",
"msgtype": "string",
"msgstatus": "string",
"sendtime": "string",
"del_flg": "string",
"create_at": "string"
}
]
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|[object]|true|none||none|
|»» id|string|true|none||none|
|»» senderid|string|true|none||none|
|»» receiverid|string|true|none||none|
|»» msgtitle|string|true|none||none|
|»» msgtext|string|true|none||none|
|»» msgtype|string|true|none||none|
|»» msgstatus|string|true|none||none|
|»» sendtime|string|true|none||none|
|»» del_flg|string|true|none||none|
|»» create_at|string|true|none||none|
## GET 获取已读通知消息
GET /message/get_readmsg.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|userid|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": [
{
"id": "string",
"senderid": "string",
"receiverid": "string",
"msgtitle": "string",
"msgtext": "string",
"msgtype": "string",
"msgstatus": "string",
"sendtime": "string",
"del_flg": "string",
"create_at": "string"
}
]
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|[object]|true|none||none|
|»» id|string|false|none||none|
|»» senderid|string|false|none||none|
|»» receiverid|string|false|none||none|
|»» msgtitle|string|false|none||none|
|»» msgtext|string|false|none||none|
|»» msgtype|string|false|none||none|
|»» msgstatus|string|false|none||none|
|»» sendtime|string|false|none||none|
|»» del_flg|string|false|none||none|
|»» create_at|string|false|none||none|
## POST 发送消息通知
POST /message/add_msg.dspy
> Body 请求参数
```json
"{\r\n \"senderid\":\"HPSInnrL8VpSm2WNRK9oO\",\r\n \"receiverid\": [\"1\",\"2\"], //单个的话字符串和列表都可以,多个的话写列表\r\n \"msgtitle\":\"账户余额变动通知\",\r\n \"msgtype\":\"产品服务\",\r\n \"msgtext\": \"尊敬的用户您好截至目前您的可用金余额为5000.00元您的余额不足以支付本月的消费系统将在48小时内停止服务请您及时充值\"\r\n}"
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "string"
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
## POST 修改消息状态
POST /message/up_msg.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|msgid|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "string"
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
## POST 删除通知消息
POST /message/del_msg.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "string"
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
## GET 获取所有站内信模板
GET /message/getmsg_config.dspy
> 返回示例
> 200 Response
```json
{
"status": true,
"data": [
null
]
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» data|[any]|true|none||none|
## POST 新增站内信模板
POST /message/addmsg_config.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|msgtype|query|string| 否 |none|
|msgtext|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "string"
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
## POST 删除站内信模板
POST /message/delmsg_config.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{
"status": true
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
## POST 修改站内信模板
POST /message/upmsg_config.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |none|
|msgtype|query|string| 否 |none|
|msgtext|query|string| 否 |none|
> 返回示例
> 404 Response
```
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|404|[Not Found](https://tools.ietf.org/html/rfc7231#section-6.5.4)|none|Inline|
### 返回数据结构
## POST 修改发送状态 可以发送
POST /message/is_msg.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "string"
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
## POST 修改发送状态 取消发送
POST /message/not_msg.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "string"
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
# 文档管理
## POST 上传文档
POST /doc/upload_doc.dspy
> Body 请求参数
```json
{
"user_name": "韩明",
"file_type": "amet velit officia",
"title": "手传特拉",
"file_path": "dolore do deserunt a"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
|» id|body|string| 是 |none|
|» user_name|body|string| 否 |上传者|
|» file_type|body|string| 否 |文件类型|
|» title|body|string| 否 |标题|
|» file_path|body|string| 否 |文件路径|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 获取文档列表
POST /doc/get_doc_list.dspy
> Body 请求参数
```json
"{\n // \"kind\":1,\n // \"doc_type\":1\n}"
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 修改数据
POST /doc/update_doc.dspy
> Body 请求参数
```json
{
"id": "dE1we7zWMxfyBmofrDmuy",
"user_name": "韩明",
"file_type": "amet velit officia",
"title": "手传特拉",
"status": 0,
"del_flag": 0
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
|» id|body|string| 是 |none|
|» user_name|body|string| 否 |上传者|
|» file_type|body|string| 否 |文件类型|
|» title|body|string| 否 |标题|
|» file_path|body|string| 否 |文件路径|
|» status|body|integer| 否 |状态0不展示1:展示|
|» del_flg|body|string| 否 |删除标志|
#### 枚举值
|属性|值|
|---|---|
|» status|0|
|» status|1|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST health
POST /zabbix/health.dspy
> Body 请求参数
```json
{}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
|» id|body|string| 是 |none|
|» user_name|body|string| 否 |上传者|
|» file_type|body|string| 否 |文件类型|
|» title|body|string| 否 |标题|
|» file_path|body|string| 否 |文件路径|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
# 悬浮窗
## POST 配置销售二维码名片
POST /floating/add_picture.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|userid|query|string| 否 |none|
|picture|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 配置机构二维码名片
POST /floating/add_opicture.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|picture|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 展示销售二维码名片
GET /floating/get_picture.dspy
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 展示机构二维码名片
GET /floating/get_opicture.dspy
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 联系我们
GET /floating/contact.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|userid|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 申请试用
POST /floating/apply.dspy
> Body 请求参数
```json
{
"userid": "n23WjC9yEpq8ixMnQTeQB",
"customer": "张佳栋",
"phone": "18317316386",
"unit": "开元云",
"product": "1",
"resources": [
"A800",
"H100"
],
"vcode": "123"
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 200 Response
```json
{
"userid": "n23WjC9yEpq8ixMnQTeQB",
"customer": "张佳栋",
"phone": "18317316386",
"unit": "开元云",
"product": "1",
"resources": [
"A800",
"H100"
]
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
## GET 短信发送
GET /pub/sms_send_code.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|mobile|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
# 智算产品
## POST 客户展示智算产品
POST /product_smart/get_smart.dspy
> Body 请求参数
```yaml
type: A100
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|type|query|string| 否 |none|
|body|body|object| 否 |none|
|» type|body|string| 否 |none|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": [
{
"id": "string",
"product_model": "string",
"location": "string",
"scale": "string",
"leadtime": "string",
"update_date": "string",
"brand": "string",
"resource_type": "string",
"card_type": "string",
"card_interface": "string",
"cpu": "string",
"memory": "string",
"system_disk": "string",
"data_disk": "string",
"data_network": "string",
"card_network": "string",
"outer_bandwidth": "string",
"shared_storage": "string",
"address": "string"
}
]
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|[object]|true|none||none|
|»» id|string|true|none||none|
|»» product_model|string|true|none||none|
|»» location|string|true|none||none|
|»» scale|string|true|none||none|
|»» leadtime|string|true|none||none|
|»» update_date|string|true|none||none|
|»» brand|string|true|none||none|
|»» resource_type|string|true|none||none|
|»» card_type|string|true|none||none|
|»» card_interface|string|true|none||none|
|»» cpu|string|true|none||none|
|»» memory|string|true|none||none|
|»» system_disk|string|true|none||none|
|»» data_disk|string|true|none||none|
|»» data_network|string|true|none||none|
|»» card_network|string|true|none||none|
|»» outer_bandwidth|string|true|none||none|
|»» shared_storage|string|true|none||none|
|»» address|string|true|none||none|
## GET 销售展示智算产品
GET /product_smart/get_smart.dspy
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": [
null
]
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|[any]|true|none||none|
## POST 销售修改智算产品
POST /product_smart/up_smart.dspy
> Body 请求参数
```json
{
"id": "BOqT_nHGxAZSeHK8IZ1Kb",
"product_model": "HGX-A800-80G-Nvlink",
"location": "嘉兴平湖",
"scale": "20",
"leadtime": "已售",
"brand": "张佳栋",
"resource_type": "裸金属",
"card_type": "A800(80G)*8",
"card_interface": "SXM4",
"cpu": "Intel-8358-2.6GHz-32C*2",
"memory": "DDR4-3200-64G*32",
"system_disk": "SATA-SSD-960G*2",
"data_disk": "NVMe-SSD-7.68T*2",
"data_network": "HCA 1Pot HDR200G MCX653105A-HDAT*4",
"card_network": "10Gbps 2PortLC-MM *1",
"outer_bandwidth": "1",
"shared_storage": "1",
"address": 1,
"test_claim": "收费",
"yearly_rant": "100",
"quarterly_rent": "150",
"monthly_rent": "200",
"remark": "240801到期",
"type": 13
}
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|body|body|object| 否 |none|
> 返回示例
> 502 Response
```
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|502|[Bad Gateway](https://tools.ietf.org/html/rfc7231#section-6.6.3)|none|Inline|
### 返回数据结构
## POST 销售删除智算产品
POST /product_smart/del_smart.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 批量添加智算产品
POST /product_smart/batch_add_zhisuan.dspy
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
# 京东云
## GET 检验手机号是否已经同步
GET /jdcloud/check_user_info.dspy
已经同步返回 false
没有同步返回 true
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|mobile|query|string| 否 |检验手机号是否已经同步|
|userid|query|string| 否 |用户id|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 发送短信到指定手机号
GET /jdcloud/send_verify_code.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|mobile|query|string| 否 |发送短信到指定手机号|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 创建京东用户
GET /jdcloud/create_user.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|userid|query|string| 否 |用户userid|
|username|query|string| 否 |用户username|
|mobile|query|string| 否 |用户手机号|
|verificationcode|query|string| 否 |用户输入的短信验证码|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 用户登录
GET /jdcloud/jdcloud_auth.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|userid|query|string| 否 |用户id|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
# 首都云/私有网络
## GET 查询VPC信息
GET /capital/describe_vpc.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 否 |用户的orgid|
|RegionCode|query|string| 否 |地域|
|AvailableZoneCode|query|string| 否 |地域可用区|
|flag|query|string| 否 |当客户点进去VPC页面的时候传这个字段|
> 返回示例
> 500 Response
```
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|500|[Internal Server Error](https://tools.ietf.org/html/rfc7231#section-6.6.1)|none|Inline|
### 返回数据结构
## GET 创建一个VPC
GET /capital/create_vpc.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|RegionCode|query|string| 否 |none|
|VPCName|query|string| 否 |none|
|VPCSegment|query|string| 否 |none|
|VPCSegmentType|query|string| 否 |none|
|BandwidthType|query|string| 否 |none|
|AvailableZoneCode|query|string| 否 |none|
|SubnetName|query|string| 否 |none|
|SubnetSegment|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 删除一个VPC
GET /capital/delete_vpc.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|VPCId|query|string| 否 |VPC的id|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 查询子网信息
GET /capital/describe_subnet.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 是 |none|
|RegionCode|query|string| 是 |none|
|Keyword|query|string| 否 |none|
|PageNumber|query|string| 否 |none|
|VPCId|query|string| 否 |none|
|AvailableZoneCode|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{
"Code": "string",
"status": true,
"msg": "string"
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» Code|string|true|none||none|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
## GET 创建一个子网
GET /capital/create_subnet.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|VPCId|query|string| 否 |none|
|SubnetName|query|string| 否 |none|
|SubnetSegment|query|string| 否 |none|
|AvailableZoneCode|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 删除一个子网
GET /capital/delete_subnet.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|SubnetId|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{
"Code": "string",
"status": true,
"msg": "string"
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» Code|string|true|none||none|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
## GET 查询虚拟出网网关
GET /capital/describe_virtual_gateway.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|RegionCode|query|string| 否 |none|
|Keyword|query|string| 否 |none|
|PageNumber|query|string| 否 |none|
|VPCId|query|string| 否 |none|
|AvailableZoneCode|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 创建一个虚拟出网网关
GET /capital/create_virtual_gateway.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|VPCId|query|string| 否 |none|
|AvailableZoneCode|query|string| 否 |none|
|VirtualGateWayName|query|string| 否 |none|
|VirtualGateWaySegment|query|string| 否 |none|
|Type|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 删除一个虚拟出网网关
GET /capital/delete_virtual_gateway.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|VirtualGateWayId|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 查询EIP
GET /capital/describe_eip.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 否 |none|
|RegionCode|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 创建一个EIP
GET /capital/create_eip.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 否 |none|
|RegionCode|query|string| 否 |none|
|AvailableZoneId|query|string| 否 |none|
|BandwidthType|query|string| 否 |带宽类型|
|BillScheme|query|string| 否 |BandwIdth固定带宽BandwIdthMonth固定带宽包月|
|Qos|query|integer| 否 |带宽大小|
|Size|query|integer| 否 |创建个数|
|Description|query|string| 否 |none|
|SubjectId|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 变更EIP
GET /capital/update_eip.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|EIPId|query|string| 否 |none|
|Description|query|string| 否 |none|
|Qos|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 删除一个EIP
GET /capital/delete_eip.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|EIPId|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 绑定EIP到子网IP
GET /capital/bind_eip.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|EIPId|query|string| 否 |none|
|NetId|query|string| 否 |none|
|IP|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET EIP从子网IP解绑
GET /capital/unbind_eip.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|EIPId|query|string| 否 |none|
|NetId|query|string| 否 |none|
|IP|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 查询共享带宽
GET /capital/describe_bandwidth.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|RegionCode|query|string| 否 |none|
|AvailableZoneCode|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 创建一个共享带宽
GET /capital/create_bandwidth.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|RegionCode|query|string| 否 |none|
|Name|query|string| 否 |none|
|AvailableZoneCode|query|string| 否 |none|
|BandwidthType|query|string| 否 |none|
|BillScheme|query|string| 否 |none|
|Qos|query|string| 否 |none|
|NETID|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 变更共享带宽
GET /capital/update_bandwidth.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|BandwidthId|query|string| 否 |none|
|Qos|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 删除一个共享带宽
GET /capital/delete_bandwidth.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|BandwidthId|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 共享带宽添加EIP
GET /capital/bandwidth_add_eip.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|BandwidthId|query|string| 否 |none|
|EIPIdList|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 共享带宽移除EIP
GET /capital/bandwidth_remove_eip.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|EIPIdList|query|string| 否 |none|
|Delete|query|string| 否 |none|
|RegionCode|query|string| 否 |none|
|BandwidthType|query|string| 否 |none|
|BillScheme|query|string| 否 |none|
|Qos|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 查询子网/虚拟出网网关/公网 IP 信息
GET /capital/ip_list.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|NetId|query|string| 否 |none|
|IPType|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 查询子网/虚拟出网网关 下的EIP
GET /capital/net_eip_info.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|NetIdList|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 保留IP并绑定EIP
GET /capital/eip_batch_bind_and_reserve_ip.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|AvailableZoneCode|query|string| 否 |none|
|Ips|query|string| 否 |none|
|NetId|query|string| 否 |none|
|AddressList|query|string| 否 |none|
|EIPList|query|string| 否 |none|
|Description|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 查询子网IP使用信息
GET /capital/ip_usage.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|NetId|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 获取线路类型
GET /capital/get_vpc_band_width.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|siteId|query|string| 否 |地域接口中返回的AzId|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 获取EIP价格
GET /capital/get_eip_price.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|user_orgid|query|string| 否 |必填|
|duration|query|string| 否 |包月时长 1表示购买一个月 (新增) 不是必填|
|isMounth|query|string| 否 |是否包月 0否 1是|
|size|query|string| 否 |eip数量(个)|
|siteId|query|string| 否 |获取地域中返回的AzId|
|bandwidthConfIdStr|query|string| 否 |根据siteId获取的线路类型|
|qos|query|string| 否 |带宽值(mbps)|
|isToMonth|query|string| 否 |包月购买时,是否到月底 0购买整月 1到月底 (新增)|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
# 首都云/网络安全组
## GET 查看安全组
GET /capital/ecs_describe_security_groups.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 否 |必传|
|RegionCode|query|string| 否 |none|
|SecurityGroupId|query|string| 否 |none|
|SecurityGroupName|query|string| 否 |none|
|PageNumber|query|string| 否 |none|
|PageSize|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 创建安全组
GET /capital/ecs_create_security_group.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 否 |none|
|SecurityGroupName|query|string| 否 |none|
|SecurityGroupDescription|query|string| 否 |none|
|GroupInterconnected|query|boolean| 否 |none|
|RegionCode|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 修改安全组属性
GET /capital/ecs_modify_security_group_attribute.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|SecurityGroupId|query|string| 否 |none|
|SecurityGroupName|query|string| 否 |none|
|SecurityGroupDescription|query|string| 否 |none|
|GroupInterconnected|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 安全组删除
GET /capital/ecs_delete_security_group.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|SecurityGroupId|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 安全组添加规则
GET /capital/ecs_create_security_group_policies.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|SecurityGroupId|query|string| 否 |none|
|Ingress|query|string| 否 |传递数组 数组中具体字段见文档|
|Egress|query|string| 否 |传递数组 数组中具体字段见文档|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 查询安全组规则
GET /capital/ecs_describe_security_group_policies.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|SecurityGroupId|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 安全组规则删除
GET /capital/ecs_delete_security_group_policies.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|SecurityGroupId|query|string| 否 |none|
|PolicyIds|query|array[string]| 否 |传递数组|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 安全组修改规则
GET /capital/ecs_modify_security_group_policies.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|SecurityGroupId|query|string| 否 |none|
|SecurityGroupPolicySet|query|string| 否 |传递数组 数组内容见文档|
|Reset|query|string| 否 |true 或者是 false|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 安全组绑定实例
GET /capital/ecs_associate_security_groups.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|SecurityGroupId|query|string| 否 |none|
|RegionCode|query|string| 否 |none|
|InstanceSet|query|string| 否 |传递数组 具体见文档|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 安全组解绑实例
GET /capital/ecs_disassociate_security_groups.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|SecurityGroupId|query|string| 否 |none|
|InstanceIds|query|string| 否 |传递数组 具体见文档|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 修改/重置实例下安全组和优先级
GET /capital/ecs_modify_security_groups_priority.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|InstanceId|query|string| 否 |none|
|RegionCode|query|string| 否 |none|
|SecurityGroupSet|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 查询安全组关联实例统计
GET /capital/ecs_describe_security_group_association_statistics.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 否 |none|
|SecurityGroupId|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 获取协议端口授权对象
GET /capital/u_get_protoclol_port.dspy
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
# 首都云/ECS/GPU云主机相关
## GET 获取地区可用区信息
GET /capital/region_az_info.dspy
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 获取计算类型族
GET /capital/ecs_family_info.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|AvailableZoneCode|query|string| 是 |可用区接口返回的内容|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 获取镜像信息
GET /capital/image_info.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|AvailableZoneCode|query|string| 是 |可用区接口返回的内容|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 获取云盘配额
GET /capital/describe_disk_quota.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|AvailableZoneCode|query|string| 否 |有效的地域|
> 返回示例
> 200 Response
```json
{
"RequestId": "string",
"status": true,
"data": {
"QuotaList": [
{
"TotalQuota": 0,
"UsedQuota": 0,
"FreeQuota": 0,
"DiskFeature": "string"
}
]
},
"msg": "string"
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» RequestId|string|true|none||none|
|» status|boolean|true|none||none|
|» data|object|true|none||none|
|»» QuotaList|[object]|true|none||none|
|»»» TotalQuota|integer|false|none||none|
|»»» UsedQuota|integer|false|none||none|
|»»» FreeQuota|integer|false|none||none|
|»»» DiskFeature|string|false|none||none|
|» msg|string|true|none||none|
## GET 获取云服务器列表
GET /capital/ecs_list.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 否 |必传|
|AvailableZoneCode|query|string| 否 |none|
|VpcId|query|string| 否 |none|
|SearchInfo|query|string| 否 |none|
|PageNumber|query|string| 否 |none|
|PageSize|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 获取云服务器价格
GET /capital/get_ecs_price.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|user_orgid|query|string| 否 |none|
|AvailableZoneCode|query|string| 否 |none|
|EcsFamilyName|query|string| 否 |none|
|Cpu|query|string| 否 |none|
|Ram|query|string| 否 |none|
|Gpu|query|string| 否 |none|
|BillingMethod|query|string| 否 |none|
|Duration|query|string| 否 |none|
|IsToMonth|query|string| 否 |none|
|SystemDiskInfo|query|string| 否 |none|
|Number|query|string| 否 |none|
|DataDiskInfo|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 获取云服务器配置详情
GET /capital/get_ecs_detail.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|EcsId|query|string| 否 |云服务器id|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 批量获取云服务器状态
GET /capital/get_ecs_status.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|EcsIds|query|array[string]| 是 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 获取事件信息
GET /capital/describe_event.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|EventId|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 云服务器监控信息
GET /capital/instance_monitor.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|EcsId|query|string| 否 |none|
|StartTime|query|string| 否 |none|
|EndTime|query|string| 否 |none|
|Indicators|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 获取客户测试账户
GET /capital/describe_account_subject.dspy
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 创建云服务器
GET /capital/create_ecs.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|userid|query|string| 否 |none|
|user_orgid|query|string| 否 |none|
|amount|query|string| 否 |none|
|AvailableZoneCode|query|string| 否 |none|
|EcsFamilyName|query|string| 否 |none|
|Cpu|query|string| 否 |none|
|Ram|query|string| 否 |none|
|Gpu|query|string| 否 |none|
|Number|query|string| 否 |none|
|BillingMethod|query|string| 否 |none|
|ImageId|query|string| 否 |none|
|SystemDisk|query|string| 否 |none|
|DataDisk|query|string| 否 |没有数据盘时 传递空数组|
|VpcInfo|query|string| 否 |none|
|SubnetInfo|query|string| 否 |none|
|SecurityGroups|query|string| 否 |none|
|Name|query|string| 否 |none|
|StartNumber|query|string| 否 |none|
|Password|query|string| 否 |密码|
|PubnetInfo|query|string| 否 |购买EIP|
|Duration|query|string| 否 |none|
|IsToMonth|query|string| 否 |none|
|IsAutoRenewal|query|string| 否 |none|
|TestAccount|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 批量操作云服务器开、关机、重启
GET /capital/operate_ecs.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|EcsId|query|array[string]| 否 |云服务器id列表 注意使用双引号|
|OpType|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 删除云服务器
GET /capital/delete_ecs.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|EcsIds|query|string| 否 |none|
|DeleteEip|query|string| 否 |可选|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 修改实例管理员用户密码
GET /capital/ecs_reset_password.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|EcsIds|query|string| 否 |none|
|Password|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 修改云服务器名称
GET /capital/change_ecs_name.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|EcsId|query|string| 否 |none|
|Name|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 创建私有镜像
GET /capital/create_image.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|EcsId|query|string| 否 |none|
|Name|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 删除节点镜像
GET /capital/delete_image.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|ImageIds|query|string| 否 |none|
|AvailableZoneCode|query|string| 否 |可选|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 同步镜像到目标节点
GET /capital/sync_image.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|ImageId|query|string| 否 |none|
|AvailableZoneCodes|query|string| 否 |none|
|TestAccount|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 获取云服务器远程连接地址
GET /capital/describe_instance_vnc_url.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|EcsId|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 获取弹性云服务器ECS计算类型规格及其销售状况
GET /capital/describe_zone_instance_type.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|AvailableZoneCode|query|string| 否 |none|
|EcsFamilyName|query|string| 否 |none|
|Cpu|query|string| 否 |可选|
|Ram|query|string| 否 |可选|
|Gpu|query|string| 否 |可选|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
# 互联云
## POST 检测账号是否存在
POST /casdao/register_existence.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|username|query|string| 否 |用户名 使用手机号查询没有作用 只能是用户名|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
# 优刻得
## GET 获取主机列表
GET /ucloud/describe_uhost_instance.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|user_orgid|query|string| 否 |none|
|region|query|string| 否 |none|
|Zone|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 同步用户
GET /ucloud/ucloud_create_user.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 否 |用户orgid 已经创建过的会返回false|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 获取某个地域下可售/售罄机型
POST /ucloud/describe_available_instance_types.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|Region|query|string| 否 |none|
|MachineType|query|string| 否 |none|
|Zone|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 获取镜像
GET /ucloud/describe_image.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 否 |用户orgid|
|region|query|string| 否 |地域|
|ImageType|query|string| 否 |none|
|FuncType|query|string| 否 |none|
|OsType|query|string| 否 |none|
|Offset|query|string| 否 |none|
|Limit|query|string| 否 |none|
|Zone|query|string| 否 |none|
> 返回示例
> 200 Response
```
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 获取地域可用区
GET /ucloud/get_local_regions.dspy
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "string",
"data": [
{
"Name": "string",
"Region": "string",
"Zone": [
{
"ZoneName": "string",
"ZoneId": "string"
}
]
}
]
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
|» data|[object]|true|none||none|
|»» Name|string|true|none||none|
|»» Region|string|true|none||none|
|»» Zone|[object]|true|none||none|
|»»» ZoneName|string|true|none||none|
|»»» ZoneId|string|true|none||none|
## GET 获取eip价格
GET /ucloud/get_eip_price.dspy
调试链接: https://console.ucloud.cn/uapi/detail?id=GetEIPPrice
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|user_orgid|query|string| 否 |none|
|Region|query|string| 否 |调试链接说明: https://console.ucloud.cn/uapi/detail?id=GetEIPPrice|
|OperatorName|query|string| 否 |none|
|Bandwidth|query|string| 否 |none|
|ChargeType|query|string| 否 |none|
|Quantity|query|string| 否 |none|
|PayMode|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "string",
"data": {
"PriceSet": [
{
"ChargeType": "string",
"OriginalPrice": 0,
"Price": 0,
"PurchaseValue": 0
}
]
}
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
|» data|object|true|none||none|
|»» PriceSet|[object]|true|none||none|
|»»» ChargeType|string|false|none||none|
|»»» OriginalPrice|number|false|none||none|
|»»» Price|number|false|none||none|
|»»» PurchaseValue|integer|false|none||none|
## GET 获取主机和硬盘价格
GET /ucloud/get_uhost_instance_price.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|user_orgid|query|string| 否 |none|
|Region|query|string| 否 |none|
|Zone|query|string| 否 |none|
|CPU|query|number| 否 |none|
|Memory|query|integer| 否 |内存大小。单位MB。范围 [1024, 262144]取值为1024的倍数|
|Count|query|integer| 否 |购买台数,范围[1,5]|
|ImageId|query|string| 否 |none|
|GPU|query|integer| 否 |none|
|ChargeType|query|string| 否 |计费模式。枚举值为: \\ > Year按年付费 \\ > Month按月付费\\ > Dynamic按小时付费 |
|NetCapability|query|string| 否 |网络增强。枚举值Normal不开启; Super开启网络增强1.0。 默认值为Normal。|
|MachineType|query|array[string]| 否 |none|
|GpuType|query|string| 否 |none|
|Quantity|query|integer| 否 |购买时长。默认: 1。按小时购买(Dynamic)时无需此参数。 月付时此参数传0代表了购买至月末。|
|UDSetUHostInstance|query|boolean| 否 |none|
|ShowPriceDetails|query|boolean| 否 |none|
|Disks|query|array[string]| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 创建云主机
POST /ucloud/create_uhost_instance.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 否 |none|
|userid|query|string| 否 |none|
|amount|query|string| 否 |none|
|Region|query|string| 否 |none|
|Zone|query|string| 否 |none|
|ImageId|query|string| 否 |none|
|LoginMode|query|string| 否 |none|
|Password|query|string| 否 |none|
|Name|query|string| 否 |none|
|Tag|query|string| 否 |none|
|ChargeType|query|string| 否 |none|
|CPU|query|string| 否 |none|
|Memory|query|string| 否 |none|
|GpuType|query|string| 否 |none|
|GPU|query|string| 否 |none|
|NetCapability|query|string| 否 |none|
|HotplugFeature|query|string| 否 |none|
|MachineType|query|string| 否 |none|
|MaxCount|query|string| 否 |none|
|Disks|query|string| 否 |none|
|NetworkInterface|query|string| 否 |none|
|Quantity|query|string| 否 |购买时长。默认:值 1。按小时购买Dynamic/Postpay时无需此参数。 月付时此参数传0代表购买至月末。|
|SecurityGroupId|query|string| 否 |安全组|
|MinimalCpuPlatform|query|string| 否 |最低cpu平台|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 关闭主机
GET /ucloud/stop_uhost_instance.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 是 |用户orgid|
|region|query|string| 是 |地域|
|Zone|query|string| 否 |none|
|UHostId|query|string| 是 |UHost实例ID|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 启动主机
GET /ucloud/start_uhost_instance.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 是 |用户orgid|
|region|query|string| 是 |地域|
|Zone|query|string| 否 |none|
|UHostId|query|string| 是 |UHost实例ID|
|DiskPassword|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 重启主机
GET /ucloud/reboot_uhost_instance.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 是 |用户orgid|
|region|query|string| 是 |地域|
|Zone|query|string| 否 |none|
|UHostId|query|string| 是 |UHost实例ID|
|DiskPassword|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 获取登录VNC信息
GET /ucloud/get_uhost_instance_vnc_info.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 否 |none|
|region|query|string| 否 |none|
|UHostId|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "string",
"data": {
"UHostId": "string",
"UhostId": "string",
"VncIP": "string",
"VncPassword": "string",
"VncPort": 0
}
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
|» data|object|true|none||none|
|»» UHostId|string|true|none||none|
|»» UhostId|string|true|none||none|
|»» VncIP|string|true|none||none|
|»» VncPassword|string|true|none||none|
|»» VncPort|integer|true|none||none|
## GET 删除主机
GET /ucloud/terminate_uhost_instance.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 否 |none|
|region|query|string| 否 |none|
|UHostId|query|string| 否 |none|
|ReleaseEIP|query|string| 否 |删除主机时是否释放绑定的EIP。默认为false。|
|ReleaseUDisk|query|string| 否 |删除主机时是否同时删除挂载的数据盘。默认为false。|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 重置密码
GET /ucloud/reset_uhost_instance_password.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 否 |none|
|region|query|string| 否 |none|
|Zone|query|string| 否 |none|
|UHostId|query|string| 否 |none|
|Password|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
# 优刻得/安全组-防火墙
## GET 获取防火墙基本协议
GET /ucloud/get_firewall_protocol.dspy
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 创建防火墙
POST /ucloud/create_firewall.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 否 |用户orgid|
|region|query|string| 否 |地域|
|name|query|string| 否 |安全组名称|
|remark|query|string| 否 |防火墙描述|
|rule|query|array[string]| 否 |数组,防火墙规则|
|tag|query|string| 否 |业务组 默认Default|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 获取防火墙信息
GET /ucloud/describe_firewall.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 是 |用户orgid|
|region|query|string| 是 |地域|
|ResourceId|query|string| 否 |不是必填绑定防火墙组的资源ID|
|limit|query|string| 否 |返回数据长度默认为50最大10000000|
|offset|query|string| 否 |列表起始位置偏移量默认为0|
|ResourceType|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 删除防火墙
GET /ucloud/delete_firewall.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 否 |用户orgid|
|region|query|string| 否 |地域|
|FWId|query|string| 否 |防火墙资源ID|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 更新防火墙规则
GET /ucloud/update_firewall.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 否 |用户orgid|
|region|query|string| 否 |地域|
|FWId|query|string| 否 |防火墙资源ID|
|rule|query|array[string]| 否 |数组,防火墙规则|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 更新防火墙属性
GET /ucloud/update_firewall_attribute.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 否 |用户orgid|
|region|query|string| 否 |地域|
|FWId|query|string| 否 |安全组ID|
|name|query|string| 否 |更新得安全组名称|
|tag|query|string| 否 |更新的安全组标签|
|remark|query|string| 否 |更新的安全组备注|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 获取防火墙绑定资源
GET /ucloud/describe_firewall_resource.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 否 |用户orgid|
|region|query|string| 否 |地域|
|FWId|query|string| 否 |安全组ID|
|limit|query|string| 否 |none|
|offset|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 绑定到资源上
GET /ucloud/grant_firewall.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 是 |用户orgid|
|region|query|string| 是 |地域|
|FWId|query|string| 是 |防火墙ID|
|ResourceType|query|string| 否 |默认uhost, 绑定防火墙的资源类型|
|ResourceId|query|string| 是 |所应用资源ID|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 解绑资源
GET /ucloud/disassociate_firewall.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 是 |用户orgid|
|region|query|string| 是 |地域|
|FWId|query|string| 是 |防火墙ID|
|ResourceType|query|string| 否 |默认uhost 绑定防火墙的资源类型|
|ResourceId|query|string| 是 |所应用资源ID|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
# 优刻得/外网-EIP
## GET 创建弹性IP
GET /ucloud/allocate_eip.dspy
参数说明线上调试链接: https://console.ucloud.cn/uapi/detail?id=AllocateEIP
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 否 |none|
|userid|query|string| 否 |none|
|amount|query|string| 否 |none|
|Region|query|string| 否 |none|
|OperatorName|query|string| 否 |none|
|Bandwidth|query|string| 否 |none|
|Tag|query|string| 否 |none|
|ChargeType|query|string| 否 |none|
|Quantity|query|string| 否 |# 购买的时长, 默认: 1|
|PayMode|query|string| 否 |none|
|Name|query|string| 否 |none|
|Count|query|string| 否 | # 固定值 购买EIP数量默认值为1|
|Remark|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 绑定EIP
GET /ucloud/bind_eip.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 否 |none|
|Region|query|string| 否 |none|
|EIPId|query|string| 否 |none|
|ResourceType|query|string| 否 |none|
|ResourceId|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 获取EIP信息
GET /ucloud/describe_eip.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 否 |none|
|Region|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 解绑EIP
GET /ucloud/un_bind_eip.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 否 |none|
|Region|query|string| 否 |none|
|EIPId|query|string| 否 |none|
|ResourceType|query|string| 否 |none|
|ResourceId|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 删除释放EIP
GET /ucloud/release_eip.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 否 |none|
|Region|query|string| 否 |none|
|EIPId|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
# 微信支付
## GET 获取登录code
GET /kpi/get_code_state.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|state|query|string| 否 |前端生成的state|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 微信支付开启
POST /customer/add_weixpay.dspy
> Body 请求参数
```
string
```
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|total|query|integer| 否 |1块钱传递100 1毛钱传递10 1分钱传递1|
|userid|query|string| 否 |充值用户id|
|body|body|string| 否 |none|
> 返回示例
> 200 Response
```json
{
"recharge_logdict_id": "string"
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» recharge_logdict_id|string|true|none|向查询接口传递|none|
## GET 微信支付状态
GET /customer/get_weixinpaytype
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|recharge_logdict_id|query|string| 否 |add接口返回值|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 获取appid
GET /kpi/get_wechat_appid.dspy
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 登录接口
GET /user/loginUser.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|wechatCode|query|string| 否 |获取登录code接口返回的code|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
# 小程序
## GET 查询用户供给
GET /kpi/user_supply.dspy
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "string",
"data": [
{
"id": "string",
"createby": "string",
"userid": null,
"updatetime": "string",
"remark": "string",
"companyid": null,
"supplytitle": "string",
"supplydesc": "string",
"supplytype": "string",
"provincename": "string",
"cityname": "string",
"framepowerway": "string",
"framepower": "string",
"frameheight": "string",
"frameprice": "string",
"supplynum": "string",
"supplybegin": "string",
"supplyend": "string",
"endtime": null,
"status": "string",
"bwoperator": "string",
"bwroutetype": "string",
"bwbandwidthprice": "string",
"bwbandwidthnum": "string",
"bwipprice": "string",
"bwippriceunit": "string",
"bwipnum": "string",
"gpuabilitytype": "string",
"gpuapplypflops": "string",
"gpuresource": "string",
"gputype": "string",
"gpunet": "string",
"gpunum": "string",
"gpuoccasion": "string",
"gpuprice": "string",
"supplynodeid": null,
"nodedataid": null,
"ordernum": "string",
"recommendstatus": "string",
"priceunit": "string",
"brandname": "string",
"modelname": "string",
"infopicurl": "string",
"goodstype": "string",
"goodsnumber": "string",
"goodsprice": "string",
"goodsaddress": "string",
"contactuser": "string",
"contactusermobile": "string",
"companyname": null,
"batchnum": null,
"expiretime": "string",
"arrivetime": "string",
"del_flg": null,
"create_at": "string"
}
]
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
|» data|[object]|true|none||none|
|»» id|string|true|none||none|
|»» createby|string|true|none||none|
|»» userid|null|true|none||none|
|»» updatetime|string¦null|true|none||none|
|»» remark|string¦null|true|none||none|
|»» companyid|null|true|none||none|
|»» supplytitle|string|true|none||none|
|»» supplydesc|string|true|none||none|
|»» supplytype|string|true|none||none|
|»» provincename|string¦null|true|none||none|
|»» cityname|string¦null|true|none||none|
|»» framepowerway|string¦null|true|none||none|
|»» framepower|string¦null|true|none||none|
|»» frameheight|string¦null|true|none||none|
|»» frameprice|string¦null|true|none||none|
|»» supplynum|string¦null|true|none||none|
|»» supplybegin|string¦null|true|none||none|
|»» supplyend|string¦null|true|none||none|
|»» endtime|null|true|none||none|
|»» status|string|true|none||none|
|»» bwoperator|string¦null|true|none||none|
|»» bwroutetype|string¦null|true|none||none|
|»» bwbandwidthprice|string¦null|true|none||none|
|»» bwbandwidthnum|string¦null|true|none||none|
|»» bwipprice|string¦null|true|none||none|
|»» bwippriceunit|string¦null|true|none||none|
|»» bwipnum|string¦null|true|none||none|
|»» gpuabilitytype|string¦null|true|none||none|
|»» gpuapplypflops|string¦null|true|none||none|
|»» gpuresource|string¦null|true|none||none|
|»» gputype|string¦null|true|none||none|
|»» gpunet|string¦null|true|none||none|
|»» gpunum|string¦null|true|none||none|
|»» gpuoccasion|string¦null|true|none||none|
|»» gpuprice|string¦null|true|none||none|
|»» supplynodeid|null|true|none||none|
|»» nodedataid|null|true|none||none|
|»» ordernum|string|true|none||none|
|»» recommendstatus|string|true|none||none|
|»» priceunit|string¦null|true|none||none|
|»» brandname|string¦null|true|none||none|
|»» modelname|string¦null|true|none||none|
|»» infopicurl|string¦null|true|none||none|
|»» goodstype|string¦null|true|none||none|
|»» goodsnumber|string¦null|true|none||none|
|»» goodsprice|string¦null|true|none||none|
|»» goodsaddress|string¦null|true|none||none|
|»» contactuser|string¦null|true|none||none|
|»» contactusermobile|string¦null|true|none||none|
|»» companyname|null|true|none||none|
|»» batchnum|null|true|none||none|
|»» expiretime|string¦null|true|none||none|
|»» arrivetime|string¦null|true|none||none|
|»» del_flg|null|true|none||none|
|»» create_at|string|true|none||none|
## GET 查询用户需求
GET /kpi/user_demand.dspy
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "string",
"data": [
{
"id": "string",
"userid": null,
"remark": null,
"companyid": null,
"demandtitle": "string",
"demanddesc": "string",
"brandname": "string",
"modelname": "string",
"demandtype": "string",
"provincename": "string",
"cityname": "string",
"budgetprice": "string",
"demandbegin": "string",
"demandend": "string",
"endtime": null,
"status": "string",
"contactuser": "string",
"contactusermobile": "string",
"ordernum": "string",
"recommendstatus": "string",
"priceunit": "string",
"del_flg": null,
"create_at": "string"
}
]
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
|» data|[object]|true|none||none|
|»» id|string|true|none||none|
|»» userid|null|true|none||none|
|»» remark|null|true|none||none|
|»» companyid|null|true|none||none|
|»» demandtitle|string|true|none||none|
|»» demanddesc|string|true|none||none|
|»» brandname|string¦null|true|none||none|
|»» modelname|string¦null|true|none||none|
|»» demandtype|string|true|none||none|
|»» provincename|string|true|none||none|
|»» cityname|string¦null|true|none||none|
|»» budgetprice|string|true|none||none|
|»» demandbegin|string|true|none||none|
|»» demandend|string|true|none||none|
|»» endtime|null|true|none||none|
|»» status|string|true|none||none|
|»» contactuser|string|true|none||none|
|»» contactusermobile|string|true|none||none|
|»» ordernum|string|true|none||none|
|»» recommendstatus|string|true|none||none|
|»» priceunit|string¦null|true|none||none|
|»» del_flg|null|true|none||none|
|»» create_at|string|true|none||none|
## GET 运维获取供应key
GET /operation/get_kyy_supply_key.dspy
> 返回示例
> 200 Response
```json
{
"data": [
"string"
]
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» data|[string]|true|none||none|
## GET 运维添加供应产品
GET /operation/kyy_add_supply.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 否 |none|
|basic_info|query|string| 否 |集群基础信息|
|filepath|query|string| 否 |none|
|remark|query|string| 否 |备注信息|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "string"
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
## GET 运维查找id查找/条件查找)供应产品
GET /operation/get_kyy_supply.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 否 |none|
|find_key|query|string| 否 |不传递 就是查找全部|
|id|query|string| 否 |id查找 上面两个字段不传|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "string",
"data": [
{
"id": "string",
"orgid": "string",
"basic_info": "string",
"excel_info": null,
"file_path": "string",
"remark": "string",
"del_flg": "string",
"create_at": "string"
}
]
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
|» data|[object]|true|none||none|
|»» id|string|false|none||none|
|»» orgid|string|false|none||none|
|»» basic_info|string|false|none||none|
|»» excel_info|null|false|none||none|
|»» file_path|string|false|none||none|
|»» remark|string|false|none||none|
|»» del_flg|string|false|none||none|
|»» create_at|string|false|none||none|
## GET 运维删除供应产品
GET /operation/delete_kyy_supply.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|delete_id|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 运维更新供应产品
GET /operation/update_kyy_supply.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |查询接口获取到的id|
|basic_info|query|string| 否 |none|
|remark|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 运维单独上传excel
GET /operation/excel_to_html_with_merges.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 否 |none|
|update_id|query|string| 否 | 新添加该值不传递, 要上传/更新的id|
|filepath|query|string| 否 |文件路径|
|remark|query|string| 否 |备注|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
# k8s服务
## GET 用户创建实例
GET /k8cloud/user_create_pod.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|storage|query|string| 否 |存储 /G|
|cpu|query|string| 否 |cpu /核|
|memory|query|string| 否 |内存 /G|
|gpu|query|string| 否 |gpu /卡|
|gpumem|query|string| 否 |gpu /单卡M|
|image|query|string| 否 |镜像|
|orgid|query|string| 否 |用户orgid|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 运营获取集群资源
GET /k8cloud/get_available_resources.dspy
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 用户获取实例
GET /k8cloud/user_get_instance.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 否 |用户orgid|
|customer_goods_id|query|string| 否 |资源ID|
> 返回示例
> 404 Response
```
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|404|[Not Found](https://tools.ietf.org/html/rfc7231#section-6.5.4)|none|Inline|
### 返回数据结构
## GET 用户删除实例
GET /k8cloud/cloud_instance_delete.dspy
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |用户获取实例返回的id|
|podname|query|string| 否 |pod名称|
|pvcname|query|string| 否 |pvc名称|
|customer_goods_id|query|string| 否 |用户资源ID|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
# kboss容器云/算力中心服务核心API
## POST 集群节点绑定/解绑标签
POST /pcapi/api/v1/cluster/common/node_label_opt
给某算力中心的某集群中的某节点打标签
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|host|query|string| 是 |none|
|port|query|boolean| 是 |none|
|user|query|string| 是 |none|
|psssword|query|string| 是 |none|
|worker_node|query|string| 是 |目标节点|
|label|query|string| 是 |目标标签|
|opt|query|string| 是 |标签操作label绑定unlabel解绑|
|Authorization|header|string| 是 |base64加密ssh账号密码信息示例是ysh,Kyy@123456|
#### 详细说明
**Authorization**: base64加密ssh账号密码信息示例是ysh,Kyy@123456
用于pcapi服务校验客户端下面是python写法
headers = basic_auth_headers('ssh账号', 'ssh密码')
> 返回示例
```json
{
"status": true,
"info": "节点绑定标签成功",
"data": {}
}
```
```json
{
"status": false,
"info": "switch node failed",
"data": {
"state": "uncordon",
"drain": false
}
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» info|string|true|none||none|
|» data|object|true|none||none|
|»» node_name|string|true|none||none|
|»» force|boolean|true|none||none|
## GET 集群节点库存检测接口
GET /pcapi/api/v1/cluster/common/determine_accommodat
接收平台传来的若干产品组合JSON和集群上下文信息
用于判断某集群中是否至少有一个可用节点来承载这个资源实例的创建
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|kubeconfig|query|string| 是 |集群上下文信息|
|resources|query|string| 是 |平台请求资源详情|
|Authorization|header|string| 是 |base64加密ssh账号密码信息示例是ysh,Kyy@123456|
#### 详细说明
**Authorization**: base64加密ssh账号密码信息示例是ysh,Kyy@123456
用于pcapi服务校验客户端下面是python写法
headers = basic_auth_headers('ssh账号', 'ssh密码')
> 返回示例
> 200 Response
```json
[
"置灰产品id_2",
"置灰产品id_3",
"置灰产品id_4"
]
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 创建k8s集群(master)
POST /pcapi/api/v1/cluster/common/new_cluster
通过ssh远程调度安装kubernetes集群的控制节点
返回集群节点加入凭证及kubeconfig文件
供工作节点注册加入和后续API管理Kubernetes资源
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|cluster_type|query|string| 否 |集群类型,目前默认(只)支持kubernetes|
|host|query|string| 是 |安装控制节点的IP|
|port|query|integer| 是 |安装控制节点ssh端口|
|user|query|string| 是 |远程ssh认证用户|
|psssword|query|string| 是 |远程ssh认证密码|
|role|query|string| 是 |集控制节点角色|
|Authorization|header|string| 是 |base64加密ssh账号密码信息示例是ysh,Kyy@123456|
#### 详细说明
**Authorization**: base64加密ssh账号密码信息示例是ysh,Kyy@123456
用于pcapi服务校验客户端下面是python写法
headers = basic_auth_headers('ssh账号', 'ssh密码')
> 返回示例
```json
{
"status": true,
"info": "operate success",
"data": "kubeadm join 192.168.0.3:6443 --token nt80u6.gzpj9dxsrw79270c --discovery-token-ca-cert-hash sha256:7b33439b2a1b37a8d8938513bd45405f57c3255771c3b9b9b90af448d886b0c2 \n apiVersion: v1 clusters: - cluster: certificate-authority-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURCVENDQWUyZ0F3SUJBZ0lJTGd4THlGMjM3QmN3RFFZSktvWklodmNOQVFFTEJRQXdGVEVUTUJFR0ExVUUKQXhNS2EzVmlaWEp1WlhSbGN6QWVGdzB5TlRBME1ETXdOelE1TXpWYUZ3MHpOVEEwTURFd056VTBNelZhTUJVeApFekFSQmdOVkJBTVRDbXQxWW1WeWJtVjBaWE13Z2dFaU1BMEdDU3FHU0liM0RRRUJBUVVBQTRJQkR3QXdnZ0VLCkFvSUJBUURQUm5hdkZmNXBTWWUvVmJLc0s2SnhEazhyc2hsc2h5WnNNRk8xZDVhZG45Z055T0wwR2NtbEsrQ1EKVklKSnF3RklJeSsxUVlEd3VRMytzczEwYmV2Y2lqM1BRanluaXJRRkNhRlA0NHh2ZkEyK2thV1FYeTVncGwrMwpjSkI1K1MxVmx2Vi9aSHQ5SXgwNjFCdHB4dE5oMUkxNS9IYk4rWmVNNnEvd3lxUW93Y01ub2pyNDltYkxxOWNwCnFSem5LL2FwWXlBYnljUk9uWWlIZ0FjQWdsclFOTjBKUEJZd2dRd0pIUmlIcGhtVFBkdmY2ckxkNFR0dFl2OXgKdmZIRDNjVUdwZkVBUElaNUJBVi9ZM3p5V0pSbDQzSFV2Ri9jemNDQ01jOVlUd3VXaEpxb2doUUZUdnNuSVZzTwovNEtKQzRwQXFSenJlZFRWdExmMXgzQlRpVCt0QWdNQkFBR2pXVEJYTUE0R0ExVWREd0VCL3dRRUF3SUNwREFQCkJnTlZIUk1CQWY4RUJUQURBUUgvTUIwR0ExVWREZ1FXQkJUZjRZbzBpOVpIZC9ObzdkYWZrZVRTbzVzdzN6QVYKQmdOVkhSRUVEakFNZ2dwcmRXSmxjbTVsZEdWek1BMEdDU3FHU0liM0RRRUJDd1VBQTRJQkFRRERLalJWVVp1YwppckJ4QWdZWnBBeW5NSHdWQTF6YStVT09FM1U0MEMyVTN0VGgrK1BsN2o2ZGJZTWNWdEFvTXhxaDRiVjNQRW5SCmtWcWNaN2NjS3FGSXduZlhHK0ZGTVVwazVoTk0xLzc2UXBobi9OWk8zSStSVjFtV0VOU1BzM1FZdEVoWktXUlgKYWRXZ0krK0x1cUZyZVpTVzVjRXNnMWZDODFtd3dhTXdkRHZWcFJZMFEwWlBsMGFqTURsSlNDaDNOSXpQOS82bwpndXBrY1JSdWtvRGlscWVraXlrRWJ5OVJCWHZIbXo3Q0sxQ1ZnZXZJTDZrVnRPRFF2Rm10Qm1WemlRNWFDcXJOCmtZNmd6OUNGMkdKc2M4UkZrcWQxbzdMelhPakJsTkdzN2k2WmdEOE1Ca2tiank2RmZDZWVndmxOOGFCU2VmblEKZ2ZNOVptbnRpMVNDCi0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K server: https://192.168.0.3:6443 name: kubernetes contexts: - context: cluster: kubernetes user: kubernetes-admin name: kubernetes-admin@kubernetes current-context: kubernetes-admin@kubernetes kind: Config preferences: {} users: - name: kubernetes-admin user: client-certificate-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURJRENDQWdpZ0F3SUJBZ0lIVGZPdmU4TzBJVEFOQmdrcWhraUc5dzBCQVFzRkFEQVZNUk13RVFZRFZRUUQKRXdwcmRXSmxjbTVsZEdWek1CNFhEVEkxTURRd016QTNORGt6TlZvWERUSTJNRFF3TXpBM05UUXpOMW93TkRFWApNQlVHQTFVRUNoTU9jM2x6ZEdWdE9tMWhjM1JsY25NeEdUQVhCZ05WQkFNVEVHdDFZbVZ5Ym1WMFpYTXRZV1J0CmFXNHdnZ0VpTUEwR0NTcUdTSWIzRFFFQkFRVUFBNElCRHdBd2dnRUtBb0lCQVFEWVJJT3h0TWFkOWs2T1JsL1UKZ2ZnZVJDQkpjZmMrc2ZFbzkxeW4vc05KZFVIbWRuamtMaC9wRjcwZkdoVWZ3R2t5dzR0WkdpTFFNR0xwclpyeAphVTdJT0R3a3I2ejl1SkQzaHlFZExhZGpZT0NOMHJhUFNpV05GV1QwSVN2UVBjZzNGQkQ2YmFHb2RtSmN5YnBPCk5qY1VZZmh5WEVqRXMwOU92QzhhZUJCbm9Na1RkRk53dlFaYXE2LzR3eTUyN0k3aUdIUVdvL21JS1VUVHhzRFgKMzJnVXErZmRVMEh5STJJeWhNMGdwT29uNURCVmRUbWsyMkZsVHk0ZWJ3Q3R4QmMvRCtpelhuZFpVd2tHMExMVwpqTEc4L3JkWTZ4WFJDVkhHM1BWNURRK0JvNEpnMTUwWWFSUnBKeDJYSGxad3N5OFBZcWVLcTM0b1pxczRTRndmCjJCY3JBZ01CQUFHalZqQlVNQTRHQTFVZER3RUIvd1FFQXdJRm9EQVRCZ05WSFNVRUREQUtCZ2dyQmdFRkJRY0QKQWpBTUJnTlZIUk1CQWY4RUFqQUFNQjhHQTFVZEl3UVlNQmFBRk4vaGlqU0wxa2QzODJqdDFwK1I1TktqbXpEZgpNQTBHQ1NxR1NJYjNEUUVCQ3dVQUE0SUJBUUFTR0phc1EyQXpLdVNZWFdtMGlYOUhnWTNZQUJGMHpYRzRKZU5lCjREekxkOHF2TXlqRGMwUWFWSUtNbWswemhrV1ZIQzNKSEZWalRXcDBUNFE0TlVBMk8rOXFob1p0a25NL3dsQlUKS0Zab3ZHNFd6SU1sdVJwL21ZRUIzL3dHbkFPV01MdEtBSWJ3d3FRVWl4VW5KYkxCeG4xQ1k5ZERzb1o4VmZZMQp4N2R0WDBJWjJkbU1ETTVLV1lrbW5tQWJBR0tXazZBR3pVWEpWNmlTU3laYjlWLzNuN3hmZlpZRkVDQXBQNk91CjhmRGdIVjBCdEMxS3VmU0tsTitLMnF2aXAzMlRjRHdoTEVHQWQ2aU9qYzhBRXlHelJmOWY4M0xUSGJ2dGtibjYKR0VQQlBQSExSTFlQWEh0OE9LbHdNOThwQWxkSkIyWEJ6UEttc0JFeGFOSWRXd2FTCi0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K client-key-data: LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBMkVTRHNiVEduZlpPamtaZjFJSDRIa1FnU1hIM1BySHhLUGRjcC83RFNYVkI1blo0CjVDNGY2UmU5SHhvVkg4QnBNc09MV1JvaTBEQmk2YTJhOFdsT3lEZzhKSytzL2JpUTk0Y2hIUzJuWTJEZ2pkSzIKajBvbGpSVms5Q0VyMEQzSU54UVErbTJocUhaaVhNbTZUalkzRkdINGNseEl4TE5QVHJ3dkduZ1FaNkRKRTNSVApjTDBHV3F1ditNTXVkdXlPNGhoMEZxUDVpQ2xFMDhiQTE5OW9GS3ZuM1ZOQjhpTmlNb1ROSUtUcUorUXdWWFU1CnBOdGhaVTh1SG04QXJjUVhQdy9vczE1M1dWTUpCdEN5MW95eHZQNjNXT3NWMFFsUnh0ejFlUTBQZ2FPQ1lOZWQKR0drVWFTY2RseDVXY0xNdkQyS25pcXQrS0dhck9FaGNIOWdYS3dJREFRQUJBb0lCQVFDQ1djRjZ3YmdaQzVWTApvZFV1MCt1RjZvLy9WS2F1YmpncDlmWXQ5NXNqVW42Vzl2OWtvUHh3MVBNVHBQZm9mR09yeWpyYVNLdUZDalVFCkhiUlBINmJ4ZlJ1YkRSdmFqWDByQkpLTDhMRjhiNjdKTEtFR2VxMXBmT1N0VkxVQXZjeElqbHF4WnBUU1loQmwKVnQxcE9MbzRHZGpTclJiYklDeUVDMTdrdUV0QytZV3lFb3E5MmlLNVdMTHdHM2hwVzhyVlVLVzZ2T0cyd0l4bAp0RWhMSGpOOWtnb1VVa2pORG9tK2FlcVVxeXhDeUZEdll4UmdhVTd0Y3pJSk52SUk3aDYxaExQbEZtMmxGQ0xlCjhjeTdKUDMyV1ZDSUpUMHhRNkJJRTdvVld4WWIvMzFVSHYrTHg0UHlBcFpiZ3piMjlvQm54VjhneUxnVjZDWW0Kd1psQlQ4S2hBb0dCQU9tMFZqTkVHVm5EaXNsTDFVVkNKYzFCVU1KcjNwalQvV0g4d2s0UzJYWmhwRWdVQmpQYgpDM3Y5czkxNHh6SjhXYWFtUFZPVGZMRmxzRWFLNnJpMFhjQkhXQi9ob1R1aDVKaDByS1RNWWFMTm9SdU00VCt6Ci9zUG1aY1ZMVXcxdHFmd3U5YlVpSTJCQURQNFM2MUFubk5hSnF1UmFWRk8vT1pqZUkvbHJzMVBSQW9HQkFPem0KVTNvcjNuSDh4WHI2WDNJUjRDM3l3TkZLaHNVVE44VmdWNWRVL0U5RmRHTldUVzRkWHdCK01jeUlQMlFLbjlycwpmcU9Cb0c3NlRKVHF0YzVobjY5Q014c1lVNVdPcDhOZW9oaXplY1luSTFjTk94TmZwdzZDdUZVb1pmTFFxU1dICmJ4dEVEaFkrcXJjR2FLZ3VzMk1uMkJ2cEg1bUhCTk5DL05pSVZ1WTdBb0dBZFlnVEhkOHVuSjBockJCdUpsR1kKN3p2YzRKb2RMV0RYZWpNQ2lQOGp6RXhZc1VNWXgzVnV0aUdtRmtpS2JWSnFSOHdzNVY0MEJJY3VlcHVjWmQyWApsSDZNekNQTjBVNmV4eWxPTmVidlowL2dxUmxWb3BMa0dpTkJwVkkzWjNaeVdYaElhNXJLamJwSWpuSjNVeTFJCnpBQWFLSk5nKzJrZEQwc1FibnlDaURFQ2dZQVFDZVA2OEg5bDdqd2NnRmozNnhmblpIa0RjbTAvYUhhdEtVR2sKNEQ4WXl0WC9aN2RrVGg3QmRNbkFWRFVlZTgyb3o3d2ZLOGFGM1BKVVhyT2lYbCttU1BBVzFJWE1LVlZZVjg3WApwMGNHVUY0SEpjRXJKWjIwME1yVUVTRWQyRnlyU3NrTjZvU2RvdTZCNTdBc09zVXdZR0UwT290R0pLc0I5cFlSCnZ1RkxRd0tCZ1FEZVFuRElPaUQ2SEpmc2loTC8xZ3dnS0hVeVc2WGYrNFhQODd3ZlVXT1N0SEpza29oTkZHdk8KSnpNdUFvc2V2UGFWdElCSXBZbFgycUlaaHlhdyt2VW9BUTZYRnR3WjM1QWo1T1VPbVFQQUJWbkVXZUJZRzdSaQpaZmhEU2NTek5xb3ozWFpjMnA4a2VMWE1XOWJsTDNNOTdOMFRLbExuZ0NrSTdoaXJMVGE2T0E9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo= "
}
```
```json
{
"status": false,
"info": "operate failed",
"data": ""
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» info|string|true|none||none|
|» data|string|true|none||none|
## POST 新增工作节点(worker)
POST /pcapi/api/v1/cluster/common/new_worker
通过ssh远程调度安装kubernetes集群的工作节点
并自动输入加入集群指令,完成工作节点注册
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|cluster_type|query|string| 否 |集群类型,目前默认(只)支持kubernetes|
|host|query|string| 是 |安装控制节点的IP|
|port|query|integer| 是 |安装控制节点ssh端口|
|user|query|string| 是 |远程ssh认证用户|
|psssword|query|string| 是 |远程ssh认证密码|
|role|query|string| 是 |工作节点角色|
|join_command|query|string| 是 |加入集群指令|
|Authorization|header|string| 是 |base64加密ssh账号密码信息示例是ysh,Kyy@123456|
#### 详细说明
**Authorization**: base64加密ssh账号密码信息示例是ysh,Kyy@123456
用于pcapi服务校验客户端下面是python写法
headers = basic_auth_headers('ssh账号', 'ssh密码')
> 返回示例
```json
{
"status": true,
"info": "operate success",
"data": ""
}
```
```json
{
"status": false,
"info": "operate failed",
"data": ""
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||状态|
|» info|string|true|none||详情|
|» data|string|true|none||数据|
## GET 获取某集群所有资源实例
GET /pcapi/api/v1/cluster/common/get_cluster_pods
通过拿到指定集群的ssh协议参数
远程获取该集群下的所有计算资源实例信息
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|host|query|string| 是 |none|
|port|query|integer| 是 |none|
|user|query|string| 是 |none|
|psssword|query|string| 是 |none|
|Authorization|header|string| 是 |base64加密ssh账号密码信息示例是ysh,Kyy@123456|
#### 详细说明
**Authorization**: base64加密ssh账号密码信息示例是ysh,Kyy@123456
用于pcapi服务校验客户端下面是python写法
headers = basic_auth_headers('ssh账号', 'ssh密码')
> 返回示例
```json
{
"status": true,
"info": "operate success",
"data": {
"total": 2,
"rows": [
{
"pod_namespace": "my-namespace",
"pod_name": "mysql-deployment-548dbbfc8f-dxltl",
"pod_ready": "0/1",
"pod_running": "ImagePullBackOff",
"pod_restart": "0",
"pod_age": "17h",
"pod_ip": "10.244.5.3",
"pod_node": "k8s-worker-20250408132243",
"pod_nominated_node": "<none>",
"pod_readiness_gates": "<none>"
},
{
"pod_namespace": "my-namespace",
"pod_name": "mysql-deployment-6fc6584bd6-6prqc",
"pod_ready": "0/1",
"pod_running": "ImagePullBackOff",
"pod_restart": "0",
"pod_age": "17h",
"pod_ip": "10.244.5.6",
"pod_node": "k8s-worker-20250408132243",
"pod_nominated_node": "<none>",
"pod_readiness_gates": "<none>"
}
]
}
}
```
```json
{
"status": false,
"info": "operate failed",
"data": ""
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» info|string|true|none||none|
|» data|object|true|none||none|
|»» total|integer|true|none||none|
|»» rows|[object]|true|none||none|
|»»» pod_namespace|string|true|none||none|
|»»» pod_name|string|true|none||none|
|»»» pod_ready|string|true|none||none|
|»»» pod_running|string|true|none||none|
|»»» pod_restart|string|true|none||none|
|»»» pod_age|string|true|none||none|
|»»» pod_ip|string|true|none||none|
|»»» pod_node|string|true|none||none|
|»»» pod_nominated_node|string|true|none||none|
|»»» pod_readiness_gates|string|true|none||none|
## GET 获取某集群所有计算节点
GET /pcapi/api/v1/cluster/common/get_cluster_nodes
通过拿到指定集群的ssh协议参数
远程获取该集群下的所有计算节点信息
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|host|query|string| 是 |none|
|port|query|integer| 是 |none|
|user|query|string| 是 |none|
|psssword|query|string| 是 |none|
|Authorization|header|string| 是 |base64加密ssh账号密码信息示例是ysh,Kyy@123456|
#### 详细说明
**Authorization**: base64加密ssh账号密码信息示例是ysh,Kyy@123456
用于pcapi服务校验客户端下面是python写法
headers = basic_auth_headers('ssh账号', 'ssh密码')
> 返回示例
```json
{
"status": true,
"info": "operate success",
"data": {
"total": 2,
"rows": [
{
"node_name": "k8s-master",
"node_status": "Ready",
"node_role": "control-plane",
"node_age": "5d18h",
"node_version": "v1.28.2",
"node_internalip": "192.168.0.3",
"node_externalip": "<none>",
"node_osversion": "Ubuntu 22.04.1 LTS",
"node_kernelversion": "5.15.0-91-generic",
"node_containeruntime": "containerd://1.7.24"
},
{
"node_name": "k8s-worker-20250408132243",
"node_status": "Ready",
"node_role": "<none>",
"node_age": "21h",
"node_version": "v1.28.2",
"node_internalip": "192.168.0.2",
"node_externalip": "<none>",
"node_osversion": "Ubuntu 22.04.1 LTS",
"node_kernelversion": "5.15.0-91-generic",
"node_containeruntime": "containerd://1.7.24"
}
]
}
}
```
```json
{
"status": false,
"info": "operate failed",
"data": ""
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» info|string|true|none||none|
|» data|object|true|none||none|
|»» total|integer|true|none||none|
|»» rows|[object]|true|none||none|
|»»» pod_namespace|string|true|none||none|
|»»» pod_name|string|true|none||none|
|»»» pod_ready|string|true|none||none|
|»»» pod_running|string|true|none||none|
|»»» pod_restart|string|true|none||none|
|»»» pod_age|string|true|none||none|
|»»» pod_ip|string|true|none||none|
|»»» pod_node|string|true|none||none|
|»»» pod_nominated_node|string|true|none||none|
|»»» pod_readiness_gates|string|true|none||none|
## POST 开发中-删除指定集群某工作节点
POST /pcapi/api/v1/cluster/common/delete_cluster_node
1.通过ssh协议及集群资源实例参数远程删除指定集群下某计算资源实例删除失败原因可能很多统一在结果中告知
2.若强制删除则系统先会标记该节点为不可用再驱逐所有pod到其他节点最后再删除
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|host|query|string| 是 |none|
|port|query|integer| 是 |none|
|user|query|string| 是 |none|
|psssword|query|string| 是 |none|
|node_name|query|string| 是 |节点名称(主机名)|
|force|query|boolean| 否 |是否强制删除(--force --grace-period=0选项)|
|Authorization|header|string| 是 |base64加密ssh账号密码信息示例是ysh,Kyy@123456|
#### 详细说明
**Authorization**: base64加密ssh账号密码信息示例是ysh,Kyy@123456
用于pcapi服务校验客户端下面是python写法
headers = basic_auth_headers('ssh账号', 'ssh密码')
> 返回示例
```json
{
"status": true,
"info": "delete node success",
"data": {
"node_name": "k8s-worker-20250408132243",
"force": true
}
}
```
```json
{
"status": false,
"info": "delete node failed",
"data": {
"node_name": "k8s-worker-20250408132243",
"force": true
}
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» info|string|true|none||none|
|» data|string|true|none||none|
## POST 开发中-切换某集群某工作节点状态
POST /pcapi/api/v1/cluster/common/node_state_switch
暂停/恢复kubernetes集群中某工作节点的可用状态暂停即暂时不再接收新的pod调度
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|host|query|string| 是 |none|
|port|query|boolean| 是 |none|
|user|query|string| 是 |none|
|psssword|query|string| 是 |none|
|state|query|string| 是 |暂停还是恢复|
|darin|query|boolean| 否 |是否驱逐现有pod默认不驱逐|
|Authorization|header|string| 是 |base64加密ssh账号密码信息示例是ysh,Kyy@123456|
#### 详细说明
**Authorization**: base64加密ssh账号密码信息示例是ysh,Kyy@123456
用于pcapi服务校验客户端下面是python写法
headers = basic_auth_headers('ssh账号', 'ssh密码')
#### 枚举值
|属性|值|
|---|---|
|state|cordon|
|state|uncordon|
> 返回示例
```json
{
"status": true,
"info": "switch node success",
"data": {
"state": "cordon",
"drain": false
}
}
```
```json
{
"status": false,
"info": "switch node failed",
"data": {
"state": "uncordon",
"drain": false
}
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» info|string|true|none||none|
|» data|object|true|none||none|
|»» node_name|string|true|none||none|
|»» force|boolean|true|none||none|
## POST 通过YAML实例化资源实例
POST /pcapi/api/v1/cluster/common/yaml_apply_delete
每次被调用都接收对方传来的新的yml文件内容实例化k8s集群Pod资源
其中包含创建修改删除kubernetes资源实例等操作
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|cluster_type|query|string| 否 |集群类型 |
|host|query|string| 否 |主机地址 |
|port|query|integer| 否 |端口 |
|user|query|string| 否 |用户名 |
|psssword|query|string| 否 |密码 |
|kubeconfig|query|string| 否 |集群上下文 |
|action|query|string| 否 |操作 |
|namespace_name|query|string| 否 |命名空间名称 |
|serviceaccount_name|query|string| 否 |命名空间服务认证名称 |
|podcd_name|query|string| 否 |Pod引擎名称 |
|service_name|query|string| 否 |资源服务名称 |
|clusterid|query|string| 否 |集群ID |
|cpcid|query|string| 否 |算力中心ID|
|source_name|query|string| 否 |资源名称 |
|instance_type|query|string| 否 |实例类型 |
|source_replicasetnum|query|string| 否 |副本数量 |
|source_authuser|query|string| 否 |认证用户名 |
|source_authpasswd|query|string| 否 |认证密码|
|source_podengine|query|string| 否 |Pod引擎类型 |
|pod_imagepath|query|string| 否 |基础镜像|
|source_memrate|query|string| 否 |内存限制 |
|source_cpurate|query|string| 否 |CPU 限制|
|source_selflabel|query|string| 否 |资源实例标签 |
|source_portmode|query|string| 否 |端口映射模式 |
|source_restartpolicy|query|string| 否 |重启策略 |
|source_apiport|query|string| 否 |集群内映射端口 |
|source_insideport|query|string| 否 |容器内监听端口 |
|source_outsideport|query|string| 否 |集群外映射端口 |
|source_mountpath|query|string| 否 |容器内挂载路径 |
|source_storagelimits|query|string| 否 |存储盘大小|
|Authorization|header|string| 是 |base64加密ssh账号密码信息示例是ysh,Kyy@123456|
#### 详细说明
**Authorization**: base64加密ssh账号密码信息示例是ysh,Kyy@123456
用于pcapi服务校验客户端下面是python写法
headers = basic_auth_headers('ssh账号', 'ssh密码')
> 返回示例
```json
{
"status": true,
"info": "operate success",
"data": null
}
```
```json
{
"status": false,
"info": "operate failed",
"data": null
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» info|string|true|none||none|
|» data|string|true|none||none|
# kboss容器云/算力中心管理
## GET 算力中心展示
GET /dev/cpcc/cpclist/get_cpclist.dspy
获取所有算力中心(列表信息),纯数据库操作
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|page|query|string| 否 |none|
|rows|query|string| 否 |none|
|sort|query|string| 否 |none|
|orgid|query|string| 否 |线下调试/非登录态可指定组织ID进行操作|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "算力中心数据查询成功",
"data": {
"total": 2,
"rows": [
{
"id": "-z2r4CFb-7rcfugNn2wIr",
"name": "首都算力中心1",
"orgid": "mIWUHBeeDM8mwAFPIQ8pS",
"pcapi_url": "https://opencomputing.ai",
"api_user": "ysh",
"api_pwd": "Kyy@123456",
"enable_date": "2025-05-16",
"expire_date": "2026-06-17",
"contactname": "Ahexl",
"contactphone": "13141005621",
"row_num_": 1
},
{
"id": "AROU9udKtPNyh0AZtO_WY",
"name": "测试pcapi",
"orgid": "mIWUHBeeDM8mwAFPIQ8pS",
"pcapi_url": "https://trial.kaiyuancloud.cn",
"api_user": "ysh",
"api_pwd": "QUZVcXg5V1p1STMybG5Ia5XIAWA87bQMgZw=",
"enable_date": "2025-04-13",
"expire_date": "2025-04-18",
"contactname": "kyy",
"contactphone": "",
"row_num_": 2
}
]
}
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» total|integer|true|none||none|
|» rows|[object]|true|none||none|
|»» id|string|true|none||none|
|»» name|string|true|none||none|
|»» orgid|string|true|none||none|
|»» pcapi_url|string|true|none||none|
|»» api_user|string|true|none||none|
|»» api_pwd|string|true|none||none|
|»» enable_date|string|true|none||none|
|»» expire_date|string|true|none||none|
|»» contactname|string|true|none||none|
|»» contactphone|string|true|none||none|
|»» orgid_text|string|true|none||none|
|»» row_num_|integer|true|none||none|
## POST 算力中心添加
POST /dev/cpcc/cpclist/add_cpclist.dspy
添加算力中心,纯数据库操作
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|name|query|string| 是 |算力中心名称|
|pcapi_url|query|string| 是 |算力中心API总址|
|api_user|query|string| 是 |算力中心接口账号|
|api_pwd|query|string| 是 |算力中心接口密码|
|contactname|query|string| 是 |联系人|
|contactphone|query|string| 是 |手机号|
|enable_date|query|string| 否 |启用日期|
|expire_date|query|string| 否 |停用日期|
|orgid|query|string| 否 |线下调试/非登录态可指定组织ID进行操作|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "新建算力中心成功",
"data": {
"api_pwd": "Kyy@123456",
"api_user": "ysh",
"contactname": "Ahexl",
"contactphone": "13141005621",
"enable_date": "2025-05-16",
"expire_date": "2026-06-17",
"name": "首都算力中心1",
"orgid": "mIWUHBeeDM8mwAFPIQ8pS",
"pcapi_url": "https://opencomputing.ai",
"id": "9Luu-tbsJmEEcJxoAkumM"
}
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
|» data|object|true|none||none|
|»» api_pwd|string|true|none||none|
|»» api_user|string|true|none||none|
|»» contactname|string|true|none||none|
|»» contactphone|string|true|none||none|
|»» enable_date|string|true|none||none|
|»» expire_date|string|true|none||none|
|»» name|string|true|none||none|
|»» orgid|string|true|none||none|
|»» pcapi_url|string|true|none||none|
|»» id|string|true|none||none|
## POST 算力中心更新
POST /dev/cpcc/cpclist/update_cpclist.dspy
更新某算力中心的基本数据,纯数据库操作
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 是 |算力中心ID|
|name|query|string| 是 |算力中心名称|
|pcapi_url|query|string| 是 |算力中心API总址|
|api_user|query|string| 是 |算力中心接口账号|
|api_pwd|query|string| 是 |算力中心接口密码|
|contactname|query|string| 是 |联系人|
|contactphone|query|string| 是 |手机号|
|enable_date|query|string| 否 |启用日期|
|expire_date|query|string| 否 |停用日期|
> 返回示例
```json
{
"status": true,
"msg": "更新算力中心成功",
"data": {
"api_pwd": "QUZVcXg5V1p1STMybG5Ia5aL/gkv7+gmSkA=",
"api_user": "修改后数据1",
"contactname": "Ahexl",
"contactphone": "13141005621",
"enable_date": "2025-05-16",
"expire_date": "2026-06-17",
"id": "gOHOm7Wm01OPnBUFeeVi8",
"name": "首都算力中心3",
"pcapi_url": "https://opencomputing.ai"
}
}
```
```json
{
"status": false,
"msg": "无算力中心ID"
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» widgettype|string|true|none||none|
|» options|object|true|none||none|
|»» title|string|true|none||none|
|»» cwidth|integer|true|none||none|
|»» cheight|integer|true|none||none|
|»» timeout|integer|true|none||none|
|»» message|string|true|none||none|
## POST 算力中心删除
POST /dev/cpcc/cpclist/delete_cpclist.dspy
删除某算力中心,纯数据库操作
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |算力中心展示接口返回的id|
|orgid|query|string| 否 |线下调试/非登录态可指定组织ID进行操作|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "删除算力中心成功",
"data": {
"id": "u8swLRSlyDt7IGpJurPVZ",
"orgid": "mIWUHBeeDM8mwAFPIQ8pS"
}
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» widgettype|string|true|none||none|
|» options|object|true|none||none|
|»» title|string|true|none||none|
|»» timeout|integer|true|none||none|
|»» cwidth|integer|true|none||none|
|»» cheight|integer|true|none||none|
|»» message|string|true|none||none|
# kboss容器云/算力设备管理
## GET 算力设备展示
GET /dev/cpcc/cpcnode/get_cpcnode.dspy
输入算力中心id展示该算力中心下所有算力设备包含已安装的和未安装的
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|cpcid|query|string| 是 |算力中心id|
|page|query|string| 否 |看哪页|
|rows|query|string| 否 |看多少行|
|sort|query|string| 否 |根据什么字段排序|
> 返回示例
```json
{
"status": true,
"msg": "获取算力设备成功",
"data": {
"total": 3,
"rows": [
{
"id": "1cV3nLWGD_YLqXm9OUWKU",
"cpcid": "AROU9udKtPNyh0AZtO_WY",
"name": "2-虚拟机ubuntu2204",
"clusterid": "4hBm8atruISOU2bs24t_N",
"node_status": "1",
"ip": "192.168.0.2",
"devicetype": "0",
"sshport": 22,
"adminuser": "root",
"adminpwd": "Yuanshenhong.1",
"enable_date": "2025-03-31",
"export_date": "2029-10-30",
"external_ip": "未设置",
"cpu_model": "STANDARD",
"cpu_stock": 0,
"memory_model": "STANDARD",
"memory_stock": 0,
"sysdisk_stock": 0,
"datadisk_stock": 0,
"gpu_model": "STANDARD",
"gpu_stock": 0,
"role": "worker",
"node_status_text": "占用",
"devicetype_text": "虚拟机",
"row_num_": 1
},
{
"id": "RJZ2GMHSWGVG7iRk_AJYm",
"cpcid": "AROU9udKtPNyh0AZtO_WY",
"name": "3-虚拟机ubuntu2204",
"clusterid": "4hBm8atruISOU2bs24t_N",
"node_status": "1",
"ip": "192.168.0.3",
"devicetype": "0",
"sshport": 22,
"adminuser": "root",
"adminpwd": "Yuanshenhong.1",
"enable_date": "2025-03-28",
"export_date": "9999-12-31",
"external_ip": "未设置",
"cpu_model": "STANDARD",
"cpu_stock": 0,
"memory_model": "STANDARD",
"memory_stock": 0,
"sysdisk_stock": 0,
"datadisk_stock": 0,
"gpu_model": "STANDARD",
"gpu_stock": 0,
"role": "master",
"node_status_text": "占用",
"devicetype_text": "虚拟机",
"row_num_": 2
},
{
"id": "ULwkzAj-pF-RYkJde3hbS",
"cpcid": "AROU9udKtPNyh0AZtO_WY",
"name": "假算力设备",
"clusterid": "4hBm8atruISOU2bs24t_X",
"node_status": "0",
"ip": "192.168.110.120",
"devicetype": "1",
"sshport": 22,
"adminuser": "ysh",
"adminpwd": "Kyy@123456",
"enable_date": "2025-06-04",
"export_date": "2025-06-04",
"external_ip": "未设置",
"cpu_model": "STANDARD",
"cpu_stock": 0,
"memory_model": "STANDARD",
"memory_stock": 0,
"sysdisk_stock": 0,
"datadisk_stock": 0,
"gpu_model": "STANDARD",
"gpu_stock": 0,
"role": "master",
"node_status_text": "空闲",
"devicetype_text": "物理机",
"row_num_": 3
}
]
}
}
```
```json
{
"status": false,
"msg": "无算力中心ID"
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
|» data|object|true|none||none|
|»» total|integer|true|none||none|
|»» rows|[object]|true|none||none|
|»»» id|string|true|none||设备id|
|»»» cpcid|string|true|none||算力中心id|
|»»» name|string|true|none||设备名称|
|»»» node_status|string|true|none||设备状态,占用/空闲|
|»»» clusterid|string|true|none||集群id|
|»»» ip|string|true|none||内网IP|
|»»» devicetype|string|true|none||设备类型,物理机/虚拟机|
|»»» sshport|integer|true|none||ssh端口|
|»»» adminuser|string|true|none||ssh用户|
|»»» adminpwd|string|true|none||ssh用户密码|
|»»» enable_date|string|true|none||启用日期|
|»»» export_date|string|true|none||结束日期|
|»»» external_ip|string|true|none||公网IP|
|»»» cpu_model|string|true|none||CPU硬件型号|
|»»» cpu_stock|integer|true|none||CPU核数量|
|»»» memory_model|string|true|none||内存硬件型号|
|»»» memory_stock|integer|true|none||内存大小按Gi|
|»»» sysdisk_stock|integer|true|none||系统盘大小按Gi|
|»»» datadisk_stock|integer|true|none||数据盘大小(按:Gi|
|»»» gpu_model|string|true|none||GPU型号格式:RTXABCD-32G|
|»»» gpu_stock|integer|true|none||GPU卡数量|
|»»» node_status_text|string|true|none||none|
|»»» devicetype_text|string|true|none||none|
|»»» cluster_name|string|true|none||所属集群,默认为空|
|»»» role|string|true|none||集群角色值为master控制/worker工作,默认为空|
|»»» row_num_|integer|true|none||none|
## POST 算力设备添加
POST /dev/cpcc/cpcnode/add_cpcnode.dspy
入网算力设备添加,纯数据库操作;
算力设备后续用作安装算力集群各角色节点
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|cpcid|query|string| 是 |算力中心ID|
|ip|query|string| 是 |IP地址|
|name|query|string| 是 |设备简称|
|devicetype|query|string| 是 |设备类型0是虚拟机1是物理机|
|sshport|query|string| 是 |SSH端口|
|adminuser|query|string| 是 |管理账号|
|adminpwd|query|string| 是 |管理密码|
|node_status|query|string| 是 |算力设备状态0是空闲1是占用|
|external_ip|query|string| 是 |公网IP|
|cpu_model|query|string| 是 |CPU型号|
|cpu_stock|query|integer| 是 |CPU库存量核为单位|
|memory_model|query|string| 是 |内存型号|
|memory_stock|query|integer| 是 |内存库存量Gi为单位|
|sysdisk_stock|query|integer| 是 |系统盘库存量Gi为单位|
|datadisk_stock|query|integer| 是 |数据盘库存量Gi为单位|
|gpu_model|query|string| 是 |GPU型号|
|gpu_stock|query|integer| 是 |GPU库存量卡为单位|
|role|query|string| 是 |集群角色|
|enable_date|query|string| 否 |启用日期|
|export_date|query|string| 否 |停用日期|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "新增算力设备成功",
"data": {
"adminpwd": "QUZVcXg5V1p1STMybG5Ia5aL/gkv7+gmSkA=",
"adminuser": "ysh",
"cpcid": "AROU9udKtPNyh0AZtO_WY",
"devicetype": "1",
"enable_date": "2025-05-16",
"export_date": "2026-06-17",
"ip": "192.168.0.8",
"name": "gpu设备1",
"node_status": "0",
"sshport": "22",
"id": "DeolAhhh_sE6UE9DMqDSa"
}
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» widgettype|string|true|none||none|
|» options|object|true|none||none|
|»» user_data|object|true|none||none|
|»»» _webbricks_|[string]|true|none||none|
|»»» width|[string]|true|none||none|
|»»» height|[string]|true|none||none|
|»»» _is_mobile|[string]|true|none||none|
|»»» cpcid|string|true|none||none|
|»»» ip|string|true|none||none|
|»»» name|string|true|none||none|
|»»» devicetype|string|true|none||none|
|»»» sshport|string|true|none||none|
|»»» adminuser|string|true|none||none|
|»»» adminpwd|string|true|none||none|
|»»» node_status|string|true|none||none|
|»»» enable_date|string|true|none||none|
|»»» export_date|string|true|none||none|
|»»» id|string|true|none||none|
|»» cwidth|integer|true|none||none|
|»» cheight|integer|true|none||none|
|»» title|string|true|none||none|
|»» timeout|integer|true|none||none|
|»» message|string|true|none||none|
## POST 算力设备更新
POST /dev/cpcc/cpcnode/update_cpcnode.dspy
更新某算力设备基本信息,
更新时密码加密那块每次都会加密,建议取消那块逻辑
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 是 |算力设备ID|
|cpcid|query|string| 是 |算力中心ID|
|ip|query|string| 是 |IP地址|
|name|query|string| 是 |设备简称|
|devicetype|query|string| 是 |设备类型0是虚拟机1是物理机|
|sshport|query|string| 是 |SSH端口|
|adminuser|query|string| 是 |管理账号|
|adminpwd|query|string| 是 |管理密码|
|node_status|query|string| 是 |算力设备状态|
|external_ip|query|string| 是 |公网IP|
|cpu_model|query|string| 是 |CPU型号|
|cpu_stock|query|integer| 是 |CPU库存量核为单位|
|memory_model|query|string| 是 |内存型号|
|memory_stock|query|integer| 是 |内存库存量Gi为单位|
|sysdisk_stock|query|integer| 是 |系统盘库存量Gi为单位|
|datadisk_stock|query|integer| 是 |数据盘库存量Gi为单位|
|gpu_model|query|string| 是 |GPU型号|
|gpu_stock|query|integer| 是 |GPU库存量卡为单位|
|role|query|string| 是 |集群角色|
|enable_date|query|string| 否 |启用日期|
|export_date|query|string| 否 |停用日期|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "更新算力中心成功",
"data": {
"adminpwd": "Kyy@123456",
"adminuser": "ysh",
"cpcid": "AROU9udKtPNyh0AZtO_WY",
"devicetype": "1",
"enable_date": "2025-05-16",
"export_date": "2026-06-17",
"id": "E71hIuIKvTr5D2w2Sxnc9",
"ip": "192.168.0.8",
"name": "gpu设备122cccc",
"node_status": "0",
"sshport": "22"
}
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» widgettype|string|true|none||none|
|» options|object|true|none||none|
|»» title|string|true|none||none|
|»» cwidth|integer|true|none||none|
|»» cheight|integer|true|none||none|
|»» timeout|integer|true|none||none|
|»» message|string|true|none||none|
## POST 算力设备移除
POST /dev/cpcc/cpcnode/delete_cpcnode.dspy
移除算力中心中的某个算力设备建议交互方式使用DELETE方法
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |算力设备查找返回的id|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "删除算力设备成功",
"data": {
"id": "Za8rOOFoacMZnbKoTVig2"
}
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» widgettype|string|true|none||none|
|» options|object|true|none||none|
|»» title|string|true|none||none|
|»» timeout|integer|true|none||none|
|»» cwidth|integer|true|none||none|
|»» cheight|integer|true|none||none|
|»» message|string|true|none||none|
# kboss容器云/标签管理
## GET 获取资源标签
GET /dev/cpcc/cpclabel/get_cpclabel.dspy
获取该算力中心下的所有资源标签,展示时尽量每行一个键值对
在新增资源实例配置接口前需要,同步获取相应节点标签,下拉框进行选择(传 {key 单位 value} 给后端)
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|orgid|query|string| 否 |用户组织id|
> 返回示例
```json
{
"status": true,
"msg": "获取资源标签成功",
"data": {
"total": 4,
"rows": [
{
"id": "3h1CPE1jv7TwF52A4urJd",
"name": "非GPU设备",
"orgid": "mIWUHBeeDM8mwAFPIQ8pS",
"labeltype": "1",
"label_key": "kyy-gpu",
"symbol": "=",
"label_value": "false",
"update_time": "2025-05-28 14:42:04",
"row_num_": 1
},
{
"id": "APP5429j81a4kBmmrhi52",
"name": "GPU设备",
"orgid": "mIWUHBeeDM8mwAFPIQ8pS",
"labeltype": "1",
"label_key": "kyy-gpu",
"symbol": "=",
"label_value": "true",
"update_time": "2025-05-28 14:42:06",
"row_num_": 2
},
{
"id": "Fx1xo6bXcFLp9pLLXgpRN",
"name": "测试标签",
"orgid": "mIWUHBeeDM8mwAFPIQ8pS",
"labeltype": "0",
"label_key": "kyy-test",
"symbol": ":",
"label_value": "ok",
"update_time": "2025-05-28 14:42:21",
"row_num_": 3
},
{
"id": "mfbiVzlAtd87H1cX_b81X",
"name": "cd",
"orgid": "mIWUHBeeDM8mwAFPIQ8pS",
"labeltype": "0",
"label_key": "kyy-we",
"symbol": ":",
"label_value": "qwe",
"update_time": "2025-05-28 14:42:24",
"row_num_": 4
}
]
}
}
```
```json
{
"status": false,
"msg": "无算力中心id"
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
|» data|object|true|none||none|
|»» total|integer|true|none||none|
|»» rows|[object]|true|none||none|
|»»» id|string|true|none|标签id|none|
|»»» name|string|true|none|标签名称|none|
|»»» orgid|string|true|none|用户组织id|none|
|»»» labeltype|string|true|none|标签类型|哪种资源的标签0是实例标签1是节点标签后续再拓展其它|
|»»» label_key|string|true|none|标签属性|none|
|»»» symbol|string|true|none|等价符号|= 是节点标签, :是资源标签|
|»»» label_value|string|true|none|标签值|none|
|»»» update_time|string|true|none|更新时间|none|
|»»» row_num_|integer|true|none||none|
## POST 新增资源标签
POST /dev/cpcc/cpclabel/add_cpclabel.dspy
新增资源标签
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|name|query|string| 是 |标签名称|
|labeltype|query|string| 是 |哪种资源的标签0是实例标签1是节点标签后续再拓展其它|
|label_key|query|string| 是 |标签属性|
|label_value|query|string| 是 |标签属性值|
|orgid|query|string| 否 |用户组织id|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "新增资源标签成功",
"data": {
"label_key": "kyy-app",
"label_value": "mysql8",
"labeltype": "0",
"name": "mysql8资源实例",
"orgid": "mIWUHBeeDM8mwAFPIQ8pS",
"id": "BvJGOTjpDelumxH5Uo0Qz",
"update_time": "2025-05-27 14:13:00"
}
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 删除资源标签
POST /dev/cpcc/cpclabel/delete_cpclabel.dspy
删除资源标签
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 是 |标签列表返回的id|
|orgid|query|string| 否 |用户组织id|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "删除资源标签成功",
"data": {
"id": "6bi3hfxxVqMM7hy-OuitEa"
}
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 集群节点绑定/解绑标签
POST /dev/cpcc/cpclabel/setup_cpclabel.dspy
给指定算力中心里某集群中的工作节点绑定标签/解绑标签
一次只能一个标签
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|cpcid|query|string| 是 |算力中心id|
|clusterid|query|string| 是 |算力集群id|
|label|query|string| 是 |单个标签内容|
|worker_node|query|string| 是 |集群某节点(页面返回的节点名)|
|opt|query|string| 是 |操作label是绑定unlabel是解绑|
|orgid|query|string| 否 |用户组织id|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "设置节点标签成功",
"data": {
"clusterid": "4hBm8atruISOU2bs24t_N",
"cpcid": "AROU9udKtPNyh0AZtO_WY",
"label": "kyy-gpu=false",
"opt": "label",
"orgid": "mIWUHBeeDM8mwAFPIQ8pS",
"worker_node": "k8s-worker-20250408132243"
}
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
# kboss容器云/算力集群管理
## GET 获取多算力集群信息
GET /dev/cpcc/cpccluster/get_cpccluster.dspy
输入算力中心ID展示该算力中心下所有kubernetes集群信息
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|cpcid|query|string| 是 |算力中心id|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "获取算力集群成功",
"data": {
"total": 1,
"rows": [
{
"id": "4hBm8atruISOU2bs24t_N",
"name": "测试离线安装控制节点",
"cpcid": "AROU9udKtPNyh0AZtO_WY",
"clustertype": "0",
"controllerid": "RJZ2GMHSWGVG7iRk_AJYm",
"enable_date": "2025-04-03",
"export_date": "2025-05-10",
"clusterjoin": "kubeadm join 192.168.0.3:6443 --token nt80u6.gzpj9dxsrw79270c --discovery-token-ca-cert-hash sha256:7b33439b2a1b37a8d8938513bd45405f57c3255771c3b9b9b90af448d886b0c2",
"kubeconfig": "apiVersion: v1\nclusters:\n- cluster:\n certificate-authority-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURCVENDQWUyZ0F3SUJBZ0lJTGd4THlGMjM3QmN3RFFZSktvWklodmNOQVFFTEJRQXdGVEVUTUJFR0ExVUUKQXhNS2EzVmlaWEp1WlhSbGN6QWVGdzB5TlRBME1ETXdOelE1TXpWYUZ3MHpOVEEwTURFd056VTBNelZhTUJVeApFekFSQmdOVkJBTVRDbXQxWW1WeWJtVjBaWE13Z2dFaU1BMEdDU3FHU0liM0RRRUJBUVVBQTRJQkR3QXdnZ0VLCkFvSUJBUURQUm5hdkZmNXBTWWUvVmJLc0s2SnhEazhyc2hsc2h5WnNNRk8xZDVhZG45Z055T0wwR2NtbEsrQ1EKVklKSnF3RklJeSsxUVlEd3VRMytzczEwYmV2Y2lqM1BRanluaXJRRkNhRlA0NHh2ZkEyK2thV1FYeTVncGwrMwpjSkI1K1MxVmx2Vi9aSHQ5SXgwNjFCdHB4dE5oMUkxNS9IYk4rWmVNNnEvd3lxUW93Y01ub2pyNDltYkxxOWNwCnFSem5LL2FwWXlBYnljUk9uWWlIZ0FjQWdsclFOTjBKUEJZd2dRd0pIUmlIcGhtVFBkdmY2ckxkNFR0dFl2OXgKdmZIRDNjVUdwZkVBUElaNUJBVi9ZM3p5V0pSbDQzSFV2Ri9jemNDQ01jOVlUd3VXaEpxb2doUUZUdnNuSVZzTwovNEtKQzRwQXFSenJlZFRWdExmMXgzQlRpVCt0QWdNQkFBR2pXVEJYTUE0R0ExVWREd0VCL3dRRUF3SUNwREFQCkJnTlZIUk1CQWY4RUJUQURBUUgvTUIwR0ExVWREZ1FXQkJUZjRZbzBpOVpIZC9ObzdkYWZrZVRTbzVzdzN6QVYKQmdOVkhSRUVEakFNZ2dwcmRXSmxjbTVsZEdWek1BMEdDU3FHU0liM0RRRUJDd1VBQTRJQkFRRERLalJWVVp1YwppckJ4QWdZWnBBeW5NSHdWQTF6YStVT09FM1U0MEMyVTN0VGgrK1BsN2o2ZGJZTWNWdEFvTXhxaDRiVjNQRW5SCmtWcWNaN2NjS3FGSXduZlhHK0ZGTVVwazVoTk0xLzc2UXBobi9OWk8zSStSVjFtV0VOU1BzM1FZdEVoWktXUlgKYWRXZ0krK0x1cUZyZVpTVzVjRXNnMWZDODFtd3dhTXdkRHZWcFJZMFEwWlBsMGFqTURsSlNDaDNOSXpQOS82bwpndXBrY1JSdWtvRGlscWVraXlrRWJ5OVJCWHZIbXo3Q0sxQ1ZnZXZJTDZrVnRPRFF2Rm10Qm1WemlRNWFDcXJOCmtZNmd6OUNGMkdKc2M4UkZrcWQxbzdMelhPakJsTkdzN2k2WmdEOE1Ca2tiank2RmZDZWVndmxOOGFCU2VmblEKZ2ZNOVptbnRpMVNDCi0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K\n server: https://192.168.0.3:6443\n name: kubernetes\ncontexts:\n- context:\n cluster: kubernetes\n user: kubernetes-admin\n name: kubernetes-admin@kubernetes\ncurrent-context: kubernetes-admin@kubernetes\nkind: Config\npreferences: {}\nusers:\n- name: kubernetes-admin\n user:\n client-certificate-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSURJRENDQWdpZ0F3SUJBZ0lIVGZPdmU4TzBJVEFOQmdrcWhraUc5dzBCQVFzRkFEQVZNUk13RVFZRFZRUUQKRXdwcmRXSmxjbTVsZEdWek1CNFhEVEkxTURRd016QTNORGt6TlZvWERUSTJNRFF3TXpBM05UUXpOMW93TkRFWApNQlVHQTFVRUNoTU9jM2x6ZEdWdE9tMWhjM1JsY25NeEdUQVhCZ05WQkFNVEVHdDFZbVZ5Ym1WMFpYTXRZV1J0CmFXNHdnZ0VpTUEwR0NTcUdTSWIzRFFFQkFRVUFBNElCRHdBd2dnRUtBb0lCQVFEWVJJT3h0TWFkOWs2T1JsL1UKZ2ZnZVJDQkpjZmMrc2ZFbzkxeW4vc05KZFVIbWRuamtMaC9wRjcwZkdoVWZ3R2t5dzR0WkdpTFFNR0xwclpyeAphVTdJT0R3a3I2ejl1SkQzaHlFZExhZGpZT0NOMHJhUFNpV05GV1QwSVN2UVBjZzNGQkQ2YmFHb2RtSmN5YnBPCk5qY1VZZmh5WEVqRXMwOU92QzhhZUJCbm9Na1RkRk53dlFaYXE2LzR3eTUyN0k3aUdIUVdvL21JS1VUVHhzRFgKMzJnVXErZmRVMEh5STJJeWhNMGdwT29uNURCVmRUbWsyMkZsVHk0ZWJ3Q3R4QmMvRCtpelhuZFpVd2tHMExMVwpqTEc4L3JkWTZ4WFJDVkhHM1BWNURRK0JvNEpnMTUwWWFSUnBKeDJYSGxad3N5OFBZcWVLcTM0b1pxczRTRndmCjJCY3JBZ01CQUFHalZqQlVNQTRHQTFVZER3RUIvd1FFQXdJRm9EQVRCZ05WSFNVRUREQUtCZ2dyQmdFRkJRY0QKQWpBTUJnTlZIUk1CQWY4RUFqQUFNQjhHQTFVZEl3UVlNQmFBRk4vaGlqU0wxa2QzODJqdDFwK1I1TktqbXpEZgpNQTBHQ1NxR1NJYjNEUUVCQ3dVQUE0SUJBUUFTR0phc1EyQXpLdVNZWFdtMGlYOUhnWTNZQUJGMHpYRzRKZU5lCjREekxkOHF2TXlqRGMwUWFWSUtNbWswemhrV1ZIQzNKSEZWalRXcDBUNFE0TlVBMk8rOXFob1p0a25NL3dsQlUKS0Zab3ZHNFd6SU1sdVJwL21ZRUIzL3dHbkFPV01MdEtBSWJ3d3FRVWl4VW5KYkxCeG4xQ1k5ZERzb1o4VmZZMQp4N2R0WDBJWjJkbU1ETTVLV1lrbW5tQWJBR0tXazZBR3pVWEpWNmlTU3laYjlWLzNuN3hmZlpZRkVDQXBQNk91CjhmRGdIVjBCdEMxS3VmU0tsTitLMnF2aXAzMlRjRHdoTEVHQWQ2aU9qYzhBRXlHelJmOWY4M0xUSGJ2dGtibjYKR0VQQlBQSExSTFlQWEh0OE9LbHdNOThwQWxkSkIyWEJ6UEttc0JFeGFOSWRXd2FTCi0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K\n client-key-data: LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBMkVTRHNiVEduZlpPamtaZjFJSDRIa1FnU1hIM1BySHhLUGRjcC83RFNYVkI1blo0CjVDNGY2UmU5SHhvVkg4QnBNc09MV1JvaTBEQmk2YTJhOFdsT3lEZzhKSytzL2JpUTk0Y2hIUzJuWTJEZ2pkSzIKajBvbGpSVms5Q0VyMEQzSU54UVErbTJocUhaaVhNbTZUalkzRkdINGNseEl4TE5QVHJ3dkduZ1FaNkRKRTNSVApjTDBHV3F1ditNTXVkdXlPNGhoMEZxUDVpQ2xFMDhiQTE5OW9GS3ZuM1ZOQjhpTmlNb1ROSUtUcUorUXdWWFU1CnBOdGhaVTh1SG04QXJjUVhQdy9vczE1M1dWTUpCdEN5MW95eHZQNjNXT3NWMFFsUnh0ejFlUTBQZ2FPQ1lOZWQKR0drVWFTY2RseDVXY0xNdkQyS25pcXQrS0dhck9FaGNIOWdYS3dJREFRQUJBb0lCQVFDQ1djRjZ3YmdaQzVWTApvZFV1MCt1RjZvLy9WS2F1YmpncDlmWXQ5NXNqVW42Vzl2OWtvUHh3MVBNVHBQZm9mR09yeWpyYVNLdUZDalVFCkhiUlBINmJ4ZlJ1YkRSdmFqWDByQkpLTDhMRjhiNjdKTEtFR2VxMXBmT1N0VkxVQXZjeElqbHF4WnBUU1loQmwKVnQxcE9MbzRHZGpTclJiYklDeUVDMTdrdUV0QytZV3lFb3E5MmlLNVdMTHdHM2hwVzhyVlVLVzZ2T0cyd0l4bAp0RWhMSGpOOWtnb1VVa2pORG9tK2FlcVVxeXhDeUZEdll4UmdhVTd0Y3pJSk52SUk3aDYxaExQbEZtMmxGQ0xlCjhjeTdKUDMyV1ZDSUpUMHhRNkJJRTdvVld4WWIvMzFVSHYrTHg0UHlBcFpiZ3piMjlvQm54VjhneUxnVjZDWW0Kd1psQlQ4S2hBb0dCQU9tMFZqTkVHVm5EaXNsTDFVVkNKYzFCVU1KcjNwalQvV0g4d2s0UzJYWmhwRWdVQmpQYgpDM3Y5czkxNHh6SjhXYWFtUFZPVGZMRmxzRWFLNnJpMFhjQkhXQi9ob1R1aDVKaDByS1RNWWFMTm9SdU00VCt6Ci9zUG1aY1ZMVXcxdHFmd3U5YlVpSTJCQURQNFM2MUFubk5hSnF1UmFWRk8vT1pqZUkvbHJzMVBSQW9HQkFPem0KVTNvcjNuSDh4WHI2WDNJUjRDM3l3TkZLaHNVVE44VmdWNWRVL0U5RmRHTldUVzRkWHdCK01jeUlQMlFLbjlycwpmcU9Cb0c3NlRKVHF0YzVobjY5Q014c1lVNVdPcDhOZW9oaXplY1luSTFjTk94TmZwdzZDdUZVb1pmTFFxU1dICmJ4dEVEaFkrcXJjR2FLZ3VzMk1uMkJ2cEg1bUhCTk5DL05pSVZ1WTdBb0dBZFlnVEhkOHVuSjBockJCdUpsR1kKN3p2YzRKb2RMV0RYZWpNQ2lQOGp6RXhZc1VNWXgzVnV0aUdtRmtpS2JWSnFSOHdzNVY0MEJJY3VlcHVjWmQyWApsSDZNekNQTjBVNmV4eWxPTmVidlowL2dxUmxWb3BMa0dpTkJwVkkzWjNaeVdYaElhNXJLamJwSWpuSjNVeTFJCnpBQWFLSk5nKzJrZEQwc1FibnlDaURFQ2dZQVFDZVA2OEg5bDdqd2NnRmozNnhmblpIa0RjbTAvYUhhdEtVR2sKNEQ4WXl0WC9aN2RrVGg3QmRNbkFWRFVlZTgyb3o3d2ZLOGFGM1BKVVhyT2lYbCttU1BBVzFJWE1LVlZZVjg3WApwMGNHVUY0SEpjRXJKWjIwME1yVUVTRWQyRnlyU3NrTjZvU2RvdTZCNTdBc09zVXdZR0UwT290R0pLc0I5cFlSCnZ1RkxRd0tCZ1FEZVFuRElPaUQ2SEpmc2loTC8xZ3dnS0hVeVc2WGYrNFhQODd3ZlVXT1N0SEpza29oTkZHdk8KSnpNdUFvc2V2UGFWdElCSXBZbFgycUlaaHlhdyt2VW9BUTZYRnR3WjM1QWo1T1VPbVFQQUJWbkVXZUJZRzdSaQpaZmhEU2NTek5xb3ozWFpjMnA4a2VMWE1XOWJsTDNNOTdOMFRLbExuZ0NrSTdoaXJMVGE2T0E9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo=",
"clustertype_text": "kubernetes",
"controllerid_text": "192.168.0.3",
"row_num_": 1
}
]
}
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» total|integer|true|none||none|
|» rows|[object]|true|none||none|
|»» id|string|false|none||none|
|»» name|string|false|none||集群名称|
|»» cpcid|string|false|none||所属算力中心前端转ID为名称|
|»» clustertype|string|false|none||集群类型,前端不显示|
|»» controllerid|string|false|none||控制节点,前端不显示|
|»» enable_date|string|false|none||启用日期|
|»» clusterjoin|string|false|none||集群注册码|
|»» export_date|string|false|none||停止日期|
|»» kubeconfig|string|false|none||集群上下文前端隐藏给pcapi用的|
|»» clustertype_text|string|false|none||集群类型文字|
|»» controllerid_text|string|false|none||控制节点文字|
|»» ready|integer|true|none||集群状态0:正在安装1:安装完成|
|»» row_num_|integer|false|none||none|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
## POST 算力集群基础信息更新
POST /dev/cpcc/cpccluster/update_cpccluster.dspy
修改某算力集群的基础信息
注意:前端需要处理一下,只能修改集群名称和两个时间参数,其他参数不允许修改!!!
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|cpcid|query|string| 是 |所属算力中心ID|
|id|query|string| 是 |算力集群id|
|controllerid|query|string| 否 |集群控制节点id|
|name|query|string| 否 |集群名称|
|cluster_type|query|string| 否 |集群类型0为kubernetes1为slurm|
|clusterjoin|query|string| 否 |集群注册码|
|enable_date|query|string| 否 |启用时间|
|export_date|query|string| 否 |停止时间|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 获取空闲的算力设备
GET /dev/cpcc/cpcnode/get_cpcidle_device.dspy
用于创建集群时选择空闲设备选择IP
注意:创建集群或新增集群工作节点时需要先获取到空闲状态的算力设备(IP)
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|cpcid|query|string| 是 |算力中心id|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "获取空闲设备成功",
"data": [
{
"id": "XLUBumc_RzHBStQfpi5u0",
"name": "gpu设备1",
"clusterid": null,
"node_status": "0",
"ip": "192.168.0.8",
"devicetype": "1",
"sshport": 22,
"adminuser": "ysh",
"adminpwd": "Kyy@123456",
"cpcid": "AROU9udKtPNyh0AZtO_WY",
"enable_date": "2025-05-16",
"export_date": "2026-06-17"
}
]
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» id|string|true|none||none|
|» ip|string|true|none||none|
|» node_status|string|true|none||0空闲1占用|
## GET 实时集群资源实例看板
GET /dev/cpcc/cpcpod/get_cpcpod.dspy
查看实时集群资源实例信息,字段解释详见下方
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|cpcid|query|string| 是 |算力中心ID|
|clusterid|query|string| 是 |算力集群ID|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "获取集群实时资源实例成功",
"data": {
"total": 1,
"rows": [
{
"pod_namespace": "4hbm8atruisou2bs24t-n-miwuhbeedm8mwafpiq8ps",
"pod_name": "q2aodptfquogblu5nzblt-statefulset-0",
"pod_ready": "1/1",
"pod_running": "Running",
"pod_restart": "0",
"pod_age": "16h",
"pod_ip": "10.244.5.36",
"pod_node": "k8s-worker-20250408132243",
"pod_nominated_node": "无",
"pod_cpurate": "0.004核",
"pod_memrate": "2.539Mi",
"pod_gpu": "0",
"pod_cpu_limit": "2",
"pod_memory_limit": "5Gi",
"pod_gpu_limit": "0"
}
]
}
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
|» data|object|true|none||none|
|»» total|integer|true|none||none|
|»» rows|[object]|true|none||none|
|»»» pod_namespace|string|true|none|命名空间|none|
|»»» pod_name|string|true|none|资源实例名称|none|
|»»» pod_ready|string|true|none|就绪状态|none|
|»»» pod_running|string|true|none|运行状态|none|
|»»» pod_restart|string|true|none|重启次数|none|
|»»» pod_age|string|true|none| 运行时长|d是天h是小时m是分钟s是秒|
|»»» pod_ip|string|true|none|集群内部IP|none|
|»»» pod_node|string|true|none|Pod节点主机名|none|
|»»» pod_nominated_node|string|true|none|指定节点/调度模式|默认值:自动调度|
|»»» pod_cpurate|string|true|none| cpu使用数|none|
|»»» pod_memrate|string|true|none|内存使用数|none|
|»»» pod_gpu|string|true|none|GPU使用数|none|
|»»» pod_cpu_limit|string|true|none|CPU限制|none|
|»»» pod_memory_limit|string|true|none|内存限制|none|
|»»» pod_gpu_limit|string|true|none|GPU限制|none|
|»»» pod_readiness_gates|[string]|true|none||none|
## GET 实时集群成员节点看板
GET /dev/cpcc/cpcworker/get_cpcworker.dspy
查看试试集群成员节点列表信息,字段解释详见下方
给pcapi的人看的
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|cpcid|query|string| 是 |算力中心ID|
|clusterid|query|string| 是 |算力集群ID|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "获取集群实时成员节点成功",
"data": {
"total": 2,
"rows": [
{
"node_name": "k8s-master",
"node_status": "已就绪",
"node_role": "控制节点",
"node_age": "70d",
"node_version": "v1.28.2",
"node_internalip": "192.168.0.3",
"node_externalip": "未分配",
"node_osversion": "Ubuntu 22.04.1 LTS",
"node_kernelversion": "5.15.0-91-generic",
"node_containeruntime": "containerd://1.7.24",
"node_labels": [
"kyy-gpu=false"
],
"node_cpurate": "21.2%",
"node_memrate": "1.4%",
"node_gpu": "0%",
"available_cpu": "3.15核",
"available_memory": "15.30Gi",
"available_gpu": 0
},
{
"node_name": "k8s-worker-20250408132243",
"node_status": "已就绪",
"node_role": "工作节点",
"node_age": "65d",
"node_version": "v1.28.2",
"node_internalip": "192.168.0.2",
"node_externalip": "未分配",
"node_osversion": "Ubuntu 22.04.1 LTS",
"node_kernelversion": "5.15.0-91-generic",
"node_containeruntime": "containerd://1.7.24",
"node_labels": [
"kyy-gpu=false"
],
"node_cpurate": "60.0%",
"node_memrate": "34.8%",
"node_gpu": "0%",
"available_cpu": "1.60核",
"available_memory": "10.11Gi",
"available_gpu": 0
}
]
}
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
|» data|object|true|none||none|
|»» total|integer|true|none||none|
|»» rows|[object]|true|none||none|
|»»» node_name|string|true|none|主机名|none|
|»»» node_status|string|true|none|运行状态|none|
|»»» node_role|string|true|none|节点角色|none|
|»»» node_age|string|true|none|运行时长|none|
|»»» node_version|string|true|none|kubernetes版本|none|
|»»» node_internalip|string|true|none|内网IP|none|
|»»» node_externalip|string|true|none|外网IP|none|
|»»» node_osversion|string|true|none|操作系统版本|none|
|»»» node_kernelversion|string|true|none|内核版本|none|
|»»» node_containeruntime|string|true|none|容器运行时版本|none|
|»»» node_labels|[string]|true|none|节点标签|none|
|»»» node_cpurate|string|true|none|CPU利用率|none|
|»»» node_memrate|string|true|none|内存利用率|none|
|»»» node_gpu|string|true|none|GPU利用率|none|
|»»» available_cpu|string|true|none|可用CPU|none|
|»»» available_memory|string|true|none|可用内存|none|
|»»» available_gpu|integer|true|none|可用GPU|none|
## POST 新增集群资源实例配置
POST /dev/cpcc/cpcpodyaml/new_cpcpodyaml.dspy
1.通过kboss前端输入资源实例参数/操作指令给kboss后端再中转给算力中心pcapi服务进行kubernetes核心API操作级联创建相应的资源实例
2.目前算力中心pcapi服务有且仅支持Linux操作系统Ubuntu:22.04和关系型数据库MySQL:8.0
3.算力中心pcapi服务操作结果返回给kboss后端kboss后端再反馈给前端操作结果即可。
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|clusterid|query|string| 是 |集群唯一标识ID|
|source_name|query|string| 是 |资源实例的名称|
|source_authuser|query|string| 是 |初始认证账号|
|source_authpasswd|query|string| 是 |初始认证密码|
|source_podengine|query|string| 是 |资源实例控制器下拉框默认StatefulSetDeploymentDaemonSetCronJobJobStandalone|
|source_replicasetnum|query|string| 是 |HPA副本数|
|instance_type|query|string| 是 |资源实例类型下拉框默认LinuxOS为Linux操作系统RelationalDB为关系型数据库|
|pod_imagepath|query|string| 是 |基础镜像下拉框默认docker.io/library/ubuntu:22.04docker.io/library/mysql:8.0docker.io/jupyter/base-notebook:latest|
|source_memrate|query|string| 是 |内存资源限制|
|source_cpurate|query|string| 是 |CPU资源限制|
|source_selflabel|query|string| 是 |自定义标签,用于资源分类|
|source_gpu|query|string| 是 |分配GPU个数|
|source_portmode|query|string| 是 |服务暴露的端口模式下拉框默认NodePortIngressLoadBalancer|
|source_restartpolicy|query|string| 是 |容器重启策略下拉框默认AlwaysOnFailureNever|
|source_apiport|query|string| 是 |服务对外提供的端口|
|source_insideport|query|string| 是 |容器内部监听的端口|
|source_outsideport|query|string| 是 |通过NodePort暴露的节点端口|
|source_mountpath|query|string| 是 |容器内的挂载路径|
|source_storagelimits|query|string| 是 |存储资源限制|
|source_nodeselector|query|string| 是 |节点选择器|
|orgid|query|string| 否 |线下调试/非登录态可指定组织ID进行操作|
|cpu_model|query|string| 是 |CPU型号|
|gpu_model|query|string| 是 |显卡型号|
|disk_sys_limit|query|string| 是 |默认系统盘空间|
|userid|query|string| 否 |none|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "新增资源实例参数成功,请10秒后查看实时资源实例面板",
"data": {
"action": "apply",
"namespace_name": "4hbm8atruisou2bs24t-n-miwuhbeedm8mwafpiq8ps",
"serviceaccount_name": "4hbm8atruisou2bs24t-n-miwuhbeedm8mwafpiq8ps-serviceaccount",
"podcd_name": "evfldtxjkr3jd8zxnfhd5-statefulset",
"service_name": "evfldtxjkr3jd8zxnfhd5-service",
"instance_type": "LinuxOS",
"clusterid": "4hBm8atruISOU2bs24t_N",
"orgid": "mIWUHBeeDM8mwAFPIQ8pS",
"pod_imagepath": "docker.io/library/ubuntu:22.04",
"source_apiport": "6035",
"source_authpasswd": "kyycloud",
"source_authuser": "root",
"source_cpurate": "1000m",
"source_insideport": "3306",
"source_memrate": "512Mi",
"source_mountpath": "/mnt/data",
"source_name": "kyy-new5090gpu-ubuntu2204",
"source_outsideport": "30063",
"source_podengine": "StatefulSet",
"source_portmode": "NodePort",
"source_replicasetnum": "1",
"source_restartpolicy": "Always",
"source_selflabel": "app:ubuntu3",
"source_storagelimits": "49Gi",
"source_nodeselector": "kyy-gpu=false",
"id": "evfldtxjkr3jd8zxnfhd5",
"cpcid": "AROU9udKtPNyh0AZtO_WY"
}
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
|» data|object|true|none||none|
|»» action|string|true|none||none|
|»» namespace_name|string|true|none||none|
|»» serviceaccount_name|string|true|none||none|
|»» podcd_name|string|true|none||none|
|»» service_name|string|true|none||none|
|»» instance_type|string|true|none||none|
|»» clusterid|string|true|none||none|
|»» orgid|string|true|none||none|
|»» pod_imagepath|string|true|none||none|
|»» source_apiport|string|true|none||none|
|»» source_authpasswd|string|true|none||none|
|»» source_authuser|string|true|none||none|
|»» source_cpurate|string|true|none||none|
|»» source_insideport|string|true|none||none|
|»» source_memrate|string|true|none||none|
|»» source_mountpath|string|true|none||none|
|»» source_name|string|true|none||none|
|»» source_outsideport|string|true|none||none|
|»» source_podengine|string|true|none||none|
|»» source_portmode|string|true|none||none|
|»» source_replicasetnum|string|true|none||none|
|»» source_restartpolicy|string|true|none||none|
|»» source_selflabel|string|true|none||none|
|»» source_storagelimits|string|true|none||none|
|»» id|string|true|none||none|
|»» cpcid|string|true|none||none|
## GET 获取集群资源实例配置
GET /dev/cpcc/cpcpodyaml/get_cpcpodyaml.dspy
获取资源实例的配置,普通用户和管理员都是
后续会把实时资源实例看板数据接口和这个进行优化展示,目前先这样吧
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|cpcid|query|string| 是 |算力中心ID|
|clusterid|query|string| 是 |算力集群ID|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "获取资源实例静态配置成功",
"data": {
"total": 1,
"rows": [
{
"id": "evfldtxjkr3jd8zxnfhd5",
"namespace_name": "4hbm8atruisou2bs24t-n-miwuhbeedm8mwafpiq8ps",
"serviceaccount_name": "4hbm8atruisou2bs24t-n-miwuhbeedm8mwafpiq8ps-serviceaccount",
"podcd_name": "evfldtxjkr3jd8zxnfhd5-statefulset",
"service_name": "evfldtxjkr3jd8zxnfhd5-service",
"clusterid": "4hBm8atruISOU2bs24t_N",
"cpcid": "AROU9udKtPNyh0AZtO_WY",
"source_name": "kyy-new5090gpu-ubuntu2204",
"source_authuser": "root",
"source_authpasswd": "kyycloud",
"source_podengine": "StatefulSet",
"source_replicasetnum": 1,
"pod_imagepath": "docker.io/library/ubuntu:22.04",
"source_memrate": "512Mi",
"source_cpurate": "1000m",
"source_selflabel": "app:ubuntu3",
"source_portmode": "NodePort",
"source_restartpolicy": "Always",
"source_apiport": 6035,
"source_insideport": 3306,
"source_outsideport": 30063,
"source_mountpath": "/mnt/data",
"source_storagelimits": "49Gi",
"instance_type": "LinuxOS",
"source_nodeselector": "kyy-gpu=false",
"username": "kyy-运营",
"row_num_": 1
}
]
}
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
|» data|object|true|none||none|
|»» total|integer|true|none||none|
|»» rows|[object]|true|none||none|
|»»» id|string|true|none|id|none|
|»»» namespace_name|string|true|none|命名空间|none|
|»»» serviceaccount_name|string|true|none|命名空间服务认证|none|
|»»» podcd_name|string|true|none|资源控制器名称|none|
|»»» service_name|string|true|none|服务名称|none|
|»»» clusterid|string|true|none|集群id|none|
|»»» cpcid|string|true|none|算力中心id|none|
|»»» source_name|string|true|none|资源名称|none|
|»»» source_authuser|string|true|none|初始认证账号|none|
|»»» source_authpasswd|string|true|none|初始认证密码|none|
|»»» source_podengine|string|true|none|资源控制器|none|
|»»» source_replicasetnum|string|true|none|HPA副本数|none|
|»»» pod_imagepath|string|true|none|资源基础镜像|none|
|»»» source_memrate|string|true|none|资源内存限制|none|
|»»» source_cpurate|string|true|none|资源CPU限制|none|
|»»» source_selflabel|string|true|none|资源自身标签|none|
|»»» source_portmode|string|true|none|端口映射模式|none|
|»»» source_restartpolicy|string|true|none|重启策略|none|
|»»» source_apiport|string|true|none|资源内部监听端口|none|
|»»» source_insideport|string|true|none|集群内部映射端口|none|
|»»» source_outsideport|string|true|none|集群外部映射端口|none|
|»»» source_mountpath|string|true|none|容器内挂载点|none|
|»»» source_storagelimits|string|true|none|数据存储大小限制|none|
|»»» instance_type|string|true|none|资源实例类型|none|
|»»» source_nodeselector|string|true|none|节点选择器|none|
|»»» username|string|true|none|所属用户|none|
## POST 更新集群资源实例配置
POST /dev/cpcc/cpcpodyaml/update_cpcpodyaml.dspy
更新资源实例配置,参数类似新增资源实例参数接口传递方式
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|cpcid|query|string| 是 |算力中心ID|
|clusterid|query|string| 是 |集群唯一标识ID|
|id|query|string| 否 |资源实例配置ID|
|source_name|query|string| 是 |资源实例的名称|
|source_authuser|query|string| 是 |初始认证账号|
|source_authpasswd|query|string| 是 |初始认证密码|
|source_podengine|query|string| 是 |资源实例控制器下拉框默认StatefulSetDeploymentDaemonSetCronJobJobStandalone|
|source_replicasetnum|query|string| 是 |HPA副本数|
|instance_type|query|string| 是 |资源实例类型下拉框默认LinuxOS为Linux操作系统RelationalDB为关系型数据库|
|pod_imagepath|query|string| 是 |基础镜像下拉框默认docker.io/library/ubuntu:22.04docker.io/library/mysql:8.0docker.io/jupyter/base-notebook:latest|
|source_memrate|query|string| 是 |内存资源限制|
|source_cpurate|query|string| 是 |CPU资源限制|
|source_selflabel|query|string| 是 |自定义标签,用于资源分类|
|source_portmode|query|string| 是 |服务暴露的端口模式下拉框默认NodePortIngressLoadBalancer|
|source_restartpolicy|query|string| 是 |容器重启策略下拉框默认AlwaysOnFailureNever|
|source_apiport|query|string| 是 |服务对外提供的端口|
|source_insideport|query|string| 是 |容器内部监听的端口|
|source_outsideport|query|string| 是 |通过NodePort暴露的节点端口|
|source_mountpath|query|string| 是 |容器内的挂载路径|
|source_storagelimits|query|string| 是 |存储资源限制|
|source_nodeselector|query|string| 否 |节点选择器|
|orgid|query|string| 否 |线下调试/非登录态可指定组织ID进行操作|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "资源参数更新成功,请10秒后查看实时资源实例面板",
"data": {
"clusterid": "4hBm8atruISOU2bs24t_N",
"cpcid": "AROU9udKtPNyh0AZtO_WY",
"id": "evfldtxjkr3jd8zxnfhd5",
"instance_type": "LinuxOS",
"orgid": "mIWUHBeeDM8mwAFPIQ8pS",
"pod_imagepath": "docker.io/library/ubuntu:22.04",
"source_apiport": "6035",
"source_authpasswd": "kyycloud",
"source_authuser": "root",
"source_cpurate": "1000m",
"source_insideport": "3306",
"source_memrate": "512Mi",
"source_mountpath": "/mnt/data",
"source_name": "kyy-new5090gpu-ubuntu2204",
"source_outsideport": "30063",
"source_podengine": "StatefulSet",
"source_portmode": "NodePort",
"source_replicasetnum": "2",
"source_restartpolicy": "Always",
"source_selflabel": "app:ubuntu3",
"source_nodeselector": "kyy-gpu=false",
"source_storagelimits": "49Gi"
}
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 删除集群资源实例配置
POST /dev/cpcc/cpcpodyaml/delete_cpcpodyaml.dspy
根据资源实例配置级联删除集群中的相关资源及实例
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 是 |要删除的资源实例配置id|
|orgid|query|string| 否 |线下调试/非登录态可指定组织ID进行操作|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "级联删除集群资源成功,请10秒后查看实时资源实例面板",
"data": {
"id": "evfldtxjkr3jd8zxnfhd5"
}
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 算力中心新建算力集群(调试中)
POST /dev/cpcc/cpccluster/new_cluster.dspy
重操作约5分钟
Web前端创建算力集群Web后端接收到参数后传递参数给算力中心服务pcapi。
pcapi进行ssh远程到某算力设备中进行安装算力集群控制节点安装结果字段返回给Web后端进行存库。
中间是一连贯操作请确保Web前后端之间接口有超时判断能力。
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|cpcid|query|string| 是 |算力中心id|
|ctl_nodeid|query|string| 是 |集群控制节点的id|
|cluster_type|query|string| 是 |集群类别0是kubernetes1是slurm|
|cluster_name|query|string| 是 |集群名称|
|enable_date|query|string| 是 |启用时间|
|export_date|query|string| 是 |停用时间|
> 返回示例
```json
{
"status": true,
"msg": "操作成功!\n加入集群凭证: kubeadm join 192.168.0.3:6443 --token nt80u6.gzpj9dxsrw79270c --discovery-token-ca-cert-hash sha256:7b33439b2a1b37a8d8938513bd45405f57c3255771c3b9b9b90af448d886b0c2",
"data": {
"id": "RJZ2GMHSWGVG7iRk_AJYm",
"node_status": "1",
"clusterid": "4hBm8atruISOU2bs24t_N",
"cpcid": "AROU9udKtPNyh0AZtO_WY",
"role": "master"
}
}
```
```json
{
"status": false,
"msg": "算力中心服务操作失败"
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
|» data|object|true|none||none|
|»» id|string|true|none||none|
|»» node_status|string|true|none||none|
|»» clusterid|string|true|none||none|
|»» cpcid|string|true|none||none|
|»» role|string|true|none||none|
## POST 算力中心移除算力集群(未开发)
POST /computing/cpcluster_delete.dspy
重操作约1分钟
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 是 |算力集群查找返回的id|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
# kboss容器云/算力部件(含计价)管理
## POST 新增算力部件
POST /dev/cpcc/cpcwidget/add_cpcwidget.dspy
添加算力部件其中包含CPU核数CPU型号内存用量GPU个数等信息
注意:
1. 每个算力中心下的算力部件不一样!
2. 添加相同类型和系列的组件,不会新增记录
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|cpcid|query|string| 是 |算力中心id|
|clusterid|query|string| 是 |算力集群id|
|type|query|string| 是 |算力部件类型下拉框cpu/memory/disk/gpu|
|resource_unit|query|string| 是 |资源分配单位下拉框跟随type字段个cpu/Gi内存/Gi存储/张显卡)|
|unit_price|query|string| 是 |单位单价数额1.99元每分钟每Mi)|
|model|query|string| 是 |算力部件型号默认STANDARD|
|stock|query|integer| 是 |库存量默认为0显示无货超过0显示有货|
|charge_unit|query|string| 是 |计费周期(下拉框,默认小时/分钟/秒/天)|
|account_unit|query|string| 是 |计费人民币单位(下拉框,默认元/角/分)|
|add_opt|query|string| 是 |下拉框,是否是增加库存操作,默认给no可选yes|
> 返回示例
```json
{
"status": false,
"msg": "该部件已存在,请前往编辑!"
}
```
```json
{
"status": true,
"msg": "新增算力部件成功",
"data": {
"account_unit": "元",
"charge_unit": "小时",
"cpcid": "AROU9udKtPNyh0AZtO_WY",
"model": "INTEL(R) XEON(R) PLATINUM 8582C",
"resource_unit": "m",
"stock": "0",
"type": "cpu",
"unit_price": "1.99",
"id": "SwaVSlL6RtORQrNTqAGi6",
"update_time": "2025-06-03 16:24:28"
}
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## GET 获取算力部件
GET /dev/cpcc/cpcwidget/get_cpcwidget.dspy
展示该算力中心下所有的算力部件
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|cpcid|query|string| 是 |算力中心id|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "获取算力部件成功",
"data": {
"total": 14,
"rows": [
{
"id": "SwaVSlL6RtORQrNTqAGi6",
"cpcid": "AROU9udKtPNyh0AZtO_WY",
"type": "cpu",
"model": "INTEL(R) XEON(R) PLATINUM 8582C",
"unit_price": 1.5,
"resource_unit": "核",
"stock": 0,
"consumed": 0,
"charge_unit": "小时",
"account_unit": "元",
"update_time": "2025-06-10 15:22:56",
"import_export": [
{
"clusterid": "4hBm8atruISOU2bs24t_N",
"clustername": "朝阳区",
"stock": 0,
"consumed": 0
}
]
},
{
"id": "OmME0B0AQjCkr__TT2LSZ",
"cpcid": "AROU9udKtPNyh0AZtO_WY",
"type": "cpu",
"model": "STANDARD",
"unit_price": 2.2,
"resource_unit": "核",
"stock": 0,
"consumed": 0,
"charge_unit": "小时",
"account_unit": "元",
"update_time": "2025-06-10 15:22:53",
"import_export": [
{
"clusterid": "4hBm8atruISOU2bs24t_N",
"clustername": "朝阳区",
"stock": 0,
"consumed": 0
}
]
},
{
"id": "e6FGUkiEN6uujVfNp6oBK",
"cpcid": "AROU9udKtPNyh0AZtO_WY",
"type": "cpu",
"model": "AMD EPYC 7542 32-Core Processor",
"unit_price": 0.8,
"resource_unit": "核",
"stock": 0,
"consumed": 0,
"charge_unit": "小时",
"account_unit": "元",
"update_time": "2025-06-10 15:22:50",
"import_export": [
{
"clusterid": "4hBm8atruISOU2bs24t_N",
"clustername": "朝阳区",
"stock": 0,
"consumed": 0
}
]
},
{
"id": "meebE6wMvHi0eLHw-GGkJ",
"cpcid": "AROU9udKtPNyh0AZtO_WY",
"type": "disk",
"model": "DATA",
"unit_price": 0.01,
"resource_unit": "Gi",
"stock": 0,
"consumed": 0,
"charge_unit": "小时",
"account_unit": "元",
"update_time": "2025-06-10 15:22:54",
"import_export": [
{
"clusterid": "4hBm8atruISOU2bs24t_N",
"clustername": "朝阳区",
"stock": 0,
"consumed": 0
}
]
},
{
"id": "JFaQH-YjuYjfX7oy7lojF",
"cpcid": "AROU9udKtPNyh0AZtO_WY",
"type": "disk",
"model": "SYS",
"unit_price": 0.005,
"resource_unit": "Gi",
"stock": 0,
"consumed": 0,
"charge_unit": "小时",
"account_unit": "元",
"update_time": "2025-06-10 15:22:51",
"import_export": [
{
"clusterid": "4hBm8atruISOU2bs24t_N",
"clustername": "朝阳区",
"stock": 0,
"consumed": 0
}
]
},
{
"id": "XXXe35qAC1E0Dqu2GN5pN",
"cpcid": "AROU9udKtPNyh0AZtO_WY",
"type": "gpu",
"model": "STANDARD-8G",
"unit_price": 2,
"resource_unit": "卡",
"stock": 5,
"consumed": 0,
"charge_unit": "小时",
"account_unit": "元",
"update_time": "2025-06-10 16:29:22",
"import_export": [
{
"clusterid": "4hBm8atruISOU2bs24t_X",
"clustername": "通州区",
"stock": 2,
"consumed": 0
},
{
"clusterid": "4hBm8atruISOU2bs24t_N",
"clustername": "朝阳区",
"stock": 3,
"consumed": 0
}
]
},
{
"id": "Rj-YyF__ELLvosq6Mgxjn",
"cpcid": "AROU9udKtPNyh0AZtO_WY",
"type": "gpu",
"model": "A100-80G",
"unit_price": 18,
"resource_unit": "卡",
"stock": 0,
"consumed": 0,
"charge_unit": "小时",
"account_unit": "元",
"update_time": "2025-06-10 15:22:55",
"import_export": [
{
"clusterid": "4hBm8atruISOU2bs24t_N",
"clustername": "朝阳区",
"stock": 0,
"consumed": 0
}
]
},
{
"id": "ImmA3ghOcrQ-Ltebmm1x2",
"cpcid": "AROU9udKtPNyh0AZtO_WY",
"type": "gpu",
"model": "RTX5090-32G",
"unit_price": 6,
"resource_unit": "卡",
"stock": 0,
"consumed": 0,
"charge_unit": "小时",
"account_unit": "元",
"update_time": "2025-06-10 15:22:51",
"import_export": [
{
"clusterid": "4hBm8atruISOU2bs24t_N",
"clustername": "朝阳区",
"stock": 0,
"consumed": 0
}
]
},
{
"id": "BCEJAaX7pt20bfni4hJbp",
"cpcid": "AROU9udKtPNyh0AZtO_WY",
"type": "gpu",
"model": "RTX4090-24G",
"unit_price": 4,
"resource_unit": "卡",
"stock": 0,
"consumed": 0,
"charge_unit": "小时",
"account_unit": "元",
"update_time": "2025-06-10 15:22:48",
"import_export": [
{
"clusterid": "4hBm8atruISOU2bs24t_N",
"clustername": "朝阳区",
"stock": 0,
"consumed": 0
}
]
},
{
"id": "aHUd2O5sawlVqsn2icysS",
"cpcid": "AROU9udKtPNyh0AZtO_WY",
"type": "gpu",
"model": "V100-32G",
"unit_price": 12,
"resource_unit": "卡",
"stock": 0,
"consumed": 0,
"charge_unit": "小时",
"account_unit": "元",
"update_time": "2025-06-10 15:22:47",
"import_export": [
{
"clusterid": "4hBm8atruISOU2bs24t_N",
"clustername": "朝阳区",
"stock": 0,
"consumed": 0
}
]
},
{
"id": "uSOsd4iM5ohtDvJPMqE-h",
"cpcid": "AROU9udKtPNyh0AZtO_WY",
"type": "memory",
"model": "Samsung DDR4 DIMMs",
"unit_price": 0.005,
"resource_unit": "Gi",
"stock": 0,
"consumed": 0,
"charge_unit": "小时",
"account_unit": "元",
"update_time": "2025-06-10 15:22:57",
"import_export": [
{
"clusterid": "4hBm8atruISOU2bs24t_N",
"clustername": "朝阳区",
"stock": 0,
"consumed": 0
}
]
},
{
"id": "PC9YvPO3pJ_I1_fd8xvca",
"cpcid": "AROU9udKtPNyh0AZtO_WY",
"type": "memory",
"model": "STANDARD",
"unit_price": 0.0004,
"resource_unit": "Gi",
"stock": 0,
"consumed": 0,
"charge_unit": "小时",
"account_unit": "元",
"update_time": "2025-06-10 15:22:55",
"import_export": [
{
"clusterid": "4hBm8atruISOU2bs24t_N",
"clustername": "朝阳区",
"stock": 0,
"consumed": 0
}
]
},
{
"id": "LLHswyKb78yYPMZIDBbjd",
"cpcid": "AROU9udKtPNyh0AZtO_WY",
"type": "memory",
"model": "Crucial P-series",
"unit_price": 0.0005,
"resource_unit": "Gi",
"stock": 0,
"consumed": 0,
"charge_unit": "小时",
"account_unit": "元",
"update_time": "2025-06-10 15:22:52",
"import_export": [
{
"clusterid": "4hBm8atruISOU2bs24t_N",
"clustername": "朝阳区",
"stock": 0,
"consumed": 0
}
]
},
{
"id": "B2Jl1_6P7mMdIdtvO-Qcf",
"cpcid": "AROU9udKtPNyh0AZtO_WY",
"type": "memory",
"model": "Kingston FURY",
"unit_price": 0.0002,
"resource_unit": "Gi",
"stock": 0,
"consumed": 0,
"charge_unit": "小时",
"account_unit": "元",
"update_time": "2025-06-10 15:22:47",
"import_export": [
{
"clusterid": "4hBm8atruISOU2bs24t_N",
"clustername": "朝阳区",
"stock": 0,
"consumed": 0
}
]
}
]
}
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
|» data|object|true|none||none|
|»» total|integer|true|none||none|
|»» rows|[object]|true|none||none|
|»»» id|string|true|none||none|
|»»» cpcid|string|true|none||算力中心ID|
|»»» type|string|true|none||算力部件类型目前只有cpu/memory/disk/gpu四种固定类型|
|»»» model|string|true|none||部件型号/系列|
|»»» unit_price|number|true|none||单位单价数额2.5元/Mi*小时)|
|»»» resource_unit|string|true|none||计费资源单位(个核/Mi内存/Gi存储/块gpu|
|»»» stock|integer|true|none||总库存数|
|»»» consumed|integer|true|none||总消耗数|
|»»» charge_unit|string|true|none||计费周期单位(小时/分钟/秒/天)|
|»»» account_unit|string|true|none||计费货币单位(元/角/分)|
|»»» update_time|string|true|none||更新时间|
|»»» import_export|[object]|true|none||库存元数据|
|»»»» clusterid|string|true|none||集群名|
|»»»» clustername|string|true|none||集群id|
|»»»» stock|integer|true|none||库存数|
|»»»» consumed|integer|true|none||消耗数|
|»»» clusterid|string|true|none||算力集群ID|
|»»» row_num_|integer|true|none||none|
## GET 部件组合询价
GET /dev/cpcc/cpcwidget/accrual_price.dspy
客户端通过此接口,查询不同算力部件组合后的产品定价
如用户要查询某些部件组合运行2天的定价可以传参数下面参数说明不支持array友好显示array里面每项都是字典/json看这里就行amount字段值是 整型):
{
"resources": [
{"type": "cpu", "model": "INTEL(R) XEON(R) PLATINUM 8582C", "amount": 4},
{"type": "memory", "model": "Samsung DDR4 DIMMs", "amount": 8192}, # 8GB必须转成8192Mi
{"type": "disk", "model": "DATA", "amount": 512},
{"type": "gpu", "model": "RTX5090-32G", "amount": 2}
],
"duration": 2,
"duration_unit": "天"
}
进行计算,其他条件同理
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|cpcid|query|string| 是 |算力中心id|
|resources|query|array[string]| 是 |1. 多种算力部件自由组合成的数组;|
|duration|query|integer| 是 |使用时长,整数|
|duration_unit|query|string| 是 |使用时长单位,可以是小时,天,周,月|
|clusterid|query|string| 否 |集群id查看集群库存|
#### 详细说明
**resources**: 1. 多种算力部件自由组合成的数组;
2. 内存一定是以Mi为单位如8GB必须转成8192Mi其他单位要提前转成Mi级
3.字段解释:
type: 部件类型下拉cpumemorydiskgpu
model部件子类型自定义填写
amount部件使用量整型输入框后面显示单位cpu-核memory-Midisk-Gigpu-卡)
> 返回示例
```json
{
"status": true,
"msg": "获取部件组合价格成功",
"data": {
"total_price": 64.08,
"currency": "元",
"price_details": [
{
"resource_name": "cpu INTEL(R) XEON(R) PLATINUM 8582C",
"resource_type": "cpu",
"amount": 4,
"resource_unit": "核",
"unit_price": 1.5,
"duration": "1",
"duration_unit": "小时",
"subtotal": 6
},
{
"resource_name": "memory Samsung DDR4 DIMMs",
"resource_type": "memory",
"amount": 8192,
"resource_unit": "Mi",
"unit_price": 0.005,
"duration": "1",
"duration_unit": "小时",
"subtotal": 40.96
},
{
"resource_name": "disk DATA",
"resource_type": "disk",
"amount": 512,
"resource_unit": "Gi",
"unit_price": 0.01,
"duration": "1",
"duration_unit": "小时",
"subtotal": 5.12
},
{
"resource_name": "gpu RTX5090-32G",
"resource_type": "gpu",
"amount": 2,
"resource_unit": "卡",
"unit_price": 6,
"duration": "1",
"duration_unit": "小时",
"subtotal": 12
}
],
"status": true,
"message": "汇算正常",
"duration": "1",
"duration_unit": "小时"
}
}
```
```json
{
"status": false,
"msg": "无效的 gpu 部件型号: RTXs5090-32G",
"data": {
"total_price": 52.08,
"currency": "元",
"price_details": [
{
"resource_name": "cpu INTEL(R) XEON(R) PLATINUM 8582C",
"resource_type": "cpu",
"amount": 4,
"resource_unit": "核",
"unit_price": 1.5,
"duration": "1",
"duration_unit": "小时",
"subtotal": 6
},
{
"resource_name": "memory Samsung DDR4 DIMMs",
"resource_type": "memory",
"amount": 8192,
"resource_unit": "Mi",
"unit_price": 0.005,
"duration": "1",
"duration_unit": "小时",
"subtotal": 40.96
},
{
"resource_name": "disk DATA",
"resource_type": "disk",
"amount": 512,
"resource_unit": "Gi",
"unit_price": 0.01,
"duration": "1",
"duration_unit": "小时",
"subtotal": 5.12
},
{
"resource_type": "gpu",
"error": "无效的 gpu 部件型号: RTXs5090-32G"
}
],
"status": false,
"message": "无效的 gpu 部件型号: RTXs5090-32G",
"duration": "1",
"duration_unit": "小时"
}
}
```
```json
{
"status": false,
"msg": "memory Samsung DDR4 DIMMs 库存不足 (库存: 1280, 请求: 8192)",
"data": {
"total_price": 23.12,
"currency": "元",
"price_details": [
{
"resource_name": "cpu INTEL(R) XEON(R) PLATINUM 8582C",
"resource_type": "cpu",
"amount": 4,
"resource_unit": "核",
"unit_price": 1.5,
"duration": "1",
"duration_unit": "小时",
"subtotal": 6
},
{
"resource_type": "memory",
"error": "memory Samsung DDR4 DIMMs 库存不足 (库存: 1280, 请求: 8192)"
},
{
"resource_name": "disk DATA",
"resource_type": "disk",
"amount": 512,
"resource_unit": "Gi",
"unit_price": 0.01,
"duration": "1",
"duration_unit": "小时",
"subtotal": 5.12
},
{
"resource_name": "gpu RTX5090-32G",
"resource_type": "gpu",
"amount": 2,
"resource_unit": "卡",
"unit_price": 6,
"duration": "1",
"duration_unit": "小时",
"subtotal": 12
}
],
"status": false,
"message": "memory Samsung DDR4 DIMMs 库存不足 (库存: 1280, 请求: 8192)",
"duration": "1",
"duration_unit": "小时"
}
}
```
```json
{
"status": false,
"msg": "没有该类型组件",
"data": {
"total_price": 0,
"currency": "元",
"price_details": [
{
"resource_type": "cpu",
"error": "没有该类型组件"
},
{
"resource_type": "memory",
"error": "没有该类型组件"
},
{
"resource_type": "disk",
"error": "没有该类型组件"
},
{
"resource_type": "gpu",
"error": "没有该类型组件"
}
],
"status": false,
"message": "没有该类型组件",
"duration": 1,
"duration_unit": "小时"
}
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
|» data|object|true|none||none|
|»» total_price|number|true|none||none|
|»» currency|string|true|none||none|
|»» price_details|[object]|true|none||none|
|»»» resource_name|string|true|none||none|
|»»» resource_type|string|true|none||none|
|»»» amount|integer|true|none||none|
|»»» resource_unit|string|true|none||none|
|»»» unit_price|number|true|none||none|
|»»» duration|string|true|none||none|
|»»» duration_unit|string|true|none||none|
|»»» subtotal|integer|true|none||none|
|»» status|boolean|true|none|接口状态|none|
|»» message|string|true|none|接口信息|none|
|»» duration|string|true|none|时间间隔长度|2|
|»» duration_unit|string|true|none|时间间隔单位|小时/天/周/月|
## POST 更新算力部件单价
POST /dev/cpcc/cpcwidget/update_cpcwidget.dspy
更新算力部件信息
注意:
1.只能更新单位单价!
2.必须登录态才能操作!
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 否 |获取算力部件得到的id|
|cpcid|query|string| 是 |算力中心id|
|unit_price|query|string| 是 |更新单位单价浮点数apifox不支持设置浮点格式请注意|
|type|query|string| 是 |算力部件类型|
|model|query|string| 是 |gpu型号系列|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "更新算力部件成功",
"data": {
"cpcid": "AROU9udKtPNyh0AZtO_WY",
"id": "YnTYUrOhKTB_WjuK8zNj5",
"unit_price": "0.0009"
}
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 移除算力部件
POST /dev/cpcc/cpcwidget/delete_cpcwidget.dspy
移除算力中心部件
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|id|query|string| 是 |节点部件查找返回的id|
|cpcid|query|string| 是 |算力中心id|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
# kboss容器云/算力集群节点管理(未开发)
## POST 算力集群新增工作节点(调试中)
POST /dev/cpcc/cpcworker/new_cpcworker.dspy
重操作约3分钟
Web前端给某集群新增算力节点Web后端接收到参数后传递参数给算力中心服务pcapi。
pcapi进行ssh远程到某算力设备中进行安装算力集群控制节点安装结果字段返回给Web后端进行存库。
中间是一连贯操作请确保Web前后端之间接口有超时判断能力。
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|cpcid|query|string| 是 |算力中心id|
|clusterid|query|string| 是 |选中集群id|
|worker_nodeid|query|string| 是 |选中算力设备id|
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
## POST 算力集群移除工作节点(未开发)
POST /
重操作约1分钟
> 返回示例
> 200 Response
```json
{}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
# kboss容器云/购买页通用接口(调试中)
## GET 获取站点GPU资源配置库存
GET /dev/cpcc/cpcwidget/obtaining_gpuinfo.dspy
购买页GPU算力资源含库存信息
获取去重后显示该算力中心下的GPU算力资源
以算力集群为最小单位获取资源
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|cpcid|query|string| 否 |算力中心id|
|clusterid|query|string| 否 |算力集群id|
> 返回示例
```json
{
"status": true,
"msg": "获取集群GPU库存成功",
"data": {
"V100-32G": 8,
"RTX4090-24G": 12,
"RTX5090-32G": 10,
"A100-80G": 5,
"STANDARD-8G": 1
}
}
```
```json
{
"status": true,
"msg": "获取集群GPU库存成功",
"data": {
"V100-32G": 8,
"RTX4090-24G": 12,
"RTX5090-32G": 10,
"另一个算力集群(不同算力中心下)显卡型号XXX-12G": 1,
"A100-80G": 5,
"STANDARD-8G": 1
}
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||none|
|» msg|string|true|none||none|
|» data|object|true|none||none|
|»» V100-32G|integer|true|none||none|
|»» RTX4090-24G|integer|true|none||none|
|»» RTX5090-32G|integer|true|none||none|
|»» A100-80G|integer|true|none||none|
|»» STANDARD-8G|integer|true|none||none|
## GET 获取站点不可部署产品ID
GET /dev/cpcc/cpcbuy/determine_accommodat.dspy
1. 判断购买页的产品组合是否能完整部署到某站点/集群中的可用节点上?
2. 原理:资源实例是运行在某节点上的,至少有一个工作节点拥有用户勾选的所有部件库存可用量时才可进行下一步,否则报无可用节点!
3. 入参:算力中心-集群中若干算力部件参数组组成的JSON
4. 出参:置灰/不可部署产品id组成的数组
### 请求参数
|名称|位置|类型|必选|说明|
|---|---|---|---|---|
|cpcid|query|string| 是 |算力中心id|
|clusterid|query|string| 是 |集群id|
|resources|query|string| 是 |请求资源详情|
|kyylabels|query|string| 是 |none|
> 返回示例
> 200 Response
```json
{
"status": true,
"msg": "获取不可部署产品ID成功",
"data": [
"5436-f-gdsb--ewrewrerrtwt",
"6787jhgvgjhv32412343142jvgj"
],
"reason": "dynamic"
}
```
### 返回结果
|状态码|状态码含义|说明|数据模型|
|---|---|---|---|
|200|[OK](https://tools.ietf.org/html/rfc7231#section-6.3.1)|none|Inline|
### 返回数据结构
状态码 **200**
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|» status|boolean|true|none||接口状态|
|» msg|string|true|none||接口状态详情|
|» data|[string]|true|none||none|
|» reason|string|true|none||判定环节|
# 数据模型
<h2 id="tocS_文档基础表">文档基础表</h2>
<a id="schema文档基础表"></a>
<a id="schema_文档基础表"></a>
<a id="tocS文档基础表"></a>
<a id="tocs文档基础表"></a>
```json
{
"id": "string",
"user_name": "NULL",
"kind": "NULL",
"file_type": "NULL",
"title": "NULL",
"content": "NULL",
"file_path": "NULL",
"status": 0,
"del_flg": "'0'",
"create_at": "current_timestamp()",
"update_at": "current_timestamp()"
}
```
### 属性
|名称|类型|必选|约束|中文名|说明|
|---|---|---|---|---|---|
|id|string|true|none||none|
|user_name|string|false|none||上传者|
|kind|integer|false|none||文件所属分类|
|file_type|string|false|none||文件类型|
|title|string|false|none||标题|
|content|string|false|none||内容|
|file_path|string|false|none||文件路径|
|status|integer|false|none||状态0不展示1:展示|
|del_flg|string|false|none||删除标志|
|create_at|string|true|none||创建时间戳|
|update_at|string|true|none||修改时间戳|
#### 枚举值
|属性|值|
|---|---|
|status|0|
|status|1|