API网关 APIGAPI网关 APIG

计算
弹性云服务器 ECS
裸金属服务器 BMS
云手机 CPH
专属主机 DeH
弹性伸缩 AS
镜像服务 IMS
函数工作流 FunctionGraph
云耀云服务器 HECS
VR云渲游平台 CVR
特惠算力专区
存储
对象存储服务 OBS
云硬盘 EVS
云备份 CBR
弹性文件服务 SFS
存储容灾服务 SDRS
云硬盘备份 VBS
云服务器备份 CSBS
数据快递服务 DES
专属企业存储服务
云存储网关 CSG
专属分布式存储服务 DSS
CDN与智能边缘
内容分发网络 CDN
智能边缘云 IEC
智能边缘平台 IEF
人工智能
AI开发平台ModelArts
华为HiLens
图引擎服务 GES
图像识别 Image
文字识别 OCR
自然语言处理 NLP
内容审核 Moderation
图像搜索 ImageSearch
医疗智能体 EIHealth
园区智能体 CampusGo
企业级AI应用开发专业套件 ModelArts Pro
人脸识别服务 FRS
对话机器人服务 CBS
视频分析服务 VAS
语音交互服务 SIS
知识图谱 KG
人证核身服务 IVS
IoT物联网
设备接入 IoTDA
设备管理 IoTDM(联通用户专用)
全球SIM联接 GSL
IoT开发者服务
IoT数据分析
车联网服务 IoV
路网数字化服务 DRIS
IoT边缘 IoTEdge
设备发放 IoTDP
开发与运维
软件开发平台 DevCloud
项目管理 ProjectMan
代码托管 CodeHub
流水线 CloudPipeline
代码检查 CodeCheck
编译构建 CloudBuild
部署 CloudDeploy
云测 CloudTest
发布 CloudRelease
移动应用测试 MobileAPPTest
CloudIDE
Classroom
开源镜像站 Mirrors
应用魔方 AppCube
云性能测试服务 CPTS
应用管理与运维平台 ServiceStage
视频
实时音视频 SparkRTC
视频直播 Live
视频点播 VOD
媒体处理 MPC
视频接入服务 VIS
管理与监管
统一身份认证服务 IAM
消息通知服务 SMN
云监控服务 CES
应用运维管理 AOM
应用性能管理 APM
云日志服务 LTS
云审计服务 CTS
标签管理服务 TMS
资源管理服务 RMS
应用身份管理服务 OneAccess
区块链
区块链服务 BCS
可信跨链数据链接服务 TCDAS
智能协作
IdeaHub
开发者工具
SDK开发指南
API签名指南
DevStar
HCloud CLI
Terraform
Ansible
云生态
云市场
合作伙伴中心
华为云培训中心
其他
管理控制台
消息中心
产品价格详情
系统权限
我的凭证
客户关联华为云合作伙伴须知
公共问题
宽限期保留期
奖励推广计划
活动
容器
云容器引擎 CCE
云容器实例 CCI
容器镜像服务 SWR
应用编排服务 AOS
多云容器平台 MCP
基因容器 GCS
容器洞察引擎 CIE
云原生服务中心 OSC
容器批量计算 BCE
容器交付流水线 ContainerOps
应用服务网格 ASM
网络
虚拟私有云 VPC
弹性公网IP EIP
弹性负载均衡 ELB
NAT网关 NAT
云专线 DC
虚拟专用网络 VPN
云连接 CC
VPC终端节点 VPCEP
数据库
云数据库 RDS
数据复制服务 DRS
文档数据库服务 DDS
分布式数据库中间件 DDM
云数据库 GaussDB (for openGauss)
云数据库 GaussDB(for MySQL)
云数据库 GaussDB NoSQL
数据管理服务 DAS
数据库和应用迁移 UGO
大数据
MapReduce服务 MRS
数据湖探索 DLI
表格存储服务 CloudTable
可信智能计算服务 TICS
推荐系统 RES
云搜索服务 CSS
数据可视化 DLV
数据湖治理中心 DGC
数据接入服务 DIS
数据仓库服务 GaussDB(DWS)
应用中间件
微服务引擎 CSE
分布式消息服务Kafka版
分布式消息服务RabbitMQ版
API网关 APIG
分布式缓存服务 DCS
分布式消息服务RocketMQ版
企业应用
域名注册服务 Domains
云解析服务 DNS
云速建站 CloudSite
网站备案
华为云WeLink
会议
隐私保护通话 PrivateNumber
语音通话 VoiceCall
消息&短信 MSGSMS
云管理网络
SD-WAN 云服务
边缘数据中心管理 EDCM
云桌面 Workspace
应用与数据集成平台 ROMA Connect
ROMA资产中心 ROMAExchange
API全生命周期管理 ROMA API
安全与合规
安全技术与应用
DDoS防护 ADS
Web应用防火墙 WAF
云防火墙 CFW
应用信任中心 ATC
企业主机安全 HSS
容器安全服务 CGS
云堡垒机 CBH
数据库安全服务 DBSS
数据加密服务 DEW
数据安全中心 DSC
云证书管理服务 CCM
SSL证书管理 SCM
漏洞扫描服务 VSS
态势感知 SA
威胁检测服务 MTD
管理检测与响应 MDR
迁移
主机迁移服务 SMS
对象存储迁移服务 OMS
云数据迁移 CDM
专属云
专属计算集群 DCC
解决方案
高性能计算 HPC
SAP
游戏云
混合云灾备
价格
成本优化最佳实践
专属云商业逻辑
用户服务
帐号中心
费用中心
成本中心
资源中心
企业管理
工单管理
客户运营能力
国际站常见问题
支持计划
专业服务
合作伙伴支持计划
更新时间:2021/09/29 GMT+08:00
分享

