导出分组下所有API
功能介绍
提供用户导出API定义的接口。
导出指定分组指定环境中发布的API的基础/全量/扩展Swagger定义。
URI
HTTP/HTTPS请求方法以及URI如下表所示。
| 
        请求方法  | 
      
        URI  | 
     
|---|---|
| 
        GET  | 
      
        /v1.0/apigw/openapi?env_id={0}&group_id={1}&define={2}&version={3}&type={4}  | 
     
请求消息
| 
        参数  | 
      
        是否必选  | 
      
        类型  | 
      
        说明  | 
     
|---|---|---|---|
| 
        env_id/env  | 
      
        是  | 
      
        String  | 
      
        API分组发布的环境ID,目前支持env_id和env,两个均存在时以env_id为准,建议使用env_id  | 
     
| 
        group_id/group  | 
      
        是  | 
      
        String  | 
      
        API分组ID,目前支持group_id和group,两个均存在时以group_id为准,建议使用group_id  | 
     
| 
        define  | 
      
        否  | 
      
        String  | 
      
        导出API的定义范围: 
 默认为base  | 
     
| 
        version  | 
      
        否  | 
      
        String  | 
      
        导出的API定义版本,默认为当前时间  | 
     
| 
        type  | 
      
        否  | 
      
        String  | 
      
        导出的API定义的格式:json/yaml,默认为json  | 
     
响应消息
| 
        名称  | 
      
        是否必选  | 
      
        参数类型  | 
      
        说明  | 
     
|---|---|---|---|
| 
        swagger  | 
      
        是  | 
      
        String  | 
      
        固定值2.0  | 
     
| 
        info  | 
      
        是  | 
      
        Object  | 
      
        参考表4  | 
     
| 
        host  | 
      
        是  | 
      
        String  | 
      
        API分组绑定的子域名  | 
     
| 
        paths  | 
      
        是  | 
      
        Object  | 
      |
| 
        responses  | 
      
        是  | 
      
        Object  | 
      
        公用响应定义,可以被引用在{method}的操作中,参考表9  | 
     
| 
        securityDefinitions  | 
      
        是  | 
      
        Object  | 
      
        定义鉴权方式,参考表13  | 
     
| 
        x-apigateway-access-controls  | 
      
        否  | 
      
        Object  | 
      
        访问控制信息,参考表 x-apigateway-access-controls参数说明  | 
     
| 
        x-apigateway-ratelimits  | 
      
        否  | 
      
        Object  | 
      
        流量控制信息,参考表 x-apigateway-ratelimits参数说明  | 
     
| 
        名称  | 
      
        是否必选  | 
      
        参数类型  | 
      
        说明  | 
     
|---|---|---|---|
| 
        title  | 
      
        是  | 
      
        String  | 
      
        API分组名称  | 
     
| 
        version  | 
      
        是  | 
      
        String  | 
      
        版本号,用户输入自定义版本号或者使用默认的当前时间  | 
     
| 
        description  | 
      
        否  | 
      
        String  | 
      
        分组描述信息  | 
     
| 
        名称  | 
      
        是否必选  | 
      
        参数类型  | 
      
        说明  | 
     
|---|---|---|---|
| 
        operationId  | 
      
        是  | 
      
        String  | 
      
        API的名称  | 
     
| 
        description  | 
      
        否  | 
      
        String  | 
      
        API的描述信息  | 
     
| 
        schemes  | 
      
        是  | 
      
        Object  | 
      
        API的请求协议对象数组定义,支持http、https  | 
     
| 
        tags  | 
      
        否  | 
      
        Object  | 
      
        API标签对象数组定义  | 
     
| 
        parameters  | 
      
        否  | 
      
        Object  | 
      
        请求参数对象数组定义,参考表 前端parameters参数说明  | 
     
| 
        responses  | 
      
        是  | 
      
        Object  | 
      
        响应定义,参考表9  | 
     
| 
        security  | 
      
        否  | 
      
        Object  | 
      
        API的认证类型对象数组定义,参考表 security参数说明  | 
     
