调用ImportSwagger可以通过导入符合阿里云swagger规范的文本内容创建API。

  • 阿里云目前支持基于Swagger 2.0的扩展
  • 只支持json/yaml格式的Swagger配置文件

调试

您可以在OpenAPI Explorer中直接运行该接口,免去您计算签名的困扰。运行成功后,OpenAPI Explorer可以自动生成SDK代码示例。

请求参数

名称 类型 是否必选 示例值 描述
Action String ImportSwagger

系统规定参数。取值:ImportSwagger

Data String "A Swagger API definition in YAML"

Swagger文本内容。

DataFormat String yaml

Swagger文本格式:

  • json
  • yaml
GroupId String 0009db9c828549768a200320714b8930

Swagger将被导入的分组编号

Overwrite Boolean true

是否覆盖现有API。

覆盖检测条件为:API的HTTP请求类型+后端请求路径相同。

DryRun Boolean true

预检验

返回数据

名称 类型 示例值 描述
Failed Array of ApiImportSwaggerFailed

本次所有通过swagger导入失败的API信息

ApiImportSwaggerFailed
ErrorMsg String api already exists : apiUid ===> 8e274ec61cf6468e83b68371956831cb

创建API时返回的错误信息

HttpMethod String post

创建API时配置的http方法

Path String /http/get/mapping

创建API时配置的请求路径

RequestId String 647CEF05-404C-4125-B3D7-44792EB77392

本次请求ID

Success Array of ApiImportSwaggerSuccess

本次所有通过swagger导入成功的API信息

ApiImportSwaggerSuccess
ApiOperation String CREATE

该API是创建(CREATE)或修改(MODIFY)

ApiUid String 8e274ec61cf6468e83b68371956831cb

导入成功的API的UID

HttpMethod String get

创建API时配置的http方法

Path String /http/get/mapping

创建API时配置的请求路径

示例

请求示例

POST /?Action=ImportSwagger
&GroupId=0009db9c828549768a200320714b8930
&Overwrite=true
&DataFormat=yaml
&Data="A Swagger API definition in YAML"
&<公共请求参数>

正常返回示例

XML格式

<ImportSwaggerResponse>
      <RequestId>647CEF05-404C-4125-B3D7-44792EB77392</RequestId>
      <Failed>
            <ApiImportSwaggerFailed>
                  <ErrorMsg>api already exists : apiUid ===&gt; 8e274ec61cf6468e83b68371956831cb</ErrorMsg>
                  <HttpMethod>post</HttpMethod>
                  <Path>/http/get/mapping</Path>
            </ApiImportSwaggerFailed>
      </Failed>
      <Success>
            <ApiImportSwaggerSuccess>
                  <ApiOperation>CREATE</ApiOperation>
                  <ApiUid>8e274ec61cf6468e83b68371956831cb</ApiUid>
                  <HttpMethod>get</HttpMethod>
                  <Path>/http/get/mapping</Path>
            </ApiImportSwaggerSuccess>
      </Success>
</ImportSwaggerResponse>

JSON格式

{
  "RequestId": "647CEF05-404C-4125-B3D7-44792EB77392",
  "Failed": {
    "ApiImportSwaggerFailed": [
      {
        "ErrorMsg": "api already exists : apiUid ===> 8e274ec61cf6468e83b68371956831cb",
        "HttpMethod": "post",
        "Path": "/http/get/mapping"
      }
    ]
  },
  "Success": {
    "ApiImportSwaggerSuccess": [
      {
        "ApiOperation": "CREATE",
        "ApiUid": "8e274ec61cf6468e83b68371956831cb",
        "HttpMethod": "get",
        "Path": "/http/get/mapping"
      }
    ]
  }
}

错误码

访问错误中心查看更多错误码。