Querying Gateway Features
Function
This API is used to query the features of a gateway. If a gateway does not support the features listed in the following table, contact technical support to upgrade the gateway.
The following table lists the supported gateway features.
| Feature Name | Description | Configurable | 
|---|---|---|
| lts | Reporting of Shubao access logs | Yes | 
| gateway_responses | Custom gateway responses | No | 
| ratelimit | Request throttling limit configuration | Yes | 
| request_body_size | Configuration of the maximum request body size | Yes | 
| backend_timeout | Maximum backend timeout configuration | Yes | 
| app_token | app_token authentication | Yes | 
| app_api_key | app_api_key authentication | Yes | 
| app_basic | app_basic authentication | Yes | 
| app_secret | app_secret authentication | Yes | 
| app_jwt | app_jwt authentication | Yes | 
| public_key | public_key backend signatures | Yes | 
| backend_token_allow | Allowing tenants to transparently transmit tokens to the backend | Yes | 
| sign_basic | Basic signature keys | No | 
| multi_auth | Two-factor authentication | No | 
| backend_client_certificate | Backend two-way authentication | Yes | 
| ssl_ciphers | HTTPS cipher suites | Yes | 
| route | Custom routes | No | 
| cors | Plug-ins | No | 
| real_ip_from_xff | Using the X-Forwarded-For header to specify source IP addresses for access control and request throttling | Yes | 
| app_route | IP address access | Yes | 
| vpc_name_modifiable | Load balance channel name modification | Yes | 
| default_group_host_trustlist | Access to the DEFAULT group from IP addresses that are not inbound access addresses of the current gateway | Yes | 
| throttle_strategy | Request throttling algorithm policies | Yes | 
| custom_log | Printing custom request headers, query strings, and cookies in logs | Yes | 
| real_ip_header_getter | Using a custom header to obtain source IP addresses | Yes | 
| policy_cookie_param | Using cookies in backend policy conditions | Yes | 
| app_quota | Client quotas | No | 
| app_acl | Request throttling policies | No | 
| set_resp_headers | Response header management plug-ins | No | 
| vpc_backup | Primary/Standby VPC channels | No | 
| sign_aes | AES signature keys | No | 
| kafka_log | Adding, deleting, modifying, and querying Kafka log push plug-ins | No | 
| backend_retry_count | Backend retry configuration | No | 
| policy_sys_param | Using system parameters in backend policy conditions | No | 
| breaker | Circuit breakers | No | 
| content_type_configurable | Returning request parameter type (Content-Type) when querying APIs | No | 
| rate_limit_plugin | Request throttling plug-ins | No | 
| breakerv2 | Circuit breakers for degrading services in case of overload | No | 
| sm_cipher_type | Encrypting local sensitive data with commercial cryptographic algorithms | No | 
| rate_limit_algorithm | Request throttling algorithm switchover | No | 
URI
GET /v2/{project_id}/apigw/instances/{instance_id}/features
| 
        Parameter  | 
      
        Mandatory  | 
      
        Type  | 
      
        Description  | 
     
|---|---|---|---|
| 
        project_id  | 
      
        Yes  | 
      
        String  | 
      
        Project ID. For details about how to obtain a project ID, see "Appendix" > "Obtaining a Project ID" in this document.  | 
     
| 
        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  | 
     
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.  | 
     
| 
        features  | 
      
        Array of FeatureInfo objects  | 
      
        Feature list.  | 
     
| 
        Parameter  | 
      
        Type  | 
      
        Description  | 
     
|---|---|---|
| 
        id  | 
      
        String  | 
      
        Feature ID.  | 
     
| 
        name  | 
      
        String  | 
      
        Feature name. Minimum: 1 Maximum: 64  | 
     
| 
        enable  | 
      
        Boolean  | 
      
        Indicates whether to enable the feature.  | 
     
| 
        config  | 
      
        String  | 
      
        Parameter configuration.  | 
     
| 
        instance_id  | 
      
        String  | 
      
        Gateway ID.  | 
     
| 
        update_time  | 
      
        String  | 
      
        Feature update time.  | 
     
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: 404
| 
        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" : 1,
  "size" : 1,
  "features" : [ {
    "config" : "on",
    "enable" : true,
    "id" : "db9a9260cd3e4a16a9b5747a65d3ffaa",
    "instance_id" : "eddc4d25480b4cd6b512f270a1b8b341",
    "name" : "app_api_key",
    "update_time" : "2020-08-24T01:17:31.041984Z"
  } ]
}
  Status code: 400
Bad Request
{
  "error_code" : "APIG.2012",
  "error_msg" : "Invalid parameter value,parameterName:instance_id. 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: 404
Not Found
{
  "error_code" : "APIG.3030",
  "error_msg" : "The instance does not exist;id:eddc4d25480b4cd6b512f270a1b8b341"
}
  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.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.