| 
        x-apigateway-access-control  | 
      
        否  | 
      
        Object  | 
      
        API绑定的访问控制对象数组定义  | 
     
| 
        x-apigateway-backend  | 
      
        否  | 
      
        Object  | 
      
        API的后端信息,参考表 x-apigateway-backend参数说明  | 
     
| 
        x-apigateway-backend-policies  | 
      
        否  | 
      
        Object  | 
      
        API的策略后端信息,参考表 x-apigateway-backend-policies参数说明  | 
     
| 
        x-apigateway-cors  | 
      
        否  | 
      
        Boolean  | 
      
        是否支持跨域  | 
     
| 
        x-apigateway-match-mode  | 
      
        否  | 
      
        String  | 
      
        API的匹配方式  | 
     
| 
        x-apigateway-ratelimit  | 
      
        否  | 
      
        String  | 
      
        API绑定的流量控制名称  | 
     
| 
        x-apigateway-request-type  | 
      
        否  | 
      
        String  | 
      
        API的类型  | 
     
| 
        名称  | 
      
        是否必选  | 
      
        参数类型  | 
      
        说明  | 
     
|---|---|---|---|
| 
        maximum  | 
      
        否  | 
      
        Float  | 
      
        参数为数值类型时,最大参数值  | 
     
| 
        minimum  | 
      
        否  | 
      
        Float  | 
      
        参数为数值类型时,最小参数值  | 
     
| 
        maxLength  | 
      
        否  | 
      
        Integer  | 
      
        参数为字符串类型时,参数的最大长度  | 
     
| 
        minLength  | 
      
        否  | 
      
        Integer  | 
      
        参数为字符串类型时,参数的最小长度  | 
     
| 
        pattern  | 
      
        否  | 
      
        String  | 
      
        参数值为正则匹配表达式  | 
     
| 
        type  | 
      
        否  | 
      
        String  | 
      
        参数类型  | 
     
| 
        default  | 
      
        否  | 
      
        String  | 
      
        参数默认值  | 
     
| 
        description  | 
      
        否  | 
      
        String  | 
      
        参数描述信息  | 
     
| 
        name  | 
      
        否  | 
      
        String  | 
      
        参数名称  | 
     
| 
        in  | 
      
        否  | 
      
        String  | 
      
        参数位置,支持path、header、query、formData、body  | 
     
| 
        required  | 
      
        否  | 
      
        Boolean  | 
      
        参数是否必需,参数位置为path时必需  | 
     
| 
        名称  | 
      
        是否必选  | 
      
        参数类型  | 
      
        说明  | 
     
|---|---|---|---|
| 
        default  | 
      
        否  | 
      
        Object  | 
      
        缺省响应,描述未定义的响应码  | 
     
| 
        status_code  | 
      
        否  | 
      
        Object  | 
      
        响应状态码,值为响应对象,参考表11  | 
     
| 
        x-apigateway-result-failure-sample  | 
      
        否  | 
      
        String  | 
      
        失败返回示例,描述API的异常返回信息  | 
     
| 
        x-apigateway-result-normal-sample  | 
      
        否  | 
      
        String  | 
      
        正常响应示例,描述API的正常返回信息  | 
     
| 
        名称  | 
      
        是否必选  | 
      
        参数类型  | 
      
        说明  | 
     
|---|---|---|---|
| 
        apig-auth-type  | 
      
        否  | 
      
        Object  | 
      
        API的认证类型对象数组定义,为空数组 apig-auth-type支持: 
  | 
     
| 
        名称  | 
      
        是否必选  | 
      
        参数类型  | 
      
        说明  | 
     
|---|---|---|---|
| 
        description  | 
      
        否  | 
      
        String  | 
      
        BODY体描述  | 
     
| 
        type  | 
      
        否  | 
      
        String  | 
      
        BODY体类型:FORM/STREAM(表单/字节流)  | 
     
| 
        名称  | 
      
        是否必选  | 
      
        参数类型  | 
      
        说明  | 
     
