Updated on 2023-06-29 GMT+08:00

Switching API Versions

Function

This API is used to switch the version of an API. A version is generated based on the current definition of an API when the API is published. The version records the definition and status of the API when it is published.

You can switch between multiple versions of an API, but only one version of an API takes effect in the same environment.

URI

PUT /v2/{project_id}/apic/instances/{instance_id}/apis/publish/{api_id}

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.

api_id

Yes

String

API ID.

Request Parameters

Table 2 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 3 Request body parameters

Parameter

Mandatory

Type

Description

version_id

Yes

String

API version ID.

Response Parameters

Status code: 200

Table 4 Response body parameters

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.

Status code: 400

Table 5 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error description.

Status code: 401

Table 6 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error description.

Status code: 403

Table 7 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error description.

Status code: 404

Table 8 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error description.

Status code: 500

Table 9 Response body parameters

Parameter

Type

Description

error_code

String

Error code.

error_msg

String

Error description.

Example Requests

{
  "version_id" : "ee1a5a38d3d3493abf1dc4ed6cacfa0b"
}

Example Responses

Status code: 200

OK

{
  "publish_id" : "9191cdb430724d4b8586ed7f1b962ca2",
  "api_id" : "5f918d104dc84480a75166ba99efff21",
  "env_id" : "DEFAULT_ENVIRONMENT_RELEASE_ID",
  "version_id" : "ee1a5a38d3d3493abf1dc4ed6cacfa0b",
  "publish_time" : "2020-08-03T03:27:49.483295655Z",
  "remark" : ""
}

Status code: 400

Bad Request

{
  "error_code" : "APIG.2000",
  "error_msg" : "Parameter error: Serialization error: unexpected end of JSON input"
}

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.3022",
  "error_msg" : "The API version does not exist,id:ee1a5a38d3d3493abf1dc4ed6cacfa0b"
}

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.