Help Center> ROMA Connect> API Reference> Service Integration APIs> API Management> Publishing APIs or Taking APIs Offline in Batches
Updated on 2023-06-29 GMT+08:00

Publishing APIs or Taking APIs Offline in Batches

Function

This API is used to publish multiple APIs in an environment or to remove multiple APIs from the environment in which they have been published.

Note: The publish_id, version_id, and publish_time fields in the API are valid only when action is set to online.

URI

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

Table 1 Path Parameters

Parameter

Mandatory

Type

Description

project_id

Yes

String

Project ID. For details about how to obtain the project ID, see Appendix > Obtaining a Project ID in the ROMA Connect API Reference.

instance_id

Yes

String

Instance ID.

Table 2 Query Parameters

Parameter

Mandatory

Type

Description

action

Yes

String

  • online: publishing the APIs

  • offline: taking the APIs offline

Request Parameters

Table 3 Request header parameters

Parameter

Mandatory

Type

Description

X-Auth-Token

Yes

String

User token, which can be obtained by calling the IAM API (value of X-Subject-Token in the response header).

Table 4 Request body parameters

Parameter

Mandatory

Type

Description

apis

No

Array of strings

IDs of the APIs to be published or taken offline.

env_id

Yes

String

Environment ID.

remark

No

String

Description of the publication.

Ensure that the length does not exceed 255 characters.

Response Parameters

Status code: 200

Table 5 Response body parameters

Parameter

Type

Description

success

Array of PublishResp objects

Message for successful API publication or taking offline.

failure

Array of BatchFailure objects

Error message and APIs that fail to be published or taken offline.

Table 6 PublishResp

Parameter

Type

Description

publish_id

String

Publication record ID.

api_id

String

API ID.

api_name

String

API name.

env_id

String

ID of the environment in which the API has been published.

remark

String

Description about the publication.

publish_time

String

Time when the API is published.

version_id

String

API version currently in use.

Table 7 BatchFailure

Parameter

Type

Description

api_id

String

ID of an API that fails to be deleted.

api_name

String

Name of the API that fails to be operated.

error_code

String

Error code.

error_msg

String

Error information generated after an operation fails.

Status code: 400

Table 8 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error description.

Status code: 401

Table 9 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error description.

Status code: 403

Table 10 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error description.

Status code: 404

Table 11 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error description.

Status code: 500

Table 12 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error description.

Example Requests

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

Example Responses

Status code: 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"
  } ]
}

Status code: 400

Bad Request

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

Status code: 401

Unauthorized

{
  "error_code" : "APIG.1002",
  "error_msg" : "Incorrect token or token resolution failed"
}

Status code: 403

Forbidden

{
  "error_code" : "APIG.1005",
  "error_msg" : "No permissions to request this method"
}

Status code: 404

Not Found

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

Status code: 500

Internal Server Error

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

Status Codes

Status Code

Description

200

OK

400

Bad Request

401

Unauthorized

403

Forbidden

404

Not Found

500

Internal Server Error

Error Codes

See Error Codes.