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.
Try it now
Test
RAM authorization
|
Action |
Access level |
Resource type |
Condition key |
Dependent action |
|
apigateway:CreateApi |
create |
*ApiGroup
|
None | 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. |
[ { "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 parameters of the API. |
[{\"location\":\"HEAD\",\"parameterName\":\"CaDomain\",\"serviceParameterName\":\"host\"}] |
| ConstantParameters |
string |
No |
The parameters of API requests sent by API Gateway to the backend service. For more information, see ServiceParameter. |
[{\"ConstantValue\":\"123\",\"Description\":\"Constant parameter\",\"Location\":\"HEAD\",\"ServiceParameterName\":\"test\"}] |
| 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": "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 format of the response from the backend service. Valid values: JSON, TEXT, BINARY, XML, and HTML. Default value: JSON. |
[ { "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 |
An example of a response returned by the backend service. This value is used only to generate documentation. The actually returned result shall prevail.(Support up to 32KB) |
{} |
| FailResultSample |
string |
No |
The sample error codes returned by the backend service. For more information, see ErrorCodeSample.(Support up to 16KB) |
{\"requestId\":\"3b9b8b31-93c3-489e-8ebb-cab35a1aee51\",\"errCode\":500,\"errMsg\":\"connection refused\"} |
| ErrorCodeSamples |
string |
No |
The return description of the API. |
[{\"Code\":\"400\",\"Message\":\"Login failed\",\"Description\":\"Invalid user name or password\"}] |
| 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 elements
|
Element |
Type |
Description |
Example |
|
object |
|||
| ApiId |
string |
The ID of the API. |
8afff6c8c4c6447abb035812e4d66b65 |
| RequestId |
string |
The ID of the request. |
6C87A26A-6A18-4B8E-8099-705278381A2C |
Examples
Success response
JSON format
{
"ApiId": "8afff6c8c4c6447abb035812e4d66b65",
"RequestId": "6C87A26A-6A18-4B8E-8099-705278381A2C"
}
Error codes
See Error Codes for a complete list.
Release notes
See Release Notes for a complete list.