|---|---|---|---|
| 
        type  | 
      
        是  | 
      
        String  | 
      
        鉴权类型,支持apiKey  | 
     
| 
        name  | 
      
        是  | 
      
        String  | 
      
        apiKey参数名称  | 
     
| 
        in  | 
      
        是  | 
      
        String  | 
      
        apiKey参数位置  | 
     
| 
        x-apigateway-auth-type  | 
      
        是  | 
      
        String  | 
      
        扩展鉴权类型,基于apiKey鉴权方式的扩展,网关自定义的鉴权方式,支持AppSigv1、IAM、IAM_NONE  | 
     
| 
        名称  | 
      
        是否必选  | 
      
        参数类型  | 
      
        说明  | 
     
|---|---|---|---|
| 
        type  | 
      
        是  | 
      
        String  | 
      
        API后端类型,支持HTTP、HTTP-VPC、FUNCTION、MOCK  | 
     
| 
        parameters  | 
      
        否  | 
      
        Object  | 
      
        后端参数对象数组定义,参考表 后端parameters参数说明  | 
     
| 
        backend_define  | 
      
        是  | 
      
        Object  | 
      
        API后端定义 backend_define支持: 
  | 
     
| 
        名称  | 
      
        是否必选  | 
      
        参数类型  | 
      
        说明  | 
     
|---|---|---|---|
| 
        type  | 
      
        是  | 
      
        String  | 
      
        API后端类型,支持HTTP、HTTP-VPC、FUNCTION、MOCK  | 
     
| 
        name  | 
      
        是  | 
      
        String  | 
      
        后端策略名称  | 
     
| 
        parameters  | 
      
        否  | 
      
        Object  | 
      
        后端参数对象数组定义,参考表 后端parameters参数说明  | 
     
| 
        backend_define  | 
      
        是  | 
      
        Object  | 
      
        API后端定义 backend_define支持: 
  | 
     
| 
        conditions  | 
      
        是  | 
      
        Object  | 
      
        策略条件对象数组定义,参考表 conditions参数说明  | 
     
| 
        effectMode  | 
      
        是  | 
      
        String  | 
      
        关联的策略组合模式,支持ANY、ALL  | 
     
| 
        名称  | 
      
        是否必选  | 
      
        参数类型  | 
      
        说明  | 
     
|---|---|---|---|
| 
        name  | 
      
        是  | 
      
        String  | 
      
        参数名称,由字母、数字、下划线、连线、点组成,以字母开头,最长32字节 header位置的参数名称不区分大小写  | 
     
| 
        value  | 
      
        是  | 
      
        String  | 
      
        参数值,当参数来源为REQUEST时,值为请求参数名称  | 
     
| 
        in  | 
      
        是  | 
      
        String  | 
      
        参数位置,支持header、query、path  | 
     
| 
        origin  | 
      
        是  | 
      
        String  | 
      
        参数映射来源,支持REQUEST、CONSTANT  | 
     
| 
        description  | 
      
        否  | 
      
        String  | 
      
        参数含义描述  | 
     
| 
        名称  | 
      
        是否必选  | 
      
        参数类型  | 
      
        说明  | 
     
|---|---|---|---|
| 
        address  | 
      
        是  | 
      
        String  | 
      
        后端服务地址,格式为:<域名或IP>:[port]  | 
     
| 
        scheme  | 
      
        是  | 
      
        String  | 
      
        后端请求协议定义,支持http、https  | 
     
| 
        method  | 
      
        是  | 
      
        String  | 
      
        后端请求方法,支持GET、POST、PUT、DELETE、HEAD、OPTIONS、PATCH、ANY  | 
     
| 
        path  | 
      
        是  | 
      
        String  | 
      
        后端请求路径,支持路径变量  | 
     
| 
        timeout  | 
      
        否  | 
      
        Integer  | 
      
        后端请求超时时间,单位毫秒,缺省值为5000,取值范围为1 ~ 60000  | 
     
| 
        description  | 
      
        否  | 
      
        String  | 
      
        API后端描述  | 
     
