Creates an API.
Operation description
- This operation is intended for API providers.
- The name of an API must be unique within an API group.
- A request path must be unique within an API group.
- The QPS limit on this operation is 50 per user.
Debugging
Authorization information
The following table shows the authorization information corresponding to the API. The authorization information can be used in the Action
policy element to grant a RAM user or RAM role the permissions to call this API operation. Description:
- Operation: the value that you can use in the Action element to specify the operation on a resource.
- Access level: the access level of each operation. The levels are read, write, and list.
- Resource type: the type of the resource on which you can authorize the RAM user or the RAM role to perform the operation. Take note of the following items:
- For mandatory resource types, indicate with a prefix of * .
- If the permissions cannot be granted at the resource level,
All Resources
is used in the Resource type column of the operation.
- Condition Key: the condition key that is defined by the cloud service.
- Associated operation: other operations that the RAM user or the RAM role must have permissions to perform to complete the operation. To complete the operation, the RAM user or the RAM role must have the permissions to perform the associated operations.
Operation | Access level | Resource type | Condition key | Associated operation |
---|---|---|---|---|
apigateway:CreateApi | create | *ApiGroup acs:apigateway:{#regionId}:{#accountId}:apigroup/{#GroupId} |
| none |
Request parameters
Parameter | Type | Required | Description | Example |
---|---|---|---|---|
GroupId | string | Yes | The ID of the API group. | 08ae4aa0f95e4321849ee57f4e0b3077 |
ApiName | string | Yes | The name of the API that you want to create. 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 |
Visibility | string | Yes | Specifies whether to make the API public. Valid values:
| PUBLIC |
Description | string | No | The description of the API. The description can be up to 180 characters in length. | Api description |
AuthType | string | No | The configuration items of API requests sent by the consumer to API Gateway. For more information, see RequestConfig . | APP |
RequestConfig | string | Yes | The configuration items of API requests sent by API Gateway to the backend service. For more information, see ServiceConfig . | {"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. For more information, see RequestParameter . | {"ServiceProtocol":"HTTP","ServiceHttpMethod":"GET","ServiceAddress":"http://www.customerdomain.com","ServiceTimeout":"1000","ServicePath":"/v3/getUserTest/[userId]"} |
RequestParameters | string | No | The common parameters of APIs in JSON format. | \[{\\"demoValue\\":\\"12345678\\",\\"description\\":\\"ConsumerAppKey\\",\\"location\\":\\"HEAD\\",\\"parameterName\\":\\"CaAppKey\\",\\"serviceParameterName\\":\\"X-Ca-Key\\"}] |
SystemParameters | string | No | The parameters of the API. | [{\"demoValue\":\"12345678\",\"description\":\"ConsumerAppKey\",\"location\":\"HEAD\",\"parameterName\":\"CaAppKey\",\"serviceParameterName\":\"X-Ca-Key\"}] |
ConstantParameters | string | No | The parameters of API requests sent by API Gateway to the backend service. For more information, see ServiceParameter . | \[{"ServiceParameterName":"age","Location":"Head","Type":"Number","ParameterCatalog":"REQUEST"},{"ServiceParameterName":"sex","Location":"Query","Type":"String","ParameterCatalog":"REQUEST"},{"ServiceParameterName":"userId","Location":"Path","Type":"Number","ParameterCatalog":"REQUEST"},{"ServiceParameterName":"clientIp","Location":"Head","Type":"String","ParameterCatalog":"SYSTEM"},{"ServiceParameterName":"constance","Location":"Head","Type":"String","ParameterCatalog":"CONSTANT"}] |
ServiceParameters | 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 backend service. For more information, see ServiceParameterMap . | [{"ServiceParameterName":"age","Location":"Head","Type":"Number","ParameterCatalog":"REQUEST"},{"ServiceParameterName":"sex","Location":"Query","Type":"String","ParameterCatalog":"REQUEST"},{"ServiceParameterName":"userId","Location":"Path","Type":"Number","ParameterCatalog":"REQUEST"},{"ServiceParameterName":"clientIp","Location":"Head","Type":"String","ParameterCatalog":"SYSTEM"},{"ServiceParameterName":"constance","Location":"Head","Type":"String","ParameterCatalog":"CONSTANT"}] |
ServiceParametersMap | string | No | The format of the response from the backend service. Valid values: JSON, TEXT, BINARY, XML, and HTML. Default value: JSON. | [{"ServiceParameterName":"age","RequestParameterName":"age"},{"ServiceParameterName":"sex","RequestParameterName":"sex"},{"ServiceParameterName":"userId","RequestParameterName":"userId"},{"ServiceParameterName":"clientIp","RequestParameterName":"CaClientIp"},{"ServiceParameterName":"constance","RequestParameterName":"constance"}] |
ResultType | string | No | The sample response from the backend service. | HTML |
ResultSample | string | No | An example of a response returned by the backend service. This value is used only to generate documentation. The actually returned result shall prevail. | 200 |
FailResultSample | string | No | The sample error codes returned by the backend service. For more information, see ErrorCodeSample . | {"errorCode":"fail","errorMessage":"param invalid"} |
ErrorCodeSamples | string | No | The return description of the API. | \[] |
ResultDescriptions | string | No | The switch status of ACL. Valid values:- on and off. | [] |
OpenIdConnectConfig | string | No | If the AuthType is APP authentication, you need to pass this value to specify the signature algorithm. If you do not specify this parameter, the default value HmacSHA256 is used. Valid values:
| {\"openIdApiType\":null,\"idTokenParamName\":null,\"publicKeyId\":null,\"publicKey\":null} |
AllowSignatureMethod | string | No | The type of the two-way communication API.
| HmacSHA256 |
WebSocketApiType | string | No | The return description of the API. | COMMON |
ResultBodyModel | string | No |
| {} |
ForceNonceCheck | boolean | No |
| true |
DisableInternet | boolean | No | If AuthType is set to APP, the valid values are:
| true |
AppCodeAuthType | string | No | The IDof the backend service | HEADER |
BackendId | string | No | Specifies whether to enable backend services. | a0305308908c4740aba9cbfd63ba99b7 |
BackendEnable | boolean | No | Specifies whether to enable backend services. | true |
Tag | array<object> | No | The list of tags. | |
object | No | |||
Key | string | No | The key of the tag. | env |
Value | string | No | The value of the tag. | value |
Response parameters
Examples
Sample success responses
JSON
format
{
"ApiId": "8afff6c8c4c6447abb035812e4d66b65",
"RequestId": "6C87A26A-6A18-4B8E-8099-705278381A2C"
}
Error codes
For a list of error codes, visit the Service error codes.
Change history
Change time | Summary of changes | Operation |
---|---|---|
2023-12-07 | The request parameters of the API has changed | View Change Details |
2023-05-30 | The internal configuration of the API is changed, but the call is not affected | View Change Details |