更新时间:2024-11-11 GMT+08:00
分享

创建API分组

功能介绍

API分组是API的管理单元,一个API分组等同于一个服务入口,创建API分组时,返回一个子域名作为访问入口。建议一个API分组下的API具有一定的相关性。

调用方法

请参见如何调用API

URI

POST /v2/{project_id}/apigw/instances/{instance_id}/api-groups

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

项目ID,获取方式请参见获取项目ID

instance_id

String

实例ID,在API网关控制台的“实例信息”中获取。

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

用户Token。通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。

表3 请求Body参数

参数

是否必选

参数类型

描述

name

String

API分组的名称。

支持汉字、英文、数字、中划线、下划线、点、斜杠、中英文格式下的小括号和冒号、中文格式下的顿号,且只能以英文、汉字和数字开头,3-255个字符。

说明:

中文字符必须为UTF-8或者unicode编码。

最小长度:3

最大长度:255

remark

String

API分组描述。

说明:

中文字符必须为UTF-8或者unicode编码。

最大长度:1000

roma_app_id

String

分组归属的集成应用编号。

分组版本V2时必填。

暂不支持

version

String

分组版本

  • V1:全局分组
  • V2:应用级分组

V2暂不支持,默认V1

响应参数

状态码: 201

表4 响应Body参数

参数

参数类型

描述

id

String

编号

name

String

API分组名称

status

Integer

状态

  • 1: 有效

sl_domain

String

系统默认分配的子域名

register_time

String

创建时间

update_time

String

最近修改时间

on_sell_status

Integer

是否已上架云商店:

  • 1:已上架
  • 2:未上架
  • 3:审核中

url_domains

Array of UrlDomain objects

分组上绑定的独立域名列表

sl_domain_access_enabled

Boolean

调试域名是否可以访问,true表示可以访问,false表示禁止访问

缺省值:true

sl_domains

Array of strings

系统默认分配的子域名列表

remark

String

描述

call_limits

Integer

流控时长内分组下的API的总访问次数限制,默认不限,请根据服务的负载能力自行设置

暂不支持

time_interval

Integer

流控时长

暂不支持

time_unit

String

流控的时间单位

暂不支持

is_default

Integer

是否为默认分组

version

String

分组版本

  • V1:全局分组
  • V2:应用级分组

V2暂不支持,默认为V1

roma_app_id

String

分组归属的集成应用编号。

分组版本V2时必填。

暂不支持

roma_app_name

String

分组归属的集成应用名称

暂不支持

表5 UrlDomain

参数

参数类型

描述

id

String

域名编号

domain

String

访问域名

cname_status

Integer

域名cname状态:

  • 1:未解析
  • 2:解析中
  • 3:解析成功
  • 4:解析失败

ssl_id

String

SSL证书编号

ssl_name

String

SSL证书名称

min_ssl_version

String

最小ssl协议版本号。支持TLSv1.1或TLSv1.2

缺省值:TLSv1.1

verified_client_certificate_enabled

Boolean

是否开启客户端证书校验。只有绑定证书时,该参数才生效。当绑定证书存在trusted_root_ca时,默认开启;当绑定证书不存在trusted_root_ca时,默认关闭。

缺省值:false

is_has_trusted_root_ca

Boolean

是否存在信任的根证书CA。当绑定证书存在trusted_root_ca时为true。

缺省值:false

ingress_http_port

Integer

访问该域名绑定的http协议入方向端口,-1表示无端口且协议不支持,可使用80默认端口,其他有效端口允许的取值范围为1024~49151,需为实例已开放的HTTP协议的自定义入方向端口。

当创建域名时,该参数未填表示用默认80端口;如果填写该参数,则必须同时填写https_port;如果要http_port和https_port同时使用默认端口,则两个参数都不填。

当修改域名时,该参数未填表示不修改该端口。

最小值:-1

最大值:49151

ingress_https_port

Integer

访问该域名绑定的https协议入方向端口,-1表示无端口且协议不支持,可使用443默认端口,其他有效端口允许的取值范围为1024~49151,需为实例已开放的HTTPS协议的自定义入方向端口。

当创建域名时,该参数未填表示用默认443端口;如果填写该参数,则必须同时填写http_port;如果要http_port和https_port同时使用默认端口,则两个参数都不填。

当修改域名时,该参数未填表示不修改该端口。

最小值:-1

最大值:49151

ssl_infos

Array of SslInfo objects

SSL证书列表。

表6 SslInfo

参数

参数类型

描述

ssl_id

String

SSL证书编号。

ssl_name

String

SSL证书名称。

algorithm_type

String

证书算法类型:

  • RSA
  • ECC
  • SM2

type

String

证书可见范围:

  • instance:当前实例
  • global:全局

缺省值:global

状态码: 400

表7 响应Body参数

参数

参数类型

描述

error_code

String

错误码

error_msg

String

错误描述

状态码: 401

表8 响应Body参数

参数

参数类型

描述

error_code

String

错误码

error_msg

String

错误描述

状态码: 403

表9 响应Body参数

参数

参数类型

描述

error_code

String

错误码

error_msg

String

错误描述

状态码: 500

表10 响应Body参数

参数

参数类型

描述

error_code

String

错误码

error_msg

String

错误描述

请求示例

创建一个API分组

{
  "name" : "api_group_001",
  "remark" : "API group 1"
}

响应示例

状态码: 201

Created

{
  "update_time" : "2020-07-31T06:55:55.383169299Z",
  "name" : "api_group_001",
  "on_sell_status" : 2,
  "remark" : "API group 1",
  "sl_domains" : [ "c77f5e81d9cb4424bf704ef2b0ac7600.apic.****.com", "c77f5e81d9cb4424bf704ef2b0ac7600.apic.****.cn" ],
  "sl_domain" : "c77f5e81d9cb4424bf704ef2b0ac7600.apic.****.com",
  "id" : "c77f5e81d9cb4424bf704ef2b0ac7600",
  "register_time" : "2020-07-31T06:55:55.383169068Z",
  "status" : 1,
  "is_default" : 2,
  "sl_domain_access_enabled" : true
}

状态码: 400

Bad Request

{
  "error_code" : "APIG.2011",
  "error_msg" : "Invalid parameter value,parameterName:name. Please refer to the support documentation"
}

状态码: 401

Unauthorized

{
  "error_code" : "APIG.1002",
  "error_msg" : "Incorrect token or token resolution failed"
}

状态码: 403

Forbidden

{
  "error_code" : "APIG.1005",
  "error_msg" : "No permissions to request this method"
}

状态码: 500

Internal Server Error

{
  "error_code" : "APIG.9999",
  "error_msg" : "System error"
}

状态码

状态码

描述

201

Created

400

Bad Request

401

Unauthorized

403

Forbidden

500

Internal Server Error

错误码

请参见错误码

相关文档