| 
        名称  | 
      
        是否必选  | 
      
        参数类型  | 
      
        说明  | 
     
|---|---|---|---|
| 
        name  | 
      
        是  | 
      
        Array  | 
      
        VPC通道名称  | 
     
| 
        scheme  | 
      
        是  | 
      
        String  | 
      
        后端请求协议定义,支持http、https  | 
     
| 
        method  | 
      
        是  | 
      
        String  | 
      
        后端请求方法,支持GET、POST、PUT、DELETE、HEAD、OPTIONS、PATCH、ANY  | 
     
| 
        path  | 
      
        是  | 
      
        String  | 
      
        后端请求路径,支持路径变量  | 
     
| 
        timeout  | 
      
        否  | 
      
        Integer  | 
      
        后端请求超时时间,单位毫秒,缺省值为5000,取值范围为1 ~ 60000  | 
     
| 
        host  | 
      
        否  | 
      
        String  | 
      
        VPC通道代理主机  | 
     
| 
        description  | 
      
        否  | 
      
        String  | 
      
        API后端描述  | 
     
| 
        名称  | 
      
        是否必选  | 
      
        参数类型  | 
      
        说明  | 
     
|---|---|---|---|
| 
        function-urn  | 
      
        是  | 
      
        String  | 
      
        函数URN地址  | 
     
| 
        version  | 
      
        是  | 
      
        String  | 
      
        函数版本  | 
     
| 
        invocation-type  | 
      
        是  | 
      
        String  | 
      
        函数调用类型,支持async、sync  | 
     
| 
        timeout  | 
      
        否  | 
      
        Integer  | 
      
        函数超时时间,单位毫秒,缺省值为5000,取值范围为1 ~ 60000  | 
     
| 
        description  | 
      
        否  | 
      
        String  | 
      
        API后端描述  | 
     
| 
        名称  | 
      
        是否必选  | 
      
        参数类型  | 
      
        说明  | 
     
|---|---|---|---|
| 
        result-content  | 
      
        是  | 
      
        String  | 
      
        MOCK返回结果  | 
     
| 
        description  | 
      
        否  | 
      
        String  | 
      
        API后端描述  | 
     
| 
        名称  | 
      
        是否必选  | 
      
        参数类型  | 
      
        说明  | 
     
|---|---|---|---|
| 
        type  | 
      
        是  | 
      
        String  | 
      
        策略条件类型,支持equal、enum、pattern  | 
     
| 
        value  | 
      
        是  | 
      
        String  | 
      
        策略条件值  | 
     
| 
        origin  | 
      
        是  | 
      
        String  | 
      
        策略条件输入来源,支持source、request  | 
     
| 
        parameter  | 
      
        否  | 
      
        String  | 
      
        策略条件输入来源为request时,请求入参的名称  | 
     
| 
        名称  | 
      
        是否必选  | 
      
        参数类型  | 
      
        说明  | 
     
|---|---|---|---|
| 
        acl-type  | 
      
        是  | 
      
        String  | 
      
        访问控制行为,支持PERMIT、DENY  | 
     
| 
        entity-type  | 
      
        是  | 
      
        String  | 
      
        访问控制对象,支持IP、DOMAIN  | 
     
| 
        value  | 
      
        是  | 
      
        String  | 
      
        访问控制策略值,多个值以“,”间隔  | 
     
| 
        名称  | 
      
        是否必选  | 
      
        参数类型  | 
      
        说明  | 
     
|---|---|---|---|
| 
        throttle_name  | 
      
        否  | 
      
        Object  | 
      
        指定名称的流控策略,参考表 throttle_name参数说明  | 
     
| 
        名称  | 
      
        是否必选  | 
      
        参数类型  | 
      
        说明  | 
     
|---|---|---|---|
| 
        api-limit  | 
      
        是  | 
      
        Integer  | 
      
        API访问次数限制  | 
     
| 
        user-limit  | 
      
        否  | 
      
        Integer  | 
      
        用户访问次数限制  | 
     
| 
        app-limit  | 
      
        否  | 
      
        Integer  | 
      
        应用访问次数限制  | 
     
