更新时间:2023-06-29 GMT+08:00

批量发布或下线API

功能介绍

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

注意:当action = online时,接口返回的响应中publish_id,version_id, publish_time字段才有含义。

URI

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

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

项目ID,获取方式请参见API参考的“附录 > 获取项目ID”章节。

instance_id

String

实例ID

表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列表

env_id

String

环境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

错误描述

状态码: 404

表11 响应Body参数

参数

参数类型

描述

error_code

String

错误码

error_msg

String

错误描述

状态码: 500

表12 响应Body参数

参数

参数类型

描述

error_code

String

错误码

error_msg

String

错误描述

请求示例

根据列表批量发布API到指定环境上

{
  "apis" : [ "3a955b791bd24b1c9cd94c745f8d1aad", "abd9c4b2ff974888b0ba79be7e6b2762" ],
  "env_id" : "DEFAULT_ENVIRONMENT_RELEASE_ID",
  "remark" : "Publish 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" : "Publish 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"
}

状态码: 404

Not Found

{
  "error_code" : "APIG.3030",
  "error_msg" : "The instance does not exist;id:f0fa1789-3b76-433b-a787-9892951c620ec"
}

状态码: 500

Internal Server Error

{
  "error_code" : "APIG.9999",
  "error_msg" : "System error"
}

状态码

状态码

描述

200

OK

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Internal Server Error

错误码

请参见错误码