Querying APIs¶
Function¶
This API is used to query APIs to return their details and publication information. Backend and request parameter information of the APIs will not be returned.
Calling Method¶
For details, see Calling APIs.
URI¶
GET /v2/{project_id}/apigw/instances/{instance_id}/apis
Parameter | Mandatory | Type | Description |
---|---|---|---|
project_id | Yes | String | Project ID. For details about how to obtain it, see Obtaining a Project ID. |
instance_id | Yes | String | Gateway ID, which can be obtained from the gateway information on the APIG console. |
Parameter | Mandatory | Type | Description |
---|---|---|---|
offset | No | Long | Offset from which the query starts. If the value is less than 0, it is automatically converted to 0. Default: 0 |
limit | No | Integer | Number of items displayed on each page. A value less than or equal to 0 will be automatically converted to 20, and a value greater than 500 will be automatically converted to 500. Minimum: 1 Maximum: 500 Default: 20 |
id | No | String | API ID. |
name | No | String | API name. |
group_id | No | String | API group ID. |
req_protocol | No | String | Request protocol. |
req_method | No | String | Request method. |
req_uri | No | String | Request path. |
auth_type | No | String | Security authentication mode. |
env_id | No | String | ID of the environment in which the API has been published. |
type | No | Integer | API type. |
precise_search | No | String | Parameter name (name or req_uri) for exact matching. |
vpc_channel_name | No | String | Load balance channel name. |
return_data_mode | No | String | Additional information to be included in the returned API details. Separate multiple parameters with commas (,). "brief" does not take effect when used with any "include" parameters. Currently, only brief, include_group, and include_group_backend are supported. brief: default, indicating that no additional information will be included. include_group: The return result will include api_group_info. include_group_backend: The return result will include backend_api. Default: brief |
Request Parameters¶
Parameter | Mandatory | Type | Description |
---|---|---|---|
X-Auth-Token | Yes | String | User token. It can be obtained by calling the IAM API used to obtain a user token. The value of X-Subject-Token in the response header is a token. |
Response Parameters¶
Status code: 200
Parameter | Type | Description |
---|---|---|
size | Integer | Length of the returned resource list. |
total | Long | Number of resources that match the query conditions. |
apis | Array of ApiInfoPerPage objects | API list. |
Parameter | Type | Description |
---|---|---|
name | String | API name. It can contain 3 to 255 characters, starting with a letter or digit. Only letters, digits, and these special characters are allowed: -_./:() |
type | Integer | API type.
Enumeration values:
|
version | String | API version. Maximum: 16 |
req_protocol | String | API request protocol:
Default: HTTPS Enumeration values:
|
req_method | String | API request method. If the request protocol is set to GRPC, the request method is fixed to POST. Enumeration values:
|
req_uri | String | Request address, which can contain request parameters enclosed with braces ({}). For example, /getUserInfo/{userId}. Special characters, such as asterisks ( Note The address must comply with the URI specifications. |
auth_type | String | API authentication mode. Options:
Custom authentication is unavailable if the request protocol is set to GRPC. Enumeration values:
|
auth_opt | AuthOpt object | Security authentication parameter. |
cors | Boolean | Indicates whether CORS is supported.
Default: false Enumeration values:
|
match_mode | String | API matching mode:
Enumeration values:
|
backend_type | String | Backend type. Options:
Enumeration values:
|
remark | String | API description. It cannot exceed 255 characters. |
group_id | String | ID of the API group to which the API belongs. |
body_remark | String | API request body, which can be an example request body, media type, or parameters. Ensure that the request body does not exceed 20,480 characters. |
result_normal_sample | String | Example response for a successful request. Ensure that the response does not exceed 20,480 characters. This is unavailable if the request protocol is set to GRPC. |
result_failure_sample | String | Example response for a failed request. Ensure that the response does not exceed 20,480 characters. This is unavailable if the request protocol is set to GRPC. |
authorizer_id | String | Custom authorizer ID. This is unavailable if the request protocol is set to GRPC. |
tags | Array of strings | Tag. Use letters, digits, and special characters By default, 10 tags are supported. To increase the quota, contact technical support to modify the API_TAG_NUM_LIMIT configuration. Minimum: 1 Maximum: 128 |
response_id | String | Group response ID. |
roma_app_id | String | Integration application ID. Currently, this parameter is not supported. |
domain_name | String | Custom domain name bound to the API. Currently, this parameter is not supported. |
tag | String | Tag. This field will be deprecated. You can use the tags field instead. |
content_type | String | Request content type:
Coming soon. Enumeration values:
|
id | String | API ID. |
status | Integer | App status.
|
arrange_necessary | Integer | Indicates whether to enable orchestration. |
register_time | String | Time when the API is registered. |
update_time | String | Time when the API was last modified. |
group_name | String | Name of the API group to which the API belongs. |
group_version | String | Version of the API group to which the API belongs. The default value is V1. Other versions are not supported. Default: V1 |
run_env_id | String | ID of the environment in which the API has been published. Separate multiple environment IDs with vertical bars (|). |
run_env_name | String | Name of the environment in which the API has been published. Separate multiple environment names with vertical bars (|). |
publish_id | String | Publication record ID. Separate multiple publication record IDs with vertical bars (|). |
publish_time | String | Publication time. Separate the time of multiple publication records with vertical bars (|). |
roma_app_name | String | Name of the integration application to which the API belongs. Currently, this parameter is not supported. |
ld_api_id | String | ID of the corresponding custom backend API. Currently, this parameter is not supported. |
backend_api | BackendApi object | Backend information. |
api_group_info | ApiGroupCommonInfo object | API group information. |
req_params | Array of ReqParam objects | Request parameters. |
Parameter | Type | Description |
---|---|---|
app_code_auth_type | String | Indicates whether AppCode authentication is enabled. This parameter is valid only if auth_type is set to App. The default value is DISABLE.
Default: DISABLE Enumeration values:
|
Parameter | Type | Description |
---|---|---|
authorizer_id | String | Custom authorizer ID. This is unavailable if the request protocol is set to GRPC. |
url_domain | String | Backend service address. A backend service address consists of a domain name or IP address and a port number, with not more than 255 characters. It must be in the format "Host name:Port number", for example, apig.example.com:7443. If the port number is not specified, the default HTTPS port 443 or the default HTTP port 80 is used. Environment variables are supported. Each must start with a letter and can consist of 3 to 32 characters. Only letters, digits, hyphens (-), and underscores (_) are allowed. |
req_protocol | String | Request protocol. You can select GRPCS for the GRPC backend. Enumeration values:
|
remark | String | Description. It cannot exceed 255 characters. |
req_method | String | Request method. For the GRPC backend, the request method is fixed to POST. Enumeration values:
|
version | String | Web backend version, which can contain a maximum of 16 characters. |
req_uri | String | Request address, which can contain request parameters enclosed with braces ({}). For example, /getUserInfo/{userId}. Special characters, such as asterisks ( Environment variables are supported. Each must start with a letter and can consist of 3 to 32 characters. Only letters, digits, hyphens (-), and underscores (_) are allowed. Note The address must comply with the URI specifications. For the GRPC backend, the request address is fixed to /. |
timeout | Integer | Timeout allowed for APIG to request the backend service. You can set the maximum timeout using the backend_timeout configuration item. The maximum value is 600,000. Unit: ms. Minimum: 1 |
enable_client_ssl | Boolean | Indicates whether to enable two-way authentication. |
retry_count | String | Number of retry attempts to request the backend service. The default value is -1. The value ranges from -1 to 10. -1 indicates that idempotent APIs will retry once and non-idempotent APIs will not retry. POST and PATCH are non-idempotent. GET, HEAD, PUT, OPTIONS, and DELETE are idempotent. Default: -1 |
id | String | ID. |
status | Integer | Backend service status.
|
register_time | String | Registration time. |
update_time | String | Update time. |
vpc_channel_info | VpcInfo object | VPC channel details. This parameter is required if vpc_channel_status is set to 1. |
vpc_channel_status | Integer | Indicates whether to use a VPC channel.
|
Parameter | Type | Description |
---|---|---|
ecs_id | String | Cloud server ID. |
ecs_name | String | Cloud server name. |
cascade_flag | Boolean | Indicates whether to use the cascading mode. Currently, this parameter is not supported. |
vpc_channel_proxy_host | String | Proxy host. |
vpc_channel_id | String | VPC channel ID. |
vpc_channel_port | Integer | VPC channel port. |
Parameter | Type | Description |
---|---|---|
id | String | ID. |
name | String | API group name. |
status | Integer | Status.
Enumeration values:
|
sl_domain | String | Subdomain name that APIG automatically allocates to the API group. |
register_time | String | Creation time. |
update_time | String | Last modification time. |
on_sell_status | Integer | Indicates whether the API group has been listed on KooGallery.
Not supported currently. |
url_domains | Array of UrlDomain objects | Independent domain names bound to the API group. |
sl_domain_access_enabled | Boolean | Whether the debugging domain name is accessible. Options: true and false. Default: true |
Parameter | Type | Description |
---|---|---|
id | String | Domain ID. |
domain | String | Domain name. |
cname_status | Integer | CNAME resolution status of the domain name.
|
ssl_id | String | SSL certificate ID. |
ssl_name | String | SSL certificate name. |
min_ssl_version | String | Minimum SSL version. TLS 1.1 and TLS 1.2 are supported. Default: TLSv1.1 Enumeration values:
|
verified_client_certificate_enabled | Boolean | Whether to enable client certificate verification. This parameter is available only when a certificate is bound. It is enabled by default if trusted_root_ca exists, and disabled if trusted_root_ca does not exist. Default: false |
is_has_trusted_root_ca | Boolean | Whether a trusted root certificate (CA) exists. The value is true if trusted_root_ca exists in the bound certificate. Default: false |
Parameter | Type | Description |
---|---|---|
name | String | Parameter name. The parameter name can contain 1 to 32 characters and must start with a letter. Only letters, digits, hyphens (-), underscores (_), and periods (.) are allowed. |
type | String | Parameter type. Enumeration values:
|
location | String | Parameter location. Enumeration values:
|
default_value | String | Default value. |
sample_value | String | Example value. |
required | Integer | Indicates whether the parameter is required. 1: yes 2: no The value of this parameter is 1 if Location is set to PATH, and 2 if Location is set to another value. Enumeration values:
|
valid_enable | Integer | Indicates whether validity check is enabled.
Default: 2 Enumeration values:
|
remark | String | Description. It cannot exceed 255 characters. |
enumerations | String | Enumerated value. |
min_num | Integer | Minimum value. This parameter is valid when type is set to NUMBER. |
max_num | Integer | Maximum value. This parameter is valid when type is set to NUMBER. |
min_size | Integer | Minimum length. This parameter is valid when type is set to STRING. |
max_size | Integer | Maximum length. This parameter is valid when type is set to STRING. |
regular | String | Regular expression validation rule. Currently, this parameter is not supported. |
json_schema | String | JSON validation rule. Currently, this parameter is not supported. |
pass_through | Integer | Indicates whether to transparently transfer the parameter. 1: yes 2: no Enumeration values:
|
id | String | Parameter ID. |
Status code: 400
Parameter | Type | Description |
---|---|---|
error_code | String | Error code. |
error_msg | String | Error message. |
Status code: 401
Parameter | Type | Description |
---|---|---|
error_code | String | Error code. |
error_msg | String | Error message. |
Status code: 403
Parameter | Type | Description |
---|---|---|
error_code | String | Error code. |
error_msg | String | Error message. |
Status code: 500
Parameter | Type | Description |
---|---|---|
error_code | String | Error code. |
error_msg | String | Error message. |
Example Requests¶
None
Example Responses¶
Status code: 200
OK
{
"total" : 3,
"size" : 3,
"apis" : [ {
"arrange_necessary" : 2,
"id" : "5f918d104dc84480a75166ba99efff21",
"tags" : [ "webApi" ],
"backend_type" : "HTTP",
"auth_type" : "AUTHORIZER",
"auth_opt" : {
"app_code_auth_type" : "DISABLE"
},
"authorizer_id" : "8d0443832a194eaa84244e0c1c1912ac",
"cors" : false,
"status" : 1,
"group_name" : "api_group_001",
"group_id" : "c77f5e81d9cb4424bf704ef2b0ac7600",
"group_version" : "V1",
"match_mode" : "NORMAL",
"name" : "Api_http",
"req_protocol" : "HTTPS",
"req_method" : "GET",
"req_uri" : "/test/http",
"type" : 1,
"version" : "V0.0.1",
"register_time" : "2020-07-31T12:42:51Z",
"update_time" : "2020-08-02T16:32:47.046289Z",
"remark" : "Web backend API"
}, {
"id" : "3a955b791bd24b1c9cd94c745f8d1aad",
"group_id" : "c77f5e81d9cb4424bf704ef2b0ac7600",
"group_name" : "api_group_001",
"group_version" : "V1",
"match_mode" : "SWA",
"name" : "Api_mock",
"auth_type" : "IAM",
"auth_opt" : {
"auth_code_auth_type" : "DISABLE"
},
"backend_type" : "MOCK",
"cors" : false,
"req_protocol" : "HTTPS",
"req_uri" : "/test/mock",
"remark" : "Mock backend API",
"type" : 1,
"version" : "V0.0.1",
"req_method" : "GET",
"result_normal_sample" : "Example success response",
"result_failure_sample" : "Example failure response",
"tags" : [ "mockApi" ],
"register_time" : "2020-08-02T15:56:52Z",
"update_time" : "2020-08-02T15:56:52Z",
"status" : 1
}, {
"id" : "abd9c4b2ff974888b0ba79be7e6b2763",
"arrange_necessary" : 2,
"group_id" : "c77f5e81d9cb4424bf704ef2b0ac7600",
"group_name" : "api_group_001",
"group_version" : "V1",
"match_mode" : "NORMAL",
"name" : "Api_function",
"auth_type" : "APP",
"auth_opt" : {
"auth_code_auth_type" : "DISABLE"
},
"backend_type" : "FUNCTION",
"cors" : false,
"req_protocol" : "HTTPS",
"req_uri" : "/test/function",
"remark" : "FunctionGraph backend API",
"type" : 1,
"version" : "V0.0.1",
"status" : 1,
"req_method" : "GET",
"tags" : [ "functionApi" ],
"register_time" : "2020-08-02T15:36:19Z",
"update_time" : "2020-08-02T15:47:53.499266Z"
} ]
}
Status code: 400
Bad Request
{
"error_code" : "APIG.2012",
"error_msg" : "Invalid parameter value,parameterName:name. Please refer to the support documentation"
}
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: 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 |
500 | Internal Server Error |
Error Codes¶
See Error Codes.