| 
        ip-limit  | 
      
        否  | 
      
        Integer  | 
      
        源IP访问次数限制  | 
     
| 
        interval  | 
      
        是  | 
      
        Integer  | 
      
        流控策略时间周期  | 
     
| 
        unit  | 
      
        是  | 
      
        String  | 
      
        流控策略时间周期单位,支持SECOND、MINUTE、HOUR、DAY  | 
     
| 
        shared  | 
      
        否  | 
      
        Boolean  | 
      
        是否共享流控策略  | 
     
| 
        special  | 
      
        否  | 
      
        Object  | 
      
        特殊流控策略对象数组定义,参考表 special参数说明  | 
     
响应消息样例:
{
	"swagger": "2.0",
	"info": {
		"description": "api group test",
		"title": "APIGroup_test",
		"version": "2019-09-12-17:38:10"
	},
	"host": "6b075335476a4943bf70c3db1343c912.apigw.example.com",
	"paths": {
		"/test/{path}": {
			"get": {
				"security": [
					{
						"apig-auth-app": []
					}
				],
				"description": "api test",
				"schemes": [
					"https"
				],
				"operationId": "API_test",
				"parameters": [
					{
						"type": "string",
						"description": "header parameter",
						"name": "header",
						"in": "header",
						"required": true
					},
					{
						"type": "string",
						"description": "path parameter",
						"name": "path",
						"in": "path",
						"required": true
					},
					{
						"type": "number",
						"default": "123",
						"description": "query parameter",
						"name": "query",
						"in": "query"
					}
				],
				"responses": {
					"default": {
						"$ref": "#/responses/default"
					},
					"x-apigateway-result-failure-sample": "",
					"x-apigateway-result-normal-sample": "success"
				},
				"x-apigateway-backend": {
					"httpEndpoints": {
						"address": "1.1.1.1:443",
						"description": "",
						"method": "GET",
						"path": "/test/{path}",
						"scheme": "https",
						"timeout": 5000
					},
					"parameters": [
						{
							"description": "",
							"in": "HEADER",
							"name": "header",
							"origin": "REQUEST",
							"value": "header"
						},
						{
							"description": "",
							"in": "PATH",
							"name": "path",
							"origin": "REQUEST",
							"value": "path"
						},
						{
							"description": "",
							"in": "QUERY",
							"name": "query",
							"origin": "REQUEST",
							"value": "query"
						}
					],
					"type": "HTTP"
				},
				"x-apigateway-backend-policies": [
					{
						"conditions": [
							{
								"origin": "param",
								"parameter": "path",
								"type": "exact",
								"value": "path"
							},
							{
								"origin": "source",
								"parameter": "",
								"type": "",
								"value": "1.0.0.0/8"
							}
						],
						"effectMode": "ANY",
						"httpVpcEndpoints": {
							"method": "POST",
							"name": "VPC_n9ct",
							"path": "/",
							"scheme": "HTTPS",
							"timeout": 5000
						},
						"name": "policy_test",
						"type": "HTTP-VPC"
					}
				],
				"x-apigateway-cors": false,
				"x-apigateway-match-mode": "NORMAL",
				"x-apigateway-request-type": "public"
			}
		}
	},
	"responses": {
		"default": {
			"description": "response example"
		}
	},
	"securityDefinitions": {
		"apig-auth-app": {
			"type": "apiKey",
			"name": "Authorization",
			"in": "header",
			"x-apigateway-auth-type": "AppSigv1"
		},
		"apig-auth-iam": {
			"type": "apiKey",
			"name": "unused",
			"in": "header",
			"x-apigateway-auth-type": "IAM"
		}
	}
}
 响应码
| 
        响应码  | 
      
        说明  | 
     
|---|---|
| 
        200  | 
      
        OK  | 
     
| 
        400  | 
      
        bad request  | 
     
| 
        401  | 
      
        unauthorized  | 
     
| 
        403  | 
      
        forbidden  | 
     
| 
        500  | 
      
        server internal error  |