接口功能介绍
支持按需/包年包月订购VPN网关。
接口约束
支持主备模式资源池,并且用户VPN网关配额未满;用户账户余额充足,该接口无法使用优惠券支付,若余额不足会创建一个待支付订单。
URI
POST /v4/vpn/gateway/new
路径参数
无
Query参数
无
请求参数
请求头header参数
无
请求体body参数
参数 | 是否必填 | 参数类型 | 说明 | 示例 | 下级对象 |
---|---|---|---|---|---|
clientToken | 否 | String | 客户端存根,用于保证订单幂等性。要求单个云平台账户内唯一。 | ||
regionID | 是 | String | 资源池ID, 例:100054c0416811e9a6690242ac110002 | ||
vpnGatewayName | 是 | String | VPN网关名字 | ||
vpcId | 是 | String | VPC ID | ||
bandwidth | 是 | Integer | 带宽,单位为Mbps | ||
connectionLimit | 是 | Integer | VPN网关连接数限制 | ||
onDemand | 否 | Boolean | 是否按需下单,默认为false | ||
cycleType | 否 | String | 本参数表示包周期类型。 取值范围: YEAR MONTH onDemand为false时,必须指定。 |
||
cycleCount | 否 | Integer | 包周期数。onDemand为false时必须指定。周期最大长度不能超过36个月 | ||
description | 否 | String | 描述 |
响应参数
参数 | 参数类型 | 说明 | 示例 | 下级对象 |
---|---|---|---|---|
statusCode | Integer | 返回状态码(800为成功,900为失败) | ||
message | String | 失败时的错误描述,一般为英文描述 | ||
description | String | 失败时的错误描述,一般为中文描述 | ||
returnObj | Object | 返回对象 | returnObj | |
errorCode | String | 业务细分码,为product.module.code三段式码 | ||
details | Object | 错误明细,一般情况下,会对订单侧(bss)的VPN网关订单业务相关的错误做明确的错误映射和提升,有唯一对应的errorCode |
表 returnObj
参数 | 参数类型 | 说明 | 示例 | 下级对象 |
---|---|---|---|---|
masterOrderID | String | 订单ID,调用方在拿到masterOrderID之后,在若干错误情况下,可以使用materOrderID进一步确认订单状态及资源状态。 | ||
masterOrderNO | String | 订单号 | ||
masterResourceID | String | 主资源ID | ||
masterResourceStatus | String | 主资源状态,只有主订单资源会返回 | ||
regionID | String | 资源所属资源池ID | ||
resources | Array of Object | 资源明细列表,参考表Resource | Resource |
表 Resource
参数 | 是否必填 | 参数类型 | 说明 | 示例 | 下级对象 |
---|---|---|---|---|---|
resourceID | String | 单项资源的变配、续订、退订等需要该资源项的ID,比如某个云主机资源作为主资源,对其挂载 | |||
orderID | String | 无需关心 | |||
startTime | Integer | 启动时刻,epoch时戳,毫秒精度 | |||
expireTime | Integer | 过期时刻,epoch时戳,毫秒精度 | |||
createTime | Integer | 创建时刻,epoch时戳,毫秒精度 | |||
updateTime | Integer | 更新时刻,epoch时戳,毫秒精度 | |||
status | Integer | 资源状态,无需关心。参考masterResourceStatus | |||
isMaster | Boolean | 是否是主资源项 | |||
itemValue | Integer | 资源规格,VPN网关带宽大小或VPN连接数 | |||
resourceUUID | String | 资源UUID,结合regionID一起使用 | |||
resourceConfig | Object | VPN网关资源配置或VPN连接资源配置 |
请求示例
请求头header
无
请求体body
可使用同clientToken重试下单,查询订单是否成功
{
"clientToken": "",
"regionID": "41f64827f25f468595ffa3a5deb5d15d",
"vpnGatewayName": "vpn-gateway04",
"vpcId": "vpc-0ze19rj2",
"bandwidth": 5,
"connectionLimit": 10,
"onDemand": false,
"cycleType": "month",
"cycleCount": 2,
"description": ""
}
响应示例
{
"returnObj": {
"masterResourceStatus": "started",
"regionID": "81f7728662dd11ec810800155d307d5b",
"masterOrderID": "cc4d89345cf011edabf50242ac110003",
"masterResourceID": "6f887fa6d89f4617a5a21c7955a15e22",
"masterOrderNO": null,
"resources": [{
"orderID": "dcdae4ffdeb740ca8ab8ed000bad7e62",
"status": 2,
"isMaster": true,
"resourceType": "VPN_GETWAY",
"resourceID": "6f887fa6d89f4617a5a21c7955a15e22",
"masterOrderID": "cc4d89345cf011edabf50242ac110003",
"updateTime": 1667642516000,
"masterResourceID": "6f887fa6d89f4617a5a21c7955a15e22",
"itemValue": 5,
"startTime": 1667642500000,
"resourceConfig": {
"projectID": "0",
"number": "5",
"zoneid": "81f7728662dd11ec810800155d307d5b",
"bandwidth": "5",
"vpnname": "vpn-gateway04-openapineworder",
"size": "5",
"isauto": "1",
"regionid": "81f7728662dd11ec810800155d307d5b",
"ifautorenew": "false",
"version": "v1",
"zonetype": "1",
"type": "1",
"spec": "standard",
"yptProductLimit": "PUB_100_02_0001",
"autorenewcyclecnt": "0",
"prodissupportedcredit": "PUB_100_02_0001",
"desc": "new order test for openapi",
"vpcid": "vpc-fbv8opnarp",
"platformid": "81f7728662dd11ec810800155d307d5b",
"value": "5",
"billmode": "1"
},
"createTime": 1667642483000
}, {
"orderID": "dcdae4ffdeb740ca8ab8ed000bad7e62",
"status": 2,
"isMaster": false,
"resourceType": "VPN_LINK",
"resourceID": "a9c27f76ad7a4a6888e1e51848de652c",
"masterOrderID": "cc4d89345cf011edabf50242ac110003",
"updateTime": 1667642516000,
"masterResourceID": "6f887fa6d89f4617a5a21c7955a15e22",
"itemValue": 1,
"startTime": 1667642500000,
"resourceConfig": {
"yptProductLimit": "PUB_100_02_0001",
"number": "1",
"platformid": "81f7728662dd11ec810800155d307d5b",
"projectID": "0",
"regionid": "81f7728662dd11ec810800155d307d5b",
"prodissupportedcredit": "PUB_100_02_0001",
"value": "1",
"zoneid": "81f7728662dd11ec810800155d307d5b",
"version": "v1",
"billmode": "1",
"zonetype": "1",
"spec": "10",
"size": "1"
},
"createTime": 1667642483000
}]
},
"details": "",
"message": "success",
"description": "成功",
"statusCode": 800
}
状态码
状态码 | 描述 |
---|---|
800 | 表示请求成功 |
900 | 表示请求未成功(可能暂时未成功,首次下单后会是订单处理中,状态码为900) |
错误码
errorCode | 描述 |
---|---|
OPENAPI.PatternCheck.NotValid | 请求参数无效 |
OPENAPI.VPN.AccessFailed | 内部错误,请重试。如果多次尝试失败,请提交工单 |