更新时间:2023-12-13 GMT+08:00

批量发布或下线API

功能介绍

将多个API发布到一个指定的环境,或将多个API从指定的环境下线。

调用方法

请参见如何调用API

URI

POST /v2/{project_id}/apigw/instances/{instance_id}/apis/publish

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

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

instance_id

String

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

表2 Query参数

参数

是否必选

参数类型

描述

action

String

  • online:发布

  • offline:下线

请求参数

表3 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

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

表4 请求Body参数

参数

是否必选

参数类型

描述

apis

Array of strings

需要发布或下线的API ID列表,单次更新上限为1000个API。必须指定apis或group_id。

env_id

String

环境ID

group_id

String

API分组ID。必须指定apis或group_id。

remark

String

对本次发布的描述信息

字符长度不超过255

说明:

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

响应参数

状态码: 200

表5 响应Body参数

参数

参数类型

描述

success

Array of PublishResp objects

发布或下线成功的信息

failure

Array of BatchFailure objects

发布或下线失败的API及错误信息

表6 PublishResp

参数

参数类型

描述

publish_id

String

发布记录的ID

api_id

String

API编号

api_name

String

API名称

env_id

String

发布的环境编号

remark

String

发布描述

publish_time

String

发布时间

version_id

String

在线的版本号

表7 BatchFailure

参数

参数类型

描述

api_id

String

发布或下线失败的API ID

api_name

String

发布或下线失败的APi名称

error_code

String

发布或下线失败的错误码

error_msg

String

发布或下线失败的错误信息

状态码: 400

表8 响应Body参数

参数

参数类型

描述

error_code

String

错误码

error_msg

String

错误描述

状态码: 401

表9 响应Body参数

参数

参数类型

描述

error_code

String

错误码

error_msg

String

错误描述

状态码: 403

表10 响应Body参数

参数

参数类型

描述

error_code

String

错误码

error_msg

String

错误描述

状态码: 500

表11 响应Body参数

参数

参数类型

描述

error_code

String

错误码

error_msg

String

错误描述

请求示例

批量发布API

{
  "apis" : [ "3a955b791bd24b1c9cd94c745f8d1aad", "abd9c4b2ff974888b0ba79be7e6b2762" ],
  "env_id" : "DEFAULT_ENVIRONMENT_RELEASE_ID",
  "group_id" : "c77f5e81d9cb4424bf704ef2b0ac7600",
  "remark" : "Published to the production environment"
}

响应示例

状态码: 200

OK

{
  "success" : [ {
    "publish_id" : "9f27d1dc4f4242a9abf88e563dbfc33d",
    "api_id" : "3a955b791bd24b1c9cd94c745f8d1aad",
    "api_name" : "Api_mock",
    "env_id" : "DEFAULT_ENVIRONMENT_RELEASE_ID",
    "version_id" : "632b2c9e022941969af9a1d45735ae2c",
    "remark" : "Published to the production environment",
    "publish_time" : "2020-08-03T03:01:31.26522821Z"
  } ],
  "failure" : [ {
    "api_id" : "abd9c4b2ff974888b0ba79be7e6b2762",
    "error_code" : "APIG.3002",
    "error_msg" : "Api abd9c4b2ff974888b0ba79be7e6b2762 not found"
  } ]
}

状态码: 400

Bad Request

{
  "error_code" : "APIG.2011",
  "error_msg" : "Invalid parameter value: parameter action should be \\\"online\\\" or \\\"offline\\\""
}

状态码: 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"
}

状态码

状态码

描述

200

OK

400

Bad Request

401

Unauthorized

403

Forbidden

500

Internal Server Error

错误码

请参见错误码