All Products
Search
Document Center

API Gateway:ModifyApi

Last Updated:Mar 30, 2026

Modifies the definition of an API.

Operation description

This operation is intended for API providers.

  • This API operation requires a full update. Updates of partial parameters are not supported.

  • When you modify an API name, make sure that the name of each API within the same group is unique.

  • When you modify the request path, make sure that each request path within the same group is unique.

  • The QPS limit on this operation is 50 per user.

Try it now

Try this API in OpenAPI Explorer, no manual signing needed. Successful calls auto-generate SDK code matching your parameters. Download it with built-in credential security for local usage.

Test

RAM authorization

The table below describes the authorization required to call this API. You can define it in a Resource Access Management (RAM) policy. The table's columns are detailed below:

  • Action: The actions can be used in the Action element of RAM permission policy statements to grant permissions to perform the operation.

  • API: The API that you can call to perform the action.

  • Access level: The predefined level of access granted for each API. Valid values: create, list, get, update, and delete.

  • Resource type: The type of the resource that supports authorization to perform the action. It indicates if the action supports resource-level permission. The specified resource must be compatible with the action. Otherwise, the policy will be ineffective.

    • For APIs with resource-level permissions, required resource types are marked with an asterisk (*). Specify the corresponding Alibaba Cloud Resource Name (ARN) in the Resource element of the policy.

    • For APIs without resource-level permissions, it is shown as All Resources. Use an asterisk (*) in the Resource element of the policy.

  • Condition key: The condition keys defined by the service. The key allows for granular control, applying to either actions alone or actions associated with specific resources. In addition to service-specific condition keys, Alibaba Cloud provides a set of common condition keys applicable across all RAM-supported services.

  • Dependent action: The dependent actions required to run the action. To complete the action, the RAM user or the RAM role must have the permissions to perform all dependent actions.

Action

Access level

Resource type

Condition key

Dependent action

apigateway:ModifyApi

update

*ApiGroup