导出分组下所有API

功能介绍

提供用户导出API定义的接口。

导出指定分组指定环境中发布的API的基础/全量/扩展Swagger定义。

URI

HTTP/HTTPS请求方法以及URI如下表所示。

表1 HTTP/HTTPS请求方法以及URI

请求方法

URI

GET

/v1/{project_id}/apigw/instances/{instance_id}/openapi?env_id={0}&group_id={1}&define={2}&version={3}&type={4}

请求消息

表2 参数说明

参数

是否必选

类型

说明

project_id

String

项目ID。可从控制台“我的凭证”中获取region下项目ID,管理员权限可查询。

instance_id

String

实例ID,可从API网关控制台的专享版实例信息中获取。

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:基础定义
  • full:全量定义
  • all:扩展定义

默认为base

version

String

导出的API定义版本,默认为当前时间

type

String

导出的API定义的格式:json/yaml,默认为json

响应消息

表3 参数说明

名称

是否必选

参数类型

说明

swagger

String

固定值2.0

info

Object

参考表4

host

String

API分组绑定的子域名

paths

Object

参考表 paths参数说明

responses

Object

公用响应定义,可以被引用在{method}的操作中,参考表9

securityDefinitions

Object

定义鉴权方式,参考表13

x-apigateway-access-controls

Object

访问控制信息,参考表 x-apigateway-access-controls参数说明

x-apigateway-ratelimits

Object

流量控制信息,参考表 x-apigateway-ratelimits参数说明

表4 info参数说明

名称

是否必选

参数类型

说明

title

String

API分组名称

version

String

版本号,用户输入自定义版本号或者使用默认的当前时间

description

String

分组描述信息

表5 paths参数说明

名称

是否必选

参数类型

说明

uri

Object

API访问地址,参考表6

表6 uri参数说明

名称

是否必选

参数类型

说明

method

Object

API访问方法,参考表7

表7 method参数说明

名称

是否必选

参数类型

说明

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的类型

表8 前端parameters参数说明

名称

是否必选

参数类型

说明

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时必需

表9 responses参数说明

名称

是否必选

参数类型

说明

default

Object

缺省响应,描述未定义的响应码

status_code

Object

响应状态码,值为响应对象,参考表11

x-apigateway-result-failure-sample

String

失败返回示例,描述API的异常返回信息

x-apigateway-result-normal-sample

String

正常响应示例,描述API的正常返回信息

表10 security参数说明

名称

是否必选

参数类型

说明

apig-auth-type

Object

API的认证类型对象数组定义,为空数组

