华为云用户手册

  • 响应示例 状态码: 200 OK { "update_time" : "2020-07-31T06:55:55Z.866474185Z", "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:55Z", "status" : 1, "is_default" : 2, "sl_domain_access_enabled" : true } 状态码: 400 Bad Request { "error_code" : "APIG.2012", "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" } 状态码: 404 Not Found { "error_code" : "APIG.3001", "error_msg" : "API group c77f5e81d9cb4424bf704ef2b0ac7600 does not exist" } 状态码: 500 Internal Server Error { "error_code" : "APIG.9999", "error_msg" : "System error" }
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 id String 编号 name String API分组名称 status Integer 状态 1: 有效 枚举值: 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:应用级分组 暂不支持,默认为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 枚举值: TLSv1.1 TLSv1.2 verified_client_certificate_enabled Boolean 是否开启客户端证书校验。只有绑定证书时,该参数才生效。当绑定证书存在trusted_root_ca时,默认开启;当绑定证书不存在trusted_root_ca时,默认关闭。 缺省值:false is_has_trusted_root_ca Boolean 是否存在信任的根证书CA。当绑定证书存在trusted_root_ca时为true。 缺省值:false 状态码: 400 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 401 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 403 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 404 表9 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 500 表10 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述
  • 请求参数 表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
  • URI PUT /v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id} 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID,获取方式请参见获取项目ID。 instance_id 是 String 实例ID,在API网关控制台的“实例信息”中获取。 group_id 是 String 分组的编号
  • 响应示例 状态码: 200 OK { "group_id" : "d9ce8c9eede54b3f841ec324fe0bfdc2", "failure" : [ { "path" : "/test/demo", "error_msg" : "The API already exists, An API with the same combination of the method, path, and x-apigateway-match-mode fields already exists. API name: API_demo", "method" : "GET", "error_code" : "APIG.3301" } ], "success" : [ { "path" : "/test", "method" : "GET", "action" : "create", "id" : "8ae6bcafab6f49d78242bff26ad8a4f0" } ], "swagger" : { "id" : "e2ea8a7c1cfc49b3830437cb79d7fd59", "result" : "Success" } } 状态码: 400 Bad Request { "error_code" : "APIG.3201", "error_msg" : "The API group name already exists" } 状态码: 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" } 状态码: 404 Not Found { "error_code" : "APIG.3001", "error_msg" : "API group not found" } 状态码: 500 Internal Server Error { "error_code" : "APIG.9999", "error_msg" : "System error" }
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 success Array of Success objects 导入成功信息 failure Array of Failure objects 导入失败信息 swagger Swagger object swagger文档导入结果 暂不支持 group_id String API分组编号 ignore Array of Ignore objects 被忽略导入的API信息 表5 Success 参数 参数类型 描述 path String API请求路径 method String API请求方法 action String 导入行为: update:表示更新API create:表示新建API 枚举值: update create id String 导入成功的API编号 表6 Failure 参数 参数类型 描述 path String API请求路径 error_msg String 导入失败的错误信息 method String API请求方法 error_code String 导入失败的错误码 表7 Swagger 参数 参数类型 描述 id String swagger文档编号 result String 导入结果说明 表8 Ignore 参数 参数类型 描述 method String API请求方法 path String API请求路径 状态码: 400 表9 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 401 表10 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 403 表11 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 404 表12 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 500 表13 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 FormData参数 参数 是否必选 参数类型 描述 is_create_group 否 Boolean 是否创建新分组 缺省值:true group_id 否 String API分组编号,当is_create_group=false时为必填 extend_mode 否 String 扩展信息导入模式 merge:当扩展信息定义冲突时,merge保留原有扩展信息 override:当扩展信息定义冲突时,override会覆盖原有扩展信息 缺省值:merge 枚举值: merge override simple_mode 否 Boolean 是否开启简易导入模式 缺省值:false mock_mode 否 Boolean 是否开启Mock后端 缺省值:false api_mode 否 String 导入模式 merge:当API信息定义冲突时,merge保留原有API信息 override:当API信息定义冲突时,override会覆盖原有API信息 缺省值:merge 枚举值: merge override file_name 是 File 导入Api的请求体,json或yaml格式的文件
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 size Integer 本次返回的列表长度 total Long 满足条件的记录数 groups Array of ApiGroupInfo objects 分组列表 表5 ApiGroupInfo 参数 参数类型 描述 id String 编号 name String API分组名称 status Integer 状态 1: 有效 枚举值: 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:应用级分组 暂不支持,默认为V1 roma_app_id String 分组归属的集成应用编号。 分组版本V2时必填。 暂不支持 roma_app_name String 分组归属的集成应用名称 暂不支持 表6 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 枚举值: TLSv1.1 TLSv1.2 verified_client_certificate_enabled Boolean 是否开启客户端证书校验。只有绑定证书时,该参数才生效。当绑定证书存在trusted_root_ca时,默认开启;当绑定证书不存在trusted_root_ca时,默认关闭。 缺省值:false is_has_trusted_root_ca Boolean 是否存在信任的根证书CA。当绑定证书存在trusted_root_ca时为true。 缺省值:false 状态码: 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 错误描述
  • 响应示例 状态码: 200 OK { "total" : 2, "size" : 2, "groups" : [ { "update_time" : "2020-07-31T06:55:55Z", "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:55Z", "status" : 1, "is_default" : 2, "sl_domain_access_enabled" : true }, { "update_time" : "2020-06-24T15:29:42.421926Z", "name" : "api_group_002", "on_sell_status" : 2, "remark" : "API group 2", "sl_domain" : "02a8ab3cb2784de5a096852829671ae7.apic.****.com", "sl_domains" : [ "02a8ab3cb2784de5a096852829671ae7.apic.****.com", "02a8ab3cb2784de5a096852829671ae7.apic.****.cn" ], "id" : "02a8ab3cb2784de5a096852829671ae7", "register_time" : "2020-06-24T15:29:42.421926Z", "status" : 1, "is_default" : 2, "sl_domain_access_enabled" : true } ] } 状态码: 400 Bad Request { "error_code" : "APIG.2012", "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" }
  • URI GET /v2/{project_id}/apigw/instances/{instance_id}/api-groups 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID,获取方式请参见获取项目ID。 instance_id 是 String 实例ID,在API网关控制台的“实例信息”中获取。 表2 Query参数 参数 是否必选 参数类型 描述 offset 否 Long 偏移量,表示从此偏移量开始查询,偏移量小于0时,自动转换为0 缺省值:0 limit 否 Integer 每页显示的条目数量,条目数量小于等于0时,自动转换为20,条目数量大于500时,自动转换为500 最小值:1 最大值:500 缺省值:20 id 否 String API分组编号 name 否 String API分组名称 precise_search 否 String 指定需要精确匹配查找的参数名称,目前仅支持API分组名称
  • 响应消息 表4 参数说明 参数 类型 说明 id String 编号 name String 名称 status Integer 状态 app_key String APP的key app_secret String 密钥 creator String APP的创建者,取值如下: USER:用户自行创建 MARKET:云商店分配 register_time Timestamp 创建时间 remark String 描述 update_time Timestamp 更新时间 响应消息样例: { "id": "14b399a****537e9", "name": "app_001", "status": 1, "app_key": "d49b****376eb", "app_secret": "******", "creator": "USER", "remark": "第一个APP", "register_time": "2017-12-28T12:26:54Z", "update_time": "2017-12-28T12:29:35.571Z" }
  • URI HTTP/HTTPS请求方法以及URI如下表所示。 表1 HTTP/HTTPS请求方法以及URI 请求方法 URI PUT /v1/{project_id}/apigw/instances/{instance_id}/apps/secret/{id} URI中的参数说明如下表所示。 表2 参数说明 名称 是否必选 类型 说明 project_id 是 String 项目ID。可从控制台“我的凭证”中获取region下项目ID,管理员权限可查询。 instance_id 是 String 实例ID,可从API网关控制台的专享版实例信息中获取。 id 是 String APP的编号,可通过查询APP列表获取。
  • 响应消息 表3 参数说明 参数 类型 说明 id String 订购关系编号 group_id String 分组编号 group_name String 分组名称 group_remark String 分组描述 order_time Timestamp 订购时间 start_time Timestamp 生效时间 expire_time Timestamp 过期时间 group_domains []String 分组访问域名列表,查询详情时返回 quota_left Integer 剩余访问次数 quota_used Integer 已使用访问次数 app_key String 生成的APP的key app_secret String 生成的APP的secret 响应消息样例: { "id": "3f3****cc587", "group_id": "73c58****7f09", "group_name": "api_group_001", "group_remark": "分组001", "group_domains": [ "test.market.example.com" ], "quota_used": 0, "quota_left": 2000000000, "order_time": "2018-01-02T10: 51: 26Z", "start_time": "2018-01-01T00: 00: 00Z", "expire_time": "2019-01-01T00: 00: 00Z", "app_key": "0e242****4785", "app_secret": "******" }
  • 响应参数 状态码: 200 表4 响应Body参数 参数 参数类型 描述 datapoints Array of MetricData objects 指标数据列表 表5 MetricData 参数 参数类型 描述 average Integer 聚合周期内指标数据的平均值,仅当请求参数filter字段值为average时支持。 max Integer 聚合周期内指标数据的最大值,仅当请求参数filter字段值为max时支持。 min Integer 聚合周期内指标数据的最小值,仅当请求参数filter字段值为min时支持。 sum Integer 聚合周期内指标数据的求和值,仅当请求参数filter字段值为sum时支持。 variance Integer 聚合周期内指标数据的方差,仅当请求参数filter字段值为variance时支持。 timestamp Long 指标采集时间,UNIX时间戳,单位毫秒。 unit String 指标单位。 状态码: 400 表6 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 401 表7 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 403 表8 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 404 表9 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 500 表10 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述
  • 响应示例 状态码: 200 OK { "datapoints" : [ { "average" : 5, "timestamp" : 1665304920000, "unit" : "Byte" } ] } 状态码: 400 Bad Request { "error_code" : "APIG.2012", "error_msg" : "Invalid parameter value,parameterName:api_id. 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" } 状态码: 404 Not Found { "error_code" : "APIG.3002", "error_msg" : "API 39bce6d25a3f470e8cf7b2c97174f7d9 does not exist" } 状态码: 500 Internal Server Error { "error_code" : "APIG.9999", "error_msg" : "System error" }
  • URI GET /v2/{project_id}/apigw/instances/{instance_id}/metric-data 表1 路径参数 参数 是否必选 参数类型 描述 project_id 是 String 项目ID,获取方式请参见获取项目ID。 instance_id 是 String 实例ID,在API网关控制台的“实例信息”中获取。 表2 Query参数 参数 是否必选 参数类型 描述 dim 是 String 指标维度 inbound_eip:入口公网带宽,仅ELB类型实例支持 outbound_eip:出口公网带宽 枚举值: inbound_eip outbound_eip metric_name 是 String 指标名称 upstream_bandwidth:出网带宽 downstream_bandwidth:入网带宽 upstream_bandwidth_usage:出网带宽使用率 downstream_bandwidth_usage:入网带宽使用率 up_stream:出网流量 down_stream:入网流量 枚举值: upstream_bandwidth downstream_bandwidth upstream_bandwidth_usage downstream_bandwidth_usage up_stream down_stream from 是 String 查询数据起始时间,UNIX时间戳,单位毫秒。 to 是 String 查询数据截止时间UNIX时间戳,单位毫秒。from必须小于to。 period 是 Integer 监控数据粒度。 1:实时数据 300:5分钟粒度 1200:20分钟粒度 3600:1小时粒度 14400:4小时粒度 86400:1天粒度 枚举值: 1 300 1200 3600 14400 86400 filter 是 String 数据聚合方式。 average:聚合周期内指标数据的平均值。 max:聚合周期内指标数据的最大值。 min:聚合周期内指标数据的最小值。 sum:聚合周期内指标数据的求和值。 variance:聚合周期内指标数据的方差。 枚举值: average max min sum variance
  • 响应消息 表3 参数说明 名称 类型 说明 total Integer 符合条件的APP总数 size Integer 本次查询返回的列表长度 apps 字典数据类型 APP列表 表4 apps参数说明 参数 类型 说明 id String 编号 name String 名称 status Integer 状态 app_key String APP的key app_secret String 密钥 register_time Timestamp 创建时间 remark String 描述 update_time Timestamp 更新时间 creator String APP的创建者,取值如下: USER:用户自行创建 MARKET:云商店分配 app_type String APP类型,默认为apig bind_num Integer 绑定的API数量 响应消息样例: { "total": 2, "size": 2, "apps": [{ "id": "98ef****a286a4", "name": "app_002", "status": 1, "app_key": "f627f****54d3fe2", "app_secret": "******", "remark": "第二个APP", "register_time": "2017-12-28T12:32:50Z", "update_time": "2017-12-28T12:32:50Z", "creator": "MARKET", "app_type": "apig", "bind_num": 2 }, { "id": "14b39****4537e9", "name": "app_001", "status": 1, "app_key": "d49b****76eb", "app_secret": "******", "remark": "第一个APP", "register_time": "2017-12-28T12:26:54Z", "update_time": "2017-12-28T12:29:35.571Z", "creator": "USER", "app_type": "apig", "bind_num": 2 }] }
  • URI HTTP/HTTPS请求方法以及URI如下表所示。 表1 HTTP/HTTPS请求方法以及URI 请求方法 URI GET /v1.0/apigw/apps[?page_size, page_no, id, name, app_key, creator] 可以在URI后面用‘?’和‘&’添加不同的查询条件组合。 查询条件可为以下字段以及对应的值:id、name、app_key、creator、page_size、page_no。 URI中的参数说明如下表所示。 表2 参数说明 名称 是否必选 类型 说明 id 否 String 编号 name 否 String 名称 status 否 Integer 状态 app_key 否 String APP的KEY creator 否 String APP的创建者,取值如下: USER:用户自行创建 MARKET:云商店分配 page_size 否 Integer 每页显示的条数,默认值:20 page_no 否 Integer 页码,默认值:1 precise_search 否 String 指定需要精确匹配查找的参数名称,目前仅支持name
  • 请求消息 表3 参数说明 参数 是否必选 类型 说明 name 是 String APP的名称 支持汉字,英文,数字,下划线,且只能以英文和汉字开头,3 ~ 64个字符。 说明: 中文字符必须为UTF-8或者unicode编码。 remark 否 String APP描述 字符长度不能大于255 说明: 中文字符必须为UTF-8或者unicode编码。 app_key 否 String APP的key 支持英文,数字,“_”,“-”,且只能以英文或数字开头,8 ~ 64个字符。 说明: 只支持部分region自定义。 app_secret 否 String 密钥 支持英文,数字,“_”,“-”,“_”,“!”,“@”,“#”,“$”,“%”,且只能以英文或数字开头,8 ~ 64个字符。 说明: 只支持部分region自定义。 请求消息样例: { "name": "app_001", "remark": "第一个APP", "app_key": "app_key_sample", "app_secret": "app_secret_sample" }
  • 响应消息 表4 参数说明 参数 类型 说明 id String 编号 name String 名称 status Integer 状态 app_key String APP的key app_secret String 密钥 creator String APP的创建者,取值如下: USER:用户自行创建 MARKET:云商店分配 register_time Timestamp 创建时间 remark String 描述 update_time Timestamp 更新时间 app_type String APP类型,默认为apig 响应消息样例: { "id": "14b39****4537e9", "name": "app_001", "status": 1, "app_key": "d49b1****376eb", "app_secret": "******", "creator": "USER", "remark": "第一个APP", "register_time": "2017-12-28T12:26:54Z", "update_time": "2017-12-28T12:28:07.2966182Z", "app_type": "apig" }
  • URI HTTP/HTTPS请求方法以及URI如下表所示。 表1 HTTP/HTTPS请求方法以及URI 请求方法 URI PUT /v1/{project_id}/apigw/instances/{instance_id}/apps/{id} URI中的参数说明如下表所示。 表2 参数说明 名称 是否必选 类型 说明 project_id 是 String 项目ID。可从控制台“我的凭证”中获取region下项目ID,管理员权限可查询。 instance_id 是 String 实例ID,可从API网关控制台的专享版实例信息中获取。 id 是 String APP的编号,可通过查询APP列表获取。
  • 响应消息 表3 参数说明 名称 类型 说明 total Integer 满足查询条件的分组总数 size Integer 本次查询返回的分组个数 purchases 字典数据类型 本次查询返回的分组列表 表4 purchases参数说明 参数 类型 说明 id String 订购关系编号 group_id String 分组编号 group_name String 分组名称 group_remark String 分组描述 order_time Timestamp 订购时间 start_time Timestamp 生效时间 expire_time Timestamp 过期时间 group_domains []String 分组访问域名列表,查询列表时不返回 quota_left Integer 剩余访问次数 quota_used Integer 已使用访问次数 app_key String 生成的APP的key app_secret String 生成的APP的secret 响应参数样例: { "total": 3, "size": 3, "purchases": [{ "id": "615af8d9-f31d-4cdf-8807-b191dc969a07", "group_id": "f0585333-5722-4878-b7fa-31ae00b6ae3a", "group_name": "api_group_003", "group_remark": "分组003", "group_domains": null, "quota_used": 0, "quota_left": 2000000000, "order_time": "2017-12-29T06:22:46Z", "start_time": "2018-01-01T00:00:00Z", "expire_time": "2019-01-01T00:00:00Z", "app_key": "0e24****4785", "app_secret": "******" }, { "id": "9d0b****e4d13", "group_id": "02a8****71ae7", "group_name": "api_group_002", "group_remark": "分组002", "group_domains": null, "quota_used": 0, "quota_left": 2000000000, "order_time": "2017-12-29T06:22:46Z", "start_time": "2018-01-01T00:00:00Z", "expire_time": "2019-01-01T00:00:00Z", "app_key": "0e242****04785", "app_secret": "******" }, { "id": "3f30d****c587", "group_id": "73c5802****47f09", "group_name": "api_group_001", "group_remark": "分组001", "group_domains": null, "quota_used": 0, "quota_left": 2000000000, "order_time": "2017-12-29T06:16:03Z", "start_time": "2018-01-01T00:00:00Z", "expire_time": "2019-01-01T00:00:00Z", "app_key": "0e242****4785", "app_secret": "******" }] }
  • URI HTTP/HTTPS请求方法以及URI如下表所示。 表1 HTTP/HTTPS请求方法以及URI 请求方法 URI GET /v1.0/apigw/purchases/groups[?page_size, page_no, id, group_id, group_name] 可以在URI后面用‘?’和‘&’添加不同的查询条件组合。 查询条件可为以下字段以及对应的值:id、group_id 、group_name 、page_size、page_no。 URI中的参数说明如下表所示。 表2 参数说明 名称 是否必选 类型 说明 id 否 String 订购关系编号 group_id 否 String API分组编号 group_name 否 String API分组名称 page_size 否 Integer 每页显示的条数,默认值:20 page_no 否 Integer 页码,默认值:1
  • 响应示例 状态码: 201 Created 示例 1 { "id" : "5f918d104dc84480a75166ba99efff21", "tags" : [ "webApi" ], "arrange_necessary" : 2, "backend_type" : "HTTP", "auth_type" : "AUTHORIZER", "auth_opt" : { "app_code_auth_type" : "DISABLE" }, "authorizer_id" : "0d982c1ac3da493dae47627b6439fc5c", "backend_api" : { "update_time" : "2020-07-31T12:42:51.325312994Z", "vpc_channel_status" : 2, "url_domain" : "xxx.xxx.xxx.xxx:12346", "req_protocol" : "HTTP", "id" : "1ce8fda3586d4371bd83c955df37e102", "req_method" : "GET", "register_time" : "2020-07-31T12:42:51.325312721Z", "req_uri" : "/benchmark", "timeout" : 5000, "status" : 1, "retry_count" : "-1" }, "cors" : false, "status" : 1, "group_name" : "api_group_001", "group_id" : "c77f5e81d9cb4424bf704ef2b0ac7600", "group_version" : "V1", "response_id" : "981e6c8f847f47199a9faf4409b751a5", "match_mode" : "NORMAL", "name" : "Api_http", "req_protocol" : "HTTPS", "req_method" : "GET", "req_uri" : "/test/http", "type" : 1, "result_normal_sample" : "Example success response", "result_failure_sample" : "Example failure response", "version" : "V0.0.1", "register_time" : "2020-07-31T12:42:51.314357035Z", "update_time" : "2020-07-31T12:42:51.314357324Z", "remark" : "Web backend API", "req_params" : [ { "name" : "query_demo", "location" : "QUERY", "type" : "STRING", "valid_enable" : 2, "required" : 1, "id" : "57c8bf3c97ef40ee94eace95dff30014", "pass_through" : 1 }, { "name" : "header-demo", "location" : "HEADER", "type" : "STRING", "valid_enable" : 2, "required" : 2, "id" : "8d993be96980415faa6b1fb2ebd647e0", "pass_through" : 1 } ], "backend_params" : [ { "name" : "backHeader", "value" : "header-demo", "location" : "HEADER", "origin" : "REQUEST", "id" : "709f0ea376b44aaf907aaaa37d8cce92", "req_param_id" : "8d993be96980415faa6b1fb2ebd647e0" }, { "name" : "backQuery", "value" : "query_demo", "location" : "QUERY", "origin" : "REQUEST", "id" : "2f152d0fb54445039158d29c2a4f69ee", "req_param_id" : "57c8bf3c97ef40ee94eace95dff30014" }, { "name" : "X-CONSTANT-HEADER", "value" : "demo", "location" : "HEADER", "origin" : "CONSTANT", "remark" : "constant_demo", "id" : "20142102c6aa4f3c97d5fd6ef4010ac2" }, { "name" : "app-id", "value" : "$context.appId", "location" : "HEADER", "origin" : "SYSTEM", "remark" : "App ID of the API caller", "id" : "a1349c61016e4d999ca783a50bfeee2b" } ] } 示例 2 { "id" : "8789c9367rd1439rf869c23cc0d1ef22", "tags" : [ "grpcApi" ], "arrange_necessary" : 2, "backend_type" : "GRPC", "auth_type" : "APP", "auth_opt" : { "app_code_auth_type" : "DISABLE" }, "backend_api" : { "update_time" : "2023-08-29T09:05:17.652404554Z", "vpc_channel_status" : 1, "vpc_channel_info" : { "cascade_flag" : false, "vpc_channel_id" : "abcd1234512345678aab9a2614a197ef4", "vpc_channel_port" : 0 }, "url_domain" : "abcd1234512345678aab9a2614a197ef4", "req_protocol" : "GRPCS", "id" : "c0123456789d421cb83a396955bd48d0", "req_method" : "POST", "register_time" : "2023-08-29T09:05:17.652404454Z", "req_uri" : "/", "timeout" : 5000, "enable_client_ssl" : false, "retry_count" : "-1", "status" : 1 }, "cors" : false, "status" : 1, "group_name" : "api_group_001", "group_id" : "12345abc9215b40bd84f4c469d56daebe", "group_version" : "V1", "response_id" : "ef21ec8c7df94d72a44f9rf1461c5f62", "match_mode" : "NORMAL", "name" : "Api_grpc", "req_protocol" : "GRPCS", "req_method" : "POST", "req_uri" : "/test/grpc", "type" : 1, "version" : "V0.0.1", "register_time" : "2023-08-29T09:05:17.647533939Z", "update_time" : "2023-08-29T09:05:17.647534036Z", "remark" : "GRPC backend API", "api_group_info" : { "id" : "12345abc9215b40bd84f4c469d56daebe", "name" : "api_group_001", "status" : 1, "sl_domain" : "12345abc9215b40bd84f4c469d56daebe.apic.region-1.example.com", "register_time" : "2023-08-29T08:38:21Z", "update_time" : "2023-08-29T08:38:21Z", "on_sell_status" : 2, "sl_domain_access_enabled" : true } } 示例 3 { "id" : "abd9c4b2ff974888b0ba79be7e6b2763", "arrange_necessary" : 2, "group_id" : "c77f5e81d9cb4424bf704ef2b0ac7600", "group_name" : "api_group_001", "group_version" : "V1", "match_mode" : "NORMAL", "name" : "Api_function", "auth_type" : "APP", "auth_opt" : { "auth_code_auth_type" : "DISABLE" }, "backend_type" : "FUNCTION", "func_info" : { "id" : "c0740524cd4c40e3801a7afe5375f8b0", "authorizer_id" : "5b8cd3f06f004115aec69c58f57272c9", "function_urn" : "'urn:fss:xx-xxx-7:73d69ae0cfcf460190522d06b60f05ad:function:default:auto_testfunc93749'", "invocation_type" : "sync", "network_type" : "V1", "timeout" : 5000, "version" : "latest", "alias_urn" : "urn:fss:region01:73d69ae0cfcf460190522d06b60f05ad:function:default:auto_testfunc00000:!a1", "register_time" : "2020-08-02T15:36:19.897262803Z", "update_time" : "2020-08-02T15:36:19.897262993Z", "status" : 1 }, "cors" : false, "req_protocol" : "HTTPS", "req_uri" : "/test/function", "remark" : "FunctionGraph backend API", "type" : 1, "version" : "V0.0.1", "status" : 1, "req_method" : "GET", "result_normal_sample" : "Example success response", "result_failure_sample" : "Example failure response", "tags" : [ "functionApi" ], "register_time" : "2020-08-02T15:36:19.892012381Z", "update_time" : "2020-08-02T15:36:19.892012627Z" } 示例 4 { "id" : "3a955b791bd24b1c9cd94c745f8d1aad", "arrange_necessary" : 2, "group_id" : "c77f5e81d9cb4424bf704ef2b0ac7600", "group_name" : "api_group_001", "group_version" : "V1", "match_mode" : "SWA", "name" : "Api_mock", "auth_type" : "IAM", "auth_opt" : { "auth_code_auth_type" : "DISABLE" }, "backend_type" : "MOCK", "mock_info" : { "id" : "e74bbc75825c4c38ae84ccab6bdc6175", "result_content" : "mock success", "update_time" : "2020-08-02T15:56:52.301790686Z", "register_time" : "2020-08-02T15:56:52.301790367Z" }, "policy_mocks" : [ { "name" : "Mock policy backend", "id" : "1cb05173a4c84b7d996e30145cce3c7d", "effect_mode" : "ANY", "result_content" : "mock policy success", "conditions" : [ { "condition_origin" : "source", "condition_value" : "1.0.1.0", "id" : "8650b3a94e7344df8251658d8aee1f6d" } ] } ], "cors" : false, "req_protocol" : "HTTPS", "req_uri" : "/test/mock", "remark" : "Mock backend API", "type" : 1, "version" : "V0.0.1", "req_method" : "GET", "result_normal_sample" : "Example success response", "result_failure_sample" : "Example failure response", "tags" : [ "mockApi" ], "register_time" : "2020-08-02T15:56:52.286099413Z", "update_time" : "2020-08-02T15:56:52.286099715Z", "status" : 1 } 状态码: 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" } 状态码: 404 Not Found { "error_code" : "APIG.3019", "error_msg" : "The function URN does not exist" } 状态码: 500 Internal Server Error { "error_code" : "APIG.9999", "error_msg" : "System error" }
  • 请求示例 创建Web后端API { "group_id" : "c77f5e81d9cb4424bf704ef2b0ac7600", "match_mode" : "NORMAL", "name" : "Api_http", "auth_type" : "AUTHORIZER", "authorizer_id" : "0d982c1ac3da493dae47627b6439fc5c", "backend_type" : "HTTP", "backend_api" : { "url_domain" : "192.168.189.156:12346", "req_protocol" : "HTTP", "req_method" : "GET", "req_uri" : "/test/benchmark", "timeout" : 5000, "retry_count" : "-1" }, "req_protocol" : "HTTPS", "req_uri" : "/test/http", "remark" : "Web backend API", "type" : 1, "req_method" : "GET", "result_normal_sample" : "Example success response", "result_failure_sample" : "Example failure response", "tags" : [ "webApi" ], "req_params" : [ { "name" : "query_demo", "location" : "QUERY", "type" : "STRING", "required" : 1 }, { "name" : "header-demo", "location" : "HEADER", "type" : "STRING", "required" : 2 } ], "backend_params" : [ { "name" : "backHeader", "value" : "header-demo", "location" : "HEADER", "origin" : "REQUEST" }, { "name" : "backQuery", "value" : "query_demo", "location" : "QUERY", "origin" : "REQUEST" }, { "name" : "X-CONSTANT-HEADER", "value" : "demo", "location" : "HEADER", "origin" : "CONSTANT", "remark" : "constant_demo" }, { "name" : "app-id", "value" : "$context.appId", "location" : "HEADER", "origin" : "SYSTEM", "remark" : "App ID of the API caller" } ] } 创建GRPC后端API { "group_id" : "12345abc9215b40bd84f4c469d56daebe", "match_mode" : "NORMAL", "name" : "Api_grpc", "auth_type" : "APP", "backend_type" : "GRPC", "backend_api" : { "req_protocol" : "GRPCS", "req_method" : "POST", "req_uri" : "/", "timeout" : 5000, "retry_count" : "-1", "enable_client_ssl" : false, "vpc_channel_status" : 1, "vpc_channel_info" : { "vpc_channel_id" : "abcd1234512345678aab9a2614a197ef4" } }, "req_protocol" : "GRPCS", "req_uri" : "/test/grpc", "remark" : "GRPC backend API", "type" : 1, "req_method" : "POST", "tags" : [ "grpcApi" ], "cors" : false, "auth_opt" : { "app_code_auth_type" : "DISABLE" } } 创建函数工作流后端API { "group_id" : "c77f5e81d9cb4424bf704ef2b0ac7600", "match_mode" : "NORMAL", "name" : "Api_function", "auth_type" : "APP", "backend_type" : "FUNCTION", "func_info" : { "authorizer_id" : "5b8cd3f06f004115aec69c58f57272c9", "function_urn" : "'urn:fss:xx-xxx-7:73d69ae0cfcf460190522d06b60f05ad:function:default:auto_testfunc93749'", "invocation_type" : "sync", "network_type" : "V1", "timeout" : 5000, "version" : "latest", "alias_urn" : "urn:fss:region01:73d69ae0cfcf460190522d06b60f05ad:function:default:auto_testfunc93749:!a1" }, "req_protocol" : "HTTPS", "req_uri" : "/test/function", "remark" : "FunctionGraph backend API", "type" : 1, "req_method" : "GET", "result_normal_sample" : "Example success response", "result_failure_sample" : "Example failure response", "tags" : [ "functionApi" ] } 创建模拟后端API { "group_id" : "c77f5e81d9cb4424bf704ef2b0ac7600", "match_mode" : "SWA", "name" : "Api_mock", "auth_type" : "IAM", "backend_type" : "MOCK", "mock_info" : { "result_content" : "mock success" }, "policy_mocks" : [ { "name" : "Mock policy backend", "effect_mode" : "ANY", "result_content" : "mock policy success", "conditions" : [ { "condition_origin" : "source", "condition_value" : "1.0.1.0" } ] } ], "req_protocol" : "HTTPS", "req_uri" : "/test/mock", "remark" : "Mock backend API", "type" : 1, "req_method" : "GET", "result_normal_sample" : "Example success response", "result_failure_sample" : "Example failure response", "tags" : [ "mockApi" ] }
  • 响应参数 状态码: 201 表15 响应Body参数 参数 参数类型 描述 name String API名称。 支持汉字、英文、数字、中划线、下划线、点、斜杠、中英文格式下的小括号和冒号、中文格式下的顿号,且只能以英文、汉字和数字开头,3-255个字符。 说明: 中文字符必须为UTF-8或者unicode编码。 type Integer API类型 1:公有API 2:私有API 枚举值: 1 2 version String API的版本 最大长度:16 req_protocol String API的请求协议 HTTP HTTPS BOTH:同时支持HTTP和HTTPS GRPCS 缺省值:HTTPS 枚举值: HTTP HTTPS BOTH GRPCS req_method String API的请求方式,当API的请求协议为GRPC类型协议时请求方式固定为POST。 枚举值: GET POST PUT DELETE HEAD PATCH OPTIONS ANY req_uri String 请求地址。可以包含请求参数,用{}标识,比如/getUserInfo/{userId},支持 * / %- _ . 等特殊字符,总长度不超过512,且满足URI规范。 说明: 需要服从URI规范。 auth_type String API的认证方式 NONE:无认证 APP:APP认证 IAM:IAM认证 AUTHORIZER:自定义认证,当auth_type取值为AUTHORIZER时,authorizer_id字段必须传入 当API的请求协议为GRPC类型时不支持自定义认证。 枚举值: NONE APP IAM AUTHORIZER auth_opt AuthOpt object 认证方式参数 cors Boolean 是否支持跨域 TRUE:支持 FALSE:不支持 缺省值:false 枚举值: true false match_mode String API的匹配方式 SWA:前缀匹配 NORMAL:正常匹配(绝对匹配) 默认:NORMAL 枚举值: SWA NORMAL backend_type String 后端类型 HTTP:web后端 FUNCTION:函数工作流,当backend_type取值为FUNCTION时,func_info字段必须传入 MOCK:模拟的后端,当backend_type取值为MOCK时,mock_info字段必须传入 GRPC:grpc后端 枚举值: HTTP FUNCTION MOCK GRPC remark String API描述。字符长度不超过255 说明: 中文字符必须为UTF-8或者unicode编码。 group_id String API所属的分组编号 body_remark String API请求体描述,可以是请求体示例、媒体类型、参数等信息。字符长度不超过20480 说明: 中文字符必须为UTF-8或者unicode编码。 result_normal_sample String 正常响应示例,描述API的正常返回信息。字符长度不超过20480 说明: 中文字符必须为UTF-8或者unicode编码。 当API的请求协议为GRPC类型时不支持配置。 result_failure_sample String 失败返回示例,描述API的异常返回信息。字符长度不超过20480 说明: 中文字符必须为UTF-8或者unicode编码。 当API的请求协议为GRPC类型时不支持配置。 authorizer_id String 前端自定义认证对象的ID,API请求协议为GRPC类型时不支持前端自定义认证 tags Array of strings 标签。 支持英文,数字,中文,特殊符号(-*#%.:_),且只能以中文或英文开头。 默认支持10个标签,如需扩大配额请联系技术工程师修改API_TAG_NUM_LIMIT配置。 最小长度:1 最大长度:128 response_id String 分组自定义响应ID roma_app_id String 集成应用ID 暂不支持 domain_name String API绑定的自定义域名 暂不支持 tag String 标签 待废弃,优先使用tags字段 content_type String 请求内容格式类型: application/json application/xml multipart/form-data text/plain 暂不支持 枚举值: application/json application/xml multipart/form-data text/plain id String API编号 status Integer API状态 1: 有效 arrange_necessary Integer 是否需要编排 register_time String API注册时间 update_time String API修改时间 group_name String API所属分组的名称 group_version String API所属分组的版本 默认V1,其他版本暂不支持 缺省值:V1 run_env_id String 发布的环境编号 存在多个发布记录时,环境编号之间用|隔开 run_env_name String 发布的环境名称 存在多个发布记录时,环境名称之间用|隔开 publish_id String 发布记录编号 存在多个发布记录时,发布记录编号之间用|隔开 publish_time String 发布时间 存在多个发布记录时,发布时间之间用|隔开 roma_app_name String API归属的集成应用名称 暂不支持 ld_api_id String 当API的后端为自定义后端时,对应的自定义后端API编号 暂不支持 backend_api BackendApi object web后端详情 api_group_info ApiGroupCommonInfo object api分组信息 func_info ApiFunc object 函数工作流后端详情 mock_info ApiMock object mock后端详情 req_params Array of ReqParam objects API的请求参数列表 backend_params Array of BackendParam objects API的后端参数列表 policy_functions Array of ApiPolicyFunctionResp objects 函数工作流策略后端列表 policy_mocks Array of ApiPolicyMockResp objects mock策略后端列表 policy_https Array of ApiPolicyHttpResp objects web策略后端列表 表16 AuthOpt 参数 参数类型 描述 app_code_auth_type String AppCode简易认证类型,仅在auth_type为APP时生效,默认为DISABLE: DISABLE:不开启简易认证 HEADER:开启简易认证且AppCode位置在HEADER 缺省值:DISABLE 枚举值: DISABLE HEADER 表17 BackendApi 参数 参数类型 描述 authorizer_id String 后端自定义认证对象的ID,后端类型为GRPC时不支持后端自定义认证 url_domain String 后端服务的地址。 由主机(IP或域名)和端口号组成,总长度不超过255。格式为主机:端口(如:apig.example.com:7443)。如果不写端口,则HTTPS默认端口号为443,HTTP默认端口号为80。 支持环境变量,使用环境变量时,每个变量名的长度为3 ~ 32位的字符串,字符串由英文字母、数字、下划线、中划线组成,且只能以英文开头 req_protocol String 请求协议,后端类型为GRPC时请求协议可选GRPCS 枚举值: HTTP HTTPS GRPCS remark String 描述。字符长度不超过255 说明: 中文字符必须为UTF-8或者unicode编码。 req_method String 请求方式,后端类型为GRPC时请求方式固定为POST 枚举值: GET POST PUT DELETE HEAD PATCH OPTIONS ANY version String web后端版本,字符长度不超过16 req_uri String 请求地址。可以包含请求参数,用{}标识,比如/getUserInfo/{userId},支持 * / %- _ . 等特殊字符,总长度不超过512,且满足URI规范。 支持环境变量,使用环境变量时,每个变量名的长度为3 ~ 32位的字符串,字符串由英文字母、数字、中划线、下划线组成,且只能以英文开头。 说明: 需要服从URI规范。 后端类型为GRPC时请求地址固定为/ timeout Integer API网关请求后端服务的超时时间。最大超时时间可通过实例特性backend_timeout配置修改,可修改的上限为600000。 单位:毫秒。 最小值:1 enable_client_ssl Boolean 是否开启双向认证 retry_count String 请求后端服务的重试次数,默认为-1,范围[-1,10]。 当该值为-1时,幂等的接口会重试1次,非幂等的不会重试。POST,PATCH方法为非幂等;GET,HEAD,PUT,OPTIONS和DELETE等方法为幂等的。 缺省值:-1 id String 编号 status Integer 后端状态 1: 有效 register_time String 注册时间 update_time String 修改时间 vpc_channel_info VpcInfo object VPC通道详情。如果vpc_channel_status = 1,则这个object类型为必填信息 vpc_channel_status Integer 是否使用VPC通道 1:使用VPC通道 2:不使用VPC通道 表18 ApiGroupCommonInfo 参数 参数类型 描述 id String 编号 name String API分组名称 status Integer 状态 1: 有效 枚举值: 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 表19 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 枚举值: TLSv1.1 TLSv1.2 verified_client_certificate_enabled Boolean 是否开启客户端证书校验。只有绑定证书时,该参数才生效。当绑定证书存在trusted_root_ca时,默认开启;当绑定证书不存在trusted_root_ca时,默认关闭。 缺省值:false is_has_trusted_root_ca Boolean 是否存在信任的根证书CA。当绑定证书存在trusted_root_ca时为true。 缺省值:false 表20 ApiFunc 参数 参数类型 描述 function_urn String 函数URN remark String 描述信息。长度不超过255个字符 说明: 中文字符必须为UTF-8或者unicode编码。 invocation_type String 调用类型 async: 异步 sync:同步 枚举值: async sync network_type String 对接函数的网络架构类型 V1:非VPC网络架构 V2:VPC网络架构 枚举值: V1 V2 version String 函数版本 当函数别名URN和函数版本同时传入时,函数版本将被忽略,只会使用函数别名URN 最大长度:64 alias_urn String 函数别名URN 当函数别名URN和函数版本同时传入时,函数版本将被忽略,只会使用函数别名URN timeout Integer API网关请求后端服务的超时时间。函数网络架构为V1时最大超时时间为60000,V2最大超时时间可通过实例特性backend_timeout配置修改,可修改的上限为600000。 单位:毫秒。 最小值:1 authorizer_id String 后端自定义认证ID req_protocol String 函数后端的请求协议:HTTPS、GRPCS,默认值为HTTPS,前端配置中的请求协议为GRPCS时可选GRPCS。 缺省值:HTTPS 枚举值: HTTPS GRPCS id String 编号 register_time String 注册时间 status Integer 后端状态 1: 有效 update_time String 修改时间 表21 ApiMock 参数 参数类型 描述 remark String 描述信息。长度不超过255个字符 说明: 中文字符必须为UTF-8或者unicode编码。 result_content String 返回结果 version String 版本。字符长度不超过64 authorizer_id String 后端自定义认证ID id String 编号 register_time String 注册时间 status Integer 后端状态 1: 有效 update_time String 修改时间 表22 ReqParam 参数 参数类型 描述 name String 参数名称。 长度为1 ~ 32位的字符串,字符串由英文字母、数字、中划线、下划线、英文句号组成,且只能以英文开头。 type String 参数类型 枚举值: STRING NUMBER location String 参数位置 枚举值: PATH QUERY HEADER default_value String 参数默认值 sample_value String 参数示例值 required Integer 是否必须 1:是 2:否 location为PATH时,required默认为1,其他场景required默认为2 枚举值: 1 2 valid_enable Integer 是否开启校验 1:开启校验 2:不开启校验 缺省值:2 枚举值: 1 2 remark String 描述信息。长度不超过255个字符 说明: 中文字符必须为UTF-8或者unicode编码。 enumerations String 参数枚举值 min_num Integer 参数最小值 参数类型为NUMBER时有效 max_num Integer 参数最大值 参数类型为NUMBER时有效 min_size Integer 参数最小长度 参数类型为STRING时有效 max_size Integer 参数最大长度 参数类型为STRING时有效 regular String 正则校验规则 暂不支持 json_schema String JSON校验规则 暂不支持 pass_through Integer 是否透传 1:是 2:否 枚举值: 1 2 id String 参数编号 表23 ApiPolicyFunctionResp 参数 参数类型 描述 function_urn String 函数URN invocation_type String 调用类型 async: 异步 sync:同步 枚举值: async sync network_type String 对接函数的网络架构类型 V1:非VPC网络架构 V2:VPC网络架构 枚举值: V1 V2 version String 函数版本 当函数别名URN和函数版本同时传入时,函数版本将被忽略,只会使用函数别名URN 最大长度:64 alias_urn String 函数别名URN 当函数别名URN和函数版本同时传入时,函数版本将被忽略,只会使用函数别名URN timeout Integer API网关请求后端服务的超时时间。函数网络架构为V1时最大超时时间为60000,V2最大超时时间可通过实例特性backend_timeout配置修改,可修改的上限为600000。 单位:毫秒。 最小值:1 req_protocol String 函数后端的请求协议:HTTPS、GRPCS,默认值为HTTPS,前端配置中的请求协议为GRPCS时可选GRPCS。 缺省值:HTTPS 枚举值: HTTPS GRPCS id String 编号 effect_mode String 关联的策略组合模式: ALL:满足全部条件 ANY:满足任一条件 枚举值: ALL ANY name String 策略后端名称。字符串由中文、英文字母、数字、下划线组成,且只能以中文或英文开头。 最小长度:3 最大长度:64 backend_params Array of BackendParam objects 后端参数列表 conditions Array of CoditionResp objects 策略条件列表 authorizer_id String 后端自定义认证对象的ID 表24 ApiPolicyMockResp 参数 参数类型 描述 id String 编号 effect_mode String 关联的策略组合模式: ALL:满足全部条件 ANY:满足任一条件 枚举值: ALL ANY name String 策略后端名称。字符串由中文、英文字母、数字、下划线组成,且只能以中文或英文开头。 最小长度:3 最大长度:64 backend_params Array of BackendParam objects 后端参数列表 conditions Array of CoditionResp objects 策略条件列表 authorizer_id String 后端自定义认证对象的ID result_content String 返回结果 表25 ApiPolicyHttpResp 参数 参数类型 描述 id String 编号 effect_mode String 关联的策略组合模式: ALL:满足全部条件 ANY:满足任一条件 枚举值: ALL ANY name String 策略后端名称。字符串由中文、英文字母、数字、下划线组成,且只能以中文或英文开头。 最小长度:3 最大长度:64 backend_params Array of BackendParam objects 后端参数列表 conditions Array of CoditionResp objects 策略条件列表 authorizer_id String 后端自定义认证对象的ID url_domain String 策略后端的Endpoint。 由域名(或IP地址)和端口号组成,总长度不超过255。格式为域名:端口(如:apig.example.com:7443)。如果不写端口,则HTTPS默认端口号为443, HTTP默认端口号为80。 支持环境变量,使用环境变量时,每个变量名的长度为3 ~ 32位的字符串,字符串由英文字母、数字、“_”、“-”组成,且只能以英文开头。 req_protocol String 请求协议:HTTP、HTTPS、GRPCS,后端类型为GRPC时可选GRPCS 枚举值: HTTP HTTPS GRPCS req_method String 请求方式:GET、POST、PUT、DELETE、HEAD、PATCH、OPTIONS、ANY,后端类型为GRPC时固定为POST 枚举值: GET POST PUT DELETE HEAD PATCH OPTIONS ANY req_uri String 请求地址。可以包含请求参数,用{}标识,比如/getUserInfo/{userId},支持 * / %- _ . 等特殊字符,总长度不超过512,且满足URI规范。 支持环境变量,使用环境变量时,每个变量名的长度为3 ~ 32位的字符串,字符串由英文字母、数字、中划线、下划线组成,且只能以英文开头。 说明: 需要服从URI规范。 后端类型为GRPC时请求地址固定为/ timeout Integer API网关请求后端服务的超时时间。最大超时时间可通过实例特性backend_timeout配置修改,可修改的上限为600000。 单位:毫秒。 最小值:1 retry_count String 请求后端服务的重试次数,默认为-1,范围[-1,10]。 当该值为-1时,幂等的接口会重试1次,非幂等的不会重试。POST,PATCH方法为非幂等;GET,HEAD,PUT,OPTIONS和DELETE等方法为幂等的。 缺省值:-1 vpc_channel_info VpcInfo object VPC通道详情。如果vpc_channel_status = 1,则这个object类型为必填信息 vpc_channel_status Integer 是否使用VPC通道: 1: 使用VPC通道 2:不使用VPC通道 表26 BackendParam 参数 参数类型 描述 origin String 参数类别: 后端服务参数:REQUEST 常量参数:CONSTANT 系统参数:SYSTEM 枚举值: REQUEST CONSTANT SYSTEM name String 参数名称。 字符串由英文字母、数字、中划线、下划线、英文句号组成,且只能以英文开头。 最小长度:1 最大长度:32 remark String 描述。字符长度不超过255 说明: 中文字符必须为UTF-8或者unicode编码。 location String 参数位置:PATH、QUERY、HEADER 枚举值: PATH QUERY HEADER value String 参数值。字符长度不超过255 origin类别为REQUEST时,此字段值为req_params中的参数名称; origin类别为CONSTANT时,此字段值为参数真正的值; origin类别为SYSTEM时,此字段值为系统参数名称,系统参数分为网关内置参数、前端认证参数和后端认证参数,当api前端安全认证方式为自定义认证时,可以填写前端认证参数,当api开启后端认证时,可以填写后端认证参数。 网关内置参数取值及对应含义: $context.sourceIp:API调用者的源地址 $context.stage:API调用的部署环境 $context.apiId:API的ID $context.appId:API调用者的APP对象ID $context.requestId:当次API调用生成请求ID $context.serverAddr:网关的服务器地址 $context.serverName:网关的服务器名称 $context.handleTime:本次API调用的处理时间 $context.providerAppId:API拥有者的应用对象ID,暂不支持使用 前端认证参数取值:以“$context.authorizer.frontend.”为前缀,如希望自定义认证校验通过返回的参数为aaa,那么此字段填写为$context.authorizer.frontend.aaa 后端认证参数取值:以“$context.authorizer.backend.”为前缀,如希望自定义认证校验通过返回的参数为aaa,那么此字段填写为$context.authorizer.backend.aaa id String 参数编号 req_param_id String 对应的请求参数编号 表27 CoditionResp 参数 参数类型 描述 req_param_name String 关联的请求参数对象名称。策略类型为param时必选 sys_param_name String 系统参数-网关内置参数名称。策略类型为system时必选。支持以下参数 req_path:请求路径。如 /a/b req_method:请求方法。如 GET reqPath:请求路径,废弃。如 /a/b reqMethod:请求方法,废弃。如 GET 枚举值: req_path req_method reqPath reqMethod cookie_param_name String COOKIE参数名称。策略类型为cookie时必选 最小长度:0 最大长度:255 frontend_authorizer_param_name String 系统参数-前端认证参数名称。策略类型为frontend_authorizer时必选,前端认证参数名称以"$context.authorizer.frontend."字符串为前缀。例如,前端认证参数名称为user_name,加上前缀为$context.authorizer.frontend.user_name。 condition_type String 策略条件 exact:绝对匹配 enum:枚举 pattern:正则 策略类型为param,system,cookie,frontend_authorizer时必选 枚举值: exact enum pattern condition_origin String 策略类型 param:参数 source:源IP system: 系统参数-网关内置参数 cookie: COOKIE参数 frontend_authorizer: 系统参数-前端认证参数 枚举值: param source system cookie frontend_authorizer condition_value String 策略值。策略类型为param,source,cookie,frontend_authorizer时必填 id String 编号 req_param_id String 关联的请求参数对象编号 req_param_location String 关联的请求参数对象位置 表28 VpcInfo 参数 参数类型 描述 ecs_id String 云服务器ID ecs_name String 云服务器名称 cascade_flag Boolean 是否使用级联方式 暂不支持 vpc_channel_proxy_host String 代理主机 vpc_channel_id String VPC通道编号 vpc_channel_port Integer VPC通道端口 状态码: 400 表29 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 401 表30 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 403 表31 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 404 表32 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述 状态码: 500 表33 响应Body参数 参数 参数类型 描述 error_code String 错误码 error_msg String 错误描述
  • 请求参数 表2 请求Header参数 参数 是否必选 参数类型 描述 X-Auth-Token 是 String 用户Token。通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 表3 请求Body参数 参数 是否必选 参数类型 描述 name 是 String API名称。 支持汉字、英文、数字、中划线、下划线、点、斜杠、中英文格式下的小括号和冒号、中文格式下的顿号,且只能以英文、汉字和数字开头,3-255个字符。 说明: 中文字符必须为UTF-8或者unicode编码。 type 是 Integer API类型 1:公有API 2:私有API 枚举值: 1 2 version 否 String API的版本 最大长度:16 req_protocol 是 String API的请求协议 HTTP HTTPS BOTH:同时支持HTTP和HTTPS GRPCS 缺省值:HTTPS 枚举值: HTTP HTTPS BOTH GRPCS req_method 是 String API的请求方式,当API的请求协议为GRPC类型协议时请求方式固定为POST。 枚举值: GET POST PUT DELETE HEAD PATCH OPTIONS ANY req_uri 是 String 请求地址。可以包含请求参数,用{}标识,比如/getUserInfo/{userId},支持 * / %- _ . 等特殊字符,总长度不超过512,且满足URI规范。 说明: 需要服从URI规范。 auth_type 是 String API的认证方式 NONE:无认证 APP:APP认证 IAM:IAM认证 AUTHORIZER:自定义认证,当auth_type取值为AUTHORIZER时,authorizer_id字段必须传入 当API的请求协议为GRPC类型时不支持自定义认证。 枚举值: NONE APP IAM AUTHORIZER auth_opt 否 AuthOpt object 认证方式参数 cors 否 Boolean 是否支持跨域 TRUE:支持 FALSE:不支持 缺省值:false 枚举值: true false match_mode 否 String API的匹配方式 SWA:前缀匹配 NORMAL:正常匹配(绝对匹配) 默认:NORMAL 枚举值: SWA NORMAL backend_type 是 String 后端类型 HTTP:web后端 FUNCTION:函数工作流,当backend_type取值为FUNCTION时,func_info字段必须传入 MOCK:模拟的后端,当backend_type取值为MOCK时,mock_info字段必须传入 GRPC:grpc后端 枚举值: HTTP FUNCTION MOCK GRPC remark 否 String API描述。字符长度不超过255 说明: 中文字符必须为UTF-8或者unicode编码。 group_id 是 String API所属的分组编号 body_remark 否 String API请求体描述,可以是请求体示例、媒体类型、参数等信息。字符长度不超过20480 说明: 中文字符必须为UTF-8或者unicode编码。 result_normal_sample 否 String 正常响应示例,描述API的正常返回信息。字符长度不超过20480 说明: 中文字符必须为UTF-8或者unicode编码。 当API的请求协议为GRPC类型时不支持配置。 result_failure_sample 否 String 失败返回示例,描述API的异常返回信息。字符长度不超过20480 说明: 中文字符必须为UTF-8或者unicode编码。 当API的请求协议为GRPC类型时不支持配置。 authorizer_id 否 String 前端自定义认证对象的ID,API请求协议为GRPC类型时不支持前端自定义认证 tags 否 Array of strings 标签。 支持英文,数字,中文,特殊符号(-*#%.:_),且只能以中文或英文开头。 默认支持10个标签,如需扩大配额请联系技术工程师修改API_TAG_NUM_LIMIT配置。 最小长度:1 最大长度:128 response_id 否 String 分组自定义响应ID roma_app_id 否 String 集成应用ID 暂不支持 domain_name 否 String API绑定的自定义域名 暂不支持 tag 否 String 标签 待废弃,优先使用tags字段 content_type 否 String 请求内容格式类型: application/json application/xml multipart/form-data text/plain 暂不支持 枚举值: application/json application/xml multipart/form-data text/plain mock_info 否 ApiMockCreate object mock后端详情 func_info 否 ApiFuncCreate object 函数后端详情 req_params 否 Array of ReqParamBase objects API的请求参数列表,API请求协议为GRPC类型时不支持配置 backend_params 否 Array of BackendParamBase objects API的后端参数列表,API请求协议为GRPC类型时不支持配置 policy_mocks 否 Array of ApiPolicyMockCreate objects mock策略后端列表 policy_functions 否 Array of ApiPolicyFunctionCreate objects 函数工作流策略后端列表 backend_api 否 BackendApiCreate object web后端详情 policy_https 否 Array of ApiPolicyHttpCreate objects web策略后端列表 表4 AuthOpt 参数 是否必选 参数类型 描述 app_code_auth_type 否 String AppCode简易认证类型,仅在auth_type为APP时生效,默认为DISABLE: DISABLE:不开启简易认证 HEADER:开启简易认证且AppCode位置在HEADER 缺省值:DISABLE 枚举值: DISABLE HEADER 表5 ApiMockCreate 参数 是否必选 参数类型 描述 remark 否 String 描述信息。长度不超过255个字符 说明: 中文字符必须为UTF-8或者unicode编码。 result_content 否 String 返回结果 version 否 String 版本。字符长度不超过64 authorizer_id 否 String 后端自定义认证ID 表6 ApiFuncCreate 参数 是否必选 参数类型 描述 function_urn 是 String 函数URN remark 否 String 描述信息。长度不超过255个字符 说明: 中文字符必须为UTF-8或者unicode编码。 invocation_type 是 String 调用类型 async: 异步 sync:同步 枚举值: async sync network_type 是 String 对接函数的网络架构类型 V1:非VPC网络架构 V2:VPC网络架构 枚举值: V1 V2 version 否 String 函数版本 当函数别名URN和函数版本同时传入时,函数版本将被忽略,只会使用函数别名URN 最大长度:64 alias_urn 否 String 函数别名URN 当函数别名URN和函数版本同时传入时,函数版本将被忽略,只会使用函数别名URN timeout 是 Integer API网关请求后端服务的超时时间。函数网络架构为V1时最大超时时间为60000,V2最大超时时间可通过实例特性backend_timeout配置修改,可修改的上限为600000。 单位:毫秒。 最小值:1 authorizer_id 否 String 后端自定义认证ID req_protocol 否 String 函数后端的请求协议:HTTPS、GRPCS,默认值为HTTPS,前端配置中的请求协议为GRPCS时可选GRPCS。 缺省值:HTTPS 枚举值: HTTPS GRPCS 表7 ReqParamBase 参数 是否必选 参数类型 描述 name 是 String 参数名称。 长度为1 ~ 32位的字符串,字符串由英文字母、数字、中划线、下划线、英文句号组成,且只能以英文开头。 type 是 String 参数类型 枚举值: STRING NUMBER location 是 String 参数位置 枚举值: PATH QUERY HEADER default_value 否 String 参数默认值 sample_value 否 String 参数示例值 required 否 Integer 是否必须 1:是 2:否 location为PATH时,required默认为1,其他场景required默认为2 枚举值: 1 2 valid_enable 否 Integer 是否开启校验 1:开启校验 2:不开启校验 缺省值:2 枚举值: 1 2 remark 否 String 描述信息。长度不超过255个字符 说明: 中文字符必须为UTF-8或者unicode编码。 enumerations 否 String 参数枚举值 min_num 否 Integer 参数最小值 参数类型为NUMBER时有效 max_num 否 Integer 参数最大值 参数类型为NUMBER时有效 min_size 否 Integer 参数最小长度 参数类型为STRING时有效 max_size 否 Integer 参数最大长度 参数类型为STRING时有效 regular 否 String 正则校验规则 暂不支持 json_schema 否 String JSON校验规则 暂不支持 pass_through 否 Integer 是否透传 1:是 2:否 枚举值: 1 2 表8 ApiPolicyMockCreate 参数 是否必选 参数类型 描述 result_content 否 String 返回结果 effect_mode 是 String 关联的策略组合模式: ALL:满足全部条件 ANY:满足任一条件 枚举值: ALL ANY name 是 String 策略后端名称。字符串由中文、英文字母、数字、下划线组成,且只能以中文或英文开头。 最小长度:3 最大长度:64 backend_params 否 Array of BackendParamBase objects 后端参数列表,后端类型为GRPC时不支持配置 conditions 是 Array of ApiConditionBase objects 策略条件列表 authorizer_id 否 String 后端自定义认证对象的ID,后端类型为GRPC时不支持后端自定义认证 表9 ApiPolicyFunctionCreate 参数 是否必选 参数类型 描述 function_urn 是 String 函数URN invocation_type 是 String 调用类型 async: 异步 sync:同步 枚举值: async sync network_type 是 String 对接函数的网络架构类型 V1:非VPC网络架构 V2:VPC网络架构 枚举值: V1 V2 version 否 String 函数版本 当函数别名URN和函数版本同时传入时,函数版本将被忽略,只会使用函数别名URN 最大长度:64 alias_urn 否 String 函数别名URN 当函数别名URN和函数版本同时传入时,函数版本将被忽略,只会使用函数别名URN timeout 否 Integer API网关请求后端服务的超时时间。函数网络架构为V1时最大超时时间为60000,V2最大超时时间可通过实例特性backend_timeout配置修改,可修改的上限为600000。 单位:毫秒。 最小值:1 req_protocol 否 String 函数后端的请求协议:HTTPS、GRPCS,默认值为HTTPS,前端配置中的请求协议为GRPCS时可选GRPCS。 缺省值:HTTPS 枚举值: HTTPS GRPCS effect_mode 是 String 关联的策略组合模式: ALL:满足全部条件 ANY:满足任一条件 枚举值: ALL ANY name 是 String 策略后端名称。字符串由中文、英文字母、数字、下划线组成,且只能以中文或英文开头。 最小长度:3 最大长度:64 backend_params 否 Array of BackendParamBase objects 后端参数列表,后端类型为GRPC时不支持配置 conditions 是 Array of ApiConditionBase objects 策略条件列表 authorizer_id 否 String 后端自定义认证对象的ID,后端类型为GRPC时不支持后端自定义认证 表10 BackendApiCreate 参数 是否必选 参数类型 描述 authorizer_id 否 String 后端自定义认证对象的ID,后端类型为GRPC时不支持后端自定义认证 url_domain 否 String 后端服务的地址。 由主机(IP或域名)和端口号组成,总长度不超过255。格式为主机:端口(如:apig.example.com:7443)。如果不写端口,则HTTPS默认端口号为443,HTTP默认端口号为80。 支持环境变量,使用环境变量时,每个变量名的长度为3 ~ 32位的字符串,字符串由英文字母、数字、下划线、中划线组成,且只能以英文开头 req_protocol 是 String 请求协议,后端类型为GRPC时请求协议可选GRPCS 枚举值: HTTP HTTPS GRPCS remark 否 String 描述。字符长度不超过255 说明: 中文字符必须为UTF-8或者unicode编码。 req_method 是 String 请求方式,后端类型为GRPC时请求方式固定为POST 枚举值: GET POST PUT DELETE HEAD PATCH OPTIONS ANY version 否 String web后端版本,字符长度不超过16 req_uri 是 String 请求地址。可以包含请求参数,用{}标识,比如/getUserInfo/{userId},支持 * / %- _ . 等特殊字符,总长度不超过512,且满足URI规范。 支持环境变量,使用环境变量时,每个变量名的长度为3 ~ 32位的字符串,字符串由英文字母、数字、中划线、下划线组成,且只能以英文开头。 说明: 需要服从URI规范。 后端类型为GRPC时请求地址固定为/ timeout 是 Integer API网关请求后端服务的超时时间。最大超时时间可通过实例特性backend_timeout配置修改,可修改的上限为600000。 单位:毫秒。 最小值:1 enable_client_ssl 否 Boolean 是否开启双向认证 retry_count 否 String 请求后端服务的重试次数,默认为-1,范围[-1,10]。 当该值为-1时,幂等的接口会重试1次,非幂等的不会重试。POST,PATCH方法为非幂等;GET,HEAD,PUT,OPTIONS和DELETE等方法为幂等的。 缺省值:-1 vpc_channel_info 否 ApiBackendVpcReq object VPC通道详情。vpc_channel_status = 1,则这个object类型为必填信息 vpc_channel_status 否 Integer 是否使用VPC通道 1:使用VPC通道 2:不使用VPC通道 枚举值: 1 2 表11 ApiPolicyHttpCreate 参数 是否必选 参数类型 描述 url_domain 否 String 策略后端的Endpoint。 由域名(或IP地址)和端口号组成,总长度不超过255。格式为域名:端口(如:apig.example.com:7443)。如果不写端口,则HTTPS默认端口号为443, HTTP默认端口号为80。 支持环境变量,使用环境变量时,每个变量名的长度为3 ~ 32位的字符串,字符串由英文字母、数字、“_”、“-”组成,且只能以英文开头。 req_protocol 是 String 请求协议:HTTP、HTTPS、GRPCS,后端类型为GRPC时可选GRPCS 枚举值: HTTP HTTPS GRPCS req_method 是 String 请求方式:GET、POST、PUT、DELETE、HEAD、PATCH、OPTIONS、ANY,后端类型为GRPC时固定为POST 枚举值: GET POST PUT DELETE HEAD PATCH OPTIONS ANY req_uri 是 String 请求地址。可以包含请求参数,用{}标识,比如/getUserInfo/{userId},支持 * / %- _ . 等特殊字符,总长度不超过512,且满足URI规范。 支持环境变量,使用环境变量时,每个变量名的长度为3 ~ 32位的字符串,字符串由英文字母、数字、中划线、下划线组成,且只能以英文开头。 说明: 需要服从URI规范。 后端类型为GRPC时请求地址固定为/ timeout 否 Integer API网关请求后端服务的超时时间。最大超时时间可通过实例特性backend_timeout配置修改,可修改的上限为600000。 单位:毫秒。 最小值:1 retry_count 否 String 请求后端服务的重试次数,默认为-1,范围[-1,10]。 当该值为-1时,幂等的接口会重试1次,非幂等的不会重试。POST,PATCH方法为非幂等;GET,HEAD,PUT,OPTIONS和DELETE等方法为幂等的。 缺省值:-1 effect_mode 是 String 关联的策略组合模式: ALL:满足全部条件 ANY:满足任一条件 枚举值: ALL ANY name 是 String 策略后端名称。字符串由中文、英文字母、数字、下划线组成,且只能以中文或英文开头。 最小长度:3 最大长度:64 backend_params 否 Array of BackendParamBase objects 后端参数列表,后端类型为GRPC时不支持配置 conditions 是 Array of ApiConditionBase objects 策略条件列表 authorizer_id 否 String 后端自定义认证对象的ID,后端类型为GRPC时不支持后端自定义认证 vpc_channel_info 否 ApiBackendVpcReq object VPC通道详情。vpc_channel_status = 1,则这个object类型为必填信息 vpc_channel_status 否 Integer 是否使用VPC通道 1 : 使用VPC通道 2 : 不使用VPC通道 枚举值: 1 2 表12 BackendParamBase 参数 是否必选 参数类型 描述 origin 是 String 参数类别: 后端服务参数:REQUEST 常量参数:CONSTANT 系统参数:SYSTEM 枚举值: REQUEST CONSTANT SYSTEM name 是 String 参数名称。 字符串由英文字母、数字、中划线、下划线、英文句号组成,且只能以英文开头。 最小长度:1 最大长度:32 remark 否 String 描述。字符长度不超过255 说明: 中文字符必须为UTF-8或者unicode编码。 location 是 String 参数位置:PATH、QUERY、HEADER 枚举值: PATH QUERY HEADER value 是 String 参数值。字符长度不超过255 origin类别为REQUEST时,此字段值为req_params中的参数名称; origin类别为CONSTANT时,此字段值为参数真正的值; origin类别为SYSTEM时,此字段值为系统参数名称,系统参数分为网关内置参数、前端认证参数和后端认证参数,当api前端安全认证方式为自定义认证时,可以填写前端认证参数,当api开启后端认证时,可以填写后端认证参数。 网关内置参数取值及对应含义: $context.sourceIp:API调用者的源地址 $context.stage:API调用的部署环境 $context.apiId:API的ID $context.appId:API调用者的APP对象ID $context.requestId:当次API调用生成请求ID $context.serverAddr:网关的服务器地址 $context.serverName:网关的服务器名称 $context.handleTime:本次API调用的处理时间 $context.providerAppId:API拥有者的应用对象ID,暂不支持使用 前端认证参数取值:以“$context.authorizer.frontend.”为前缀,如希望自定义认证校验通过返回的参数为aaa,那么此字段填写为$context.authorizer.frontend.aaa 后端认证参数取值:以“$context.authorizer.backend.”为前缀,如希望自定义认证校验通过返回的参数为aaa,那么此字段填写为$context.authorizer.backend.aaa 表13 ApiConditionBase 参数 是否必选 参数类型 描述 req_param_name 否 String 关联的请求参数对象名称。策略类型为param时必选 sys_param_name 否 String 系统参数-网关内置参数名称。策略类型为system时必选。支持以下参数 req_path:请求路径。如 /a/b req_method:请求方法。如 GET reqPath:请求路径,废弃。如 /a/b reqMethod:请求方法,废弃。如 GET 枚举值: req_path req_method reqPath reqMethod cookie_param_name 否 String COOKIE参数名称。策略类型为cookie时必选 最小长度:0 最大长度:255 frontend_authorizer_param_name 否 String 系统参数-前端认证参数名称。策略类型为frontend_authorizer时必选,前端认证参数名称以"$context.authorizer.frontend."字符串为前缀。例如,前端认证参数名称为user_name,加上前缀为$context.authorizer.frontend.user_name。 condition_type 否 String 策略条件 exact:绝对匹配 enum:枚举 pattern:正则 策略类型为param,system,cookie,frontend_authorizer时必选 枚举值: exact enum pattern condition_origin 是 String 策略类型 param:参数 source:源IP system: 系统参数-网关内置参数 cookie: COOKIE参数 frontend_authorizer: 系统参数-前端认证参数 枚举值: param source system cookie frontend_authorizer condition_value 是 String 策略值。策略类型为param,source,cookie,frontend_authorizer时必填 表14 ApiBackendVpcReq 参数 是否必选 参数类型 描述 vpc_channel_proxy_host 否 String 代理主机 vpc_channel_id 是 String VPC通道编号
  • URI HTTP/HTTPS请求方法以及URI如下表所示。 表1 HTTP/HTTPS请求方法以及URI 请求方法 URI GET /v1/{project_id}/apigw/instances/{instance_id}/apps[?page_size, page_no, id, name, app_key, creator] 可以在URI后面用‘?’和‘&’添加不同的查询条件组合。 查询条件可为以下字段以及对应的值:id、name、app_key、creator、page_size、page_no。 URI中的参数说明如下表所示。 表2 参数说明 名称 是否必选 类型 说明 project_id 是 String 项目ID。可从控制台“我的凭证”中获取region下项目ID,管理员权限可查询。 instance_id 是 String 实例ID,可从API网关控制台的专享版实例信息中获取。 id 否 String 编号 name 否 String 名称 status 否 Integer 状态 app_key 否 String APP的KEY creator 否 String APP的创建者,取值如下: USER:用户自行创建 MARKET:云商店分配 page_size 否 Integer 每页显示的条数,默认值:20 page_no 否 Integer 页码,默认值:1 precise_search 否 String 指定需要精确匹配查找的参数名称,目前仅支持name
  • 响应消息 表3 参数说明 名称 类型 说明 total Integer 符合条件的APP总数 size Integer 本次查询返回的列表长度 apps 字典数据类型 APP列表 表4 apps参数说明 参数 类型 说明 id String 编号 name String 名称 status Integer 状态 app_key String APP的key app_secret String 密钥 register_time Timestamp 创建时间 remark String 描述 update_time Timestamp 更新时间 creator String APP的创建者,取值如下: USER:用户自行创建 MARKET:云商店分配 app_type String APP类型,默认为apig bind_num Integer 绑定的API数量 响应消息样例: { "total": 2, "size": 2, "apps": [{ "id": "98efd77d-10b5-4eca-8170-ed30a4a286a4", "name": "app_002", "status": 1, "app_key": "f627fb****d3fe2", "app_secret": "******", "remark": "第二个APP", "register_time": "2017-12-28T12:32:50Z", "update_time": "2017-12-28T12:32:50Z", "creator": "MARKET", "app_type": "apig", "bind_num": 2 }, { "id": "14b39****37e9", "name": "app_001", "status": 1, "app_key": "d49b1****376eb", "app_secret": "******", "remark": "第一个APP", "register_time": "2017-12-28T12:26:54Z", "update_time": "2017-12-28T12:29:35.571Z", "creator": "USER", "app_type": "apig", "bind_num": 2 }] }
  • 响应消息 表3 参数说明 参数 类型 说明 id String 编号 name String 名称 status Integer 状态 app_key String APP的key app_secret String 密钥 creator String APP的创建者,取值如下: USER:用户自行创建 MARKET:云商店分配 register_time Timestamp 创建时间 remark String 描述 update_time Timestamp 更新时间 app_type String APP类型,默认为apig 响应消息样例: { "id": "14b399a****4537e9", "name": "app_001", "status": 1, "app_key": "d49b1****e376eb", "app_secret": "******", "creator": "USER", "remark": "第一个APP", "register_time": "2017-12-28T12:26:54Z", "update_time": "2017-12-28T12:28:07.2966182Z", "app_type": "apig" }
共100000条