acs:apigateway:{#regionId}:{#accountId}:apigroup/{#GroupId}

None None

Request parameters

Parameter

Type

Required

Description

Example

GroupId

string

No

The ID of the API group.

927d50c0f2e54b359919923d908bb015

ApiId

string

Yes

The ID of the API.

8afff6c8c4c6447abb035812e4d66b65

ApiName

string

Yes

The name of the API. The name must be unique within the API group. The name must be 4 to 50 characters in length. It must start with a letter and can contain letters, digits, and underscores (_).

ApiName

Description

string

No

The description of the API. The description can be up to 180 characters in length.

Api description

Visibility

string

Yes

Specifies whether the API is public. Valid values:

  • PUBLIC: Make the API public. If you set this parameter to PUBLIC, this API is displayed on the APIs page for all users after the API is published to the production environment.

  • PRIVATE: Make the API private. Private APIs are not displayed in the Alibaba Cloud Marketplace after the API group to which they belong is made available.

PUBLIC

AuthType

string

No

The configuration items of API requests sent by the consumer to API Gateway.

APP

RequestConfig

string

Yes

The configuration items of API requests sent by API Gateway to the backend service.

{"RequestProtocol":"HTTP","RequestHttpMethod":"GET","RequestPath":"/v3/getUserTest/[userId]","BodyFormat":"FORM","PostBodyDescription":""}

ServiceConfig

string

Yes

The parameters of API requests sent by the consumer to API Gateway.

{"ServiceProtocol":"HTTP","ServiceHttpMethod":"GET","ServiceAddress":"http://www.customerdomain.com","ServiceTimeout":"1000","ServicePath":"/v3/getUserTest/[userId]"}

RequestParameters

string

No

The parameters of API requests sent by the consumer to API Gateway.

For more information, see RequestParameter.

[ { "ParameterLocation": { "name": "Head", "orderNumber": 2 }, "ParameterType": "String", "Required": "OPTIONAL", "isHide": false, "ApiParameterName": "header1", "DefaultValue": "123124", "Location": "Head" }, { "ParameterLocation": { "name": "Head", "orderNumber": 2 }, "ParameterType": "String", "Required": "REQUIRED", "isHide": false, "ApiParameterName": "header2", "DefaultValue": "", "Location": "Head" }, { "ParameterLocation": { "name": "Query", "orderNumber": 3 }, "ParameterType": "String", "Required": "OPTIONAL", "isHide": false, "ApiParameterName": "query1", "DefaultValue": "1245", "Location": "Query" }, { "ApiParameterName": "CaClientIp", "ParameterLocation": { "name": "Query", "orderNumber": 0 }, "Location": "Query", "ParameterType": "String", "Required": "REQUIRED", "Description": "ClientIP" }, { "ApiParameterName": "testConstant", "ParameterLocation": { "name": "Head", "orderNumber": 0 }, "Location": "Head", "ParameterType": "String", "Required": "REQUIRED", "DefaultValue": "111" } ]

SystemParameters

string

No

The system parameters sent by API Gateway to the backend service.

[{\"location\":\"HEAD\",\"parameterName\":\"CaDomain\",\"serviceParameterName\":\"host\"}]

ConstantParameters

string

No

The constant parameters sent by API Gateway to the backend service.

[{\"ConstantValue\":\"123\",\"Description\":\"Constant parameter\",\"Location\":\"HEAD\",\"ServiceParameterName\":\"test\"}]

ServiceParameters

string

No

The parameters of API requests sent by API Gateway to the back-end service.

For more information, see ServiceParameter.

[ { "ServiceParameterName": "header1", "Location": "Head", "Type": "String", "ParameterCatalog": "REQUEST" }, { "ServiceParameterName": "header2", "Location": "Query", "Type": "String", "ParameterCatalog": "REQUEST" }, { "ServiceParameterName": "query1", "Location": "Head", "Type": "String", "ParameterCatalog": "REQUEST" }, { "ServiceParameterName": "ipp", "Location": "Query", "Type": "String", "ParameterCatalog": "SYSTEM" }, { "ServiceParameterName": "testConstant", "Location": "Head", "Type": "String", "ParameterCatalog": "CONSTANT" } ]

ServiceParametersMap

string

No

The mappings between parameters of requests sent by the consumer to API Gateway and parameters of requests sent by API Gateway to the back-end service.

For more information, see ServiceParameterMap.

[ { "ServiceParameterName": "header1", "RequestParameterName": "header1" }, { "ServiceParameterName": "header2", "RequestParameterName": "header2" }, { "ServiceParameterName": "query1", "RequestParameterName": "query1" }, { "ServiceParameterName": "ipp", "RequestParameterName": "CaClientIp" }, { "ServiceParameterName": "testConstant", "RequestParameterName": "testConstant" } ]

ResultType

string

No

The sample response from the backend service.

HTML

ResultSample

string

No

The sample response that is returned from the backend service. This value is used only to generate documents. It does not affect the actually returned result.

{}

FailResultSample

string

No

The sample error response from the backend service. This value is used only to generate documents. It does not affect the returned result.

{\"requestId\":\"3b9b8b31-93c3-489e-8ebb-cab35a1aee51\",\"errCode\":500,\"errMsg\":\"connection refused\"}

ErrorCodeSamples

string

No

The sample error codes returned by the backend service.

For more information, see ErrorCodeSample.

[{\"Code\":\"400\",\"Message\":\"Login failed\",\"Description\":\"Invalid user name or password\"}]

ResultDescriptions

string

No

The descriptions of API responses.

{}

OpenIdConnectConfig

string

No

The client-side request signature method of the API. Valid values:

  • HmacSHA256

  • HmacSHA1,HmacSHA256

{\"OpenIdApiType\":\"IDTOKEN\",\"PublicKey\":\"lzlj1573\",\"IdTokenParamName\":\"\",\"PublicKeyId\":\"lzljorders\"}

AllowSignatureMethod

string

No

The type of the two-way communication API. Valid values:

  • COMMON: general APIs

  • REGISTER: registered APIs

  • UNREGISTER: unregistered APIs

  • NOTIFY: downstream notification

HmacSHA256

WebSocketApiType

string

No

The returned description of the API.

COMMON

ResultBodyModel

string

No

  • Specifies whether to set ForceNonceCheck to true to force the check of X-Ca-Nonce during the request. This is the unique identifier of the request and is generally identified by UUID. After receiving this parameter, API Gateway verifies the validity of this parameter. The same value can be used only once within 15 minutes. This helps prevent replay attacks.

  • If you set ForceNonceCheck to false, the check is not performed. If you do not set this parameter, the original value is used.

{}

ForceNonceCheck

boolean

No

  • Specifies whether to set DisableInternet to true to limit API calls to within the VPC.

  • If you set DisableInternet to false, the limit if lifted.

Note

If you do not set this parameter, the original value is used.

true

DisableInternet

boolean

No

The AppCode authentication type supported. Valid values:

  • DEFAULT: supported after being made available in Alibaba Cloud Marketplace

  • DISABLE: not supported

  • HEADER : supported only in the Header parameter

  • HEADER_QUERY: supported in the Header or Query parameter

true

AppCodeAuthType

string

No

The ID of the backend service.

DEFAULT

BackendId

string

No

Specifies whether to enable backend services.

0d105f80a8f340408bd34954d4e4ff22

BackendEnable

boolean

No

Configuration Mode

true

Response elements

Element

Type

Description

Example

object

RequestId

string

The ID of the request.

6C87A26A-6A18-4B8E-8099-705278381A2C

Examples

Success response

JSON format

{
  "RequestId": "6C87A26A-6A18-4B8E-8099-705278381A2C"
}

Error codes

See Error Codes for a complete list.

Release notes

See Release Notes for a complete list.