apig-auth-type支持:

  • APP认证: apig-auth-app
  • IAM认证:apig-auth-iam
  • NONE:不填写
表11 status code参数说明

名称

是否必选

参数类型

说明

description

String

响应描述信息

schema

Object

响应正文定义,参考表12

表12 schema参数说明

名称

是否必选

参数类型

说明

description

String

BODY体描述

type

String

BODY体类型:FORM/STREAM(表单/字节流)

表13 securityDefinitions参数说明

名称

是否必选

参数类型

说明

name

Object

自定义鉴权方式名称,参考表14

表14 name参数说明

名称

是否必选

参数类型

说明

type

String

鉴权类型,支持apiKey

name

String

apiKey参数名称

in

String

apiKey参数位置

x-apigateway-auth-type

String

扩展鉴权类型,基于apiKey鉴权方式的扩展,网关自定义的鉴权方式,支持AppSigv1、IAM、IAM_NONE

表15 x-apigateway-backend参数说明

名称

是否必选

参数类型

说明

type

String

API后端类型,支持HTTP、HTTP-VPC、FUNCTION、MOCK

parameters

Object

后端参数对象数组定义,参考表 后端parameters参数说明

backend_define

Object

API后端定义

backend_define支持:

表16 x-apigateway-backend-policies参数说明

名称

是否必选

参数类型

说明

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

表17 后端parameters参数说明

名称

是否必选

参数类型

说明

name

String

参数名称,由字母、数字、下划线、连线、点组成,以字母开头,最长32字节

header位置的参数名称不区分大小写

value

String

参数值,当参数来源为REQUEST时,值为请求参数名称

in

String

参数位置,支持header、query、path

origin

String

参数映射来源,支持REQUEST、CONSTANT

description

String

参数含义描述

表18 后端httpEndpoints参数说明

名称

是否必选

参数类型

说明

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后端描述

表19 后端httpVpcEndpoints参数说明

名称

是否必选

参数类型

说明

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后端描述

表20 后端functionEndpoints参数说明

名称

是否必选

参数类型

说明

function-urn

String

函数URN地址

version

String

函数版本

invocation-type

String

函数调用类型,支持async、sync

timeout

Integer

函数超时时间,单位毫秒,缺省值为5000,取值范围为1 ~ 60000

description

String

API后端描述

表21 后端mockEndpoints参数说明

名称

是否必选

参数类型

说明

result-content

String

MOCK返回结果

description

String

API后端描述

表22 conditions参数说明

名称

是否必选

参数类型

说明

type

String

策略条件类型,支持equal、enum、pattern

value

String

策略条件值

origin

String

策略条件输入来源,支持source、request

parameter

String

策略条件输入来源为request时,请求入参的名称

表23 x-apigateway-access-controls参数说明

名称

是否必选

参数类型

说明

acl_name

Object

指定名称的访问控制策略,参考表 acl_name参数说明

表24 acl_name参数说明

名称

是否必选

参数类型

说明

acl-type

String

访问控制行为,支持PERMIT、DENY

entity-type

String

访问控制对象,支持IP、DOMAIN

value

String

访问控制策略值,多个值以“,”间隔

表25 x-apigateway-ratelimits参数说明

名称

是否必选

参数类型

说明

throttle_name

Object

指定名称的流控策略,参考表 throttle_name参数说明

表26 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参数说明

表27 special参数说明

名称

是否必选

参数类型

说明

type

String

特殊流控策略类型,支持APP、USER

limit

Integer

访问次数

instance

String

特殊APP或USER的对象标识

响应消息样例:

{
	"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-app-header": {
			"type": "apiKey",
			"name": "Authorization",
			"in": "header",
			"x-apigateway-auth-opt": {
				"appcode-auth-type": "header"
			},
			"x-apigateway-auth-type": "AppSigv1"
		},
		"apig-auth-iam": {
			"type": "apiKey",
			"name": "unused",
			"in": "header",
			"x-apigateway-auth-type": "IAM"
		}
	}
}

响应码

表28 返回消息说明

响应码

说明

200

OK

400

bad request

401

unauthorized

403

forbidden

500

server internal error

分享:

    相关文档

    相关产品