调用方式
请求结构
1.通信协议
浪潮云API的所有接口均通过HTTPS进行通信,提供高安全性的通信通道。
2.请求规则
https:// + 请求域名 +请求路径 + ? +最终请求参数串
3.服务地址
目前支持的域名列表为:
地域 | 域名 |
---|---|
华北三 | mysql.cn-north-3.inspurcloudapi.com |
4.请求方法
方法 | 说明 |
---|---|
GET | 请求服务器返回指定资源。 |
PUT | 请求服务器更新指定资源。 |
POST | 请求服务器新增资源或执行特殊操作。 |
DELETE | 请求服务器删除指定资源,如删除对象等。 |
HEAD | 请求服务器资源头部。 |
PATCH | 请求服务器更新资源的部分内容。 当资源不存在的时候,PATCH可能会去创建一个新的资源。 |
5.字符编码
浪潮云API的请求及返回结果均使用UTF-8字符集进行编码。
签名机制
a).Token认证
点击按钮,跳转至【IAM接口文档】- 【Token认证】页面
b).AK/SK认证
点击按钮,跳转至【IAM接口文档】- 【AK/SK认证】页面
公共参数
公共请求头
每次请求中需要在headers中带入认证信息。向产品后端发送的每个请求接口均需要携带,之后文档的接口请求参数中不再重复包含此信息。
key | value | 说明 |
---|---|---|
Authorization | Bearer keyclocktoken | keyclocktoken为keyclock生成的token字符串 |
公共返回值
1.正确请求,响应对应的返回类型。
2.请求错误,或者后端抛出异常,返回body包含下面三个字段。
名称 | 位置 | 类型 | 是否必须 | 描述 |
---|---|---|---|---|
code | Body | String | Y | 错误时返回相应错误码 |
message | Body | string | Y | 返回信息(简要介绍错误详情) |
requestId | Body | string | Y | 请求的requestId |
通用请求返回值
正常返回
返回值 | 说明 |
---|---|
200 | 请求成功。 |
202 | 任务提交成功,当前系统繁忙,下发的任务会延迟处理。 |
204 | 任务提交成功。 |
异常返回
返回值 | 说明 |
---|---|
300 multiple choices | 被请求的资源存在多个可供选择的响应。 |
400 Bad Request | 服务器未能处理请求。 |
401 Unauthorized | 被请求的页面需要用户名和密码。 |
403 Forbidden | 对被请求页面的访问被禁止。 |
404 Not Found | 服务器无法找到被请求的页面。 |
405 Method Not Allowed | 请求中指定的方法不被允许。 |
406 Not Acceptable | 服务器生成的响应无法被客户端所接受。 |
407 Proxy Authentication Required | 用户必须首先使用代理服务器进行验证,这样请求才会被处理。 |
408 Request Timeout | 请求超出了服务器的等待时间。 |
409 Conflict | 由于冲突,请求无法被完成。 |
500 Internal Server Error | 请求未完成。服务异常。 |
501 Not Implemented | 请求未完成。服务器不支持所请求的功能。 |
502 Bad Gateway | 请求未完成。服务器从上游服务器收到一个无效的响应。 |
503 Service Unavailable | 请求未完成。系统暂时异常。 |
504 Gateway Timeout | 网关超时。 |
错误码
实例操作相关错误码
错误代码 | 错误信息 | Http状态码 | 说明 |
---|---|---|---|
200.001001 | '{0}'实例名称重复 | 500 | … |
200.001002 | 服务模版不存在,实例类型'{0}'、引擎'{1}'、引擎版本'{2}' | 500 | … |
200.001003 | 虚拟机规格'{0}'不存在 | 500 | … |
200.001004 | 实例'{0}'不存在 | 500 | … |
200.001005 | 实例'{0}'扩展元信息不存在 | 500 | … |
200.001006 | 订单'{0}'未成功支付,无法创建实例 | 500 | … |
200.001007 | 实例'{0}'的网络信息不存在 | 500 | … |
200.001008 | 实例'{0}'的节点信息不存在 | 500 | … |
200.001009 | 实例'{0}'的订单信息不存在 | 500 | … |
200.001010 | 实例'{0}'访问信息不存在 | 500 | … |
200.001011 | 存储类型'{0}'不存在 | 500 | … |
200.001012 | 实例'{0}'过期时间:'{1}'解析失败 | 500 | … |
200.001021 | 消息无法处理,退回消息,'{0}' | 500 | … |
200.001022 | 消息退回失败 | 500 | … |
200.001023 | 实例'{0}'状态不支持进行重启操作 | 500 | … |
200.001024 | 实例'{0}'为包年包月计费,不能进行删除操作 | 500 | … |
200.001025 | 实例'{0}'状态为'{1}',不能进行续费操作 | 500 | … |
200.001026 | 实例'{0}'为按需计费,不能进行续费操作 | 500 | … |
200.001027 | 实例'{0}'已欠费或已到期,不能进行操作 | 500 | … |
200.001028 | 升级补丁'{0}'不存在 | 500 | … |
200.001029 | 实例升级任务记录'{0}'不存在 | 500 | … |
200.001030 | 无访问权限 | 500 | … |
200.001031 | token已过期 | 500 | … |
200.001032 | 通过requestId'{0}'无法找到对应的操作记录 | 500 | … |
200.001033 | 通过requestId'{0}'无法找到对应的操作记录类型'{1}' | 500 | … |
200.001034 | 实例'{0}'状态不支持删除操作 | 500 | … |
200.001035 | 实例'{0}'正在备份,不能进行删除操作 | 500 | … |
200.001036 | 获取openstack_scoped_token失败,openstack_scoped_token为null | 500 | … |
200.001037 | 获取openstack_scoped_token失败,json转换错误 | 500 | … |
200.001038 | 获取openstack_unscoped_token失败,openstack_unscoped_token为null | 500 | … |
200.001039 | 获取openstack_unscoped_token失败,json转换错误 | 500 | … |
200.001040 | 实例'{0}'状态为'{1}',不能进行更配和扩容操作 | 500 | … |
200.001041 | 实例'{0}'磁盘扩容失败,磁盘容量应大于0并且是5的倍数 | 500 | … |
200.001042 | 订单'{0}'的订单类型不存在 | 500 | … |
200.001043 | 实例'{0}'规格没有改变,不能进行更配操作 | 500 | … |
200.001044 | 超出扩容最大次数 | 500 | … |
200.001045 | 实例网络不存在,vpcId'{0}' | 500 | … |
200.001046 | 用户Token解析失败 | 500 | … |
200.001047 | 通过operationId'{0}'无法找到对应的操作元信息记录 | 500 | … |
200.001048 | 实例'{0}'更配失败,更配规格应大于原规格 | 500 | … |
200.001049 | 实例'{0}'定时任务不存在 | 500 | … |
200.001050 | 实例'{0}'扩容后磁盘容量超出当前规格最大容量 | 500 | … |
200.001051 | 实例'{0}'正在备份,不能进行重启操作 | 500 | … |
200.001052 | 实例'{0}'正在备份,不能进行更配操作 | 500 | … |
200.001053 | 实例'{0}'备份策略不存在 | 500 | … |
200.001054 | 安全组模板不存在,安全组Id'{0}' | 500 | … |
200.001055 | 实例'{0}'设置自动续费失败 | 500 | … |
200.001056 | 实例'{0}'状态非运行中,不能设置自动续费 | 500 | … |
200.001057 | 实例'{0}'计费类型非包年包月,不能设置自动续费 | 500 | … |
200.001058 | 只读实例vip模板不存在 | 500 | … |
200.001059 | 只读实例组'{0}'不存在 | 500 | … |
200.001060 | 实例'{0}'所属只读实例组不存在 | 500 | … |
200.001061 | 只读实例'{0}'元数据不存在 | 500 | … |
200.001062 | 主实例'{0}'的只读实例配额不足 | 500 | … |
200.001063 | 实例正在进行主从切换,请稍后再试 | 500 | … |
200.001064 | 只读实例'{0}'状态未就绪 | 500 | … |
200.001067 | 虚拟私有网络查询失败 | 500 | … |
200.001068 | 实例绑定弹性公网IP失败 | 500 | … |
200.001069 | 实例解绑弹性公网IP失败 | 500 | … |
200.001070 | 实例更改安全组失败 | 500 | … |
200.001071 | 查询公网IP失败 | 500 | … |
实例备份操作相关错误码
错误代码 | 错误信息 | Http状态码 | 说明 |
---|---|---|---|
200.003001 | 备份'{0}'不存在 | 500 | … |
200.003002 | 实例'{0}'备份失败 | 500 | … |
200.003003 | 实例'{0}'恢复失败 | 500 | … |
200.003004 | 备份'{0}'不属于实例'{1}' | 500 | … |
200.003005 | 目标实例'{0}'规格小于备份原实例'{1}'规格 | 500 | … |
200.003006 | 目标实例'{0}'状态非运行中或者恢复失败,不能进行恢复操作 | 500 | … |
200.003007 | 备份'{0}'状态为备份中,不能进行删除操作 | 500 | … |
200.003008 | 实例'{0}'正在备份,不能进行恢复操作 | 500 | … |
200.003009 | 备份'{0}'正在使用,不能进行删除操作 | 500 | … |
200.003010 | 实例'{0}'正在备份,不能再备份 | 500 | … |
200.003011 | 实例备份认证失败 | 500 | … |
200.003012 | 实例备份认证Token为空 | 500 | … |
200.003013 | 实例'{0}'自动备份策略更新失败 | 500 | … |
200.003014 | 实例'{0}'自动备份开启失败 | 500 | … |
200.003015 | 实例'{0}'自动备份未开启 | 500 | … |
200.003016 | 实例'{0}'自动备份关闭失败 | 500 | … |
200.003017 | 实例'{0}'自动备份删除失败 | 500 | … |
200.003018 | 实例'{0}'存在只读实例,不能进行恢复操作 | 500 | … |
用户管理操作相关错误码
错误代码 | 错误信息 | Http状态码 | 说明 |
---|---|---|---|
200.004001 | 默认用户'{0}'不允许修改 | 500 | … |
200.004002 | 实例'{0}'状态非运行中,不能进行重置密码操作 | 500 | … |
200.004003 | 账号'{0}'已经存在 | 500 | … |
200.004004 | 实例'{0}'状态非运行中,不能创建数据库账号 | 500 | … |
200.004005 | 实例'{0}'状态非运行中,不能删除数据库账号 | 500 | … |
200.004006 | 账号'{0}'不存在 | 500 | … |
200.004007 | 实例'{0}'状态非运行中,不能进行数据库和账户授权、撤销权限操作 | 500 | … |
200.004008 | 权限列表不能为空 | 500 | … |
数据库管理操作相关错误码
错误代码 | 错误信息 | Http状态码 | 说明 |
---|---|---|---|
200.005101 | 登录数据库的用户名或密码错误 | 500 | … |
200.005102 | 网络连接失败 | 500 | … |
200.005103 | 服务不可用 | 500 | … |
200.005104 | 数据库'{0}'名称重复 | 500 | … |
200.005105 | 数据库'{0}'不存在 | 500 | … |
200.005106 | 实例'{0}'状态非运行中,不能创建数据库 | 500 | … |
200.005107 | 实例'{0}'状态非运行中,不能删除数据库 | 500 | … |
日志管理相关错误码
错误代码 | 错误信息 | Http状态码 | 说明 |
---|---|---|---|
200.007001 | 实例'{0}'状态非运行中,不能开启慢日志 | 500 | … |
200.007002 | 实例'{0}'状态非运行中,不能关闭慢日志 | 500 | … |
200.007003 | 实例'{0}'状态非运行中,不能设置慢日志阈值 | 500 | … |
200.007004 | 实例'{0}'慢日志功能未开启,不能设置阈值 | 500 | … |
200.007005 | 实例'{0}'状态非运行中,不能查询慢日志信息 | 500 | … |
参数管理相关错误码
错误代码 | 错误信息 | Http状态码 | 说明 |
---|---|---|---|
200.002001 | 实例'{0}'状态非运行状态,不支持修改实例参数 | 500 | … |
200.002002 | 参数'{0}'不支持修改操作 | 500 | … |
200.002003 | 参数'{0}'取值错误 | 500 | … |
200.002004 | 实例'{0}'默认参数模板未找到 | 500 | … |
200.002005 | 实例'{0}'参数修改历史记录未找到 | 500 | … |
200.002006 | 实例'{0}'要修改的参数为空,请重新输入要修改的参数 | 500 | … |
200.002007 | 参数模板名称'{0}'已经存在 | 500 | … |
200.002008 | 创建参数模板,来源模板和来源实例均为空 | 500 | … |
200.002009 | 参数模板'{0}'未找到 | 500 | … |
200.002010 | 修改参数模板,名称、描述和参数值均为空 | 500 | … |
200.002011 | 批量删除中,参数模板id列表不能为空 | 500 | … |
200.002012 | 参数模板应用到实例,要修改的参数为空,请重新操作 | 500 | … |
200.002013 | 参数模板应用到实例,要修改的实例id不能为空,请重新操作 | 500 | … |
BSS查询操作相关错误码
错误代码 | 错误信息 | Http状态码 | 说明 |
---|---|---|---|
200.009001 | 用户不可购买产品{0}.{1} | 500 | … |
200.009002 | 获取用户产品配额失败 | 500 | … |
200.009003 | 用户当前剩余配额{0},无法创建{1}个服务实例 | 500 | … |
200.009004 | 找不到订单明细'{0}' | 500 | … |
200.009005 | 计算订单价格失败 | 500 | … |
200.009006 | 获取产品类型失败 | 500 | … |
200.009007 | 获取配额失败 | 500 | … |
200.009008 | 确认订单失败 | 500 | … |
200.009009 | 提交并支付订单失败 | 500 | … |
200.009010 | 获取实例到期时间失败 | 500 | … |
200.009011 | 区域{0}无法创建服务实例 | 500 | … |
200.009012 | 可用区{0}无法创建服务实例 | 500 | … |
200.009013 | 区域{0}中没有可用的可用区 | 500 | … |
200.009014 | BSS返回结果失败 | 500 | … |
200.009015 | 订单'{0}'确认失败 | 500 | … |
实例工厂调用相关错误码
错误代码 | 错误信息 | Http状态码 | 说明 |
---|---|---|---|
200.010001 | 创建操作错误 | 500 | … |
200.010002 | 删除操作错误 | 500 | … |
200.010003 | 重置密码操作错误 | 500 | … |
200.010004 | 重启数据库操作错误 | 500 | … |
200.010005 | 健康检查操作错误 | 500 | … |
200.010006 | 停服操作错误 | 500 | … |
200.010007 | 升级数据库操作错误 | 500 | … |
200.010008 | 备份操作错误 | 500 | … |
200.010009 | 恢复操作错误 | 500 | … |
200.010010 | 实例'{0}'升级规格失败 | 500 | … |
200.010011 | 实例'{0}'扩容磁盘失败 | 500 | … |
200.010012 | 创建数据库账号错误 | 500 | … |
200.010013 | 授权错误 | 500 | … |
200.010014 | 删除数据库账号错误 | 500 | … |
200.010015 | 查询数据库错误 | 500 | … |
200.010016 | 创建数据库'{0}'失败 | 500 | … |
200.010017 | 数据库'{0}'删除失败 | 500 | … |
200.010018 | 开启慢日志错误 | 500 | … |
200.010019 | 关闭慢日志错误 | 500 | … |
200.010020 | 设置慢日志阈值错误 | 500 | … |
200.010021 | 查询慢日志信息错误 | 500 | … |
200.010022 | 创建vip失败 | 500 | … |
200.010023 | 初始化只读实例'{0}'错误 | 500 | … |
200.010024 | 只读实例'{0}'更新Haproxy错误 | 500 | … |
200.010025 | 只读实例'{0}'删除Haproxy错误 | 500 | … |
200.010026 | 删除vip失败 | 500 | … |
200.010027 | 修改参数操作错误 | 500 | … |
swan监控相关错误码
错误代码 | 错误信息 | Http状态码 | 说明 |
---|---|---|---|
200.011101 | 停止实例监控失败 | 500 | … |
200.011102 | 启动实例监控失败 | 500 | … |
200.011103 | 暂停实例监控失败 | 500 | … |
200.011104 | 恢复实例监控失败 | 500 | … |
200.011105 | 添加实例监控失败 | 500 | … |
200.011106 | 删除实例监控失败 | 500 | … |
200.011107 | 查看实例监控信息失败 | 500 | … |
提交任务类请求结果
响应
- 正常响应要素说明
名称 | 参数类型 | 说明 |
---|---|---|
job_id | String | 提交任务成功后返回的任务ID,用户可以使用该ID对任务执行情况进行查询。如何根据job_id来查询Job的执行状态,请参考查询Job状态。 |
- 异常响应要素说明
名称 | 参数类型 | 说明 |
---|---|---|
error | 字典数据结构 | 提交任务异常是返回的异常信息,详情请参见表1。 |
表1 error数据结构
名称 | 参数类型 | 说明 |
---|---|---|
message | String | 任务异常错误信息描述。 |
code | String | 任务异常错误信息编码。 |
- 响应样例
正常响应:
{
"job_id": "70a599e0-31e7-49b7-b260-868f441e862b",
}
异常响应:
{
"error": {"message": "", "code": XXX}
}