diff --git a/docs/apig/api-ref/ALL_META.TXT.json b/docs/apig/api-ref/ALL_META.TXT.json new file mode 100644 index 000000000..c7cdecbbf --- /dev/null +++ b/docs/apig/api-ref/ALL_META.TXT.json @@ -0,0 +1,1762 @@ +[ + { + "uri":"apig-en-api-180713001.html", + "product_code":"apig", + "code":"1", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Before You Start", + "title":"Before You Start", + "githuburl":"" + }, + { + "uri":"apig-api-190529263.html", + "product_code":"apig", + "code":"2", + "des":"API Gateway (APIG) is a high-performance, high-availability, and high-security API hosting service that helps enterprises build, manage, and deploy APIs at any scale.This", + "doc_type":"api", + "kw":"Overview,Before You Start,API Reference", + "title":"Overview", + "githuburl":"" + }, + { + "uri":"apig-api-190529264.html", + "product_code":"apig", + "code":"3", + "des":"APIG supports Representational State Transfer (REST) APIs, allowing you to call APIs using HTTPS. For details about API calling, see Calling APIs.", + "doc_type":"api", + "kw":"API Calling,Before You Start,API Reference", + "title":"API Calling", + "githuburl":"" + }, + { + "uri":"apig-api-190529265.html", + "product_code":"apig", + "code":"4", + "des":"An endpoint is the request address for calling an API. Endpoints vary depending on services and regions. For the endpoints of all services, contact technical support.", + "doc_type":"api", + "kw":"Endpoints,Before You Start,API Reference", + "title":"Endpoints", + "githuburl":"" + }, + { + "uri":"apig-api-190529266.html", + "product_code":"apig", + "code":"5", + "des":"The number of APIG resources that you can create is determined by your quota. To increase your quota, contact technical support.For more constraints, see API description.", + "doc_type":"api", + "kw":"Constraints,Before You Start,API Reference", + "title":"Constraints", + "githuburl":"" + }, + { + "uri":"apig-api-190529267.html", + "product_code":"apig", + "code":"6", + "des":"AccountAn account is created upon successful registration with the cloud system. The account has full access permissions for all of its cloud services and resources. It c", + "doc_type":"api", + "kw":"Concepts,Before You Start,API Reference", + "title":"Concepts", + "githuburl":"" + }, + { + "uri":"apig-en-api-180713003.html", + "product_code":"apig", + "code":"7", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Calling APIs", + "title":"Calling APIs", + "githuburl":"" + }, + { + "uri":"apig-en-api-180713011.html", + "product_code":"apig", + "code":"8", + "des":"This section describes the structure of a REST API request, and uses the APIG API for creating an API group (dedicated gateways) as an example to demonstrate how to call ", + "doc_type":"api", + "kw":"Making an API Request,Calling APIs,API Reference", + "title":"Making an API Request", + "githuburl":"" + }, + { + "uri":"apig-api-190529268.html", + "product_code":"apig", + "code":"9", + "des":"Requests for calling an API can be authenticated using either of the following methods:Token-based authentication: Requests are authenticated using a token.AK/SK-based au", + "doc_type":"api", + "kw":"Authentication,Calling APIs,API Reference", + "title":"Authentication", + "githuburl":"" + }, + { + "uri":"apig-api-190529269.html", + "product_code":"apig", + "code":"10", + "des":"After sending a request, you will receive a response, including a status code, response header, and response body.A status code is a group of digits, ranging from 1xx to ", + "doc_type":"api", + "kw":"Response,Calling APIs,API Reference", + "title":"Response", + "githuburl":"" + }, + { + "uri":"apig-phapi-20070101.html", + "product_code":"apig", + "code":"11", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Dedicated Gateway APIs (V2)", + "title":"Dedicated Gateway APIs (V2)", + "githuburl":"" + }, + { + "uri":"topic_300000000.html", + "product_code":"apig", + "code":"12", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"API Group Management", + "title":"API Group Management", + "githuburl":"" + }, + { + "uri":"CreateApiGroupV2.html", + "product_code":"apig", + "code":"13", + "des":"This API is used to create an API group. An API group is an API management unit and the entry to a service. A subdomain name is returned as the access entry when an API g", + "doc_type":"api", + "kw":"Creating an API Group,API Group Management,API Reference", + "title":"Creating an API Group", + "githuburl":"" + }, + { + "uri":"UpdateApiGroupV2.html", + "product_code":"apig", + "code":"14", + "des":"This API is used to modify the attributes of an API group. Only the name and remark attributes of an API group can be modified.PUT /v2/{project_id}/apigw/instances/{insta", + "doc_type":"api", + "kw":"Modifying an API Group,API Group Management,API Reference", + "title":"Modifying an API Group", + "githuburl":"" + }, + { + "uri":"DeleteApiGroupV2.html", + "product_code":"apig", + "code":"15", + "des":"This API is used to delete an API group.If the group to delete contains APIs, take the APIs offline and delete them.This operation will also delete all resources associat", + "doc_type":"api", + "kw":"Deleting an API Group,API Group Management,API Reference", + "title":"Deleting an API Group", + "githuburl":"" + }, + { + "uri":"ShowDetailsOfApiGroupV2.html", + "product_code":"apig", + "code":"16", + "des":"This API is used to query the details of an API group.GET /v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id}Status code: 200Status code: 400Status code:", + "doc_type":"api", + "kw":"Querying API Group Details,API Group Management,API Reference", + "title":"Querying API Group Details", + "githuburl":"" + }, + { + "uri":"ListApiGroupsV2.html", + "product_code":"apig", + "code":"17", + "des":"This API is used to query API groups.You can query all API groups in your account as a tenant, or query API groups of all tenants using an administrator account.GET /v2/{", + "doc_type":"api", + "kw":"Querying API Groups,API Group Management,API Reference", + "title":"Querying API Groups", + "githuburl":"" + }, + { + "uri":"topic_300000001.html", + "product_code":"apig", + "code":"18", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Environment Management", + "title":"Environment Management", + "githuburl":"" + }, + { + "uri":"CreateEnvironmentV2.html", + "product_code":"apig", + "code":"19", + "des":"API providers can publish an API in different environments, such as the development, testing, and production environments.API information, such as the version, request ad", + "doc_type":"api", + "kw":"Creating an Environment,Environment Management,API Reference", + "title":"Creating an Environment", + "githuburl":"" + }, + { + "uri":"UpdateEnvironmentV2.html", + "product_code":"apig", + "code":"20", + "des":"This API is used to modify the information about an environment. Only the name and remark attributes of an environment can be modified.PUT /v2/{project_id}/apigw/instance", + "doc_type":"api", + "kw":"Modifying an Environment,Environment Management,API Reference", + "title":"Modifying an Environment", + "githuburl":"" + }, + { + "uri":"DeleteEnvironmentV2.html", + "product_code":"apig", + "code":"21", + "des":"This API is used to delete an environment.This operation will cause the APIs published in the environment to become inaccessible to relevant apps and users. Ensure that y", + "doc_type":"api", + "kw":"Deleting an Environment,Environment Management,API Reference", + "title":"Deleting an Environment", + "githuburl":"" + }, + { + "uri":"ListEnvironmentsV2.html", + "product_code":"apig", + "code":"22", + "des":"This API is used to query environments.GET /v2/{project_id}/apigw/instances/{instance_id}/envsStatus code: 200Status code: 400Status code: 401Status code: 403Status code:", + "doc_type":"api", + "kw":"Querying Environments,Environment Management,API Reference", + "title":"Querying Environments", + "githuburl":"" + }, + { + "uri":"topic_300000002.html", + "product_code":"apig", + "code":"23", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Environment Variable Management", + "title":"Environment Variable Management", + "githuburl":"" + }, + { + "uri":"CreateEnvironmentVariableV2.html", + "product_code":"apig", + "code":"24", + "des":"Publishing an API in different environments may involve various variables, such as API service deployment address and request version.You can define environment variables", + "doc_type":"api", + "kw":"Creating a Variable,Environment Variable Management,API Reference", + "title":"Creating a Variable", + "githuburl":"" + }, + { + "uri":"DeleteEnvironmentVariableV2.html", + "product_code":"apig", + "code":"25", + "des":"This API is used to delete an environment variable.DELETE /v2/{project_id}/apigw/instances/{instance_id}/env-variables/{env_variable_id}Status code: 401Status code: 403St", + "doc_type":"api", + "kw":"Deleting a Variable,Environment Variable Management,API Reference", + "title":"Deleting a Variable", + "githuburl":"" + }, + { + "uri":"ShowDetailsOfEnvironmentVariableV2.html", + "product_code":"apig", + "code":"26", + "des":"This API is used to query the details of an environment variable.GET /v2/{project_id}/apigw/instances/{instance_id}/env-variables/{env_variable_id}Status code: 200Status ", + "doc_type":"api", + "kw":"Querying Variable Details,Environment Variable Management,API Reference", + "title":"Querying Variable Details", + "githuburl":"" + }, + { + "uri":"ListEnvironmentVariablesV2.html", + "product_code":"apig", + "code":"27", + "des":"This API is used to query all environment variables under an API group.GET /v2/{project_id}/apigw/instances/{instance_id}/env-variablesStatus code: 200Status code: 400Sta", + "doc_type":"api", + "kw":"Querying Environment Variables,Environment Variable Management,API Reference", + "title":"Querying Environment Variables", + "githuburl":"" + }, + { + "uri":"topic_300000003.html", + "product_code":"apig", + "code":"28", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Request Throttling Policy Management", + "title":"Request Throttling Policy Management", + "githuburl":"" + }, + { + "uri":"CreateRequestThrottlingPolicyV2.html", + "product_code":"apig", + "code":"29", + "des":"After an API goes online, the system attaches a request throttling policy to it by default. The API provider can change the request throttling policy based on the service", + "doc_type":"api", + "kw":"Creating a Request Throttling Policy,Request Throttling Policy Management,API Reference", + "title":"Creating a Request Throttling Policy", + "githuburl":"" + }, + { + "uri":"UpdateRequestThrottlingPolicyV2.html", + "product_code":"apig", + "code":"30", + "des":"This API is used to modify the information about a request throttling policy.PUT /v2/{project_id}/apigw/instances/{instance_id}/throttles/{throttle_id}Status code: 200Sta", + "doc_type":"api", + "kw":"Modifying a Request Throttling Policy,Request Throttling Policy Management,API Reference", + "title":"Modifying a Request Throttling Policy", + "githuburl":"" + }, + { + "uri":"DeleteRequestThrottlingPolicyV2.html", + "product_code":"apig", + "code":"31", + "des":"This API is used to delete a request throttling policy and all binding relationships between the policy and APIs.DELETE /v2/{project_id}/apigw/instances/{instance_id}/thr", + "doc_type":"api", + "kw":"Deleting a Request Throttling Policy,Request Throttling Policy Management,API Reference", + "title":"Deleting a Request Throttling Policy", + "githuburl":"" + }, + { + "uri":"ListRequestThrottlingPolicyV2.html", + "product_code":"apig", + "code":"32", + "des":"This API is used to query all the request throttling policies.GET /v2/{project_id}/apigw/instances/{instance_id}/throttlesStatus code: 200Status code: 400Status code: 401", + "doc_type":"api", + "kw":"Querying Request Throttling Policies,Request Throttling Policy Management,API Reference", + "title":"Querying Request Throttling Policies", + "githuburl":"" + }, + { + "uri":"ShowDetailsOfRequestThrottlingPolicyV2.html", + "product_code":"apig", + "code":"33", + "des":"This API is used to query the details of a request throttling policy.GET /v2/{project_id}/apigw/instances/{instance_id}/throttles/{throttle_id}Status code: 200Status code", + "doc_type":"api", + "kw":"Querying Details of a Request Throttling Policy,Request Throttling Policy Management,API Reference", + "title":"Querying Details of a Request Throttling Policy", + "githuburl":"" + }, + { + "uri":"topic_300000004.html", + "product_code":"apig", + "code":"34", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"API Management", + "title":"API Management", + "githuburl":"" + }, + { + "uri":"CreateApiV2.html", + "product_code":"apig", + "code":"35", + "des":"This API is used to create an API. API is an interface that encapsulates a set of service capabilities.The definition of an API defines how the API is called by users and", + "doc_type":"api", + "kw":"Registering an API,API Management,API Reference", + "title":"Registering an API", + "githuburl":"" + }, + { + "uri":"UpdateApiV2.html", + "product_code":"apig", + "code":"36", + "des":"This API is used to modify the information about an API, including its backend information.PUT /v2/{project_id}/apigw/instances/{instance_id}/apis/{api_id}Status code: 20", + "doc_type":"api", + "kw":"Modifying an API,API Management,API Reference", + "title":"Modifying an API", + "githuburl":"" + }, + { + "uri":"DeleteApiV2.html", + "product_code":"apig", + "code":"37", + "des":"This API is used to delete an API.This operation will delete all related resources and binding relationships of the API, such as publication records, backend services, an", + "doc_type":"api", + "kw":"Deleting an API,API Management,API Reference", + "title":"Deleting an API", + "githuburl":"" + }, + { + "uri":"CreateOrDeletePublishRecordForApiV2.html", + "product_code":"apig", + "code":"38", + "des":"This API is used to publish an API or take an API offline.An API can be called only in an environment where the API has been published. APIs that have not been published ", + "doc_type":"api", + "kw":"Publishing an API or Taking an API Offline,API Management,API Reference", + "title":"Publishing an API or Taking an API Offline", + "githuburl":"" + }, + { + "uri":"ShowDetailsOfApiV2.html", + "product_code":"apig", + "code":"39", + "des":"This API is used to query the details of an API.GET /v2/{project_id}/apigw/instances/{instance_id}/apis/{api_id}Status code: 200Status code: 401Status code: 403Status cod", + "doc_type":"api", + "kw":"Querying API Details,API Management,API Reference", + "title":"Querying API Details", + "githuburl":"" + }, + { + "uri":"ListApisV2.html", + "product_code":"apig", + "code":"40", + "des":"This API is used to query APIs to return details and publication information of the APIs. Backend information of the APIs will not be returned.GET /v2/{project_id}/apigw/", + "doc_type":"api", + "kw":"Querying APIs,API Management,API Reference", + "title":"Querying APIs", + "githuburl":"" + }, + { + "uri":"DebugApiV2.html", + "product_code":"apig", + "code":"41", + "des":"This API is used to debug an API in a specified environment. The API caller must have the permissions required for accessing this API.POST /v2/{project_id}/apigw/instance", + "doc_type":"api", + "kw":"Debugging an API,API Management,API Reference", + "title":"Debugging an API", + "githuburl":"" + }, + { + "uri":"BatchPublishOrOfflineApiV2.html", + "product_code":"apig", + "code":"42", + "des":"This API is used to publish multiple APIs in an environment or to remove multiple APIs from the environment in which they have been published.POST /v2/{project_id}/apigw/", + "doc_type":"api", + "kw":"Publishing APIs or Taking APIs Offline,API Management,API Reference", + "title":"Publishing APIs or Taking APIs Offline", + "githuburl":"" + }, + { + "uri":"ListApiVersionsV2.html", + "product_code":"apig", + "code":"43", + "des":"This API is used to query the historical versions of an API. APIG retains a maximum of 10 historical versions for each API in an environment.GET /v2/{project_id}/apigw/in", + "doc_type":"api", + "kw":"Querying Historical Versions of an API,API Management,API Reference", + "title":"Querying Historical Versions of an API", + "githuburl":"" + }, + { + "uri":"ChangeApiVersionV2.html", + "product_code":"apig", + "code":"44", + "des":"This API is used to switch the version of an API. A version is generated based on the current definition of an API when the API is published. The version records the defi", + "doc_type":"api", + "kw":"Switching the Version of an API,API Management,API Reference", + "title":"Switching the Version of an API", + "githuburl":"" + }, + { + "uri":"ListApiRuntimeDefinitionV2.html", + "product_code":"apig", + "code":"45", + "des":"This API is used to query the runtime definition of an API in a specified environment. The runtime definition of an API in the RELEASE environment is queried if no enviro", + "doc_type":"api", + "kw":"Querying the Runtime Definition of an API,API Management,API Reference", + "title":"Querying the Runtime Definition of an API", + "githuburl":"" + }, + { + "uri":"ListApiVersionDetailV2.html", + "product_code":"apig", + "code":"46", + "des":"This API is used to query the details of a specified API version.GET /v2/{project_id}/apigw/instances/{instance_id}/apis/versions/{version_id}Status code: 200Status code:", + "doc_type":"api", + "kw":"Querying API Version Details,API Management,API Reference", + "title":"Querying API Version Details", + "githuburl":"" + }, + { + "uri":"DeleteApiByVersionIdV2.html", + "product_code":"apig", + "code":"47", + "des":"This API is used to remove an effective version of an API. The removed API cannot be called in the environment in which it took effect.DELETE /v2/{project_id}/apigw/insta", + "doc_type":"api", + "kw":"Taking an API Version Offline,API Management,API Reference", + "title":"Taking an API Version Offline", + "githuburl":"" + }, + { + "uri":"topic_300000005.html", + "product_code":"apig", + "code":"48", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Signature Key Management", + "title":"Signature Key Management", + "githuburl":"" + }, + { + "uri":"CreateSignatureKeyV2.html", + "product_code":"apig", + "code":"49", + "des":"It is a good practice to provide a protection mechanism for APIs to ensure access security. For example, authenticating API request sources and denying the access from un", + "doc_type":"api", + "kw":"Creating a Signature Key,Signature Key Management,API Reference", + "title":"Creating a Signature Key", + "githuburl":"" + }, + { + "uri":"UpdateSignatureKeyV2.html", + "product_code":"apig", + "code":"50", + "des":"This API is used to modify the information about a signature key.PUT /v2/{project_id}/apigw/instances/{instance_id}/signs/{sign_id}Status code: 200Status code: 400Status ", + "doc_type":"api", + "kw":"Modifying a Signature Key,Signature Key Management,API Reference", + "title":"Modifying a Signature Key", + "githuburl":"" + }, + { + "uri":"DeleteSignatureKeyV2.html", + "product_code":"apig", + "code":"51", + "des":"This API is used to delete a signature key. This operation will invalidate the signature key and unbind it from the APIs to which it was bound.DELETE /v2/{project_id}/api", + "doc_type":"api", + "kw":"Deleting a Signature Key,Signature Key Management,API Reference", + "title":"Deleting a Signature Key", + "githuburl":"" + }, + { + "uri":"ListSignatureKeysV2.html", + "product_code":"apig", + "code":"52", + "des":"This API is used to query all the signature keys.GET /v2/{project_id}/apigw/instances/{instance_id}/signsStatus code: 200Status code: 400Status code: 401Status code: 403S", + "doc_type":"api", + "kw":"Querying Signature Keys,Signature Key Management,API Reference", + "title":"Querying Signature Keys", + "githuburl":"" + }, + { + "uri":"topic_300000006.html", + "product_code":"apig", + "code":"53", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Binding/Unbinding Signature Keys", + "title":"Binding/Unbinding Signature Keys", + "githuburl":"" + }, + { + "uri":"AssociateSignatureKeyV2.html", + "product_code":"apig", + "code":"54", + "des":"A signature key takes effect only after being bound to an API.When requesting the backend service, APIG uses the signature key to cryptographically sign requests. The bac", + "doc_type":"api", + "kw":"Binding a Signature Key,Binding/Unbinding Signature Keys,API Reference", + "title":"Binding a Signature Key", + "githuburl":"" + }, + { + "uri":"DisassociateSignatureKeyV2.html", + "product_code":"apig", + "code":"55", + "des":"This API is used to unbind a signature key from an API.DELETE /v2/{project_id}/apigw/instances/{instance_id}/sign-bindings/{sign_bindings_id}Status code: 400Status code: ", + "doc_type":"api", + "kw":"Unbinding a Signature Key,Binding/Unbinding Signature Keys,API Reference", + "title":"Unbinding a Signature Key", + "githuburl":"" + }, + { + "uri":"ListSignatureKeysBindedToApiV2.html", + "product_code":"apig", + "code":"56", + "des":"This API is used to query the signature keys that have been bound to a specified API. Only one signature key can be bound to an API in an environment.GET /v2/{project_id}", + "doc_type":"api", + "kw":"Querying Signature Keys Bound to an API,Binding/Unbinding Signature Keys,API Reference", + "title":"Querying Signature Keys Bound to an API", + "githuburl":"" + }, + { + "uri":"ListApisNotBoundWithSignatureKeyV2.html", + "product_code":"apig", + "code":"57", + "des":"This API is used to query the APIs to which a signature key has not been bound. Only published APIs will be displayed.GET /v2/{project_id}/apigw/instances/{instance_id}/s", + "doc_type":"api", + "kw":"Querying APIs Not Bound with a Signature Key,Binding/Unbinding Signature Keys,API Reference", + "title":"Querying APIs Not Bound with a Signature Key", + "githuburl":"" + }, + { + "uri":"ListApisBindedToSignatureKeyV2.html", + "product_code":"apig", + "code":"58", + "des":"This API is used to query the APIs to which a signature key has been bound.GET /v2/{project_id}/apigw/instances/{instance_id}/sign-bindings/binded-apisStatus code: 200Sta", + "doc_type":"api", + "kw":"Querying APIs Bound with a Signature Key,Binding/Unbinding Signature Keys,API Reference", + "title":"Querying APIs Bound with a Signature Key", + "githuburl":"" + }, + { + "uri":"topic_300000007.html", + "product_code":"apig", + "code":"59", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Binding/Unbinding Request Throttling Policies", + "title":"Binding/Unbinding Request Throttling Policies", + "githuburl":"" + }, + { + "uri":"AssociateRequestThrottlingPolicyV2.html", + "product_code":"apig", + "code":"60", + "des":"The request throttling policy bound to an API will control access of all users to the API.If the number of API calls within a specified period reaches the limit, subseque", + "doc_type":"api", + "kw":"Binding a Request Throttling Policy,Binding/Unbinding Request Throttling Policies,API Reference", + "title":"Binding a Request Throttling Policy", + "githuburl":"" + }, + { + "uri":"DisassociateRequestThrottlingPolicyV2.html", + "product_code":"apig", + "code":"61", + "des":"This API is used to unbind a request throttling policy from an API.DELETE /v2/{project_id}/apigw/instances/{instance_id}/throttle-bindings/{throttle_binding_id}Status cod", + "doc_type":"api", + "kw":"Unbinding a Request Throttling Policy,Binding/Unbinding Request Throttling Policies,API Reference", + "title":"Unbinding a Request Throttling Policy", + "githuburl":"" + }, + { + "uri":"ListApisBindedToRequestThrottlingPolicyV2.html", + "product_code":"apig", + "code":"62", + "des":"This API is used to query the APIs to which a specified request throttling policy has been bound.GET /v2/{project_id}/apigw/instances/{instance_id}/throttle-bindings/bind", + "doc_type":"api", + "kw":"Querying APIs Bound with a Request Throttling Policy,Binding/Unbinding Request Throttling Policies,A", + "title":"Querying APIs Bound with a Request Throttling Policy", + "githuburl":"" + }, + { + "uri":"ListApisUnbindedToRequestThrottlingPolicyV2.html", + "product_code":"apig", + "code":"63", + "des":"This API is used to query the self-developed APIs to which a request throttling policy has not been bound. Only published APIs will be displayed.GET /v2/{project_id}/apig", + "doc_type":"api", + "kw":"Querying APIs Not Bound with a Request Throttling Policy,Binding/Unbinding Request Throttling Polici", + "title":"Querying APIs Not Bound with a Request Throttling Policy", + "githuburl":"" + }, + { + "uri":"ListRequestThrottlingPoliciesBindedToApiV2.html", + "product_code":"apig", + "code":"64", + "des":"This API is used to query the request throttling policies that have been bound to an API. Only one request throttling policy can be bound to an API in an environment.GET ", + "doc_type":"api", + "kw":"Querying Request Throttling Policies Bound to an API,Binding/Unbinding Request Throttling Policies,A", + "title":"Querying Request Throttling Policies Bound to an API", + "githuburl":"" + }, + { + "uri":"BatchDisassociateThrottlingPolicyV2.html", + "product_code":"apig", + "code":"65", + "des":"This API is used to unbind request throttling policies from APIs.PUT /v2/{project_id}/apigw/instances/{instance_id}/throttle-bindingsStatus code: 200Status code: 400Statu", + "doc_type":"api", + "kw":"Unbinding Request Throttling Policies,Binding/Unbinding Request Throttling Policies,API Reference", + "title":"Unbinding Request Throttling Policies", + "githuburl":"" + }, + { + "uri":"topic_300000008.html", + "product_code":"apig", + "code":"66", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Excluded Request Throttling Configuration", + "title":"Excluded Request Throttling Configuration", + "githuburl":"" + }, + { + "uri":"CreateSpecialThrottlingConfigurationV2.html", + "product_code":"apig", + "code":"67", + "des":"A request throttling policy controls the maximum number of times an API can be accessed within a specified period and the maximum numbers of times the API can be accessed", + "doc_type":"api", + "kw":"Creating an Excluded Request Throttling Configuration,Excluded Request Throttling Configuration,API ", + "title":"Creating an Excluded Request Throttling Configuration", + "githuburl":"" + }, + { + "uri":"UpdateSpecialThrottlingConfigurationV2.html", + "product_code":"apig", + "code":"68", + "des":"This API is used to modify an excluded configuration of a request throttling policy.PUT /v2/{project_id}/apigw/instances/{instance_id}/throttles/{throttle_id}/throttle-sp", + "doc_type":"api", + "kw":"Modifying an Excluded Request Throttling Configuration,Excluded Request Throttling Configuration,API", + "title":"Modifying an Excluded Request Throttling Configuration", + "githuburl":"" + }, + { + "uri":"DeleteSpecialThrottlingConfigurationV2.html", + "product_code":"apig", + "code":"69", + "des":"This API is used to delete an excluded configuration of a request throttling policy.DELETE /v2/{project_id}/apigw/instances/{instance_id}/throttles/{throttle_id}/throttle", + "doc_type":"api", + "kw":"Deleting an Excluded Request Throttling Configuration,Excluded Request Throttling Configuration,API ", + "title":"Deleting an Excluded Request Throttling Configuration", + "githuburl":"" + }, + { + "uri":"ListSpecialThrottlingConfigurationsV2.html", + "product_code":"apig", + "code":"70", + "des":"This API is used to query all excluded configurations of a request throttling policy.GET /v2/{project_id}/apigw/instances/{instance_id}/throttles/{throttle_id}/throttle-s", + "doc_type":"api", + "kw":"Querying Excluded Request Throttling Configurations,Excluded Request Throttling Configuration,API Re", + "title":"Querying Excluded Request Throttling Configurations", + "githuburl":"" + }, + { + "uri":"topic_300000009.html", + "product_code":"apig", + "code":"71", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"App Authorization Management", + "title":"App Authorization Management", + "githuburl":"" + }, + { + "uri":"CreateAuthorizingAppsV2.html", + "product_code":"apig", + "code":"72", + "des":"An app cannot access any APIs after being created. To access an API in a specific environment, bind the app to the API in the environment.POST /v2/{project_id}/apigw/inst", + "doc_type":"api", + "kw":"Authorizing Apps,App Authorization Management,API Reference", + "title":"Authorizing Apps", + "githuburl":"" + }, + { + "uri":"CancelingAuthorizationV2.html", + "product_code":"apig", + "code":"73", + "des":"This API is used to cancel the authorization of an app for accessing an API. After this operation, the app can no longer call the API.DELETE /v2/{project_id}/apigw/instan", + "doc_type":"api", + "kw":"Canceling Authorization,App Authorization Management,API Reference", + "title":"Canceling Authorization", + "githuburl":"" + }, + { + "uri":"ListApisBindedToAppV2.html", + "product_code":"apig", + "code":"74", + "des":"This API is used to query the APIs to which a specified app has been bound.GET /v2/{project_id}/apigw/instances/{instance_id}/app-auths/binded-apisStatus code: 200Status ", + "doc_type":"api", + "kw":"Querying APIs Bound with an App,App Authorization Management,API Reference", + "title":"Querying APIs Bound with an App", + "githuburl":"" + }, + { + "uri":"ListApisUnbindedToAppV2.html", + "product_code":"apig", + "code":"75", + "des":"This API is used to query the self-developed APIs to which an app has not been bound in a specified environment.GET /v2/{project_id}/apigw/instances/{instance_id}/app-aut", + "doc_type":"api", + "kw":"Querying APIs Not Bound with an App,App Authorization Management,API Reference", + "title":"Querying APIs Not Bound with an App", + "githuburl":"" + }, + { + "uri":"ListAppsBindedToApiV2.html", + "product_code":"apig", + "code":"76", + "des":"This API is used to query the apps that have been bound to a specified API.GET /v2/{project_id}/apigw/instances/{instance_id}/app-auths/binded-appsStatus code: 200Status ", + "doc_type":"api", + "kw":"Querying Apps Bound to an API,App Authorization Management,API Reference", + "title":"Querying Apps Bound to an API", + "githuburl":"" + }, + { + "uri":"topic_300000010.html", + "product_code":"apig", + "code":"77", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Resource Query", + "title":"Resource Query", + "githuburl":"" + }, + { + "uri":"ListApiQuantitiesV2.html", + "product_code":"apig", + "code":"78", + "des":"This API is used to query the number of APIs that have been published in the RELEASE environment and the number of APIs that have not been published in this environment.G", + "doc_type":"api", + "kw":"Querying API Quantities,Resource Query,API Reference", + "title":"Querying API Quantities", + "githuburl":"" + }, + { + "uri":"ListApiGroupsQuantitiesV2.html", + "product_code":"apig", + "code":"79", + "des":"This API is used to query the number of API groups that have been listed on KooGallery and the number of API groups that have not been listed.GET /v2/{project_id}/apigw/i", + "doc_type":"api", + "kw":"Querying API Group Quantities,Resource Query,API Reference", + "title":"Querying API Group Quantities", + "githuburl":"" + }, + { + "uri":"ListAppQuantitiesV2.html", + "product_code":"apig", + "code":"80", + "des":"This API is used to query the number of apps that have been authorized to access APIs and the number of apps that have not been authorized to access any APIs.GET /v2/{pro", + "doc_type":"api", + "kw":"Querying App Quantities,Resource Query,API Reference", + "title":"Querying App Quantities", + "githuburl":"" + }, + { + "uri":"topic_300000011.html", + "product_code":"apig", + "code":"81", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"App Management", + "title":"App Management", + "githuburl":"" + }, + { + "uri":"CreateAnAppV2.html", + "product_code":"apig", + "code":"82", + "des":"An app is an identity for accessing an API. An app can call the APIs to which it has been authorized.This API is used to create an app.POST /v2/{project_id}/apigw/instanc", + "doc_type":"api", + "kw":"Creating an App,App Management,API Reference", + "title":"Creating an App", + "githuburl":"" + }, + { + "uri":"UpdateAppV2.html", + "product_code":"apig", + "code":"83", + "des":"This API is used to modify the information about an app. Only the name and remark parameters can be modified. If the function of customizing keys and secrets is enabled, ", + "doc_type":"api", + "kw":"Modifying an App,App Management,API Reference", + "title":"Modifying an App", + "githuburl":"" + }, + { + "uri":"DeleteAppV2.html", + "product_code":"apig", + "code":"84", + "des":"This API is used to delete an app.Deleted apps cannot call APIs.DELETE /v2/{project_id}/apigw/instances/{instance_id}/apps/{app_id}Status code: 400Status code: 401Status ", + "doc_type":"api", + "kw":"Deleting an App,App Management,API Reference", + "title":"Deleting an App", + "githuburl":"" + }, + { + "uri":"ResettingAppSecretV2.html", + "product_code":"apig", + "code":"85", + "des":"This API is used to reset the AppSecret of an app.PUT /v2/{project_id}/apigw/instances/{instance_id}/apps/secret/{app_id}Status code: 200Status code: 400Status code: 401S", + "doc_type":"api", + "kw":"Resetting the AppSecret of an App,App Management,API Reference", + "title":"Resetting the AppSecret of an App", + "githuburl":"" + }, + { + "uri":"CheckAppV2.html", + "product_code":"apig", + "code":"86", + "des":"This API is provided for users (excluding app owner) to check whether an app exists. Only the basic information, such as ID, name, and remark, of the app is displayed.GET", + "doc_type":"api", + "kw":"Verifying an App,App Management,API Reference", + "title":"Verifying an App", + "githuburl":"" + }, + { + "uri":"ShowDetailsOfAppV2.html", + "product_code":"apig", + "code":"87", + "des":"This API is used to query the details of an app.GET /v2/{project_id}/apigw/instances/{instance_id}/apps/{app_id}Status code: 200Status code: 400Status code: 401Status cod", + "doc_type":"api", + "kw":"Querying App Details,App Management,API Reference", + "title":"Querying App Details", + "githuburl":"" + }, + { + "uri":"ListAppsV2.html", + "product_code":"apig", + "code":"88", + "des":"This API is used to query apps.GET /v2/{project_id}/apigw/instances/{instance_id}/appsStatus code: 200Status code: 400Status code: 401Status code: 403Status code: 500None", + "doc_type":"api", + "kw":"Querying Apps,App Management,API Reference", + "title":"Querying Apps", + "githuburl":"" + }, + { + "uri":"CreateAppCodeV2.html", + "product_code":"apig", + "code":"89", + "des":"This API is used to create an AppCode for an app for simple authentication.POST /v2/{project_id}/apigw/instances/{instance_id}/apps/{app_id}/app-codesStatus code: 201Stat", + "doc_type":"api", + "kw":"Creating an AppCode,App Management,API Reference", + "title":"Creating an AppCode", + "githuburl":"" + }, + { + "uri":"CreateAppCodeAutoV2.html", + "product_code":"apig", + "code":"90", + "des":"This API is used to generate a random AppCode.PUT /v2/{project_id}/apigw/instances/{instance_id}/apps/{app_id}/app-codesStatus code: 201Status code: 400Status code: 401St", + "doc_type":"api", + "kw":"Generating an AppCode,App Management,API Reference", + "title":"Generating an AppCode", + "githuburl":"" + }, + { + "uri":"DeleteAppCodeV2.html", + "product_code":"apig", + "code":"91", + "des":"This API is used to delete an AppCode. Deleted AppCodes cannot be used for simple authentication.DELETE /v2/{project_id}/apigw/instances/{instance_id}/apps/{app_id}/app-c", + "doc_type":"api", + "kw":"Deleting an AppCode,App Management,API Reference", + "title":"Deleting an AppCode", + "githuburl":"" + }, + { + "uri":"ShowDetailsOfAppCodeV2.html", + "product_code":"apig", + "code":"92", + "des":"This API is used to create an AppCode for an app for simple authentication.GET /v2/{project_id}/apigw/instances/{instance_id}/apps/{app_id}/app-codes/{app_code_id}Status ", + "doc_type":"api", + "kw":"Querying AppCode Details,App Management,API Reference", + "title":"Querying AppCode Details", + "githuburl":"" + }, + { + "uri":"ListAppCodesV2.html", + "product_code":"apig", + "code":"93", + "des":"This API is used to query the AppCodes of an app.GET /v2/{project_id}/apigw/instances/{instance_id}/apps/{app_id}/app-codesStatus code: 200Status code: 400Status code: 40", + "doc_type":"api", + "kw":"Querying AppCodes of an App,App Management,API Reference", + "title":"Querying AppCodes of an App", + "githuburl":"" + }, + { + "uri":"topic_300000012.html", + "product_code":"apig", + "code":"94", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Domain Name Management", + "title":"Domain Name Management", + "githuburl":"" + }, + { + "uri":"AssociateDomainV2.html", + "product_code":"apig", + "code":"95", + "des":"A user-defined domain name takes effect only after an A record set has been added. For details, see section \"Adding an A Record Set\" in the Domain Name Service User Guide", + "doc_type":"api", + "kw":"Binding a Domain Name,Domain Name Management,API Reference", + "title":"Binding a Domain Name", + "githuburl":"" + }, + { + "uri":"AssociateCertificateV2.html", + "product_code":"apig", + "code":"96", + "des":"When you create an API to be accessed through HTTPS, you must add an SSL certificate to the independent domain name that has been bound to the group the API belongs to.Th", + "doc_type":"api", + "kw":"Adding a Certificate to a Domain Name,Domain Name Management,API Reference", + "title":"Adding a Certificate to a Domain Name", + "githuburl":"" + }, + { + "uri":"UpdateDomainV2.html", + "product_code":"apig", + "code":"97", + "des":"This API is used to modify the configuration of a domain name bound to an API group.PUT /v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id}/domains/{doma", + "doc_type":"api", + "kw":"Modifying a Domain Name,Domain Name Management,API Reference", + "title":"Modifying a Domain Name", + "githuburl":"" + }, + { + "uri":"DisassociateDomainV2.html", + "product_code":"apig", + "code":"98", + "des":"This API is used to unbind a custom domain name from an API group.DELETE /v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id}/domains/{domain_id}Status co", + "doc_type":"api", + "kw":"Unbinding a Domain Name,Domain Name Management,API Reference", + "title":"Unbinding a Domain Name", + "githuburl":"" + }, + { + "uri":"DisassociateCertificateV2.html", + "product_code":"apig", + "code":"99", + "des":"This API is used to delete a certificate that is no longer needed or has expired.DELETE /v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id}/domains/{doma", + "doc_type":"api", + "kw":"Deleting the Certificate Bound to a Domain Name,Domain Name Management,API Reference", + "title":"Deleting the Certificate Bound to a Domain Name", + "githuburl":"" + }, + { + "uri":"ShowDetailsOfDomainNameCertificateV2.html", + "product_code":"apig", + "code":"100", + "des":"This API is used to query the details of the certificate bound to a domain name.GET /v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id}/domains/{domain_i", + "doc_type":"api", + "kw":"Querying Details of the Certificate Bound to a Domain Name,Domain Name Management,API Reference", + "title":"Querying Details of the Certificate Bound to a Domain Name", + "githuburl":"" + }, + { + "uri":"topic_300000013.html", + "product_code":"apig", + "code":"101", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Access Control Policy Management", + "title":"Access Control Policy Management", + "githuburl":"" + }, + { + "uri":"CreateAclStrategyV2.html", + "product_code":"apig", + "code":"102", + "des":"This API is used to create an access control policy to allow or deny API access from certain IP addresses or tenants. The acl_value value of a domain is a tenant name rat", + "doc_type":"api", + "kw":"Creating an Access Control Policy,Access Control Policy Management,API Reference", + "title":"Creating an Access Control Policy", + "githuburl":"" + }, + { + "uri":"UpdateAclStrategyV2.html", + "product_code":"apig", + "code":"103", + "des":"This API is used to modify an access control policy. Only attributes acl_name, acl_type, and acl_value can be modified.PUT /v2/{project_id}/apigw/instances/{instance_id}/", + "doc_type":"api", + "kw":"Modifying an Access Control Policy,Access Control Policy Management,API Reference", + "title":"Modifying an Access Control Policy", + "githuburl":"" + }, + { + "uri":"DeleteAclV2.html", + "product_code":"apig", + "code":"104", + "des":"This API is used to delete an access control policy. Access control policies bound to APIs cannot be deleted.DELETE /v2/{project_id}/apigw/instances/{instance_id}/acls/{a", + "doc_type":"api", + "kw":"Deleting an Access Control Policy,Access Control Policy Management,API Reference", + "title":"Deleting an Access Control Policy", + "githuburl":"" + }, + { + "uri":"BatchDeleteAclV2.html", + "product_code":"apig", + "code":"105", + "des":"This API is used to delete multiple access control policies.Access control policies bound to APIs cannot be deleted.PUT /v2/{project_id}/apigw/instances/{instance_id}/acl", + "doc_type":"api", + "kw":"Deleting Multiple Access Control Policies,Access Control Policy Management,API Reference", + "title":"Deleting Multiple Access Control Policies", + "githuburl":"" + }, + { + "uri":"ShowDetailsOfAclPolicyV2.html", + "product_code":"apig", + "code":"106", + "des":"This API is used to query the details of an access control policy.GET /v2/{project_id}/apigw/instances/{instance_id}/acls/{acl_id}Status code: 200Status code: 400Status c", + "doc_type":"api", + "kw":"Querying Details of an Access Control Policy,Access Control Policy Management,API Reference", + "title":"Querying Details of an Access Control Policy", + "githuburl":"" + }, + { + "uri":"ListAclStrategiesV2.html", + "product_code":"apig", + "code":"107", + "des":"This API is used to query all the access control policies.GET /v2/{project_id}/apigw/instances/{instance_id}/aclsStatus code: 200Status code: 400Status code: 401Status co", + "doc_type":"api", + "kw":"Querying Access Control Policies,Access Control Policy Management,API Reference", + "title":"Querying Access Control Policies", + "githuburl":"" + }, + { + "uri":"topic_300000014.html", + "product_code":"apig", + "code":"108", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Binding/Unbinding Access Control Policies", + "title":"Binding/Unbinding Access Control Policies", + "githuburl":"" + }, + { + "uri":"CreateApiAclBindingV2.html", + "product_code":"apig", + "code":"109", + "des":"This API is used to bind an access control policy to a specified API.You can bind different access control policies to an API in different environments, but you can bind ", + "doc_type":"api", + "kw":"Binding an Access Control Policy to an API,Binding/Unbinding Access Control Policies,API Reference", + "title":"Binding an Access Control Policy to an API", + "githuburl":"" + }, + { + "uri":"DeleteApiAclBindingV2.html", + "product_code":"apig", + "code":"110", + "des":"This API is used to unbind an access control policy from an API.DELETE /v2/{project_id}/apigw/instances/{instance_id}/acl-bindings/{acl_bindings_id}Status code: 400Status", + "doc_type":"api", + "kw":"Unbinding an Access Control Policy,Binding/Unbinding Access Control Policies,API Reference", + "title":"Unbinding an Access Control Policy", + "githuburl":"" + }, + { + "uri":"BatchDeleteApiAclBindingV2.html", + "product_code":"apig", + "code":"111", + "des":"This API is used to unbind multiple access control policies from APIs.PUT /v2/{project_id}/apigw/instances/{instance_id}/acl-bindingsStatus code: 200Status code: 400Statu", + "doc_type":"api", + "kw":"Unbinding Access Control Policies,Binding/Unbinding Access Control Policies,API Reference", + "title":"Unbinding Access Control Policies", + "githuburl":"" + }, + { + "uri":"ListApisBindedToAclPolicyV2.html", + "product_code":"apig", + "code":"112", + "des":"This API is used to query the APIs to which an access control policy has been bound.GET /v2/{project_id}/apigw/instances/{instance_id}/acl-bindings/binded-apisStatus code", + "doc_type":"api", + "kw":"Querying APIs Bound with an Access Control Policy,Binding/Unbinding Access Control Policies,API Refe", + "title":"Querying APIs Bound with an Access Control Policy", + "githuburl":"" + }, + { + "uri":"ListApisUnbindedToAclPolicyV2.html", + "product_code":"apig", + "code":"113", + "des":"This API is used to query the published APIs to which an access control policy has not been bound.GET /v2/{project_id}/apigw/instances/{instance_id}/acl-bindings/unbinded", + "doc_type":"api", + "kw":"Querying APIs Not Bound with an Access Control Policy,Binding/Unbinding Access Control Policies,API ", + "title":"Querying APIs Not Bound with an Access Control Policy", + "githuburl":"" + }, + { + "uri":"ListAclPolicyBindedToApiV2.html", + "product_code":"apig", + "code":"114", + "des":"This API is used to query the access control policies that have been bound to a specified API.GET /v2/{project_id}/apigw/instances/{instance_id}/acl-bindings/binded-aclsS", + "doc_type":"api", + "kw":"Querying Access Control Policies Bound to an API,Binding/Unbinding Access Control Policies,API Refer", + "title":"Querying Access Control Policies Bound to an API", + "githuburl":"" + }, + { + "uri":"topic_300000015.html", + "product_code":"apig", + "code":"115", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Custom Authorizer Management", + "title":"Custom Authorizer Management", + "githuburl":"" + }, + { + "uri":"CreateCustomAuthorizerV2.html", + "product_code":"apig", + "code":"116", + "des":"This API is used to create a custom authorizer.POST /v2/{project_id}/apigw/instances/{instance_id}/authorizersStatus code: 201Status code: 400Status code: 401Status code:", + "doc_type":"api", + "kw":"Creating a Custom Authorizer,Custom Authorizer Management,API Reference", + "title":"Creating a Custom Authorizer", + "githuburl":"" + }, + { + "uri":"UpdateCustomAuthorizerV2.html", + "product_code":"apig", + "code":"117", + "des":"This API is used to modify a custom authorizer.PUT /v2/{project_id}/apigw/instances/{instance_id}/authorizers/{authorizer_id}Status code: 200Status code: 401Status code: ", + "doc_type":"api", + "kw":"Modifying a Custom Authorizer,Custom Authorizer Management,API Reference", + "title":"Modifying a Custom Authorizer", + "githuburl":"" + }, + { + "uri":"DeleteCustomAuthorizerV2.html", + "product_code":"apig", + "code":"118", + "des":"This API is used to delete a custom authorizer.DELETE /v2/{project_id}/apigw/instances/{instance_id}/authorizers/{authorizer_id}Status code: 400Status code: 401Status cod", + "doc_type":"api", + "kw":"Deleting a Custom Authorizer,Custom Authorizer Management,API Reference", + "title":"Deleting a Custom Authorizer", + "githuburl":"" + }, + { + "uri":"ShowDetailsOfCustomAuthorizersV2.html", + "product_code":"apig", + "code":"119", + "des":"This API is used to query the details of a custom authorizer.GET /v2/{project_id}/apigw/instances/{instance_id}/authorizers/{authorizer_id}Status code: 200Status code: 40", + "doc_type":"api", + "kw":"Querying Custom Authorizer Details,Custom Authorizer Management,API Reference", + "title":"Querying Custom Authorizer Details", + "githuburl":"" + }, + { + "uri":"ListCustomAuthorizersV2.html", + "product_code":"apig", + "code":"120", + "des":"This API is used to query all the custom authorizers under a gateway.GET /v2/{project_id}/apigw/instances/{instance_id}/authorizersStatus code: 200Status code: 400Status ", + "doc_type":"api", + "kw":"Querying Custom Authorizers,Custom Authorizer Management,API Reference", + "title":"Querying Custom Authorizers", + "githuburl":"" + }, + { + "uri":"topic_300000016.html", + "product_code":"apig", + "code":"121", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"API Import and Export", + "title":"API Import and Export", + "githuburl":"" + }, + { + "uri":"ExportApiDefinitionsV2.html", + "product_code":"apig", + "code":"122", + "des":"This API is used to export APIs in a specified API group. The content of the exported file complies with the Swagger standard. For details about the custom extended field", + "doc_type":"api", + "kw":"Exporting APIs,API Import and Export,API Reference", + "title":"Exporting APIs", + "githuburl":"" + }, + { + "uri":"ImportApiDefinitionsV2.html", + "product_code":"apig", + "code":"123", + "des":"This API is used to import APIs. The content of the imported file must comply with the Swagger standard. For details about the custom extended fields, see section \"Import", + "doc_type":"api", + "kw":"Importing APIs,API Import and Export,API Reference", + "title":"Importing APIs", + "githuburl":"" + }, + { + "uri":"topic_300000017.html", + "product_code":"apig", + "code":"124", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"VPC Channel Management", + "title":"VPC Channel Management", + "githuburl":"" + }, + { + "uri":"CreateVpcChannelV2.html", + "product_code":"apig", + "code":"125", + "des":"This API is used to create a VPC channel from APIG to your private VPC resources. Afterwards, when creating an API, you can configure your backend service to use this VPC", + "doc_type":"api", + "kw":"Creating a VPC Channel,VPC Channel Management,API Reference", + "title":"Creating a VPC Channel", + "githuburl":"" + }, + { + "uri":"UpdateVpcChannelV2.html", + "product_code":"apig", + "code":"126", + "des":"This API is used to update the parameters of a VPC channel.If the VPC channel is overwritten with an empty backend instance list, all the existing backend instances will ", + "doc_type":"api", + "kw":"Updating a VPC Channel,VPC Channel Management,API Reference", + "title":"Updating a VPC Channel", + "githuburl":"" + }, + { + "uri":"DeleteVpcChannelV2.html", + "product_code":"apig", + "code":"127", + "des":"This API is used to delete a VPC channel.DELETE /v2/{project_id}/apigw/instances/{instance_id}/vpc-channels/{vpc_channel_id}Status code: 400Status code: 401Status code: 4", + "doc_type":"api", + "kw":"Deleting a VPC Channel,VPC Channel Management,API Reference", + "title":"Deleting a VPC Channel", + "githuburl":"" + }, + { + "uri":"ShowDetailsOfVpcChannelV2.html", + "product_code":"apig", + "code":"128", + "des":"This API is used to query the details of a VPC channel.GET /v2/{project_id}/apigw/instances/{instance_id}/vpc-channels/{vpc_channel_id}Status code: 200Status code: 400Sta", + "doc_type":"api", + "kw":"Querying VPC Channel Details,VPC Channel Management,API Reference", + "title":"Querying VPC Channel Details", + "githuburl":"" + }, + { + "uri":"ListVpcChannelsV2.html", + "product_code":"apig", + "code":"129", + "des":"This API is used to query the VPC channels under a gateway.GET /v2/{project_id}/apigw/instances/{instance_id}/vpc-channelsStatus code: 200Status code: 400Status code: 401", + "doc_type":"api", + "kw":"Querying VPC Channels,VPC Channel Management,API Reference", + "title":"Querying VPC Channels", + "githuburl":"" + }, + { + "uri":"AddingBackendInstancesV2.html", + "product_code":"apig", + "code":"130", + "des":"This API is used to add backend instances to a VPC channel.If a backend instance with the specified address already exists, the instance information is updated. If the re", + "doc_type":"api", + "kw":"Adding or Updating Backend Instances,VPC Channel Management,API Reference", + "title":"Adding or Updating Backend Instances", + "githuburl":"" + }, + { + "uri":"ListBackendInstancesV2.html", + "product_code":"apig", + "code":"131", + "des":"This API is used to query the backend instances of a specified VPC channel.GET /v2/{project_id}/apigw/instances/{instance_id}/vpc-channels/{vpc_channel_id}/membersStatus ", + "doc_type":"api", + "kw":"Querying Backend Servers of a VPC Channel,VPC Channel Management,API Reference", + "title":"Querying Backend Servers of a VPC Channel", + "githuburl":"" + }, + { + "uri":"UpdateBackendInstancesV2.html", + "product_code":"apig", + "code":"132", + "des":"This API is used to update the backend instances of a specified VPC channel. During the update, the request parameters overwrite the backend instances of the correspondin", + "doc_type":"api", + "kw":"Updating Backend Instances,VPC Channel Management,API Reference", + "title":"Updating Backend Instances", + "githuburl":"" + }, + { + "uri":"DeleteBackendInstanceV2.html", + "product_code":"apig", + "code":"133", + "des":"This API is used to delete a backend instance from a specified VPC channel.DELETE /v2/{project_id}/apigw/instances/{instance_id}/vpc-channels/{vpc_channel_id}/members/{me", + "doc_type":"api", + "kw":"Removing a Backend Server,VPC Channel Management,API Reference", + "title":"Removing a Backend Server", + "githuburl":"" + }, + { + "uri":"topic_300000018.html", + "product_code":"apig", + "code":"134", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Monitoring Information Query", + "title":"Monitoring Information Query", + "githuburl":"" + }, + { + "uri":"ListLatelyApiStatisticsV2.html", + "product_code":"apig", + "code":"135", + "des":"This API is used to query the number of times APIs in an API group are called within a period. The query is based on 1 minute. If the time range is within one hour, the s", + "doc_type":"api", + "kw":"Querying API Calls Within a Period,Monitoring Information Query,API Reference", + "title":"Querying API Calls Within a Period", + "githuburl":"" + }, + { + "uri":"ListLatelyGroupStatisticsV2.html", + "product_code":"apig", + "code":"136", + "des":"This API is used to query the total number of times all APIs in an API group are called based on the API group ID. The query is based on 1 minute. If the time range is wi", + "doc_type":"api", + "kw":"Querying API Calls Under an API Group in the Last One Hour,Monitoring Information Query,API Referenc", + "title":"Querying API Calls Under an API Group in the Last One Hour", + "githuburl":"" + }, + { + "uri":"topic_300000019.html", + "product_code":"apig", + "code":"137", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Group Response Management", + "title":"Group Response Management", + "githuburl":"" + }, + { + "uri":"CreateGatewayResponseV2.html", + "product_code":"apig", + "code":"138", + "des":"This API is used to create a response for an API group.POST /v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id}/gateway-responsesStatus code: 201Status c", + "doc_type":"api", + "kw":"Creating a Group Response,Group Response Management,API Reference", + "title":"Creating a Group Response", + "githuburl":"" + }, + { + "uri":"ShowDetailsOfGatewayResponseV2.html", + "product_code":"apig", + "code":"139", + "des":"This API is used to query the details of a response defined for an API group.GET /v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id}/gateway-responses/{r", + "doc_type":"api", + "kw":"Querying Group Response Details,Group Response Management,API Reference", + "title":"Querying Group Response Details", + "githuburl":"" + }, + { + "uri":"UpdateGatewayResponseV2.html", + "product_code":"apig", + "code":"140", + "des":"This API is used to modify a response of an API group.PUT /v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id}/gateway-responses/{response_id}Status code:", + "doc_type":"api", + "kw":"Modifying a Group Response,Group Response Management,API Reference", + "title":"Modifying a Group Response", + "githuburl":"" + }, + { + "uri":"DeleteGatewayResponseV2.html", + "product_code":"apig", + "code":"141", + "des":"This API is used to delete a group response of an API group.DELETE /v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id}/gateway-responses/{response_id}Sta", + "doc_type":"api", + "kw":"Deleting a Group Response,Group Response Management,API Reference", + "title":"Deleting a Group Response", + "githuburl":"" + }, + { + "uri":"ShowDetailsOfGatewayResponseTypeV2.html", + "product_code":"apig", + "code":"142", + "des":"This API is used to query the response of an error type defined for an API group.GET /v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id}/gateway-response", + "doc_type":"api", + "kw":"Querying the Response of an Error Type,Group Response Management,API Reference", + "title":"Querying the Response of an Error Type", + "githuburl":"" + }, + { + "uri":"UpdateGatewayResponseTypeV2.html", + "product_code":"apig", + "code":"143", + "des":"This API is used to modify the response of an error type defined for an API group.PUT /v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id}/gateway-respons", + "doc_type":"api", + "kw":"Modifying the Response of an Error Type,Group Response Management,API Reference", + "title":"Modifying the Response of an Error Type", + "githuburl":"" + }, + { + "uri":"DeleteGatewayResponseTypeV2.html", + "product_code":"apig", + "code":"144", + "des":"This API is used to delete the response of an error type defined for an API group. After the response is deleted, the default response of the error type is used.DELETE /v", + "doc_type":"api", + "kw":"Deleting the Response of an Error Type,Group Response Management,API Reference", + "title":"Deleting the Response of an Error Type", + "githuburl":"" + }, + { + "uri":"ListGatewayResponsesV2.html", + "product_code":"apig", + "code":"145", + "des":"This API is used to query the responses of an API group.GET /v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id}/gateway-responsesStatus code: 200Status c", + "doc_type":"api", + "kw":"Querying Group Responses,Group Response Management,API Reference", + "title":"Querying Group Responses", + "githuburl":"" + }, + { + "uri":"topic_300000020.html", + "product_code":"apig", + "code":"146", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Tag Management", + "title":"Tag Management", + "githuburl":"" + }, + { + "uri":"ListTagsV2.html", + "product_code":"apig", + "code":"147", + "des":"This API is used to query tags of a gateway.GET /v2/{project_id}/apigw/instances/{instance_id}/tagsStatus code: 200Status code: 400Status code: 401Status code: 403Status ", + "doc_type":"api", + "kw":"Querying Tags,Tag Management,API Reference", + "title":"Querying Tags", + "githuburl":"" + }, + { + "uri":"topic_300000021.html", + "product_code":"apig", + "code":"148", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Gateway Feature Management", + "title":"Gateway Feature Management", + "githuburl":"" + }, + { + "uri":"CreateFeatureV2.html", + "product_code":"apig", + "code":"149", + "des":"This API is used to configure a feature for a gateway.The following table lists the supported features and configuration examples.POST /v2/{project_id}/apigw/instances/{i", + "doc_type":"api", + "kw":"Configuring a Feature for a Gateway,Gateway Feature Management,API Reference", + "title":"Configuring a Feature for a Gateway", + "githuburl":"" + }, + { + "uri":"ListFeaturesV2.html", + "product_code":"apig", + "code":"150", + "des":"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 ga", + "doc_type":"api", + "kw":"Querying Gateway Features,Gateway Feature Management,API Reference", + "title":"Querying Gateway Features", + "githuburl":"" + }, + { + "uri":"topic_300000022.html", + "product_code":"apig", + "code":"151", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Configuration Management", + "title":"Configuration Management", + "githuburl":"" + }, + { + "uri":"ListProjectCofigsV2.html", + "product_code":"apig", + "code":"152", + "des":"This API is used to query the resource configurations and usage of a gateway.GET /v2/{project_id}/apigw/instances/{instance_id}/project/configsStatus code: 200Status code", + "doc_type":"api", + "kw":"Querying Resource Configurations of a Gateway,Configuration Management,API Reference", + "title":"Querying Resource Configurations of a Gateway", + "githuburl":"" + }, + { + "uri":"ListInstanceConfigsV2.html", + "product_code":"apig", + "code":"153", + "des":"This API is used to query the gateway configurations.GET /v2/{project_id}/apigw/instance/configsStatus code: 200Status code: 400Status code: 401Status code: 403Status cod", + "doc_type":"api", + "kw":"Querying Gateway Configurations,Configuration Management,API Reference", + "title":"Querying Gateway Configurations", + "githuburl":"" + }, + { + "uri":"topic_300000023.html", + "product_code":"apig", + "code":"154", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Gateway Management", + "title":"Gateway Management", + "githuburl":"" + }, + { + "uri":"CreateInstanceV2.html", + "product_code":"apig", + "code":"155", + "des":"This API is used to create a dedicated gateway.POST /v2/{project_id}/apigw/instancesStatus code: 202Status code: 400Status code: 401Status code: 403Status code: 404Status", + "doc_type":"api", + "kw":"Creating a Dedicated Gateway,Gateway Management,API Reference", + "title":"Creating a Dedicated Gateway", + "githuburl":"" + }, + { + "uri":"ShowDetailsOfInstanceV2.html", + "product_code":"apig", + "code":"156", + "des":"This API is used to query the details of a dedicated gateway.GET /v2/{project_id}/apigw/instances/{instance_id}Status code: 200Status code: 401Status code: 403Status code", + "doc_type":"api", + "kw":"Querying Dedicated Gateway Details,Gateway Management,API Reference", + "title":"Querying Dedicated Gateway Details", + "githuburl":"" + }, + { + "uri":"UpdateInstanceV2.html", + "product_code":"apig", + "code":"157", + "des":"This API is used to update a dedicated gateway.PUT /v2/{project_id}/apigw/instances/{instance_id}Status code: 200Status code: 400Status code: 401Status code: 403Status co", + "doc_type":"api", + "kw":"Updating a Dedicated Gateway,Gateway Management,API Reference", + "title":"Updating a Dedicated Gateway", + "githuburl":"" + }, + { + "uri":"ShowDetailsOfInstanceProgressV2.html", + "product_code":"apig", + "code":"158", + "des":"This API is used to query the creation progress of a dedicated gateway.GET /v2/{project_id}/apigw/instances/{instance_id}/progressStatus code: 200Status code: 401Status c", + "doc_type":"api", + "kw":"Querying the Creation Progress of a Dedicated Gateway,Gateway Management,API Reference", + "title":"Querying the Creation Progress of a Dedicated Gateway", + "githuburl":"" + }, + { + "uri":"AddEipV2.html", + "product_code":"apig", + "code":"159", + "des":"This API is used to bind an EIP to a dedicated gateway or update the EIP bound to a dedicated gateway.PUT /v2/{project_id}/apigw/instances/{instance_id}/eipStatus code: 2", + "doc_type":"api", + "kw":"Updating or Binding an EIP to a Dedicated Gateway,Gateway Management,API Reference", + "title":"Updating or Binding an EIP to a Dedicated Gateway", + "githuburl":"" + }, + { + "uri":"RemoveEipV2.html", + "product_code":"apig", + "code":"160", + "des":"This API is used to unbind the EIP of a dedicated gateway.DELETE /v2/{project_id}/apigw/instances/{instance_id}/eipStatus code: 401Status code: 403Status code: 404Status ", + "doc_type":"api", + "kw":"Unbinding the EIP of a Dedicated Gateway,Gateway Management,API Reference", + "title":"Unbinding the EIP of a Dedicated Gateway", + "githuburl":"" + }, + { + "uri":"AddEngressEipV2.html", + "product_code":"apig", + "code":"161", + "des":"This API is used to enable public access for a dedicated gateway.POST /v2/{project_id}/apigw/instances/{instance_id}/nat-eipStatus code: 400Status code: 401Status code: 4", + "doc_type":"api", + "kw":"Enabling Public Access for a Dedicated Gateway,Gateway Management,API Reference", + "title":"Enabling Public Access for a Dedicated Gateway", + "githuburl":"" + }, + { + "uri":"UpdateEngressEipV2.html", + "product_code":"apig", + "code":"162", + "des":"This API is used to update the outbound access bandwidth of a dedicated gateway.PUT /v2/{project_id}/apigw/instances/{instance_id}/nat-eipStatus code: 400Status code: 401", + "doc_type":"api", + "kw":"Updating the Outbound Access Bandwidth of a Dedicated Gateway,Gateway Management,API Reference", + "title":"Updating the Outbound Access Bandwidth of a Dedicated Gateway", + "githuburl":"" + }, + { + "uri":"RemoveEngressEipV2.html", + "product_code":"apig", + "code":"163", + "des":"This API is used to disable public access for a dedicated gateway.DELETE /v2/{project_id}/apigw/instances/{instance_id}/nat-eipStatus code: 401Status code: 403Status code", + "doc_type":"api", + "kw":"Disabling Public Access for a Dedicated Gateway,Gateway Management,API Reference", + "title":"Disabling Public Access for a Dedicated Gateway", + "githuburl":"" + }, + { + "uri":"ListAvailableZonesV2.html", + "product_code":"apig", + "code":"164", + "des":"This API is used to query AZs where you can buy gateways.GET /v2/{project_id}/apigw/available-zonesStatus code: 200Status code: 401Status code: 403Status code: 500NoneSta", + "doc_type":"api", + "kw":"Querying AZs,Gateway Management,API Reference", + "title":"Querying AZs", + "githuburl":"" + }, + { + "uri":"ListInstancesV2.html", + "product_code":"apig", + "code":"165", + "des":"This API is used to query dedicated gateways.GET /v2/{project_id}/apigw/instancesStatus code: 200Status code: 401Status code: 403Status code: 500NoneStatus code: 200OKSta", + "doc_type":"api", + "kw":"Querying Dedicated Gateways,Gateway Management,API Reference", + "title":"Querying Dedicated Gateways", + "githuburl":"" + }, + { + "uri":"DeleteInstancesV2.html", + "product_code":"apig", + "code":"166", + "des":"This API is used to delete a dedicated gateway.DELETE /v2/{project_id}/apigw/instances/{instance_id}Status code: 401Status code: 403Status code: 404Status code: 500NoneSt", + "doc_type":"api", + "kw":"Deleting a Dedicated Gateway,Gateway Management,API Reference", + "title":"Deleting a Dedicated Gateway", + "githuburl":"" + }, + { + "uri":"api-grant-policy.html", + "product_code":"apig", + "code":"167", + "des":"This chapter describes fine-grained permissions management for your APIG.If your account does not require individual IAM users, skip this section.By default, new IAM user", + "doc_type":"api", + "kw":"Permissions Policies and Supported Actions,API Reference", + "title":"Permissions Policies and Supported Actions", + "githuburl":"" + }, + { + "uri":"apig-api-190529271.html", + "product_code":"apig", + "code":"168", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Appendix", + "title":"Appendix", + "githuburl":"" + }, + { + "uri":"apig-en-api-180713204.html", + "product_code":"apig", + "code":"169", + "des":"APIG supports pagination query of resource lists, such as an API list.To perform a pagination query, add the following parameters to the URL:page_size: number of records ", + "doc_type":"api", + "kw":"Pagination Query,Appendix,API Reference", + "title":"Pagination Query", + "githuburl":"" + }, + { + "uri":"apig-en-api-180713205.html", + "product_code":"apig", + "code":"170", + "des":"APIG filters query results by object attribute when you query a resource list, such as an API list.Example:", + "doc_type":"api", + "kw":"Result Filtering,Appendix,API Reference", + "title":"Result Filtering", + "githuburl":"" + }, + { + "uri":"apig-en-api-180713206.html", + "product_code":"apig", + "code":"171", + "des":"Table 1 describes common status codes.", + "doc_type":"api", + "kw":"HTTP Status Codes,Appendix,API Reference", + "title":"HTTP Status Codes", + "githuburl":"" + }, + { + "uri":"ErrorCode.html", + "product_code":"apig", + "code":"172", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Error Codes,Appendix,API Reference", + "title":"Error Codes", + "githuburl":"" + }, + { + "uri":"apig-api-20210402.html", + "product_code":"apig", + "code":"173", + "des":"The following table lists the features that are supported by dedicated gateways.If the gateway you use does not have specific features, contact technical support to upgra", + "doc_type":"api", + "kw":"Supported Features,Appendix,API Reference", + "title":"Supported Features", + "githuburl":"" + }, + { + "uri":"apig-en-api-180713009.html", + "product_code":"apig", + "code":"174", + "des":"You can also obtain a project ID by calling the IAM API used to query project information.The API used to obtain a project ID is \"GET https://{Endpoint}/v3/projects/\". {E", + "doc_type":"api", + "kw":"Obtaining a Project ID,Appendix,API Reference", + "title":"Obtaining a Project ID", + "githuburl":"" + }, + { + "uri":"apig-en-api-180713005.html", + "product_code":"apig", + "code":"175", + "des":"An account name and account ID are required for some URLs when an API is called. To obtain an account name and account ID, perform the following operations:Log in to the ", + "doc_type":"api", + "kw":"Obtaining an Account Name and Account ID,Appendix,API Reference", + "title":"Obtaining an Account Name and Account ID", + "githuburl":"" + }, + { + "uri":"apig-en-api-180713215.html", + "product_code":"apig", + "code":"176", + "des":"HUAWEI CLOUD Help Center presents technical documents to help you quickly get started with HUAWEI CLOUD services. The technical documents include Service Overview, Price Details, Purchase Guide, User Guide, API Reference, Best Practices, FAQs, and Videos.", + "doc_type":"api", + "kw":"Change History,API Reference", + "title":"Change History", + "githuburl":"" + } +] \ No newline at end of file diff --git a/docs/apig/api-ref/AddEipV2.html b/docs/apig/api-ref/AddEipV2.html new file mode 100644 index 000000000..d4ea45b6e --- /dev/null +++ b/docs/apig/api-ref/AddEipV2.html @@ -0,0 +1,355 @@ + + +
This API is used to bind an EIP to a dedicated gateway or update the EIP bound to a dedicated gateway.
+PUT /v2/{project_id}/apigw/instances/{instance_id}/eip
+ +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 + |
+
|---|---|---|---|
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
eip_id + |
+No + |
+String + |
+EIP ID. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
eip_id + |
+String + |
+EIP ID. + |
+
eip_address + |
+String + |
+EIP. + |
+
eip_status + |
+String + |
+EIP status. + |
+
eip_ipv6_address + |
+String + |
+EIP (IPv6). + |
+
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. + |
+
{
+ "eip_id" : "85392b45-685c-4f77-b19a-14ad875b8190"
+}
+Status code: 200
+OK
+{
+ "eip_id" : "85392b45-685c-4f77-b19a-14ad875b8190",
+ "eip_ip" : "100.95.155.221",
+ "eip_status" : "ACTIVE"
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIC.7211",
+ "error_msg" : "Parameter value does not match the rules, parameter name[eip_id]"
+}
+Status code: 401
+Unauthorized
+{
+ "error_code" : "APIC.7102",
+ "error_msg" : "Incorrect token or token resolution failed"
+}
+Status code: 403
+Forbidden
+{
+ "error_code" : "APIC.7106",
+ "error_msg" : "No permissions to request for the method"
+}
+Status code: 404
+Not Found
+{
+ "error_code" : "APIC.7302",
+ "error_msg" : "Instance not found"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIC.9000",
+ "error_msg" : "Failed to request internal service"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to enable public access for a dedicated gateway.
+POST /v2/{project_id}/apigw/instances/{instance_id}/nat-eip
+ +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 + |
+
|---|---|---|---|
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
bandwidth_size + |
+No + |
+String + |
+Outbound access bandwidth. +Unit: Mbit/s + |
+
bandwidth_charging_mode + |
+No + |
+String + |
+Billing type of the public outbound access bandwidth. +
Default: bandwidth +Enumeration values: +
|
+
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. + |
+
{
+ "bandwidth_size" : "5",
+ "bandwidth_charging_mode" : "traffic"
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIC.9210",
+ "error_msg" : "create cloud nat eip failed"
+}
+Status code: 401
+Unauthorized
+{
+ "error_code" : "APIC.7102",
+ "error_msg" : "Incorrect token or token resolution failed"
+}
+Status code: 403
+Forbidden
+{
+ "error_code" : "APIC.7106",
+ "error_msg" : "No permissions to request for the method"
+}
+Status code: 404
+Not Found
+{
+ "error_code" : "APIC.7302",
+ "error_msg" : "Instance not found"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIC.9000",
+ "error_msg" : "Failed to request internal service"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to add backend instances to a VPC channel.
+If a backend instance with the specified address already exists, the instance information is updated. If the request body contains multiple backend instance definitions with the same address, the first definition is used.
+POST /v2/{project_id}/apigw/instances/{instance_id}/vpc-channels/{vpc_channel_id}/members
+ +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. + |
+
vpc_channel_id + |
+Yes + |
+String + |
+VPC channel ID. + |
+
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
members + |
+Yes + |
+Array of MemberInfo objects + |
+Backend server list. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
host + |
+No + |
+String + |
+Backend server address. +This parameter is required when the member type is IP address. +Maximum: 64 + |
+
weight + |
+No + |
+Integer + |
+Weight. +The higher the weight is, the more requests a backend service will receive. +Minimum: 0 +Maximum: 10000 + |
+
is_backup + |
+No + |
+Boolean + |
+Indicates whether the backend service is a standby node. +After you enable this function, the backend service serves as a standby node. It works only when all non-standby nodes are faulty. +This function is supported only when your gateway has been upgraded to the corresponding version. If your gateway does not support this function, contact technical support. +Default: false + |
+
member_group_name + |
+No + |
+String + |
+Backend server group name. The server group facilitates backend service address modification. + |
+
status + |
+No + |
+Integer + |
+Backend server status. +
Enumeration values: +
|
+
port + |
+No + |
+Integer + |
+Backend server port. +Minimum: 0 +Maximum: 65535 + |
+
ecs_id + |
+No + |
+String + |
+Backend server ID. +This parameter is required if the backend instance type is ecs. The value can contain 1 to 64 characters, including letters, digits, hyphens (-), and underscores (_). +Maximum: 255 + |
+
ecs_name + |
+No + |
+String + |
+Backend server name. +This parameter is required if the backend instance type is ecs. The value can contain 1 to 64 characters, including letters, digits, hyphens (-), underscores (_), and periods (.). +Maximum: 64 + |
+
Status code: 201
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
size + |
+Integer + |
+Length of the returned resource list. + |
+
total + |
+Long + |
+Number of resources that match the query conditions. + |
+
members + |
+Array of VpcMemberInfo objects + |
+Cloud server list. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
host + |
+String + |
+Backend server address. +This parameter is required when the member type is IP address. +Maximum: 64 + |
+
weight + |
+Integer + |
+Weight. +The higher the weight is, the more requests a backend service will receive. +Minimum: 0 +Maximum: 10000 + |
+
is_backup + |
+Boolean + |
+Indicates whether the backend service is a standby node. +After you enable this function, the backend service serves as a standby node. It works only when all non-standby nodes are faulty. +This function is supported only when your gateway has been upgraded to the corresponding version. If your gateway does not support this function, contact technical support. +Default: false + |
+
member_group_name + |
+String + |
+Backend server group name. The server group facilitates backend service address modification. + |
+
status + |
+Integer + |
+Backend server status. +
Enumeration values: +
|
+
port + |
+Integer + |
+Backend server port. +Minimum: 0 +Maximum: 65535 + |
+
ecs_id + |
+String + |
+Backend server ID. +This parameter is required if the backend instance type is ecs. The value can contain 1 to 64 characters, including letters, digits, hyphens (-), and underscores (_). +Maximum: 255 + |
+
ecs_name + |
+String + |
+Backend server name. +This parameter is required if the backend instance type is ecs. The value can contain 1 to 64 characters, including letters, digits, hyphens (-), underscores (_), and periods (.). +Maximum: 64 + |
+
id + |
+String + |
+Backend server ID. + |
+
vpc_channel_id + |
+String + |
+VPC channel ID. + |
+
create_time + |
+String + |
+Time when the backend server is added to the VPC channel. + |
+
member_group_id + |
+String + |
+Backend server group 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: 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. + |
+
Adding a cloud server IP address to a VPC channel
+{
+ "members" : [ {
+ "host" : "192.168.2.25",
+ "weight" : 1,
+ "member_group_name" : "test"
+ } ]
+}
+Adding a cloud server name to a VPC channel
+{
+ "members" : [ {
+ "ecs_id" : "1082720c-3c15-409c-9ae3-4983ddfb6a9d",
+ "ecs_name" : "APIGtest02",
+ "weight" : 2
+ } ]
+}
+Status code: 201
+Created
+Example 1
+{
+ "total" : 1,
+ "size" : 1,
+ "members" : [ {
+ "host" : "192.168.2.25",
+ "weight" : 1,
+ "is_backup" : false,
+ "member_group_name" : "test",
+ "status" : 1,
+ "port" : 22,
+ "ecs_id" : "3082720c-3c15-409c-9ae3-4983ddfb6a9d",
+ "ecs_name" : "APIGtest",
+ "id" : "683b6807cad54122a6777ad047a6178e",
+ "vpc_channel_id" : "105c6902457144a4820dff8b1ad63331",
+ "create_time" : "2020-07-23T09:13:24Z",
+ "member_group_id" : "cf868f0224084710a1e188b7d3057c52"
+ } ]
+}
+Example 2
+{
+ "total" : 2,
+ "size" : 2,
+ "members" : [ {
+ "host" : "192.168.0.17",
+ "weight" : 2,
+ "is_backup" : false,
+ "member_group_name" : "test02",
+ "status" : 1,
+ "port" : 22,
+ "ecs_id" : "1082720c-3c15-409c-9ae3-4983ddfb6a9d",
+ "ecs_name" : "APIGtest02",
+ "id" : "5c868f0224084710a1e188b7d3057c52",
+ "vpc_channel_id" : "105c6902457144a4820dff8b1ad63331",
+ "create_time" : "2020-07-23T09:03:53Z",
+ "member_group_id" : "df868f0224084710a1e188b7d3057c52"
+ }, {
+ "host" : "192.168.0.39",
+ "weight" : 1,
+ "is_backup" : false,
+ "member_group_name" : "test01",
+ "status" : 1,
+ "port" : 22,
+ "ecs_id" : "ebe1104f-1254-4ac6-8ed7-366bec84f36e",
+ "ecs_name" : "APIGtest01",
+ "id" : "33ac0e39d005492eb1f4683e66d1a0d1",
+ "vpc_channel_id" : "105c6902457144a4820dff8b1ad63331",
+ "create_time" : "2020-07-23T07:24:34Z",
+ "member_group_id" : "ef868f0224084710a1e188b7d3057c42"
+ } ]
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2004",
+ "error_msg" : "The parameter value is outside the allowable range,parameterName:weight. 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.3023",
+ "error_msg" : "The VPC channel does not exist,id:56a7d7358e1b42459c9d730d65b14e59"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
201 + |
+Created + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+When you create an API to be accessed through HTTPS, you must add an SSL certificate to the independent domain name that has been bound to the group the API belongs to.
+This API is used to add a certificate to a specific domain name.
+POST /v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id}/domains/{domain_id}/certificate
+ +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. + |
+
group_id + |
+Yes + |
+String + |
+API group ID. + |
+
domain_id + |
+Yes + |
+String + |
+Domain ID. + |
+
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
cert_content + |
+Yes + |
+String + |
+Certificate content. + |
+
name + |
+Yes + |
+String + |
+Certificate name. It can contain 4 to 50 characters, starting with a letter. Only letters, digits, and underscores (_) are allowed. + |
+
private_key + |
+Yes + |
+String + |
+Private key. + |
+
Status code: 201
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
url_domain + |
+String + |
+Custom domain name. + |
+
id + |
+String + |
+Domain ID. + |
+
status + |
+Integer + |
+CNAME resolution status. +
Enumeration values: +
|
+
min_ssl_version + |
+String + |
+Minimum SSL version supported. + |
+
is_http_redirect_to_https + |
+Boolean + |
+Whether to enable HTTP redirection to HTTPS. The value false means disable and true means enable. The default value is false. +Default: false + |
+
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 + |
+
ssl_name + |
+String + |
+Certificate name. + |
+
ssl_id + |
+String + |
+Certificate 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: 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. + |
+
{
+ "name" : "cert_demo",
+ "private_key" : "'-----BEGIN CERTIFICATE-----\\nMIIEcDCCAtigAwIBAgIRAKUYqTtQbsPhVauuteGD8kMwDQYJKoZIhvcNAQELBQAw\\ngZMxHjAcBgNVBAoTFW1rY2VydCBkZXZlbG9wbWVudCBDQTE0MDIGA1UECwwrQ0hJ\\nTkFcbDAwNDk1MzA1QERFU0tUT1AtTDJURk9GSCAobGl1cnVpeHVlKTE7MDkGA1UE\\nAwwybWtjZXJ0IENISU5BXGwwMDQ5NTMwNUBERVNLVE9QLUwyVEZPRkggKGxpdXJ1\\naXh1ZSkwHhcNMTkwNjAxMDAwMDAwWhcNMzAwODA0MDc0MTE5WjBfMScwJQYDVQQK\\nEx5ta2NlcnQgZGV2ZWxvcG1lbnQgY2VydGlmaWNhdGUxNDAyBgNVBAsMK0NISU5B\\nXGwwMDQ5NTMwNUBERVNLVE9QLUwyVEZPRkggKGxpdXJ1aXh1ZSkwggEiMA0GCSqG\\nSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDYvPx9H8ZY9iUf5A8hT8s/gTThEOa3nswW\\njxxU58+dIiwvzdIioc+CaggMz/rjT3bt9jRilKvzkJjryUxLNOe3JsdJogm0OSxc\\nSJWOhdZd/vScImWajM5t3M/M7xgt1g813PNEVJ/uTaEwm6K3sAlqGJfgiU/ep6pb\\nI4S9i1c3VYLTfGF2ND5kTaysp69/mXl4IUDWn82n0TpjB4BvoiYD9ORMcvBBGCBh\\nnU2x497Uyo0X/MkreoxLxLEO2s4/TZfpZ0Ezsi/yHwjTRQ0ut53IKbSZDoBf3HLE\\nPw1Y4q2s4qjN6ImZmkYX+Qvx5MxdHCNsfPsDFTYX2rl+vCpqtDW/AgMBAAGjcjBw\\nMA4GA1UdDwEB/wQEAwIFoDATBgNVHSUEDDAKBggrBgEFBQcDATAMBgNVHRMBAf8E\\nAjAAMB8GA1UdIwQYMBaAFEV9QNgV6FDCbMBoI4uT/JL/8ZHjMBoGA1UdEQQTMBGC\\nD3d3dy5jb21wYW55LmNvbTANBgkqhkiG9w0BAQsFAAOCAYEAXkrRlJ2z0xEGBiE3\\ncvGtePxERVm0cdU1fI7qoQRd8bg0KJwvCvFfJZoCWD41saZnXcfwn+1eAD6txWsV\\nkgq784DeTltqC5tU6l6kpXyU1lkTm9U7/Qbb8QGB8GaRAP9VJTLfOzjieZrj/55L\\nyrSkK84hvo6XSaEhqaBUWQN1qr8MY9/P0sZ2H0S9uu3Ezu9r/jx849aYDKeN4Zdf\\nxda1iXz+6UYUQKo5cveGKu+HmIW5V+sVVUfBCbr1FrUgaSbeZDnKdm6xlQZ70los\\nn4yLrpdbL0r5x41es94PaLSZC9+UANLf7fqGKpYlYdUU3YigUs3ed9Cn1f1ScI6V\\nJgR5tyK0dAb1n5tJwM2FA0cu56L3h2h71Jxgs4mEvBlqy+h6wVOIboj4UzQRnm+t\\n1Um4rYopw240iy4oRTYqB3dcsA3y3KYcTzA+LCUOcnWcaZSFiL9kEKqCWljZs51A\\nuux1UisF8p/iMNyZPoPYIBQnO+oN2GJ72krI2pmMJgEkag38\\n-----END CERTIFICATE-----\\n'",
+ "cert_content" : "'-----BEGIN PRIVATE KEY-----\\nMIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQDYvPx9H8ZY9iUf\\n5A8hT8s/gTThEOa3nswWjxxU58+dIiwvzdIioc+CaggMz/rjT3bt9jRilKvzkJjr\\nyUxLNOe3JsdJogm0OSxcSJWOhdZd/vScImWajM5t3M/M7xgt1g813PNEVJ/uTaEw\\nm6K3sAlqGJfgiU/ep6pbI4S9i1c3VYLTfGF2ND5kTaysp69/mXl4IUDWn82n0Tpj\\nB4BvoiYD9ORMcvBBGCBhnU2x497Uyo0X/MkreoxLxLEO2s4/TZfpZ0Ezsi/yHwjT\\nRQ0ut53IKbSZDoBf3HLEPw1Y4q2s4qjN6ImZmkYX+Qvx5MxdHCNsfPsDFTYX2rl+\\nvCpqtDW/AgMBAAECggEBAMJGvOiHp+qsUODCM5G/jcdR0Q2Bcd3b+MKr61BsLdyC\\n+iqripXCh1g2JRse/pvs6gUpsRFAhNWhooGQAdRUCvRQTUjCd4JV0V6zLWQAsgO1\\nepvN9VdQqeUujhH7q6fCfgXhFSoF1QnuCfOhPnz6zaWNf+4kBzTlA74IG38vvLD6\\nTccgvXNrJEWMM+AN6uCndEMkPG2VtCor9VDaN5iuBN9NsAxTGZu9wgrZzg1W0rVZ\\nC/Psh2U2gwXHBzsiygB3n08R+7MSwulpsvUone2E4IT+VDURWIIIcVQZtT6SxuRt\\npFEy7E/PfKV1VRvEvyGtZSSLkt0WxqHPENrj3LuW77kCgYEA4X+iRh6jTSmJ1fHl\\n0qhCSFWXjp1B+cajNs62N2kFcRkOtD5BvWihlDbuLaq/eYfErKET6Z8jnbRyQCJV\\n/ePqRIZ30gjTPRr55X8ZXb+hCficHnK5LZah6HwyRL337FzejTxs3J7C1rVmYq/n\\nCjfa3bJQ6zUtxRO+B2BlCgES9q0CgYEA9g4ByVyydao8ZEC9Qbn9Pzd/LsIbBOAG\\nPg7Ib0vwHyRv9oPHTc7dla+YBTfNVuFOt2e/KKf0meZnM6OiW/r38zgwLMwzHHcs\\nryMNGgwffSwmDXgrswkXu5ICuoc1+2s3GGNFkjg7IrfcHlEpVAn/ttJTCmbvTMGo\\nHM+oJPpGp5sCgYAopHx27ua37ZiuOt8VTMZFi0e5qJZPkoGwSymEayVT8RQ5YE8w\\n+D7HG+9pw7CnEtVb19xi6w/cSL2e2ZFuJToAB8xoyrZn+Qi5WGMWBofb6DcbNcoy\\ncUfVQy08PpEExOhHxHBKg0LSt/cwKkwWB2MnOhBjlD4fmyNQ6QrM9syYMQKBgH+8\\nv9Kwq/kH+rg1H8uKad2yyvUUUgCS6Mq40/drneoc+X8p5IMRXNnDwhEbah+rcjkm\\nxAewQfzPr04Qqk5EGQsMZX4sOHCTsf/uG3QlTQenrs2ZUF5u3wJCh+YcIbs3au/f\\nQZPqW1Dn0H9wtRrq4fUgdXnV/G+FreffKjSgNaP3AoGAT8wX6ZszA5HrIGSo4pi7\\nDnbMNuYe1cpcyoAi178YVklom6uGutIiafngapViESKZ0Y8X/lYzU6ELclimqJPB\\nXD4nSD64YVvi+TjzwLK61tEUuAnYlWrtXQORWPQ5tHGlhCZPrciO2QH5P9cxoU3Z\\npGfmyACUF4Od9tdq4t4S9j4=\\n-----END PRIVATE KEY-----\\n'"
+}
+Status code: 201
+Created
+{
+ "ssl_name" : "cert_demo",
+ "url_domain" : "www.example.com",
+ "ssl_id" : "a27be832f2e9441c8127fe48e3b5ac67",
+ "id" : " f6bb84ccf1c34035878aa51b7253b21c",
+ "status" : 3
+}
+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: 404
+Not Found
+{
+ "error_code" : "APIG.3020",
+ "error_msg" : "The URL domain does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
201 + |
+Created + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+A user-defined domain name takes effect only after an A record set has been added. For details, see section "Adding an A Record Set" in the Domain Name Service User Guide.An API group can be bound with a maximum of five domain names. After you bind a domain name to an API group, APIs in the group can be called using the domain name.
+POST /v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id}/domains
+ +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. + |
+
group_id + |
+Yes + |
+String + |
+API group ID. + |
+
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
min_ssl_version + |
+No + |
+String + |
+Minimum SSL version. TLS 1.1 and TLS 1.2 are supported. +Default: TLSv1.1 +Enumeration values: +
|
+
is_http_redirect_to_https + |
+No + |
+Boolean + |
+Whether to enable HTTP redirection to HTTPS. The value false means disable and true means enable. The default value is false. +Default: false + |
+
url_domain + |
+Yes + |
+String + |
+Custom domain name. It can contain a maximum of 255 characters and must comply with domain name specifications. + |
+
Status code: 201
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
url_domain + |
+String + |
+Custom domain name. + |
+
id + |
+String + |
+Domain ID. + |
+
status + |
+Integer + |
+CNAME resolution status. +
Enumeration values: +
|
+
min_ssl_version + |
+String + |
+Minimum SSL version supported. + |
+
is_http_redirect_to_https + |
+Boolean + |
+Whether to enable HTTP redirection to HTTPS. The value false means disable and true means enable. The default value is false. +Default: false + |
+
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 + |
+
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. + |
+
{
+ "url_domain" : "www.company.com"
+}
+Status code: 201
+Created
+{
+ "url_domain" : "www.company.com",
+ "id" : "c5e0d5ba62a34d26ad5c709ae22c1a17",
+ "status" : 3,
+ "min_ssl_version" : "TLSv1.1",
+ "is_http_redirect_to_https" : false,
+ "verified_client_certificate_enabled" : false
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2024",
+ "error_msg" : "Invalid URL domain name"
+}
+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.3001",
+ "error_msg" : "API group c77f5e81d9cb4424bf704ef2b0ac7600 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
201 + |
+Created + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+The request throttling policy bound to an API will control access of all users to the API.If the number of API calls within a specified period reaches the limit, subsequent access will be rejected, protecting the backend API from abnormal traffic and ensuring stable service running.This API is used to bind a request throttling policy to an API that has been published in an environment. You can bind different request throttling policies to an API in different environments, but can bind only one request throttling policy to the API in each environment.
+POST /v2/{project_id}/apigw/instances/{instance_id}/throttle-bindings
+ +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 + |
+
|---|---|---|---|
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
strategy_id + |
+Yes + |
+String + |
+Request throttling policy ID. +Minimum: 1 +Maximum: 65 + |
+
publish_ids + |
+Yes + |
+Array of strings + |
+API publication record ID. + |
+
Status code: 201
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
throttle_applys + |
+Array of ThrottleApiBinding objects + |
+Request throttling policy binding records. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
publish_id + |
+String + |
+API publication record ID. + |
+
scope + |
+Integer + |
+Scope of the policy. +
Currently, only "1" is supported. +Enumeration values: +
|
+
strategy_id + |
+String + |
+Request throttling policy ID. + |
+
apply_time + |
+String + |
+Binding time. + |
+
id + |
+String + |
+Binding record ID. + |
+
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. + |
+
{
+ "publish_ids" : [ "40e7162dc6b94bbbbb1a60d2a24b1b0c" ],
+ "strategy_id" : "3437448ad06f4e0c91a224183116e965"
+}
+Status code: 201
+Created
+{
+ "throttle_applys" : [ {
+ "publish_id" : "40e7162dc6b94bbbbb1a60d2a24b1b0c",
+ "scope" : 1,
+ "strategy_id" : "3437448ad06f4e0c91a224183116e965",
+ "apply_time" : "2020-08-03T12:25:52.257613934Z",
+ "id" : "3e06ac135e18477e918060d3c59d6f6a"
+ } ]
+}
+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.3005",
+ "error_msg" : "Request throttling policy 3437448ad06f4e0c91a224183116e965 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
201 + |
+Created + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+A signature key takes effect only after being bound to an API.When requesting the backend service, APIG uses the signature key to cryptographically sign requests. The backend service verifies the signature to identify request sources.This API is used to bind a signature key to one or more published APIs. You can bind different signature keys to an API in different environments, but can bind only one signature key to the API in each environment.
+POST /v2/{project_id}/apigw/instances/{instance_id}/sign-bindings
+ +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 + |
+
|---|---|---|---|
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
sign_id + |
+Yes + |
+String + |
+Signature key ID. + |
+
publish_ids + |
+Yes + |
+Array of strings + |
+API publication record ID. + |
+
Status code: 201
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
bindings + |
+Array of SignApiBindingInfo objects + |
+APIs bound to the signature key. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
publish_id + |
+String + |
+API publication record ID. + |
+
api_id + |
+String + |
+API ID. + |
+
group_name + |
+String + |
+Name of the API group to which the API belongs. + |
+
binding_time + |
+String + |
+Binding time. + |
+
env_id + |
+String + |
+ID of the environment in which the API has been published. + |
+
env_name + |
+String + |
+Name of the environment in which the API has been published. + |
+
api_type + |
+Integer + |
+API type. + |
+
api_name + |
+String + |
+API name. + |
+
id + |
+String + |
+Binding record ID. + |
+
api_remark + |
+String + |
+API description. + |
+
sign_id + |
+String + |
+Signature key ID. + |
+
sign_name + |
+String + |
+Signature key name. It can contain 3 to 64 characters, starting with a letter. Only letters, digits, and underscores (_) are allowed. + |
+
sign_key + |
+String + |
+Signature key. +
|
+
sign_secret + |
+String + |
+Signature secret. +
|
+
sign_type + |
+String + |
+Signature key type. +
To use a basic signature key, ensure that your gateway version supports it. If your gateway does not support this type of signature key, contact technical support to upgrade your gateway. +To use a public_key signature key, ensure that the public_key feature has been configured for your gateway. For details, see "Appendix" > "Supported Features". If your gateway does not support this feature, contact technical support to enable it. +To use an AES signature key, ensure that your gateway version supports it. If your gateway does not support this type of signature key, contact technical support to upgrade your gateway. +Enumeration values: +
|
+
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. + |
+
{
+ "sign_id" : "0b0e8f456b8742218af75f945307173c",
+ "publish_ids" : [ "40e7162dc6b94bbbbb1a60d2a24b1b0c" ]
+}
+Status code: 201
+Created
+{
+ "bindings" : [ {
+ "api_id" : "5f918d104dc84480a75166ba99efff21",
+ "sign_secret" : "dc02fc5f30714d6bb21888389419e2b3",
+ "group_name" : "api_group_001",
+ "sign_id" : "0b0e8f456b8742218af75f945307173c",
+ "sign_key" : "a071a20d460a4f639a636c3d7e3d8163",
+ "binding_time" : "2020-08-03T04:00:11.638167852Z",
+ "env_id" : "DEFAULT_ENVIRONMENT_RELEASE_ID",
+ "env_name" : "RELEASE",
+ "sign_name" : "signature_demo",
+ "api_type" : 1,
+ "api_name" : "Api_http",
+ "id" : "25082bd52f74442bb1d273993d567938",
+ "api_remark" : "Web backend API"
+ } ]
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName:sign_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.3017",
+ "error_msg" : "Signature key 0b0e8f456b8742218af75f945307173c does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
201 + |
+Created + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to delete multiple access control policies.
+Access control policies bound to APIs cannot be deleted.
+PUT /v2/{project_id}/apigw/instances/{instance_id}/acls
+ +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 + |
+
|---|---|---|---|
action + |
+Yes + |
+String + |
+The value must be delete. + |
+
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
acls + |
+No + |
+Array of strings + |
+IDs of the access control policies to be deleted. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
success_count + |
+Integer + |
+Number of access control policies that have been successfully deleted. + |
+
failure + |
+Array of AclBatchResultFailureResp objects + |
+Error message and access control policies that fail to be deleted. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
acl_id + |
+String + |
+ID of an access control policy that fails to be deleted. + |
+
acl_name + |
+String + |
+Name of the access control policy. + |
+
error_code + |
+String + |
+Error code. + |
+
error_msg + |
+String + |
+Error message. + |
+
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. + |
+
{
+ "acls" : [ "7eb619ecf2a24943b099833cd24a01ba", "3a68d39f115d4c128fccd6f624ea6109" ]
+}
+Status code: 200
+OK
+{
+ "failure" : [ {
+ "acl_id" : "7eb619ecf2a24943b099833cd24a01ba",
+ "acl_name" : "acl_demo",
+ "error_code" : "APIG.3447",
+ "error_msg" : "The access control policy has been bound to APIs"
+ } ],
+ "success_count" : 1
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2011",
+ "error_msg" : "Invalid parameter value: parameter action should be \\\"delete\\\""
+}
+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 Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to unbind multiple access control policies from APIs.
+PUT /v2/{project_id}/apigw/instances/{instance_id}/acl-bindings
+ +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 + |
+
|---|---|---|---|
action + |
+Yes + |
+String + |
+The value must be delete. + |
+
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
acl_bindings + |
+No + |
+Array of strings + |
+IDs of the access control policy binding records to be canceled. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
success_count + |
+Integer + |
+Number of access control policies that have been successfully unbound. + |
+
failure + |
+Array of AclBindingBatchFailure objects + |
+Error message and access control policies that fail to be unbound. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
bind_id + |
+String + |
+ID of an access control policy binding record that fails to be canceled. + |
+
error_code + |
+String + |
+Error code. + |
+
error_msg + |
+String + |
+Error message. + |
+
api_id + |
+String + |
+ID of an API from which unbinding fails. + |
+
api_name + |
+String + |
+Name of the API from which unbinding fails. + |
+
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. + |
+
{
+ "acl_bindings" : [ "332c5db1458a477b89b2ea741fec94a3" ]
+}
+Status code: 200
+OK
+{
+ "failure" : [ {
+ "bind_id" : "3a68d39f115d4c128fccd6f624ea6109",
+ "error_code" : "APIG.3010",
+ "error_msg" : "The access control policy binding record does not exist"
+ } ],
+ "success_count" : 1
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2011",
+ "error_msg" : "Invalid parameter value: parameter action should be \\\"delete\\\""
+}
+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 Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to unbind request throttling policies from APIs.
+PUT /v2/{project_id}/apigw/instances/{instance_id}/throttle-bindings
+ +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 + |
+
|---|---|---|---|
action + |
+Yes + |
+String + |
+The value must be delete. + |
+
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
throttle_bindings + |
+No + |
+Array of strings + |
+IDs of the request throttling policy binding records to be canceled. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
success_count + |
+Integer + |
+Number of request throttling policies that have been successfully unbound. + |
+
failure + |
+Array of ThrottleBindingBatchFailure objects + |
+Error message and request throttling policies that fail to be unbound. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
bind_id + |
+String + |
+ID of a request throttling policy binding record that fails to be canceled. + |
+
error_code + |
+String + |
+Error code. + |
+
error_msg + |
+String + |
+Error message. + |
+
api_id + |
+String + |
+ID of an API from which unbinding fails. + |
+
api_name + |
+String + |
+Name of the API from which unbinding fails. + |
+
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. + |
+
{
+ "throttle_bindings" : [ "6a6a75b425df416cbdcd7821da30be8d", "b11e5970f732440dbea647580647d57f" ]
+}
+Status code: 200
+OK
+{
+ "failure" : [ {
+ "bind_id" : "b11e5970f732440dbea647580647d57f",
+ "error_code" : "APIG.3012",
+ "error_msg" : "The request throttling policy binding record does not exist"
+ } ],
+ "success_count" : 1
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2011",
+ "error_msg" : "parameter action should be \\\"delete\\\""
+}
+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 Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to publish multiple APIs in an environment or to remove multiple APIs from the environment in which they have been published.
+POST /v2/{project_id}/apigw/instances/{instance_id}/apis/publish
+ +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 + |
+
|---|---|---|---|
action + |
+Yes + |
+String + |
+
|
+
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
apis + |
+No + |
+Array of strings + |
+IDs of APIs to be published or taken offline. A maximum of 1000 APIs are allowed at a time. Either apis or group_id must be specified. + |
+
env_id + |
+Yes + |
+String + |
+Environment ID. + |
+
group_id + |
+No + |
+String + |
+API group ID. Either apis or group_id must be specified. + |
+
remark + |
+No + |
+String + |
+Description of the publication. +It cannot exceed 255 characters. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
success + |
+Array of PublishResp objects + |
+Message for successful API publication or taking offline. + |
+
failure + |
+Array of BatchFailure objects + |
+Error message and APIs that fail to be published or taken offline. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
publish_id + |
+String + |
+Publication record ID. + |
+
api_id + |
+String + |
+API ID. + |
+
api_name + |
+String + |
+API name. + |
+
env_id + |
+String + |
+ID of the environment in which the API has been published. + |
+
remark + |
+String + |
+Description about the publication. + |
+
publish_time + |
+String + |
+Publication time. + |
+
version_id + |
+String + |
+API version currently in use. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
api_id + |
+String + |
+ID of an API that fails to be published or taken offline. + |
+
api_name + |
+String + |
+Name of an API that fails to be published or taken offline. + |
+
error_code + |
+String + |
+Error code. + |
+
error_msg + |
+String + |
+Error message. + |
+
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. + |
+
{
+ "apis" : [ "3a955b791bd24b1c9cd94c745f8d1aad", "abd9c4b2ff974888b0ba79be7e6b2762" ],
+ "env_id" : "DEFAULT_ENVIRONMENT_RELEASE_ID",
+ "group_id" : "c77f5e81d9cb4424bf704ef2b0ac7600",
+ "remark" : "Published to the production environment"
+}
+Status code: 200
+OK
+{
+ "success" : [ {
+ "publish_id" : "9f27d1dc4f4242a9abf88e563dbfc33d",
+ "api_id" : "3a955b791bd24b1c9cd94c745f8d1aad",
+ "api_name" : "Api_mock",
+ "env_id" : "DEFAULT_ENVIRONMENT_RELEASE_ID",
+ "version_id" : "632b2c9e022941969af9a1d45735ae2c",
+ "remark" : "Published to the production environment",
+ "publish_time" : "2020-08-03T03:01:31.26522821Z"
+ } ],
+ "failure" : [ {
+ "api_id" : "abd9c4b2ff974888b0ba79be7e6b2762",
+ "error_code" : "APIG.3002",
+ "error_msg" : "Api abd9c4b2ff974888b0ba79be7e6b2762 not found"
+ } ]
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2011",
+ "error_msg" : "Invalid parameter value: parameter action should be \\\"online\\\" or \\\"offline\\\""
+}
+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 Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to cancel the authorization of an app for accessing an API. After this operation, the app can no longer call the API.
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/app-auths/{app_auth_id}
+ +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. + |
+
app_auth_id + |
+Yes + |
+String + |
+Authorization record ID. + |
+
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. + |
+
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. + |
+
None
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName: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.3009",
+ "error_msg" : "The app authorization record does not exist,id:dd29b33ae4394e3b924b582c6b40880b"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
204 + |
+No Content + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to switch the version of an API. A version is generated based on the current definition of an API when the API is published. The version records the definition and status of the API when it is published.
+You can switch between multiple versions of an API, but only one version of an API takes effect in the same environment.
+PUT /v2/{project_id}/apigw/instances/{instance_id}/apis/publish/{api_id}
+ +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. + |
+
api_id + |
+Yes + |
+String + |
+API ID. + |
+
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
version_id + |
+No + |
+String + |
+API version ID. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
publish_id + |
+String + |
+Publication record ID. + |
+
api_id + |
+String + |
+API ID. + |
+
api_name + |
+String + |
+API name. + |
+
env_id + |
+String + |
+ID of the environment in which the API has been published. + |
+
remark + |
+String + |
+Description about the publication. + |
+
publish_time + |
+String + |
+Publication time. + |
+
version_id + |
+String + |
+API version currently in use. + |
+
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. + |
+
{
+ "version_id" : "ee1a5a38d3d3493abf1dc4ed6cacfa0b"
+}
+Status code: 200
+OK
+{
+ "publish_id" : "9191cdb430724d4b8586ed7f1b962ca2",
+ "api_id" : "5f918d104dc84480a75166ba99efff21",
+ "env_id" : "DEFAULT_ENVIRONMENT_RELEASE_ID",
+ "version_id" : "ee1a5a38d3d3493abf1dc4ed6cacfa0b",
+ "publish_time" : "2020-08-03T03:27:49.483295655Z"
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2000",
+ "error_msg" : "Parameter error: Serialization error: unexpected end of JSON input"
+}
+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.3022",
+ "error_msg" : "The API version does not exist,id:ee1a5a38d3d3493abf1dc4ed6cacfa0b"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is provided for users (excluding app owner) to check whether an app exists. Only the basic information, such as ID, name, and remark, of the app is displayed.
+GET /v2/{project_id}/apigw/instances/{instance_id}/apps/validation/{app_id}
+ +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. + |
+
app_id + |
+Yes + |
+String + |
+App ID. + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
id + |
+String + |
+ID. + |
+
name + |
+String + |
+Name. + |
+
remark + |
+String + |
+Description. + |
+
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. + |
+
None
+Status code: 200
+OK
+{
+ "name" : "app_demo",
+ "remark" : "Demo app",
+ "id" : "356de8eb7a8742168586e5daf5339965"
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName: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.3002",
+ "error_msg" : "App 356de8eb7a8742168586e5daf5339965 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to create an access control policy to allow or deny API access from certain IP addresses or tenants. The acl_value value of a domain is a tenant name rather than a domain name (such as www.exampleDomain.com).
+POST /v2/{project_id}/apigw/instances/{instance_id}/acls
+ +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 + |
+
|---|---|---|---|
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
acl_name + |
+Yes + |
+String + |
+Access control policy name. It can contain 3 to 64 characters, starting with a letter. Only letters, digits, and underscores (_) are allowed. + |
+
acl_type + |
+Yes + |
+String + |
+Type. +
Enumeration values: +
|
+
acl_value + |
+Yes + |
+String + |
+One or more objects from which the access will be controlled. Separate multiple objects with commas. + |
+
entity_type + |
+Yes + |
+String + |
+Object type. +
Enumeration values: +
|
+
Status code: 201
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
acl_name + |
+String + |
+Name. + |
+
acl_type + |
+String + |
+Type. +
|
+
acl_value + |
+String + |
+Access control objects. + |
+
entity_type + |
+String + |
+Object type. +
|
+
id + |
+String + |
+ID. + |
+
update_time + |
+String + |
+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. + |
+
{
+ "acl_name" : "acl_demo",
+ "acl_type" : "PERMIT",
+ "acl_value" : "192.168.1.5,192.168.10.1",
+ "entity_type" : "IP"
+}
+Status code: 201
+Created
+{
+ "id" : "7eb619ecf2a24943b099833cd24a01ba",
+ "acl_name" : "acl_demo",
+ "entity_type" : "IP",
+ "acl_type" : "PERMIT",
+ "acl_value" : "192.168.1.5,192.168.10.1",
+ "update_time" : "2020-08-04T08:42:43.461276217Z"
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2011",
+ "error_msg" : "Invalid parameter value,parameterName:acl_type. 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 Code + |
+Description + |
+
|---|---|
201 + |
+Created + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+An app is an identity for accessing an API. An app can call the APIs to which it has been authorized.
+This API is used to create an app.
+POST /v2/{project_id}/apigw/instances/{instance_id}/apps
+ +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 + |
+
|---|---|---|---|
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
name + |
+Yes + |
+String + |
+App name. It can contain 3 to 64 characters, starting with a letter. Only letters, digits, and underscores (_) are allowed. + |
+
remark + |
+No + |
+String + |
+App description. It cannot exceed 255 characters. + |
+
app_key + |
+No + |
+String + |
+AppKey. It can contain 8 to 64 characters, starting with a letter or digit. Only letters, digits, hyphens (-), and underscores (_) are allowed. + |
+
app_secret + |
+No + |
+String + |
+AppSecret. It can contain 8 to 64 characters, starting with a letter or digit. Only letters, digits, and the following special characters are allowed: _-!@#$% + |
+
Status code: 201
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
id + |
+String + |
+ID. + |
+
name + |
+String + |
+Name. + |
+
remark + |
+String + |
+Description. + |
+
creator + |
+String + |
+Creator of the app. +
The value MARKET is currently not supported. +Enumeration values: +
|
+
update_time + |
+String + |
+Update time. + |
+
app_key + |
+String + |
+AppKey. + |
+
app_secret + |
+String + |
+AppSecret. + |
+
register_time + |
+String + |
+Registration time. + |
+
status + |
+Integer + |
+Status. +
Enumeration values: +
|
+
app_type + |
+String + |
+App type. +
The default value is apig. Other types are not supported currently. +Enumeration values: +
|
+
roma_app_type + |
+String + |
+ROMA application type. +
Currently, this parameter is not supported. + |
+
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. + |
+
{
+ "name" : "app_demo",
+ "remark" : "Demo app"
+}
+Status code: 201
+Created
+{
+ "creator" : "USER",
+ "update_time" : "2020-08-03T13:09:13.122211909Z",
+ "app_key" : "ee8f878c252747028f07eb116c2cd91b",
+ "name" : "app_demo",
+ "remark" : "Demo app",
+ "id" : "356de8eb7a8742168586e5daf5339965",
+ "app_secret" : "416b6b2a1d394111b9bc1df0e6842ab8",
+ "register_time" : "2020-08-03T13:09:13.122211659Z",
+ "status" : 1,
+ "app_type" : "apig"
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2011",
+ "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 Code + |
+Description + |
+
|---|---|
201 + |
+Created + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to bind an access control policy to a specified API.
+You can bind different access control policies to an API in different environments, but you can bind only one access control policy to the API in each environment.
+POST /v2/{project_id}/apigw/instances/{instance_id}/acl-bindings
+ +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 + |
+
|---|---|---|---|
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
acl_id + |
+No + |
+String + |
+Access control policy ID. + |
+
publish_ids + |
+No + |
+Array of strings + |
+API publication record ID. + |
+
Status code: 201
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
acl_bindings + |
+Array of AclApiBindingInfo objects + |
+Access control policy binding records. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
id + |
+String + |
+Binding record ID. + |
+
api_id + |
+String + |
+API ID. + |
+
env_id + |
+String + |
+Environment ID. + |
+
acl_id + |
+String + |
+Access control policy ID. + |
+
create_time + |
+String + |
+Binding 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. + |
+
{
+ "acl_id" : "7eb619ecf2a24943b099833cd24a01ba",
+ "publish_ids" : [ "40e7162dc6b94bbbbb1a60d2a24b1b0c" ]
+}
+Status code: 201
+Created
+{
+ "acl_bindings" : [ {
+ "id" : "332c5db1458a477b89b2ea741fec94a3",
+ "api_id" : "5f918d104dc84480a75166ba99efff21",
+ "env_id" : "DEFAULT_ENVIRONMENT_RELEASE_ID",
+ "acl_id" : "7eb619ecf2a24943b099833cd24a01ba",
+ "create_time" : "2020-08-04T08:58:03.001228747Z"
+ } ]
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2011",
+ "error_msg" : "Invalid parameter value,parameterName:acl_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.3006",
+ "error_msg" : "Access control policy 7eb619ecf2a24943b099833cd24a01ba does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
201 + |
+Created + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to create an API group. An API group is an API management unit and the entry to a service. A subdomain name is returned as the access entry when an API group is created. APIs in an API group should be correlated with each other.
+POST /v2/{project_id}/apigw/instances/{instance_id}/api-groups
+ +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 + |
+
|---|---|---|---|
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
name + |
+Yes + |
+String + |
+API group name. +The value can contain 3 to 255 characters, including letters, digits, and special characters (-_./():). It must start with a letter or digit. +Minimum: 3 +Maximum: 255 + |
+
remark + |
+No + |
+String + |
+API group description. +Maximum: 1000 + |
+
roma_app_id + |
+No + |
+String + |
+ID of the integration application to which the API group belongs. +This parameter is required when the group version is V2. +Currently, this parameter is not supported. + |
+
version + |
+No + |
+String + |
+Group version. +
The default value is V1. This parameter is not supported currently. + |
+
Status code: 201
+ +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. +
|
+
url_domains + |
+Array of UrlDomain objects + |
+Independent domain names bound to the API group. + |
+
sl_domains + |
+Array of strings + |
+Automatically allocated subdomain names. + |
+
remark + |
+String + |
+Description. + |
+
call_limits + |
+Integer + |
+Total number of times all APIs in the API group can be accessed. Consider the payload capacity of the backend service when setting this parameter. By default, there is no limit on the number of API calls. +Currently, this parameter is not supported. + |
+
time_interval + |
+Integer + |
+Period of time for limiting the number of API calls. +Currently, this parameter is not supported. + |
+
time_unit + |
+String + |
+Time unit for limiting the number of API calls. +Currently, this parameter is not supported. + |
+
is_default + |
+Integer + |
+Indicates whether the API group is the default group. + |
+
version + |
+String + |
+Group version. +
The default value is V1. This parameter is not supported currently. + |
+
roma_app_id + |
+String + |
+ID of the integration application to which the API group belongs. +This parameter is required when the group version is V2. +Currently, this parameter is not supported. + |
+
roma_app_name + |
+String + |
+Name of the integration application to which the API group belongs. +Currently, this parameter is not supported. + |
+
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 + |
+
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. + |
+
{
+ "name" : "api_group_001",
+ "remark" : "API group 1"
+}
+Status code: 201
+Created
+{
+ "update_time" : "2020-07-31T06:55:55.383169299Z",
+ "name" : "api_group_001",
+ "on_sell_status" : 2,
+ "remark" : "API group 1",
+ "sl_domains" : [ "c77f5e81d9cb4424bf704ef2b0ac7600.apic.****.com", "c77f5e81d9cb4424bf704ef2b0ac7600.apic.****.cn" ],
+ "sl_domain" : "c77f5e81d9cb4424bf704ef2b0ac7600.apic.****.com",
+ "id" : "c77f5e81d9cb4424bf704ef2b0ac7600",
+ "register_time" : "2020-07-31T06:55:55.383169068Z",
+ "status" : 1,
+ "is_default" : 2
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2011",
+ "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 Code + |
+Description + |
+
|---|---|
201 + |
+Created + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to create an API. API is an interface that encapsulates a set of service capabilities.The definition of an API defines how the API is called by users and how APIG accesses the actual backend service requested by users. APIG supports three backend types: HTTP/HTTPS web, FunctionGraph, and Mock.
+POST /v2/{project_id}/apigw/instances/{instance_id}/apis
+ +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 + |
+
|---|---|---|---|
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
name + |
+Yes + |
+String + |
+API name. +It can contain 3 to 64 characters, starting with a letter. Only letters, digits, and underscores (_) are allowed. + |
+
type + |
+Yes + |
+Integer + |
+API type. +
Enumeration values: +
|
+
version + |
+No + |
+String + |
+API version. +Maximum: 16 + |
+
req_protocol + |
+Yes + |
+String + |
+Request protocol. +
Default: HTTPS +Enumeration values: +
|
+
req_method + |
+Yes + |
+String + |
+Request method. +Enumeration values: +
|
+
req_uri + |
+Yes + |
+String + |
+Request address. It can contain request parameters enclosed with brackets ({}). For example, /getUserInfo/{userId}. Special characters, such as asterisks (*), percent signs (%), hyphens (-), and underscores (_), are allowed. It can contain a maximum of 512 characters and must comply with URI specifications.> The value must comply with URI specifications. + |
+
auth_type + |
+Yes + |
+String + |
+API authentication mode. +
Enumeration values: +
|
+
auth_opt + |
+No + |
+AuthOpt object + |
+Security authentication parameter. + |
+
cors + |
+No + |
+Boolean + |
+Indicates whether CORS is supported. +
Default: false +Enumeration values: +
|
+
match_mode + |
+No + |
+String + |
+Route matching mode. +
The default value is NORMAL. +Enumeration values: +
|
+
backend_type + |
+Yes + |
+String + |
+Backend type. +
Enumeration values: +
|
+
remark + |
+No + |
+String + |
+API description. It cannot exceed 255 characters. + |
+
group_id + |
+Yes + |
+String + |
+ID of the API group to which the API belongs. + |
+
body_remark + |
+No + |
+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 + |
+No + |
+String + |
+Example response for a successful request. The value cannot exceed 20,480 characters. + |
+
result_failure_sample + |
+No + |
+String + |
+Example response for a failed request. The value cannot exceed 20,480 characters. + |
+
authorizer_id + |
+No + |
+String + |
+ID of the frontend custom authorizer. + |
+
tags + |
+No + |
+Array of strings + |
+Tags. +The value can contain only letters, digits, and underscores (_), and must start with a letter. You can enter multiple tags and separate them with commas (,). +Minimum: 1 +Maximum: 128 + |
+
response_id + |
+No + |
+String + |
+Group response ID. + |
+
roma_app_id + |
+No + |
+String + |
+Integration application ID. +Currently, this parameter is not supported. + |
+
domain_name + |
+No + |
+String + |
+Custom domain name bound to the API. +Currently, this parameter is not supported. + |
+
tag + |
+No + |
+String + |
+Tag. +This field will be deprecated. You can use the tags field instead. + |
+
content_type + |
+No + |
+String + |
+Request content type: +
Currently, this parameter is not supported. +Enumeration values: +
|
+
mock_info + |
+No + |
+ApiMockCreate object + |
+Mock backend details. + |
+
func_info + |
+No + |
+ApiFuncCreate object + |
+FunctionGraph backend details. + |
+
req_params + |
+No + |
+Array of ReqParamBase objects + |
+Request parameters. + |
+
backend_params + |
+No + |
+Array of BackendParamBase objects + |
+Backend parameters. + |
+
policy_mocks + |
+No + |
+Array of ApiPolicyMockCreate objects + |
+Mock backend policies. + |
+
policy_functions + |
+No + |
+Array of ApiPolicyFunctionCreate objects + |
+FunctionGraph backend policies. + |
+
backend_api + |
+No + |
+BackendApiCreate object + |
+Web backend details. + |
+
policy_https + |
+No + |
+Array of ApiPolicyHttpCreate objects + |
+Web backend policies. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
app_code_auth_type + |
+No + |
+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 + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
remark + |
+No + |
+String + |
+Description. It cannot exceed 255 characters. + |
+
result_content + |
+No + |
+String + |
+Response. + |
+
version + |
+No + |
+String + |
+Function version. It cannot exceed 64 characters. + |
+
authorizer_id + |
+No + |
+String + |
+Backend custom authorizer ID. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
function_urn + |
+Yes + |
+String + |
+Function URN. + |
+
remark + |
+No + |
+String + |
+Description. It cannot exceed 255 characters. + |
+
invocation_type + |
+Yes + |
+String + |
+Invocation mode. +
Enumeration values: +
|
+
network_type + |
+Yes + |
+String + |
+Function network architecture. +
Enumeration values: +
|
+
version + |
+No + |
+String + |
+Function version. +If both a function alias URN and version are passed, only the alias URN will be used. +Maximum: 64 + |
+
alias_urn + |
+No + |
+String + |
+Function alias URN. +If both a function alias URN and version are passed, the alias URN will be used and the version will be ignored. + |
+
timeout + |
+Yes + |
+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 + |
+
authorizer_id + |
+No + |
+String + |
+Backend custom authorizer ID. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
name + |
+Yes + |
+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 + |
+Yes + |
+String + |
+Parameter type. +Enumeration values: +
|
+
location + |
+Yes + |
+String + |
+Parameter location. +Enumeration values: +
|
+
default_value + |
+No + |
+String + |
+Default value. + |
+
sample_value + |
+No + |
+String + |
+Example value. + |
+
required + |
+No + |
+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 + |
+No + |
+Integer + |
+Indicates whether validity check is enabled. +
Default: 2 +Enumeration values: +
|
+
remark + |
+No + |
+String + |
+Description. It cannot exceed 255 characters. + |
+
enumerations + |
+No + |
+String + |
+Enumerated value. + |
+
min_num + |
+No + |
+Integer + |
+Minimum value. +This parameter is valid when type is set to NUMBER. + |
+
max_num + |
+No + |
+Integer + |
+Maximum value. +This parameter is valid when type is set to NUMBER. + |
+
min_size + |
+No + |
+Integer + |
+Minimum length. +This parameter is valid when type is set to STRING. + |
+
max_size + |
+No + |
+Integer + |
+Maximum length. +This parameter is valid when type is set to STRING. + |
+
regular + |
+No + |
+String + |
+Regular expression validation rule. +Currently, this parameter is not supported. + |
+
json_schema + |
+No + |
+String + |
+JSON validation rule. +Currently, this parameter is not supported. + |
+
pass_through + |
+No + |
+Integer + |
+Indicates whether to transparently transfer the parameter. 1: yes 2: no +Enumeration values: +
|
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
result_content + |
+No + |
+String + |
+Response. + |
+
effect_mode + |
+Yes + |
+String + |
+Effective mode of the backend policy. +
Enumeration values: +
|
+
name + |
+Yes + |
+String + |
+Backend name. It must start with a letter and can contain letters, digits, and underscores (_). +Minimum: 3 +Maximum: 64 + |
+
backend_params + |
+No + |
+Array of BackendParamBase objects + |
+Backend parameters. + |
+
conditions + |
+Yes + |
+Array of ApiConditionBase objects + |
+Policy conditions. + |
+
authorizer_id + |
+No + |
+String + |
+Backend custom authorizer ID. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
function_urn + |
+Yes + |
+String + |
+Function URN. + |
+
invocation_type + |
+Yes + |
+String + |
+Invocation mode. +
Enumeration values: +
|
+
network_type + |
+Yes + |
+String + |
+Function network architecture. +
Enumeration values: +
|
+
version + |
+No + |
+String + |
+Function version. +If both a function alias URN and version are passed, the alias URN will be used and the version will be ignored. +Maximum: 64 + |
+
alias_urn + |
+No + |
+String + |
+Function alias URN. +If both a function alias URN and version are passed, the alias URN will be used and the version will be ignored. + |
+
timeout + |
+No + |
+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 + |
+
effect_mode + |
+Yes + |
+String + |
+Effective mode of the backend policy. +
Enumeration values: +
|
+
name + |
+Yes + |
+String + |
+Backend name. It must start with a letter and can contain letters, digits, and underscores (_). +Minimum: 3 +Maximum: 64 + |
+
backend_params + |
+No + |
+Array of BackendParamBase objects + |
+Backend parameters. + |
+
conditions + |
+Yes + |
+Array of ApiConditionBase objects + |
+Policy conditions. + |
+
authorizer_id + |
+No + |
+String + |
+Backend custom authorizer ID. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
authorizer_id + |
+No + |
+String + |
+Backend custom authorizer ID. + |
+
url_domain + |
+No + |
+String + |
+Backend service address.It can consist 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 + |
+Yes + |
+String + |
+Request protocol. +Enumeration values: +
|
+
remark + |
+No + |
+String + |
+Description. It cannot exceed 255 characters. + |
+
req_method + |
+Yes + |
+String + |
+Request method. +Enumeration values: +
|
+
version + |
+No + |
+String + |
+Web backend version, which can contain a maximum of 16 characters. + |
+
req_uri + |
+Yes + |
+String + |
+Request address. It can contain request parameters enclosed with brackets ({}). For example, /getUserInfo/{userId}. Special characters, such as asterisks (*), percent signs (%), hyphens (-), and underscores (), are allowed. It can contain a maximum of 512 characters and must comply with URI specifications.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.> The value must comply with URI specifications. + |
+
timeout + |
+Yes + |
+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 + |
+No + |
+Boolean + |
+Indicates whether to enable two-way authentication. + |
+
retry_count + |
+No + |
+String + |
+Number of retry attempts to request the backend service. The default value is -1. The value ranges from -1 to 10. +Default: -1 + |
+
vpc_channel_info + |
+No + |
+ApiBackendVpcReq object + |
+VPC channel details. This parameter is required if vpc_channel_status is set to 1. + |
+
vpc_channel_status + |
+No + |
+Integer + |
+Indicates whether to use a VPC channel. +
Enumeration values: +
|
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
url_domain + |
+No + |
+String + |
+Endpoint of the policy backend.It can consist of a domain name or IP address and a port number, with not more than 255 characters. It must be in the format "Domain 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 + |
+Yes + |
+String + |
+Request protocol. The value can be HTTP or HTTPS. +Enumeration values: +
|
+
req_method + |
+Yes + |
+String + |
+Request method. Options: GET, POST, PUT, DELETE, HEAD, PATCH, OPTIONS, ANY. +Enumeration values: +
|
+
req_uri + |
+Yes + |
+String + |
+Request address. It can contain request parameters enclosed with brackets ({}). For example, /getUserInfo/{userId}. Special characters, such as asterisks (*), percent signs (%), hyphens (-), and underscores (), are allowed. It can contain a maximum of 512 characters and must comply with URI specifications.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.> The value must comply with URI specifications. + |
+
timeout + |
+No + |
+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 + |
+
retry_count + |
+No + |
+String + |
+Number of retry attempts to request the backend service. The default value is -1. The value ranges from -1 to 10. +Default: -1 + |
+
effect_mode + |
+Yes + |
+String + |
+Effective mode of the backend policy. +
Enumeration values: +
|
+
name + |
+Yes + |
+String + |
+Backend name. It must start with a letter and can contain letters, digits, and underscores (_). +Minimum: 3 +Maximum: 64 + |
+
backend_params + |
+No + |
+Array of BackendParamBase objects + |
+Backend parameters. + |
+
conditions + |
+Yes + |
+Array of ApiConditionBase objects + |
+Policy conditions. + |
+
authorizer_id + |
+No + |
+String + |
+Backend custom authorizer ID. + |
+
vpc_channel_info + |
+No + |
+ApiBackendVpcReq object + |
+VPC channel details. This parameter is required if vpc_channel_status is set to 1. + |
+
vpc_channel_status + |
+No + |
+Integer + |
+Indicates whether to use a VPC channel. +
Enumeration values: +
|
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
origin + |
+Yes + |
+String + |
+Parameter type. +
Enumeration values: +
|
+
name + |
+Yes + |
+String + |
+Parameter name. +The parameter name must start with a letter and can only contain letters, digits, hyphens (-), underscores (_), and periods (.). +Minimum: 1 +Maximum: 32 + |
+
remark + |
+No + |
+String + |
+Description, which can contain a maximum of 255 characters. + |
+
location + |
+Yes + |
+String + |
+Parameter location. The value can be PATH, QUERY, or HEADER. +Enumeration values: +
|
+
value + |
+Yes + |
+String + |
+Parameter value, which can contain a maximum of 255 characters. +If the origin type is REQUEST, the value of this parameter is the parameter name in req_params. +If the origin type is CONSTANT, the value is a constant. +If the origin type is SYSTEM, the value is a system parameter name. System parameters include gateway parameters, frontend authentication parameters, and backend authentication parameters. You can set the frontend or backend authentication parameters after enabling custom frontend or backend authentication. +The gateway parameters are as follows: +
Frontend authentication parameter: prefixed with "$context.authorizer.frontend.". For example, to return "aaa" upon successful custom authentication, set this parameter to "$context.authorizer.frontend.aaa". +Backend authentication parameter: prefixed with "$context.authorizer.backend.". For example, to return "aaa" upon successful custom authentication, set this parameter to "$context.authorizer.backend.aaa". + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
req_param_name + |
+No + |
+String + |
+Input parameter name. This parameter is required if the policy type is param. + |
+
condition_type + |
+No + |
+String + |
+Policy condition. +
This parameter is required if the policy type is param. +Enumeration values: +
|
+
condition_origin + |
+Yes + |
+String + |
+Policy type. +
Enumeration values: +
|
+
condition_value + |
+Yes + |
+String + |
+Condition value. + |
+
Status code: 201
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
name + |
+String + |
+API name. +It can contain 3 to 64 characters, starting with a letter. Only letters, digits, and underscores (_) are allowed. + |
+
type + |
+Integer + |
+API type. +
Enumeration values: +
|
+
version + |
+String + |
+API version. +Maximum: 16 + |
+
req_protocol + |
+String + |
+Request protocol. +
Default: HTTPS +Enumeration values: +
|
+
req_method + |
+String + |
+Request method. +Enumeration values: +
|
+
req_uri + |
+String + |
+Request address. It can contain request parameters enclosed with brackets ({}). For example, /getUserInfo/{userId}. Special characters, such as asterisks (*), percent signs (%), hyphens (-), and underscores (_), are allowed. It can contain a maximum of 512 characters and must comply with URI specifications.> The value must comply with URI specifications. + |
+
auth_type + |
+String + |
+API authentication mode. +
Enumeration values: +
|
+
auth_opt + |
+AuthOpt object + |
+Security authentication parameter. + |
+
cors + |
+Boolean + |
+Indicates whether CORS is supported. +
Default: false +Enumeration values: +
|
+
match_mode + |
+String + |
+Route matching mode. +
The default value is NORMAL. +Enumeration values: +
|
+
backend_type + |
+String + |
+Backend type. +
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. The value cannot exceed 20,480 characters. + |
+
result_failure_sample + |
+String + |
+Example response for a failed request. The value cannot exceed 20,480 characters. + |
+
authorizer_id + |
+String + |
+ID of the frontend custom authorizer. + |
+
tags + |
+Array of strings + |
+Tags. +The value can contain only letters, digits, and underscores (_), and must start with a letter. You can enter multiple tags and separate them with commas (,). +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: +
Currently, this parameter is not supported. +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 + |
+Web backend details. + |
+
api_group_info + |
+ApiGroupCommonInfo object + |
+API group information. + |
+
func_info + |
+ApiFunc object + |
+FunctionGraph backend details. + |
+
mock_info + |
+ApiMock object + |
+Mock backend details. + |
+
req_params + |
+Array of ReqParam objects + |
+Request parameters. + |
+
backend_params + |
+Array of BackendParam objects + |
+Backend parameters. + |
+
policy_functions + |
+Array of ApiPolicyFunctionResp objects + |
+FunctionGraph backend policies. + |
+
policy_mocks + |
+Array of ApiPolicyMockResp objects + |
+Mock backend policies. + |
+
policy_https + |
+Array of ApiPolicyHttpResp objects + |
+Web backend policies. + |
+
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 + |
+Backend custom authorizer ID. + |
+
url_domain + |
+String + |
+Backend service address.It can consist 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. +Enumeration values: +
|
+
remark + |
+String + |
+Description. It cannot exceed 255 characters. + |
+
req_method + |
+String + |
+Request method. +Enumeration values: +
|
+
version + |
+String + |
+Web backend version, which can contain a maximum of 16 characters. + |
+
req_uri + |
+String + |
+Request address. It can contain request parameters enclosed with brackets ({}). For example, /getUserInfo/{userId}. Special characters, such as asterisks (*), percent signs (%), hyphens (-), and underscores (), are allowed. It can contain a maximum of 512 characters and must comply with URI specifications.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.> The value must comply with URI specifications. + |
+
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. +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 + |
+
|---|---|---|
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. +
|
+
url_domains + |
+Array of UrlDomain objects + |
+Independent domain names bound to the API group. + |
+
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 + |
+
|---|---|---|
function_urn + |
+String + |
+Function URN. + |
+
remark + |
+String + |
+Description. It cannot exceed 255 characters. + |
+
invocation_type + |
+String + |
+Invocation mode. +
Enumeration values: +
|
+
network_type + |
+String + |
+Function network architecture. +
Enumeration values: +
|
+
version + |
+String + |
+Function version. +If both a function alias URN and version are passed, only the alias URN will be used. +Maximum: 64 + |
+
alias_urn + |
+String + |
+Function alias URN. +If both a function alias URN and version are passed, the alias URN will be used and the version will be ignored. + |
+
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 + |
+
authorizer_id + |
+String + |
+Backend custom authorizer ID. + |
+
id + |
+String + |
+ID. + |
+
register_time + |
+String + |
+Registration time. + |
+
status + |
+Integer + |
+Backend service status. +
|
+
update_time + |
+String + |
+Update time. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
remark + |
+String + |
+Description. It cannot exceed 255 characters. + |
+
result_content + |
+String + |
+Response. + |
+
version + |
+String + |
+Function version. It cannot exceed 64 characters. + |
+
authorizer_id + |
+String + |
+Backend custom authorizer ID. + |
+
id + |
+String + |
+ID. + |
+
register_time + |
+String + |
+Registration time. + |
+
status + |
+Integer + |
+Backend service status. +
|
+
update_time + |
+String + |
+Update time. + |
+
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. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
function_urn + |
+String + |
+Function URN. + |
+
invocation_type + |
+String + |
+Invocation mode. +
Enumeration values: +
|
+
network_type + |
+String + |
+Function network architecture. +
Enumeration values: +
|
+
version + |
+String + |
+Function version. +If both a function alias URN and version are passed, the alias URN will be used and the version will be ignored. +Maximum: 64 + |
+
alias_urn + |
+String + |
+Function alias URN. +If both a function alias URN and version are passed, the alias URN will be used and the version will be ignored. + |
+
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 + |
+
id + |
+String + |
+ID. + |
+
effect_mode + |
+String + |
+Effective mode of the backend policy. +
Enumeration values: +
|
+
name + |
+String + |
+Backend name, which must start with a letter and can contain letters, digits, and underscores (_). +Minimum: 3 +Maximum: 64 + |
+
backend_params + |
+Array of BackendParam objects + |
+Backend parameters. + |
+
conditions + |
+Array of CoditionResp objects + |
+Policy conditions. + |
+
authorizer_id + |
+String + |
+Backend custom authorizer ID. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
id + |
+String + |
+ID. + |
+
effect_mode + |
+String + |
+Effective mode of the backend policy. +
Enumeration values: +
|
+
name + |
+String + |
+Backend name, which must start with a letter and can contain letters, digits, and underscores (_). +Minimum: 3 +Maximum: 64 + |
+
backend_params + |
+Array of BackendParam objects + |
+Backend parameters. + |
+
conditions + |
+Array of CoditionResp objects + |
+Policy conditions. + |
+
authorizer_id + |
+String + |
+Backend custom authorizer ID. + |
+
result_content + |
+String + |
+Response. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
id + |
+String + |
+ID. + |
+
effect_mode + |
+String + |
+Effective mode of the backend policy. +
Enumeration values: +
|
+
name + |
+String + |
+Backend name, which must start with a letter and can contain letters, digits, and underscores (_). +Minimum: 3 +Maximum: 64 + |
+
backend_params + |
+Array of BackendParam objects + |
+Backend parameters. + |
+
conditions + |
+Array of CoditionResp objects + |
+Policy conditions. + |
+
authorizer_id + |
+String + |
+Backend custom authorizer ID. + |
+
url_domain + |
+String + |
+Endpoint of the policy backend.It can consist of a domain name or IP address and a port number, with not more than 255 characters. It must be in the format "Domain 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. The value can be HTTP or HTTPS. +Enumeration values: +
|
+
req_method + |
+String + |
+Request method. Options: GET, POST, PUT, DELETE, HEAD, PATCH, OPTIONS, ANY. +Enumeration values: +
|
+
req_uri + |
+String + |
+Request address. It can contain request parameters enclosed with brackets ({}). For example, /getUserInfo/{userId}. Special characters, such as asterisks (*), percent signs (%), hyphens (-), and underscores (), are allowed. It can contain a maximum of 512 characters and must comply with URI specifications.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.> The value must comply with URI specifications. + |
+
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 + |
+
retry_count + |
+String + |
+Number of retry attempts to request the backend service. The default value is -1. The value ranges from -1 to 10. +Default: -1 + |
+
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 + |
+
|---|---|---|
origin + |
+String + |
+Parameter type. +
Enumeration values: +
|
+
name + |
+String + |
+Parameter name. +The parameter name must start with a letter and can only contain letters, digits, hyphens (-), underscores (_), and periods (.). +Minimum: 1 +Maximum: 32 + |
+
remark + |
+String + |
+Description, which can contain a maximum of 255 characters. + |
+
location + |
+String + |
+Parameter location. The value can be PATH, QUERY, or HEADER. +Enumeration values: +
|
+
value + |
+String + |
+Parameter value, which can contain a maximum of 255 characters. +If the origin type is REQUEST, the value of this parameter is the parameter name in req_params. +If the origin type is CONSTANT, the value is a constant. +If the origin type is SYSTEM, the value is a system parameter name. System parameters include gateway parameters, frontend authentication parameters, and backend authentication parameters. You can set the frontend or backend authentication parameters after enabling custom frontend or backend authentication. +The gateway parameters are as follows: +
Frontend authentication parameter: prefixed with "$context.authorizer.frontend.". For example, to return "aaa" upon successful custom authentication, set this parameter to "$context.authorizer.frontend.aaa". +Backend authentication parameter: prefixed with "$context.authorizer.backend.". For example, to return "aaa" upon successful custom authentication, set this parameter to "$context.authorizer.backend.aaa". + |
+
id + |
+String + |
+Parameter ID. + |
+
req_param_id + |
+String + |
+Request parameter ID. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
req_param_name + |
+String + |
+Input parameter name. This parameter is required if the policy type is param. + |
+
condition_type + |
+String + |
+Policy condition. +
This parameter is required if the policy type is param. +Enumeration values: +
|
+
condition_origin + |
+String + |
+Policy type. +
Enumeration values: +
|
+
condition_value + |
+String + |
+Condition value. + |
+
id + |
+String + |
+ID. + |
+
req_param_id + |
+String + |
+Input parameter ID. + |
+
req_param_location + |
+String + |
+Input parameter location. + |
+
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. + |
+
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. + |
+
Creating a web backend API
+{
+ "group_id" : "c77f5e81d9cb4424bf704ef2b0ac7600",
+ "match_mode" : "NORMAL",
+ "name" : "Api_http",
+ "auth_type" : "AUTHORIZER",
+ "authorizer_id" : "0d982c1ac3da493dae47627b6439fc5c",
+ "backend_type" : "HTTP",
+ "backend_api" : {
+ "url_domain" : "100.95.189.156:12346",
+ "req_protocol" : "HTTP",
+ "req_method" : "GET",
+ "req_uri" : "/test/benchmark",
+ "timeout" : 5000,
+ "retry_count" : "-1"
+ },
+ "req_protocol" : "HTTPS",
+ "req_uri" : "/test/http",
+ "remark" : "Web backend API",
+ "type" : 1,
+ "req_method" : "GET",
+ "result_normal_sample" : "Example success response",
+ "result_failure_sample" : "Example failure response",
+ "tags" : [ "webApi" ],
+ "req_params" : [ {
+ "name" : "query_demo",
+ "location" : "QUERY",
+ "type" : "STRING",
+ "required" : 1
+ }, {
+ "name" : "header-demo",
+ "location" : "HEADER",
+ "type" : "STRING",
+ "required" : 2
+ } ],
+ "backend_params" : [ {
+ "name" : "backHeader",
+ "value" : "header-demo",
+ "location" : "HEADER",
+ "origin" : "REQUEST"
+ }, {
+ "name" : "backQuery",
+ "value" : "query_demo",
+ "location" : "QUERY",
+ "origin" : "REQUEST"
+ }, {
+ "name" : "X-CONSTANT-HEADER",
+ "value" : "demo",
+ "location" : "HEADER",
+ "origin" : "CONSTANT",
+ "remark" : "constant_demo"
+ }, {
+ "name" : "app-id",
+ "value" : "$context.appId",
+ "location" : "HEADER",
+ "origin" : "SYSTEM",
+ "remark" : "App ID of the API caller"
+ } ]
+}
+Creating a FunctionGraph backend API
+{
+ "group_id" : "c77f5e81d9cb4424bf704ef2b0ac7600",
+ "match_mode" : "NORMAL",
+ "name" : "Api_function",
+ "auth_type" : "APP",
+ "backend_type" : "FUNCTION",
+ "func_info" : {
+ "authorizer_id" : "5b8cd3f06f004115aec69c58f57272c9",
+ "function_urn" : "'urn:fss:xx-xxx-7:73d69ae0cfcf460190522d06b60f05ad:function:default:auto_testfunc93749'",
+ "invocation_type" : "sync",
+ "network_type" : "V1",
+ "timeout" : 5000,
+ "version" : "latest",
+ "alias_urn" : "urn:fss:region01:73d69ae0cfcf460190522d06b60f05ad:function:default:auto_testfunc93749:!a1"
+ },
+ "req_protocol" : "HTTPS",
+ "req_uri" : "/test/function",
+ "remark" : "FunctionGraph backend API",
+ "type" : 1,
+ "req_method" : "GET",
+ "result_normal_sample" : "Example success response",
+ "result_failure_sample" : "Example failure response",
+ "tags" : [ "functionApi" ]
+}
+Creating a Mock backend API
+{
+ "group_id" : "c77f5e81d9cb4424bf704ef2b0ac7600",
+ "match_mode" : "SWA",
+ "name" : "Api_mock",
+ "auth_type" : "IAM",
+ "backend_type" : "MOCK",
+ "mock_info" : {
+ "result_content" : "mock success"
+ },
+ "policy_mocks" : [ {
+ "name" : "Mock policy backend",
+ "effect_mode" : "ANY",
+ "result_content" : "mock policy success",
+ "conditions" : [ {
+ "condition_origin" : "source",
+ "condition_value" : "1.0.1.0"
+ } ]
+ } ],
+ "req_protocol" : "HTTPS",
+ "req_uri" : "/test/mock",
+ "remark" : "Mock backend API",
+ "type" : 1,
+ "req_method" : "GET",
+ "result_normal_sample" : "Example success response",
+ "result_failure_sample" : "Example failure response",
+ "tags" : [ "mockApi" ]
+}
+Status code: 201
+Created
+Example 1
+{
+ "id" : "5f918d104dc84480a75166ba99efff21",
+ "tags" : [ "webApi" ],
+ "arrange_necessary" : 2,
+ "backend_type" : "HTTP",
+ "auth_type" : "AUTHORIZER",
+ "auth_opt" : {
+ "app_code_auth_type" : "DISABLE"
+ },
+ "authorizer_id" : "0d982c1ac3da493dae47627b6439fc5c",
+ "backend_api" : {
+ "update_time" : "2020-07-31T12:42:51.325312994Z",
+ "vpc_channel_status" : 2,
+ "url_domain" : "100.95.189.156:12346",
+ "req_protocol" : "HTTP",
+ "id" : "1ce8fda3586d4371bd83c955df37e102",
+ "req_method" : "GET",
+ "register_time" : "2020-07-31T12:42:51.325312721Z",
+ "req_uri" : "/benchmark",
+ "timeout" : 5000,
+ "status" : 1,
+ "retry_count" : "-1"
+ },
+ "cors" : false,
+ "status" : 1,
+ "group_name" : "api_group_001",
+ "group_id" : "c77f5e81d9cb4424bf704ef2b0ac7600",
+ "group_version" : "V1",
+ "response_id" : "981e6c8f847f47199a9faf4409b751a5",
+ "match_mode" : "NORMAL",
+ "name" : "Api_http",
+ "req_protocol" : "HTTPS",
+ "req_method" : "GET",
+ "req_uri" : "/test/http",
+ "type" : 1,
+ "result_normal_sample" : "Example success response",
+ "result_failure_sample" : "Example failure response",
+ "version" : "V0.0.1",
+ "register_time" : "2020-07-31T12:42:51.314357035Z",
+ "update_time" : "2020-07-31T12:42:51.314357324Z",
+ "remark" : "Web backend API",
+ "req_params" : [ {
+ "name" : "query_demo",
+ "location" : "QUERY",
+ "type" : "STRING",
+ "valid_enable" : 2,
+ "required" : 1,
+ "id" : "57c8bf3c97ef40ee94eace95dff30014",
+ "pass_through" : 1
+ }, {
+ "name" : "header-demo",
+ "location" : "HEADER",
+ "type" : "STRING",
+ "valid_enable" : 2,
+ "required" : 2,
+ "id" : "8d993be96980415faa6b1fb2ebd647e0",
+ "pass_through" : 1
+ } ],
+ "backend_params" : [ {
+ "name" : "backHeader",
+ "value" : "header-demo",
+ "location" : "HEADER",
+ "origin" : "REQUEST",
+ "id" : "709f0ea376b44aaf907aaaa37d8cce92",
+ "req_param_id" : "8d993be96980415faa6b1fb2ebd647e0"
+ }, {
+ "name" : "backQuery",
+ "value" : "query_demo",
+ "location" : "QUERY",
+ "origin" : "REQUEST",
+ "id" : "2f152d0fb54445039158d29c2a4f69ee",
+ "req_param_id" : "57c8bf3c97ef40ee94eace95dff30014"
+ }, {
+ "name" : "X-CONSTANT-HEADER",
+ "value" : "demo",
+ "location" : "HEADER",
+ "origin" : "CONSTANT",
+ "remark" : "constant_demo",
+ "id" : "20142102c6aa4f3c97d5fd6ef4010ac2"
+ }, {
+ "name" : "app-id",
+ "value" : "$context.appId",
+ "location" : "HEADER",
+ "origin" : "SYSTEM",
+ "remark" : "App ID of the API caller",
+ "id" : "a1349c61016e4d999ca783a50bfeee2b"
+ } ]
+}
+Example 2
+{
+ "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",
+ "func_info" : {
+ "id" : "c0740524cd4c40e3801a7afe5375f8b0",
+ "authorizer_id" : "5b8cd3f06f004115aec69c58f57272c9",
+ "function_urn" : "'urn:fss:xx-xxx-7:73d69ae0cfcf460190522d06b60f05ad:function:default:auto_testfunc93749'",
+ "invocation_type" : "sync",
+ "network_type" : "V1",
+ "timeout" : 5000,
+ "version" : "latest",
+ "alias_urn" : "urn:fss:region01:73d69ae0cfcf460190522d06b60f05ad:function:default:auto_testfunc00000:!a1",
+ "register_time" : "2020-08-02T15:36:19.897262803Z",
+ "update_time" : "2020-08-02T15:36:19.897262993Z",
+ "status" : 1
+ },
+ "cors" : false,
+ "req_protocol" : "HTTPS",
+ "req_uri" : "/test/function",
+ "remark" : "FunctionGraph backend API",
+ "type" : 1,
+ "version" : "V0.0.1",
+ "status" : 1,
+ "req_method" : "GET",
+ "result_normal_sample" : "Example success response",
+ "result_failure_sample" : "Example failure response",
+ "tags" : [ "functionApi" ],
+ "register_time" : "2020-08-02T15:36:19.892012381Z",
+ "update_time" : "2020-08-02T15:36:19.892012627Z"
+}
+Example 3
+{
+ "id" : "3a955b791bd24b1c9cd94c745f8d1aad",
+ "arrange_necessary" : 2,
+ "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",
+ "mock_info" : {
+ "id" : "e74bbc75825c4c38ae84ccab6bdc6175",
+ "result_content" : "mock success",
+ "update_time" : "2020-08-02T15:56:52.301790686Z",
+ "register_time" : "2020-08-02T15:56:52.301790367Z"
+ },
+ "policy_mocks" : [ {
+ "name" : "Mock policy backend",
+ "id" : "1cb05173a4c84b7d996e30145cce3c7d",
+ "effect_mode" : "ANY",
+ "result_content" : "mock policy success",
+ "conditions" : [ {
+ "condition_origin" : "source",
+ "condition_value" : "1.0.1.0",
+ "id" : "8650b3a94e7344df8251658d8aee1f6d"
+ } ]
+ } ],
+ "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:52.286099413Z",
+ "update_time" : "2020-08-02T15:56:52.286099715Z",
+ "status" : 1
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2011",
+ "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: 404
+Not Found
+{
+ "error_code" : "APIG.3019",
+ "error_msg" : "The function URN does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
201 + |
+Created + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to generate a random AppCode.
+PUT /v2/{project_id}/apigw/instances/{instance_id}/apps/{app_id}/app-codes
+ +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. + |
+
app_id + |
+Yes + |
+String + |
+App ID. + |
+
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. + |
+
Status code: 201
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
app_code + |
+String + |
+AppCode value. +The value can contain 64 to 180 characters, starting with a letter, plus sign (+), or slash (/). Only letters and the following special characters are allowed: +_!@#$%/= + |
+
id + |
+String + |
+ID. + |
+
app_id + |
+String + |
+App ID. + |
+
create_time + |
+String + |
+Creation 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. + |
+
None
+Status code: 201
+Created
+{
+ "app_code" : "fdc8d90a30174460a91ddacfa54d6f04c92e523a85cc4a1894f87cb13b6f572a",
+ "app_id" : "9ed8b7fe84224de681e7d7a5587e76dc",
+ "id" : "b3d34f746d0847fb95138670e10207ed",
+ "create_time" : "2020-07-24T02:31:45.790909295Z"
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName:app_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.3004",
+ "error_msg" : "App 9ed8b7fe84224de681e7d7a5587e76dc does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
201 + |
+Created + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to create an AppCode for an app for simple authentication.
+POST /v2/{project_id}/apigw/instances/{instance_id}/apps/{app_id}/app-codes
+ +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. + |
+
app_id + |
+Yes + |
+String + |
+App ID. + |
+
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
app_code + |
+Yes + |
+String + |
+AppCode value. +The value can contain 64 to 180 characters, starting with a letter, plus sign (+), or slash (/). Only letters and the following special characters are allowed: +_!@#$%/= + |
+
Status code: 201
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
app_code + |
+String + |
+AppCode value. +The value can contain 64 to 180 characters, starting with a letter, plus sign (+), or slash (/). Only letters and the following special characters are allowed: +_!@#$%/= + |
+
id + |
+String + |
+ID. + |
+
app_id + |
+String + |
+App ID. + |
+
create_time + |
+String + |
+Creation 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. + |
+
{
+ "app_code" : "GjOD3g80AABuuFeEJpVQADBlAjBh3UzC7W+gr4VJBB5BtJ4fdVOQoSvoji3gFxUDb5pWBz9wUcw9+8/bFZ1B/4pq29wCMQC0pQWX6zTndljDEl99As1pw+WntAU9xcq+ffagoH6zDpKUvdxV6Ezj8LcCcPZN6BU="
+}
+Status code: 201
+Created
+{
+ "app_code" : "GjOD3g80AABuuFeEJpVQADBlAjBh3UzC7W+gr4VJBB5BtJ4fdVOQoSvoji3gFxUDb5pWBz9wUcw9+8/bFZ1B/4pq29wCMQC0pQWX6zTndljDEl99As1pw+WntAU9xcq+ffagoH6zDpKUvdxV6Ezj8LcCcPZN6BU=",
+ "app_id" : "9ed8b7fe84224de681e7d7a5587e76dc",
+ "id" : "32dc8ca22d1b4b9cb94022186880576b",
+ "create_time" : "2020-07-24T02:37:24.835128293Z"
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName:app_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.3004",
+ "error_msg" : "App 9ed8b7fe84224de681e7d7a5587e76dc does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
201 + |
+Created + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+An app cannot access any APIs after being created. To access an API in a specific environment, bind the app to the API in the environment.
+POST /v2/{project_id}/apigw/instances/{instance_id}/app-auths
+ +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 + |
+
|---|---|---|---|
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
env_id + |
+Yes + |
+String + |
+ID of the environment in which the apps will be authorized. + |
+
app_ids + |
+Yes + |
+Array of strings + |
+App IDs. + |
+
api_ids + |
+Yes + |
+Array of strings + |
+API list. + |
+
Status code: 201
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
auths + |
+Array of ApiAuthRelations objects + |
+App authorization records. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
api_id + |
+String + |
+API ID. + |
+
auth_result + |
+AuthResult object + |
+Authorization result. + |
+
auth_time + |
+String + |
+Authorization time. + |
+
id + |
+String + |
+Authorization record ID. + |
+
app_id + |
+String + |
+App ID. + |
+
auth_role + |
+String + |
+Authorizer. +
Enumeration values: +
|
+
auth_tunnel + |
+String + |
+Authorization channel type. +
The default value is NORMAL. This parameter is not supported currently. +Enumeration values: +
|
+
auth_whitelist + |
+Array of strings + |
+Whitelist for the green channel. + |
+
auth_blacklist + |
+Array of strings + |
+Blacklist for the green channel. + |
+
visit_params + |
+String + |
+Access parameters. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
status + |
+String + |
+Authorization result. +
Enumeration values: +
|
+
error_msg + |
+String + |
+Error message. + |
+
error_code + |
+String + |
+Error code. + |
+
api_name + |
+String + |
+Name of the API for which authorization fails. + |
+
app_name + |
+String + |
+Name of the app that fails to be authorized. + |
+
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. + |
+
{
+ "env_id" : "DEFAULT_ENVIRONMENT_RELEASE_ID",
+ "app_ids" : [ "356de8eb7a8742168586e5daf5339965" ],
+ "api_ids" : [ "5f918d104dc84480a75166ba99efff21" ]
+}
+Status code: 201
+Created
+{
+ "auths" : [ {
+ "api_id" : "5f918d104dc84480a75166ba99efff21",
+ "auth_result" : {
+ "status" : "SUCCESS"
+ },
+ "auth_time" : "22020-08-04T04:02:22.482227344Z",
+ "id" : "dd29b33ae4394e3b924b582c6b40880b",
+ "app_id" : "356de8eb7a8742168586e5daf5339965",
+ "auth_role" : "PROVIDER",
+ "auth_tunnel" : "NORMAL"
+ } ]
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2011",
+ "error_msg" : "Invalid parameter value,parameterName:api_ids. 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.3004",
+ "error_msg" : "App 356de8eb7a8742168586e5daf5339965 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
201 + |
+Created + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to create a custom authorizer.
+POST /v2/{project_id}/apigw/instances/{instance_id}/authorizers
+ +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 + |
+
|---|---|---|---|
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
name + |
+Yes + |
+String + |
+Custom authorizer name. +It can contain 3 to 64 characters, starting with a letter. Only letters, digits, and underscores (_) are allowed. + |
+
type + |
+Yes + |
+String + |
+Custom authorizer type. +
Modification is not allowed. +Enumeration values: +
|
+
authorizer_type + |
+Yes + |
+String + |
+Value: FUNC. +Enumeration values: +
|
+
authorizer_uri + |
+Yes + |
+String + |
+Function URN. + |
+
authorizer_version + |
+No + |
+String + |
+Function version. +If both a function alias URN and version are passed, the alias URN will be used and the version will be ignored. +Maximum: 64 + |
+
authorizer_alias_uri + |
+No + |
+String + |
+Function alias URN. +If both a function alias URN and version are passed, the alias URN will be used and the version will be ignored. + |
+
identities + |
+No + |
+Array of Identity objects + |
+Identity source. + |
+
ttl + |
+No + |
+Integer + |
+Maximum cache age. + |
+
user_data + |
+No + |
+String + |
+User data. + |
+
ld_api_id + |
+No + |
+String + |
+Custom backend ID. +Currently, this parameter is not supported. + |
+
need_body + |
+No + |
+Boolean + |
+Indicates whether to send the body. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
name + |
+Yes + |
+String + |
+Parameter name. + |
+
location + |
+Yes + |
+String + |
+Parameter location. +Enumeration values: +
|
+
validation + |
+No + |
+String + |
+Parameter verification expression. The default value is null, indicating that no verification is performed. + |
+
Status code: 201
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
name + |
+String + |
+Custom authorizer name. +It can contain 3 to 64 characters, starting with a letter. Only letters, digits, and underscores (_) are allowed. + |
+
type + |
+String + |
+Custom authorizer type. +
Modification is not allowed. +Enumeration values: +
|
+
authorizer_type + |
+String + |
+Value: FUNC. +Enumeration values: +
|
+
authorizer_uri + |
+String + |
+Function URN. + |
+
authorizer_version + |
+String + |
+Function version. +If both a function alias URN and version are passed, the alias URN will be used and the version will be ignored. +Maximum: 64 + |
+
authorizer_alias_uri + |
+String + |
+Function alias URN. +If both a function alias URN and version are passed, the alias URN will be used and the version will be ignored. + |
+
identities + |
+Array of Identity objects + |
+Identity source. + |
+
ttl + |
+Integer + |
+Maximum cache age. + |
+
user_data + |
+String + |
+User data. + |
+
ld_api_id + |
+String + |
+Custom backend ID. +Currently, this parameter is not supported. + |
+
need_body + |
+Boolean + |
+Indicates whether to send the body. + |
+
id + |
+String + |
+Custom authorizer ID. + |
+
create_time + |
+String + |
+Creation time. + |
+
roma_app_id + |
+String + |
+ID of the application to which the custom authorizer belongs. +Currently, this parameter is not supported. + |
+
roma_app_name + |
+String + |
+Name of the application to which the custom authorizer belongs. +Currently, this parameter is not supported. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
name + |
+String + |
+Parameter name. + |
+
location + |
+String + |
+Parameter location. +Enumeration values: +
|
+
validation + |
+String + |
+Parameter verification expression. The default value is null, indicating that no verification is performed. + |
+
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. + |
+
{
+ "name" : "Authorizer_demo",
+ "type" : "FRONTEND",
+ "authorizer_type" : "FUNC",
+ "authorizer_uri" : "urn:fss:xx-xxx:106506b9a92342df9a5025fc12351cfc:function:defau:apigDemo_1592617458814",
+ "authorizer_version" : "v1",
+ "authorizer_alias_uri" : "urn:fss:xx-xxx-4:106506b9a92342df9a5025fc12351cfc:function:defau:apigDemo_1592617458814:!v1",
+ "identities" : [ {
+ "name" : "header",
+ "location" : "HEADER"
+ } ],
+ "user_data" : "authorizer_test"
+}
+Status code: 201
+Created
+{
+ "name" : "Authorizer_demo",
+ "type" : "FRONTEND",
+ "authorizer_type" : "FUNC",
+ "authorizer_uri" : "urn:fss:xx-xxx-4:106506b9a92342df9a5025fc12351cfc:function:defau:apigDemo_1592617458814",
+ "authorizer_version" : "v1",
+ "authorizer_alias_uri" : "urn:fss:xx-xxx-4:106506b9a92342df9a5025fc12351cfc:function:defau:apigDemo_1592617458814:!v1",
+ "identities" : [ {
+ "name" : "header",
+ "location" : "HEADER"
+ } ],
+ "ttl" : 0,
+ "user_data" : "authorizer_test",
+ "id" : "0d982c1ac3da493dae47627b6439fc5c",
+ "create_time" : "2020-07-31T11:55:43Z"
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2011",
+ "error_msg" : "Invalid parameter value,parameterName:type. 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.3019",
+ "error_msg" : "The function URN does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
201 + |
+Created + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+API providers can publish an API in different environments, such as the development, testing, and production environments.API information, such as the version, request address, and even request message, varies depending on the environment in which an API is published. For example, v1.0 of an API is published in the production environment, v1.1 in the testing environment, and v1.2 in the development environment.APIG provides environment management, enabling you to access APIG in different scenarios at minimal cost.
+POST /v2/{project_id}/apigw/instances/{instance_id}/envs
+ +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 + |
+
|---|---|---|---|
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
name + |
+Yes + |
+String + |
+Environment name, which can contain letters, digits, and underscores (_) and must start with a letter. +Minimum: 3 +Maximum: 64 + |
+
remark + |
+No + |
+String + |
+Description. +Maximum: 255 + |
+
Status code: 201
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
create_time + |
+String + |
+Creation time. + |
+
name + |
+String + |
+Environment name. + |
+
remark + |
+String + |
+Description. + |
+
id + |
+String + |
+Environment 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. + |
+
{
+ "name" : "DEV",
+ "remark" : "Development environment"
+}
+Status code: 201
+Created
+{
+ "create_time" : "2020-07-31T06:41:43.511347628Z",
+ "name" : "DEV",
+ "remark" : "Development environment",
+ "env_id" : "7a1ad0c350844ee69479b47df9a881cb"
+}
+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 Code + |
+Description + |
+
|---|---|
201 + |
+Created + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+Publishing an API in different environments may involve various variables, such as API service deployment address and request version.
+You can define environment variables when creating an API. When the API is called, the environment variables will be replaced with the variable values to distinguish environments.
+Environment variables are defined for an API group and apply to all APIs in the group.
+
Environment variable names must be unique for an API group in the same environment.
+Environment variable names are case-sensitive. For example, ABC and abc are two different variables.
+APIs that use environment variables cannot be debugged.
+You must enclose an environment variable in number signs (#) so that it can be replaced with the actual value of the environment in which the API is published. For example, if the URL of an API is https://#address#:8080 and the value of variable address is 192.168.1.5 in the RELEASE environment, the real URL of the API is https://192.168.1.5:8080 after publishing.
+POST /v2/{project_id}/apigw/instances/{instance_id}/env-variables
+ +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 + |
+
|---|---|---|---|
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
variable_value + |
+Yes + |
+String + |
+The variable value can contain 1 to 255 characters. Only letters, digits, and special characters (_-/.:) are allowed. + |
+
env_id + |
+Yes + |
+String + |
+Environment ID. +Minimum: 1 +Maximum: 65 + |
+
group_id + |
+Yes + |
+String + |
+API group ID. +Minimum: 1 +Maximum: 65 + |
+
variable_name + |
+Yes + |
+String + |
+Variable name, which can contain 3 to 32 characters, starting with a letter. Only letters, digits, hyphens (-), and underscores (_) are allowed. The variable name is equivalent to "#Name#" in API definitions. Characters between the number signs are case-sensitive. The variable name will be replaced with the variable value after API publication. + |
+
Status code: 201
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
variable_value + |
+String + |
+The variable value can contain 1 to 255 characters. Only letters, digits, and special characters (_-/.:) are allowed. + |
+
env_id + |
+String + |
+Environment ID. +Minimum: 1 +Maximum: 65 + |
+
group_id + |
+String + |
+API group ID. +Minimum: 1 +Maximum: 65 + |
+
variable_name + |
+String + |
+Variable name, which can contain 3 to 32 characters, starting with a letter. Only letters, digits, hyphens (-), and underscores (_) are allowed. The variable name is equivalent to "#Name#" in API definitions. Characters between the number signs are case-sensitive. The variable name will be replaced with the variable value after API publication. + |
+
id + |
+String + |
+Environment variable 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: 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. + |
+
{
+ "variable_name" : "address",
+ "variable_value" : "192.168.1.5",
+ "env_id" : "7a1ad0c350844ee69479b47df9a881cb",
+ "group_id" : "c77f5e81d9cb4424bf704ef2b0ac7600"
+}
+Status code: 201
+Created
+{
+ "variable_value" : "192.168.1.5",
+ "env_id" : "7a1ad0c350844ee69479b47df9a881cb",
+ "group_id" : "c77f5e81d9cb4424bf704ef2b0ac7600",
+ "id" : "25054838a624400bbf2267cf5b3a3f70",
+ "variable_name" : "address"
+}
+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.3003",
+ "error_msg" : "The instance does not exist;id:f0fa1789-3b76-433b-a787-9892951c620ec"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
201 + |
+Created + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to configure a feature for a gateway.
+The following table lists the supported features and configuration examples.
+ +| Feature Name | +Feature Description | +Configuration Example | +Parameter Name | +Parameter Description | +Default Value | +Value Range | +
|---|---|---|---|---|---|---|
| lts | +Reporting of Shubao access logs | +{"name":"lts","enable":true,"config": "{\"group_id\": ",\"topic_id\":\"\",\"log_group\":\"\",\"log_stream\":\"\"}"} | +(1) group_id (2) topic_id (3) log_group (4) log_stream | +(1) Log group ID. (2) Log stream ID. (3) Log group name. (4) Log stream name. | +- | +- | +
| ratelimit | +Request throttling limit configuration | +{"name":"ratelimit","enable":true,"config": "{\"api_limits\": 500}"} | +api_limits | +Default request throttling limit for APIs. Set this parameter properly to meet your service requirements. A small value may constantly throttle your services. | +200 calls/second | +1–1,000,000 calls/second | +
| request_body_size | +Configuration of the maximum request body size | +{"name":"request_body_size","enable":true,"config": "104857600"} | +request_body_size | +The maximum body size allowed for a request. | +12 MB | +1–9536 MB | +
| backend_timeout | +Maximum backend timeout configuration | +{"name":"backend_timeout","enable":true,"config": "{"max_timeout": 500}"} | +max_timeout | +Maximum timeout allowed for API Gateway to request the backend service. | +60,000 ms | +1–600,000 ms | +
| app_token | +app_token authentication | +{"name":"app_token","enable":true,"config": "{\"enable\": \"on\", \"app_token_expire_time\": 3600, \"app_token_uri\": \"/v1/apigw/oauth2/token\", \"refresh_token_expire_time\": 7200}"} | +(1) enable (2) app_token_expire_time (3) refresh_token_expire_time (4) app_token_uri (5) app_token_key | +(1) Whether to enable this feature. (2) Access token validity period. (3) Refresh token validity period. (4) URI for obtaining a token. (5) Token encryption key. | +(1) off (2) 3600s (3) 7200s (4) /v1/apigw/oauth2/token | +(1) on/off (2) 1–72,000s (3) 1–72,000s | +
| app_api_key | +app_api_key authentication | +{"name":"app_api_key","enable":true,"config": "on"} | +- | +- | +off | +on/off | +
| app_basic | +app_basic authentication | +{"name":"app_basic","enable":true,"config": "on"} | +- | +- | +off | +on/off | +
| app_secret | +app_secret authentication | +{"name":"app_secret","enable":true,"config": "on"} | +- | +- | +off | +on/off | +
| app_jwt | +app_jwt authentication | +{"name":"app_jwt","enable":true,"config": "{\"enable\": \"on\", \"auth_header\": \"Authorization\"}"} | +(1) enable (2) auth_header | +(1) Whether to enable app_jwt authentication. (2) app_jwt authentication header. | +(1) off (2) Authorization | +(1) on/off | +
| public_key | +public_key backend signatures | +{"name":"public_key","enable":true,"config": "{\"enable\": \"on\", \"public_key_uri_prefix\": \"/apigw/authadv/v2/public-key/\"}"} | +(1) enable (2) public_key_uri_prefix | +(1) Whether to enable app_jwt authentication. (2) URI prefix used for obtaining the public key. | +(1) off(2) /apigw/authadv/v2/public-key/ | +(1) on/off | +
| backend_token_allow | +Allowing tenants to transparently transmit tokens to the backend | +{"name":"backend_token_allow","enable":true,"config": "{\"backend_token_allow_users\": [\"user_name\"]}"} | +backend_token_allow_users | +Whitelist of tenants allowed to transparently transmit tokens to the backend. The value is a regular expression of domain names. | +- | +- | +
| backend_client_certificate | +Backend two-way authentication | +{"name":"backend_client_certificate","enable":true,"config": "{\"enable\": \"on\",\"ca\": \"\",\"content\": \"\",\"key\": \"\"}"} | +(1) enable (2) ca (3) content (4) key | +(1) Whether to enable this feature. (2) CA file of two-way authentication. (3) Two-way authentication file. (4) Private key of two-way authentication. | +(1) off | +(1) on/off | +
| ssl_ciphers | +HTTPS cipher suites | +{"name":"ssl_ciphers","enable":true,"config": "config": "{\"ssl_ciphers\": [\"ECDHE-ECDSA-AES256-GCM-SHA384\"]}"} | +ssl_ciphers | +Supported cipher suites. The ssl_ciphers parameter cannot be left blank and can contain only the options in the value range. | +- | +ECDHE-ECDSA-AES256-GCM-SHA384,ECDHE-RSA-AES256-GCM-SHA384,ECDHE-ECDSA-AES128-GCM-SHA256,ECDHE-RSA-AES128-GCM-SHA256,ECDHE-ECDSA-AES256-SHA384,ECDHE-RSA-AES256-SHA384,ECDHE-ECDSA-AES128-SHA256,ECDHE-RSA-AES128-SHA256 | +
| real_ip_from_xff | +Whether to use the X-Forwarded-For header to specify source IP addresses for access control and request throttling. | +{"name":"real_ip_from_xff","enable": true,"config": "{\"enable\": \"on\",\"xff_index\": 1}"} | +(1) enable (2) xff_index | +(1) Whether to enable this feature. (2) Index of the source IP address in the X-Forwarded-For header. (Negative numbers are allowed and –1 is the last index.) | +(1) off (2) -1 | +(1) on/off (2) Valid Int32 value | +
| app_route | +Whether to allow IP address access. | +{"name":"app_route","enable":true,"config": "on"} | +- | +- | +off | +on/off | +
| vpc_name_modifiable | +Load balance channel name modification | +{"name":"vpc_name_modifiable","enable":true,"config": "on"} | +- | +- | +on | +on/off | +
| default_group_host_trustlist | +Access to the DEFAULT group from IP addresses that are not inbound access addresses of the current gateway | +{"name":"default_group_host_trustlist","enable": true,"config": "{\"enable\":\"on\",\"hosts\":[\"123.2.2.2\",\"202.2.2.2\"]}"} | +(1) enable (2) hosts | +(1) Whether to enable this feature. (2) IP addresses that are not inbound access addresses of the current gateway. | +- | +(1) on/off | +
| throttle_strategy | +Whether to enable request throttling. | +{"name":"throttle_strategy","enable":true,"config": "{\"enable\": \"on\",\"strategy\": \"local\"}"} | +(1) enable (2) strategy | +(1) Whether to enable this feature. (2) Request throttling mode. | +(1) off | +(1) on/off (2) cluster/local | +
| custom_log | +Whether to print custom request headers, query strings, and cookies in logs. | +{"name":"custom_log","enable":true,"config": "{\"custom_logs\":[{\"location\":\"header\",\"name\":\"a1234\"}]}"} | +(1) custom_logs (2) location (3) name | +(1) Custom logs. (2) Location. (3) Name. | +- | +(1) Max. 10 items. (2) header/query/cookie | +
| real_ip_header_getter | +Whether to use a custom header to obtain source IP addresses. | +{"name":"real_ip_header_getter","enable":true,"config": "{\"enable\": \"on\",\"header_getter\": \"header:testIP\"}"} | +(1) enable (2) header_getter | +(1) Whether to enable this feature. (2) Custom header for obtaining source IP addresses. | +(1) off | +(1) on/off | +
| policy_cookie_param | +Whether to support cookies in backend policy conditions. | +{"name":"policy_cookie_param","enable":true,"config": "on"} | +- | +- | +off | +on/off | +
POST /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 + |
+
|---|---|---|---|
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
name + |
+Yes + |
+String + |
+Feature name. +Minimum: 1 +Maximum: 64 + |
+
enable + |
+Yes + |
+Boolean + |
+Indicates whether to enable the feature. + |
+
config + |
+No + |
+String + |
+Parameter configuration. + |
+
Status code: 201
+ +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. + |
+
{
+ "name" : "app_api_key",
+ "config" : "on",
+ "enable" : true
+}
+Status code: 201
+Created
+{
+ "config" : "on",
+ "enable" : true,
+ "id" : "db9a9260cd3e4a16a9b5747a65d3ffaa",
+ "instance_id" : "eddc4d25480b4cd6b512f270a1b8b341",
+ "name" : "app_api_key",
+ "update_time" : "2020-08-24T01:17:31.041984021Z"
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2000",
+ "error_msg" : "unrecognized feature app-api-key"
+}
+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 Code + |
+Description + |
+
|---|---|
201 + |
+Created + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to create a response for an API group.
+POST /v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id}/gateway-responses
+ +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. + |
+
group_id + |
+Yes + |
+String + |
+API group ID. + |
+
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
name + |
+No + |
+String + |
+Response name. + |
+
responses + |
+No + |
+Map<String,ResponseInfo> + |
+Response type definition, which includes a key and value. Options of the key: +
Each error type is in JSON format. + |
+
Status code: 201
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
name + |
+String + |
+Response name. + |
+
responses + |
+Map<String,ResponseInfoResp> + |
+Response type definition, which includes a key and value. Options of the key: +
Each error type is in JSON format. + |
+
id + |
+String + |
+Response ID. + |
+
default + |
+Boolean + |
+Indicates whether the group response is the default response. + |
+
create_time + |
+String + |
+Creation time. + |
+
update_time + |
+String + |
+Update time. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
status + |
+Integer + |
+HTTP status code of the response. + |
+
body + |
+String + |
+Response body template. + |
+
default + |
+Boolean + |
+Indicates whether the response is the default response. + |
+
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. + |
+
{
+ "name" : "response_demo"
+}
+Status code: 201
+Created
+{
+ "create_time" : "2020-08-12T14:52:02.829753306+08:00",
+ "update_time" : "2020-08-12T14:52:02.829753306+08:00",
+ "default" : false,
+ "id" : "e839b367e10f4ab19d1c5008e476b83a",
+ "name" : "response_demo",
+ "responses" : {
+ "ACCESS_DENIED" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 403
+ },
+ "AUTHORIZER_CONF_FAILURE" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 500
+ },
+ "AUTHORIZER_FAILURE" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 500
+ },
+ "AUTHORIZER_IDENTITIES_FAILURE" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 401
+ },
+ "AUTH_FAILURE" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 401
+ },
+ "AUTH_HEADER_MISSING" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 401
+ },
+ "BACKEND_TIMEOUT" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 504
+ },
+ "BACKEND_UNAVAILABLE" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 502
+ },
+ "DEFAULT_4XX" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true
+ },
+ "DEFAULT_5XX" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true
+ },
+ "NOT_FOUND" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 404
+ },
+ "REQUEST_PARAMETERS_FAILURE" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 400
+ },
+ "THROTTLED" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 429
+ },
+ "UNAUTHORIZED" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 401
+ }
+ }
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2011",
+ "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: 404
+Not Found
+{
+ "error_code" : "APIG.3001",
+ "error_msg" : "API group c77f5e81d9cb4424bf704ef2b0ac7600 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
201 + |
+Created + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to create a dedicated gateway.
+POST /v2/{project_id}/apigw/instances
+ +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. + |
+
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
description + |
+No + |
+String + |
+Gateway description. + |
+
maintain_begin + |
+No + |
+String + |
+Start time of the maintenance time window. It must be in the format "xx:00:00". The value of xx can be 02, 06, 10, 14, 18, or 22. +During the maintenance time period, O&M personnel perform maintenance on the gateway. During this period, services can still be used, but occasionally there may be temporary interruptions. Scheduled maintenance occurs infrequently (typically once every several months). + |
+
maintain_end + |
+No + |
+String + |
+End time of the maintenance time window. It must be in the format "xx:00:00". There is a 4-hour difference between the start time and end time. +During the maintenance time period, O&M personnel perform maintenance on the gateway. During this period, services can still be used, but occasionally there may be temporary interruptions. Scheduled maintenance occurs infrequently (typically once every several months). + |
+
instance_name + |
+Yes + |
+String + |
+Gateway name. +Minimum: 3 +Maximum: 64 + |
+
instance_id + |
+No + |
+String + |
+Gateway ID, which will be automatically generated if you do not specify this parameter. + |
+
spec_id + |
+Yes + |
+String + |
+Gateway edition. +
Enumeration values: +
|
+
vpc_id + |
+Yes + |
+String + |
+VPC ID. +You can obtain it in either of the following ways: +
|
+
subnet_id + |
+Yes + |
+String + |
+Subnet network ID. +You can obtain it in either of the following ways: +
|
+
security_group_id + |
+Yes + |
+String + |
+ID of the security group to which the gateway belongs. +You can obtain it in either of the following ways: +
|
+
eip_id + |
+No + |
+String + |
+EIP ID. +This parameter is required if public access is enabled for the gateway and loadbalancer_provider is set to lvs. After you bind an EIP to the gateway, users can access APIs in the gateway from public networks using the EIP. +To obtain an EIP ID, log in to the VPC console, and choose "Elastic IP and Bandwidth" > "EIPs" in the navigation pane. Click the name of the target EIP, and view the EIP ID on the displayed page. + |
+
enterprise_project_id + |
+No + |
+String + |
+Enterprise project ID. This parameter is required if you are using an enterprise account. +You can obtain it in either of the following ways: +
|
+
available_zone_ids + |
+Yes + |
+Array of strings + |
+AZs. +An AZ is a physical region where resources use independent power supply and networks. AZs are physically isolated but interconnected through an internal network. To enhance application availability, create gateways in different AZs. +To obtain AZ information, call the API used to query AZs. + |
+
bandwidth_size + |
+No + |
+Integer + |
+Outbound access bandwidth. +This parameter is required if public outbound access is enabled for the gateway. After you configure the bandwidth for the gateway, users can access resources on public networks. +Default: 5 + |
+
bandwidth_charging_mode + |
+No + |
+String + |
+Billing type of the public outbound access bandwidth. This parameter is required if public outbound access is enabled for the gateway. +
Default: bandwidth +Enumeration values: +
|
+
ipv6_enable + |
+No + |
+Boolean + |
+Indicates whether public access with an IPv6 address is supported. +Currently, IPv6 addresses are supported only in certain regions. + |
+
loadbalancer_provider + |
+No + |
+String + |
+Type of the load balancer used by the gateway. +
Default: lvs +Enumeration values: +
|
+
tags + |
+No + |
+Array of TmsKeyValue objects + |
+Tags. +A maximum of 20 tags can be created for a gateway. + |
+
vpcep_service_name + |
+No + |
+String + |
+Name of the VPC endpoint service. +It can contain a maximum of 16 characters, including letters, digits, underscores (_), and hyphens (-). +If this parameter is not specified, the system automatically generates a name in the "{region}.apig.{service_id}" format. +If this parameter is specified, the system automatically generates a name in the "{region}.{vpcep_service_name}.{service_id}" format. +After the gateway is created, you can modify this name on the Gateways > VPC Endpoints page. + |
+
ingress_bandwidth_size + |
+No + |
+Integer + |
+Public inbound access bandwidth. +This parameter is required if public inbound access is enabled for the gateway and loadbalancer_provider is set to elb. After you bind an EIP to the gateway, users can access APIs in the gateway from public networks using the EIP. +Default: 5 + |
+
ingress_bandwidth_charging_mode + |
+No + |
+String + |
+Billing type of the public inbound access bandwidth. This parameter is required if public inbound access is enabled for the gateway and loadbalancer_provider is set to elb. +
Default: bandwidth +Enumeration values: +
|
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
key + |
+No + |
+String + |
+Key. +Include UTF-8 letters, digits, spaces, or special characters (_.:=+-@). +Do not start with _sys_ because it is a system label. +Minimum: 1 +Maximum: 128 + |
+
value + |
+No + |
+String + |
+Value. +You can enter letters, digits, and spaces or other special characters (_.:/=+-@) in UTF-8 format. +Minimum: 0 +Maximum: 255 + |
+
Status code: 202
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
instance_id + |
+String + |
+Gateway ID. + |
+
message + |
+String + |
+Information about the gateway creation task. + |
+
job_id + |
+String + |
+Task 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: 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. + |
+
{
+ "available_zone_ids" : [ "xx-xxx-7b", "xx-xxx-7a" ],
+ "bandwidth_size" : 5,
+ "description" : "test create instance",
+ "eip_id" : "41f961ab-2bdd-4ca7-9b59-cfc4fcef10c9",
+ "enterprise_project_id" : "0",
+ "instance_name" : "apig-demo",
+ "maintain_begin" : "22:00:00",
+ "maintain_end" : "02:00:00",
+ "security_group_id" : "36d0ec18-bd10-4da7-86f3-ad7a5ddc55d7",
+ "spec_id" : "PROFESSIONAL",
+ "subnet_id" : "a938121c-11c4-4c91-b983-bc9acd347bb5",
+ "vpc_id" : "0957108c-257c-4ce0-9e93-527d279ce763"
+}
+Status code: 202
+Accepted
+{
+ "instance_id" : "6a7d71827fd54572b1f31aa9548fcc81",
+ "message" : "JOB_ASSIGNED_FOR_PROVISIONING_0003I:The job JOB-bdb370eb6f4c4c73b61b95a9da38beb5 has been assigned to the instance 6a7d71827fd54572b1f31aa9548fcc81 for running provisioning.",
+ "job_id" : "JOB-edbac2355fb7433e98f173ea2e452e2d"
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIC.7211",
+ "error_msg" : "Parameter value does not match the rules, parameter name[maintainBegin]"
+}
+Status code: 401
+Unauthorized
+{
+ "error_code" : "APIC.7102",
+ "error_msg" : "Incorrect token or token resolution failed"
+}
+Status code: 403
+Forbidden
+{
+ "error_code" : "APIC.7106",
+ "error_msg" : "No permissions to request for the method"
+}
+Status code: 404
+Not Found
+{
+ "error_code" : "APIC.7301",
+ "error_msg" : "Instance spec not found"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIC.9000",
+ "error_msg" : "Failed to request internal service"
+}
+Status Code + |
+Description + |
+
|---|---|
202 + |
+Accepted + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to publish an API or take an API offline.
+An API can be called only in an environment where the API has been published. APIs that have not been published cannot be called.
+You can remove an API from an environment in which it has been published. After this operation, the API can no longer be called in the environment.
+POST /v2/{project_id}/apigw/instances/{instance_id}/apis/action
+ +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 + |
+
|---|---|---|---|
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
action + |
+Yes + |
+String + |
+Operation to perform. +
Enumeration values: +
|
+
env_id + |
+Yes + |
+String + |
+ID of the environment in which the API will be published. + |
+
api_id + |
+Yes + |
+String + |
+ID of the API to be published or taken offline. + |
+
remark + |
+No + |
+String + |
+Description about the publishing. It cannot exceed 255 characters. + |
+
Status code: 201
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
publish_id + |
+String + |
+Publication record ID. + |
+
api_id + |
+String + |
+API ID. + |
+
api_name + |
+String + |
+API name. + |
+
env_id + |
+String + |
+ID of the environment in which the API has been published. + |
+
remark + |
+String + |
+Description about the publication. + |
+
publish_time + |
+String + |
+Publication time. + |
+
version_id + |
+String + |
+API version currently in use. + |
+
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. + |
+
{
+ "action" : "online",
+ "api_id" : "5f918d104dc84480a75166ba99efff21",
+ "env_id" : "DEFAULT_ENVIRONMENT_RELEASE_ID"
+}
+Status code: 201
+Created
+{
+ "api_id" : "5f918d104dc84480a75166ba99efff21",
+ "env_id" : "DEFAULT_ENVIRONMENT_RELEASE_ID",
+ "publish_id" : "9191cdb430724d4b8586ed7f1b962ca2",
+ "publish_time" : "2020-08-03T01:36:00.592970615Z",
+ "version_id" : "ee1a5a38d3d3493abf1dc4ed6cacfa0b"
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2011",
+ "error_msg" : "Invalid parameter value,parameterName:action. 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.3002",
+ "error_msg" : "API 5f918d104dc84480a75166ba99efff21 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
201 + |
+Created + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+After an API goes online, the system attaches a request throttling policy to it by default. The API provider can change the request throttling policy based on the service capabilities and load of the API. A request throttling policy restricts the maximum number of times an API can be called within a specified period.
+POST /v2/{project_id}/apigw/instances/{instance_id}/throttles
+ +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 + |
+
|---|---|---|---|
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
app_call_limits + |
+No + |
+Integer + |
+Maximum number of times the API can be accessed by an app within the same period. The value of this parameter cannot exceed the user call limit. The maximum value is 2,147,483,647. Enter a positive integer. + |
+
name + |
+Yes + |
+String + |
+Request throttling policy name. It can contain 3 to 64 characters, starting with a letter. Only letters, digits, and underscores (_) are allowed. + |
+
time_unit + |
+Yes + |
+String + |
+Time unit for limiting the number of API calls. +Enumeration values: +
|
+
remark + |
+No + |
+String + |
+Description of the request throttling policy, which can contain a maximum of 255 characters. + |
+
api_call_limits + |
+Yes + |
+Integer + |
+Maximum number of times an API can be accessed within a specified period. The value of this parameter cannot exceed the default limit 200 TPS. You can change the default limit to meet service requirements. The maximum value is 2,147,483,647. Enter a positive integer. + |
+
type + |
+No + |
+Integer + |
+Type of the request throttling policy. +
Enumeration values: +
|
+
enable_adaptive_control + |
+No + |
+String + |
+Indicates whether to enable dynamic request throttling. +
Currently, this parameter is not supported. + |
+
user_call_limits + |
+No + |
+Integer + |
+Maximum number of times the API can be accessed by a user within the same period. The value of this parameter cannot exceed the Max. API Requests. The maximum value is 2,147,483,647. Enter a positive integer. + |
+
time_interval + |
+Yes + |
+Integer + |
+Period of time for limiting the number of API calls. This parameter applies with each API call limit. The maximum value is 2,147,483,647. Enter a positive integer. + |
+
ip_call_limits + |
+No + |
+Integer + |
+Maximum number of times the API can be accessed by an IP address within the same period. The value of this parameter cannot exceed the API call limit. The maximum value is 2,147,483,647. Enter a positive integer. + |
+
Status code: 201
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
app_call_limits + |
+Integer + |
+Maximum number of times the API can be accessed by an app within the same period. The value of this parameter cannot exceed the user call limit. The maximum value is 2,147,483,647. Enter a positive integer. + |
+
name + |
+String + |
+Request throttling policy name. It can contain 3 to 64 characters, starting with a letter. Only letters, digits, and underscores (_) are allowed. + |
+
time_unit + |
+String + |
+Time unit for limiting the number of API calls. +Enumeration values: +
|
+
remark + |
+String + |
+Description of the request throttling policy, which can contain a maximum of 255 characters. + |
+
api_call_limits + |
+Integer + |
+Maximum number of times an API can be accessed within a specified period. The value of this parameter cannot exceed the default limit 200 TPS. You can change the default limit to meet service requirements. The maximum value is 2,147,483,647. Enter a positive integer. + |
+
type + |
+Integer + |
+Type of the request throttling policy. +
Enumeration values: +
|
+
enable_adaptive_control + |
+String + |
+Indicates whether to enable dynamic request throttling. +
Currently, this parameter is not supported. + |
+
user_call_limits + |
+Integer + |
+Maximum number of times the API can be accessed by a user within the same period. The value of this parameter cannot exceed the Max. API Requests. The maximum value is 2,147,483,647. Enter a positive integer. + |
+
time_interval + |
+Integer + |
+Period of time for limiting the number of API calls. This parameter applies with each API call limit. The maximum value is 2,147,483,647. Enter a positive integer. + |
+
ip_call_limits + |
+Integer + |
+Maximum number of times the API can be accessed by an IP address within the same period. The value of this parameter cannot exceed the API call limit. The maximum value is 2,147,483,647. Enter a positive integer. + |
+
id + |
+String + |
+Request throttling policy ID. + |
+
bind_num + |
+Integer + |
+Number of APIs to which the request throttling policy has been bound. + |
+
is_inclu_special_throttle + |
+Integer + |
+Indicates whether an excluded request throttling configuration has been created. +
Enumeration values: +
|
+
create_time + |
+String + |
+Creation 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: 500
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
error_code + |
+String + |
+Error code. + |
+
error_msg + |
+String + |
+Error message. + |
+
{
+ "api_call_limits" : 800,
+ "app_call_limits" : 300,
+ "enable_adaptive_control" : "FALSE",
+ "ip_call_limits" : 600,
+ "name" : "throttle_demo",
+ "remark" : "Total: 800 calls/second; user: 500 calls/second; app: 300 calls/second; IP address: 600 calls/second",
+ "time_interval" : 1,
+ "time_unit" : "SECOND",
+ "type" : 1,
+ "user_call_limits" : 500
+}
+Status code: 201
+Created
+{
+ "name" : "throttle_demo",
+ "create_time" : "2020-07-31T08:44:02.205366118Z",
+ "remark" : "Total: 800 calls/second; user: 500 calls/second; app: 300 calls/second; IP address: 600 calls/second",
+ "type" : 1,
+ "time_interval" : 1,
+ "ip_call_limits" : 600,
+ "app_call_limits" : 300,
+ "time_unit" : "SECOND",
+ "api_call_limits" : 800,
+ "id" : "3437448ad06f4e0c91a224183116e965",
+ "user_call_limits" : 500,
+ "enable_adaptive_control" : "FALSE",
+ "bind_num" : 0,
+ "is_inclu_special_throttle" : 2
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2011",
+ "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 Code + |
+Description + |
+
|---|---|
201 + |
+Created + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+It is a good practice to provide a protection mechanism for APIs to ensure access security. For example, authenticating API request sources and denying the access from unauthorized sources.A signature key is a protection mechanism in case.Create a signature key and bind it to an API. When requesting the API, APIG uses the signature key to encrypt request parameter data and generate a signature. The backend service of the API verifies requests by using the signature. Unauthorized requests will be denied to protect the API against attacks from unknown sources.
+POST /v2/{project_id}/apigw/instances/{instance_id}/signs
+ +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 + |
+
|---|---|---|---|
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
name + |
+Yes + |
+String + |
+Signature key name. It can contain letters, digits, and underscores(_) and must start with a letter. +Minimum: 3 +Maximum: 64 + |
+
sign_type + |
+No + |
+String + |
+Signature key type. +
To use a basic signature key, ensure that your gateway version supports it. If your gateway does not support this type of signature key, contact technical support to upgrade your gateway. +To use a public_key signature key, ensure that the public_key feature has been configured for your gateway. For details, see "Appendix" > "Supported Features". If your gateway does not support this feature, contact technical support to enable it. +To use an AES signature key, ensure that your gateway version supports it. If your gateway does not support this type of signature key, contact technical support to upgrade your gateway. +Enumeration values: +
|
+
sign_key + |
+No + |
+String + |
+Signature key. +
|
+
sign_secret + |
+No + |
+String + |
+Signature secret. +
|
+
sign_algorithm + |
+No + |
+String + |
+Signature algorithm. Specify a signature algorithm only when using an AES signature key. By default, no algorithm is used. +Enumeration values: +
|
+
Status code: 201
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
name + |
+String + |
+Signature key name. It can contain letters, digits, and underscores(_) and must start with a letter. +Minimum: 3 +Maximum: 64 + |
+
sign_type + |
+String + |
+Signature key type. +
To use a basic signature key, ensure that your gateway version supports it. If your gateway does not support this type of signature key, contact technical support to upgrade your gateway. +To use a public_key signature key, ensure that the public_key feature has been configured for your gateway. For details, see "Appendix" > "Supported Features". If your gateway does not support this feature, contact technical support to enable it. +To use an AES signature key, ensure that your gateway version supports it. If your gateway does not support this type of signature key, contact technical support to upgrade your gateway. +Enumeration values: +
|
+
sign_key + |
+String + |
+Signature key. +
|
+
sign_secret + |
+String + |
+Signature secret. +
|
+
sign_algorithm + |
+String + |
+Signature algorithm. Specify a signature algorithm only when using an AES signature key. By default, no algorithm is used. +Enumeration values: +
|
+
update_time + |
+String + |
+Update time. + |
+
create_time + |
+String + |
+Creation time. + |
+
id + |
+String + |
+Signature key 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. + |
+
{
+ "name" : "signature_demo",
+ "sign_key" : "signkeysignkey",
+ "sign_secret" : "signsecretsignsecretsignsecretsignsecret"
+}
+Status code: 201
+Created
+{
+ "sign_secret" : "signsecretsignsecretsignsecretsignsecret",
+ "update_time" : "2020-08-03T03:39:38.119032888Z",
+ "create_time" : "2020-08-03T03:39:38.119032659Z",
+ "name" : "signature_demo",
+ "id" : "0b0e8f456b8742218af75f945307173c",
+ "sign_key" : "signkeysignkey",
+ "sign_type" : "hmac"
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2011",
+ "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 Code + |
+Description + |
+
|---|---|
201 + |
+Created + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+A request throttling policy controls the maximum number of times an API can be accessed within a specified period and the maximum numbers of times the API can be accessed by a tenant or an app within the same period.
+If necessary, you can create an excluded request throttling configuration to specify the threshold of API calls for a specific app. For example, if you set the API call threshold for all apps to 500 calls/minute, you can specify the API call threshold of app 1 as 800 calls/minute.
+You can add excluded apps or tenants to a request throttling policy.
+POST /v2/{project_id}/apigw/instances/{instance_id}/throttles/{throttle_id}/throttle-specials
+ +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. + |
+
throttle_id + |
+Yes + |
+String + |
+Request throttling policy ID. + |
+
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
call_limits + |
+Yes + |
+Integer + |
+Maximum number of times an excluded object can access an API within the throttling period. + |
+
object_id + |
+Yes + |
+String + |
+Excluded app ID or excluded account ID. + |
+
object_type + |
+Yes + |
+String + |
+Excluded object type. +Enumeration values: +
|
+
Status code: 201
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
id + |
+String + |
+Excluded configuration ID. + |
+
call_limits + |
+Integer + |
+Maximum number of times an excluded object can access an API within the throttling period. + |
+
apply_time + |
+String + |
+Throttling period. + |
+
app_name + |
+String + |
+App name. + |
+
app_id + |
+String + |
+App ID. + |
+
object_id + |
+String + |
+ID of an object specified in the excluded configuration. + |
+
object_type + |
+String + |
+Excluded object type, which can be APP or USER. + |
+
object_name + |
+String + |
+Name of an app or a tenant to which the excluded configuration applies. + |
+
throttle_id + |
+String + |
+Request throttling policy 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: 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. + |
+
{
+ "call_limits" : 150,
+ "object_id" : "356de8eb7a8742168586e5daf5339965",
+ "object_type" : "APP"
+}
+Status code: 201
+Created
+{
+ "call_limits" : 150,
+ "app_name" : "app_demo",
+ "object_name" : "app_demo",
+ "object_id" : "356de8eb7a8742168586e5daf5339965",
+ "throttle_id" : "3437448ad06f4e0c91a224183116e965",
+ "apply_time" : "2020-08-04T02:40:56.717710961Z",
+ "id" : "a3e9ff8db55544ed9db91d8b048770c0",
+ "app_id" : "356de8eb7a8742168586e5daf5339965",
+ "object_type" : "APP"
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2003",
+ "error_msg" : "The parameter value is too large,parameterName:call_limits. 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.3004",
+ "error_msg" : "App 356de8eb7a8742168586e5daf5339965 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
201 + |
+Created + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to create a VPC channel from APIG to your private VPC resources. Afterwards, when creating an API, you can configure your backend service to use this VPC channel so that APIG can directly access your private VPC resources.
+
You can create a maximum of 30 VPC channels.
+POST /v2/{project_id}/apigw/instances/{instance_id}/vpc-channels
+ +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 + |
+
|---|---|---|---|
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
name + |
+Yes + |
+String + |
+VPC channel name. +It can contain 3 to 64 characters, starting with a letter. Only letters, digits, hyphens (-), and underscores (_) are allowed. + |
+
port + |
+Yes + |
+Integer + |
+Host port of the VPC channel. +Range: 1–65535. + |
+
balance_strategy + |
+Yes + |
+Integer + |
+Distribution algorithm. +
Default: 1 +Enumeration values: +
|
+
member_type + |
+Yes + |
+String + |
+Member type of the VPC channel. +
Default: ecs +Enumeration values: +
|
+
type + |
+No + |
+Integer + |
+VPC channel type. The default type is server. +
Default: 2 +Enumeration values: +
|
+
dict_code + |
+No + |
+String + |
+Dictionary code of the VPC channel. +The value can contain letters, digits, hyphens (-), underscores (_), and periods (.). +This parameter is currently not supported. +Minimum: 3 +Maximum: 64 + |
+
member_groups + |
+No + |
+Array of MemberGroupCreate objects + |
+Backend server groups of the VPC channel. + |
+
members + |
+No + |
+Array of MemberInfo objects + |
+Backend instances of the VPC channel. + |
+
vpc_health_config + |
+No + |
+VpcHealthConfig object + |
+Health check details. + |
+
microservice_info + |
+No + |
+MicroServiceCreate object + |
+Microservice details. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
member_group_name + |
+Yes + |
+String + |
+Name of the backend server group of the VPC channel. + |
+
member_group_remark + |
+No + |
+String + |
+Description of the backend server group. + |
+
member_group_weight + |
+No + |
+Integer + |
+Weight of the backend server group. +If the server group contains servers and a weight has been set for it, the weight is automatically used to assign weights to servers in this group. +Minimum: 0 +Maximum: 100 + |
+
dict_code + |
+No + |
+String + |
+Dictionary code of the backend server group. +The value can contain letters, digits, hyphens (-), underscores (_), and periods (.). +Currently, this parameter is not supported. +Minimum: 3 +Maximum: 64 + |
+
microservice_version + |
+No + |
+String + |
+Version of the backend server group. This parameter is supported only when the VPC channel type is microservice. +Maximum: 64 + |
+
microservice_port + |
+No + |
+Integer + |
+Port of the backend server group. This parameter is supported only when the VPC channel type is microservice. If the port number is 0, all addresses in the backend server group use the original load balancing port to inherit logic. +Minimum: 0 +Maximum: 65535 + |
+
microservice_labels + |
+No + |
+Array of MicroserviceLabel objects + |
+Tags of the backend server group. This parameter is supported only when the VPC channel type is microservice. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
label_name + |
+Yes + |
+String + |
+Tag name. +Start and end with a letter or digit. Use only letters, digits, hyphens (-), underscores (_), and periods (.). (Max. 63 characters.) +Minimum: 1 +Maximum: 63 + |
+
label_value + |
+Yes + |
+String + |
+Tag value. +Start and end with a letter or digit. Use only letters, digits, hyphens (-), underscores (_), and periods (.). (Max. 63 characters.) +Minimum: 1 +Maximum: 63 + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
host + |
+No + |
+String + |
+Backend server address. +This parameter is required when the member type is IP address. +Maximum: 64 + |
+
weight + |
+No + |
+Integer + |
+Weight. +The higher the weight is, the more requests a backend service will receive. +Minimum: 0 +Maximum: 10000 + |
+
is_backup + |
+No + |
+Boolean + |
+Indicates whether the backend service is a standby node. +After you enable this function, the backend service serves as a standby node. It works only when all non-standby nodes are faulty. +This function is supported only when your gateway has been upgraded to the corresponding version. If your gateway does not support this function, contact technical support. +Default: false + |
+
member_group_name + |
+No + |
+String + |
+Backend server group name. The server group facilitates backend service address modification. + |
+
status + |
+No + |
+Integer + |
+Backend server status. +
Enumeration values: +
|
+
port + |
+No + |
+Integer + |
+Backend server port. +Minimum: 0 +Maximum: 65535 + |
+
ecs_id + |
+No + |
+String + |
+Backend server ID. +This parameter is required if the backend instance type is ecs. The value can contain 1 to 64 characters, including letters, digits, hyphens (-), and underscores (_). +Maximum: 255 + |
+
ecs_name + |
+No + |
+String + |
+Backend server name. +This parameter is required if the backend instance type is ecs. The value can contain 1 to 64 characters, including letters, digits, hyphens (-), underscores (_), and periods (.). +Maximum: 64 + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
protocol + |
+Yes + |
+String + |
+Protocol for performing health checks on backend servers in the VPC channel. +
Enumeration values: +
|
+
path + |
+No + |
+String + |
+Destination path for health checks. This parameter is required if protocol is set to http or https. + |
+
method + |
+No + |
+String + |
+Request method for health checks. +Default: GET +Enumeration values: +
|
+
port + |
+No + |
+Integer + |
+Destination port for health checks. If this parameter is not specified or set to 0, the host port of the VPC channel is used. +If this parameter is set to a non-zero value, the corresponding port is used for health checks. +Minimum: 0 +Maximum: 65535 + |
+
threshold_normal + |
+Yes + |
+Integer + |
+Healthy threshold. It refers to the number of consecutive successful checks required for a backend server to be considered healthy. +Minimum: 2 +Maximum: 10 + |
+
threshold_abnormal + |
+Yes + |
+Integer + |
+Unhealthy threshold, which refers to the number of consecutive failed checks required for a backend server to be considered unhealthy. +Minimum: 2 +Maximum: 10 + |
+
time_interval + |
+Yes + |
+Integer + |
+Interval between consecutive checks. Unit: s. The value must be greater than the value of timeout. +Minimum: 5 +Maximum: 300 + |
+
http_code + |
+No + |
+String + |
+Response codes for determining a successful HTTP response. The value can be any integer within 100–599 in one of the following formats: +
|
+
enable_client_ssl + |
+No + |
+Boolean + |
+Indicates whether to enable two-way authentication. If this function is enabled, the certificate specified in the backend_client_certificate configuration item of the gateway is used. +Default: false + |
+
status + |
+No + |
+Integer + |
+Health check result. +
Enumeration values: +
|
+
timeout + |
+Yes + |
+Integer + |
+Timeout for determining whether a health check fails. Unit: s. The value must be less than the value of time_interval. +Minimum: 2 +Maximum: 30 + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
service_type + |
+No + |
+String + |
+Microservice type. +
Enumeration values: +
|
+
cse_info + |
+No + |
+MicroServiceInfoCSEBase object + |
+CSE microservice details. This parameter is required if service_type is set to CSE. + |
+
cce_info + |
+No + |
+MicroServiceInfoCCEBase object + |
+CCE workload details. This parameter is required if service_type is set to CCE. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
engine_id + |
+Yes + |
+String + |
+Microservice engine ID. +Maximum: 64 + |
+
service_id + |
+Yes + |
+String + |
+Microservice ID. +Maximum: 64 + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
cluster_id + |
+Yes + |
+String + |
+CCE cluster ID. +Maximum: 64 + |
+
namespace + |
+Yes + |
+String + |
+Namespace. +Maximum: 64 + |
+
workload_type + |
+Yes + |
+String + |
+Workload type. +
Enumeration values: +
|
+
app_name + |
+Yes + |
+String + |
+App name. +Maximum: 64 + |
+
Status code: 201
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
name + |
+String + |
+VPC channel name. +It can contain 3 to 64 characters, starting with a letter. Only letters, digits, hyphens (-), and underscores (_) are allowed. + |
+
port + |
+Integer + |
+Host port of the VPC channel. +Range: 1–65535. + |
+
balance_strategy + |
+Integer + |
+Distribution algorithm. +
Default: 1 +Enumeration values: +
|
+
member_type + |
+String + |
+Member type of the VPC channel. +
Default: ecs +Enumeration values: +
|
+
type + |
+Integer + |
+VPC channel type. The default type is server. +
Default: 2 +Enumeration values: +
|
+
dict_code + |
+String + |
+Dictionary code of the VPC channel. +The value can contain letters, digits, hyphens (-), underscores (_), and periods (.). +This parameter is currently not supported. +Minimum: 3 +Maximum: 64 + |
+
create_time + |
+String + |
+Time when the VPC channel is created. + |
+
id + |
+String + |
+VPC channel ID. + |
+
status + |
+Integer + |
+VPC channel status. +
Enumeration values: +
|
+
member_groups + |
+Array of MemberGroupInfo objects + |
+Backend server groups. + |
+
microservice_info + |
+MicroServiceInfo object + |
+Microservice information. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
member_group_name + |
+String + |
+Name of the backend server group of the VPC channel. + |
+
member_group_remark + |
+String + |
+Description of the backend server group. + |
+
member_group_weight + |
+Integer + |
+Weight of the backend server group. +If the server group contains servers and a weight has been set for it, the weight is automatically used to assign weights to servers in this group. +Minimum: 0 +Maximum: 100 + |
+
dict_code + |
+String + |
+Dictionary code of the backend server group. +The value can contain letters, digits, hyphens (-), underscores (_), and periods (.). +Currently, this parameter is not supported. +Minimum: 3 +Maximum: 64 + |
+
microservice_version + |
+String + |
+Version of the backend server group. This parameter is supported only when the VPC channel type is microservice. +Maximum: 64 + |
+
microservice_port + |
+Integer + |
+Port of the backend server group. This parameter is supported only when the VPC channel type is microservice. If the port number is 0, all addresses in the backend server group use the original load balancing port to inherit logic. +Minimum: 0 +Maximum: 65535 + |
+
microservice_labels + |
+Array of MicroserviceLabel objects + |
+Tags of the backend server group. This parameter is supported only when the VPC channel type is microservice. + |
+
member_group_id + |
+String + |
+ID of the backend server group of the VPC channel. + |
+
create_time + |
+String + |
+Time when the backend server group is created. + |
+
update_time + |
+String + |
+Time when the backend server group is updated. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
label_name + |
+String + |
+Tag name. +Start and end with a letter or digit. Use only letters, digits, hyphens (-), underscores (_), and periods (.). (Max. 63 characters.) +Minimum: 1 +Maximum: 63 + |
+
label_value + |
+String + |
+Tag value. +Start and end with a letter or digit. Use only letters, digits, hyphens (-), underscores (_), and periods (.). (Max. 63 characters.) +Minimum: 1 +Maximum: 63 + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
id + |
+String + |
+Microservice ID. + |
+
instance_id + |
+String + |
+Gateway ID. + |
+
service_type + |
+String + |
+Microservice type. +
Enumeration values: +
|
+
cse_info + |
+MicroServiceInfoCSE object + |
+CSE microservice details. + |
+
cce_info + |
+MicroServiceInfoCCE object + |
+CCE microservice details. + |
+
update_time + |
+String + |
+Microservice update time. + |
+
create_time + |
+String + |
+Microservice creation time. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
engine_id + |
+String + |
+Microservice engine ID. +Maximum: 64 + |
+
service_id + |
+String + |
+Microservice ID. +Maximum: 64 + |
+
engine_name + |
+String + |
+Microservice engine name. + |
+
service_name + |
+String + |
+Microservice name. + |
+
register_address + |
+String + |
+Registration center address. + |
+
cse_app_id + |
+String + |
+App to which the microservice belongs. + |
+
version + |
+String + |
+Microservice version, which has been discarded and is reflected in the version of the backend server group. +Maximum: 64 + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
cluster_id + |
+String + |
+CCE cluster ID. +Maximum: 64 + |
+
namespace + |
+String + |
+Namespace. +Maximum: 64 + |
+
workload_type + |
+String + |
+Workload type. +
Enumeration values: +
|
+
app_name + |
+String + |
+App name. +Maximum: 64 + |
+
cluster_name + |
+String + |
+CCE cluster name. + |
+
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. + |
+
Creating a VPC channel of the server type
+{
+ "balance_strategy" : 1,
+ "member_type" : "ip",
+ "name" : "VPC_demo",
+ "port" : 22,
+ "type" : 2,
+ "vpc_health_config" : {
+ "http_code" : "200",
+ "path" : "/vpc/demo",
+ "port" : 22,
+ "protocol" : "http",
+ "threshold_abnormal" : 5,
+ "threshold_normal" : 2,
+ "time_interval" : 10,
+ "timeout" : 5,
+ "enable_client_ssl" : false
+ },
+ "member_groups" : [ {
+ "member_group_name" : "test",
+ "member_group_weight" : 1,
+ "member_group_remark" : "remark"
+ }, {
+ "member_group_name" : "default",
+ "member_group_weight" : 2,
+ "member_group_remark" : "remark"
+ } ],
+ "members" : [ {
+ "host" : "192.168.0.5",
+ "weight" : 1,
+ "member_group_name" : "test"
+ }, {
+ "host" : "192.168.1.124",
+ "weight" : 2,
+ "member_group_name" : "default"
+ } ]
+}
+Creating a VPC channel of the microservice type
+{
+ "balance_strategy" : 1,
+ "member_type" : "ip",
+ "name" : "VPC_demo",
+ "port" : 22,
+ "type" : 3,
+ "vpc_health_config" : {
+ "http_code" : "200",
+ "path" : "/vpc/demo",
+ "port" : 22,
+ "protocol" : "http",
+ "threshold_abnormal" : 5,
+ "threshold_normal" : 2,
+ "time_interval" : 10,
+ "timeout" : 5,
+ "enable_client_ssl" : false
+ },
+ "member_groups" : [ {
+ "member_group_name" : "test",
+ "member_group_weight" : 1,
+ "member_group_remark" : "remark",
+ "microservice_version" : "v1",
+ "microservice_port" : 80
+ }, {
+ "member_group_name" : "default",
+ "member_group_weight" : 2,
+ "member_group_remark" : "remark",
+ "microservice_version" : "v2",
+ "microservice_port" : 80,
+ "microservice_labels" : [ {
+ "label_name" : "cluster_id",
+ "label_value" : "c429700c-5dc4-482a-9c0e-99f6c0635113"
+ } ]
+ } ],
+ "members" : [ {
+ "host" : "192.168.0.5",
+ "weight" : 1,
+ "member_group_name" : "test"
+ }, {
+ "host" : "192.168.1.124",
+ "weight" : 2,
+ "member_group_name" : "default"
+ } ],
+ "microservice_info" : {
+ "service_type" : "CCE",
+ "cce_info" : {
+ "cluster_id" : "ab1485b4f91b45abbcd560be591f7309",
+ "namespace" : "default",
+ "workload_type" : "deployment",
+ "app_name" : "testapp"
+ }
+ }
+}
+Status code: 201
+Created
+Example 1
+{
+ "name" : "VPC_demo",
+ "id" : "105c6902457144a4820dff8b1ad63331",
+ "balance_strategy" : 1,
+ "dict_code" : "",
+ "create_time" : "2020-07-23T07:11:57.244829604Z",
+ "member_type" : "ip",
+ "port" : 22,
+ "status" : 1,
+ "member_groups" : [ {
+ "member_group_id" : "c1ce135c705c4066853a0460b318fe16",
+ "member_group_name" : "test",
+ "member_group_weight" : 1,
+ "member_group_remark" : "remark",
+ "create_time" : "2020-07-23T07:11:57.244829604Z",
+ "update_time" : "2020-07-23T07:11:57.244829604Z",
+ "microservice_version" : "",
+ "microservice_port" : 0
+ }, {
+ "member_group_id" : "c1ce135c705c4066853a0460b318fe17",
+ "member_group_name" : "default",
+ "member_group_weight" : 2,
+ "member_group_remark" : "remark",
+ "create_time" : "2020-07-23T07:11:57.244829604Z",
+ "update_time" : "2020-07-23T07:11:57.244829604Z",
+ "microservice_version" : "",
+ "microservice_port" : 0
+ } ],
+ "type" : 2,
+ "microservice_info" : {
+ "id" : "",
+ "instance_id" : "",
+ "service_type" : "",
+ "cse_info" : {
+ "cse_app_id" : "",
+ "engine_id" : "",
+ "engine_name" : "",
+ "register_address" : "",
+ "service_id" : "",
+ "service_name" : ""
+ },
+ "cce_info" : {
+ "cluster_id" : "",
+ "cluster_name" : "",
+ "namespace" : "",
+ "workload_type" : "",
+ "app_name" : ""
+ },
+ "create_time" : "",
+ "update_time" : ""
+ }
+}
+Example 2
+{
+ "name" : "VPC_demo",
+ "id" : "105c6902457144a4820dff8b1ad63331",
+ "balance_strategy" : 1,
+ "dict_code" : "",
+ "create_time" : "2020-07-23T07:11:57.244829604Z",
+ "member_type" : "ip",
+ "port" : 22,
+ "status" : 1,
+ "member_groups" : [ {
+ "member_group_id" : "c1ce135c705c4066853a0460b318fe16",
+ "member_group_name" : "test",
+ "member_group_weight" : 1,
+ "member_group_remark" : "remark",
+ "create_time" : "2020-07-23T07:11:57.244829604Z",
+ "update_time" : "2020-07-23T07:11:57.244829604Z",
+ "microservice_version" : "v1",
+ "microservice_port" : 80
+ }, {
+ "member_group_id" : "c1ce135c705c4066853a0460b318fe17",
+ "member_group_name" : "default",
+ "member_group_weight" : 2,
+ "member_group_remark" : "remark",
+ "create_time" : "2020-07-23T07:11:57.244829604Z",
+ "update_time" : "2020-07-23T07:11:57.244829604Z",
+ "microservice_version" : "v2",
+ "microservice_port" : 80,
+ "microservice_labels" : [ {
+ "label_name" : "cluster_id",
+ "label_value" : "c429700c-5dc4-482a-9c0e-99f6c0635113"
+ } ]
+ } ],
+ "type" : 3,
+ "microservice_info" : {
+ "id" : "9483afa235be45158a70c19ab817ac65",
+ "instance_id" : "eddc4d25480b4cd6b512f270a1b8b341",
+ "service_type" : "CCE",
+ "cse_info" : {
+ "cse_app_id" : "",
+ "engine_id" : "",
+ "engine_name" : "",
+ "register_address" : "",
+ "service_id" : "",
+ "service_name" : ""
+ },
+ "cce_info" : {
+ "cluster_id" : "ab1485b4f91b45abbcd560be591f7309",
+ "cluster_name" : "cce-test",
+ "namespace" : "default",
+ "workload_type" : "deployment",
+ "app_name" : "testapp"
+ },
+ "create_time" : "2020-07-23T07:11:57.244829604Z",
+ "update_time" : "2020-07-23T07:11:57.244829604Z"
+ }
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2001",
+ "error_msg" : "The request parameters must be specified, parameter name:members"
+}
+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 Code + |
+Description + |
+
|---|---|
201 + |
+Created + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to debug an API in a specified environment. The API caller must have the permissions required for accessing this API.
+POST /v2/{project_id}/apigw/instances/{instance_id}/apis/debug/{api_id}
+ +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. + |
+
api_id + |
+Yes + |
+String + |
+API ID. + |
+
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
body + |
+No + |
+String + |
+Message body, with a maximum of 2,097,152 bytes. + |
+
header + |
+No + |
+Map<String,Array<String>> + |
+Header parameters, with each value being a character string array. Each parameter name must meet the following requirements: +
NOTE:
+Each header name is normalized before use. For example, x-MY-hEaDer is normalized as X-My-Header. + |
+
method + |
+Yes + |
+String + |
+API request method. +Enumeration values: +
|
+
mode + |
+Yes + |
+String + |
+Debugging mode: +
NOTE:
+
+In DEVELOPER mode, the API caller must be the API provider. +In CONSUMER mode, the API caller must be the API provider or has been authorized to access the API in a specific environment. + |
+
path + |
+Yes + |
+String + |
+Request path of the API, starting with a slash (/) and containing up to 1024 characters. + NOTE:
+The request path must meet the requirements so that it can be correctly decoded after percent-encoding. + |
+
query + |
+No + |
+Map<String,Array<String>> + |
+Query strings, with each value being a character string array. Each parameter name must meet the following requirements: +
|
+
scheme + |
+Yes + |
+String + |
+Request protocol. +
|
+
app_key + |
+No + |
+String + |
+AppKey used in the debugging request. + |
+
app_secret + |
+No + |
+String + |
+AppSecret used in the debugging request. + |
+
domain + |
+No + |
+String + |
+Access domain name of the API. If no value is specified, one of the following default values will be used based on the mode: +
|
+
stage + |
+No + |
+String + |
+Running environment specified by the debugging request. This parameter is valid only when mode is set to CONSUMER. If this parameter is not specified, the following default value is used: +
|
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
request + |
+String + |
+Body of the debugging request. + |
+
response + |
+String + |
+Body of the debugging response, with a maximum of 2,097,152 bytes. Any content beyond this threshold will be truncated. + NOTE:
+Any content beyond the length limit will be truncated, and text [TRUNCATED] will be added to the response body. + |
+
latency + |
+Integer + |
+Debugging duration in milliseconds. + |
+
log + |
+String + |
+Debugging logs. + |
+
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. + |
+
{
+ "mode" : "DEVELOPER",
+ "scheme" : "HTTPS",
+ "method" : "GET",
+ "path" : "/test/mock"
+}
+Status code: 200
+OK
+{
+ "request" : "GET /test/mock HTTP/1.1\r\nHost: c77f5e81d9cb4424bf704ef2b0ac7600.apic.****.com\r\nUser-Agent: APIGatewayDebugClient/1.0\r\nX-Apig-Mode: debug\r\n\r\n",
+ "response" : "HTTP/1.1 200 OK\r\nTransfer-Encoding: chunked\r\nConnection: keep-alive\r\nContent-Type: application/json\r\nDate: Mon, 03 Aug 2020 02:51:22 GMT\r\nServer: api-gateway\r\nX-Apig-Latency: 0\r\nX-Apig-Ratelimit-Api: remain:99,limit:100,time:1 minute\r\nX-Apig-Ratelimit-Api-Allenv: remain:14999,limit:15000,time:1 second\r\nX-Request-Id: d4ec6e33148bdeffe8f55b43472d1251\r\n\r\nmock success",
+ "latency" : 5,
+ "log" : ""
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2011",
+ "error_msg" : "Invalid parameter value,parameterName:mode. 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.3002",
+ "error_msg" : "API 3a955b791bd24b1c9cd94c745f8d1aad does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to delete an access control policy. Access control policies bound to APIs cannot be deleted.
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/acls/{acl_id}
+ +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. + |
+
acl_id + |
+Yes + |
+String + |
+Access control policy ID. + |
+
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. + |
+
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. + |
+
None
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2011",
+ "error_msg" : "Invalid parameter value,parameterName: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.3006",
+ "error_msg" : "Access control policy 7eb619ecf2a24943b099833cd24a01ba does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
204 + |
+No Content + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to unbind an access control policy from an API.
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/acl-bindings/{acl_bindings_id}
+ +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. + |
+
acl_bindings_id + |
+Yes + |
+String + |
+Binding record ID. + |
+
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. + |
+
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. + |
+
None
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2011",
+ "error_msg" : "Invalid parameter value,parameterName: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.3010",
+ "error_msg" : "The access control policy binding record does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
204 + |
+No Content + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to remove an effective version of an API. The removed API cannot be called in the environment in which it took effect.
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/apis/versions/{version_id}
+ +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. + |
+
version_id + |
+Yes + |
+String + |
+API version. + |
+
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. + |
+
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. + |
+
None
+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.3022",
+ "error_msg" : "The API version does not exist,id:ee1a5a38d3d3493abf1dc4ed6cacfa0b"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
204 + |
+No Content + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to delete an API group.If the group to delete contains APIs, take the APIs offline and delete them.This operation will also delete all resources associated with the API group, including independent domain names and SSL certificates. It will unbind the external domain names from the subdomain name based on the CNAME resolution mode.
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id}
+ +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. + |
+
group_id + |
+Yes + |
+String + |
+API group ID. + |
+
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. + |
+
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. + |
+
None
+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.3001",
+ "error_msg" : "API group c77f5e81d9cb4424bf704ef2b0ac7600 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
204 + |
+No Content + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to delete an API.
+This operation will delete all related resources and binding relationships of the API, such as publication records, backend services, and app authorization information.
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/apis/{api_id}
+ +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. + |
+
api_id + |
+Yes + |
+String + |
+API ID. + |
+
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. + |
+
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. + |
+
None
+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.3002",
+ "error_msg" : "API 5f918d104dc84480a75166ba99efff21 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
204 + |
+No Content + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to delete an AppCode. Deleted AppCodes cannot be used for simple authentication.
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/apps/{app_id}/app-codes/{app_code_id}
+ +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. + |
+
app_id + |
+Yes + |
+String + |
+App ID. + |
+
app_code_id + |
+Yes + |
+String + |
+AppCode ID. + |
+
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. + |
+
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. + |
+
None
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName:app_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.3004",
+ "error_msg" : "App 9ed8b7fe84224de681e7d7a5587e76dc does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
204 + |
+No Content + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to delete an app.
+Deleted apps cannot call APIs.
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/apps/{app_id}
+ +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. + |
+
app_id + |
+Yes + |
+String + |
+App ID. + |
+
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. + |
+
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. + |
+
None
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName: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.3002",
+ "error_msg" : "App 356de8eb7a8742168586e5daf5339965 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
204 + |
+No Content + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to delete a backend instance from a specified VPC channel.
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/vpc-channels/{vpc_channel_id}/members/{member_id}
+ +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. + |
+
vpc_channel_id + |
+Yes + |
+String + |
+VPC channel ID. + |
+
member_id + |
+Yes + |
+String + |
+Backend instance ID. + |
+
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. + |
+
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. + |
+
None
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName: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.3024",
+ "error_msg" : "The VPC instance does not exist,id:be63c6260a1043888187f84af39c9f0e"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
204 + |
+No Content + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to delete a custom authorizer.
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/authorizers/{authorizer_id}
+ +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. + |
+
authorizer_id + |
+Yes + |
+String + |
+Custom authorizer ID. + |
+
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. + |
+
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. + |
+
None
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2011",
+ "error_msg" : "Invalid parameter value,parameterName: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.3081",
+ "error_msg" : "authorizer with id: 0d982c1ac3da493dae47627b6439fc5c not found"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
204 + |
+No Content + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to delete an environment.
+This operation will cause the APIs published in the environment to become inaccessible to relevant apps and users. Ensure that you have notified users of the deletion, or confirm that the APIs can be removed from the deleted environment.
+You cannot delete environments where APIs have been published.
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/envs/{env_id}
+ +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. + |
+
env_id + |
+Yes + |
+String + |
+Environment ID. + |
+
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. + |
+
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. + |
+
None
+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.3003",
+ "error_msg" : "Environment 7a1ad0c350844ee69479b47df9a881cb does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
204 + |
+No Content + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to delete an environment variable.
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/env-variables/{env_variable_id}
+ +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. + |
+
env_variable_id + |
+Yes + |
+String + |
+Environment variable ID. + |
+
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. + |
+
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. + |
+
None
+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.3011",
+ "error_msg" : "The environment variable does not exist, id: 25054838a624400bbf2267cf5b3a3f70"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
204 + |
+No Content + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to delete the response of an error type defined for an API group. After the response is deleted, the default response of the error type is used.
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id}/gateway-responses/{response_id}/{response_type}
+ +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. + |
+
group_id + |
+Yes + |
+String + |
+API group ID. + |
+
response_id + |
+Yes + |
+String + |
+Response ID. + |
+
response_type + |
+Yes + |
+String + |
+Error type. +Enumeration values: +
|
+
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. + |
+
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. + |
+
None
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName:group_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.3001",
+ "error_msg" : "API group c77f5e81d9cb4424bf704ef2b0ac7600 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
204 + |
+No Content + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to delete a group response of an API group.
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id}/gateway-responses/{response_id}
+ +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. + |
+
group_id + |
+Yes + |
+String + |
+API group ID. + |
+
response_id + |
+Yes + |
+String + |
+Response ID. + |
+
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. + |
+
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. + |
+
None
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName:group_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.3001",
+ "error_msg" : "API group c77f5e81d9cb4424bf704ef2b0ac7600 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
204 + |
+No Content + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to delete a dedicated gateway.
+DELETE /v2/{project_id}/apigw/instances/{instance_id}
+ +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 + |
+
|---|---|---|---|
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. + |
+
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. + |
+
None
+Status code: 401
+Unauthorized
+{
+ "error_code" : "APIC.7102",
+ "error_msg" : "Incorrect token or token resolution failed"
+}
+Status code: 403
+Forbidden
+{
+ "error_code" : "APIC.7106",
+ "error_msg" : "No permissions to request for the method"
+}
+Status code: 404
+Not Found
+{
+ "error_code" : "APIC.7302",
+ "error_msg" : "Instance not found"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIC.9000",
+ "error_msg" : "Failed to request internal service"
+}
+Status Code + |
+Description + |
+
|---|---|
204 + |
+No Content + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to delete a request throttling policy and all binding relationships between the policy and APIs.
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/throttles/{throttle_id}
+ +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. + |
+
throttle_id + |
+Yes + |
+String + |
+Request throttling policy ID. + |
+
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. + |
+
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. + |
+
None
+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.3005",
+ "error_msg" : "Request throttling policy 3437448ad06f4e0c91a224183116e965 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
204 + |
+No Content + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to delete a signature key. This operation will invalidate the signature key and unbind it from the APIs to which it was bound.
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/signs/{sign_id}
+ +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. + |
+
sign_id + |
+Yes + |
+String + |
+Signature key ID. + |
+
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. + |
+
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. + |
+
None
+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.3017",
+ "error_msg" : "Signature key 0b0e8f456b8742218af75f945307173c does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
204 + |
+No Content + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to delete an excluded configuration of a request throttling policy.
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/throttles/{throttle_id}/throttle-specials/{strategy_id}
+ +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. + |
+
throttle_id + |
+Yes + |
+String + |
+Request throttling policy ID. + |
+
strategy_id + |
+Yes + |
+String + |
+Excluded configuration ID. + |
+
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. + |
+
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. + |
+
None
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName: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.3013",
+ "error_msg" : "Excluded request throttling configuration a3e9ff8db55544ed9db91d8b048770c0 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
204 + |
+No Content + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to delete a VPC channel.
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/vpc-channels/{vpc_channel_id}
+ +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. + |
+
vpc_channel_id + |
+Yes + |
+String + |
+VPC channel ID. + |
+
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. + |
+
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. + |
+
None
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName: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.3023",
+ "error_msg" : "The VPC channel does not exist,id:56a7d7358e1b42459c9d730d65b14e59"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
204 + |
+No Content + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to delete a certificate that is no longer needed or has expired.
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id}/domains/{domain_id}/certificate/{certificate_id}
+ +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. + |
+
group_id + |
+Yes + |
+String + |
+API group ID. + |
+
domain_id + |
+Yes + |
+String + |
+Domain ID. + |
+
certificate_id + |
+Yes + |
+String + |
+Certificate ID. + |
+
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. + |
+
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. + |
+
None
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName:domain_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.3020",
+ "error_msg" : "The URL domain does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
204 + |
+No Content + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to unbind a custom domain name from an API group.
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id}/domains/{domain_id}
+ +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. + |
+
group_id + |
+Yes + |
+String + |
+API group ID. + |
+
domain_id + |
+Yes + |
+String + |
+Domain ID. + |
+
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. + |
+
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. + |
+
None
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.3474",
+ "error_msg" : "The API group ID in the URL does not match the API group to which the URL domain has been bound"
+}
+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.3020",
+ "error_msg" : "The URL domain does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
204 + |
+No Content + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to unbind a request throttling policy from an API.
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/throttle-bindings/{throttle_binding_id}
+ +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. + |
+
throttle_binding_id + |
+Yes + |
+String + |
+ID of a request throttling policy binding record. + |
+
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. + |
+
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. + |
+
None
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName: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.3012",
+ "error_msg" : "The request throttling policy binding record does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
204 + |
+No Content + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to unbind a signature key from an API.
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/sign-bindings/{sign_bindings_id}
+ +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. + |
+
sign_bindings_id + |
+Yes + |
+String + |
+Signature key binding record ID. + |
+
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. + |
+
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. + |
+
None
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName: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.3018",
+ "error_msg" : "The signature key binding record does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
204 + |
+No Content + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+Status Code + |
+Error Codes + |
+Error Message + |
+Description + |
+Solution + |
+
|---|---|---|---|---|
204 + |
+APIG.0000 + |
+Successful + |
+Successful + |
+You do not need to take any actions. + |
+
400 + |
+APIG.1119 + |
+No permissions to perform operations on this method. + |
+No permissions to perform operations on this method. + |
+Apply for the required permissions and try again. + |
+
400 + |
+APIG.1120 + |
+No permissions to create ELB channels. + |
+No permissions to create ELB channels. + |
+Ensure that the ELB channel belongs to your account. If you are an IAM user, apply for the required permissions. + |
+
400 + |
+APIG.1201 + |
+The resources belong to different tenants. + |
+The resources belong to different tenants. + |
+Ensure that the resources belong to the same tenant. + |
+
400 + |
+APIG.2000 + |
+Parameter error. + |
+Parameter error. + |
+Modify the request parameters based on the reasons stated in the API response. + |
+
400 + |
+APIG.2001 + |
+The request parameters must be specified. + |
+The request parameters must be specified. + |
+Set request parameters. + |
+
400 + |
+APIG.2002 + |
+The parameter value is too small. + |
+The parameter value is too small. + |
+Modify the request parameter. + |
+
400 + |
+APIG.2003 + |
+The parameter value is too large. + |
+The parameter value is too large. + |
+Modify the request parameter. + |
+
400 + |
+APIG.2004 + |
+The parameter value is outside the allowable range. + |
+The parameter value is outside the allowable range. + |
+Modify the request parameter. + |
+
400 + |
+APIG.2005 + |
+The parameter is too short. + |
+The parameter is too short. + |
+Modify the request parameter. + |
+
400 + |
+APIG.2006 + |
+The parameter is too long. + |
+The parameter is too long. + |
+Modify the request parameter. + |
+
400 + |
+APIG.2007 + |
+Invalid length. + |
+Invalid length. + |
+Modify the request parameter. + |
+
400 + |
+APIG.2008 + |
+Only letters are allowed. + |
+Only letters are allowed. + |
+Modify the request parameter. + |
+
400 + |
+APIG.2009 + |
+Only digits are allowed. + |
+Only digits are allowed. + |
+Modify the request parameter. + |
+
400 + |
+APIG.2010 + |
+Only letters and digits are allowed. + |
+Only letters and digits are allowed. + |
+Modify the request parameter. + |
+
400 + |
+APIG.2011 + |
+Invalid parameter value. + |
+Invalid parameter value. + |
+Modify the request parameter. + |
+
400 + |
+APIG.2012 + |
+Invalid parameter value. + |
+Invalid parameter value. + |
+Modify the request parameter. + |
+
400 + |
+APIG.2013 + |
+Only letters, digits, hyphens (-), and underscores (_) are allowed. + |
+Only letters, digits, hyphens (-), and underscores (_) are allowed. + |
+Modify the request parameter. + |
+
400 + |
+APIG.2014 + |
+Invalid email address. + |
+Invalid email address. + |
+Modify the request parameter. + |
+
400 + |
+APIG.2015 + |
+Invalid IP address. + |
+Invalid IP address. + |
+Modify the request parameter. + |
+
400 + |
+APIG.2016 + |
+The characters are not encoded using Base 64. + |
+The characters are not encoded using Base 64. + |
+Change the value of the request parameter to a Base 64-encoded character string. + |
+
400 + |
+APIG.2017 + |
+Invalid mobile number. + |
+Invalid mobile number. + |
+Modify the request parameter. + |
+
400 + |
+APIG.2018 + |
+Invalid telephone number. + |
+Invalid telephone number. + |
+Modify the request parameter. + |
+
400 + |
+APIG.2019 + |
+Invalid telephone or mobile number. + |
+Invalid telephone or mobile number. + |
+Modify the request parameter. + |
+
400 + |
+APIG.2020 + |
+Invalid postal code. + |
+Invalid postal code. + |
+Modify the request parameter. + |
+
400 + |
+APIG.2021 + |
+The URL domain is not included in the IP address whitelist. + |
+The URL domain is not included in the IP address whitelist. + |
+Modify the request parameter. + |
+
400 + |
+APIG.2022 + |
+The URL domain is included in the IP address blacklist. + |
+The URL domain is included in the IP address blacklist. + |
+Modify the request parameter. + |
+
400 + |
+APIG.2023 + |
+URL domain CNAME resolution failed. + |
+URL domain CNAME resolution failed. + |
+Register the CNAME resolution record of the domain name. + |
+
400 + |
+APIG.2024 + |
+Invalid URL domain. + |
+Invalid URL domain. + |
+Use a correct domain name. + |
+
400 + |
+APIG.2025 + |
+Invalid backend port number. + |
+Invalid backend port number. + |
+Use a correct port number. + |
+
400 + |
+APIG.2026 + |
+The request path parameters do not match the request URI. + |
+The request path parameters do not match the request URI. + |
+Add the parameters contained in the request path to the request parameters. + |
+
400 + |
+APIG.2027 + |
+The backend path parameters do not match the backend URI. + |
+The backend path parameters do not match the backend URI. + |
+Add the parameters contained in the backend request path to the backend parameters. + |
+
400 + |
+APIG.2028 + |
+The backend parameters are not mapped to the request parameters. + |
+The backend parameters are not mapped to the request parameters. + |
+Change the source of backend parameters to the corresponding request parameters. + |
+
400 + |
+APIG.2029 + |
+The default certificate already exists. + |
+The default certificate already exists. + |
+Contact technical support for assistance. + |
+
400 + |
+APIG.2030 + |
+Bad request for debugging the API. + |
+Bad request for debugging the API. + |
+Set correct API debugging parameters. + |
+
400 + |
+APIG.2034 + |
+The domain name has not been filed. File it first. + |
+The domain name has not been filed. File it first. + |
+Complete ICP filing for the domain name. + |
+
400 + |
+APIG.2035 + |
+The ICP Filing System is busy. Please try again later. + |
+The ICP Filing System is busy. Please try again later. + |
+Contact technical support for assistance. + |
+
400 + |
+APIG.2036 + |
+Only APIs with authorizer can have authorizer parameters + |
+Only APIs with authorizer can have authorizer parameters + |
+Delete unnecessary parameters. + |
+
400 + |
+APIG.2101 + |
+The certificate and private key do not match. + |
+The certificate and private key do not match. + |
+Use a certificate and private key that match each other. + |
+
400 + |
+APIG.2102 + |
+The certificate has expired. + |
+The certificate has expired. + |
+Use a valid certificate. + |
+
400 + |
+APIG.2103 + |
+The certificate common name does not match the domain name. + |
+The certificate common name does not match the domain name. + |
+Ensure that the domain name in the certificate is the same as a custom domain name. + |
+
400 + |
+APIG.2104 + |
+The certificate chain is not matched. + |
+The certificate chain is not matched. + |
+In a certificate chain, ensure that the server certificate is in the first place and followed by other certificates in sequence. + |
+
400 + |
+APIG.2105 + |
+Encrypted private keys are not supported. + |
+Encrypted private keys are not supported. + |
+Use unencrypted private keys. + |
+
400 + |
+APIG.2106 + |
+Invalid certificate or private key. + |
+Invalid certificate or private key. + |
+Use a correct certificate and private key. + |
+
400 + |
+APIG.3201 + |
+The API group name already exists. + |
+The API group name already exists. + |
+Use another name. + |
+
400 + |
+APIG.3202 + |
+The API name already exists. + |
+The API name already exists. + |
+Use another name. + |
+
400 + |
+APIG.3203 + |
+The app name already exists. + |
+The app name already exists. + |
+Use another name. + |
+
400 + |
+APIG.3204 + |
+The request throttling policy name already exists. + |
+The request throttling policy name already exists. + |
+Use another name. + |
+
400 + |
+APIG.3205 + |
+The environment name already exists. + |
+The environment name already exists. + |
+Use another name. + |
+
400 + |
+APIG.3206 + |
+The access control policy name already exists. + |
+The access control policy name already exists. + |
+Use another name. + |
+
400 + |
+APIG.3207 + |
+The signature key name already exists. + |
+The signature key name already exists. + |
+Use another name. + |
+
400 + |
+APIG.3208 + |
+The VPC channel name already exists. + |
+The VPC channel name already exists. + |
+Use another name. + |
+
400 + |
+APIG.3209 + |
+The parameter name already exists. + |
+The parameter name already exists. + |
+Use another name. + |
+
400 + |
+APIG.3210 + |
+The backend policy name already exists. + |
+The backend policy name already exists. + |
+Use another name. + |
+
400 + |
+APIG.3211 + |
+The authorizer name already exists + |
+The authorizer name already exists + |
+Use another name. + |
+
400 + |
+APIG.3212 + |
+The identity name already exists + |
+The identity name already exists + |
+Use another name. + |
+
400 + |
+APIG.3213 + |
+The API tag name already exists + |
+The API tag name already exists + |
+Use another name. + |
+
400 + |
+APIG.3216 + |
+The response name already exists + |
+The response name already exists + |
+Use another name. + |
+
400 + |
+APIG.3301 + |
+The API already exists. + |
+The API already exists. + |
+Change the request method and URL of the API. + |
+
400 + |
+APIG.3302 + |
+The excluded configuration already exists. + |
+The excluded configuration already exists. + |
+Use another name. + |
+
400 + |
+APIG.3303 + |
+The environment variable already exists. + |
+The environment variable already exists. + |
+Use another name. + |
+
400 + |
+APIG.3304 + |
+The purchasing order already exists. + |
+The purchasing order already exists. + |
+Contact technical support for assistance. + |
+
400 + |
+APIG.3305 + |
+The URL domain name already exists. + |
+The URL domain name already exists. + |
+Contact technical support for assistance. + |
+
400 + |
+APIG.3306 + |
+The IP address already exists. + |
+The IP address already exists. + |
+Contact technical support for assistance. + |
+
400 + |
+APIG.3308 + |
+The excluded request throttling configuration already exists. + |
+The excluded request throttling configuration already exists. + |
+Contact technical support for assistance. + |
+
400 + |
+APIG.3309 + |
+The operation has already been performed + |
+The operation has already been performed + |
+Contact technical support for assistance. + |
+
400 + |
+APIG.3310 + |
+The app key already exist + |
+The app key already exist + |
+Use another AppKey. + |
+
400 + |
+APIG.3316 + |
+The api auth relation already exists + |
+The api auth relation already exists + |
+Use another API or app. + |
+
400 + |
+APIG.3600 + |
+Json or Yaml format error. + |
+Json or Yaml format error. + |
+Check whether the file to be imported is in correct YAML or JSON format. + |
+
400 + |
+APIG.3601 + |
+The Swagger file version must be 2.0. + |
+The Swagger file version must be 2.0. + |
+Ensure that the Swagger file version is 2.0. + |
+
400 + |
+APIG.3602 + |
+Syntax error in the Swagger file. + |
+Syntax error in the Swagger file. + |
+Check for syntax errors in the Swagger file. + |
+
400 + |
+APIG.3603 + |
+The Swagger file content is too long. + |
+The Swagger file content is too long. + |
+Reduce the size of the Swagger file. + |
+
400 + |
+APIG.3608 + |
+Can not edit Apis from Api Designer + |
+Can not edit Apis from Api Designer + |
+Contact technical support for assistance. + |
+
400 + |
+APIG.3609 + |
+The input file is empty + |
+The input file is empty + |
+Use a file that is not empty. + |
+
401 + |
+APIG.1000 + |
+The token is missing. + |
+The token is missing. + |
+Access using a token. + |
+
401 + |
+APIG.1001 + |
+The token has expired. + |
+The token has expired. + |
+Obtain another token and try again. + |
+
401 + |
+APIG.1002 + |
+Incorrect token or token resolution failed. + |
+Incorrect token or token resolution failed. + |
+Use a correct token. + |
+
401 + |
+APIG.1003 + |
+The token does not contain project information. + |
+The token does not contain project information. + |
+Use a token containing project information. + |
+
401 + |
+APIG.1005 + |
+No permissions to request this method. + |
+No permissions to request this method. + |
+Use a token that contains the required permissions. + |
+
401 + |
+APIG.1007 + |
+The domain information is missing. + |
+The domain information is missing. + |
+Contact technical support for assistance. + |
+
401 + |
+APIG.1008 + |
+Unknown domain. + |
+Unknown domain. + |
+Contact technical support for assistance. + |
+
401 + |
+APIG.1009 + |
+The token does not contain user information. + |
+The token does not contain user information. + |
+Use a token containing user information. + |
+
401 + |
+APIG.1010 + |
+PDP server connection failed. + |
+PDP server connection failed. + |
+Contact technical support for assistance. + |
+
401 + |
+APIG.1011 + |
+You can request resources only after you complete real-name authentication. + |
+You can request resources only after you complete real-name authentication. + |
+Perform real-name authentication for your account and try again. + |
+
401 + |
+APIG.1012 + |
+Your account balance is insufficient. Top up your account. + |
+Your account balance is insufficient. Top up your account. + |
+Top up your account. + |
+
401 + |
+APIG.1013 + |
+Your account has been frozen. Some functions become unavailable. To unfreeze your account, contact customer service. + |
+Your account has been frozen. Some functions become unavailable. To unfreeze your account, contact customer service. + |
+Restore your account and try again. + |
+
403 + |
+APIG.1101 + |
+No permissions to perform operations on this API group. + |
+No permissions to perform operations on this API group. + |
+Ensure that the API group belongs to your account. If you are an IAM user, apply for the required permissions. + |
+
403 + |
+APIG.1102 + |
+No permissions to perform operations on this API. + |
+No permissions to perform operations on this API. + |
+Ensure that the API belongs to your account. If you are an IAM user, apply for the required permissions. + |
+
403 + |
+APIG.1103 + |
+No permissions to perform operations on this environment. + |
+No permissions to perform operations on this environment. + |
+Ensure that the environment belongs to your account. If you are an IAM user, apply for the required permissions. + |
+
403 + |
+APIG.1104 + |
+No permissions to perform operations on this app. + |
+No permissions to perform operations on this app. + |
+Ensure that the app belongs to your account. If you are an IAM user, apply for the required permissions. + |
+
403 + |
+APIG.1105 + |
+No permissions to perform operations on this request throttling policy. + |
+No permissions to perform operations on this request throttling policy. + |
+Ensure that the request throttling policy belongs to your account. If you are an IAM user, apply for the required permissions. + |
+
403 + |
+APIG.1106 + |
+No permissions to perform operations on this access control policy. + |
+No permissions to perform operations on this access control policy. + |
+Ensure that the access control policy belongs to your account. If you are an IAM user, apply for the required permissions. + |
+
403 + |
+APIG.1107 + |
+No permissions to perform operations on this configuration. + |
+No permissions to perform operations on this configuration. + |
+Contact technical support for assistance. + |
+
403 + |
+APIG.1108 + |
+No permissions to perform operations on this excluded configuration. + |
+No permissions to perform operations on this excluded configuration. + |
+Contact technical support for assistance. + |
+
403 + |
+APIG.1109 + |
+No permissions to perform operations on this app authorization record. + |
+No permissions to perform operations on this app authorization record. + |
+Ensure that the app authorization information belongs to your account. If you are an IAM user, apply for the required permissions. + |
+
403 + |
+APIG.1110 + |
+No permissions to perform operations on this environment variable. + |
+No permissions to perform operations on this environment variable. + |
+Ensure that the environment variable belongs to your account. If you are an IAM user, apply for the required permissions. + |
+
403 + |
+APIG.1111 + |
+No permissions to perform operations on this subscription record. + |
+No permissions to perform operations on this subscription record. + |
+Ensure that the subscription belongs to your account. If you are an IAM user, apply for the required permissions. + |
+
403 + |
+APIG.1112 + |
+No permissions to perform operations on this signature key. + |
+No permissions to perform operations on this signature key. + |
+Ensure that the signature key belongs to your account. If you are an IAM user, apply for the required permissions. + |
+
403 + |
+APIG.1113 + |
+No permissions to perform operations on this VPC channel. + |
+No permissions to perform operations on this VPC channel. + |
+Ensure that the VPC channel belongs to your account. If you are an IAM user, apply for the required permissions. + |
+
403 + |
+APIG.1115 + |
+No permissions to perform operations on this certificate. + |
+No permissions to perform operations on this certificate. + |
+Ensure that the certificate belongs to your account. If you are an IAM user, apply for the required permissions. + |
+
403 + |
+APIG.1116 + |
+No permissions to perform operations on this on-sale API. + |
+No permissions to perform operations on this on-sale API. + |
+Ensure that the API belongs to your account. If you are an IAM user, apply for the required permissions. + |
+
403 + |
+APIG.1136 + |
+no authority to operate instance + |
+no authority to operate instance + |
+Contact technical support for assistance. + |
+
403 + |
+APIG.1137 + |
+No permissions to perform operations on this authorizer + |
+No permissions to perform operations on this authorizer + |
+Ensure that the custom authorizer belongs to your account. If you are an IAM user, apply for the required permissions. + |
+
403 + |
+APIG.1140 + |
+No permissions to perform operations on this feature + |
+No permissions to perform operations on this feature + |
+Ensure that the feature belongs to your account. If you are an IAM user, apply for the required permissions. + |
+
403 + |
+APIG.1200 + |
+No permissions to perform operations on this API swagger doc + |
+No permissions to perform operations on this API swagger doc + |
+Ensure that the Swagger file belongs to your account. If you are an IAM user, apply for the required permissions. + |
+
403 + |
+APIG.3100 + |
+The number of resources exceeds the maximum allowed limit. + |
+The number of resources exceeds the maximum allowed limit. + |
+Contact technical support to increase the quota. + |
+
403 + |
+APIG.3101 + |
+The number of API groups exceeds the maximum allowed limit. + |
+The number of API groups exceeds the maximum allowed limit. + |
+Contact technical support to increase the quota. + |
+
403 + |
+APIG.3102 + |
+The number of APIs exceeds the maximum allowed limit. + |
+The number of APIs exceeds the maximum allowed limit. + |
+Contact technical support to increase the quota. + |
+
403 + |
+APIG.3103 + |
+The number of apps exceeds the maximum allowed limit. + |
+The number of apps exceeds the maximum allowed limit. + |
+Contact technical support to increase the quota. + |
+
403 + |
+APIG.3104 + |
+The number of environments exceeds the maximum allowed limit. + |
+The number of environments exceeds the maximum allowed limit. + |
+Contact technical support to increase the quota. + |
+
403 + |
+APIG.3105 + |
+The number of signature keys exceeds the maximum allowed limit. + |
+The number of signature keys exceeds the maximum allowed limit. + |
+Contact technical support to increase the quota. + |
+
403 + |
+APIG.3106 + |
+The number of variables exceeds the maximum allowed limit. + |
+The number of variables exceeds the maximum allowed limit. + |
+Contact technical support to increase the quota. + |
+
403 + |
+APIG.3107 + |
+The number of request throttling policies exceeds the maximum allowed limit. + |
+The number of request throttling policies exceeds the maximum allowed limit. + |
+Contact technical support to increase the quota. + |
+
403 + |
+APIG.3108 + |
+The number of domain names exceeds the maximum allowed limit. + |
+The number of domain names exceeds the maximum allowed limit. + |
+Contact technical support to increase the quota. + |
+
403 + |
+APIG.3109 + |
+The number of VPC channels exceeds the maximum allowed limit. + |
+The number of VPC channels exceeds the maximum allowed limit. + |
+Contact technical support to increase the quota. + |
+
403 + |
+APIG.3110 + |
+The number of instances exceeds the maximum allowed limit. + |
+The number of instances exceeds the maximum allowed limit. + |
+Contact technical support to increase the quota. + |
+
403 + |
+APIG.3111 + |
+The number of parameters in req_params exceeds the maximum allowed limit. + |
+The number of parameters in req_params exceeds the maximum allowed limit. + |
+Contact technical support to increase the quota. + |
+
403 + |
+APIG.3112 + |
+The number of access control policies exceeds the maximum allowed limit. + |
+The number of access control policies exceeds the maximum allowed limit. + |
+Contact technical support to increase the quota. + |
+
403 + |
+APIG.3113 + |
+The maximum number of API backend policies has been reached. + |
+The maximum number of API backend policies has been reached. + |
+Contact technical support to increase the quota. + |
+
403 + |
+APIG.3114 + |
+The maximum number of policy conditions has been reached. + |
+The maximum number of policy conditions has been reached. + |
+Contact technical support to increase the quota. + |
+
403 + |
+APIG.3116 + |
+The number of authorizer exceeds the maximum allowed limit + |
+The number of authorizer exceeds the maximum allowed limit + |
+Contact technical support to increase the quota. + |
+
403 + |
+APIG.3117 + |
+The number of identity exceeds the maximum allowed limit + |
+The number of identity exceeds the maximum allowed limit + |
+Contact technical support to increase the quota. + |
+
403 + |
+APIG.3125 + |
+The maximum number of APIs for one API group has been reached. + |
+The maximum number of APIs for one API group has been reached. + |
+Contact technical support to increase the quota. + |
+
403 + |
+APIG.3127 + |
+The number of APIs has reached the upper limit. A maximum of xxx APIs can be imported at a time. + |
+The number of APIs has reached the upper limit. A maximum of xxx APIs can be imported at a time. + |
+Reduce the number of APIs to import. + |
+
403 + |
+APIG.3131 + |
+The number of APP codes exceeds the maximum allowed limit + |
+The number of APP codes exceeds the maximum allowed limit + |
+Contact technical support to increase the quota. + |
+
403 + |
+APIG.3132 + |
+The number of API swaggers for one API group exceeds the maximum allowed limit + |
+The number of API swaggers for one API group exceeds the maximum allowed limit + |
+Contact technical support to increase the quota. + |
+
403 + |
+APIG.3133 + |
+The number of API tags exceeds the maximum allowed limit + |
+The number of API tags exceeds the maximum allowed limit + |
+Contact technical support to increase the quota. + |
+
403 + |
+APIG.3136 + |
+The number of responses exceeds the maximum allowed limit + |
+The number of responses exceeds the maximum allowed limit + |
+Contact technical support to increase the quota. + |
+
403 + |
+APIG.3411 + |
+The APIs belong to different tenants. + |
+The APIs belong to different tenants. + |
+This operation is not allowed. + |
+
403 + |
+APIG.3412 + |
+The API provider has been frozen. + |
+The API provider has been frozen. + |
+Contact technical support for assistance. + |
+
403 + |
+APIG.3414 + |
+The VPC channel is already being used by another API. + |
+The VPC channel is already being used by another API. + |
+Delete the API associated with the VPC channel and then delete the VPC channel. + |
+
403 + |
+APIG.3415 + |
+The API group cannot be deleted because it contains APIs. + |
+The API group cannot be deleted because it contains APIs. + |
+Delete the APIs in the API group and then delete the API group. + |
+
403 + |
+APIG.3416 + |
+The API cannot be deleted because it has been published. + |
+The API cannot be deleted because it has been published. + |
+Take the API offline and then delete it. + |
+
403 + |
+APIG.3418 + |
+The environment contains published APIs. + |
+The environment contains published APIs. + |
+This operation is not allowed. + |
+
403 + |
+APIG.3420 + |
+The API group is no longer available on the marketplace. + |
+The API group is no longer available on the marketplace. + |
+Check whether the API group has been listed on the marketplace. + |
+
403 + |
+APIG.3447 + |
+The Acl Strategy has already binded to APIs. + |
+The Acl Strategy has already binded to APIs. + |
+Delete the APIs bound with the access control policy and then delete the access control policy. + |
+
403 + |
+APIG.3451 + |
+The Throttle Strategy has already binded to APIs. + |
+The Throttle Strategy has already binded to APIs. + |
+Delete the APIs bound with the request throttling policy and then delete the request throttling policy. + |
+
403 + |
+APIG.3471 + |
+No permissions to perform operations on this type of VPC channel. + |
+No permissions to perform operations on this type of VPC channel. + |
+This operation is not allowed. + |
+
403 + |
+APIG.3472 + |
+The load balancer is already being used by another VPC channel. + |
+The load balancer is already being used by another VPC channel. + |
+Unbind the load balancer from the VPC channel. + |
+
403 + |
+APIG.3473 + |
+The load balancer has already been bound to another endpoint service. + |
+The load balancer has already been bound to another endpoint service. + |
+This operation is not allowed. + |
+
403 + |
+APIG.3474 + |
+The API group ID in the URL does not match the API group to which the URL domain has been bound. + |
+The API group ID in the URL does not match the API group to which the URL domain has been bound. + |
+Change the API group specified in the URL to the API group associated with the domain name. + |
+
404 + |
+APIG.3001 + |
+The API group does not exist. + |
+The API group does not exist. + |
+Check whether the API group exists. + |
+
404 + |
+APIG.3002 + |
+The API does not exist. + |
+The API does not exist. + |
+Check whether the API exists. + |
+
404 + |
+APIG.3003 + |
+The environment does not exist. + |
+The environment does not exist. + |
+Check whether the environment exists. + |
+
404 + |
+APIG.3004 + |
+The app does not exist. + |
+The app does not exist. + |
+Check whether the app exists. + |
+
404 + |
+APIG.3005 + |
+The request throttling policy does not exist. + |
+The request throttling policy does not exist. + |
+Check whether the request throttling policy exists. + |
+
404 + |
+APIG.3006 + |
+The access control policy does not exist. + |
+The access control policy does not exist. + |
+Check whether the access control policy exists. + |
+
404 + |
+APIG.3007 + |
+The configuration does not exist. + |
+The configuration does not exist. + |
+Check whether the configuration exists. + |
+
404 + |
+APIG.3008 + |
+The excluded configuration does not exist. + |
+The excluded configuration does not exist. + |
+Check whether the excluded configuration exists. + |
+
404 + |
+APIG.3009 + |
+The app authorization record does not exist. + |
+The app authorization record does not exist. + |
+Check whether the app authorization record exists. + |
+
404 + |
+APIG.3010 + |
+The access control policy binding record does not exist. + |
+The access control policy binding record does not exist. + |
+Check whether the access control policy binding record exists. + |
+
404 + |
+APIG.3011 + |
+The environment variable does not exist. + |
+The environment variable does not exist. + |
+Check whether the environment variable exists. + |
+
404 + |
+APIG.3012 + |
+The request throttling policy binding record does not exist. + |
+The request throttling policy binding record does not exist. + |
+Check whether the request throttling policy binding record exists. + |
+
404 + |
+APIG.3013 + |
+The excluded request throttling configuration does not exist. + |
+The excluded request throttling configuration does not exist. + |
+Check whether the excluded request throttling configuration exists. + |
+
404 + |
+APIG.3014 + |
+The pre-subscription record does not exist. + |
+The pre-subscription record does not exist. + |
+Check whether the purchasing record exists. + |
+
404 + |
+APIG.3015 + |
+The API publication record does not exist. + |
+The API publication record does not exist. + |
+Check whether the API publication record exists. + |
+
404 + |
+APIG.3016 + |
+The API group listing information does not exist. + |
+The API group listing information does not exist. + |
+Check whether the API group has been listed on the marketplace. + |
+
404 + |
+APIG.3017 + |
+The signature key does not exist. + |
+The signature key does not exist. + |
+Check whether the signature key exists. + |
+
404 + |
+APIG.3018 + |
+The signature key binding record does not exist. + |
+The signature key binding record does not exist. + |
+Check whether the signature key binding record exists. + |
+
404 + |
+APIG.3019 + |
+The function URN does not exist. + |
+The function URN does not exist. + |
+Check whether the function URN exists. + |
+
404 + |
+APIG.3020 + |
+The URL domain does not exist. + |
+The URL domain does not exist. + |
+Check whether the domain name exists. + |
+
404 + |
+APIG.3021 + |
+The SSL certificate does not exist. + |
+The SSL certificate does not exist. + |
+Check whether the SSL certificate exists. + |
+
404 + |
+APIG.3022 + |
+The API version does not exist. + |
+The API version does not exist. + |
+Check whether the API version exists. + |
+
404 + |
+APIG.3023 + |
+The VPC channel does not exist. + |
+The VPC channel does not exist. + |
+Check whether the VPC channel exists. + |
+
404 + |
+APIG.3024 + |
+The instance does not exist. + |
+The instance does not exist. + |
+Check whether the cloud server exists in the VPC channel. + |
+
404 + |
+APIG.3025 + |
+The certificate does not exist. + |
+The certificate does not exist. + |
+Check whether the certificate exists. + |
+
404 + |
+APIG.3030 + |
+The instance does not exist + |
+The instance does not exist + |
+Check whether the instance exists. + |
+
404 + |
+APIG.3081 + |
+Authorizer not found + |
+Authorizer not found + |
+Check whether the custom authorizer exists. + |
+
404 + |
+APIG.3082 + |
+The APP code does not exist + |
+The APP code does not exist + |
+Check whether the AppCode exists. + |
+
404 + |
+APIG.3087 + |
+The feature configuration does not exist + |
+The feature configuration does not exist + |
+Check whether the feature configuration exists. + |
+
404 + |
+APIG.3090 + |
+The Api swagger does not exist + |
+The Api swagger does not exist + |
+Check whether the Swagger file exists. + |
+
404 + |
+APIG.3092 + |
+The ECS does not exist + |
+The ECS does not exist + |
+The cloud server has already been deleted, or the server ID is incorrect. + |
+
409 + |
+APIG.3491 + |
+The default response can not be deleted. + |
+The default response can not be deleted. + |
+This operation is not allowed. + |
+
409 + |
+APIG.3492 + |
+The default response name can not be modified. + |
+The default response name can not be modified. + |
+This operation is not allowed. + |
+
412 + |
+APIG.3458 + |
+The feature is not supported by current instance + |
+The feature is not supported by current instance + |
+Contact technical support for assistance. + |
+
500 + |
+APIG.3500 + |
+Failed to synchronize data to etcd. + |
+Failed to synchronize data to etcd. + |
+Contact technical support for assistance. + |
+
500 + |
+APIG.9002 + |
+Invalid function URN. + |
+Invalid function URN. + |
+Use a valid function URN. + |
+
500 + |
+APIG.9003 + |
+Statistics Center request failed. + |
+Statistics Center request failed. + |
+Contact technical support for assistance. + |
+
500 + |
+APIG.9004 + |
+IAM request failed. + |
+IAM request failed. + |
+Contact technical support for assistance. + |
+
500 + |
+APIG.9005 + |
+VPC request failed. + |
+VPC request failed. + |
+Contact technical support for assistance. + |
+
500 + |
+APIG.9006 + |
+DNS request failed. + |
+DNS request failed. + |
+Contact technical support for assistance. + |
+
500 + |
+APIG.9007 + |
+ELB request failed. + |
+ELB request failed. + |
+Contact technical support for assistance. + |
+
500 + |
+APIG.9008 + |
+Too many requests. + |
+Too many requests. + |
+Please try again later. + |
+
500 + |
+APIG.9999 + |
+System error. + |
+System error. + |
+Contact technical support for assistance. + |
+
This API is used to export APIs in a specified API group. The content of the exported file complies with the Swagger standard. For details about the custom extended fields of APIG, see section "Importing and Exporting APIs: Extended Definition" in the Developer Guide.
+POST /v2/{project_id}/apigw/instances/{instance_id}/openapi/export
+ +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 + |
+
|---|---|---|---|
oas_version + |
+No + |
+String + |
+Open API version. +Default: 2.0 +Enumeration values: +
|
+
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
env_id + |
+Yes + |
+String + |
+ID of the environment in which APIs of a group have been published. + |
+
group_id + |
+Yes + |
+String + |
+API group ID. + |
+
define + |
+No + |
+String + |
+Definition scope of the APIs to be exported: +
Default: spec +Enumeration values: +
|
+
type + |
+No + |
+String + |
+Format for exporting API definitions. +Default: json +Enumeration values: +
|
+
version + |
+No + |
+String + |
+Version number of the APIs after exporting. The default value is the current date and time. + |
+
apis + |
+No + |
+Array of strings + |
+IDs of the APIs to be exported. + |
+
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. + |
+
{
+ "env_id" : "DEFAULT_ENVIRONMENT_RELEASE_ID",
+ "group_id" : "c77f5e81d9cb4424bf704ef2b0ac7600",
+ "define" : "all"
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2001",
+ "error_msg" : "The request parameters must be specified,parameterName:env_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.3001",
+ "error_msg" : "API group c77f5e81d9cb4424bf704ef2b0ac7600 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to import APIs. The content of the imported file must comply with the Swagger standard. For details about the custom extended fields, see section "Importing and Exporting APIs: Extended Definition" in the Developer Guide.
+POST /v2/{project_id}/apigw/instances/{instance_id}/openapi/import
+ +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 + |
+
|---|---|---|---|
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
is_create_group + |
+No + |
+Boolean + |
+Specifies whether to create an API group. +Default: true + |
+
group_id + |
+No + |
+String + |
+API group ID. This parameter is required if is_create_group is set to false. + |
+
extend_mode + |
+No + |
+String + |
+Import mode of extended information. +
Default: merge +Enumeration values: +
|
+
simple_mode + |
+No + |
+Boolean + |
+Specifies whether to enable fast import. +Default: false + |
+
mock_mode + |
+No + |
+Boolean + |
+Specifies whether to enable the Mock backend. +Default: false + |
+
api_mode + |
+No + |
+String + |
+Import mode. +
Default: merge +Enumeration values: +
|
+
file_name + |
+Yes + |
+File + |
+Request body in JSON or YAML format for importing APIs. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
success + |
+Array of Success objects + |
+Import success information. + |
+
failure + |
+Array of Failure objects + |
+Import failure information. + |
+
swagger + |
+Swagger object + |
+Swagger file import result. +Currently, this parameter is not supported. + |
+
group_id + |
+String + |
+API group ID. + |
+
ignore + |
+Array of Ignore objects + |
+APIs that are not imported. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
path + |
+String + |
+API request path. + |
+
method + |
+String + |
+API request method. + |
+
action + |
+String + |
+Import type. Options: +
Enumeration values: +
|
+
id + |
+String + |
+ID of a successfully imported API. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
path + |
+String + |
+API request path. + |
+
error_msg + |
+String + |
+Error message displayed for an import failure. + |
+
method + |
+String + |
+API request method. + |
+
error_code + |
+String + |
+Error code displayed for an import failure. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
id + |
+String + |
+Swagger file No. + |
+
result + |
+String + |
+Import result description. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
method + |
+String + |
+API request method. + |
+
path + |
+String + |
+API request path. + |
+
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. + |
+
{
+ "is_create_group" : false,
+ "group_id" : "d9ce8c9eede54b3f841ec324fe0bfdc2",
+ "file_name" : "APIGroup_test.json"
+}
+Status code: 200
+OK
+{
+ "group_id" : "d9ce8c9eede54b3f841ec324fe0bfdc2",
+ "failure" : [ {
+ "path" : "/test/demo",
+ "error_msg" : "The API already exists, An API with the same combination of the method, path, and x-apigateway-match-mode fields already exists. API name: API_demo",
+ "method" : "GET",
+ "error_code" : "APIG.3301"
+ } ],
+ "success" : [ {
+ "path" : "/test",
+ "method" : "GET",
+ "action" : "create",
+ "id" : "8ae6bcafab6f49d78242bff26ad8a4f0"
+ } ],
+ "swagger_id" : "412488ba965041f9838a5266a5f8e574",
+ "result" : "Success"
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.3201",
+ "error_msg" : "The API group name already exists"
+}
+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.3001",
+ "error_msg" : "API group not found"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the access control policies that have been bound to a specified API.
+GET /v2/{project_id}/apigw/instances/{instance_id}/acl-bindings/binded-acls
+ +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 + |
+
api_id + |
+Yes + |
+String + |
+API ID. + |
+
env_id + |
+No + |
+String + |
+Environment ID. + |
+
env_name + |
+No + |
+String + |
+Environment name. + |
+
acl_id + |
+No + |
+String + |
+Access control policy ID. + |
+
acl_name + |
+No + |
+String + |
+Access control policy name. + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
size + |
+Integer + |
+Length of the returned resource list. + |
+
total + |
+Long + |
+Number of resources that match the query conditions. + |
+
acls + |
+Array of ApiBindAclInfo objects + |
+Access control policy list. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
acl_id + |
+String + |
+Access control policy ID. + |
+
acl_name + |
+String + |
+Access control policy name. + |
+
entity_type + |
+String + |
+Object type. +Enumeration values: +
|
+
acl_type + |
+String + |
+Access control type. +
Enumeration values: +
|
+
acl_value + |
+String + |
+Access control objects. + |
+
env_id + |
+String + |
+Effective environment ID. + |
+
env_name + |
+String + |
+Effective environment name. + |
+
bind_id + |
+String + |
+Binding record ID. + |
+
bind_time + |
+String + |
+Binding 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. + |
+
None
+Status code: 200
+OK
+{
+ "total" : 1,
+ "size" : 1,
+ "acls" : [ {
+ "acl_id" : "7eb619ecf2a24943b099833cd24a01ba",
+ "acl_name" : "acl_demo",
+ "entity_type" : "IP",
+ "acl_type" : "PERMIT",
+ "acl_value" : "192.168.1.5,192.168.10.1",
+ "env_id" : "DEFAULT_ENVIRONMENT_RELEASE_ID",
+ "env_name" : "RELEASE",
+ "bind_id" : "332c5db1458a477b89b2ea741fec94a3",
+ "bind_time" : "2020-08-04T08:58:03Z"
+ } ]
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2011",
+ "error_msg" : "Invalid parameter value,parameterName:acl_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: 404
+Not Found
+{
+ "error_code" : "APIG.3002",
+ "error_msg" : "API 5f918d104dc84480a75166ba99efff21 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query all the access control policies.
+GET /v2/{project_id}/apigw/instances/{instance_id}/acls
+ +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 + |
+
id + |
+No + |
+String + |
+Access control policy ID. + |
+
name + |
+No + |
+String + |
+Access control policy name. + |
+
acl_type + |
+No + |
+String + |
+Type. +
|
+
entity_type + |
+No + |
+String + |
+Object types. +
|
+
precise_search + |
+No + |
+String + |
+Parameter name (name) for exact matching. + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
size + |
+Integer + |
+Length of the returned resource list. + |
+
total + |
+Long + |
+Number of resources that match the query conditions. + |
+
acls + |
+Array of ApiAclInfoWithBindNum objects + |
+Access control policy list. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
acl_name + |
+String + |
+Access control policy name. + |
+
acl_type + |
+String + |
+Type. +
|
+
acl_value + |
+String + |
+Access control objects. + |
+
bind_num + |
+Integer + |
+Number of APIs. + |
+
entity_type + |
+String + |
+Object type. +
|
+
id + |
+String + |
+Access control policy ID. + |
+
update_time + |
+String + |
+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. + |
+
None
+Status code: 200
+OK
+{
+ "total" : 1,
+ "size" : 1,
+ "acls" : [ {
+ "bind_num" : 0,
+ "id" : "7eb619ecf2a24943b099833cd24a01ba",
+ "acl_name" : "acl_demo",
+ "entity_type" : "IP",
+ "acl_type" : "PERMIT",
+ "acl_value" : "192.168.1.5,192.168.10.1",
+ "update_time" : "2020-08-04T08:42:43Z"
+ } ]
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2011",
+ "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: 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 Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the number of API groups that have been listed on KooGallery and the number of API groups that have not been listed.
+GET /v2/{project_id}/apigw/instances/{instance_id}/resources/outline/groups
+ +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 + |
+
|---|---|---|---|
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
offsell_nums + |
+Integer + |
+Number of API groups that have not been listed on KooGallery. +Currently, this parameter is not supported. + |
+
onsell_nums + |
+Integer + |
+Number of API groups that have been listed on KooGallery. + |
+
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. + |
+
None
+Status code: 200
+OK
+{
+ "offsell_nums" : 0,
+ "onsell_nums" : 23
+}
+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 Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query API groups.
+You can query all API groups in your account as a tenant, or query API groups of all tenants using an administrator account.
+GET /v2/{project_id}/apigw/instances/{instance_id}/api-groups
+ +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 + |
+
id + |
+No + |
+String + |
+API group ID. + |
+
name + |
+No + |
+String + |
+API group name. + |
+
precise_search + |
+No + |
+String + |
+Parameter name for exact matching. Only API group names are supported. + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
size + |
+Integer + |
+Length of the returned resource list. + |
+
total + |
+Long + |
+Number of resources that match the query conditions. + |
+
groups + |
+Array of ApiGroupInfo objects + |
+API groups. + |
+
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. +
|
+
url_domains + |
+Array of UrlDomain objects + |
+Independent domain names bound to the API group. + |
+
sl_domains + |
+Array of strings + |
+Automatically allocated subdomain names. + |
+
remark + |
+String + |
+Description. + |
+
call_limits + |
+Integer + |
+Total number of times all APIs in the API group can be accessed. Consider the payload capacity of the backend service when setting this parameter. By default, there is no limit on the number of API calls. +Currently, this parameter is not supported. + |
+
time_interval + |
+Integer + |
+Period of time for limiting the number of API calls. +Currently, this parameter is not supported. + |
+
time_unit + |
+String + |
+Time unit for limiting the number of API calls. +Currently, this parameter is not supported. + |
+
is_default + |
+Integer + |
+Indicates whether the API group is the default group. + |
+
version + |
+String + |
+Group version. +
The default value is V1. This parameter is not supported currently. + |
+
roma_app_id + |
+String + |
+ID of the integration application to which the API group belongs. +This parameter is required when the group version is V2. +Currently, this parameter is not supported. + |
+
roma_app_name + |
+String + |
+Name of the integration application to which the API group belongs. +Currently, this parameter is not supported. + |
+
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 + |
+
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. + |
+
None
+Status code: 200
+OK
+{
+ "total" : 2,
+ "size" : 2,
+ "groups" : [ {
+ "update_time" : "2020-07-31T06:55:55Z",
+ "name" : "api_group_001",
+ "on_sell_status" : 2,
+ "remark" : "API group 1",
+ "sl_domains" : [ "c77f5e81d9cb4424bf704ef2b0ac7600.apic.****.com", "c77f5e81d9cb4424bf704ef2b0ac7600.apic.****.cn" ],
+ "sl_domain" : "c77f5e81d9cb4424bf704ef2b0ac7600.apic.****.com",
+ "id" : "c77f5e81d9cb4424bf704ef2b0ac7600",
+ "register_time" : "2020-07-31T06:55:55Z",
+ "status" : 1,
+ "is_default" : 2
+ }, {
+ "update_time" : "2020-06-24T15:29:42.421926Z",
+ "name" : "api_group_002",
+ "on_sell_status" : 2,
+ "remark" : "API group 2",
+ "sl_domain" : "02a8ab3cb2784de5a096852829671ae7.apic.****.com",
+ "sl_domains" : [ "02a8ab3cb2784de5a096852829671ae7.apic.****.com", "02a8ab3cb2784de5a096852829671ae7.apic.****.cn" ],
+ "id" : "02a8ab3cb2784de5a096852829671ae7",
+ "register_time" : "2020-06-24T15:29:42.421926Z",
+ "status" : 1,
+ "is_default" : 2
+ } ]
+}
+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 Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the number of APIs that have been published in the RELEASE environment and the number of APIs that have not been published in this environment.
+GET /v2/{project_id}/apigw/instances/{instance_id}/resources/outline/apis
+ +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 + |
+
|---|---|---|---|
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
instance_num + |
+Integer + |
+Total number of APIs. + |
+
nums_on_release + |
+Integer + |
+Number of APIs that have been published in the RELEASE environment. + |
+
nums_off_release + |
+Integer + |
+Number of APIs that have not been published in the RELEASE environment. + |
+
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. + |
+
None
+Status code: 200
+OK
+{
+ "instance_num" : 27,
+ "nums_on_release" : 11,
+ "nums_off_release" : 6
+}
+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
+Bad Request
+{
+ "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 Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Bad Request + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the runtime definition of an API in a specified environment. The runtime definition of an API in the RELEASE environment is queried if no environment is specified.
+The definition of an API is classified into the following types:
+Temporary definition: definition of an API used after the API was last edited.
+Runtime definition: snapshot of the temporary definition of an API captured when the API is published in an environment.
+The runtime definition of an API is accessed when the API is called in an environment.
+GET /v2/{project_id}/apigw/instances/{instance_id}/apis/runtime/{api_id}
+ +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. + |
+
api_id + |
+Yes + |
+String + |
+API ID. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
env_id + |
+No + |
+String + |
+ID of the environment in which the API is published. + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
name + |
+String + |
+API name. +It can contain 3 to 64 characters, starting with a letter. Only letters, digits, and underscores (_) are allowed. + |
+
type + |
+Integer + |
+API type. +
Enumeration values: +
|
+
version + |
+String + |
+API version. +Maximum: 16 + |
+
req_protocol + |
+String + |
+Request protocol. +
Default: HTTPS +Enumeration values: +
|
+
req_method + |
+String + |
+Request method. +Enumeration values: +
|
+
req_uri + |
+String + |
+Request address. It can contain request parameters enclosed with brackets ({}). For example, /getUserInfo/{userId}. Special characters, such as asterisks (*), percent signs (%), hyphens (-), and underscores (_), are allowed. It can contain a maximum of 512 characters and must comply with URI specifications.> The value must comply with URI specifications. + |
+
auth_type + |
+String + |
+API authentication mode. +
Enumeration values: +
|
+
auth_opt + |
+AuthOpt object + |
+Security authentication parameter. + |
+
cors + |
+Boolean + |
+Indicates whether CORS is supported. +
Default: false +Enumeration values: +
|
+
match_mode + |
+String + |
+Route matching mode. +
The default value is NORMAL. +Enumeration values: +
|
+
backend_type + |
+String + |
+Backend type. +
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. The value cannot exceed 20,480 characters. + |
+
result_failure_sample + |
+String + |
+Example response for a failed request. The value cannot exceed 20,480 characters. + |
+
authorizer_id + |
+String + |
+ID of the frontend custom authorizer. + |
+
tags + |
+Array of strings + |
+Tags. +The value can contain only letters, digits, and underscores (_), and must start with a letter. You can enter multiple tags and separate them with commas (,). +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: +
Currently, this parameter is not supported. +Enumeration values: +
|
+
id + |
+String + |
+API ID. + |
+
group_name + |
+String + |
+Name of the API group to which the API belongs. + |
+
run_env_name + |
+String + |
+Name of the environment in which the API has been published. + |
+
run_env_id + |
+String + |
+ID of the environment in which the API has been published. + |
+
publish_id + |
+String + |
+Publication record ID. + |
+
sl_domain + |
+String + |
+Subdomain name of the API group. + |
+
sl_domains + |
+Array of strings + |
+Subdomain names that APIG automatically allocates to the API group. + |
+
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 + |
+
|---|---|---|
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: 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. + |
+
None
+Status code: 200
+OK
+{
+ "name" : "Api_http",
+ "type" : 1,
+ "version" : "V0.0.1",
+ "req_protocol" : "HTTPS",
+ "req_method" : "GET",
+ "req_uri" : "/test/http",
+ "auth_type" : "AUTHORIZER",
+ "authorizer_id" : "8d0443832a194eaa84244e0c1c1912ac",
+ "auth_opt" : {
+ "app_code_auth_type" : "DISABLE"
+ },
+ "cors" : false,
+ "match_mode" : "NORMAL",
+ "backend_type" : "HTTP",
+ "remark" : "Web backend API",
+ "group_id" : "c77f5e81d9cb4424bf704ef2b0ac7600",
+ "result_normal_sample" : "Example success response",
+ "result_failure_sample" : "Example failure response",
+ "id" : "5f918d104dc84480a75166ba99efff21",
+ "group_name" : "api_group_001",
+ "run_env_id" : "DEFAULT_ENVIRONMENT_RELEASE_ID",
+ "run_env_name" : "RELEASE",
+ "publish_id" : "9191cdb430724d4b8586ed7f1b962ca2",
+ "sl_domain" : "c77f5e81d9cb4424bf704ef2b0ac7600.apic.****.com",
+ "sl_domains" : [ "c77f5e81d9cb4424bf704ef2b0ac7600.apic.****.com", "c77f5e81d9cb4424bf704ef2b0ac7600.apic.****.cn" ]
+}
+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.3002",
+ "error_msg" : "API 5f918d104dc84480a75166ba99efff21 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the details of a specified API version.
+GET /v2/{project_id}/apigw/instances/{instance_id}/apis/versions/{version_id}
+ +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. + |
+
version_id + |
+Yes + |
+String + |
+API version. + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
name + |
+String + |
+API name. +It can contain 3 to 64 characters, starting with a letter. Only letters, digits, and underscores (_) are allowed. + |
+
type + |
+Integer + |
+API type. +
Enumeration values: +
|
+
version + |
+String + |
+API version. +Maximum: 16 + |
+
req_protocol + |
+String + |
+Request protocol. +
Default: HTTPS +Enumeration values: +
|
+
req_method + |
+String + |
+Request method. +Enumeration values: +
|
+
req_uri + |
+String + |
+Request address. It can contain request parameters enclosed with brackets ({}). For example, /getUserInfo/{userId}. Special characters, such as asterisks (*), percent signs (%), hyphens (-), and underscores (_), are allowed. It can contain a maximum of 512 characters and must comply with URI specifications.> The value must comply with URI specifications. + |
+
auth_type + |
+String + |
+API authentication mode. +
Enumeration values: +
|
+
auth_opt + |
+AuthOpt object + |
+Security authentication parameter. + |
+
cors + |
+Boolean + |
+Indicates whether CORS is supported. +
Default: false +Enumeration values: +
|
+
match_mode + |
+String + |
+Route matching mode. +
The default value is NORMAL. +Enumeration values: +
|
+
backend_type + |
+String + |
+Backend type. +
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. The value cannot exceed 20,480 characters. + |
+
result_failure_sample + |
+String + |
+Example response for a failed request. The value cannot exceed 20,480 characters. + |
+
authorizer_id + |
+String + |
+ID of the frontend custom authorizer. + |
+
tags + |
+Array of strings + |
+Tags. +The value can contain only letters, digits, and underscores (_), and must start with a letter. You can enter multiple tags and separate them with commas (,). +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: +
Currently, this parameter is not supported. +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 + |
+Time when the API version is published. + |
+
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 + |
+Web backend details. + |
+
api_group_info + |
+ApiGroupCommonInfo object + |
+API group information. + |
+
func_info + |
+ApiFunc object + |
+FunctionGraph backend details. + |
+
mock_info + |
+ApiMock object + |
+Mock backend details. + |
+
req_params + |
+Array of ReqParam objects + |
+Request parameters. + |
+
backend_params + |
+Array of BackendParam objects + |
+Backend parameters. + |
+
policy_functions + |
+Array of ApiPolicyFunctionResp objects + |
+FunctionGraph backend policies. + |
+
policy_mocks + |
+Array of ApiPolicyMockResp objects + |
+Mock backend policies. + |
+
policy_https + |
+Array of ApiPolicyHttpResp objects + |
+Web backend policies. + |
+
sl_domain + |
+String + |
+Subdomain name that API Gateway automatically allocates to the API group. + |
+
sl_domains + |
+Array of strings + |
+Subdomain names that APIG automatically allocates to the API group. + |
+
version_id + |
+String + |
+API version ID. + |
+
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 + |
+Backend custom authorizer ID. + |
+
url_domain + |
+String + |
+Backend service address.It can consist 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. +Enumeration values: +
|
+
remark + |
+String + |
+Description. It cannot exceed 255 characters. + |
+
req_method + |
+String + |
+Request method. +Enumeration values: +
|
+
version + |
+String + |
+Web backend version, which can contain a maximum of 16 characters. + |
+
req_uri + |
+String + |
+Request address. It can contain request parameters enclosed with brackets ({}). For example, /getUserInfo/{userId}. Special characters, such as asterisks (*), percent signs (%), hyphens (-), and underscores (), are allowed. It can contain a maximum of 512 characters and must comply with URI specifications.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.> The value must comply with URI specifications. + |
+
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. +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 + |
+
|---|---|---|
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. +
|
+
url_domains + |
+Array of UrlDomain objects + |
+Independent domain names bound to the API group. + |
+
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 + |
+
|---|---|---|
function_urn + |
+String + |
+Function URN. + |
+
remark + |
+String + |
+Description. It cannot exceed 255 characters. + |
+
invocation_type + |
+String + |
+Invocation mode. +
Enumeration values: +
|
+
network_type + |
+String + |
+Function network architecture. +
Enumeration values: +
|
+
version + |
+String + |
+Function version. +If both a function alias URN and version are passed, only the alias URN will be used. +Maximum: 64 + |
+
alias_urn + |
+String + |
+Function alias URN. +If both a function alias URN and version are passed, the alias URN will be used and the version will be ignored. + |
+
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 + |
+
authorizer_id + |
+String + |
+Backend custom authorizer ID. + |
+
id + |
+String + |
+ID. + |
+
register_time + |
+String + |
+Registration time. + |
+
status + |
+Integer + |
+Backend service status. +
|
+
update_time + |
+String + |
+Update time. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
remark + |
+String + |
+Description. It cannot exceed 255 characters. + |
+
result_content + |
+String + |
+Response. + |
+
version + |
+String + |
+Function version. It cannot exceed 64 characters. + |
+
authorizer_id + |
+String + |
+Backend custom authorizer ID. + |
+
id + |
+String + |
+ID. + |
+
register_time + |
+String + |
+Registration time. + |
+
status + |
+Integer + |
+Backend service status. +
|
+
update_time + |
+String + |
+Update time. + |
+
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. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
function_urn + |
+String + |
+Function URN. + |
+
invocation_type + |
+String + |
+Invocation mode. +
Enumeration values: +
|
+
network_type + |
+String + |
+Function network architecture. +
Enumeration values: +
|
+
version + |
+String + |
+Function version. +If both a function alias URN and version are passed, the alias URN will be used and the version will be ignored. +Maximum: 64 + |
+
alias_urn + |
+String + |
+Function alias URN. +If both a function alias URN and version are passed, the alias URN will be used and the version will be ignored. + |
+
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 + |
+
id + |
+String + |
+ID. + |
+
effect_mode + |
+String + |
+Effective mode of the backend policy. +
Enumeration values: +
|
+
name + |
+String + |
+Backend name, which must start with a letter and can contain letters, digits, and underscores (_). +Minimum: 3 +Maximum: 64 + |
+
backend_params + |
+Array of BackendParam objects + |
+Backend parameters. + |
+
conditions + |
+Array of CoditionResp objects + |
+Policy conditions. + |
+
authorizer_id + |
+String + |
+Backend custom authorizer ID. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
id + |
+String + |
+ID. + |
+
effect_mode + |
+String + |
+Effective mode of the backend policy. +
Enumeration values: +
|
+
name + |
+String + |
+Backend name, which must start with a letter and can contain letters, digits, and underscores (_). +Minimum: 3 +Maximum: 64 + |
+
backend_params + |
+Array of BackendParam objects + |
+Backend parameters. + |
+
conditions + |
+Array of CoditionResp objects + |
+Policy conditions. + |
+
authorizer_id + |
+String + |
+Backend custom authorizer ID. + |
+
result_content + |
+String + |
+Response. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
id + |
+String + |
+ID. + |
+
effect_mode + |
+String + |
+Effective mode of the backend policy. +
Enumeration values: +
|
+
name + |
+String + |
+Backend name, which must start with a letter and can contain letters, digits, and underscores (_). +Minimum: 3 +Maximum: 64 + |
+
backend_params + |
+Array of BackendParam objects + |
+Backend parameters. + |
+
conditions + |
+Array of CoditionResp objects + |
+Policy conditions. + |
+
authorizer_id + |
+String + |
+Backend custom authorizer ID. + |
+
url_domain + |
+String + |
+Endpoint of the policy backend.It can consist of a domain name or IP address and a port number, with not more than 255 characters. It must be in the format "Domain 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. The value can be HTTP or HTTPS. +Enumeration values: +
|
+
req_method + |
+String + |
+Request method. Options: GET, POST, PUT, DELETE, HEAD, PATCH, OPTIONS, ANY. +Enumeration values: +
|
+
req_uri + |
+String + |
+Request address. It can contain request parameters enclosed with brackets ({}). For example, /getUserInfo/{userId}. Special characters, such as asterisks (*), percent signs (%), hyphens (-), and underscores (), are allowed. It can contain a maximum of 512 characters and must comply with URI specifications.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.> The value must comply with URI specifications. + |
+
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 + |
+
retry_count + |
+String + |
+Number of retry attempts to request the backend service. The default value is -1. The value ranges from -1 to 10. +Default: -1 + |
+
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 + |
+
|---|---|---|
origin + |
+String + |
+Parameter type. +
Enumeration values: +
|
+
name + |
+String + |
+Parameter name. +The parameter name must start with a letter and can only contain letters, digits, hyphens (-), underscores (_), and periods (.). +Minimum: 1 +Maximum: 32 + |
+
remark + |
+String + |
+Description, which can contain a maximum of 255 characters. + |
+
location + |
+String + |
+Parameter location. The value can be PATH, QUERY, or HEADER. +Enumeration values: +
|
+
value + |
+String + |
+Parameter value, which can contain a maximum of 255 characters. +If the origin type is REQUEST, the value of this parameter is the parameter name in req_params. +If the origin type is CONSTANT, the value is a constant. +If the origin type is SYSTEM, the value is a system parameter name. System parameters include gateway parameters, frontend authentication parameters, and backend authentication parameters. You can set the frontend or backend authentication parameters after enabling custom frontend or backend authentication. +The gateway parameters are as follows: +
Frontend authentication parameter: prefixed with "$context.authorizer.frontend.". For example, to return "aaa" upon successful custom authentication, set this parameter to "$context.authorizer.frontend.aaa". +Backend authentication parameter: prefixed with "$context.authorizer.backend.". For example, to return "aaa" upon successful custom authentication, set this parameter to "$context.authorizer.backend.aaa". + |
+
id + |
+String + |
+Parameter ID. + |
+
req_param_id + |
+String + |
+Request parameter ID. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
req_param_name + |
+String + |
+Input parameter name. This parameter is required if the policy type is param. + |
+
condition_type + |
+String + |
+Policy condition. +
This parameter is required if the policy type is param. +Enumeration values: +
|
+
condition_origin + |
+String + |
+Policy type. +
Enumeration values: +
|
+
condition_value + |
+String + |
+Condition value. + |
+
id + |
+String + |
+ID. + |
+
req_param_id + |
+String + |
+Input parameter ID. + |
+
req_param_location + |
+String + |
+Input parameter location. + |
+
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. + |
+
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. + |
+
None
+Status code: 200
+OK
+{
+ "name" : "Api_http",
+ "type" : 1,
+ "version" : "V0.0.1",
+ "req_protocol" : "HTTPS",
+ "req_method" : "GET",
+ "req_uri" : "/test/http",
+ "auth_type" : "AUTHORIZER",
+ "auth_opt" : [ {
+ "app_code_auth_type" : "DISABLE"
+ } ],
+ "authorizer_id" : "8d0443832a194eaa84244e0c1c1912ac",
+ "cors" : false,
+ "match_mode" : "NORMAL",
+ "backend_type" : "HTTP",
+ "group_id" : "c77f5e81d9cb4424bf704ef2b0ac7600",
+ "result_normal_sample" : "Example success response",
+ "result_failure_sample" : "Example failure response",
+ "id" : "5f918d104dc84480a75166ba99efff21",
+ "status" : 1,
+ "arrange_necessary" : 2,
+ "remark" : "Web backend API",
+ "register_time" : "2020-07-31T12:42:51Z",
+ "update_time" : "2020-08-02T16:32:47.046289Z",
+ "group_name" : "api_group_001",
+ "run_env_name" : "RELEASE",
+ "run_env_id" : "DEFAULT_ENVIRONMENT_RELEASE_ID",
+ "sl_domain" : "c77f5e81d9cb4424bf704ef2b0ac7600.apic.****.com",
+ "sl_domains" : [ "c77f5e81d9cb4424bf704ef2b0ac7600.apic.****.com", "c77f5e81d9cb4424bf704ef2b0ac7600.apic.****.cn" ],
+ "version_id" : "ee1a5a38d3d3493abf1dc4ed6cacfa0b",
+ "publish_time" : "2020-08-03T01:36:00Z",
+ "backend_api" : {
+ "url_domain" : "56a7d7358e1b42459c9d730d65b14e59",
+ "req_protocol" : "HTTPS",
+ "req_method" : "GET",
+ "req_uri" : "/test/benchmark",
+ "timeout" : 5000,
+ "id" : "1ce8fda3586d4371bd83c955df37e102",
+ "status" : 1,
+ "register_time" : "2020-07-31T12:42:51Z",
+ "update_time" : "2020-08-02T16:32:47.077029Z",
+ "vpc_channel_status" : 1,
+ "vpc_channel_info" : {
+ "cascade_flag" : false,
+ "vpc_channel_id" : "56a7d7358e1b42459c9d730d65b14e59",
+ "vpc_channel_proxy_host" : "www.example.com",
+ "vpc_channel_port" : 0
+ },
+ "retry_count" : "-1"
+ },
+ "backend_params" : [ {
+ "name" : "X-CONSTANT-HEADER",
+ "location" : "HEADER",
+ "origin" : "CONSTANT",
+ "value" : "demo",
+ "remark" : "constant_demo",
+ "id" : "8cb2eba19e7a4423a4e835647a8b8d76"
+ }, {
+ "name" : "app-id",
+ "location" : "HEADER",
+ "origin" : "SYSTEM",
+ "value" : "$context.appId",
+ "remark" : "App ID of the API caller",
+ "id" : "216ddda836e74d528f364ff589d9dd21"
+ } ]
+}
+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.3022",
+ "error_msg" : "The API version does not exist,id:ee1a5a38d3d3493abf1dc4ed6cacfa0b"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the historical versions of an API. APIG retains a maximum of 10 historical versions for each API in an environment.
+GET /v2/{project_id}/apigw/instances/{instance_id}/apis/publish/{api_id}
+ +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. + |
+
api_id + |
+Yes + |
+String + |
+API ID. + |
+
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 + |
+
env_id + |
+No + |
+String + |
+Environment ID. + |
+
env_name + |
+No + |
+String + |
+Environment name. + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
size + |
+Integer + |
+Length of the returned resource list. + |
+
total + |
+Long + |
+Number of resources that match the query conditions. + |
+
api_versions + |
+Array of ApiVersionResp objects + |
+Historical version list. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
version_id + |
+String + |
+API version ID. + |
+
version_no + |
+String + |
+API version. + |
+
api_id + |
+String + |
+API ID. + |
+
env_id + |
+String + |
+ID of the environment in which the API has been published. + |
+
env_name + |
+String + |
+Name of the environment in which the API has been published. + |
+
remark + |
+String + |
+Description about the publication. + |
+
publish_time + |
+String + |
+Publication time. + |
+
status + |
+Integer + |
+Version status. +
Enumeration values: +
|
+
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. + |
+
None
+Status code: 200
+OK
+{
+ "total" : 1,
+ "size" : 1,
+ "api_versions" : [ {
+ "version_id" : "ee1a5a38d3d3493abf1dc4ed6cacfa0b",
+ "version_no" : "20200803093600",
+ "api_id" : "5f918d104dc84480a75166ba99efff21",
+ "env_id" : "DEFAULT_ENVIRONMENT_RELEASE_ID",
+ "env_name" : "RELEASE",
+ "publish_time" : "2020-08-03T01:36:00Z",
+ "status" : 1
+ } ]
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName:env_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: 404
+Not Found
+{
+ "error_code" : "APIG.3002",
+ "error_msg" : "API 5f918d104dc84480a75166ba99efff21 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the APIs to which an access control policy has been bound.
+GET /v2/{project_id}/apigw/instances/{instance_id}/acl-bindings/binded-apis
+ +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 + |
+
acl_id + |
+Yes + |
+String + |
+Access control policy ID. + |
+
api_id + |
+No + |
+String + |
+API ID. + |
+
api_name + |
+No + |
+String + |
+API name. + |
+
env_id + |
+No + |
+String + |
+Environment ID. + |
+
group_id + |
+No + |
+String + |
+API group ID. + |
+
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. + |
+
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 AclBindApiInfo objects + |
+API list. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
api_id + |
+String + |
+API ID. + |
+
api_name + |
+String + |
+API name. + |
+
api_type + |
+Long + |
+API type. + |
+
api_remark + |
+String + |
+API description. + |
+
env_id + |
+String + |
+ID of the environment in which the policy takes effect. + |
+
env_name + |
+String + |
+Name of the environment in which the policy takes effect. + |
+
bind_id + |
+String + |
+Binding record ID. + |
+
group_name + |
+String + |
+API group name. + |
+
bind_time + |
+String + |
+Binding time. + |
+
publish_id + |
+String + |
+API publication record 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: 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. + |
+
None
+Status code: 200
+OK
+{
+ "total" : 1,
+ "size" : 1,
+ "apis" : [ {
+ "api_id" : "5f918d104dc84480a75166ba99efff21",
+ "api_name" : "Api_http",
+ "group_name" : "api_group_001",
+ "api_type" : 1,
+ "api_remark" : "Web backend API",
+ "env_id" : "DEFAULT_ENVIRONMENT_RELEASE_ID",
+ "env_name" : "RELEASE",
+ "bind_id" : "332c5db1458a477b89b2ea741fec94a3",
+ "bind_time" : "2020-08-04T08:58:03Z",
+ "publish_id" : "40e7162dc6b94bbbbb1a60d2a24b1b0c"
+ } ]
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2011",
+ "error_msg" : "Invalid parameter value,parameterName:api_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: 404
+Not Found
+{
+ "error_code" : "APIG.3006",
+ "error_msg" : "Access control policy 7eb619ecf2a24943b099833cd24a01ba does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the APIs to which a specified app has been bound.
+GET /v2/{project_id}/apigw/instances/{instance_id}/app-auths/binded-apis
+ +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 + |
+
app_id + |
+Yes + |
+String + |
+App ID. + |
+
api_id + |
+No + |
+String + |
+API ID. + |
+
api_name + |
+No + |
+String + |
+API name. + |
+
group_id + |
+No + |
+String + |
+API group ID. + |
+
group_name + |
+No + |
+String + |
+API group name. + |
+
env_id + |
+No + |
+String + |
+ID of the environment in which the app has been authorized. + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
size + |
+Integer + |
+Length of the returned resource list. + |
+
total + |
+Long + |
+Number of resources that match the query conditions. + |
+
auths + |
+Array of ApiAuthInfo objects + |
+API list. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
id + |
+String + |
+Authorization record ID. + |
+
api_id + |
+String + |
+API ID. + |
+
api_name + |
+String + |
+API name. + |
+
group_name + |
+String + |
+Name of the API group to which the API belongs. + |
+
api_type + |
+Integer + |
+API type. + |
+
api_remark + |
+String + |
+API description. + |
+
env_id + |
+String + |
+ID of the environment in which an app has been authorized to call the API. + |
+
auth_role + |
+String + |
+Authorizer. + |
+
auth_time + |
+String + |
+Authorization time. + |
+
app_name + |
+String + |
+App name. + |
+
app_remark + |
+String + |
+App description. + |
+
app_type + |
+String + |
+App type. +The default value is apig. Other types are not supported currently. +Enumeration values: +
|
+
app_creator + |
+String + |
+Creator of the app. +
|
+
publish_id + |
+String + |
+API publication record ID. + |
+
group_id + |
+String + |
+ID of the API group to which the API belongs. + |
+
auth_tunnel + |
+String + |
+Authorization channel type. +
The default value is NORMAL. This parameter is not supported currently. +Enumeration values: +
|
+
auth_whitelist + |
+Array of strings + |
+Whitelist for the green channel. + |
+
auth_blacklist + |
+Array of strings + |
+Blacklist for the green channel. + |
+
visit_param + |
+String + |
+Access parameters. + |
+
roma_app_type + |
+String + |
+ROMA application type. +
Currently, this parameter is not supported. + |
+
env_name + |
+String + |
+Name of the environment in which the app has been authorized to call the API. + |
+
app_id + |
+String + |
+App 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: 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. + |
+
None
+Status code: 200
+OK
+{
+ "total" : 1,
+ "size" : 1,
+ "auths" : [ {
+ "api_id" : "5f918d104dc84480a75166ba99efff21",
+ "app_name" : "app_demo",
+ "env_id" : "DEFAULT_ENVIRONMENT_RELEASE_ID",
+ "env_name" : "RELEASE",
+ "group_id" : "c77f5e81d9cb4424bf704ef2b0ac7600",
+ "group_name" : "api_group_001",
+ "api_type" : 1,
+ "api_name" : "Api_http",
+ "app_id" : "356de8eb7a8742168586e5daf5339965",
+ "auth_time" : "2020-08-04T04:02:22Z",
+ "app_creator" : "USER",
+ "id" : "dd29b33ae4394e3b924b582c6b40880b",
+ "api_remark" : "Web backend Api",
+ "auth_role" : "PROVIDER",
+ "app_type" : "apig",
+ "auth_tunnel" : "NORMAL",
+ "publish_id" : "40e7162dc6b94bbbbb1a60d2a24b1b0c"
+ } ]
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName:api_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: 404
+Not Found
+{
+ "error_code" : "APIG.3004",
+ "error_msg" : "App 356de8eb7a8742168586e5daf5339965 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the APIs to which a specified request throttling policy has been bound.
+GET /v2/{project_id}/apigw/instances/{instance_id}/throttle-bindings/binded-apis
+ +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 + |
+
throttle_id + |
+Yes + |
+String + |
+Request throttling policy ID. + |
+
env_id + |
+No + |
+String + |
+Environment ID. + |
+
group_id + |
+No + |
+String + |
+API group ID. + |
+
api_id + |
+No + |
+String + |
+API ID. + |
+
api_name + |
+No + |
+String + |
+API name. + |
+
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. + |
+
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 ApiForThrottle objects + |
+API list. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
auth_type + |
+String + |
+API authentication mode. + |
+
group_name + |
+String + |
+Name of the API group to which the API belongs. + |
+
publish_id + |
+String + |
+API publication record ID. + |
+
throttle_apply_id + |
+String + |
+ID of a request throttling policy binding record. + |
+
apply_time + |
+String + |
+Binding time. + |
+
remark + |
+String + |
+API description. + |
+
run_env_id + |
+String + |
+ID of the environment in which the API has been published. + |
+
type + |
+Integer + |
+API type. + |
+
throttle_name + |
+String + |
+Name of the request throttling policy bound to the API. + |
+
req_uri + |
+String + |
+Access address of the API. + |
+
run_env_name + |
+String + |
+Name of the environment in which the API has been published. + |
+
group_id + |
+String + |
+ID of the API group to which the API belongs. + |
+
name + |
+String + |
+API name. + |
+
id + |
+String + |
+API 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: 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. + |
+
None
+Status code: 200
+OK
+{
+ "total" : 1,
+ "size" : 1,
+ "apis" : [ {
+ "run_env_name" : "RELEASE",
+ "group_name" : "api_group_001",
+ "publish_id" : "40e7162dc6b94bbbbb1a60d2a24b1b0c",
+ "group_id" : "c77f5e81d9cb4424bf704ef2b0ac7600",
+ "throttle_apply_id" : "3e06ac135e18477e918060d3c59d6f6a",
+ "name" : "Api_http",
+ "apply_time" : "2020-08-03T12:25:52Z",
+ "remark" : "Web backend API",
+ "run_env_id" : "DEFAULT_ENVIRONMENT_RELEASE_ID",
+ "id" : "5f918d104dc84480a75166ba99efff21",
+ "type" : 1,
+ "throttle_name" : "throttle_demo",
+ "auth_type" : "APP",
+ "req_uri" : "/test/http"
+ } ]
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName:throttle_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.3005",
+ "error_msg" : "Request throttling policy 3437448ad06f4e0c91a224183116e965 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the APIs to which a signature key has been bound.
+GET /v2/{project_id}/apigw/instances/{instance_id}/sign-bindings/binded-apis
+ +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 + |
+
sign_id + |
+Yes + |
+String + |
+Signature key ID. + |
+
env_id + |
+No + |
+String + |
+Environment ID. + |
+
api_id + |
+No + |
+String + |
+API ID. + |
+
api_name + |
+No + |
+String + |
+API name. + |
+
group_id + |
+No + |
+String + |
+API group ID. + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
size + |
+Integer + |
+Length of the returned resource list. + |
+
total + |
+Long + |
+Number of resources that match the query conditions. + |
+
bindings + |
+Array of SignApiBindingBase objects + |
+List of signature key binding records. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
publish_id + |
+String + |
+API publication record ID. + |
+
api_id + |
+String + |
+API ID. + |
+
group_name + |
+String + |
+Name of the API group to which the API belongs. + |
+
binding_time + |
+String + |
+Binding time. + |
+
env_id + |
+String + |
+ID of the environment in which the API has been published. + |
+
env_name + |
+String + |
+Name of the environment in which the API has been published. + |
+
api_type + |
+Integer + |
+API type. + |
+
api_name + |
+String + |
+API name. + |
+
id + |
+String + |
+Binding record ID. + |
+
api_remark + |
+String + |
+API description. + |
+
sign_id + |
+String + |
+Signature key ID. + |
+
sign_name + |
+String + |
+Signature key name. It can contain 3 to 64 characters, starting with a letter. Only letters, digits, and underscores (_) are allowed. + |
+
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. + |
+
None
+Status code: 200
+OK
+{
+ "total" : 1,
+ "size" : 1,
+ "bindings" : [ {
+ "api_id" : "5f918d104dc84480a75166ba99efff21",
+ "group_name" : "api_group_001",
+ "binding_time" : "2020-08-03T04:00:11Z",
+ "env_id" : "DEFAULT_ENVIRONMENT_RELEASE_ID",
+ "env_name" : "RELEASE",
+ "sign_name" : "signature_demo",
+ "api_type" : 1,
+ "api_name" : "Api_http",
+ "id" : "25082bd52f74442bb1d273993d567938",
+ "api_remark" : "Web backend API",
+ "publish_id" : "40e7162dc6b94bbbbb1a60d2a24b1b0c"
+ } ]
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName:api_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: 404
+Not Found
+{
+ "error_code" : "APIG.3017",
+ "error_msg" : "Signature key 0b0e8f456b8742218af75f945307173c does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the APIs to which a signature key has not been bound. Only published APIs will be displayed.
+GET /v2/{project_id}/apigw/instances/{instance_id}/sign-bindings/unbinded-apis
+ +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 + |
+
sign_id + |
+Yes + |
+String + |
+Signature key ID. + |
+
env_id + |
+No + |
+String + |
+Environment ID. + |
+
api_id + |
+No + |
+String + |
+API ID. + |
+
api_name + |
+No + |
+String + |
+API name. + |
+
group_id + |
+No + |
+String + |
+API group ID. + |
+
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. + |
+
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 ApiForSign objects + |
+API list. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
auth_type + |
+String + |
+API authentication mode. + |
+
run_env_name + |
+String + |
+Name of the environment in which the API has been published. + |
+
group_name + |
+String + |
+Name of the API group to which the API belongs. + |
+
publish_id + |
+String + |
+Publication record ID. + |
+
group_id + |
+String + |
+ID of the API group to which the API belongs. + |
+
name + |
+String + |
+API name. + |
+
remark + |
+String + |
+API description. + |
+
run_env_id + |
+String + |
+ID of the environment in which the API has been published. + |
+
id + |
+String + |
+API ID. + |
+
req_uri + |
+String + |
+API request address. + |
+
type + |
+Integer + |
+API type. + |
+
signature_name + |
+String + |
+Name of the signature key bound to the API. + |
+
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. + |
+
None
+Status code: 200
+OK
+{
+ "total" : 1,
+ "size" : 1,
+ "apis" : [ {
+ "run_env_name" : "RELEASE",
+ "group_name" : "api_group_001",
+ "remark" : "Mock backend API",
+ "publish_id" : "9f27d1dc4f4242a9abf88e563dbfc33d",
+ "group_id" : "c77f5e81d9cb4424bf704ef2b0ac7600",
+ "name" : "Api_mock",
+ "run_env_id" : "DEFAULT_ENVIRONMENT_RELEASE_ID",
+ "id" : "3a955b791bd24b1c9cd94c745f8d1aad",
+ "type" : 1,
+ "auth_type" : "IAM",
+ "req_uri" : "/test/mock"
+ } ]
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName:api_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: 404
+Not Found
+{
+ "error_code" : "APIG.3017",
+ "error_msg" : "Signature key 0b0e8f456b8742218af75f945307173c does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the published APIs to which an access control policy has not been bound.
+GET /v2/{project_id}/apigw/instances/{instance_id}/acl-bindings/unbinded-apis
+ +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 + |
+
acl_id + |
+Yes + |
+String + |
+Access control policy ID. + |
+
api_id + |
+No + |
+String + |
+API ID. + |
+
api_name + |
+No + |
+String + |
+API name. + |
+
env_id + |
+No + |
+String + |
+Environment ID. + |
+
group_id + |
+No + |
+String + |
+API group ID. + |
+
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. + |
+
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 UnbindApiForAcl objects + |
+API list. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
id + |
+String + |
+API ID. + |
+
name + |
+String + |
+API name. + |
+
group_id + |
+String + |
+ID of the API group to which the API belongs. + |
+
group_name + |
+String + |
+Name of the API group to which the API belongs. + |
+
type + |
+Integer + |
+API visibility. + |
+
remark + |
+String + |
+API description. + |
+
run_env_name + |
+String + |
+Name of the environment in which the API has been published. + |
+
run_env_id + |
+String + |
+ID of the environment in which the API has been published. + |
+
publish_id + |
+String + |
+API publication record ID. + |
+
acl_name + |
+String + |
+Name of the same type of access control policy bound to the API. + |
+
req_uri + |
+String + |
+API request address. + |
+
auth_type + |
+String + |
+API authentication mode. + |
+
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. + |
+
None
+Status code: 200
+OK
+{
+ "total" : 1,
+ "size" : 1,
+ "apis" : [ {
+ "name" : "Api_mock",
+ "type" : 1,
+ "remark" : "Mock backend API",
+ "group_id" : "c77f5e81d9cb4424bf704ef2b0ac7600",
+ "id" : "3a955b791bd24b1c9cd94c745f8d1aad",
+ "group_name" : "api_group_001",
+ "run_env_name" : "RELEASE",
+ "run_env_id" : "DEFAULT_ENVIRONMENT_RELEASE_ID",
+ "publish_id" : "9f27d1dc4f4242a9abf88e563dbfc33d",
+ "req_uri" : "/test/mock",
+ "auth_type" : "IAM"
+ } ]
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2011",
+ "error_msg" : "Invalid parameter value,parameterName:api_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: 404
+Not Found
+{
+ "error_code" : "APIG.3006",
+ "error_msg" : "Access control policy 7eb619ecf2a24943b099833cd24a01ba does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the self-developed APIs to which an app has not been bound in a specified environment.
+GET /v2/{project_id}/apigw/instances/{instance_id}/app-auths/unbinded-apis
+ +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 + |
+
app_id + |
+Yes + |
+String + |
+App ID. + |
+
env_id + |
+Yes + |
+String + |
+Environment ID. + |
+
group_id + |
+No + |
+String + |
+API group ID. + |
+
api_id + |
+No + |
+String + |
+API ID. + |
+
api_name + |
+No + |
+String + |
+API name. + |
+
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. + |
+
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 ApiOutline objects + |
+API list. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
auth_type + |
+String + |
+API authentication mode. + |
+
run_env_name + |
+String + |
+Name of the environment in which the API has been published. + |
+
group_name + |
+String + |
+Name of the API group to which the API belongs. + |
+
publish_id + |
+String + |
+Publication record ID. + |
+
group_id + |
+String + |
+ID of the API group to which the API belongs. + |
+
name + |
+String + |
+API name. + |
+
remark + |
+String + |
+API description. + |
+
run_env_id + |
+String + |
+ID of the environment in which the API has been published. + |
+
id + |
+String + |
+API ID. + |
+
req_uri + |
+String + |
+API request address. + |
+
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. + |
+
None
+Status code: 200
+OK
+{
+ "total" : 2,
+ "size" : 2,
+ "apis" : [ {
+ "auth_type" : "APP",
+ "run_env_name" : "",
+ "group_name" : "api_group_001",
+ "publish_id" : "",
+ "group_id" : "c77f5e81d9cb4424bf704ef2b0ac7600",
+ "name" : "Api_function",
+ "remark" : "FunctionGraph backend API",
+ "run_env_id" : "",
+ "id" : "abd9c4b2ff974888b0ba79be7e6b2763",
+ "req_uri" : "/test/function"
+ }, {
+ "auth_type" : "APP",
+ "run_env_name" : "RELEASE",
+ "group_name" : "APIGroup_d3da",
+ "publish_id" : "ca2631e233a74a758744ae1e19cc5ad7",
+ "group_id" : "6acd94abe58747ee8a73b10c70817bac",
+ "name" : "API_test",
+ "remark" : "FunctionGraph backend API",
+ "run_env_id" : "DEFAULT_ENVIRONMENT_RELEASE_ID",
+ "id" : "11cbec3a7a8345ca981b86d161bc436e",
+ "req_uri" : "/appcode"
+ } ]
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName:api_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: 404
+Not Found
+{
+ "error_code" : "APIG.3004",
+ "error_msg" : "App 356de8eb7a8742168586e5daf5339965 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the self-developed APIs to which a request throttling policy has not been bound. Only published APIs will be displayed.
+GET /v2/{project_id}/apigw/instances/{instance_id}/throttle-bindings/unbinded-apis
+ +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 + |
+
throttle_id + |
+Yes + |
+String + |
+Request throttling policy ID. + |
+
env_id + |
+No + |
+String + |
+Environment ID. + |
+
group_id + |
+No + |
+String + |
+API group ID. + |
+
api_id + |
+No + |
+String + |
+API ID. + |
+
api_name + |
+No + |
+String + |
+API name. + |
+
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. + |
+
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 ApiForThrottle objects + |
+API list. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
auth_type + |
+String + |
+API authentication mode. + |
+
group_name + |
+String + |
+Name of the API group to which the API belongs. + |
+
publish_id + |
+String + |
+API publication record ID. + |
+
throttle_apply_id + |
+String + |
+ID of a request throttling policy binding record. + |
+
apply_time + |
+String + |
+Binding time. + |
+
remark + |
+String + |
+API description. + |
+
run_env_id + |
+String + |
+ID of the environment in which the API has been published. + |
+
type + |
+Integer + |
+API type. + |
+
throttle_name + |
+String + |
+Name of the request throttling policy bound to the API. + |
+
req_uri + |
+String + |
+Access address of the API. + |
+
run_env_name + |
+String + |
+Name of the environment in which the API has been published. + |
+
group_id + |
+String + |
+ID of the API group to which the API belongs. + |
+
name + |
+String + |
+API name. + |
+
id + |
+String + |
+API 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: 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. + |
+
None
+Status code: 200
+OK
+{
+ "total" : 2,
+ "size" : 2,
+ "apis" : [ {
+ "run_env_name" : "RELEASE",
+ "group_name" : "api_group_001",
+ "publish_id" : "9f27d1dc4f4242a9abf88e563dbfc33d",
+ "group_id" : "c77f5e81d9cb4424bf704ef2b0ac7600",
+ "name" : "Api_mock",
+ "remark" : "Mock backend API",
+ "run_env_id" : "DEFAULT_ENVIRONMENT_RELEASE_ID",
+ "id" : "3a955b791bd24b1c9cd94c745f8d1aad",
+ "type" : 1,
+ "auth_type" : "IAM",
+ "req_uri" : "/test/mock"
+ }, {
+ "run_env_name" : "RELEASE",
+ "group_name" : "APIGroup_d00511069",
+ "publish_id" : "0c613568c8644a1b92172156f77a5759",
+ "group_id" : "d7d0b9a54469424f942e16a6b6026936",
+ "name" : "API_nevj",
+ "run_env_id" : "DEFAULT_ENVIRONMENT_RELEASE_ID",
+ "id" : "9e07bc00a1864ab4aafd4a23d19dd1c2",
+ "type" : 1,
+ "auth_type" : "APP",
+ "req_uri" : "/fdasf"
+ } ]
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName:throttle_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.3005",
+ "error_msg" : "Request throttling policy 3437448ad06f4e0c91a224183116e965 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query APIs to return details and publication information of the APIs. Backend information of the APIs will not be returned.
+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 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 + |
+
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. + |
+
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. + |
+
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 64 characters, starting with a letter. Only letters, digits, and underscores (_) are allowed. + |
+
type + |
+Integer + |
+API type. +
Enumeration values: +
|
+
version + |
+String + |
+API version. +Maximum: 16 + |
+
req_protocol + |
+String + |
+Request protocol. +
Default: HTTPS +Enumeration values: +
|
+
req_method + |
+String + |
+Request method. +Enumeration values: +
|
+
req_uri + |
+String + |
+Request address. It can contain request parameters enclosed with brackets ({}). For example, /getUserInfo/{userId}. Special characters, such as asterisks (*), percent signs (%), hyphens (-), and underscores (_), are allowed. It can contain a maximum of 512 characters and must comply with URI specifications.> The value must comply with URI specifications. + |
+
auth_type + |
+String + |
+API authentication mode. +
Enumeration values: +
|
+
auth_opt + |
+AuthOpt object + |
+Security authentication parameter. + |
+
cors + |
+Boolean + |
+Indicates whether CORS is supported. +
Default: false +Enumeration values: +
|
+
match_mode + |
+String + |
+Route matching mode. +
The default value is NORMAL. +Enumeration values: +
|
+
backend_type + |
+String + |
+Backend type. +
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. The value cannot exceed 20,480 characters. + |
+
result_failure_sample + |
+String + |
+Example response for a failed request. The value cannot exceed 20,480 characters. + |
+
authorizer_id + |
+String + |
+ID of the frontend custom authorizer. + |
+
tags + |
+Array of strings + |
+Tags. +The value can contain only letters, digits, and underscores (_), and must start with a letter. You can enter multiple tags and separate them with commas (,). +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: +
Currently, this parameter is not supported. +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 + |
+Backend custom authorizer ID. + |
+
url_domain + |
+String + |
+Backend service address.It can consist 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. +Enumeration values: +
|
+
remark + |
+String + |
+Description. It cannot exceed 255 characters. + |
+
req_method + |
+String + |
+Request method. +Enumeration values: +
|
+
version + |
+String + |
+Web backend version, which can contain a maximum of 16 characters. + |
+
req_uri + |
+String + |
+Request address. It can contain request parameters enclosed with brackets ({}). For example, /getUserInfo/{userId}. Special characters, such as asterisks (*), percent signs (%), hyphens (-), and underscores (), are allowed. It can contain a maximum of 512 characters and must comply with URI specifications.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.> The value must comply with URI specifications. + |
+
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. +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. +
|
+
url_domains + |
+Array of UrlDomain objects + |
+Independent domain names bound to the API group. + |
+
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. + |
+
None
+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 Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the AppCodes of an app.
+GET /v2/{project_id}/apigw/instances/{instance_id}/apps/{app_id}/app-codes
+ +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. + |
+
app_id + |
+Yes + |
+String + |
+App ID. + |
+
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 + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
size + |
+Integer + |
+Length of the returned resource list. + |
+
total + |
+Long + |
+Number of resources that match the query conditions. + |
+
app_codes + |
+Array of AppCodeBaseInfo objects + |
+AppCode list. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
app_code + |
+String + |
+AppCode value. +The value can contain 64 to 180 characters, starting with a letter, plus sign (+), or slash (/). Only letters and the following special characters are allowed: +_!@#$%/= + |
+
id + |
+String + |
+ID. + |
+
app_id + |
+String + |
+App ID. + |
+
create_time + |
+String + |
+Creation 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. + |
+
None
+Status code: 200
+OK
+{
+ "total" : 2,
+ "size" : 2,
+ "app_codes" : [ {
+ "app_code" : "GjOD3g80AABuuFeEJpVQADBlAjBh3UzC7W+gr4VJBB5BtJ4fdVOQoSvoji3gFxUDb5pWBz9wUcw9+8/bFZ1B/4pq29wCMQC0pQWX6zTndljDEl99As1pw+WntAU9xcq+ffagoH6zDpKUvdxV6Ezj8LcCcPZN6BU=",
+ "app_id" : "9ed8b7fe84224de681e7d7a5587e76dc",
+ "id" : "32dc8ca22d1b4b9cb94022186880576b",
+ "create_time" : "2020-07-24T02:37:24Z"
+ }, {
+ "app_code" : "fdc8d90a30174460a91ddacfa54d6f04c92e523a85cc4a1894f87cb13b6f572a",
+ "app_id" : "9ed8b7fe84224de681e7d7a5587e76dc",
+ "id" : "b3d34f746d0847fb95138670e10207ed",
+ "create_time" : "2020-07-24T02:31:45Z"
+ } ]
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName:app_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.3004",
+ "error_msg" : "App 9ed8b7fe84224de681e7d7a5587e76dc does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the number of apps that have been authorized to access APIs and the number of apps that have not been authorized to access any APIs.
+GET /v2/{project_id}/apigw/instances/{instance_id}/resources/outline/apps
+ +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 + |
+
|---|---|---|---|
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
authed_nums + |
+Integer + |
+Number of apps that have been authorized to access APIs. + |
+
unauthed_nums + |
+Integer + |
+Number of apps that have not been authorized to access APIs. + |
+
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. + |
+
None
+Status code: 200
+OK
+{
+ "authed_nums" : 7,
+ "unauthed_nums" : 5
+}
+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
+Bad Request
+{
+ "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 Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Bad Request + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the apps that have been bound to a specified API.
+GET /v2/{project_id}/apigw/instances/{instance_id}/app-auths/binded-apps
+ +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 + |
+
api_id + |
+No + |
+String + |
+API ID. + |
+
app_name + |
+No + |
+String + |
+App name. + |
+
app_id + |
+No + |
+String + |
+App ID. + |
+
env_id + |
+No + |
+String + |
+Environment ID. + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
size + |
+Integer + |
+Length of the returned resource list. + |
+
total + |
+Long + |
+Number of resources that match the query conditions. + |
+
auths + |
+Array of ApiAuthInfo objects + |
+API list. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
id + |
+String + |
+Authorization record ID. + |
+
api_id + |
+String + |
+API ID. + |
+
api_name + |
+String + |
+API name. + |
+
group_name + |
+String + |
+Name of the API group to which the API belongs. + |
+
api_type + |
+Integer + |
+API type. + |
+
api_remark + |
+String + |
+API description. + |
+
env_id + |
+String + |
+ID of the environment in which an app has been authorized to call the API. + |
+
auth_role + |
+String + |
+Authorizer. + |
+
auth_time + |
+String + |
+Authorization time. + |
+
app_name + |
+String + |
+App name. + |
+
app_remark + |
+String + |
+App description. + |
+
app_type + |
+String + |
+App type. +The default value is apig. Other types are not supported currently. +Enumeration values: +
|
+
app_creator + |
+String + |
+Creator of the app. +
|
+
publish_id + |
+String + |
+API publication record ID. + |
+
group_id + |
+String + |
+ID of the API group to which the API belongs. + |
+
auth_tunnel + |
+String + |
+Authorization channel type. +
The default value is NORMAL. This parameter is not supported currently. +Enumeration values: +
|
+
auth_whitelist + |
+Array of strings + |
+Whitelist for the green channel. + |
+
auth_blacklist + |
+Array of strings + |
+Blacklist for the green channel. + |
+
visit_param + |
+String + |
+Access parameters. + |
+
roma_app_type + |
+String + |
+ROMA application type. +
Currently, this parameter is not supported. + |
+
env_name + |
+String + |
+Name of the environment in which the app has been authorized to call the API. + |
+
app_id + |
+String + |
+App 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: 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. + |
+
None
+Status code: 200
+OK
+{
+ "total" : 1,
+ "size" : 1,
+ "auths" : [ {
+ "api_id" : "5f918d104dc84480a75166ba99efff21",
+ "app_name" : "app_demo",
+ "env_id" : "DEFAULT_ENVIRONMENT_RELEASE_ID",
+ "env_name" : "RELEASE",
+ "group_id" : "c77f5e81d9cb4424bf704ef2b0ac7600",
+ "group_name" : "api_group_001",
+ "api_type" : 1,
+ "api_name" : "Api_http",
+ "app_id" : "356de8eb7a8742168586e5daf5339965",
+ "auth_time" : "2020-08-04T04:02:22Z",
+ "app_creator" : "USER",
+ "id" : "dd29b33ae4394e3b924b582c6b40880b",
+ "api_remark" : "Web backend API",
+ "auth_role" : "PROVIDER",
+ "app_type" : "apig",
+ "auth_tunnel" : "NORMAL"
+ } ]
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName:app_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: 404
+Not Found
+{
+ "error_code" : "APIG.3002",
+ "error_msg" : "API 5f918d104dc84480a75166ba99efff21 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query apps.
+GET /v2/{project_id}/apigw/instances/{instance_id}/apps
+ +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 + |
+
id + |
+No + |
+String + |
+App ID. + |
+
name + |
+No + |
+String + |
+App name. + |
+
status + |
+No + |
+Integer + |
+App status. + |
+
app_key + |
+No + |
+String + |
+AppKey. + |
+
creator + |
+No + |
+String + |
+Creator of the app. +
|
+
precise_search + |
+No + |
+String + |
+Parameter name (name) for exact matching. + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
size + |
+Integer + |
+Length of the returned resource list. + |
+
total + |
+Long + |
+Number of resources that match the query conditions. + |
+
apps + |
+Array of AppInfoWithBindNum objects + |
+App list. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
id + |
+String + |
+ID. + |
+
name + |
+String + |
+Name. + |
+
remark + |
+String + |
+Description. + |
+
creator + |
+String + |
+Creator of the app. +
The value MARKET is currently not supported. +Enumeration values: +
|
+
update_time + |
+String + |
+Update time. + |
+
app_key + |
+String + |
+AppKey. + |
+
app_secret + |
+String + |
+AppSecret. + |
+
register_time + |
+String + |
+Registration time. + |
+
status + |
+Integer + |
+Status. +
Enumeration values: +
|
+
app_type + |
+String + |
+App type. +
The default value is apig. Other types are not supported currently. +Enumeration values: +
|
+
roma_app_type + |
+String + |
+ROMA application type. +
Currently, this parameter is not supported. + |
+
bind_num + |
+Integer + |
+Number of bound APIs. + |
+
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. + |
+
None
+Status code: 200
+OK
+{
+ "total" : 2,
+ "size" : 2,
+ "apps" : [ {
+ "bind_num" : 0,
+ "creator" : "USER",
+ "update_time" : "2020-08-03T13:09:13Z",
+ "app_key" : "ee8f878c252747028f07eb116c2cd91b",
+ "name" : "app_demo",
+ "remark" : "Demo app",
+ "id" : "356de8eb7a8742168586e5daf5339965",
+ "app_secret" : "416b6b2a1d394111b9bc1df0e6842ab8",
+ "register_time" : "2020-08-03T13:09:13Z",
+ "status" : 1,
+ "app_type" : "apig"
+ }, {
+ "bind_num" : 3,
+ "creator" : "USER",
+ "update_time" : "2020-05-27T10:38:03.133586Z",
+ "app_key" : "840b8b5b1efc4ec686639759c2c584da",
+ "name" : "app_001",
+ "id" : "9ed8b7fe84224de681e7d7a5587e76dc",
+ "app_secret" : "0a4e7035e81e424ab4c2c571980d5c6e",
+ "register_time" : "2020-03-28T11:09:06Z",
+ "status" : 1
+ } ]
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2011",
+ "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 Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query AZs where you can buy gateways.
+GET /v2/{project_id}/apigw/available-zones
+ +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. + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
available_zones + |
+Array of AvailableZone objects + |
+AZ list. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
name + |
+String + |
+AZ name. + |
+
id + |
+String + |
+Error message. + |
+
code + |
+String + |
+AZ code. + |
+
port + |
+String + |
+AZ port. + |
+
local_name + |
+LocalName object + |
+AZ names. + |
+
specs + |
+Map<String,Boolean> + |
+Gateway editions available in the AZ. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
en_us + |
+String + |
+AZ name. + |
+
zh_cn + |
+String + |
+AZ name. + |
+
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. + |
+
None
+Status code: 200
+OK
+{
+ "available_zones" : [ {
+ "code" : "xx-xxx-4a",
+ "id" : "effdcbc7d4d64a02aa1fa26b42f56533",
+ "local_name" : {
+ "en_us" : "AZ1",
+ "zh_cn" : "<Name_of_AZ1>"
+ },
+ "name" : "<Name_of_AZ1>",
+ "port" : "8403",
+ "specs" : {
+ "BASIC" : true,
+ "BASIC_IPV6" : false,
+ "ENTERPRISE" : true,
+ "ENTERPRISE_IPV6" : false,
+ "PLATINUM" : true,
+ "PLATINUM_IPV6" : false,
+ "PROFESSIONAL" : true,
+ "PROFESSIONAL_IPV6" : false,
+ "TRIAL" : true
+ }
+ }, {
+ "code" : "xx-xxx-4b",
+ "id" : "a0865121f83b41cbafce65930a22a6e8",
+ "local_name" : {
+ "en_us" : "AZ2",
+ "zh_cn" : "<Name_of_AZ2>"
+ },
+ "name" : "<Name_of_AZ2>",
+ "port" : "8404",
+ "specs" : {
+ "BASIC" : true,
+ "BASIC_IPV6" : true,
+ "ENTERPRISE" : true,
+ "ENTERPRISE_IPV6" : true,
+ "PLATINUM" : true,
+ "PLATINUM_IPV6" : false,
+ "PROFESSIONAL" : true,
+ "PROFESSIONAL_IPV6" : true,
+ "TRIAL" : true
+ }
+ } ]
+}
+Status code: 401
+Unauthorized
+{
+ "error_code" : "APIC.7102",
+ "error_msg" : "Incorrect token or token resolution failed"
+}
+Status code: 403
+Forbidden
+{
+ "error_code" : "APIC.7106",
+ "error_msg" : "No permissions to request for the method"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIC.9000",
+ "error_msg" : "Failed to request internal service"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the backend instances of a specified VPC channel.
+GET /v2/{project_id}/apigw/instances/{instance_id}/vpc-channels/{vpc_channel_id}/members
+ +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. + |
+
vpc_channel_id + |
+Yes + |
+String + |
+VPC channel ID. + |
+
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 + |
+
name + |
+No + |
+String + |
+Cloud server name. + |
+
member_group_name + |
+No + |
+String + |
+Backend server group name. + |
+
member_group_id + |
+No + |
+String + |
+Backend server group ID. + |
+
precise_search + |
+No + |
+String + |
+Parameter name for exact matching. Separate multiple parameter names with commas (,). +Currently, name and member_group_name are supported. + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
size + |
+Integer + |
+Length of the returned resource list. + |
+
total + |
+Long + |
+Number of resources that match the query conditions. + |
+
members + |
+Array of VpcMemberInfo objects + |
+Cloud server list. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
host + |
+String + |
+Backend server address. +This parameter is required when the member type is IP address. +Maximum: 64 + |
+
weight + |
+Integer + |
+Weight. +The higher the weight is, the more requests a backend service will receive. +Minimum: 0 +Maximum: 10000 + |
+
is_backup + |
+Boolean + |
+Indicates whether the backend service is a standby node. +After you enable this function, the backend service serves as a standby node. It works only when all non-standby nodes are faulty. +This function is supported only when your gateway has been upgraded to the corresponding version. If your gateway does not support this function, contact technical support. +Default: false + |
+
member_group_name + |
+String + |
+Backend server group name. The server group facilitates backend service address modification. + |
+
status + |
+Integer + |
+Backend server status. +
Enumeration values: +
|
+
port + |
+Integer + |
+Backend server port. +Minimum: 0 +Maximum: 65535 + |
+
ecs_id + |
+String + |
+Backend server ID. +This parameter is required if the backend instance type is ecs. The value can contain 1 to 64 characters, including letters, digits, hyphens (-), and underscores (_). +Maximum: 255 + |
+
ecs_name + |
+String + |
+Backend server name. +This parameter is required if the backend instance type is ecs. The value can contain 1 to 64 characters, including letters, digits, hyphens (-), underscores (_), and periods (.). +Maximum: 64 + |
+
id + |
+String + |
+Backend server ID. + |
+
vpc_channel_id + |
+String + |
+VPC channel ID. + |
+
create_time + |
+String + |
+Time when the backend server is added to the VPC channel. + |
+
member_group_id + |
+String + |
+Backend server group 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: 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. + |
+
None
+Status code: 200
+OK
+{
+ "total" : 2,
+ "size" : 2,
+ "members" : [ {
+ "host" : "192.168.0.5",
+ "weight" : 1,
+ "is_backup" : false,
+ "member_group_name" : "",
+ "status" : 1,
+ "port" : 22,
+ "ecs_id" : "192.168.0.5",
+ "ecs_name" : "192.168.0.5",
+ "id" : "be63c6260a1043888187f84af39c9f0e",
+ "vpc_channel_id" : "56a7d7358e1b42459c9d730d65b14e59",
+ "create_time" : "2020-07-23T07:11:57Z",
+ "member_group_id" : ""
+ }, {
+ "host" : "192.168.1.124",
+ "weight" : 2,
+ "is_backup" : false,
+ "member_group_name" : "",
+ "status" : 1,
+ "port" : 22,
+ "ecs_id" : "192.168.1.124",
+ "ecs_name" : "192.168.1.124",
+ "id" : "a57b13f1b89b417ca8acd76909e6df67",
+ "vpc_channel_id" : "56a7d7358e1b42459c9d730d65b14e59",
+ "create_time" : "2020-07-23T07:11:57Z",
+ "member_group_id" : ""
+ } ]
+}
+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: 404
+Not Found
+{
+ "error_code" : "APIG.3023",
+ "error_msg" : "The VPC channel does not exist,id:56a7d7358e1b42459c9d730d65b14e59"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query all the custom authorizers under a gateway.
+GET /v2/{project_id}/apigw/instances/{instance_id}/authorizers
+ +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 + |
+
id + |
+No + |
+String + |
+ID. + |
+
name + |
+No + |
+String + |
+Name. + |
+
type + |
+No + |
+String + |
+Type. + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
size + |
+Integer + |
+Length of the returned resource list. + |
+
total + |
+Long + |
+Number of resources that match the query conditions. + |
+
authorizer_list + |
+Array of AuthorizerResp objects + |
+Custom authorizers. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
name + |
+String + |
+Custom authorizer name. +It can contain 3 to 64 characters, starting with a letter. Only letters, digits, and underscores (_) are allowed. + |
+
type + |
+String + |
+Custom authorizer type. +
Modification is not allowed. +Enumeration values: +
|
+
authorizer_type + |
+String + |
+Value: FUNC. +Enumeration values: +
|
+
authorizer_uri + |
+String + |
+Function URN. + |
+
authorizer_version + |
+String + |
+Function version. +If both a function alias URN and version are passed, the alias URN will be used and the version will be ignored. +Maximum: 64 + |
+
authorizer_alias_uri + |
+String + |
+Function alias URN. +If both a function alias URN and version are passed, the alias URN will be used and the version will be ignored. + |
+
identities + |
+Array of Identity objects + |
+Identity source. + |
+
ttl + |
+Integer + |
+Maximum cache age. + |
+
user_data + |
+String + |
+User data. + |
+
ld_api_id + |
+String + |
+Custom backend ID. +Currently, this parameter is not supported. + |
+
need_body + |
+Boolean + |
+Indicates whether to send the body. + |
+
id + |
+String + |
+Custom authorizer ID. + |
+
create_time + |
+String + |
+Creation time. + |
+
roma_app_id + |
+String + |
+ID of the application to which the custom authorizer belongs. +Currently, this parameter is not supported. + |
+
roma_app_name + |
+String + |
+Name of the application to which the custom authorizer belongs. +Currently, this parameter is not supported. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
name + |
+String + |
+Parameter name. + |
+
location + |
+String + |
+Parameter location. +Enumeration values: +
|
+
validation + |
+String + |
+Parameter verification expression. The default value is null, indicating that no verification is performed. + |
+
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. + |
+
None
+Status code: 200
+OK
+{
+ "total" : 1,
+ "size" : 1,
+ "authorizer_list" : [ {
+ "name" : "Authorizer_demo",
+ "type" : "FRONTEND",
+ "authorizer_type" : "FUNC",
+ "authorizer_uri" : "urn:fss:xx-xxx-4:106506b9a92342df9a5025fc12351cfc:function:defau:apigDemo_1592617458814",
+ "authorizer_version" : "v1",
+ "authorizer_alias_uri" : "urn:fss:xx-xxx-4:106506b9a92342df9a5025fc12351cfc:function:defau:apigDemo_1592617458814:!v1",
+ "identities" : [ {
+ "name" : "header",
+ "location" : "HEADER"
+ } ],
+ "ttl" : 0,
+ "user_data" : "authorizer_test",
+ "id" : "0d982c1ac3da493dae47627b6439fc5c",
+ "create_time" : "2020-07-31T11:55:43Z"
+ } ]
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2011",
+ "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: 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 Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query all environment variables under an API group.
+GET /v2/{project_id}/apigw/instances/{instance_id}/env-variables
+ +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 + |
+
group_id + |
+Yes + |
+String + |
+API group ID. + |
+
env_id + |
+No + |
+String + |
+Environment ID. + |
+
variable_name + |
+No + |
+String + |
+Variable name. + |
+
precise_search + |
+No + |
+String + |
+Parameter name (name) for exact matching. + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
size + |
+Integer + |
+Length of the returned resource list. + |
+
total + |
+Long + |
+Number of resources that match the query conditions. + |
+
variables + |
+Array of EnvVariableInfo objects + |
+Environment variable list. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
variable_value + |
+String + |
+The variable value can contain 1 to 255 characters. Only letters, digits, and special characters (_-/.:) are allowed. + |
+
env_id + |
+String + |
+Environment ID. +Minimum: 1 +Maximum: 65 + |
+
group_id + |
+String + |
+API group ID. +Minimum: 1 +Maximum: 65 + |
+
variable_name + |
+String + |
+Variable name, which can contain 3 to 32 characters, starting with a letter. Only letters, digits, hyphens (-), and underscores (_) are allowed. The variable name is equivalent to "#Name#" in API definitions. Characters between the number signs are case-sensitive. The variable name will be replaced with the variable value after API publication. + |
+
id + |
+String + |
+Environment variable 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. + |
+
None
+Status code: 200
+OK
+{
+ "variables" : [ {
+ "variable_value" : "8080",
+ "env_id" : "cca3616af3684b329064b2a631cb3eeb",
+ "group_id" : "73c58022f20d495aa18885d718647f09",
+ "id" : "09ab8135722440b9bf5d107f2a09d409",
+ "variable_name" : "port"
+ }, {
+ "variable_value" : "192.168.1.5",
+ "env_id" : "7a1ad0c350844ee69479b47df9a881cb",
+ "group_id" : "c77f5e81d9cb4424bf704ef2b0ac7600",
+ "id" : "25054838a624400bbf2267cf5b3a3f70",
+ "variable_name" : "address"
+ } ],
+ "total" : 2,
+ "size" : 2
+}
+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 Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query environments.
+GET /v2/{project_id}/apigw/instances/{instance_id}/envs
+ +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 + |
+
name + |
+No + |
+String + |
+Environment name. + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
size + |
+Integer + |
+Length of the returned resource list. + |
+
total + |
+Long + |
+Number of resources that match the query conditions. + |
+
envs + |
+Array of EnvInfo objects + |
+Environment list. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
create_time + |
+String + |
+Creation time. + |
+
name + |
+String + |
+Environment name. + |
+
remark + |
+String + |
+Description. + |
+
id + |
+String + |
+Environment 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. + |
+
None
+Status code: 200
+OK
+{
+ "total" : 2,
+ "size" : 2,
+ "envs" : [ {
+ "create_time" : "2019-02-12T19:42:19.914989Z",
+ "name" : "RELEASE",
+ "remark" : "xxx",
+ "id" : "DEFAULT_ENVIRONMENT_RELEASE_ID"
+ }, {
+ "create_time" : "2020-07-31T06:41:43Z",
+ "name" : "DEV",
+ "remark" : "Development environment",
+ "id" : "7a1ad0c350844ee69479b47df9a881cb"
+ } ]
+}
+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 Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+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 | +
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 + |
+
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. + |
+
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. + |
+
None
+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 Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the responses of an API group.
+GET /v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id}/gateway-responses
+ +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. + |
+
group_id + |
+Yes + |
+String + |
+API group ID. + |
+
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 + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
size + |
+Integer + |
+Length of the returned resource list. + |
+
total + |
+Long + |
+Number of resources that match the query conditions. + |
+
responses + |
+Array of ResponsesInfo objects + |
+Response list. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
name + |
+String + |
+Response name. + |
+
responses + |
+Map<String,ResponseInfoResp> + |
+Response type definition, which includes a key and value. Options of the key: +
Each error type is in JSON format. + |
+
id + |
+String + |
+Response ID. + |
+
default + |
+Boolean + |
+Indicates whether the group response is the default response. + |
+
create_time + |
+String + |
+Creation time. + |
+
update_time + |
+String + |
+Update time. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
status + |
+Integer + |
+HTTP status code of the response. + |
+
body + |
+String + |
+Response body template. + |
+
default + |
+Boolean + |
+Indicates whether the response is the default response. + |
+
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. + |
+
None
+Status code: 200
+OK
+{
+ "total" : 2,
+ "size" : 2,
+ "responses" : [ {
+ "create_time" : "2020-08-12T06:52:02Z",
+ "default" : false,
+ "id" : "e839b367e10f4ab19d1c5008e476b83a",
+ "name" : "response_demo",
+ "update_time" : "2020-08-12T06:52:02Z"
+ }, {
+ "create_time" : "2020-07-31T11:39:23Z",
+ "default" : true,
+ "id" : "ed8e8c52ab0e4a1c9c809268e5002e64",
+ "name" : "default",
+ "update_time" : "2020-07-31T11:39:23Z"
+ } ]
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName:group_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.3001",
+ "error_msg" : "API group c77f5e81d9cb4424bf704ef2b0ac7600 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the gateway configurations.
+GET /v2/{project_id}/apigw/instance/configs
+ +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. + |
+
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 + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
size + |
+Integer + |
+Length of the returned resource list. + |
+
total + |
+Long + |
+Number of resources that match the query conditions. + |
+
configs + |
+Array of InstanceConfig objects + |
+Quota list. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
config_id + |
+String + |
+Quota ID. + |
+
config_name + |
+String + |
+Quota name. +Enumeration values: +
|
+
config_value + |
+String + |
+Quota value. +It indicates the value of the quota for the current gateway. + |
+
config_time + |
+String + |
+Time when the quota is created. + |
+
remark + |
+String + |
+Quota description. +
|
+
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. + |
+
None
+Status code: 200
+OK
+{
+ "total" : 1,
+ "size" : 1,
+ "configs" : [ {
+ "config_id" : "1",
+ "config_name" : "INSTANCE_NUM_LIMIT",
+ "config_value" : "5",
+ "config_time" : 1597981093255,
+ "remark" : "xxx"
+ } ]
+}
+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" : "APIC.7102",
+ "error_msg" : "Incorrect token or token resolution failed"
+}
+Status code: 403
+Forbidden
+{
+ "error_code" : "APIC.7106",
+ "error_msg" : "No permissions to request for the method"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIC.9000",
+ "error_msg" : "Failed to request internal service"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query dedicated gateways.
+GET /v2/{project_id}/apigw/instances
+ +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. + |
+
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 + |
+
instance_id + |
+No + |
+String + |
+Gateway ID. + |
+
instance_name + |
+No + |
+String + |
+Gateway name. + |
+
status + |
+No + |
+String + |
+Gateway status. +
Enumeration values: +
|
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
size + |
+Integer + |
+Length of the returned resource list. + |
+
total + |
+Long + |
+Number of resources that match the query conditions. + |
+
instances + |
+Array of RespInstanceBase objects + |
+Gateway list. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
id + |
+String + |
+Gateway ID. + |
+
project_id + |
+String + |
+ID of the tenant to which the gateway belongs. + |
+
instance_name + |
+String + |
+Gateway name. + |
+
status + |
+String + |
+Gateway status. +
Enumeration values: +
|
+
instance_status + |
+Integer + |
+Gateway status ID. +
Enumeration values: +
|
+
type + |
+String + |
+Gateway type. +The default value is apig. + |
+
spec + |
+String + |
+Gateway edition. +
Enumeration values: +
|
+
create_time + |
+Long + |
+Time when the gateway is created. The time is in the Unix timestamp format. + |
+
enterprise_project_id + |
+String + |
+Enterprise project ID. This parameter is required if you are using an enterprise account. + |
+
eip_address + |
+String + |
+EIP bound to the gateway. + |
+
charging_mode + |
+Integer + |
+Billing mode of the gateway. +
Enumeration values: +
|
+
cbc_metadata + |
+String + |
+This parameter is not used currently. + |
+
loadbalancer_provider + |
+String + |
+Type of the load balancer used by the gateway. +
Default: lvs +Enumeration values: +
|
+
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. + |
+
None
+Status code: 200
+OK
+{
+ "total" : 2,
+ "size" : 2,
+ "instances" : [ {
+ "cbc_metadata" : "CS2006301043A28NF:00301-734023-0--0",
+ "charging_mode" : 1,
+ "create_time" : 1585302825070,
+ "eip_address" : "100.95.155.221",
+ "enterprise_project_id" : "0",
+ "id" : "eddc4d25480b4cd6b512f270a1b8b341",
+ "instance_name" : "apig-Enterprise_Project_Pay-per-Use",
+ "instance_status" : 6,
+ "project_id" : "73d69ae0cfcf460190522d06b60f05ad",
+ "spec" : "PROFESSIONAL",
+ "status" : "Running",
+ "type" : "apig"
+ }, {
+ "charging_mode" : 0,
+ "create_time" : 1594370987422,
+ "eip_address" : "100.95.147.95",
+ "enterprise_project_id" : "0",
+ "id" : "2e2d613c64094a4a94ad38e7ca30adee",
+ "instance_name" : "apig-autotest-apitest-nodelete",
+ "instance_status" : 6,
+ "project_id" : "73d69ae0cfcf460190522d06b60f05ad",
+ "spec" : "PROFESSIONAL",
+ "status" : "Running",
+ "type" : "apig"
+ } ]
+}
+Status code: 401
+Unauthorized
+{
+ "error_code" : "APIC.7102",
+ "error_msg" : "Incorrect token or token resolution failed"
+}
+Status code: 403
+Forbidden
+{
+ "error_code" : "APIC.7106",
+ "error_msg" : "No permissions to request for the method"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIC.9000",
+ "error_msg" : "Failed to request internal service"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the number of times APIs in an API group are called within a period. The query is based on 1 minute. If the time range is within one hour, the server returns the number of API calls made every minute.
+
For security purposes, clear your operation records, including but not limited to records in the ~/.bash_history and /var/log/messages directories (if any), after running the curl command on the server to query information.
+GET /v2/{project_id}/apigw/instances/{instance_id}/statistics/api/latest
+ +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 + |
+
|---|---|---|---|
api_id + |
+Yes + |
+String + |
+API ID. + |
+
duration + |
+Yes + |
+String + |
+Time range (unit: h or m). For example, 1h refers to the latest 1 hour and 1m refers to the latest 1 minute. + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
code + |
+String + |
+Response code. + |
+
msg + |
+String + |
+Response message. + |
+
start_time + |
+Long + |
+Timestamp (UTC) of the start time. + |
+
end_time + |
+Long + |
+Timestamp (UTC) of the end time. + |
+
list + |
+Array of StatisticsAPI objects + |
+Statistic data. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
max_latency + |
+Integer + |
+Maximum latency. +Unit: ms + |
+
avg_latency + |
+Float + |
+Average latency. +Unit: ms + |
+
req_count + |
+Integer + |
+Total number of requests. + |
+
req_count2xx + |
+Integer + |
+Total number of 2xx response codes. + |
+
req_count4xx + |
+Integer + |
+Total number of 4xx response codes. + |
+
req_count5xx + |
+Integer + |
+Total number of 5xx response codes. + |
+
req_count_error + |
+Integer + |
+Errors. + |
+
max_inner_latency + |
+Integer + |
+Maximum gateway latency. +Unit: ms + |
+
avg_inner_latency + |
+Float + |
+Average gateway latency. +Unit: ms + |
+
max_backend_latency + |
+Integer + |
+Maximum backend latency. + |
+
avg_backend_latency + |
+Float + |
+Average backend latency. + |
+
output_throughput + |
+Long + |
+Downstream throughput (bytes). + |
+
input_throughput + |
+Long + |
+Upstream throughput (bytes). + |
+
current_minute + |
+Long + |
+Timestamp (UTC) of API access. + |
+
cycle + |
+String + |
+Statistical period. +Enumeration values: +
|
+
api_id + |
+String + |
+API ID. + |
+
group_id + |
+String + |
+API group ID. + |
+
provider + |
+String + |
+API provider. + |
+
req_time + |
+String + |
+Request time. + |
+
register_time + |
+String + |
+Recording time. + |
+
status + |
+Integer + |
+Status. + |
+
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. + |
+
None
+Status code: 200
+OK
+{
+ "code" : "APIG.0000",
+ "start_time" : 1595573280,
+ "end_time" : 1595576820,
+ "list" : [ {
+ "api_id" : "39bce6d25a3f470e8cf7b2c97174f7d9",
+ "avg_backend_latency" : 2.71,
+ "avg_inner_latency" : 1.57,
+ "avg_latency" : 4.14,
+ "current_minute" : 1595576640,
+ "cycle" : "MINUTE",
+ "group_id" : "d0fc4e40b7d1492cba802f667c7c7226",
+ "input_throughput" : 1071,
+ "max_backend_latency" : 6,
+ "max_inner_latency" : 8,
+ "max_latency" : 14,
+ "output_throughput" : 3790,
+ "provider" : "73d69ae0cfcf460190522d06b60f05ad",
+ "register_time" : "2020-07-24 15:44:56",
+ "req_count" : 7,
+ "req_count2xx" : 0,
+ "req_count4xx" : 6,
+ "req_count5xx" : 1,
+ "req_count_error" : 7,
+ "req_time" : "2020-07-24 15:44:00",
+ "status" : 1
+ } ]
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName:api_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.3002",
+ "error_msg" : "API 39bce6d25a3f470e8cf7b2c97174f7d9 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the total number of times all APIs in an API group are called based on the API group ID. The query is based on 1 minute. If the time range is within one hour, the server returns the number of API calls made every minute.
+
For security purposes, clear your operation records, including but not limited to records in the ~/.bash_history and /var/log/messages directories (if any), after running the curl command on the server to query information.
+GET /v2/{project_id}/apigw/instances/{instance_id}/statistics/group/latest
+ +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 + |
+
|---|---|---|---|
group_id + |
+Yes + |
+String + |
+API group ID. + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
code + |
+String + |
+Response code. + |
+
msg + |
+String + |
+Response message. + |
+
start_time + |
+Long + |
+Timestamp (UTC) of the start time. + |
+
end_time + |
+Long + |
+Timestamp (UTC) of the end time. + |
+
list + |
+Array of StatisticsGroup objects + |
+Statistic data. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
max_latency + |
+Integer + |
+Maximum latency. +Unit: ms + |
+
avg_latency + |
+Float + |
+Average latency. +Unit: ms + |
+
req_count + |
+Integer + |
+Total number of requests. + |
+
req_count2xx + |
+Integer + |
+Total number of 2xx response codes. + |
+
req_count4xx + |
+Integer + |
+Total number of 4xx response codes. + |
+
req_count5xx + |
+Integer + |
+Total number of 5xx response codes. + |
+
req_count_error + |
+Integer + |
+Errors. + |
+
output_throughput + |
+Long + |
+Downstream throughput (bytes). + |
+
input_throughput + |
+Long + |
+Upstream throughput (bytes). + |
+
current_minute + |
+Long + |
+Timestamp (UTC) of API access. + |
+
group_id + |
+String + |
+API group ID. + |
+
provider + |
+String + |
+API provider. + |
+
req_time + |
+String + |
+Request time. + |
+
register_time + |
+String + |
+Recording 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. + |
+
None
+Status code: 200
+OK
+{
+ "code" : "APIG.0000",
+ "start_time" : 1595574540,
+ "end_time" : 1595578080,
+ "list" : [ {
+ "avg_latency" : 4.14,
+ "current_minute" : 1595576640,
+ "group_id" : "d0fc4e40b7d1492cba802f667c7c7226",
+ "input_throughput" : 1071,
+ "max_latency" : 14,
+ "output_throughput" : 3790,
+ "provider" : "73d69ae0cfcf460190522d06b60f05ad",
+ "register_time" : "2020-07-24 15:44:56",
+ "req_count" : 7,
+ "req_count2xx" : 0,
+ "req_count4xx" : 6,
+ "req_count5xx" : 1,
+ "req_count_error" : 7,
+ "req_time" : "2020-07-24 15:44:00"
+ }, {
+ "avg_latency" : 3.67,
+ "current_minute" : 1595577900,
+ "group_id" : "d0fc4e40b7d1492cba802f667c7c7226",
+ "input_throughput" : 915,
+ "max_latency" : 6,
+ "output_throughput" : 2763,
+ "provider" : "73d69ae0cfcf460190522d06b60f05ad",
+ "register_time" : "2020-07-24 16:05:12",
+ "req_count" : 6,
+ "req_count2xx" : 3,
+ "req_count4xx" : 0,
+ "req_count5xx" : 3,
+ "req_count_error" : 3,
+ "req_time" : "2020-07-24 16:05:00"
+ } ]
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName:group_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.3001",
+ "error_msg" : "API group d0fc4e40b7d1492cba802f667c7c7226 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the resource configurations and usage of a gateway.
+GET /v2/{project_id}/apigw/instances/{instance_id}/project/configs
+ +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 + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
size + |
+Integer + |
+Length of the returned resource list. + |
+
total + |
+Long + |
+Number of resources that match the query conditions. + |
+
configs + |
+Array of Config objects + |
+Quota list. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
config_id + |
+String + |
+Quota ID. + |
+
config_name + |
+String + |
+Quota name. +Enumeration values: +
|
+
config_value + |
+String + |
+Quota value. +It indicates the value of the quota for the current gateway. + |
+
config_time + |
+String + |
+Time when the quota is created. + |
+
remark + |
+String + |
+Quota description. +
|
+
used + |
+Long + |
+Used quota of the gateway. + |
+
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. + |
+
None
+Status code: 200
+OK
+{
+ "total" : 43,
+ "size" : 2,
+ "configs" : [ {
+ "config_id" : "9",
+ "config_name" : "API_VERSION_NUM_LIMIT",
+ "config_value" : "10",
+ "config_time" : "2019-02-12T19:42:19.914989Z",
+ "remark" : "xxx",
+ "used" : 0
+ }, {
+ "config_id" : "8",
+ "config_name" : "APIGROUP_DOMAIN_NUM_LIMIT",
+ "config_value" : "5",
+ "config_time" : "2019-02-12T19:42:19.914989Z",
+ "remark" : "xxx",
+ "used" : 0
+ } ]
+}
+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 Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the request throttling policies that have been bound to an API. Only one request throttling policy can be bound to an API in an environment.
+GET /v2/{project_id}/apigw/instances/{instance_id}/throttle-bindings/binded-throttles
+ +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 + |
+
api_id + |
+Yes + |
+String + |
+API ID. + |
+
throttle_id + |
+No + |
+String + |
+Request throttling policy ID. + |
+
throttle_name + |
+No + |
+String + |
+Request throttling policy name. + |
+
env_id + |
+No + |
+String + |
+Environment ID. + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
size + |
+Integer + |
+Length of the returned resource list. + |
+
total + |
+Long + |
+Number of resources that match the query conditions. + |
+
throttles + |
+Array of ThrottleForApi objects + |
+Request throttling policy list. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
app_call_limits + |
+Integer + |
+Maximum number of times the API can be accessed by an app within the same period. The value of this parameter cannot exceed the user call limit. The maximum value is 2,147,483,647. Enter a positive integer. + |
+
name + |
+String + |
+Request throttling policy name. It can contain 3 to 64 characters, starting with a letter. Only letters, digits, and underscores (_) are allowed. + |
+
time_unit + |
+String + |
+Time unit for limiting the number of API calls. +Enumeration values: +
|
+
remark + |
+String + |
+Description of the request throttling policy, which can contain a maximum of 255 characters. + |
+
api_call_limits + |
+Integer + |
+Maximum number of times an API can be accessed within a specified period. The value of this parameter cannot exceed the default limit 200 TPS. You can change the default limit to meet service requirements. The maximum value is 2,147,483,647. Enter a positive integer. + |
+
type + |
+Integer + |
+Type of the request throttling policy. +
Enumeration values: +
|
+
enable_adaptive_control + |
+String + |
+Indicates whether to enable dynamic request throttling. +
Currently, this parameter is not supported. + |
+
user_call_limits + |
+Integer + |
+Maximum number of times the API can be accessed by a user within the same period. The value of this parameter cannot exceed the Max. API Requests. The maximum value is 2,147,483,647. Enter a positive integer. + |
+
time_interval + |
+Integer + |
+Period of time for limiting the number of API calls. This parameter applies with each API call limit. The maximum value is 2,147,483,647. Enter a positive integer. + |
+
ip_call_limits + |
+Integer + |
+Maximum number of times the API can be accessed by an IP address within the same period. The value of this parameter cannot exceed the API call limit. The maximum value is 2,147,483,647. Enter a positive integer. + |
+
id + |
+String + |
+Request throttling policy ID. + |
+
bind_num + |
+Integer + |
+Number of APIs to which the request throttling policy has been bound. + |
+
is_inclu_special_throttle + |
+Integer + |
+Indicates whether an excluded request throttling configuration has been created. +
Enumeration values: +
|
+
create_time + |
+String + |
+Creation time. + |
+
env_name + |
+String + |
+Environment in which the request throttling policy takes effect. + |
+
bind_id + |
+String + |
+Policy binding record ID. + |
+
bind_time + |
+String + |
+Time when the policy is bound to the API. + |
+
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. + |
+
None
+Status code: 200
+OK
+{
+ "total" : 1,
+ "size" : 1,
+ "throttles" : [ {
+ "id" : "3437448ad06f4e0c91a224183116e965",
+ "name" : "throttle_demo",
+ "api_call_limits" : 800,
+ "user_call_limits" : 500,
+ "app_call_limits" : 300,
+ "ip_call_limits" : 600,
+ "time_interval" : 1,
+ "time_unit" : "SECOND",
+ "create_time" : "2020-07-31T08:44:02Z",
+ "remark" : "Total: 800 calls/second; user: 500 calls/second; app: 300 calls/second; IP address: 600 calls/second",
+ "is_inclu_special_throttle" : 2,
+ "env_name" : "RELEASE",
+ "type" : 1,
+ "bind_id" : "3e06ac135e18477e918060d3c59d6f6a",
+ "bind_time" : "2020-08-03T12:25:52Z",
+ "bind_num" : 0,
+ "enable_adaptive_control" : "FALSE"
+ } ]
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName:throttle_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: 404
+Not Found
+{
+ "error_code" : "APIG.3002",
+ "error_msg" : "API 5f918d104dc84480a75166ba99efff21 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query all the request throttling policies.
+GET /v2/{project_id}/apigw/instances/{instance_id}/throttles
+ +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 + |
+
id + |
+No + |
+String + |
+Request throttling policy ID. + |
+
name + |
+No + |
+String + |
+Request throttling policy name. + |
+
precise_search + |
+No + |
+String + |
+Parameter name (name) for exact matching. + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
size + |
+Integer + |
+Length of the returned resource list. + |
+
total + |
+Long + |
+Number of resources that match the query conditions. + |
+
throttles + |
+Array of ThrottlesInfo objects + |
+Request throttling policy list. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
app_call_limits + |
+Integer + |
+Maximum number of times the API can be accessed by an app within the same period. The value of this parameter cannot exceed the user call limit. The maximum value is 2,147,483,647. Enter a positive integer. + |
+
name + |
+String + |
+Request throttling policy name. It can contain 3 to 64 characters, starting with a letter. Only letters, digits, and underscores (_) are allowed. + |
+
time_unit + |
+String + |
+Time unit for limiting the number of API calls. +Enumeration values: +
|
+
remark + |
+String + |
+Description of the request throttling policy, which can contain a maximum of 255 characters. + |
+
api_call_limits + |
+Integer + |
+Maximum number of times an API can be accessed within a specified period. The value of this parameter cannot exceed the default limit 200 TPS. You can change the default limit to meet service requirements. The maximum value is 2,147,483,647. Enter a positive integer. + |
+
type + |
+Integer + |
+Type of the request throttling policy. +
Enumeration values: +
|
+
enable_adaptive_control + |
+String + |
+Indicates whether to enable dynamic request throttling. +
Currently, this parameter is not supported. + |
+
user_call_limits + |
+Integer + |
+Maximum number of times the API can be accessed by a user within the same period. The value of this parameter cannot exceed the Max. API Requests. The maximum value is 2,147,483,647. Enter a positive integer. + |
+
time_interval + |
+Integer + |
+Period of time for limiting the number of API calls. This parameter applies with each API call limit. The maximum value is 2,147,483,647. Enter a positive integer. + |
+
ip_call_limits + |
+Integer + |
+Maximum number of times the API can be accessed by an IP address within the same period. The value of this parameter cannot exceed the API call limit. The maximum value is 2,147,483,647. Enter a positive integer. + |
+
id + |
+String + |
+Request throttling policy ID. + |
+
bind_num + |
+Integer + |
+Number of APIs to which the request throttling policy has been bound. + |
+
is_inclu_special_throttle + |
+Integer + |
+Indicates whether an excluded request throttling configuration has been created. +
Enumeration values: +
|
+
create_time + |
+String + |
+Creation 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: 500
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
error_code + |
+String + |
+Error code. + |
+
error_msg + |
+String + |
+Error message. + |
+
None
+Status code: 200
+OK
+{
+ "total" : 1,
+ "size" : 1,
+ "throttles" : [ {
+ "name" : "throttle_demo",
+ "create_time" : "2020-07-31T08:44:02.205366118Z",
+ "remark" : "Total: 800 calls/second; user: 500 calls/second; app: 300 calls/second; IP address: 600 calls/second",
+ "type" : 1,
+ "time_interval" : 1,
+ "ip_call_limits" : 600,
+ "app_call_limits" : 300,
+ "time_unit" : "SECOND",
+ "api_call_limits" : 800,
+ "id" : "3437448ad06f4e0c91a224183116e965",
+ "user_call_limits" : 500,
+ "enable_adaptive_control" : "FALSE",
+ "bind_num" : 0,
+ "is_inclu_special_throttle" : 2
+ } ]
+}
+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 Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the signature keys that have been bound to a specified API. Only one signature key can be bound to an API in an environment.
+GET /v2/{project_id}/apigw/instances/{instance_id}/sign-bindings/binded-signs
+ +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 + |
+
api_id + |
+Yes + |
+String + |
+API ID. + |
+
sign_id + |
+No + |
+String + |
+Signature key ID. + |
+
sign_name + |
+No + |
+String + |
+Signature key name. + |
+
env_id + |
+No + |
+String + |
+Environment ID. + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
size + |
+Integer + |
+Length of the returned resource list. + |
+
total + |
+Long + |
+Number of resources that match the query conditions. + |
+
bindings + |
+Array of SignApiBindingInfo objects + |
+APIs bound to the signature key. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
publish_id + |
+String + |
+API publication record ID. + |
+
api_id + |
+String + |
+API ID. + |
+
group_name + |
+String + |
+Name of the API group to which the API belongs. + |
+
binding_time + |
+String + |
+Binding time. + |
+
env_id + |
+String + |
+ID of the environment in which the API has been published. + |
+
env_name + |
+String + |
+Name of the environment in which the API has been published. + |
+
api_type + |
+Integer + |
+API type. + |
+
api_name + |
+String + |
+API name. + |
+
id + |
+String + |
+Binding record ID. + |
+
api_remark + |
+String + |
+API description. + |
+
sign_id + |
+String + |
+Signature key ID. + |
+
sign_name + |
+String + |
+Signature key name. It can contain 3 to 64 characters, starting with a letter. Only letters, digits, and underscores (_) are allowed. + |
+
sign_key + |
+String + |
+Signature key. +
|
+
sign_secret + |
+String + |
+Signature secret. +
|
+
sign_type + |
+String + |
+Signature key type. +
To use a basic signature key, ensure that your gateway version supports it. If your gateway does not support this type of signature key, contact technical support to upgrade your gateway. +To use a public_key signature key, ensure that the public_key feature has been configured for your gateway. For details, see "Appendix" > "Supported Features". If your gateway does not support this feature, contact technical support to enable it. +To use an AES signature key, ensure that your gateway version supports it. If your gateway does not support this type of signature key, contact technical support to upgrade your gateway. +Enumeration values: +
|
+
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. + |
+
None
+Status code: 200
+OK
+{
+ "total" : 1,
+ "size" : 1,
+ "bindings" : [ {
+ "api_id" : "5f918d104dc84480a75166ba99efff21",
+ "group_name" : "api_group_001",
+ "binding_time" : "2020-08-03T04:00:11Z",
+ "env_id" : "DEFAULT_ENVIRONMENT_RELEASE_ID",
+ "env_name" : "RELEASE",
+ "sign_id" : "0b0e8f456b8742218af75f945307173c",
+ "sign_name" : "signature_demo",
+ "sign_key" : "a071a20d460a4f639a636c3d7e3d8163",
+ "sign_secret" : "dc02fc5f30714d6bb21888389419e2b3",
+ "api_type" : 1,
+ "api_name" : "Api_http",
+ "id" : "25082bd52f74442bb1d273993d567938",
+ "api_remark" : "Web backend API"
+ } ]
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName:api_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: 404
+Not Found
+{
+ "error_code" : "APIG.3002",
+ "error_msg" : "API 5f918d104dc84480a75166ba99efff21 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query all the signature keys.
+GET /v2/{project_id}/apigw/instances/{instance_id}/signs
+ +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 + |
+
id + |
+No + |
+String + |
+Signature key ID. + |
+
name + |
+No + |
+String + |
+Signature key name. + |
+
precise_search + |
+No + |
+String + |
+Parameter name (name) for exact matching. + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
size + |
+Integer + |
+Length of the returned resource list. + |
+
total + |
+Long + |
+Number of resources that match the query conditions. + |
+
signs + |
+Array of SignatureWithBindNum objects + |
+Signature key list. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
name + |
+String + |
+Signature key name. It can contain letters, digits, and underscores(_) and must start with a letter. +Minimum: 3 +Maximum: 64 + |
+
sign_type + |
+String + |
+Signature key type. +
To use a basic signature key, ensure that your gateway version supports it. If your gateway does not support this type of signature key, contact technical support to upgrade your gateway. +To use a public_key signature key, ensure that the public_key feature has been configured for your gateway. For details, see "Appendix" > "Supported Features". If your gateway does not support this feature, contact technical support to enable it. +To use an AES signature key, ensure that your gateway version supports it. If your gateway does not support this type of signature key, contact technical support to upgrade your gateway. +Enumeration values: +
|
+
sign_key + |
+String + |
+Signature key. +
|
+
sign_secret + |
+String + |
+Signature secret. +
|
+
sign_algorithm + |
+String + |
+Signature algorithm. Specify a signature algorithm only when using an AES signature key. By default, no algorithm is used. +Enumeration values: +
|
+
update_time + |
+String + |
+Update time. + |
+
create_time + |
+String + |
+Creation time. + |
+
id + |
+String + |
+Signature key ID. + |
+
bind_num + |
+Integer + |
+Number of bound APIs. + |
+
ldapi_bind_num + |
+Integer + |
+Number of custom backends bound. +Currently, this parameter is not supported. + |
+
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. + |
+
None
+Status code: 200
+OK
+{
+ "total" : 2,
+ "size" : 2,
+ "signs" : [ {
+ "sign_secret" : "signsecretsignsecretsignsecretsignsecret",
+ "update_time" : "2018-02-07T02:00:27.964766Z",
+ "create_time" : "2018-02-06T12:17:36Z",
+ "name" : "signature_demo",
+ "id" : "0b0e8f456b8742218af75f945307173c",
+ "sign_key" : "signkeysignkey",
+ "sign_type" : "hmac",
+ "bind_num" : 0,
+ "ldapi_bind_num" : 0
+ }, {
+ "sign_secret" : "9ce16b029034464898ee33540c42e16a",
+ "update_time" : "2020-07-30T03:56:58Z",
+ "create_time" : "2020-07-30T03:56:58Z",
+ "name" : "Signature_udlu",
+ "id" : "9dc388382fba485aadd19f932303f4c9",
+ "sign_key" : "ca50c5b670044c83b5b890a9a68a30d5",
+ "sign_type" : "hmac",
+ "bind_num" : 0,
+ "ldapi_bind_num" : 0
+ } ]
+}
+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 Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query all excluded configurations of a request throttling policy.
+GET /v2/{project_id}/apigw/instances/{instance_id}/throttles/{throttle_id}/throttle-specials
+ +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. + |
+
throttle_id + |
+Yes + |
+String + |
+Request throttling policy ID. + |
+
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 + |
+
object_type + |
+No + |
+String + |
+Object type, which can be APP or USER. + |
+
app_name + |
+No + |
+String + |
+Name of an excluded app. + |
+
user + |
+No + |
+String + |
+Name of an excluded user. + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
size + |
+Integer + |
+Length of the returned resource list. + |
+
total + |
+Long + |
+Number of resources that match the query conditions. + |
+
throttle_specials + |
+Array of ThrottleSpecialInfo objects + |
+Excluded configuration list. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
id + |
+String + |
+Excluded configuration ID. + |
+
call_limits + |
+Integer + |
+Maximum number of times an excluded object can access an API within the throttling period. + |
+
apply_time + |
+String + |
+Throttling period. + |
+
app_name + |
+String + |
+App name. + |
+
app_id + |
+String + |
+App ID. + |
+
object_id + |
+String + |
+ID of an object specified in the excluded configuration. + |
+
object_type + |
+String + |
+Excluded object type, which can be APP or USER. + |
+
object_name + |
+String + |
+Name of an app or a tenant to which the excluded configuration applies. + |
+
throttle_id + |
+String + |
+Request throttling policy 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: 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. + |
+
None
+Status code: 200
+OK
+{
+ "total" : 1,
+ "size" : 1,
+ "throttle_specials" : [ {
+ "call_limits" : 200,
+ "app_name" : "app_demo",
+ "object_name" : "app_demo",
+ "object_id" : "356de8eb7a8742168586e5daf5339965",
+ "throttle_id" : "3437448ad06f4e0c91a224183116e965",
+ "apply_time" : "2020-08-04T02:40:56Z",
+ "id" : "a3e9ff8db55544ed9db91d8b048770c0",
+ "app_id" : "356de8eb7a8742168586e5daf5339965",
+ "object_type" : "APP"
+ } ]
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName:app_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: 404
+Not Found
+{
+ "error_code" : "APIG.3005",
+ "error_msg" : "Request throttling policy 3437448ad06f4e0c91a224183116e965 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query tags of a gateway.
+GET /v2/{project_id}/apigw/instances/{instance_id}/tags
+ +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 + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
size + |
+Integer + |
+Length of the returned resource list. + |
+
total + |
+Long + |
+Number of resources that match the query conditions. + |
+
tags + |
+Array of strings + |
+Tag list. + |
+
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. + |
+
None
+Status code: 200
+OK
+{
+ "total" : 2,
+ "size" : 2,
+ "tags" : [ "webApi", "functionApi" ]
+}
+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 Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the VPC channels under a gateway.
+GET /v2/{project_id}/apigw/instances/{instance_id}/vpc-channels
+ +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 + |
+
id + |
+No + |
+String + |
+VPC channel ID. + |
+
name + |
+No + |
+String + |
+VPC channel name. + |
+
dict_code + |
+No + |
+String + |
+Dictionary code of the VPC channel. +The value can contain letters, digits, hyphens (-), underscores (_), and periods (.). +This parameter is currently not supported. +Minimum: 3 +Maximum: 64 + |
+
precise_search + |
+No + |
+String + |
+Parameter name for exact matching. Separate multiple parameter names with commas (,). +Currently, name and member_group_name are supported. + |
+
member_host + |
+No + |
+String + |
+Backend service address. By default, exact match is used. Fuzzy match is not supported. + |
+
member_port + |
+No + |
+Integer + |
+Backend server port. +Minimum: 0 +Maximum: 65535 + |
+
member_group_name + |
+No + |
+String + |
+Backend server group name. + |
+
member_group_id + |
+No + |
+String + |
+Backend server group ID. + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
size + |
+Integer + |
+Length of the returned resource list. + |
+
total + |
+Long + |
+Number of resources that match the query conditions. + |
+
vpc_channels + |
+Array of VpcChannelInfo objects + |
+VPC channel list. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
name + |
+String + |
+VPC channel name. +It can contain 3 to 64 characters, starting with a letter. Only letters, digits, hyphens (-), and underscores (_) are allowed. + |
+
port + |
+Integer + |
+Host port of the VPC channel. +Range: 1–65535. + |
+
balance_strategy + |
+Integer + |
+Distribution algorithm. +
Default: 1 +Enumeration values: +
|
+
member_type + |
+String + |
+Member type of the VPC channel. +
Default: ecs +Enumeration values: +
|
+
type + |
+Integer + |
+VPC channel type. The default type is server. +
Default: 2 +Enumeration values: +
|
+
dict_code + |
+String + |
+Dictionary code of the VPC channel. +The value can contain letters, digits, hyphens (-), underscores (_), and periods (.). +This parameter is currently not supported. +Minimum: 3 +Maximum: 64 + |
+
create_time + |
+String + |
+Time when the VPC channel is created. + |
+
id + |
+String + |
+VPC channel ID. + |
+
status + |
+Integer + |
+VPC channel status. +
Enumeration values: +
|
+
member_groups + |
+Array of MemberGroupInfo objects + |
+Backend server groups. + |
+
microservice_info + |
+MicroServiceInfo object + |
+Microservice information. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
member_group_name + |
+String + |
+Name of the backend server group of the VPC channel. + |
+
member_group_remark + |
+String + |
+Description of the backend server group. + |
+
member_group_weight + |
+Integer + |
+Weight of the backend server group. +If the server group contains servers and a weight has been set for it, the weight is automatically used to assign weights to servers in this group. +Minimum: 0 +Maximum: 100 + |
+
dict_code + |
+String + |
+Dictionary code of the backend server group. +The value can contain letters, digits, hyphens (-), underscores (_), and periods (.). +Currently, this parameter is not supported. +Minimum: 3 +Maximum: 64 + |
+
microservice_version + |
+String + |
+Version of the backend server group. This parameter is supported only when the VPC channel type is microservice. +Maximum: 64 + |
+
microservice_port + |
+Integer + |
+Port of the backend server group. This parameter is supported only when the VPC channel type is microservice. If the port number is 0, all addresses in the backend server group use the original load balancing port to inherit logic. +Minimum: 0 +Maximum: 65535 + |
+
microservice_labels + |
+Array of MicroserviceLabel objects + |
+Tags of the backend server group. This parameter is supported only when the VPC channel type is microservice. + |
+
member_group_id + |
+String + |
+ID of the backend server group of the VPC channel. + |
+
create_time + |
+String + |
+Time when the backend server group is created. + |
+
update_time + |
+String + |
+Time when the backend server group is updated. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
label_name + |
+String + |
+Tag name. +Start and end with a letter or digit. Use only letters, digits, hyphens (-), underscores (_), and periods (.). (Max. 63 characters.) +Minimum: 1 +Maximum: 63 + |
+
label_value + |
+String + |
+Tag value. +Start and end with a letter or digit. Use only letters, digits, hyphens (-), underscores (_), and periods (.). (Max. 63 characters.) +Minimum: 1 +Maximum: 63 + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
id + |
+String + |
+Microservice ID. + |
+
instance_id + |
+String + |
+Gateway ID. + |
+
service_type + |
+String + |
+Microservice type. +
Enumeration values: +
|
+
cse_info + |
+MicroServiceInfoCSE object + |
+CSE microservice details. + |
+
cce_info + |
+MicroServiceInfoCCE object + |
+CCE microservice details. + |
+
update_time + |
+String + |
+Microservice update time. + |
+
create_time + |
+String + |
+Microservice creation time. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
engine_id + |
+String + |
+Microservice engine ID. +Maximum: 64 + |
+
service_id + |
+String + |
+Microservice ID. +Maximum: 64 + |
+
engine_name + |
+String + |
+Microservice engine name. + |
+
service_name + |
+String + |
+Microservice name. + |
+
register_address + |
+String + |
+Registration center address. + |
+
cse_app_id + |
+String + |
+App to which the microservice belongs. + |
+
version + |
+String + |
+Microservice version, which has been discarded and is reflected in the version of the backend server group. +Maximum: 64 + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
cluster_id + |
+String + |
+CCE cluster ID. +Maximum: 64 + |
+
namespace + |
+String + |
+Namespace. +Maximum: 64 + |
+
workload_type + |
+String + |
+Workload type. +
Enumeration values: +
|
+
app_name + |
+String + |
+App name. +Maximum: 64 + |
+
cluster_name + |
+String + |
+CCE cluster name. + |
+
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. + |
+
None
+Status code: 200
+OK
+{
+ "total" : 2,
+ "size" : 2,
+ "vpc_channels" : [ {
+ "name" : "channel 1",
+ "port" : 8080,
+ "balance_strategy" : 1,
+ "member_type" : "ip",
+ "dict_code" : "",
+ "create_time" : "2020-07-23T07:24:33Z",
+ "id" : "105c6902457144a4820dff8b1ad63331",
+ "status" : 1,
+ "member_groups" : [ ],
+ "type" : 2,
+ "microservice_info" : {
+ "id" : "",
+ "instance_id" : "",
+ "service_type" : "",
+ "cse_info" : {
+ "cse_app_id" : "",
+ "engine_id" : "",
+ "engine_name" : "",
+ "register_address" : "",
+ "service_id" : "",
+ "service_name" : ""
+ },
+ "cce_info" : {
+ "cluster_id" : "",
+ "cluster_name" : "",
+ "namespace" : "",
+ "workload_type" : "",
+ "app_name" : ""
+ },
+ "create_time" : "",
+ "update_time" : ""
+ }
+ }, {
+ "name" : "channel 2",
+ "port" : 8088,
+ "balance_strategy" : 2,
+ "member_type" : "ip",
+ "dict_code" : "",
+ "create_time" : "2020-07-23T07:11:57Z",
+ "id" : "56a7d7358e1b42459c9d730d65b14e59",
+ "status" : 1,
+ "member_groups" : [ ],
+ "type" : 3,
+ "microservice_info" : {
+ "id" : "9483afa235be45158a70c19ab817ac65",
+ "instance_id" : "eddc4d25480b4cd6b512f270a1b8b341",
+ "service_type" : "CCE",
+ "cse_info" : {
+ "cse_app_id" : "",
+ "engine_id" : "",
+ "engine_name" : "",
+ "register_address" : "",
+ "service_id" : "",
+ "service_name" : ""
+ },
+ "cce_info" : {
+ "cluster_id" : "ab1485b4f91b45abbcd560be591f7309",
+ "cluster_name" : "cce-test",
+ "namespace" : "default",
+ "workload_type" : "deployment",
+ "app_name" : "testapp"
+ },
+ "create_time" : "2020-07-23T07:11:57.244829604Z",
+ "update_time" : "2020-07-23T07:11:57.244829604Z"
+ }
+ } ]
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2011",
+ "error_msg" : "The request parameters must be specified,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: 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 Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to unbind the EIP of a dedicated gateway.
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/eip
+ +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 + |
+
|---|---|---|---|
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. + |
+
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. + |
+
None
+Status code: 401
+Unauthorized
+{
+ "error_code" : "APIC.7102",
+ "error_msg" : "Incorrect token or token resolution failed"
+}
+Status code: 403
+Forbidden
+{
+ "error_code" : "APIC.7106",
+ "error_msg" : "No permissions to request for the method"
+}
+Status code: 404
+Not Found
+{
+ "error_code" : "APIC.7302",
+ "error_msg" : "Instance not found"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIC.9000",
+ "error_msg" : "Failed to request internal service"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to disable public access for a dedicated gateway.
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/nat-eip
+ +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 + |
+
|---|---|---|---|
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. + |
+
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. + |
+
None
+Status code: 401
+Unauthorized
+{
+ "error_code" : "APIC.7102",
+ "error_msg" : "Incorrect token or token resolution failed"
+}
+Status code: 403
+Forbidden
+{
+ "error_code" : "APIC.7106",
+ "error_msg" : "No permissions to request for the method"
+}
+Status code: 404
+Not Found
+{
+ "error_code" : "APIC.7302",
+ "error_msg" : "Instance not found"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIC.9000",
+ "error_msg" : "Failed to request internal service"
+}
+Status Code + |
+Description + |
+
|---|---|
204 + |
+No Content + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to reset the AppSecret of an app.
+PUT /v2/{project_id}/apigw/instances/{instance_id}/apps/secret/{app_id}
+ +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. + |
+
app_id + |
+Yes + |
+String + |
+App ID. + |
+
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
app_secret + |
+No + |
+String + |
+An AppSecret consists of 8 to 64 characters, starting with a letter or digit. Only letters, digits, and special characters (_-!@#$%) are allowed. To customize AppSecrets, ensure that AppSecret authentication has been enabled. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
id + |
+String + |
+ID. + |
+
name + |
+String + |
+Name. + |
+
remark + |
+String + |
+Description. + |
+
creator + |
+String + |
+Creator of the app. +
The value MARKET is currently not supported. +Enumeration values: +
|
+
update_time + |
+String + |
+Update time. + |
+
app_key + |
+String + |
+AppKey. + |
+
app_secret + |
+String + |
+AppSecret. + |
+
register_time + |
+String + |
+Registration time. + |
+
status + |
+Integer + |
+Status. +
Enumeration values: +
|
+
app_type + |
+String + |
+App type. +
The default value is apig. Other types are not supported currently. +Enumeration values: +
|
+
roma_app_type + |
+String + |
+ROMA application type. +
Currently, this parameter is not supported. + |
+
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. + |
+
{
+ "app_secret" : "1ff226f0d2b54ac48c2d298c52ba49a4"
+}
+Status code: 200
+OK
+{
+ "creator" : "USER",
+ "update_time" : "2020-08-03T14:12:43.038171689Z",
+ "app_key" : "ee8f878c252747028f07eb116c2cd91b",
+ "name" : "app_demo",
+ "remark" : "Demo app",
+ "id" : "356de8eb7a8742168586e5daf5339965",
+ "app_secret" : "1ff226f0d2b54ac48c2d298c52ba49a4",
+ "register_time" : "2020-08-03T13:09:13Z",
+ "status" : 1,
+ "app_type" : "apig"
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName: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.3002",
+ "error_msg" : "App 356de8eb7a8742168586e5daf5339965 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the details of an access control policy.
+GET /v2/{project_id}/apigw/instances/{instance_id}/acls/{acl_id}
+ +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. + |
+
acl_id + |
+Yes + |
+String + |
+Access control policy ID. + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
acl_name + |
+String + |
+Name. + |
+
acl_type + |
+String + |
+Type. +
|
+
acl_value + |
+String + |
+Access control objects. + |
+
entity_type + |
+String + |
+Object type. +
|
+
id + |
+String + |
+ID. + |
+
update_time + |
+String + |
+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. + |
+
None
+Status code: 200
+OK
+{
+ "id" : "7eb619ecf2a24943b099833cd24a01ba",
+ "acl_name" : "acl_demo",
+ "entity_type" : "IP",
+ "acl_type" : "PERMIT",
+ "acl_value" : "192.168.1.5,192.168.10.1",
+ "update_time" : "2020-08-04T08:42:43Z"
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2011",
+ "error_msg" : "Invalid parameter value,parameterName: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.3006",
+ "error_msg" : "Access control policy 7eb619ecf2a24943b099833cd24a01ba does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the details of an API group.
+GET /v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id}
+ +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. + |
+
group_id + |
+Yes + |
+String + |
+API group ID. + |
+
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. + |
+
Status code: 200
+ +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. +
|
+
url_domains + |
+Array of UrlDomain objects + |
+Independent domain names bound to the API group. + |
+
sl_domains + |
+Array of strings + |
+Automatically allocated subdomain names. + |
+
remark + |
+String + |
+Description. + |
+
call_limits + |
+Integer + |
+Total number of times all APIs in the API group can be accessed. Consider the payload capacity of the backend service when setting this parameter. By default, there is no limit on the number of API calls. +Currently, this parameter is not supported. + |
+
time_interval + |
+Integer + |
+Period of time for limiting the number of API calls. +Currently, this parameter is not supported. + |
+
time_unit + |
+String + |
+Time unit for limiting the number of API calls. +Currently, this parameter is not supported. + |
+
is_default + |
+Integer + |
+Indicates whether the API group is the default group. + |
+
version + |
+String + |
+Group version. +
The default value is V1. This parameter is not supported currently. + |
+
roma_app_id + |
+String + |
+ID of the integration application to which the API group belongs. +This parameter is required when the group version is V2. +Currently, this parameter is not supported. + |
+
roma_app_name + |
+String + |
+Name of the integration application to which the API group belongs. +Currently, this parameter is not supported. + |
+
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 + |
+
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. + |
+
None
+Status code: 200
+OK
+{
+ "update_time" : "2020-07-31T06:55:55Z",
+ "name" : "api_group_001",
+ "on_sell_status" : 2,
+ "remark" : "API group 1",
+ "sl_domains" : [ "c77f5e81d9cb4424bf704ef2b0ac7600.apic.****.com", "c77f5e81d9cb4424bf704ef2b0ac7600.apic.****.cn" ],
+ "sl_domain" : "c77f5e81d9cb4424bf704ef2b0ac7600.apic.****.com",
+ "id" : "c77f5e81d9cb4424bf704ef2b0ac7600",
+ "register_time" : "2020-07-31T06:55:55Z",
+ "status" : 1,
+ "is_default" : 2
+}
+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: 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 Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the details of an API.
+GET /v2/{project_id}/apigw/instances/{instance_id}/apis/{api_id}
+ +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. + |
+
api_id + |
+Yes + |
+String + |
+API ID. + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
name + |
+String + |
+API name. +It can contain 3 to 64 characters, starting with a letter. Only letters, digits, and underscores (_) are allowed. + |
+
type + |
+Integer + |
+API type. +
Enumeration values: +
|
+
version + |
+String + |
+API version. +Maximum: 16 + |
+
req_protocol + |
+String + |
+Request protocol. +
Default: HTTPS +Enumeration values: +
|
+
req_method + |
+String + |
+Request method. +Enumeration values: +
|
+
req_uri + |
+String + |
+Request address. It can contain request parameters enclosed with brackets ({}). For example, /getUserInfo/{userId}. Special characters, such as asterisks (*), percent signs (%), hyphens (-), and underscores (_), are allowed. It can contain a maximum of 512 characters and must comply with URI specifications.> The value must comply with URI specifications. + |
+
auth_type + |
+String + |
+API authentication mode. +
Enumeration values: +
|
+
auth_opt + |
+AuthOpt object + |
+Security authentication parameter. + |
+
cors + |
+Boolean + |
+Indicates whether CORS is supported. +
Default: false +Enumeration values: +
|
+
match_mode + |
+String + |
+Route matching mode. +
The default value is NORMAL. +Enumeration values: +
|
+
backend_type + |
+String + |
+Backend type. +
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. The value cannot exceed 20,480 characters. + |
+
result_failure_sample + |
+String + |
+Example response for a failed request. The value cannot exceed 20,480 characters. + |
+
authorizer_id + |
+String + |
+ID of the frontend custom authorizer. + |
+
tags + |
+Array of strings + |
+Tags. +The value can contain only letters, digits, and underscores (_), and must start with a letter. You can enter multiple tags and separate them with commas (,). +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: +
Currently, this parameter is not supported. +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 + |
+Web backend details. + |
+
api_group_info + |
+ApiGroupCommonInfo object + |
+API group information. + |
+
func_info + |
+ApiFunc object + |
+FunctionGraph backend details. + |
+
mock_info + |
+ApiMock object + |
+Mock backend details. + |
+
req_params + |
+Array of ReqParam objects + |
+Request parameters. + |
+
backend_params + |
+Array of BackendParam objects + |
+Backend parameters. + |
+
policy_functions + |
+Array of ApiPolicyFunctionResp objects + |
+FunctionGraph backend policies. + |
+
policy_mocks + |
+Array of ApiPolicyMockResp objects + |
+Mock backend policies. + |
+
policy_https + |
+Array of ApiPolicyHttpResp objects + |
+Web backend policies. + |
+
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 + |
+Backend custom authorizer ID. + |
+
url_domain + |
+String + |
+Backend service address.It can consist 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. +Enumeration values: +
|
+
remark + |
+String + |
+Description. It cannot exceed 255 characters. + |
+
req_method + |
+String + |
+Request method. +Enumeration values: +
|
+
version + |
+String + |
+Web backend version, which can contain a maximum of 16 characters. + |
+
req_uri + |
+String + |
+Request address. It can contain request parameters enclosed with brackets ({}). For example, /getUserInfo/{userId}. Special characters, such as asterisks (*), percent signs (%), hyphens (-), and underscores (), are allowed. It can contain a maximum of 512 characters and must comply with URI specifications.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.> The value must comply with URI specifications. + |
+
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. +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 + |
+
|---|---|---|
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. +
|
+
url_domains + |
+Array of UrlDomain objects + |
+Independent domain names bound to the API group. + |
+
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 + |
+
|---|---|---|
function_urn + |
+String + |
+Function URN. + |
+
remark + |
+String + |
+Description. It cannot exceed 255 characters. + |
+
invocation_type + |
+String + |
+Invocation mode. +
Enumeration values: +
|
+
network_type + |
+String + |
+Function network architecture. +
Enumeration values: +
|
+
version + |
+String + |
+Function version. +If both a function alias URN and version are passed, only the alias URN will be used. +Maximum: 64 + |
+
alias_urn + |
+String + |
+Function alias URN. +If both a function alias URN and version are passed, the alias URN will be used and the version will be ignored. + |
+
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 + |
+
authorizer_id + |
+String + |
+Backend custom authorizer ID. + |
+
id + |
+String + |
+ID. + |
+
register_time + |
+String + |
+Registration time. + |
+
status + |
+Integer + |
+Backend service status. +
|
+
update_time + |
+String + |
+Update time. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
remark + |
+String + |
+Description. It cannot exceed 255 characters. + |
+
result_content + |
+String + |
+Response. + |
+
version + |
+String + |
+Function version. It cannot exceed 64 characters. + |
+
authorizer_id + |
+String + |
+Backend custom authorizer ID. + |
+
id + |
+String + |
+ID. + |
+
register_time + |
+String + |
+Registration time. + |
+
status + |
+Integer + |
+Backend service status. +
|
+
update_time + |
+String + |
+Update time. + |
+
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. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
function_urn + |
+String + |
+Function URN. + |
+
invocation_type + |
+String + |
+Invocation mode. +
Enumeration values: +
|
+
network_type + |
+String + |
+Function network architecture. +
Enumeration values: +
|
+
version + |
+String + |
+Function version. +If both a function alias URN and version are passed, the alias URN will be used and the version will be ignored. +Maximum: 64 + |
+
alias_urn + |
+String + |
+Function alias URN. +If both a function alias URN and version are passed, the alias URN will be used and the version will be ignored. + |
+
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 + |
+
id + |
+String + |
+ID. + |
+
effect_mode + |
+String + |
+Effective mode of the backend policy. +
Enumeration values: +
|
+
name + |
+String + |
+Backend name, which must start with a letter and can contain letters, digits, and underscores (_). +Minimum: 3 +Maximum: 64 + |
+
backend_params + |
+Array of BackendParam objects + |
+Backend parameters. + |
+
conditions + |
+Array of CoditionResp objects + |
+Policy conditions. + |
+
authorizer_id + |
+String + |
+Backend custom authorizer ID. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
id + |
+String + |
+ID. + |
+
effect_mode + |
+String + |
+Effective mode of the backend policy. +
Enumeration values: +
|
+
name + |
+String + |
+Backend name, which must start with a letter and can contain letters, digits, and underscores (_). +Minimum: 3 +Maximum: 64 + |
+
backend_params + |
+Array of BackendParam objects + |
+Backend parameters. + |
+
conditions + |
+Array of CoditionResp objects + |
+Policy conditions. + |
+
authorizer_id + |
+String + |
+Backend custom authorizer ID. + |
+
result_content + |
+String + |
+Response. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
id + |
+String + |
+ID. + |
+
effect_mode + |
+String + |
+Effective mode of the backend policy. +
Enumeration values: +
|
+
name + |
+String + |
+Backend name, which must start with a letter and can contain letters, digits, and underscores (_). +Minimum: 3 +Maximum: 64 + |
+
backend_params + |
+Array of BackendParam objects + |
+Backend parameters. + |
+
conditions + |
+Array of CoditionResp objects + |
+Policy conditions. + |
+
authorizer_id + |
+String + |
+Backend custom authorizer ID. + |
+
url_domain + |
+String + |
+Endpoint of the policy backend.It can consist of a domain name or IP address and a port number, with not more than 255 characters. It must be in the format "Domain 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. The value can be HTTP or HTTPS. +Enumeration values: +
|
+
req_method + |
+String + |
+Request method. Options: GET, POST, PUT, DELETE, HEAD, PATCH, OPTIONS, ANY. +Enumeration values: +
|
+
req_uri + |
+String + |
+Request address. It can contain request parameters enclosed with brackets ({}). For example, /getUserInfo/{userId}. Special characters, such as asterisks (*), percent signs (%), hyphens (-), and underscores (), are allowed. It can contain a maximum of 512 characters and must comply with URI specifications.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.> The value must comply with URI specifications. + |
+
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 + |
+
retry_count + |
+String + |
+Number of retry attempts to request the backend service. The default value is -1. The value ranges from -1 to 10. +Default: -1 + |
+
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 + |
+
|---|---|---|
origin + |
+String + |
+Parameter type. +
Enumeration values: +
|
+
name + |
+String + |
+Parameter name. +The parameter name must start with a letter and can only contain letters, digits, hyphens (-), underscores (_), and periods (.). +Minimum: 1 +Maximum: 32 + |
+
remark + |
+String + |
+Description, which can contain a maximum of 255 characters. + |
+
location + |
+String + |
+Parameter location. The value can be PATH, QUERY, or HEADER. +Enumeration values: +
|
+
value + |
+String + |
+Parameter value, which can contain a maximum of 255 characters. +If the origin type is REQUEST, the value of this parameter is the parameter name in req_params. +If the origin type is CONSTANT, the value is a constant. +If the origin type is SYSTEM, the value is a system parameter name. System parameters include gateway parameters, frontend authentication parameters, and backend authentication parameters. You can set the frontend or backend authentication parameters after enabling custom frontend or backend authentication. +The gateway parameters are as follows: +
Frontend authentication parameter: prefixed with "$context.authorizer.frontend.". For example, to return "aaa" upon successful custom authentication, set this parameter to "$context.authorizer.frontend.aaa". +Backend authentication parameter: prefixed with "$context.authorizer.backend.". For example, to return "aaa" upon successful custom authentication, set this parameter to "$context.authorizer.backend.aaa". + |
+
id + |
+String + |
+Parameter ID. + |
+
req_param_id + |
+String + |
+Request parameter ID. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
req_param_name + |
+String + |
+Input parameter name. This parameter is required if the policy type is param. + |
+
condition_type + |
+String + |
+Policy condition. +
This parameter is required if the policy type is param. +Enumeration values: +
|
+
condition_origin + |
+String + |
+Policy type. +
Enumeration values: +
|
+
condition_value + |
+String + |
+Condition value. + |
+
id + |
+String + |
+ID. + |
+
req_param_id + |
+String + |
+Input parameter ID. + |
+
req_param_location + |
+String + |
+Input parameter location. + |
+
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. + |
+
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. + |
+
None
+Status code: 200
+OK
+{
+ "id" : "5f918d104dc84480a75166ba99efff21",
+ "tags" : [ "webApi" ],
+ "arrange_necessary" : 2,
+ "backend_type" : "HTTP",
+ "auth_type" : "AUTHORIZER",
+ "auth_opt" : {
+ "app_code_auth_type" : "DISABLE"
+ },
+ "authorizer_id" : "8d0443832a194eaa84244e0c1c1912ac",
+ "backend_api" : {
+ "update_time" : "2020-08-02T16:32:47.077029Z",
+ "vpc_channel_status" : 1,
+ "vpc_channel_info" : {
+ "vpc_channel_id" : "56a7d7358e1b42459c9d730d65b14e59",
+ "vpc_channel_proxy_host" : "www.example.com"
+ },
+ "url_domain" : "56a7d7358e1b42459c9d730d65b14e59",
+ "req_protocol" : "HTTPS",
+ "id" : "1ce8fda3586d4371bd83c955df37e102",
+ "req_method" : "GET",
+ "register_time" : "2020-07-31T12:42:51Z",
+ "req_uri" : "/test/benchmark",
+ "timeout" : 5000,
+ "status" : 1,
+ "retry_count" : "-1"
+ },
+ "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",
+ "result_normal_sample" : "Example success response",
+ "result_failure_sample" : "Example failure response",
+ "register_time" : "2020-07-31T12:42:51Z",
+ "update_time" : "2020-08-02T16:32:47.046289Z",
+ "remark" : "Web backend API",
+ "backend_params" : [ {
+ "name" : "X-CONSTANT-HEADER",
+ "value" : "demo",
+ "location" : "HEADER",
+ "origin" : "CONSTANT",
+ "remark" : "constant_demo",
+ "id" : "8cb2eba19e7a4423a4e835647a8b8d76"
+ }, {
+ "name" : "app-id",
+ "value" : "$context.appId",
+ "location" : "HEADER",
+ "origin" : "SYSTEM",
+ "remark" : "App ID of the API caller",
+ "id" : "216ddda836e74d528f364ff589d9dd21"
+ } ]
+}
+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.3002",
+ "error_msg" : "API 5f918d104dc84480a75166ba99efff21 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to create an AppCode for an app for simple authentication.
+GET /v2/{project_id}/apigw/instances/{instance_id}/apps/{app_id}/app-codes/{app_code_id}
+ +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. + |
+
app_id + |
+Yes + |
+String + |
+App ID. + |
+
app_code_id + |
+Yes + |
+String + |
+AppCode ID. + |
+
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. + |
+
Status code: 201
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
app_code + |
+String + |
+AppCode value. +The value can contain 64 to 180 characters, starting with a letter, plus sign (+), or slash (/). Only letters and the following special characters are allowed: +_!@#$%/= + |
+
id + |
+String + |
+ID. + |
+
app_id + |
+String + |
+App ID. + |
+
create_time + |
+String + |
+Creation 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. + |
+
None
+Status code: 201
+Created
+{
+ "app_code" : "fdc8d90a30174460a91ddacfa54d6f04c92e523a85cc4a1894f87cb13b6f572a",
+ "app_id" : "9ed8b7fe84224de681e7d7a5587e76dc",
+ "id" : "b3d34f746d0847fb95138670e10207ed",
+ "create_time" : "2020-07-24T02:31:45Z"
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName:app_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.3004",
+ "error_msg" : "App 9ed8b7fe84224de681e7d7a5587e76dc does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
201 + |
+Created + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the details of an app.
+GET /v2/{project_id}/apigw/instances/{instance_id}/apps/{app_id}
+ +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. + |
+
app_id + |
+Yes + |
+String + |
+App ID. + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
id + |
+String + |
+ID. + |
+
name + |
+String + |
+Name. + |
+
remark + |
+String + |
+Description. + |
+
creator + |
+String + |
+Creator of the app. +
The value MARKET is currently not supported. +Enumeration values: +
|
+
update_time + |
+String + |
+Update time. + |
+
app_key + |
+String + |
+AppKey. + |
+
app_secret + |
+String + |
+AppSecret. + |
+
register_time + |
+String + |
+Registration time. + |
+
status + |
+Integer + |
+Status. +
Enumeration values: +
|
+
app_type + |
+String + |
+App type. +
The default value is apig. Other types are not supported currently. +Enumeration values: +
|
+
roma_app_type + |
+String + |
+ROMA application type. +
Currently, this parameter is not supported. + |
+
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. + |
+
None
+Status code: 200
+OK
+{
+ "creator" : "USER",
+ "update_time" : "2020-08-03T13:09:13Z",
+ "app_key" : "ee8f878c252747028f07eb116c2cd91b",
+ "name" : "app_demo",
+ "remark" : "Demo app",
+ "id" : "356de8eb7a8742168586e5daf5339965",
+ "app_secret" : "416b6b2a1d394111b9bc1df0e6842ab8",
+ "register_time" : "2020-08-03T13:09:13Z",
+ "status" : 1,
+ "app_type" : "apig"
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName: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.3002",
+ "error_msg" : "App 356de8eb7a8742168586e5daf5339965 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the details of a custom authorizer.
+GET /v2/{project_id}/apigw/instances/{instance_id}/authorizers/{authorizer_id}
+ +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. + |
+
authorizer_id + |
+Yes + |
+String + |
+Custom authorizer ID. + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
name + |
+String + |
+Custom authorizer name. +It can contain 3 to 64 characters, starting with a letter. Only letters, digits, and underscores (_) are allowed. + |
+
type + |
+String + |
+Custom authorizer type. +
Modification is not allowed. +Enumeration values: +
|
+
authorizer_type + |
+String + |
+Value: FUNC. +Enumeration values: +
|
+
authorizer_uri + |
+String + |
+Function URN. + |
+
authorizer_version + |
+String + |
+Function version. +If both a function alias URN and version are passed, the alias URN will be used and the version will be ignored. +Maximum: 64 + |
+
authorizer_alias_uri + |
+String + |
+Function alias URN. +If both a function alias URN and version are passed, the alias URN will be used and the version will be ignored. + |
+
identities + |
+Array of Identity objects + |
+Identity source. + |
+
ttl + |
+Integer + |
+Maximum cache age. + |
+
user_data + |
+String + |
+User data. + |
+
ld_api_id + |
+String + |
+Custom backend ID. +Currently, this parameter is not supported. + |
+
need_body + |
+Boolean + |
+Indicates whether to send the body. + |
+
id + |
+String + |
+Custom authorizer ID. + |
+
create_time + |
+String + |
+Creation time. + |
+
roma_app_id + |
+String + |
+ID of the application to which the custom authorizer belongs. +Currently, this parameter is not supported. + |
+
roma_app_name + |
+String + |
+Name of the application to which the custom authorizer belongs. +Currently, this parameter is not supported. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
name + |
+String + |
+Parameter name. + |
+
location + |
+String + |
+Parameter location. +Enumeration values: +
|
+
validation + |
+String + |
+Parameter verification expression. The default value is null, indicating that no verification is performed. + |
+
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. + |
+
None
+Status code: 200
+OK
+{
+ "name" : "Authorizer_demo",
+ "type" : "FRONTEND",
+ "authorizer_type" : "FUNC",
+ "authorizer_uri" : "urn:fss:xx-xxx-4:106506b9a92342df9a5025fc12351cfc:function:defau:apigDemo_1592617458814",
+ "authorizer_version" : "v1",
+ "authorizer_alias_uri" : "urn:fss:xx-xxx-4:106506b9a92342df9a5025fc12351cfc:function:defau:apigDemo_1592617458814:!v1",
+ "identities" : [ {
+ "name" : "header",
+ "location" : "HEADER"
+ } ],
+ "ttl" : 0,
+ "user_data" : "authorizer_test",
+ "id" : "0d982c1ac3da493dae47627b6439fc5c",
+ "create_time" : "2020-07-31T11:55:43Z"
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2011",
+ "error_msg" : "Invalid parameter value,parameterName:type. 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.3081",
+ "error_msg" : "authorizer with id: 0d982c1ac3da493dae47627b6439fc5c not found"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the details of the certificate bound to a domain name.
+GET /v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id}/domains/{domain_id}/certificate/{certificate_id}
+ +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. + |
+
group_id + |
+Yes + |
+String + |
+API group ID. + |
+
domain_id + |
+Yes + |
+String + |
+Domain ID. + |
+
certificate_id + |
+Yes + |
+String + |
+Certificate ID. + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
id + |
+String + |
+Certificate ID. + |
+
name + |
+String + |
+Certificate name. + |
+
type + |
+String + |
+Certificate type. Options: +
Enumeration values: +
|
+
instance_id + |
+String + |
+Gateway ID. +
|
+
project_id + |
+String + |
+Project ID. + |
+
create_time + |
+String + |
+Creation time. + |
+
update_time + |
+String + |
+Update time. + |
+
common_name + |
+String + |
+Certificate domain name. + |
+
san + |
+Array of strings + |
+Subject alternative names. + |
+
version + |
+Integer + |
+Certificate version. + |
+
organization + |
+Array of strings + |
+Company or organization. + |
+
organizational_unit + |
+Array of strings + |
+Department. + |
+
locality + |
+Array of strings + |
+City. + |
+
state + |
+Array of strings + |
+State or province. + |
+
country + |
+Array of strings + |
+Country or region. + |
+
not_before + |
+String + |
+Start time of the certificate validity period. + |
+
not_after + |
+String + |
+End time of the certificate validity period. + |
+
serial_number + |
+String + |
+Serial No. + |
+
issuer + |
+Array of strings + |
+Certificate issuer. + |
+
signature_algorithm + |
+String + |
+Signature algorithm. + |
+
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. + |
+
None
+Status code: 200
+OK
+{
+ "serial_number" : "219450666855693268010130472645821723203",
+ "version" : 3,
+ "san" : [ "www.company.com" ],
+ "not_before" : "2019-06-01T00:00:00Z",
+ "issuer" : [ "mkcert development CA" ],
+ "not_after" : "2030-08-04T07:41:19Z",
+ "organization" : [ "mkcert development certificate" ],
+ "signature_algorithm" : "SHA256-RSA",
+ "organizational_unit" : [ "XXX\\\\DESKTOP-L2TFOFH" ]
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName:domain_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.3020",
+ "error_msg" : "The URL domain does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the details of an environment variable.
+GET /v2/{project_id}/apigw/instances/{instance_id}/env-variables/{env_variable_id}
+ +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. + |
+
env_variable_id + |
+Yes + |
+String + |
+Environment variable ID. + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
variable_value + |
+String + |
+The variable value can contain 1 to 255 characters. Only letters, digits, and special characters (_-/.:) are allowed. + |
+
env_id + |
+String + |
+Environment ID. +Minimum: 1 +Maximum: 65 + |
+
group_id + |
+String + |
+API group ID. +Minimum: 1 +Maximum: 65 + |
+
variable_name + |
+String + |
+Variable name, which can contain 3 to 32 characters, starting with a letter. Only letters, digits, hyphens (-), and underscores (_) are allowed. The variable name is equivalent to "#Name#" in API definitions. Characters between the number signs are case-sensitive. The variable name will be replaced with the variable value after API publication. + |
+
id + |
+String + |
+Environment variable ID. + |
+
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. + |
+
None
+Status code: 200
+OK
+{
+ "variable_value" : "192.168.1.5",
+ "env_id" : "7a1ad0c350844ee69479b47df9a881cb",
+ "group_id" : "c77f5e81d9cb4424bf704ef2b0ac7600",
+ "id" : "25054838a624400bbf2267cf5b3a3f70",
+ "variable_name" : "address"
+}
+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.3011",
+ "error_msg" : "The environment variable does not exist, id: 25054838a624400bbf2267cf5b3a3f70"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the response of an error type defined for an API group.
+GET /v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id}/gateway-responses/{response_id}/{response_type}
+ +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. + |
+
group_id + |
+Yes + |
+String + |
+API group ID. + |
+
response_id + |
+Yes + |
+String + |
+Response ID. + |
+
response_type + |
+Yes + |
+String + |
+Error type. +Enumeration values: +
|
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
{User defined key} + |
+Map<String,ResponseInfoResp> + |
+OK + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
status + |
+Integer + |
+HTTP status code of the response. + |
+
body + |
+String + |
+Response body template. + |
+
default + |
+Boolean + |
+Indicates whether the response is the default response. + |
+
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. + |
+
None
+Status code: 200
+OK
+{
+ "ACCESS_DENIED" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 403
+ }
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName:group_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.3001",
+ "error_msg" : "API group c77f5e81d9cb4424bf704ef2b0ac7600 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the details of a response defined for an API group.
+GET /v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id}/gateway-responses/{response_id}
+ +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. + |
+
group_id + |
+Yes + |
+String + |
+API group ID. + |
+
response_id + |
+Yes + |
+String + |
+Response ID. + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
name + |
+String + |
+Response name. + |
+
responses + |
+Map<String,ResponseInfoResp> + |
+Response type definition, which includes a key and value. Options of the key: +
Each error type is in JSON format. + |
+
id + |
+String + |
+Response ID. + |
+
default + |
+Boolean + |
+Indicates whether the group response is the default response. + |
+
create_time + |
+String + |
+Creation time. + |
+
update_time + |
+String + |
+Update time. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
status + |
+Integer + |
+HTTP status code of the response. + |
+
body + |
+String + |
+Response body template. + |
+
default + |
+Boolean + |
+Indicates whether the response is the default response. + |
+
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. + |
+
None
+Status code: 200
+Created
+{
+ "create_time" : "2020-08-12T06:52:02Z",
+ "update_time" : "2020-08-12T06:52:02Z",
+ "default" : false,
+ "id" : "e839b367e10f4ab19d1c5008e476b83a",
+ "name" : "response_demo",
+ "responses" : {
+ "ACCESS_DENIED" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 403
+ },
+ "AUTHORIZER_CONF_FAILURE" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 500
+ },
+ "AUTHORIZER_FAILURE" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 500
+ },
+ "AUTHORIZER_IDENTITIES_FAILURE" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 401
+ },
+ "AUTH_FAILURE" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 401
+ },
+ "AUTH_HEADER_MISSING" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 401
+ },
+ "BACKEND_TIMEOUT" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 504
+ },
+ "BACKEND_UNAVAILABLE" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 502
+ },
+ "DEFAULT_4XX" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true
+ },
+ "DEFAULT_5XX" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true
+ },
+ "NOT_FOUND" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 404
+ },
+ "REQUEST_PARAMETERS_FAILURE" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 400
+ },
+ "THROTTLED" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 429
+ },
+ "UNAUTHORIZED" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 401
+ }
+ }
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName:group_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.3001",
+ "error_msg" : "API group c77f5e81d9cb4424bf704ef2b0ac7600 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+Created + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the creation progress of a dedicated gateway.
+GET /v2/{project_id}/apigw/instances/{instance_id}/progress
+ +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 + |
+
|---|---|---|---|
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
progress + |
+Integer + |
+Gateway creation progress. +Unit: % +Enumeration values: +
|
+
status + |
+String + |
+Gateway creation status. +
Enumeration values: +
|
+
error_code + |
+String + |
+Error code. + |
+
error_msg + |
+String + |
+Error message. + |
+
start_time + |
+Long + |
+Time when the gateway creation starts. The time is in the Unix timestamp format. + |
+
end_time + |
+Long + |
+Time when the gateway creation is completed. The time is in the Unix timestamp format. + |
+
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. + |
+
None
+Status code: 200
+OK
+Gateway created.
+{
+ "end_time" : 1597390224911,
+ "error_code" : null,
+ "error_msg" : null,
+ "progress" : 100,
+ "start_time" : 1597389901161,
+ "status" : "success"
+}
+Gateway is being created.
+{
+ "end_time" : 1597390224911,
+ "error_code" : null,
+ "error_msg" : null,
+ "progress" : 50,
+ "start_time" : 1597389901161,
+ "status" : "creating"
+}
+Gateway creation failed due to insufficient quota.
+{
+ "end_time" : 1597390224911,
+ "error_code" : "APIC.9218",
+ "error_msg" : "create failed...",
+ "progress" : 0,
+ "start_time" : 1597389901161,
+ "status" : "failed"
+}
+Gateway creation failed due to insufficient resources.
+{
+ "end_time" : 1597390224911,
+ "error_code" : "APIC.9219",
+ "error_msg" : "create failed...",
+ "progress" : 0,
+ "start_time" : 1597389901161,
+ "status" : "failed"
+}
+Gateway creation failed due to other reasons.
+{
+ "end_time" : 1597390224911,
+ "error_code" : "APIC.9206",
+ "error_msg" : "create failed...",
+ "progress" : 0,
+ "start_time" : 1597389901161,
+ "status" : "failed"
+}
+Status code: 401
+Unauthorized
+{
+ "error_code" : "APIC.7102",
+ "error_msg" : "Incorrect token or token resolution failed"
+}
+Status code: 403
+Forbidden
+{
+ "error_code" : "APIC.7106",
+ "error_msg" : "No permissions to request for the method"
+}
+Status code: 404
+Not Found
+{
+ "error_code" : "APIC.7302",
+ "error_msg" : "Instance not found"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIC.9000",
+ "error_msg" : "Failed to request internal service"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the details of a dedicated gateway.
+GET /v2/{project_id}/apigw/instances/{instance_id}
+ +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 + |
+
|---|---|---|---|
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
id + |
+String + |
+Gateway ID. + |
+
project_id + |
+String + |
+ID of the tenant to which the gateway belongs. + |
+
instance_name + |
+String + |
+Gateway name. + |
+
status + |
+String + |
+Gateway status. +
Enumeration values: +
|
+
instance_status + |
+Integer + |
+Gateway status ID. +
Enumeration values: +
|
+
type + |
+String + |
+Gateway type. +The default value is apig. + |
+
spec + |
+String + |
+Gateway edition. +
Enumeration values: +
|
+
create_time + |
+Long + |
+Time when the gateway is created. The time is in the Unix timestamp format. + |
+
enterprise_project_id + |
+String + |
+Enterprise project ID. This parameter is required if you are using an enterprise account. + |
+
eip_address + |
+String + |
+EIP bound to the gateway. + |
+
charging_mode + |
+Integer + |
+Billing mode of the gateway. +
Enumeration values: +
|
+
cbc_metadata + |
+String + |
+This parameter is not used currently. + |
+
loadbalancer_provider + |
+String + |
+Type of the load balancer used by the gateway. +
Default: lvs +Enumeration values: +
|
+
description + |
+String + |
+Description about the gateway. + |
+
vpc_id + |
+String + |
+VPC ID. +You can obtain it in either of the following ways: +
|
+
subnet_id + |
+String + |
+Subnet network ID. +You can obtain it in either of the following ways: +
|
+
security_group_id + |
+String + |
+ID of the security group to which the gateway belongs. +You can obtain it in either of the following ways: +
|
+
maintain_begin + |
+String + |
+Start time of the maintenance time window. It must be in the format "xx:00:00". The value of xx can be 02, 06, 10, 14, 18, or 22. +During the maintenance time period, the O&M personnel can perform maintenance operations on the gateway. During maintenance, services can still be used, but occasionally there may be temporary service interruptions. Scheduled maintenance occurs infrequently (typically once every several months). + |
+
maintain_end + |
+String + |
+End time of the maintenance time window. It must be in the format "xx:00:00". There is a 4-hour difference between the start time and end time. +During the maintenance time period, the O&M personnel can perform maintenance operations on the gateway. During maintenance, services can still be used, but occasionally there may be temporary service interruptions. Scheduled maintenance occurs infrequently (typically once every several months). + |
+
ingress_ip + |
+String + |
+VPC ingress address. + |
+
ingress_ip_v6 + |
+String + |
+VPC access address (IPv6). + |
+
user_id + |
+String + |
+ID of the account to which the gateway belongs. + |
+
nat_eip_ipv6_cidr + |
+String + |
+Public egress address (IPv6). +Currently, IPv6 addresses are supported only in certain regions. + |
+
eip_ipv6_address + |
+String + |
+EIP (IPv6). +Currently, IPv6 addresses are supported only in certain regions. + |
+
nat_eip_address + |
+String + |
+IP address for public outbound access. + |
+
bandwidth_size + |
+Integer + |
+Outbound access bandwidth. + |
+
bandwidth_charging_mode + |
+String + |
+Billing mode of the public outbound access bandwidth. + |
+
available_zone_ids + |
+String + |
+AZ. + |
+
instance_version + |
+String + |
+Gateway version. + |
+
virsubnet_id + |
+String + |
+Subnet network ID. +Currently, this parameter is not supported. + |
+
roma_eip_address + |
+String + |
+ROMA EIP. +Currently, this parameter is not supported. + |
+
listeners + |
+Object + |
+Listener information. +Currently, this parameter is not supported. + |
+
supported_features + |
+Array of strings + |
+Supported features. + |
+
endpoint_service + |
+EndpointService object + |
+VPC endpoint service details. +This parameter will be deprecated. Use endpoint_services instead. + |
+
endpoint_services + |
+Array of EndpointService objects + |
+VPC endpoint services. + |
+
node_ips + |
+NodeIps object + |
+VPC endpoint ID. + |
+
publicips + |
+Array of IpDetails objects + |
+Public inbound access addresses. + |
+
privateips + |
+Array of IpDetails objects + |
+Private inbound access addresses. + |
+
is_releasable + |
+Boolean + |
+Whether the gateway can be released. +
|
+
ingress_bandwidth_charging_mode + |
+String + |
+Billing mode of the public inbound access bandwidth. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
service_name + |
+String + |
+VPC endpoint service name. + |
+
created_at + |
+String + |
+Creation time. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
livedata + |
+Array of strings + |
+LiveData node IP addresses. + |
+
shubao + |
+Array of strings + |
+Shubao node IP addresses. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
ip_address + |
+String + |
+IP address. + |
+
bandwidth_size + |
+Integer + |
+Bandwidth. + |
+
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. + |
+
None
+Status code: 200
+OK
+{
+ "id" : "8dfxxxxxxxxxxxxxxxxxxxxxxxxxx00p",
+ "spec" : "BASIC",
+ "project_id" : "78xxxxxxxxxxxxxxxxxxxxxxxxxxxxoi",
+ "instance_name" : "apig-demo",
+ "status" : "Running",
+ "instance_status" : 6,
+ "eip_address" : null,
+ "type" : null,
+ "create_time" : 1635890506328,
+ "charging_mode" : 0,
+ "enterprise_project_id" : "0",
+ "loadbalancer_provider" : "elb",
+ "description" : "test create instance",
+ "instance_version" : "acc6d368a3cb4d47840380bf62b0ab32",
+ "available_zone_ids" : "[xx-xxx-7a, xx-xxx-7b]",
+ "user_id" : "e966ff7227ef4df49df7d57aaf00f8ed",
+ "vpc_id" : "0402ea19-5457-4032-9d1b-eb48b98f6c66",
+ "subnet_id" : "a3bd29e4-d5bc-414c-a79a-1f35ee4ead88",
+ "virsubnet_id" : "a3bd29e4-d5bc-414c-a79a-1f35ee4ead88",
+ "security_group_id" : "4b95a790-5cfc-463d-8de5-42199e55371c",
+ "maintain_begin" : "22:00:00",
+ "maintain_end" : "02:00:00",
+ "ingress_ip" : "192.168.0.152",
+ "ingress_ip_v6" : null,
+ "nat_eip_address" : "100.95.159.18",
+ "roma_eip_address" : null,
+ "bandwidth_size" : 5,
+ "bandwidth_charging_mode" : "traffic",
+ "nat_eip_ipv6_cidr" : null,
+ "eip_ipv6_address" : null,
+ "supported_features" : [ "lts", "gateway_responses", "ratelimit", "request_body_size", "backend_timeout", "app_token", "app_basic", "app_secret", "multi_auth", "route", "sign_basic", "app_route", "backend_client_certificate", "ssl_ciphers", "cors", "app_quota", "app_acl", "real_ip_from_xff", "set_resp_headers", "vpc_backup", "throttle_strategy", "watch_instance", "sign_aes", "mock_status_code_and_header", "backend_retry_count", "custom_log", "real_ip_header_getter", "policy_sys_param", "vpc_name_modifiable", "breaker", "default_group_host_trustlist" ],
+ "node_ips" : {
+ "livedata" : [ ],
+ "shubao" : [ "192.168.0.123", "192.168.0.114" ]
+ },
+ "endpoint_service" : null,
+ "endpoint_services" : [ {
+ "service_name" : "xx-xxx-7a.apig.20bc4a91-1542-43s2-a278-b1e49c0hh6f9",
+ "created_at" : "2021-8-03 06:04:43"
+ } ],
+ "publicips" : [ {
+ "ip_address" : "100.95.156.198",
+ "bandwidth_size" : 5
+ } ],
+ "privateips" : [ {
+ "ip_address" : "100.95.156.198",
+ "bandwidth_size" : 5
+ } ],
+ "ingress_bandwidth_charging_mode" : "traffic"
+}
+Status code: 401
+Unauthorized
+{
+ "error_code" : "APIC.7102",
+ "error_msg" : "Incorrect token or token resolution failed"
+}
+Status code: 403
+Forbidden
+{
+ "error_code" : "APIC.7106",
+ "error_msg" : "No permissions to request for the method"
+}
+Status code: 404
+Not Found
+{
+ "error_code" : "APIC.7302",
+ "error_msg" : "Instance not found"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIC.9000",
+ "error_msg" : "Failed to request internal service"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the details of a request throttling policy.
+GET /v2/{project_id}/apigw/instances/{instance_id}/throttles/{throttle_id}
+ +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. + |
+
throttle_id + |
+Yes + |
+String + |
+Request throttling policy ID. + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
app_call_limits + |
+Integer + |
+Maximum number of times the API can be accessed by an app within the same period. The value of this parameter cannot exceed the user call limit. The maximum value is 2,147,483,647. Enter a positive integer. + |
+
name + |
+String + |
+Request throttling policy name. It can contain 3 to 64 characters, starting with a letter. Only letters, digits, and underscores (_) are allowed. + |
+
time_unit + |
+String + |
+Time unit for limiting the number of API calls. +Enumeration values: +
|
+
remark + |
+String + |
+Description of the request throttling policy, which can contain a maximum of 255 characters. + |
+
api_call_limits + |
+Integer + |
+Maximum number of times an API can be accessed within a specified period. The value of this parameter cannot exceed the default limit 200 TPS. You can change the default limit to meet service requirements. The maximum value is 2,147,483,647. Enter a positive integer. + |
+
type + |
+Integer + |
+Type of the request throttling policy. +
Enumeration values: +
|
+
enable_adaptive_control + |
+String + |
+Indicates whether to enable dynamic request throttling. +
Currently, this parameter is not supported. + |
+
user_call_limits + |
+Integer + |
+Maximum number of times the API can be accessed by a user within the same period. The value of this parameter cannot exceed the Max. API Requests. The maximum value is 2,147,483,647. Enter a positive integer. + |
+
time_interval + |
+Integer + |
+Period of time for limiting the number of API calls. This parameter applies with each API call limit. The maximum value is 2,147,483,647. Enter a positive integer. + |
+
ip_call_limits + |
+Integer + |
+Maximum number of times the API can be accessed by an IP address within the same period. The value of this parameter cannot exceed the API call limit. The maximum value is 2,147,483,647. Enter a positive integer. + |
+
id + |
+String + |
+Request throttling policy ID. + |
+
bind_num + |
+Integer + |
+Number of APIs to which the request throttling policy has been bound. + |
+
is_inclu_special_throttle + |
+Integer + |
+Indicates whether an excluded request throttling configuration has been created. +
Enumeration values: +
|
+
create_time + |
+String + |
+Creation time. + |
+
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. + |
+
None
+Status code: 200
+OK
+{
+ "name" : "throttle_demo",
+ "create_time" : "2020-07-31T08:44:02.205366118Z",
+ "remark" : "Total: 800 calls/second; user: 500 calls/second; app: 300 calls/second; IP address: 600 calls/second",
+ "type" : 1,
+ "time_interval" : 1,
+ "ip_call_limits" : 600,
+ "app_call_limits" : 300,
+ "time_unit" : "SECOND",
+ "api_call_limits" : 800,
+ "id" : "3437448ad06f4e0c91a224183116e965",
+ "user_call_limits" : 500,
+ "enable_adaptive_control" : "FALSE",
+ "bind_num" : 0,
+ "is_inclu_special_throttle" : 2
+}
+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.3005",
+ "error_msg" : "Request throttling policy 3437448ad06f4e0c91a224183116e965 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to query the details of a VPC channel.
+GET /v2/{project_id}/apigw/instances/{instance_id}/vpc-channels/{vpc_channel_id}
+ +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. + |
+
vpc_channel_id + |
+Yes + |
+String + |
+VPC channel ID. + |
+
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. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
name + |
+String + |
+VPC channel name. +It can contain 3 to 64 characters, starting with a letter. Only letters, digits, hyphens (-), and underscores (_) are allowed. + |
+
port + |
+Integer + |
+Host port of the VPC channel. +Range: 1–65535. + |
+
balance_strategy + |
+Integer + |
+Distribution algorithm. +
Default: 1 +Enumeration values: +
|
+
member_type + |
+String + |
+Member type of the VPC channel. +
Default: ecs +Enumeration values: +
|
+
type + |
+Integer + |
+VPC channel type. The default type is server. +
Default: 2 +Enumeration values: +
|
+
dict_code + |
+String + |
+Dictionary code of the VPC channel. +The value can contain letters, digits, hyphens (-), underscores (_), and periods (.). +This parameter is currently not supported. +Minimum: 3 +Maximum: 64 + |
+
create_time + |
+String + |
+Time when the VPC channel is created. + |
+
id + |
+String + |
+VPC channel ID. + |
+
status + |
+Integer + |
+VPC channel status. +
Enumeration values: +
|
+
member_groups + |
+Array of MemberGroupInfo objects + |
+Backend server groups. + |
+
microservice_info + |
+MicroServiceInfo object + |
+Microservice information. + |
+
members + |
+Array of VpcMemberInfo objects + |
+Backend instances. + |
+
vpc_health_config + |
+VpcHealthConfigInfo object + |
+Health check details. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
member_group_name + |
+String + |
+Name of the backend server group of the VPC channel. + |
+
member_group_remark + |
+String + |
+Description of the backend server group. + |
+
member_group_weight + |
+Integer + |
+Weight of the backend server group. +If the server group contains servers and a weight has been set for it, the weight is automatically used to assign weights to servers in this group. +Minimum: 0 +Maximum: 100 + |
+
dict_code + |
+String + |
+Dictionary code of the backend server group. +The value can contain letters, digits, hyphens (-), underscores (_), and periods (.). +Currently, this parameter is not supported. +Minimum: 3 +Maximum: 64 + |
+
microservice_version + |
+String + |
+Version of the backend server group. This parameter is supported only when the VPC channel type is microservice. +Maximum: 64 + |
+
microservice_port + |
+Integer + |
+Port of the backend server group. This parameter is supported only when the VPC channel type is microservice. If the port number is 0, all addresses in the backend server group use the original load balancing port to inherit logic. +Minimum: 0 +Maximum: 65535 + |
+
microservice_labels + |
+Array of MicroserviceLabel objects + |
+Tags of the backend server group. This parameter is supported only when the VPC channel type is microservice. + |
+
member_group_id + |
+String + |
+ID of the backend server group of the VPC channel. + |
+
create_time + |
+String + |
+Time when the backend server group is created. + |
+
update_time + |
+String + |
+Time when the backend server group is updated. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
label_name + |
+String + |
+Tag name. +Start and end with a letter or digit. Use only letters, digits, hyphens (-), underscores (_), and periods (.). (Max. 63 characters.) +Minimum: 1 +Maximum: 63 + |
+
label_value + |
+String + |
+Tag value. +Start and end with a letter or digit. Use only letters, digits, hyphens (-), underscores (_), and periods (.). (Max. 63 characters.) +Minimum: 1 +Maximum: 63 + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
id + |
+String + |
+Microservice ID. + |
+
instance_id + |
+String + |
+Gateway ID. + |
+
service_type + |
+String + |
+Microservice type. +
Enumeration values: +
|
+
cse_info + |
+MicroServiceInfoCSE object + |
+CSE microservice details. + |
+
cce_info + |
+MicroServiceInfoCCE object + |
+CCE microservice details. + |
+
update_time + |
+String + |
+Microservice update time. + |
+
create_time + |
+String + |
+Microservice creation time. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
engine_id + |
+String + |
+Microservice engine ID. +Maximum: 64 + |
+
service_id + |
+String + |
+Microservice ID. +Maximum: 64 + |
+
engine_name + |
+String + |
+Microservice engine name. + |
+
service_name + |
+String + |
+Microservice name. + |
+
register_address + |
+String + |
+Registration center address. + |
+
cse_app_id + |
+String + |
+App to which the microservice belongs. + |
+
version + |
+String + |
+Microservice version, which has been discarded and is reflected in the version of the backend server group. +Maximum: 64 + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
cluster_id + |
+String + |
+CCE cluster ID. +Maximum: 64 + |
+
namespace + |
+String + |
+Namespace. +Maximum: 64 + |
+
workload_type + |
+String + |
+Workload type. +
Enumeration values: +
|
+
app_name + |
+String + |
+App name. +Maximum: 64 + |
+
cluster_name + |
+String + |
+CCE cluster name. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
host + |
+String + |
+Backend server address. +This parameter is required when the member type is IP address. +Maximum: 64 + |
+
weight + |
+Integer + |
+Weight. +The higher the weight is, the more requests a backend service will receive. +Minimum: 0 +Maximum: 10000 + |
+
is_backup + |
+Boolean + |
+Indicates whether the backend service is a standby node. +After you enable this function, the backend service serves as a standby node. It works only when all non-standby nodes are faulty. +This function is supported only when your gateway has been upgraded to the corresponding version. If your gateway does not support this function, contact technical support. +Default: false + |
+
member_group_name + |
+String + |
+Backend server group name. The server group facilitates backend service address modification. + |
+
status + |
+Integer + |
+Backend server status. +
Enumeration values: +
|
+
port + |
+Integer + |
+Backend server port. +Minimum: 0 +Maximum: 65535 + |
+
ecs_id + |
+String + |
+Backend server ID. +This parameter is required if the backend instance type is ecs. The value can contain 1 to 64 characters, including letters, digits, hyphens (-), and underscores (_). +Maximum: 255 + |
+
ecs_name + |
+String + |
+Backend server name. +This parameter is required if the backend instance type is ecs. The value can contain 1 to 64 characters, including letters, digits, hyphens (-), underscores (_), and periods (.). +Maximum: 64 + |
+
id + |
+String + |
+Backend server ID. + |
+
vpc_channel_id + |
+String + |
+VPC channel ID. + |
+
create_time + |
+String + |
+Time when the backend server is added to the VPC channel. + |
+
member_group_id + |
+String + |
+Backend server group ID. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
protocol + |
+String + |
+Protocol for performing health checks on backend servers in the VPC channel. +
Enumeration values: +
|
+
path + |
+String + |
+Destination path for health checks. This parameter is required if protocol is set to http or https. + |
+
method + |
+String + |
+Request method for health checks. +Default: GET +Enumeration values: +
|
+
port + |
+Integer + |
+Destination port for health checks. If this parameter is not specified or set to 0, the host port of the VPC channel is used. +If this parameter is set to a non-zero value, the corresponding port is used for health checks. +Minimum: 0 +Maximum: 65535 + |
+
threshold_normal + |
+Integer + |
+Healthy threshold. It refers to the number of consecutive successful checks required for a backend server to be considered healthy. +Minimum: 2 +Maximum: 10 + |
+
threshold_abnormal + |
+Integer + |
+Unhealthy threshold, which refers to the number of consecutive failed checks required for a backend server to be considered unhealthy. +Minimum: 2 +Maximum: 10 + |
+
time_interval + |
+Integer + |
+Interval between consecutive checks. Unit: s. The value must be greater than the value of timeout. +Minimum: 5 +Maximum: 300 + |
+
http_code + |
+String + |
+Response codes for determining a successful HTTP response. The value can be any integer within 100–599 in one of the following formats: +
|
+
enable_client_ssl + |
+Boolean + |
+Indicates whether to enable two-way authentication. If this function is enabled, the certificate specified in the backend_client_certificate configuration item of the gateway is used. +Default: false + |
+
status + |
+Integer + |
+Health check result. +
Enumeration values: +
|
+
timeout + |
+Integer + |
+Timeout for determining whether a health check fails. Unit: s. The value must be less than the value of time_interval. +Minimum: 2 +Maximum: 30 + |
+
vpc_channel_id + |
+String + |
+VPC channel ID. + |
+
id + |
+String + |
+Health check ID. + |
+
create_time + |
+String + |
+Creation 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. + |
+
None
+Status code: 200
+OK
+Example 1
+{
+ "name" : "VPC_demo",
+ "port" : 22,
+ "balance_strategy" : 1,
+ "member_type" : "ip",
+ "dict_code" : "",
+ "create_time" : "2020-07-23T07:11:57.244829604Z",
+ "id" : "56a7d7358e1b42459c9d730d65b14e59",
+ "status" : 1,
+ "member_groups" : [ ],
+ "type" : 2,
+ "members" : [ {
+ "host" : "192.168.0.5",
+ "weight" : 1,
+ "is_backup" : false,
+ "member_group_name" : "",
+ "status" : 1,
+ "port" : 22,
+ "ecs_id" : "192.168.0.5",
+ "ecs_name" : "192.168.0.5",
+ "id" : "be63c6260a1043888187f84af39c9f0e",
+ "vpc_channel_id" : "56a7d7358e1b42459c9d730d65b14e59",
+ "create_time" : "2020-07-23T07:11:57Z",
+ "member_group_id" : ""
+ }, {
+ "host" : "192.168.1.124",
+ "weight" : 2,
+ "is_backup" : false,
+ "member_group_name" : "",
+ "status" : 1,
+ "port" : 22,
+ "ecs_id" : "192.168.1.124",
+ "ecs_name" : "192.168.1.124",
+ "id" : "a57b13f1b89b417ca8acd76909e6df67",
+ "vpc_channel_id" : "56a7d7358e1b42459c9d730d65b14e59",
+ "create_time" : "2020-07-23T07:11:57Z",
+ "member_group_id" : ""
+ } ],
+ "vpc_health_config" : {
+ "protocol" : "http",
+ "path" : "/vpc/demo",
+ "method" : "GET",
+ "port" : 22,
+ "threshold_normal" : 2,
+ "threshold_abnormal" : 5,
+ "time_interval" : 10,
+ "http_code" : "200",
+ "enable_client_ssl" : false,
+ "status" : 1,
+ "timeout" : 5,
+ "vpc_channel_id" : "56a7d7358e1b42459c9d730d65b14e59",
+ "id" : "3b3d02026c5f402d85e8645ea95b0816",
+ "create_time" : "2020-07-23T07:11:57Z"
+ },
+ "microservice_info" : {
+ "id" : "",
+ "instance_id" : "",
+ "service_type" : "",
+ "cse_info" : {
+ "cse_app_id" : "",
+ "engine_id" : "",
+ "engine_name" : "",
+ "register_address" : "",
+ "service_id" : "",
+ "service_name" : ""
+ },
+ "cce_info" : {
+ "cluster_id" : "",
+ "cluster_name" : "",
+ "namespace" : "",
+ "workload_type" : "",
+ "app_name" : ""
+ },
+ "create_time" : "",
+ "update_time" : ""
+ }
+}
+Example 2
+{
+ "name" : "VPC_demo",
+ "id" : "105c6902457144a4820dff8b1ad63331",
+ "balance_strategy" : 1,
+ "dict_code" : "",
+ "create_time" : "2020-07-23T07:11:57.244829604Z",
+ "member_type" : "ip",
+ "port" : 22,
+ "status" : 1,
+ "member_groups" : [ {
+ "member_group_id" : "c1ce135c705c4066853a0460b318fe16",
+ "member_group_name" : "test",
+ "member_group_weight" : 1,
+ "member_group_remark" : "remark",
+ "create_time" : "2020-07-23T07:11:57.244829604Z",
+ "update_time" : "2020-07-23T07:11:57.244829604Z",
+ "microservice_version" : "v1",
+ "microservice_port" : 80
+ }, {
+ "member_group_id" : "c1ce135c705c4066853a0460b318fe17",
+ "member_group_name" : "default",
+ "member_group_weight" : 2,
+ "member_group_remark" : "remark",
+ "create_time" : "2020-07-23T07:11:57.244829604Z",
+ "update_time" : "2020-07-23T07:11:57.244829604Z",
+ "microservice_version" : "v2",
+ "microservice_port" : 80
+ } ],
+ "type" : 3,
+ "vpc_health_config" : {
+ "protocol" : "http",
+ "path" : "/vpc/demo",
+ "method" : "GET",
+ "port" : 22,
+ "threshold_normal" : 2,
+ "threshold_abnormal" : 5,
+ "time_interval" : 10,
+ "http_code" : "200",
+ "enable_client_ssl" : false,
+ "status" : 1,
+ "timeout" : 5,
+ "vpc_channel_id" : "56a7d7358e1b42459c9d730d65b14e59",
+ "id" : "3b3d02026c5f402d85e8645ea95b0816",
+ "create_time" : "2020-07-23T07:11:57Z"
+ },
+ "microservice_info" : {
+ "id" : "9483afa235be45158a70c19ab817ac65",
+ "instance_id" : "eddc4d25480b4cd6b512f270a1b8b341",
+ "service_type" : "CCE",
+ "cse_info" : {
+ "cse_app_id" : "",
+ "engine_id" : "",
+ "engine_name" : "",
+ "register_address" : "",
+ "service_id" : "",
+ "service_name" : ""
+ },
+ "cce_info" : {
+ "cluster_id" : "ab1485b4f91b45abbcd560be591f7309",
+ "cluster_name" : "cce-test",
+ "namespace" : "default",
+ "workload_type" : "deployment",
+ "app_name" : "testapp"
+ },
+ "create_time" : "2020-07-23T07:11:57.244829604Z",
+ "update_time" : "2020-07-23T07:11:57.244829604Z"
+ }
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName: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.3023",
+ "error_msg" : "The VPC channel does not exist,id:56a7d7358e1b42459c9d730d65b14e59"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to modify an access control policy. Only attributes acl_name, acl_type, and acl_value can be modified.
+PUT /v2/{project_id}/apigw/instances/{instance_id}/acls/{acl_id}
+ +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. + |
+
acl_id + |
+Yes + |
+String + |
+Access control policy ID. + |
+
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
acl_name + |
+Yes + |
+String + |
+Access control policy name. It can contain 3 to 64 characters, starting with a letter. Only letters, digits, and underscores (_) are allowed. + |
+
acl_type + |
+Yes + |
+String + |
+Type. +
Enumeration values: +
|
+
acl_value + |
+Yes + |
+String + |
+One or more objects from which the access will be controlled. Separate multiple objects with commas. + |
+
entity_type + |
+Yes + |
+String + |
+Object type. +
Enumeration values: +
|
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
acl_name + |
+String + |
+Name. + |
+
acl_type + |
+String + |
+Type. +
|
+
acl_value + |
+String + |
+Access control objects. + |
+
entity_type + |
+String + |
+Object type. +
|
+
id + |
+String + |
+ID. + |
+
update_time + |
+String + |
+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. + |
+
{
+ "acl_name" : "acl_demo",
+ "entity_type" : "IP",
+ "acl_type" : "PERMIT",
+ "acl_value" : "192.168.1.5,192.168.10.1"
+}
+Status code: 200
+OK
+{
+ "id" : "7eb619ecf2a24943b099833cd24a01ba",
+ "acl_name" : "acl_demo",
+ "entity_type" : "IP",
+ "acl_type" : "PERMIT",
+ "acl_value" : "192.168.1.5,192.168.10.1",
+ "update_time" : "2020-08-04T08:54:55.975856802Z"
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2011",
+ "error_msg" : "Invalid parameter value,parameterName:acl_type. 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.3006",
+ "error_msg" : "Access control policy 7eb619ecf2a24943b099833cd24a01ba does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to modify the attributes of an API group. Only the name and remark attributes of an API group can be modified.
+PUT /v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id}
+ +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. + |
+
group_id + |
+Yes + |
+String + |
+API group ID. + |
+
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
name + |
+Yes + |
+String + |
+API group name. +The value can contain 3 to 255 characters, including letters, digits, and special characters (-_./():). It must start with a letter or digit. +Minimum: 3 +Maximum: 255 + |
+
remark + |
+No + |
+String + |
+API group description. +Maximum: 1000 + |
+
Status code: 200
+ +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. +
|
+
url_domains + |
+Array of UrlDomain objects + |
+Independent domain names bound to the API group. + |
+
sl_domains + |
+Array of strings + |
+Automatically allocated subdomain names. + |
+
remark + |
+String + |
+Description. + |
+
call_limits + |
+Integer + |
+Total number of times all APIs in the API group can be accessed. Consider the payload capacity of the backend service when setting this parameter. By default, there is no limit on the number of API calls. +Currently, this parameter is not supported. + |
+
time_interval + |
+Integer + |
+Period of time for limiting the number of API calls. +Currently, this parameter is not supported. + |
+
time_unit + |
+String + |
+Time unit for limiting the number of API calls. +Currently, this parameter is not supported. + |
+
is_default + |
+Integer + |
+Indicates whether the API group is the default group. + |
+
version + |
+String + |
+Group version. +
The default value is V1. This parameter is not supported currently. + |
+
roma_app_id + |
+String + |
+ID of the integration application to which the API group belongs. +This parameter is required when the group version is V2. +Currently, this parameter is not supported. + |
+
roma_app_name + |
+String + |
+Name of the integration application to which the API group belongs. +Currently, this parameter is not supported. + |
+
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 + |
+
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. + |
+
{
+ "name" : "api_group_001",
+ "remark" : "API group 1"
+}
+Status code: 200
+OK
+{
+ "update_time" : "2020-07-31T06:55:55Z.866474185Z",
+ "name" : "api_group_001",
+ "on_sell_status" : 2,
+ "remark" : "API group 1",
+ "sl_domains" : [ "c77f5e81d9cb4424bf704ef2b0ac7600.apic.****.com", "c77f5e81d9cb4424bf704ef2b0ac7600.apic.****.cn" ],
+ "sl_domain" : "c77f5e81d9cb4424bf704ef2b0ac7600.apic.****.com",
+ "id" : "c77f5e81d9cb4424bf704ef2b0ac7600",
+ "register_time" : "2020-07-31T06:55:55Z",
+ "status" : 1,
+ "is_default" : 2
+}
+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: 404
+Not Found
+{
+ "error_code" : "APIG.3001",
+ "error_msg" : "API group c77f5e81d9cb4424bf704ef2b0ac7600 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to modify the information about an API, including its backend information.
+PUT /v2/{project_id}/apigw/instances/{instance_id}/apis/{api_id}
+ +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. + |
+
api_id + |
+Yes + |
+String + |
+API ID. + |
+
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
name + |
+Yes + |
+String + |
+API name. +It can contain 3 to 64 characters, starting with a letter. Only letters, digits, and underscores (_) are allowed. + |
+
type + |
+Yes + |
+Integer + |
+API type. +
Enumeration values: +
|
+
version + |
+No + |
+String + |
+API version. +Maximum: 16 + |
+
req_protocol + |
+Yes + |
+String + |
+Request protocol. +
Default: HTTPS +Enumeration values: +
|
+
req_method + |
+Yes + |
+String + |
+Request method. +Enumeration values: +
|
+
req_uri + |
+Yes + |
+String + |
+Request address. It can contain request parameters enclosed with brackets ({}). For example, /getUserInfo/{userId}. Special characters, such as asterisks (*), percent signs (%), hyphens (-), and underscores (_), are allowed. It can contain a maximum of 512 characters and must comply with URI specifications.> The value must comply with URI specifications. + |
+
auth_type + |
+Yes + |
+String + |
+API authentication mode. +
Enumeration values: +
|
+
auth_opt + |
+No + |
+AuthOpt object + |
+Security authentication parameter. + |
+
cors + |
+No + |
+Boolean + |
+Indicates whether CORS is supported. +
Default: false +Enumeration values: +
|
+
match_mode + |
+No + |
+String + |
+Route matching mode. +
The default value is NORMAL. +Enumeration values: +
|
+
backend_type + |
+Yes + |
+String + |
+Backend type. +
Enumeration values: +
|
+
remark + |
+No + |
+String + |
+API description. It cannot exceed 255 characters. + |
+
group_id + |
+Yes + |
+String + |
+ID of the API group to which the API belongs. + |
+
body_remark + |
+No + |
+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 + |
+No + |
+String + |
+Example response for a successful request. The value cannot exceed 20,480 characters. + |
+
result_failure_sample + |
+No + |
+String + |
+Example response for a failed request. The value cannot exceed 20,480 characters. + |
+
authorizer_id + |
+No + |
+String + |
+ID of the frontend custom authorizer. + |
+
tags + |
+No + |
+Array of strings + |
+Tags. +The value can contain only letters, digits, and underscores (_), and must start with a letter. You can enter multiple tags and separate them with commas (,). +Minimum: 1 +Maximum: 128 + |
+
response_id + |
+No + |
+String + |
+Group response ID. + |
+
roma_app_id + |
+No + |
+String + |
+Integration application ID. +Currently, this parameter is not supported. + |
+
domain_name + |
+No + |
+String + |
+Custom domain name bound to the API. +Currently, this parameter is not supported. + |
+
tag + |
+No + |
+String + |
+Tag. +This field will be deprecated. You can use the tags field instead. + |
+
content_type + |
+No + |
+String + |
+Request content type: +
Currently, this parameter is not supported. +Enumeration values: +
|
+
mock_info + |
+No + |
+ApiMockCreate object + |
+Mock backend details. + |
+
func_info + |
+No + |
+ApiFuncCreate object + |
+FunctionGraph backend details. + |
+
req_params + |
+No + |
+Array of ReqParamBase objects + |
+Request parameters. + |
+
backend_params + |
+No + |
+Array of BackendParamBase objects + |
+Backend parameters. + |
+
policy_mocks + |
+No + |
+Array of ApiPolicyMockCreate objects + |
+Mock backend policies. + |
+
policy_functions + |
+No + |
+Array of ApiPolicyFunctionCreate objects + |
+FunctionGraph backend policies. + |
+
backend_api + |
+No + |
+BackendApiCreate object + |
+Web backend details. + |
+
policy_https + |
+No + |
+Array of ApiPolicyHttpCreate objects + |
+Web backend policies. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
app_code_auth_type + |
+No + |
+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 + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
remark + |
+No + |
+String + |
+Description. It cannot exceed 255 characters. + |
+
result_content + |
+No + |
+String + |
+Response. + |
+
version + |
+No + |
+String + |
+Function version. It cannot exceed 64 characters. + |
+
authorizer_id + |
+No + |
+String + |
+Backend custom authorizer ID. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
function_urn + |
+Yes + |
+String + |
+Function URN. + |
+
remark + |
+No + |
+String + |
+Description. It cannot exceed 255 characters. + |
+
invocation_type + |
+Yes + |
+String + |
+Invocation mode. +
Enumeration values: +
|
+
network_type + |
+Yes + |
+String + |
+Function network architecture. +
Enumeration values: +
|
+
version + |
+No + |
+String + |
+Function version. +If both a function alias URN and version are passed, only the alias URN will be used. +Maximum: 64 + |
+
alias_urn + |
+No + |
+String + |
+Function alias URN. +If both a function alias URN and version are passed, the alias URN will be used and the version will be ignored. + |
+
timeout + |
+Yes + |
+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 + |
+
authorizer_id + |
+No + |
+String + |
+Backend custom authorizer ID. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
name + |
+Yes + |
+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 + |
+Yes + |
+String + |
+Parameter type. +Enumeration values: +
|
+
location + |
+Yes + |
+String + |
+Parameter location. +Enumeration values: +
|
+
default_value + |
+No + |
+String + |
+Default value. + |
+
sample_value + |
+No + |
+String + |
+Example value. + |
+
required + |
+No + |
+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 + |
+No + |
+Integer + |
+Indicates whether validity check is enabled. +
Default: 2 +Enumeration values: +
|
+
remark + |
+No + |
+String + |
+Description. It cannot exceed 255 characters. + |
+
enumerations + |
+No + |
+String + |
+Enumerated value. + |
+
min_num + |
+No + |
+Integer + |
+Minimum value. +This parameter is valid when type is set to NUMBER. + |
+
max_num + |
+No + |
+Integer + |
+Maximum value. +This parameter is valid when type is set to NUMBER. + |
+
min_size + |
+No + |
+Integer + |
+Minimum length. +This parameter is valid when type is set to STRING. + |
+
max_size + |
+No + |
+Integer + |
+Maximum length. +This parameter is valid when type is set to STRING. + |
+
regular + |
+No + |
+String + |
+Regular expression validation rule. +Currently, this parameter is not supported. + |
+
json_schema + |
+No + |
+String + |
+JSON validation rule. +Currently, this parameter is not supported. + |
+
pass_through + |
+No + |
+Integer + |
+Indicates whether to transparently transfer the parameter. 1: yes 2: no +Enumeration values: +
|
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
result_content + |
+No + |
+String + |
+Response. + |
+
effect_mode + |
+Yes + |
+String + |
+Effective mode of the backend policy. +
Enumeration values: +
|
+
name + |
+Yes + |
+String + |
+Backend name. It must start with a letter and can contain letters, digits, and underscores (_). +Minimum: 3 +Maximum: 64 + |
+
backend_params + |
+No + |
+Array of BackendParamBase objects + |
+Backend parameters. + |
+
conditions + |
+Yes + |
+Array of ApiConditionBase objects + |
+Policy conditions. + |
+
authorizer_id + |
+No + |
+String + |
+Backend custom authorizer ID. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
function_urn + |
+Yes + |
+String + |
+Function URN. + |
+
invocation_type + |
+Yes + |
+String + |
+Invocation mode. +
Enumeration values: +
|
+
network_type + |
+Yes + |
+String + |
+Function network architecture. +
Enumeration values: +
|
+
version + |
+No + |
+String + |
+Function version. +If both a function alias URN and version are passed, the alias URN will be used and the version will be ignored. +Maximum: 64 + |
+
alias_urn + |
+No + |
+String + |
+Function alias URN. +If both a function alias URN and version are passed, the alias URN will be used and the version will be ignored. + |
+
timeout + |
+No + |
+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 + |
+
effect_mode + |
+Yes + |
+String + |
+Effective mode of the backend policy. +
Enumeration values: +
|
+
name + |
+Yes + |
+String + |
+Backend name. It must start with a letter and can contain letters, digits, and underscores (_). +Minimum: 3 +Maximum: 64 + |
+
backend_params + |
+No + |
+Array of BackendParamBase objects + |
+Backend parameters. + |
+
conditions + |
+Yes + |
+Array of ApiConditionBase objects + |
+Policy conditions. + |
+
authorizer_id + |
+No + |
+String + |
+Backend custom authorizer ID. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
authorizer_id + |
+No + |
+String + |
+Backend custom authorizer ID. + |
+
url_domain + |
+No + |
+String + |
+Backend service address.It can consist 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 + |
+Yes + |
+String + |
+Request protocol. +Enumeration values: +
|
+
remark + |
+No + |
+String + |
+Description. It cannot exceed 255 characters. + |
+
req_method + |
+Yes + |
+String + |
+Request method. +Enumeration values: +
|
+
version + |
+No + |
+String + |
+Web backend version, which can contain a maximum of 16 characters. + |
+
req_uri + |
+Yes + |
+String + |
+Request address. It can contain request parameters enclosed with brackets ({}). For example, /getUserInfo/{userId}. Special characters, such as asterisks (*), percent signs (%), hyphens (-), and underscores (), are allowed. It can contain a maximum of 512 characters and must comply with URI specifications.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.> The value must comply with URI specifications. + |
+
timeout + |
+Yes + |
+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 + |
+No + |
+Boolean + |
+Indicates whether to enable two-way authentication. + |
+
retry_count + |
+No + |
+String + |
+Number of retry attempts to request the backend service. The default value is -1. The value ranges from -1 to 10. +Default: -1 + |
+
vpc_channel_info + |
+No + |
+ApiBackendVpcReq object + |
+VPC channel details. This parameter is required if vpc_channel_status is set to 1. + |
+
vpc_channel_status + |
+No + |
+Integer + |
+Indicates whether to use a VPC channel. +
Enumeration values: +
|
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
url_domain + |
+No + |
+String + |
+Endpoint of the policy backend.It can consist of a domain name or IP address and a port number, with not more than 255 characters. It must be in the format "Domain 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 + |
+Yes + |
+String + |
+Request protocol. The value can be HTTP or HTTPS. +Enumeration values: +
|
+
req_method + |
+Yes + |
+String + |
+Request method. Options: GET, POST, PUT, DELETE, HEAD, PATCH, OPTIONS, ANY. +Enumeration values: +
|
+
req_uri + |
+Yes + |
+String + |
+Request address. It can contain request parameters enclosed with brackets ({}). For example, /getUserInfo/{userId}. Special characters, such as asterisks (*), percent signs (%), hyphens (-), and underscores (), are allowed. It can contain a maximum of 512 characters and must comply with URI specifications.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.> The value must comply with URI specifications. + |
+
timeout + |
+No + |
+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 + |
+
retry_count + |
+No + |
+String + |
+Number of retry attempts to request the backend service. The default value is -1. The value ranges from -1 to 10. +Default: -1 + |
+
effect_mode + |
+Yes + |
+String + |
+Effective mode of the backend policy. +
Enumeration values: +
|
+
name + |
+Yes + |
+String + |
+Backend name. It must start with a letter and can contain letters, digits, and underscores (_). +Minimum: 3 +Maximum: 64 + |
+
backend_params + |
+No + |
+Array of BackendParamBase objects + |
+Backend parameters. + |
+
conditions + |
+Yes + |
+Array of ApiConditionBase objects + |
+Policy conditions. + |
+
authorizer_id + |
+No + |
+String + |
+Backend custom authorizer ID. + |
+
vpc_channel_info + |
+No + |
+ApiBackendVpcReq object + |
+VPC channel details. This parameter is required if vpc_channel_status is set to 1. + |
+
vpc_channel_status + |
+No + |
+Integer + |
+Indicates whether to use a VPC channel. +
Enumeration values: +
|
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
origin + |
+Yes + |
+String + |
+Parameter type. +
Enumeration values: +
|
+
name + |
+Yes + |
+String + |
+Parameter name. +The parameter name must start with a letter and can only contain letters, digits, hyphens (-), underscores (_), and periods (.). +Minimum: 1 +Maximum: 32 + |
+
remark + |
+No + |
+String + |
+Description, which can contain a maximum of 255 characters. + |
+
location + |
+Yes + |
+String + |
+Parameter location. The value can be PATH, QUERY, or HEADER. +Enumeration values: +
|
+
value + |
+Yes + |
+String + |
+Parameter value, which can contain a maximum of 255 characters. +If the origin type is REQUEST, the value of this parameter is the parameter name in req_params. +If the origin type is CONSTANT, the value is a constant. +If the origin type is SYSTEM, the value is a system parameter name. System parameters include gateway parameters, frontend authentication parameters, and backend authentication parameters. You can set the frontend or backend authentication parameters after enabling custom frontend or backend authentication. +The gateway parameters are as follows: +
Frontend authentication parameter: prefixed with "$context.authorizer.frontend.". For example, to return "aaa" upon successful custom authentication, set this parameter to "$context.authorizer.frontend.aaa". +Backend authentication parameter: prefixed with "$context.authorizer.backend.". For example, to return "aaa" upon successful custom authentication, set this parameter to "$context.authorizer.backend.aaa". + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
req_param_name + |
+No + |
+String + |
+Input parameter name. This parameter is required if the policy type is param. + |
+
condition_type + |
+No + |
+String + |
+Policy condition. +
This parameter is required if the policy type is param. +Enumeration values: +
|
+
condition_origin + |
+Yes + |
+String + |
+Policy type. +
Enumeration values: +
|
+
condition_value + |
+Yes + |
+String + |
+Condition value. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
name + |
+String + |
+API name. +It can contain 3 to 64 characters, starting with a letter. Only letters, digits, and underscores (_) are allowed. + |
+
type + |
+Integer + |
+API type. +
Enumeration values: +
|
+
version + |
+String + |
+API version. +Maximum: 16 + |
+
req_protocol + |
+String + |
+Request protocol. +
Default: HTTPS +Enumeration values: +
|
+
req_method + |
+String + |
+Request method. +Enumeration values: +
|
+
req_uri + |
+String + |
+Request address. It can contain request parameters enclosed with brackets ({}). For example, /getUserInfo/{userId}. Special characters, such as asterisks (*), percent signs (%), hyphens (-), and underscores (_), are allowed. It can contain a maximum of 512 characters and must comply with URI specifications.> The value must comply with URI specifications. + |
+
auth_type + |
+String + |
+API authentication mode. +
Enumeration values: +
|
+
auth_opt + |
+AuthOpt object + |
+Security authentication parameter. + |
+
cors + |
+Boolean + |
+Indicates whether CORS is supported. +
Default: false +Enumeration values: +
|
+
match_mode + |
+String + |
+Route matching mode. +
The default value is NORMAL. +Enumeration values: +
|
+
backend_type + |
+String + |
+Backend type. +
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. The value cannot exceed 20,480 characters. + |
+
result_failure_sample + |
+String + |
+Example response for a failed request. The value cannot exceed 20,480 characters. + |
+
authorizer_id + |
+String + |
+ID of the frontend custom authorizer. + |
+
tags + |
+Array of strings + |
+Tags. +The value can contain only letters, digits, and underscores (_), and must start with a letter. You can enter multiple tags and separate them with commas (,). +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: +
Currently, this parameter is not supported. +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 + |
+Web backend details. + |
+
api_group_info + |
+ApiGroupCommonInfo object + |
+API group information. + |
+
func_info + |
+ApiFunc object + |
+FunctionGraph backend details. + |
+
mock_info + |
+ApiMock object + |
+Mock backend details. + |
+
req_params + |
+Array of ReqParam objects + |
+Request parameters. + |
+
backend_params + |
+Array of BackendParam objects + |
+Backend parameters. + |
+
policy_functions + |
+Array of ApiPolicyFunctionResp objects + |
+FunctionGraph backend policies. + |
+
policy_mocks + |
+Array of ApiPolicyMockResp objects + |
+Mock backend policies. + |
+
policy_https + |
+Array of ApiPolicyHttpResp objects + |
+Web backend policies. + |
+
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 + |
+Backend custom authorizer ID. + |
+
url_domain + |
+String + |
+Backend service address.It can consist 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. +Enumeration values: +
|
+
remark + |
+String + |
+Description. It cannot exceed 255 characters. + |
+
req_method + |
+String + |
+Request method. +Enumeration values: +
|
+
version + |
+String + |
+Web backend version, which can contain a maximum of 16 characters. + |
+
req_uri + |
+String + |
+Request address. It can contain request parameters enclosed with brackets ({}). For example, /getUserInfo/{userId}. Special characters, such as asterisks (*), percent signs (%), hyphens (-), and underscores (), are allowed. It can contain a maximum of 512 characters and must comply with URI specifications.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.> The value must comply with URI specifications. + |
+
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. +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 + |
+
|---|---|---|
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. +
|
+
url_domains + |
+Array of UrlDomain objects + |
+Independent domain names bound to the API group. + |
+
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 + |
+
|---|---|---|
function_urn + |
+String + |
+Function URN. + |
+
remark + |
+String + |
+Description. It cannot exceed 255 characters. + |
+
invocation_type + |
+String + |
+Invocation mode. +
Enumeration values: +
|
+
network_type + |
+String + |
+Function network architecture. +
Enumeration values: +
|
+
version + |
+String + |
+Function version. +If both a function alias URN and version are passed, only the alias URN will be used. +Maximum: 64 + |
+
alias_urn + |
+String + |
+Function alias URN. +If both a function alias URN and version are passed, the alias URN will be used and the version will be ignored. + |
+
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 + |
+
authorizer_id + |
+String + |
+Backend custom authorizer ID. + |
+
id + |
+String + |
+ID. + |
+
register_time + |
+String + |
+Registration time. + |
+
status + |
+Integer + |
+Backend service status. +
|
+
update_time + |
+String + |
+Update time. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
remark + |
+String + |
+Description. It cannot exceed 255 characters. + |
+
result_content + |
+String + |
+Response. + |
+
version + |
+String + |
+Function version. It cannot exceed 64 characters. + |
+
authorizer_id + |
+String + |
+Backend custom authorizer ID. + |
+
id + |
+String + |
+ID. + |
+
register_time + |
+String + |
+Registration time. + |
+
status + |
+Integer + |
+Backend service status. +
|
+
update_time + |
+String + |
+Update time. + |
+
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. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
function_urn + |
+String + |
+Function URN. + |
+
invocation_type + |
+String + |
+Invocation mode. +
Enumeration values: +
|
+
network_type + |
+String + |
+Function network architecture. +
Enumeration values: +
|
+
version + |
+String + |
+Function version. +If both a function alias URN and version are passed, the alias URN will be used and the version will be ignored. +Maximum: 64 + |
+
alias_urn + |
+String + |
+Function alias URN. +If both a function alias URN and version are passed, the alias URN will be used and the version will be ignored. + |
+
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 + |
+
id + |
+String + |
+ID. + |
+
effect_mode + |
+String + |
+Effective mode of the backend policy. +
Enumeration values: +
|
+
name + |
+String + |
+Backend name, which must start with a letter and can contain letters, digits, and underscores (_). +Minimum: 3 +Maximum: 64 + |
+
backend_params + |
+Array of BackendParam objects + |
+Backend parameters. + |
+
conditions + |
+Array of CoditionResp objects + |
+Policy conditions. + |
+
authorizer_id + |
+String + |
+Backend custom authorizer ID. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
id + |
+String + |
+ID. + |
+
effect_mode + |
+String + |
+Effective mode of the backend policy. +
Enumeration values: +
|
+
name + |
+String + |
+Backend name, which must start with a letter and can contain letters, digits, and underscores (_). +Minimum: 3 +Maximum: 64 + |
+
backend_params + |
+Array of BackendParam objects + |
+Backend parameters. + |
+
conditions + |
+Array of CoditionResp objects + |
+Policy conditions. + |
+
authorizer_id + |
+String + |
+Backend custom authorizer ID. + |
+
result_content + |
+String + |
+Response. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
id + |
+String + |
+ID. + |
+
effect_mode + |
+String + |
+Effective mode of the backend policy. +
Enumeration values: +
|
+
name + |
+String + |
+Backend name, which must start with a letter and can contain letters, digits, and underscores (_). +Minimum: 3 +Maximum: 64 + |
+
backend_params + |
+Array of BackendParam objects + |
+Backend parameters. + |
+
conditions + |
+Array of CoditionResp objects + |
+Policy conditions. + |
+
authorizer_id + |
+String + |
+Backend custom authorizer ID. + |
+
url_domain + |
+String + |
+Endpoint of the policy backend.It can consist of a domain name or IP address and a port number, with not more than 255 characters. It must be in the format "Domain 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. The value can be HTTP or HTTPS. +Enumeration values: +
|
+
req_method + |
+String + |
+Request method. Options: GET, POST, PUT, DELETE, HEAD, PATCH, OPTIONS, ANY. +Enumeration values: +
|
+
req_uri + |
+String + |
+Request address. It can contain request parameters enclosed with brackets ({}). For example, /getUserInfo/{userId}. Special characters, such as asterisks (*), percent signs (%), hyphens (-), and underscores (), are allowed. It can contain a maximum of 512 characters and must comply with URI specifications.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.> The value must comply with URI specifications. + |
+
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 + |
+
retry_count + |
+String + |
+Number of retry attempts to request the backend service. The default value is -1. The value ranges from -1 to 10. +Default: -1 + |
+
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 + |
+
|---|---|---|
origin + |
+String + |
+Parameter type. +
Enumeration values: +
|
+
name + |
+String + |
+Parameter name. +The parameter name must start with a letter and can only contain letters, digits, hyphens (-), underscores (_), and periods (.). +Minimum: 1 +Maximum: 32 + |
+
remark + |
+String + |
+Description, which can contain a maximum of 255 characters. + |
+
location + |
+String + |
+Parameter location. The value can be PATH, QUERY, or HEADER. +Enumeration values: +
|
+
value + |
+String + |
+Parameter value, which can contain a maximum of 255 characters. +If the origin type is REQUEST, the value of this parameter is the parameter name in req_params. +If the origin type is CONSTANT, the value is a constant. +If the origin type is SYSTEM, the value is a system parameter name. System parameters include gateway parameters, frontend authentication parameters, and backend authentication parameters. You can set the frontend or backend authentication parameters after enabling custom frontend or backend authentication. +The gateway parameters are as follows: +
Frontend authentication parameter: prefixed with "$context.authorizer.frontend.". For example, to return "aaa" upon successful custom authentication, set this parameter to "$context.authorizer.frontend.aaa". +Backend authentication parameter: prefixed with "$context.authorizer.backend.". For example, to return "aaa" upon successful custom authentication, set this parameter to "$context.authorizer.backend.aaa". + |
+
id + |
+String + |
+Parameter ID. + |
+
req_param_id + |
+String + |
+Request parameter ID. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
req_param_name + |
+String + |
+Input parameter name. This parameter is required if the policy type is param. + |
+
condition_type + |
+String + |
+Policy condition. +
This parameter is required if the policy type is param. +Enumeration values: +
|
+
condition_origin + |
+String + |
+Policy type. +
Enumeration values: +
|
+
condition_value + |
+String + |
+Condition value. + |
+
id + |
+String + |
+ID. + |
+
req_param_id + |
+String + |
+Input parameter ID. + |
+
req_param_location + |
+String + |
+Input parameter location. + |
+
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. + |
+
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. + |
+
{
+ "group_id" : "c77f5e81d9cb4424bf704ef2b0ac7600",
+ "match_mode" : "NORMAL",
+ "name" : "Api_http",
+ "auth_type" : "APP",
+ "backend_type" : "HTTP",
+ "backend_api" : {
+ "vpc_channel_status" : 1,
+ "vpc_channel_info" : {
+ "vpc_channel_id" : "56a7d7358e1b42459c9d730d65b14e59",
+ "vpc_channel_proxy_host" : "www.example.com"
+ },
+ "req_protocol" : "HTTPS",
+ "req_method" : "GET",
+ "req_uri" : "/test/benchmark",
+ "timeout" : 5000,
+ "retry_count" : "-1"
+ },
+ "cors" : false,
+ "req_protocol" : "HTTPS",
+ "req_uri" : "/test/http",
+ "remark" : "Web backend API",
+ "type" : 1,
+ "req_method" : "GET",
+ "result_normal_sample" : "Example success response",
+ "result_failure_sample" : "Example failure response",
+ "backend_params" : [ {
+ "name" : "X-CONSTANT-HEADER",
+ "value" : "demo",
+ "location" : "HEADER",
+ "origin" : "CONSTANT",
+ "remark" : "constant_demo"
+ }, {
+ "name" : "app-id",
+ "value" : "$context.appId",
+ "location" : "HEADER",
+ "origin" : "SYSTEM",
+ "remark" : "App ID of the API caller"
+ } ],
+ "tags" : [ "webApi" ]
+}
+Status code: 200
+OK
+{
+ "id" : "5f918d104dc84480a75166ba99efff21",
+ "tags" : [ "webApi" ],
+ "arrange_necessary" : 2,
+ "backend_type" : "HTTP",
+ "auth_type" : "APP",
+ "auth_opt" : {
+ "app_code_auth_type" : "DISABLE"
+ },
+ "backend_api" : {
+ "update_time" : "2020-08-02T16:32:47.077028841Z",
+ "vpc_channel_status" : 1,
+ "vpc_channel_info" : {
+ "vpc_channel_id" : "56a7d7358e1b42459c9d730d65b14e59",
+ "vpc_channel_proxy_host" : "www.example.com"
+ },
+ "url_domain" : "56a7d7358e1b42459c9d730d65b14e59",
+ "req_protocol" : "HTTPS",
+ "id" : "1ce8fda3586d4371bd83c955df37e102",
+ "req_method" : "GET",
+ "register_time" : "2020-07-31T12:42:51Z",
+ "req_uri" : "/test/benchmark",
+ "timeout" : 5000,
+ "status" : 1,
+ "retry_count" : "-1"
+ },
+ "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",
+ "result_normal_sample" : "Example success response",
+ "result_failure_sample" : "Example failure response",
+ "register_time" : "2020-07-31T12:42:51Z",
+ "update_time" : "2020-08-02T16:32:47.046288842Z",
+ "remark" : "Web backend API",
+ "backend_params" : [ {
+ "name" : "X-CONSTANT-HEADER",
+ "value" : "demo",
+ "location" : "HEADER",
+ "origin" : "CONSTANT",
+ "remark" : "constant_demo",
+ "id" : "8cb2eba19e7a4423a4e835647a8b8d76"
+ }, {
+ "name" : "app-id",
+ "value" : "$context.appId",
+ "location" : "HEADER",
+ "origin" : "SYSTEM",
+ "remark" : "App ID of the API caller",
+ "id" : "216ddda836e74d528f364ff589d9dd21"
+ } ]
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2011",
+ "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: 404
+Not Found
+{
+ "error_code" : "APIG.3002",
+ "error_msg" : "API 5f918d104dc84480a75166ba99efff21 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to modify the information about an app. Only the name and remark parameters can be modified. If the function of customizing keys and secrets is enabled, app_key and app_secret can also be modified.
+PUT /v2/{project_id}/apigw/instances/{instance_id}/apps/{app_id}
+ +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. + |
+
app_id + |
+Yes + |
+String + |
+App ID. + |
+
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
name + |
+Yes + |
+String + |
+App name. It can contain 3 to 64 characters, starting with a letter. Only letters, digits, and underscores (_) are allowed. + |
+
remark + |
+No + |
+String + |
+App description. It cannot exceed 255 characters. + |
+
app_key + |
+No + |
+String + |
+AppKey. It can contain 8 to 64 characters, starting with a letter or digit. Only letters, digits, hyphens (-), and underscores (_) are allowed. + |
+
app_secret + |
+No + |
+String + |
+AppSecret. It can contain 8 to 64 characters, starting with a letter or digit. Only letters, digits, and the following special characters are allowed: _-!@#$% + |
+
Status code: 201
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
id + |
+String + |
+ID. + |
+
name + |
+String + |
+Name. + |
+
remark + |
+String + |
+Description. + |
+
creator + |
+String + |
+Creator of the app. +
The value MARKET is currently not supported. +Enumeration values: +
|
+
update_time + |
+String + |
+Update time. + |
+
app_key + |
+String + |
+AppKey. + |
+
app_secret + |
+String + |
+AppSecret. + |
+
register_time + |
+String + |
+Registration time. + |
+
status + |
+Integer + |
+Status. +
Enumeration values: +
|
+
app_type + |
+String + |
+App type. +
The default value is apig. Other types are not supported currently. +Enumeration values: +
|
+
roma_app_type + |
+String + |
+ROMA application type. +
Currently, this parameter is not supported. + |
+
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. + |
+
{
+ "name" : "app_demo",
+ "remark" : "Demo app"
+}
+Status code: 201
+OK
+{
+ "creator" : "USER",
+ "update_time" : "2020-08-03T13:21:48.381148828Z",
+ "app_key" : "ee8f878c252747028f07eb116c2cd91b",
+ "name" : "app_demo",
+ "remark" : "Demo app",
+ "id" : "356de8eb7a8742168586e5daf5339965",
+ "app_secret" : "416b6b2a1d394111b9bc1df0e6842ab8",
+ "register_time" : "2020-08-03T13:09:13",
+ "status" : 1,
+ "app_type" : "apig"
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName: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.3002",
+ "error_msg" : "App 356de8eb7a8742168586e5daf5339965 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
201 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to update the backend instances of a specified VPC channel. During the update, the request parameters overwrite the backend instances of the corresponding cloud server group. If no cloud server group is specified, all cloud server groups are overwritten.
+PUT /v2/{project_id}/apigw/instances/{instance_id}/vpc-channels/{vpc_channel_id}/members
+ +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. + |
+
vpc_channel_id + |
+Yes + |
+String + |
+VPC channel ID. + |
+
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
members + |
+No + |
+Array of MemberInfo objects + |
+Backend instances. + |
+
member_group_name + |
+No + |
+String + |
+Backend server group to be modified. +If this parameter is not specified, all backends defined by members for the VPC channel are modified. +If this parameter is specified, only the backend instances in the backend server group defined by members are modified. Input parameters of other backend server groups are ignored. For example, if member_group_name=primary is passed, only backend instances of backend server group 105c6902457144a4820dff8b1ad63331 in members are modified. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
host + |
+No + |
+String + |
+Backend server address. +This parameter is required when the member type is IP address. +Maximum: 64 + |
+
weight + |
+No + |
+Integer + |
+Weight. +The higher the weight is, the more requests a backend service will receive. +Minimum: 0 +Maximum: 10000 + |
+
is_backup + |
+No + |
+Boolean + |
+Indicates whether the backend service is a standby node. +After you enable this function, the backend service serves as a standby node. It works only when all non-standby nodes are faulty. +This function is supported only when your gateway has been upgraded to the corresponding version. If your gateway does not support this function, contact technical support. +Default: false + |
+
member_group_name + |
+No + |
+String + |
+Backend server group name. The server group facilitates backend service address modification. + |
+
status + |
+No + |
+Integer + |
+Backend server status. +
Enumeration values: +
|
+
port + |
+No + |
+Integer + |
+Backend server port. +Minimum: 0 +Maximum: 65535 + |
+
ecs_id + |
+No + |
+String + |
+Backend server ID. +This parameter is required if the backend instance type is ecs. The value can contain 1 to 64 characters, including letters, digits, hyphens (-), and underscores (_). +Maximum: 255 + |
+
ecs_name + |
+No + |
+String + |
+Backend server name. +This parameter is required if the backend instance type is ecs. The value can contain 1 to 64 characters, including letters, digits, hyphens (-), underscores (_), and periods (.). +Maximum: 64 + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
size + |
+Integer + |
+Length of the returned resource list. + |
+
total + |
+Long + |
+Number of resources that match the query conditions. + |
+
members + |
+Array of VpcMemberInfo objects + |
+Cloud server list. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
host + |
+String + |
+Backend server address. +This parameter is required when the member type is IP address. +Maximum: 64 + |
+
weight + |
+Integer + |
+Weight. +The higher the weight is, the more requests a backend service will receive. +Minimum: 0 +Maximum: 10000 + |
+
is_backup + |
+Boolean + |
+Indicates whether the backend service is a standby node. +After you enable this function, the backend service serves as a standby node. It works only when all non-standby nodes are faulty. +This function is supported only when your gateway has been upgraded to the corresponding version. If your gateway does not support this function, contact technical support. +Default: false + |
+
member_group_name + |
+String + |
+Backend server group name. The server group facilitates backend service address modification. + |
+
status + |
+Integer + |
+Backend server status. +
Enumeration values: +
|
+
port + |
+Integer + |
+Backend server port. +Minimum: 0 +Maximum: 65535 + |
+
ecs_id + |
+String + |
+Backend server ID. +This parameter is required if the backend instance type is ecs. The value can contain 1 to 64 characters, including letters, digits, hyphens (-), and underscores (_). +Maximum: 255 + |
+
ecs_name + |
+String + |
+Backend server name. +This parameter is required if the backend instance type is ecs. The value can contain 1 to 64 characters, including letters, digits, hyphens (-), underscores (_), and periods (.). +Maximum: 64 + |
+
id + |
+String + |
+Backend server ID. + |
+
vpc_channel_id + |
+String + |
+VPC channel ID. + |
+
create_time + |
+String + |
+Time when the backend server is added to the VPC channel. + |
+
member_group_id + |
+String + |
+Backend server group 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: 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. + |
+
Updating non-standby backend instances of a VPC channel
+{
+ "member_group_name" : "primary",
+ "members" : [ {
+ "host" : "192.168.2.25",
+ "weight" : 1,
+ "is_backup" : false,
+ "member_group_name" : "primary"
+ } ]
+}
+Updating all backend instances of a VPC channel
+{
+ "members" : [ {
+ "ecs_id" : "1082720c-3c15-409c-9ae3-4983ddfb6a9d",
+ "ecs_name" : "APIGtest02",
+ "weight" : 2
+ } ]
+}
+Status code: 200
+OK
+Example 1
+{
+ "total" : 1,
+ "size" : 1,
+ "members" : [ {
+ "host" : "192.168.2.25",
+ "weight" : 1,
+ "is_backup" : false,
+ "member_group_name" : "primary",
+ "port" : 22,
+ "status" : 1,
+ "ecs_id" : "192.168.2.25",
+ "ecs_name" : "192.168.2.25",
+ "id" : "683b6807cad54122a6777ad047a6178e",
+ "vpc_channel_id" : "56a7d7358e1b42459c9d730d65b14e59",
+ "create_time" : "2020-07-23T09:13:24Z",
+ "member_group_id" : "631b551cddda40478ef720163a9412ed"
+ } ]
+}
+Example 2
+{
+ "total" : 1,
+ "size" : 1,
+ "members" : [ {
+ "host" : "192.168.0.17",
+ "weight" : 2,
+ "is_backup" : false,
+ "member_group_name" : "primary",
+ "port" : 22,
+ "status" : 1,
+ "ecs_id" : "1082720c-3c15-409c-9ae3-4983ddfb6a9d",
+ "ecs_name" : "APIGtest02",
+ "id" : "5c868f0224084710a1e188b7d3057c52",
+ "vpc_channel_id" : "105c6902457144a4820dff8b1ad63331",
+ "create_time" : "2020-07-23T09:03:53Z",
+ "member_group_id" : "631b551cddda40478ef720163a9412ed"
+ } ]
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2001",
+ "error_msg" : "The request parameters must be specified, parameter name:members"
+}
+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.3023",
+ "error_msg" : "The VPC channel does not exist,id:56a7d7358e1b42459c9d730d65b14e59"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to modify a custom authorizer.
+PUT /v2/{project_id}/apigw/instances/{instance_id}/authorizers/{authorizer_id}
+ +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. + |
+
authorizer_id + |
+Yes + |
+String + |
+Custom authorizer ID. + |
+
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
name + |
+Yes + |
+String + |
+Custom authorizer name. +It can contain 3 to 64 characters, starting with a letter. Only letters, digits, and underscores (_) are allowed. + |
+
type + |
+Yes + |
+String + |
+Custom authorizer type. +
Modification is not allowed. +Enumeration values: +
|
+
authorizer_type + |
+Yes + |
+String + |
+Value: FUNC. +Enumeration values: +
|
+
authorizer_uri + |
+Yes + |
+String + |
+Function URN. + |
+
authorizer_version + |
+No + |
+String + |
+Function version. +If both a function alias URN and version are passed, the alias URN will be used and the version will be ignored. +Maximum: 64 + |
+
authorizer_alias_uri + |
+No + |
+String + |
+Function alias URN. +If both a function alias URN and version are passed, the alias URN will be used and the version will be ignored. + |
+
identities + |
+No + |
+Array of Identity objects + |
+Identity source. + |
+
ttl + |
+No + |
+Integer + |
+Maximum cache age. + |
+
user_data + |
+No + |
+String + |
+User data. + |
+
ld_api_id + |
+No + |
+String + |
+Custom backend ID. +Currently, this parameter is not supported. + |
+
need_body + |
+No + |
+Boolean + |
+Indicates whether to send the body. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
name + |
+Yes + |
+String + |
+Parameter name. + |
+
location + |
+Yes + |
+String + |
+Parameter location. +Enumeration values: +
|
+
validation + |
+No + |
+String + |
+Parameter verification expression. The default value is null, indicating that no verification is performed. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
name + |
+String + |
+Custom authorizer name. +It can contain 3 to 64 characters, starting with a letter. Only letters, digits, and underscores (_) are allowed. + |
+
type + |
+String + |
+Custom authorizer type. +
Modification is not allowed. +Enumeration values: +
|
+
authorizer_type + |
+String + |
+Value: FUNC. +Enumeration values: +
|
+
authorizer_uri + |
+String + |
+Function URN. + |
+
authorizer_version + |
+String + |
+Function version. +If both a function alias URN and version are passed, the alias URN will be used and the version will be ignored. +Maximum: 64 + |
+
authorizer_alias_uri + |
+String + |
+Function alias URN. +If both a function alias URN and version are passed, the alias URN will be used and the version will be ignored. + |
+
identities + |
+Array of Identity objects + |
+Identity source. + |
+
ttl + |
+Integer + |
+Maximum cache age. + |
+
user_data + |
+String + |
+User data. + |
+
ld_api_id + |
+String + |
+Custom backend ID. +Currently, this parameter is not supported. + |
+
need_body + |
+Boolean + |
+Indicates whether to send the body. + |
+
id + |
+String + |
+Custom authorizer ID. + |
+
create_time + |
+String + |
+Creation time. + |
+
roma_app_id + |
+String + |
+ID of the application to which the custom authorizer belongs. +Currently, this parameter is not supported. + |
+
roma_app_name + |
+String + |
+Name of the application to which the custom authorizer belongs. +Currently, this parameter is not supported. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
name + |
+String + |
+Parameter name. + |
+
location + |
+String + |
+Parameter location. +Enumeration values: +
|
+
validation + |
+String + |
+Parameter verification expression. The default value is null, indicating that no verification is performed. + |
+
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. + |
+
{
+ "name" : "Authorizer_demo",
+ "type" : "FRONTEND",
+ "authorizer_type" : "FUNC",
+ "authorizer_uri" : "urn:fss:xx-xxx:106506b9a92342df9a5025fc12351cfc:function:defau:apigDemo_1592617458814",
+ "authorizer_version" : "v1",
+ "authorizer_alias_uri" : "urn:fss:xx-xxx-4:106506b9a92342df9a5025fc12351cfc:function:defau:apigDemo_1592617458814:!v1",
+ "user_data" : "authorizer_test",
+ "identities" : [ {
+ "name" : "header",
+ "location" : "HEADER"
+ } ]
+}
+Status code: 200
+OK
+{
+ "name" : "Authorizer_demo",
+ "type" : "FRONTEND",
+ "authorizer_type" : "FUNC",
+ "authorizer_uri" : "urn:fss:xx-xxx-4:106506b9a92342df9a5025fc12351cfc:function:defau:apigDemo_1592617458814",
+ "authorizer_version" : "v1",
+ "authorizer_alias_uri" : "urn:fss:xx-xxx-4:106506b9a92342df9a5025fc12351cfc:function:defau:apigDemo_1592617458814:!v1",
+ "identities" : [ {
+ "name" : "header",
+ "location" : "HEADER"
+ } ],
+ "ttl" : 5,
+ "user_data" : "authorizer_test",
+ "id" : "0d982c1ac3da493dae47627b6439fc5c",
+ "create_time" : "2020-07-08T03:27:52.000+0000"
+}
+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.3081",
+ "error_msg" : "authorizer with id: 0d982c1ac3da493dae47627b6439fc5c not found"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to modify the configuration of a domain name bound to an API group.
+PUT /v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id}/domains/{domain_id}
+ +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. + |
+
group_id + |
+Yes + |
+String + |
+API group ID. + |
+
domain_id + |
+Yes + |
+String + |
+Domain ID. + |
+
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
min_ssl_version + |
+Yes + |
+String + |
+Minimum SSL version. TLS 1.1 and TLS 1.2 are supported. +Default: TLSv1.1 +Enumeration values: +
|
+
is_http_redirect_to_https + |
+No + |
+Boolean + |
+Whether to enable HTTP redirection to HTTPS. The value false means disable and true means enable. The default value is false. +Default: false + |
+
verified_client_certificate_enabled + |
+No + |
+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 + |
+
Status code: 201
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
url_domain + |
+String + |
+Custom domain name. + |
+
id + |
+String + |
+Domain ID. + |
+
status + |
+Integer + |
+CNAME resolution status. +
Enumeration values: +
|
+
min_ssl_version + |
+String + |
+Minimum SSL version supported. + |
+
is_http_redirect_to_https + |
+Boolean + |
+Whether to enable HTTP redirection to HTTPS. The value false means disable and true means enable. The default value is false. +Default: false + |
+
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 + |
+
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. + |
+
{
+ "min_ssl_version" : "TLSv1.2"
+}
+Status code: 201
+Created
+{
+ "id" : "0a515af69f4e4dcca84fbf85f68c0e27",
+ "url_domain" : "www.example.com",
+ "status" : 3,
+ "min_ssl_version" : "TLSv1.2",
+ "is_http_redirect_to_https" : false,
+ "verified_client_certificate_enabled" : false
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.3474",
+ "error_msg" : "The API group ID in the URL does not match the API group to which the URL domain has been bound"
+}
+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.3020",
+ "error_msg" : "The URL domain does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
201 + |
+Created + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to update the outbound access bandwidth of a dedicated gateway.
+PUT /v2/{project_id}/apigw/instances/{instance_id}/nat-eip
+ +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 + |
+
|---|---|---|---|
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
bandwidth_size + |
+No + |
+String + |
+Outbound access bandwidth. +Unit: Mbit/s + |
+
bandwidth_charging_mode + |
+No + |
+String + |
+Billing type of the public outbound access bandwidth. +
Default: bandwidth +Enumeration values: +
|
+
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. + |
+
{
+ "bandwidth_size" : 5,
+ "bandwidth_charging_mode" : "traffic"
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIC.9211",
+ "error_msg" : "update bandwidth size failed"
+}
+Status code: 401
+Unauthorized
+{
+ "error_code" : "APIC.7102",
+ "error_msg" : "Incorrect token or token resolution failed"
+}
+Status code: 403
+Forbidden
+{
+ "error_code" : "APIC.7106",
+ "error_msg" : "No permissions to request for the method"
+}
+Status code: 404
+Not Found
+{
+ "error_code" : "APIC.7302",
+ "error_msg" : "Instance not found"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIC.9000",
+ "error_msg" : "Failed to request internal service"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to modify the information about an environment. Only the name and remark attributes of an environment can be modified.
+PUT /v2/{project_id}/apigw/instances/{instance_id}/envs/{env_id}
+ +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. + |
+
env_id + |
+Yes + |
+String + |
+Environment ID. + |
+
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
name + |
+Yes + |
+String + |
+Environment name, which can contain letters, digits, and underscores (_) and must start with a letter. +Minimum: 3 +Maximum: 64 + |
+
remark + |
+No + |
+String + |
+Description. +Maximum: 255 + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
create_time + |
+String + |
+Creation time. + |
+
name + |
+String + |
+Environment name. + |
+
remark + |
+String + |
+Description. + |
+
id + |
+String + |
+Environment 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: 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. + |
+
{
+ "name" : "DEV",
+ "remark" : "Development environment"
+}
+Status code: 200
+OK
+{
+ "create_time" : "2020-07-31T06:41:43Z",
+ "name" : "DEV",
+ "remark" : "Development environment",
+ "id" : "7a1ad0c350844ee69479b47df9a881cb"
+}
+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: 404
+Not Found
+{
+ "error_code" : "APIG.3003",
+ "error_msg" : "Environment 7a1ad0c350844ee69479b47df9a881cb does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to modify the response of an error type defined for an API group.
+PUT /v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id}/gateway-responses/{response_id}/{response_type}
+ +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. + |
+
group_id + |
+Yes + |
+String + |
+API group ID. + |
+
response_id + |
+Yes + |
+String + |
+Response ID. + |
+
response_type + |
+Yes + |
+String + |
+Error type. +Enumeration values: +
|
+
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
status + |
+No + |
+Integer + |
+HTTP status code of the response. + |
+
body + |
+No + |
+String + |
+Response body template. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
{User defined key} + |
+Map<String,ResponseInfoResp> + |
+OK + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
status + |
+Integer + |
+HTTP status code of the response. + |
+
body + |
+String + |
+Response body template. + |
+
default + |
+Boolean + |
+Indicates whether the response is the default response. + |
+
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. + |
+
{
+ "body" : "body: \"{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}\"",
+ "status" : 403
+}
+Status code: 200
+OK
+{
+ "ACCESS_DENIED" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 403
+ }
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2012",
+ "error_msg" : "Invalid parameter value,parameterName:group_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.3001",
+ "error_msg" : "API group c77f5e81d9cb4424bf704ef2b0ac7600 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to modify a response of an API group.
+PUT /v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id}/gateway-responses/{response_id}
+ +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. + |
+
group_id + |
+Yes + |
+String + |
+API group ID. + |
+
response_id + |
+Yes + |
+String + |
+Response ID. + |
+
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
name + |
+No + |
+String + |
+Response name. + |
+
responses + |
+No + |
+Map<String,ResponseInfo> + |
+Response type definition, which includes a key and value. Options of the key: +
Each error type is in JSON format. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
name + |
+String + |
+Response name. + |
+
responses + |
+Map<String,ResponseInfoResp> + |
+Response type definition, which includes a key and value. Options of the key: +
Each error type is in JSON format. + |
+
id + |
+String + |
+Response ID. + |
+
default + |
+Boolean + |
+Indicates whether the group response is the default response. + |
+
create_time + |
+String + |
+Creation time. + |
+
update_time + |
+String + |
+Update time. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
status + |
+Integer + |
+HTTP status code of the response. + |
+
body + |
+String + |
+Response body template. + |
+
default + |
+Boolean + |
+Indicates whether the response is the default response. + |
+
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. + |
+
{
+ "name" : "response_demo"
+}
+Status code: 200
+OK
+{
+ "create_time" : "2020-08-12T06:52:02Z",
+ "update_time" : "2020-08-12T15:22:21.929863859+08:00",
+ "default" : false,
+ "id" : "e839b367e10f4ab19d1c5008e476b83a",
+ "name" : "response_demo",
+ "responses" : {
+ "ACCESS_DENIED" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 403
+ },
+ "AUTHORIZER_CONF_FAILURE" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 500
+ },
+ "AUTHORIZER_FAILURE" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 500
+ },
+ "AUTHORIZER_IDENTITIES_FAILURE" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 401
+ },
+ "AUTH_FAILURE" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 401
+ },
+ "AUTH_HEADER_MISSING" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 401
+ },
+ "BACKEND_TIMEOUT" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 504
+ },
+ "BACKEND_UNAVAILABLE" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 502
+ },
+ "DEFAULT_4XX" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true
+ },
+ "DEFAULT_5XX" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true
+ },
+ "NOT_FOUND" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 404
+ },
+ "REQUEST_PARAMETERS_FAILURE" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 400
+ },
+ "THROTTLED" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 429
+ },
+ "UNAUTHORIZED" : {
+ "body" : "{\"error_code\":\"$context.error.code\",\"error_msg\":\"$context.error.message\",\"request_id\":\"$context.requestId\"}",
+ "default" : true,
+ "status" : 401
+ }
+ }
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2011",
+ "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: 404
+Not Found
+{
+ "error_code" : "APIG.3001",
+ "error_msg" : "API group c77f5e81d9cb4424bf704ef2b0ac7600 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to update a dedicated gateway.
+PUT /v2/{project_id}/apigw/instances/{instance_id}
+ +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 + |
+
|---|---|---|---|
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
description + |
+No + |
+String + |
+Gateway description. + |
+
maintain_begin + |
+No + |
+String + |
+Start time of the maintenance time window. It must be in the format "xx:00:00". The value of xx can be 02, 06, 10, 14, 18, or 22. +During the maintenance time period, O&M personnel perform maintenance on the gateway. During this period, services can still be used, but occasionally there may be temporary interruptions. Scheduled maintenance occurs infrequently (typically once every several months). + |
+
maintain_end + |
+No + |
+String + |
+End time of the maintenance time window. It must be in the format "xx:00:00". There is a 4-hour difference between the start time and end time. +During the maintenance time period, O&M personnel perform maintenance on the gateway. During this period, services can still be used, but occasionally there may be temporary interruptions. Scheduled maintenance occurs infrequently (typically once every several months). + |
+
instance_name + |
+No + |
+String + |
+Gateway name. +Minimum: 3 +Maximum: 64 + |
+
security_group_id + |
+No + |
+String + |
+Security group to which the gateway belongs. +You can obtain it in either of the following ways: +
|
+
vpcep_service_name + |
+No + |
+String + |
+Name of the VPC endpoint service. +It can contain a maximum of 16 characters, including letters, digits, underscores (_), and hyphens (-). +If this parameter is not specified, the system automatically generates a name in the "{region}.apig.{service_id}" format. +If this parameter is specified, the system automatically generates a name in the "{region}.{vpcep_service_name}.{service_id}" format. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
id + |
+String + |
+Gateway ID. + |
+
project_id + |
+String + |
+ID of the tenant to which the gateway belongs. + |
+
instance_name + |
+String + |
+Gateway name. + |
+
status + |
+String + |
+Gateway status. +
Enumeration values: +
|
+
instance_status + |
+Integer + |
+Gateway status ID. +
Enumeration values: +
|
+
type + |
+String + |
+Gateway type. +The default value is apig. + |
+
spec + |
+String + |
+Gateway edition. +
Enumeration values: +
|
+
create_time + |
+Long + |
+Time when the gateway is created. The time is in the Unix timestamp format. + |
+
enterprise_project_id + |
+String + |
+Enterprise project ID. This parameter is required if you are using an enterprise account. + |
+
eip_address + |
+String + |
+EIP bound to the gateway. + |
+
charging_mode + |
+Integer + |
+Billing mode of the gateway. +
Enumeration values: +
|
+
cbc_metadata + |
+String + |
+This parameter is not used currently. + |
+
loadbalancer_provider + |
+String + |
+Type of the load balancer used by the gateway. +
Default: lvs +Enumeration values: +
|
+
description + |
+String + |
+Description about the gateway. + |
+
vpc_id + |
+String + |
+VPC ID. +You can obtain it in either of the following ways: +
|
+
subnet_id + |
+String + |
+Subnet network ID. +You can obtain it in either of the following ways: +
|
+
security_group_id + |
+String + |
+ID of the security group to which the gateway belongs. +You can obtain it in either of the following ways: +
|
+
maintain_begin + |
+String + |
+Start time of the maintenance time window. It must be in the format "xx:00:00". The value of xx can be 02, 06, 10, 14, 18, or 22. +During the maintenance time period, the O&M personnel can perform maintenance operations on the gateway. During maintenance, services can still be used, but occasionally there may be temporary service interruptions. Scheduled maintenance occurs infrequently (typically once every several months). + |
+
maintain_end + |
+String + |
+End time of the maintenance time window. It must be in the format "xx:00:00". There is a 4-hour difference between the start time and end time. +During the maintenance time period, the O&M personnel can perform maintenance operations on the gateway. During maintenance, services can still be used, but occasionally there may be temporary service interruptions. Scheduled maintenance occurs infrequently (typically once every several months). + |
+
ingress_ip + |
+String + |
+VPC ingress address. + |
+
ingress_ip_v6 + |
+String + |
+VPC access address (IPv6). + |
+
user_id + |
+String + |
+ID of the account to which the gateway belongs. + |
+
nat_eip_ipv6_cidr + |
+String + |
+Public egress address (IPv6). +Currently, IPv6 addresses are supported only in certain regions. + |
+
eip_ipv6_address + |
+String + |
+EIP (IPv6). +Currently, IPv6 addresses are supported only in certain regions. + |
+
nat_eip_address + |
+String + |
+IP address for public outbound access. + |
+
bandwidth_size + |
+Integer + |
+Outbound access bandwidth. + |
+
bandwidth_charging_mode + |
+String + |
+Billing mode of the public outbound access bandwidth. + |
+
available_zone_ids + |
+String + |
+AZ. + |
+
instance_version + |
+String + |
+Gateway version. + |
+
virsubnet_id + |
+String + |
+Subnet network ID. +Currently, this parameter is not supported. + |
+
roma_eip_address + |
+String + |
+ROMA EIP. +Currently, this parameter is not supported. + |
+
listeners + |
+Object + |
+Listener information. +Currently, this parameter is not supported. + |
+
supported_features + |
+Array of strings + |
+Supported features. + |
+
endpoint_service + |
+EndpointService object + |
+VPC endpoint service details. +This parameter will be deprecated. Use endpoint_services instead. + |
+
endpoint_services + |
+Array of EndpointService objects + |
+VPC endpoint services. + |
+
node_ips + |
+NodeIps object + |
+VPC endpoint ID. + |
+
publicips + |
+Array of IpDetails objects + |
+Public inbound access addresses. + |
+
privateips + |
+Array of IpDetails objects + |
+Private inbound access addresses. + |
+
is_releasable + |
+Boolean + |
+Whether the gateway can be released. +
|
+
ingress_bandwidth_charging_mode + |
+String + |
+Billing mode of the public inbound access bandwidth. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
service_name + |
+String + |
+VPC endpoint service name. + |
+
created_at + |
+String + |
+Creation time. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
livedata + |
+Array of strings + |
+LiveData node IP addresses. + |
+
shubao + |
+Array of strings + |
+Shubao node IP addresses. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
ip_address + |
+String + |
+IP address. + |
+
bandwidth_size + |
+Integer + |
+Bandwidth. + |
+
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. + |
+
{
+ "description" : "test create instance",
+ "instance_name" : "apig-demo"
+}
+Status code: 200
+OK
+{
+ "available_zone_ids" : "[xx-xxx-7a, xx-xxx-7b]",
+ "bandwidth_size" : 5,
+ "description" : "test create instance",
+ "eip_id" : "41f961ab-2bdd-4ca7-9b59-cfc4fcef10c9",
+ "enterprise_project_id" : "0",
+ "instance_name" : "apig-demo",
+ "maintain_begin" : "22:00:00",
+ "maintain_end" : "02:00:00",
+ "security_group_id" : "36d0ec18-bd10-4da7-86f3-ad7a5ddc55d7",
+ "spec_id" : "PROFESSIONAL",
+ "subnet_id" : "a938121c-11c4-4c91-b983-bc9acd347bb5",
+ "vpc_id" : "0957108c-257c-4ce0-9e93-527d279ce763"
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIC.7211",
+ "error_msg" : "Parameter value does not match the rules, parameter name[maintainBegin]"
+}
+Status code: 401
+Unauthorized
+{
+ "error_code" : "APIC.7102",
+ "error_msg" : "Incorrect token or token resolution failed"
+}
+Status code: 403
+Forbidden
+{
+ "error_code" : "APIC.7106",
+ "error_msg" : "No permissions to request for the method"
+}
+Status code: 404
+Not Found
+{
+ "error_code" : "APIC.7302",
+ "error_msg" : "Instance not found"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIC.9000",
+ "error_msg" : "Failed to request internal service"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to modify the information about a request throttling policy.
+PUT /v2/{project_id}/apigw/instances/{instance_id}/throttles/{throttle_id}
+ +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. + |
+
throttle_id + |
+Yes + |
+String + |
+Request throttling policy ID. + |
+
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
app_call_limits + |
+No + |
+Integer + |
+Maximum number of times the API can be accessed by an app within the same period. The value of this parameter cannot exceed the user call limit. The maximum value is 2,147,483,647. Enter a positive integer. + |
+
name + |
+Yes + |
+String + |
+Request throttling policy name. It can contain 3 to 64 characters, starting with a letter. Only letters, digits, and underscores (_) are allowed. + |
+
time_unit + |
+Yes + |
+String + |
+Time unit for limiting the number of API calls. +Enumeration values: +
|
+
remark + |
+No + |
+String + |
+Description of the request throttling policy, which can contain a maximum of 255 characters. + |
+
api_call_limits + |
+Yes + |
+Integer + |
+Maximum number of times an API can be accessed within a specified period. The value of this parameter cannot exceed the default limit 200 TPS. You can change the default limit to meet service requirements. The maximum value is 2,147,483,647. Enter a positive integer. + |
+
type + |
+No + |
+Integer + |
+Type of the request throttling policy. +
Enumeration values: +
|
+
enable_adaptive_control + |
+No + |
+String + |
+Indicates whether to enable dynamic request throttling. +
Currently, this parameter is not supported. + |
+
user_call_limits + |
+No + |
+Integer + |
+Maximum number of times the API can be accessed by a user within the same period. The value of this parameter cannot exceed the Max. API Requests. The maximum value is 2,147,483,647. Enter a positive integer. + |
+
time_interval + |
+Yes + |
+Integer + |
+Period of time for limiting the number of API calls. This parameter applies with each API call limit. The maximum value is 2,147,483,647. Enter a positive integer. + |
+
ip_call_limits + |
+No + |
+Integer + |
+Maximum number of times the API can be accessed by an IP address within the same period. The value of this parameter cannot exceed the API call limit. The maximum value is 2,147,483,647. Enter a positive integer. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
app_call_limits + |
+Integer + |
+Maximum number of times the API can be accessed by an app within the same period. The value of this parameter cannot exceed the user call limit. The maximum value is 2,147,483,647. Enter a positive integer. + |
+
name + |
+String + |
+Request throttling policy name. It can contain 3 to 64 characters, starting with a letter. Only letters, digits, and underscores (_) are allowed. + |
+
time_unit + |
+String + |
+Time unit for limiting the number of API calls. +Enumeration values: +
|
+
remark + |
+String + |
+Description of the request throttling policy, which can contain a maximum of 255 characters. + |
+
api_call_limits + |
+Integer + |
+Maximum number of times an API can be accessed within a specified period. The value of this parameter cannot exceed the default limit 200 TPS. You can change the default limit to meet service requirements. The maximum value is 2,147,483,647. Enter a positive integer. + |
+
type + |
+Integer + |
+Type of the request throttling policy. +
Enumeration values: +
|
+
enable_adaptive_control + |
+String + |
+Indicates whether to enable dynamic request throttling. +
Currently, this parameter is not supported. + |
+
user_call_limits + |
+Integer + |
+Maximum number of times the API can be accessed by a user within the same period. The value of this parameter cannot exceed the Max. API Requests. The maximum value is 2,147,483,647. Enter a positive integer. + |
+
time_interval + |
+Integer + |
+Period of time for limiting the number of API calls. This parameter applies with each API call limit. The maximum value is 2,147,483,647. Enter a positive integer. + |
+
ip_call_limits + |
+Integer + |
+Maximum number of times the API can be accessed by an IP address within the same period. The value of this parameter cannot exceed the API call limit. The maximum value is 2,147,483,647. Enter a positive integer. + |
+
id + |
+String + |
+Request throttling policy ID. + |
+
bind_num + |
+Integer + |
+Number of APIs to which the request throttling policy has been bound. + |
+
is_inclu_special_throttle + |
+Integer + |
+Indicates whether an excluded request throttling configuration has been created. +
Enumeration values: +
|
+
create_time + |
+String + |
+Creation 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. + |
+
{
+ "name" : "throttle_demo",
+ "remark" : "Total: 800 calls/second; user: 500 calls/second; app: 300 calls/second; IP address: 600 calls/second",
+ "type" : 1,
+ "time_interval" : 1,
+ "ip_call_limits" : 600,
+ "app_call_limits" : 300,
+ "time_unit" : "SECOND",
+ "api_call_limits" : 800,
+ "user_call_limits" : 500
+}
+Status code: 200
+OK
+{
+ "name" : "throttle_demo",
+ "create_time" : "2020-07-31T08:44:02.205366118Z",
+ "remark" : "Total: 800 calls/second; user: 500 calls/second; app: 300 calls/second; IP address: 600 calls/second",
+ "type" : 1,
+ "time_interval" : 1,
+ "ip_call_limits" : 600,
+ "app_call_limits" : 300,
+ "time_unit" : "SECOND",
+ "api_call_limits" : 800,
+ "id" : "3437448ad06f4e0c91a224183116e965",
+ "user_call_limits" : 500,
+ "enable_adaptive_control" : "FALSE",
+ "bind_num" : 0,
+ "is_inclu_special_throttle" : 2
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2011",
+ "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: 404
+Not Found
+{
+ "error_code" : "APIG.3005",
+ "error_msg" : "Request throttling policy 3437448ad06f4e0c91a224183116e965 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to modify the information about a signature key.
+PUT /v2/{project_id}/apigw/instances/{instance_id}/signs/{sign_id}
+ +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. + |
+
sign_id + |
+Yes + |
+String + |
+Signature key ID. + |
+
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
name + |
+Yes + |
+String + |
+Signature key name. It can contain letters, digits, and underscores(_) and must start with a letter. +Minimum: 3 +Maximum: 64 + |
+
sign_type + |
+No + |
+String + |
+Signature key type. +
To use a basic signature key, ensure that your gateway version supports it. If your gateway does not support this type of signature key, contact technical support to upgrade your gateway. +To use a public_key signature key, ensure that the public_key feature has been configured for your gateway. For details, see "Appendix" > "Supported Features". If your gateway does not support this feature, contact technical support to enable it. +To use an AES signature key, ensure that your gateway version supports it. If your gateway does not support this type of signature key, contact technical support to upgrade your gateway. +Enumeration values: +
|
+
sign_key + |
+No + |
+String + |
+Signature key. +
|
+
sign_secret + |
+No + |
+String + |
+Signature secret. +
|
+
sign_algorithm + |
+No + |
+String + |
+Signature algorithm. Specify a signature algorithm only when using an AES signature key. By default, no algorithm is used. +Enumeration values: +
|
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
name + |
+String + |
+Signature key name. It can contain letters, digits, and underscores(_) and must start with a letter. +Minimum: 3 +Maximum: 64 + |
+
sign_type + |
+String + |
+Signature key type. +
To use a basic signature key, ensure that your gateway version supports it. If your gateway does not support this type of signature key, contact technical support to upgrade your gateway. +To use a public_key signature key, ensure that the public_key feature has been configured for your gateway. For details, see "Appendix" > "Supported Features". If your gateway does not support this feature, contact technical support to enable it. +To use an AES signature key, ensure that your gateway version supports it. If your gateway does not support this type of signature key, contact technical support to upgrade your gateway. +Enumeration values: +
|
+
sign_key + |
+String + |
+Signature key. +
|
+
sign_secret + |
+String + |
+Signature secret. +
|
+
sign_algorithm + |
+String + |
+Signature algorithm. Specify a signature algorithm only when using an AES signature key. By default, no algorithm is used. +Enumeration values: +
|
+
update_time + |
+String + |
+Update time. + |
+
create_time + |
+String + |
+Creation time. + |
+
id + |
+String + |
+Signature key 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: 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. + |
+
{
+ "name" : "signature_demo"
+}
+Status code: 200
+OK
+{
+ "sign_secret" : "dc02fc5f30714d6bb21888389419e2b3",
+ "update_time" : "2020-08-03T03:50:14.989785802Z",
+ "create_time" : "2020-08-03T03:39:38Z",
+ "name" : "signature_demo",
+ "id" : "0b0e8f456b8742218af75f945307173c",
+ "sign_key" : "a071a20d460a4f639a636c3d7e3d8163",
+ "sign_type" : "hmac"
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2011",
+ "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: 404
+Not Found
+{
+ "error_code" : "APIG.3017",
+ "error_msg" : "Signature key 0b0e8f456b8742218af75f945307173c does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to modify an excluded configuration of a request throttling policy.
+PUT /v2/{project_id}/apigw/instances/{instance_id}/throttles/{throttle_id}/throttle-specials/{strategy_id}
+ +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. + |
+
throttle_id + |
+Yes + |
+String + |
+Request throttling policy ID. + |
+
strategy_id + |
+Yes + |
+String + |
+Excluded configuration ID. + |
+
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
call_limits + |
+Yes + |
+Long + |
+Maximum number of times an excluded object can access an API within the throttling period. + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
id + |
+String + |
+Excluded configuration ID. + |
+
call_limits + |
+Integer + |
+Maximum number of times an excluded object can access an API within the throttling period. + |
+
apply_time + |
+String + |
+Throttling period. + |
+
app_name + |
+String + |
+App name. + |
+
app_id + |
+String + |
+App ID. + |
+
object_id + |
+String + |
+ID of an object specified in the excluded configuration. + |
+
object_type + |
+String + |
+Excluded object type, which can be APP or USER. + |
+
object_name + |
+String + |
+Name of an app or a tenant to which the excluded configuration applies. + |
+
throttle_id + |
+String + |
+Request throttling policy 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: 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. + |
+
{
+ "call_limits" : 200
+}
+Status code: 200
+OK
+{
+ "call_limits" : 200,
+ "app_name" : "app_demo",
+ "object_name" : "app_demo",
+ "object_id" : "356de8eb7a8742168586e5daf5339965",
+ "throttle_id" : "3437448ad06f4e0c91a224183116e965",
+ "apply_time" : "2020-08-04T02:40:56Z",
+ "id" : "a3e9ff8db55544ed9db91d8b048770c0",
+ "app_id" : "356de8eb7a8742168586e5daf5339965",
+ "object_type" : "APP"
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2003",
+ "error_msg" : "The parameter value is too large,parameterName:call_limits. 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.3013",
+ "error_msg" : "Excluded request throttling configuration a3e9ff8db55544ed9db91d8b048770c0 does not exist"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This API is used to update the parameters of a VPC channel.
+If the VPC channel is overwritten with an empty backend instance list, all the existing backend instances will be deleted.
+If the VPC channel is overwritten with an empty backend server group list, all the existing backend server groups will be deleted.
+PUT /v2/{project_id}/apigw/instances/{instance_id}/vpc-channels/{vpc_channel_id}
+ +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. + |
+
vpc_channel_id + |
+Yes + |
+String + |
+VPC channel ID. + |
+
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. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
name + |
+Yes + |
+String + |
+VPC channel name. +It can contain 3 to 64 characters, starting with a letter. Only letters, digits, hyphens (-), and underscores (_) are allowed. + |
+
port + |
+Yes + |
+Integer + |
+Host port of the VPC channel. +Range: 1–65535. + |
+
balance_strategy + |
+Yes + |
+Integer + |
+Distribution algorithm. +
Default: 1 +Enumeration values: +
|
+
member_type + |
+Yes + |
+String + |
+Member type of the VPC channel. +
Default: ecs +Enumeration values: +
|
+
type + |
+No + |
+Integer + |
+VPC channel type. The default type is server. +
Default: 2 +Enumeration values: +
|
+
dict_code + |
+No + |
+String + |
+Dictionary code of the VPC channel. +The value can contain letters, digits, hyphens (-), underscores (_), and periods (.). +This parameter is currently not supported. +Minimum: 3 +Maximum: 64 + |
+
member_groups + |
+No + |
+Array of MemberGroupCreate objects + |
+Backend server groups of the VPC channel. + |
+
members + |
+No + |
+Array of MemberInfo objects + |
+Backend instances of the VPC channel. + |
+
vpc_health_config + |
+No + |
+VpcHealthConfig object + |
+Health check details. + |
+
microservice_info + |
+No + |
+MicroServiceCreate object + |
+Microservice details. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
member_group_name + |
+Yes + |
+String + |
+Name of the backend server group of the VPC channel. + |
+
member_group_remark + |
+No + |
+String + |
+Description of the backend server group. + |
+
member_group_weight + |
+No + |
+Integer + |
+Weight of the backend server group. +If the server group contains servers and a weight has been set for it, the weight is automatically used to assign weights to servers in this group. +Minimum: 0 +Maximum: 100 + |
+
dict_code + |
+No + |
+String + |
+Dictionary code of the backend server group. +The value can contain letters, digits, hyphens (-), underscores (_), and periods (.). +Currently, this parameter is not supported. +Minimum: 3 +Maximum: 64 + |
+
microservice_version + |
+No + |
+String + |
+Version of the backend server group. This parameter is supported only when the VPC channel type is microservice. +Maximum: 64 + |
+
microservice_port + |
+No + |
+Integer + |
+Port of the backend server group. This parameter is supported only when the VPC channel type is microservice. If the port number is 0, all addresses in the backend server group use the original load balancing port to inherit logic. +Minimum: 0 +Maximum: 65535 + |
+
microservice_labels + |
+No + |
+Array of MicroserviceLabel objects + |
+Tags of the backend server group. This parameter is supported only when the VPC channel type is microservice. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
label_name + |
+Yes + |
+String + |
+Tag name. +Start and end with a letter or digit. Use only letters, digits, hyphens (-), underscores (_), and periods (.). (Max. 63 characters.) +Minimum: 1 +Maximum: 63 + |
+
label_value + |
+Yes + |
+String + |
+Tag value. +Start and end with a letter or digit. Use only letters, digits, hyphens (-), underscores (_), and periods (.). (Max. 63 characters.) +Minimum: 1 +Maximum: 63 + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
host + |
+No + |
+String + |
+Backend server address. +This parameter is required when the member type is IP address. +Maximum: 64 + |
+
weight + |
+No + |
+Integer + |
+Weight. +The higher the weight is, the more requests a backend service will receive. +Minimum: 0 +Maximum: 10000 + |
+
is_backup + |
+No + |
+Boolean + |
+Indicates whether the backend service is a standby node. +After you enable this function, the backend service serves as a standby node. It works only when all non-standby nodes are faulty. +This function is supported only when your gateway has been upgraded to the corresponding version. If your gateway does not support this function, contact technical support. +Default: false + |
+
member_group_name + |
+No + |
+String + |
+Backend server group name. The server group facilitates backend service address modification. + |
+
status + |
+No + |
+Integer + |
+Backend server status. +
Enumeration values: +
|
+
port + |
+No + |
+Integer + |
+Backend server port. +Minimum: 0 +Maximum: 65535 + |
+
ecs_id + |
+No + |
+String + |
+Backend server ID. +This parameter is required if the backend instance type is ecs. The value can contain 1 to 64 characters, including letters, digits, hyphens (-), and underscores (_). +Maximum: 255 + |
+
ecs_name + |
+No + |
+String + |
+Backend server name. +This parameter is required if the backend instance type is ecs. The value can contain 1 to 64 characters, including letters, digits, hyphens (-), underscores (_), and periods (.). +Maximum: 64 + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
protocol + |
+Yes + |
+String + |
+Protocol for performing health checks on backend servers in the VPC channel. +
Enumeration values: +
|
+
path + |
+No + |
+String + |
+Destination path for health checks. This parameter is required if protocol is set to http or https. + |
+
method + |
+No + |
+String + |
+Request method for health checks. +Default: GET +Enumeration values: +
|
+
port + |
+No + |
+Integer + |
+Destination port for health checks. If this parameter is not specified or set to 0, the host port of the VPC channel is used. +If this parameter is set to a non-zero value, the corresponding port is used for health checks. +Minimum: 0 +Maximum: 65535 + |
+
threshold_normal + |
+Yes + |
+Integer + |
+Healthy threshold. It refers to the number of consecutive successful checks required for a backend server to be considered healthy. +Minimum: 2 +Maximum: 10 + |
+
threshold_abnormal + |
+Yes + |
+Integer + |
+Unhealthy threshold, which refers to the number of consecutive failed checks required for a backend server to be considered unhealthy. +Minimum: 2 +Maximum: 10 + |
+
time_interval + |
+Yes + |
+Integer + |
+Interval between consecutive checks. Unit: s. The value must be greater than the value of timeout. +Minimum: 5 +Maximum: 300 + |
+
http_code + |
+No + |
+String + |
+Response codes for determining a successful HTTP response. The value can be any integer within 100–599 in one of the following formats: +
|
+
enable_client_ssl + |
+No + |
+Boolean + |
+Indicates whether to enable two-way authentication. If this function is enabled, the certificate specified in the backend_client_certificate configuration item of the gateway is used. +Default: false + |
+
status + |
+No + |
+Integer + |
+Health check result. +
Enumeration values: +
|
+
timeout + |
+Yes + |
+Integer + |
+Timeout for determining whether a health check fails. Unit: s. The value must be less than the value of time_interval. +Minimum: 2 +Maximum: 30 + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
service_type + |
+No + |
+String + |
+Microservice type. +
Enumeration values: +
|
+
cse_info + |
+No + |
+MicroServiceInfoCSEBase object + |
+CSE microservice details. This parameter is required if service_type is set to CSE. + |
+
cce_info + |
+No + |
+MicroServiceInfoCCEBase object + |
+CCE workload details. This parameter is required if service_type is set to CCE. + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
engine_id + |
+Yes + |
+String + |
+Microservice engine ID. +Maximum: 64 + |
+
service_id + |
+Yes + |
+String + |
+Microservice ID. +Maximum: 64 + |
+
Parameter + |
+Mandatory + |
+Type + |
+Description + |
+
|---|---|---|---|
cluster_id + |
+Yes + |
+String + |
+CCE cluster ID. +Maximum: 64 + |
+
namespace + |
+Yes + |
+String + |
+Namespace. +Maximum: 64 + |
+
workload_type + |
+Yes + |
+String + |
+Workload type. +
Enumeration values: +
|
+
app_name + |
+Yes + |
+String + |
+App name. +Maximum: 64 + |
+
Status code: 200
+ +Parameter + |
+Type + |
+Description + |
+
|---|---|---|
name + |
+String + |
+VPC channel name. +It can contain 3 to 64 characters, starting with a letter. Only letters, digits, hyphens (-), and underscores (_) are allowed. + |
+
port + |
+Integer + |
+Host port of the VPC channel. +Range: 1–65535. + |
+
balance_strategy + |
+Integer + |
+Distribution algorithm. +
Default: 1 +Enumeration values: +
|
+
member_type + |
+String + |
+Member type of the VPC channel. +
Default: ecs +Enumeration values: +
|
+
type + |
+Integer + |
+VPC channel type. The default type is server. +
Default: 2 +Enumeration values: +
|
+
dict_code + |
+String + |
+Dictionary code of the VPC channel. +The value can contain letters, digits, hyphens (-), underscores (_), and periods (.). +This parameter is currently not supported. +Minimum: 3 +Maximum: 64 + |
+
create_time + |
+String + |
+Time when the VPC channel is created. + |
+
id + |
+String + |
+VPC channel ID. + |
+
status + |
+Integer + |
+VPC channel status. +
Enumeration values: +
|
+
member_groups + |
+Array of MemberGroupInfo objects + |
+Backend server groups. + |
+
microservice_info + |
+MicroServiceInfo object + |
+Microservice information. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
member_group_name + |
+String + |
+Name of the backend server group of the VPC channel. + |
+
member_group_remark + |
+String + |
+Description of the backend server group. + |
+
member_group_weight + |
+Integer + |
+Weight of the backend server group. +If the server group contains servers and a weight has been set for it, the weight is automatically used to assign weights to servers in this group. +Minimum: 0 +Maximum: 100 + |
+
dict_code + |
+String + |
+Dictionary code of the backend server group. +The value can contain letters, digits, hyphens (-), underscores (_), and periods (.). +Currently, this parameter is not supported. +Minimum: 3 +Maximum: 64 + |
+
microservice_version + |
+String + |
+Version of the backend server group. This parameter is supported only when the VPC channel type is microservice. +Maximum: 64 + |
+
microservice_port + |
+Integer + |
+Port of the backend server group. This parameter is supported only when the VPC channel type is microservice. If the port number is 0, all addresses in the backend server group use the original load balancing port to inherit logic. +Minimum: 0 +Maximum: 65535 + |
+
microservice_labels + |
+Array of MicroserviceLabel objects + |
+Tags of the backend server group. This parameter is supported only when the VPC channel type is microservice. + |
+
member_group_id + |
+String + |
+ID of the backend server group of the VPC channel. + |
+
create_time + |
+String + |
+Time when the backend server group is created. + |
+
update_time + |
+String + |
+Time when the backend server group is updated. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
label_name + |
+String + |
+Tag name. +Start and end with a letter or digit. Use only letters, digits, hyphens (-), underscores (_), and periods (.). (Max. 63 characters.) +Minimum: 1 +Maximum: 63 + |
+
label_value + |
+String + |
+Tag value. +Start and end with a letter or digit. Use only letters, digits, hyphens (-), underscores (_), and periods (.). (Max. 63 characters.) +Minimum: 1 +Maximum: 63 + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
id + |
+String + |
+Microservice ID. + |
+
instance_id + |
+String + |
+Gateway ID. + |
+
service_type + |
+String + |
+Microservice type. +
Enumeration values: +
|
+
cse_info + |
+MicroServiceInfoCSE object + |
+CSE microservice details. + |
+
cce_info + |
+MicroServiceInfoCCE object + |
+CCE microservice details. + |
+
update_time + |
+String + |
+Microservice update time. + |
+
create_time + |
+String + |
+Microservice creation time. + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
engine_id + |
+String + |
+Microservice engine ID. +Maximum: 64 + |
+
service_id + |
+String + |
+Microservice ID. +Maximum: 64 + |
+
engine_name + |
+String + |
+Microservice engine name. + |
+
service_name + |
+String + |
+Microservice name. + |
+
register_address + |
+String + |
+Registration center address. + |
+
cse_app_id + |
+String + |
+App to which the microservice belongs. + |
+
version + |
+String + |
+Microservice version, which has been discarded and is reflected in the version of the backend server group. +Maximum: 64 + |
+
Parameter + |
+Type + |
+Description + |
+
|---|---|---|
cluster_id + |
+String + |
+CCE cluster ID. +Maximum: 64 + |
+
namespace + |
+String + |
+Namespace. +Maximum: 64 + |
+
workload_type + |
+String + |
+Workload type. +
Enumeration values: +
|
+
app_name + |
+String + |
+App name. +Maximum: 64 + |
+
cluster_name + |
+String + |
+CCE cluster name. + |
+
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. + |
+
Updating a VPC channel of the server type
+{
+ "balance_strategy" : 2,
+ "member_type" : "ip",
+ "name" : "VPC_demo",
+ "port" : 22,
+ "type" : 2,
+ "vpc_health_config" : {
+ "http_code" : "200",
+ "path" : "/vpc/demo",
+ "port" : 22,
+ "protocol" : "http",
+ "threshold_abnormal" : 5,
+ "threshold_normal" : 2,
+ "time_interval" : 10,
+ "timeout" : 5,
+ "enable_client_ssl" : false
+ },
+ "member_groups" : [ {
+ "member_group_name" : "test",
+ "member_group_weight" : 1,
+ "member_group_remark" : "remark"
+ }, {
+ "member_group_name" : "default",
+ "member_group_weight" : 2,
+ "member_group_remark" : "remark"
+ } ],
+ "members" : [ {
+ "host" : "192.168.0.5",
+ "weight" : 1,
+ "member_group_name" : "test"
+ }, {
+ "host" : "192.168.1.124",
+ "weight" : 2,
+ "member_group_name" : "default"
+ } ]
+}
+Updating a VPC channel of the microservice type
+{
+ "balance_strategy" : 1,
+ "member_type" : "ip",
+ "name" : "VPC_demo",
+ "port" : 22,
+ "type" : 3,
+ "vpc_health_config" : {
+ "http_code" : "200",
+ "path" : "/vpc/demo",
+ "port" : 22,
+ "protocol" : "http",
+ "threshold_abnormal" : 5,
+ "threshold_normal" : 2,
+ "time_interval" : 10,
+ "timeout" : 5,
+ "enable_client_ssl" : false
+ },
+ "member_groups" : [ {
+ "member_group_name" : "test",
+ "member_group_weight" : 1,
+ "member_group_remark" : "remark",
+ "microservice_version" : "v1",
+ "microservice_port" : 80
+ }, {
+ "member_group_name" : "default",
+ "member_group_weight" : 2,
+ "member_group_remark" : "remark",
+ "microservice_version" : "v2",
+ "microservice_port" : 80,
+ "microservice_labels" : [ {
+ "label_name" : "cluster_id",
+ "label_value" : "c429700c-5dc4-482a-9c0e-99f6c0635113"
+ } ]
+ } ],
+ "members" : [ {
+ "host" : "192.168.0.5",
+ "weight" : 1,
+ "member_group_name" : "test"
+ }, {
+ "host" : "192.168.1.124",
+ "weight" : 2,
+ "member_group_name" : "default"
+ } ],
+ "microservice_info" : {
+ "service_type" : "CCE",
+ "cce_info" : {
+ "cluster_id" : "ab1485b4f91b45abbcd560be591f7309",
+ "namespace" : "default",
+ "workload_type" : "deployment",
+ "app_name" : "testapp"
+ }
+ }
+}
+Status code: 200
+OK
+Example 1
+{
+ "name" : "VPC_demo",
+ "port" : 22,
+ "balance_strategy" : 2,
+ "member_type" : "ip",
+ "dict_code" : "",
+ "create_time" : "2020-07-23T07:11:57Z",
+ "id" : "18174f5f4f1a4dc29f33aeadd9788e5f",
+ "status" : 1,
+ "member_groups" : [ {
+ "member_group_id" : "c1ce135c705c4066853a0460b318fe16",
+ "member_group_name" : "test",
+ "member_group_weight" : 1,
+ "member_group_remark" : "remark",
+ "create_time" : "2020-07-23T07:11:57.244829604Z",
+ "update_time" : "2020-07-23T07:11:57.244829604Z"
+ }, {
+ "member_group_id" : "c1ce135c705c4066853a0460b318fe17",
+ "member_group_name" : "default",
+ "member_group_weight" : 2,
+ "member_group_remark" : "remark",
+ "create_time" : "2020-07-23T07:11:57.244829604Z",
+ "update_time" : "2020-07-23T07:11:57.244829604Z"
+ } ],
+ "type" : 2,
+ "microservice_info" : {
+ "id" : "",
+ "instance_id" : "",
+ "service_type" : "",
+ "cse_info" : {
+ "cse_app_id" : "",
+ "engine_id" : "",
+ "engine_name" : "",
+ "register_address" : "",
+ "service_id" : "",
+ "service_name" : ""
+ },
+ "cce_info" : {
+ "cluster_id" : "",
+ "cluster_name" : "",
+ "namespace" : "",
+ "workload_type" : "",
+ "app_name" : ""
+ },
+ "create_time" : "",
+ "update_time" : ""
+ }
+}
+Example 2
+{
+ "name" : "VPC_demo",
+ "id" : "105c6902457144a4820dff8b1ad63331",
+ "balance_strategy" : 1,
+ "dict_code" : "",
+ "create_time" : "2020-07-23T07:11:57.244829604Z",
+ "member_type" : "ip",
+ "port" : 22,
+ "status" : 1,
+ "member_groups" : [ {
+ "member_group_id" : "c1ce135c705c4066853a0460b318fe16",
+ "member_group_name" : "test",
+ "member_group_weight" : 1,
+ "member_group_remark" : "remark",
+ "create_time" : "2020-07-23T07:11:57.244829604Z",
+ "update_time" : "2020-07-23T07:11:57.244829604Z",
+ "microservice_version" : "v1",
+ "microservice_port" : 80
+ }, {
+ "member_group_id" : "c1ce135c705c4066853a0460b318fe17",
+ "member_group_name" : "default",
+ "member_group_weight" : 2,
+ "member_group_remark" : "remark",
+ "create_time" : "2020-07-23T07:11:57.244829604Z",
+ "update_time" : "2020-07-23T07:11:57.244829604Z",
+ "microservice_version" : "v2",
+ "microservice_port" : 80,
+ "microservice_labels" : [ {
+ "label_name" : "cluster_id",
+ "label_value" : "c429700c-5dc4-482a-9c0e-99f6c0635113"
+ } ]
+ } ],
+ "type" : 3,
+ "microservice_info" : {
+ "id" : "9483afa235be45158a70c19ab817ac65",
+ "instance_id" : "eddc4d25480b4cd6b512f270a1b8b341",
+ "service_type" : "CCE",
+ "cse_info" : {
+ "cse_app_id" : "",
+ "engine_id" : "",
+ "engine_name" : "",
+ "register_address" : "",
+ "service_id" : "",
+ "service_name" : ""
+ },
+ "cce_info" : {
+ "cluster_id" : "ab1485b4f91b45abbcd560be591f7309",
+ "cluster_name" : "cce-test",
+ "namespace" : "default",
+ "workload_type" : "deployment",
+ "app_name" : "testapp"
+ },
+ "create_time" : "2020-07-23T07:11:57.244829604Z",
+ "update_time" : "2020-07-23T07:11:57.244829604Z"
+ }
+}
+Status code: 400
+Bad Request
+{
+ "error_code" : "APIG.2001",
+ "error_msg" : "The request parameters must be specified, parameter name:members"
+}
+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.3023",
+ "error_msg" : "The VPC channel does not exist,id:56a7d7358e1b42459c9d730d65b14e59"
+}
+Status code: 500
+Internal Server Error
+{
+ "error_code" : "APIG.9999",
+ "error_msg" : "System error"
+}
+Status Code + |
+Description + |
+
|---|---|
200 + |
+OK + |
+
400 + |
+Bad Request + |
+
401 + |
+Unauthorized + |
+
403 + |
+Forbidden + |
+
404 + |
+Not Found + |
+
500 + |
+Internal Server Error + |
+
See Error Codes.
+This chapter describes fine-grained permissions management for your APIG.
+
If your account does not require individual IAM users, skip this section.
+By default, new IAM users do not have permissions assigned. You need to add a user to one or more groups, and attach permissions policies or roles (in JSON format) to these groups. Users inherit permissions from the groups to which they are added and can perform specified operations on cloud services based on the permissions.
+An account has all the permissions required to call all APIs, but IAM users must be assigned the required permissions. The permissions required for calling an API are determined by the actions supported by the API. Only IAM users who have been granted permissions allowing the actions can call the API successfully. For example, if an IAM user wants to create APIs using an API, the user must have been granted permissions that allow the apig:apis:create action.
+Operations supported by policies are specific to APIs. The following are common concepts related to policies:
+APIG supports actions that can be defined in custom policies. Permissions must be obtained before calling APIs provided by APIG.
+ +Description + |
+Action + |
+API + |
+IAM Project + |
+Enterprise Project + |
+
|---|---|---|---|---|
Creating a dedicated gateway + |
+apig:instances:create + |
+POST /v2/{project_id}/apigw/instances + |
+√ + |
+√ + |
+
Deleting a dedicated gateway + |
+apig:instances:delete + |
+DELETE /v2/{project_id}/apigw/instances/{instance_id} + |
+√ + |
+√ + |
+
Updating a dedicated gateway + |
+apig:instances:update + |
+PUT +/v2/{project_id}/apigw/instances/{instance_id} + |
+√ + |
+√ + |
+
Querying details of a dedicated gateway + |
+apig:instances:get + |
+GET +/v2/{project_id}/apigw/instances/{instance_id} + |
+√ + |
+√ + |
+
Querying a dedicated gateway list + |
+apig:instances:list + |
+GET /v2/{project_id}/apigw/instances + |
+√ + |
+√ + |
+
Creating an API group + |
+apig:groups:create + |
+POST /v2/{project_id}/apigw/instances/{instance_id}/api-groups + |
+√ + |
+√ + |
+
Deleting an API group + |
+apig:groups:delete + |
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id} + |
+√ + |
+√ + |
+
Querying details of an API group + |
+apig:groups:get + |
+GET +/v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id} + |
+√ + |
+√ + |
+
Querying an API group list + |
+apig:groups:list + |
+GET +/v2/{project_id}/apigw/instances/{instance_id}/api-groups + |
+√ + |
+√ + |
+
Binding a domain name to an API group + |
+apig:domains:create + |
+POST +/v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id}/domains + |
+√ + |
+√ + |
+
Deleting a domain name bound to an API group + |
+apig:domains:delete + |
+DELETE +/v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id}/domains/{domain_id} + |
+√ + |
+√ + |
+
Adding a certificate to a domain name + |
+apig:domains:bindCertificate + |
+POST +/v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id}/domains/{domain_id}/certificate + |
+√ + |
+√ + |
+
Deleting a certificate bound to a domain name + |
+apig:domains:unbindCertificate + |
+DELETE +/v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id}/domains/{domain_id}/certificate/{certificate_id} + |
+√ + |
+√ + |
+
Querying details of a certificate bound to a domain name + |
+apig:domains:getCertificate + |
+GET +/v2/{project_id}/apigw/instances/{instance_id}/api-groups/{group_id}/domains/{domain_id}/certificate/{certificate_id} + |
+√ + |
+√ + |
+
Creating an environment variable + |
+apig:variables:create + |
+POST +/v2/{project_id}/apigw/instances/{instance_id}/env-variables + |
+√ + |
+√ + |
+
Deleting an environment variable + |
+apig:variables:delete + |
+DELETE +/v2/{project_id}/apigw/instances/{instance_id}/env-variables/{env_variable_id} + |
+√ + |
+√ + |
+
Querying details of an environment variable + |
+apig:variables:get + |
+GET +/v2/{project_id}/apigw/instances/{instance_id}/env-variables/{env_variable_id} + |
+√ + |
+√ + |
+
Querying an environment variable list + |
+apig:variables:list + |
+GET +/v2/{project_id}/apigw/instances/{instance_id}/env-variables + |
+√ + |
+√ + |
+
Creating an API + |
+apig:apis:create + |
+POST +/v2/{project_id}/apigw/instances/{instance_id}/apis + |
+√ + |
+√ + |
+
Deleting an API + |
+apig:apis:delete + |
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/apis/{api_id} + |
+√ + |
+√ + |
+
Publishing an API + |
+apig:apis:publish + |
+POST /v2/{project_id}/apigw/instances/{instance_id}/apis/action + |
+√ + |
+√ + |
+
Taking an API offline + |
+apig:apis:offline + |
+POST /v2/{project_id}/apigw/instances/{instance_id}/apis/action + |
+√ + |
+√ + |
+
Debugging an API + |
+apig:apis:debug + |
+POST /v2/{project_id}/apigw/instances/{instance_id}/apis/debug/{api_id} + |
+√ + |
+√ + |
+
Importing an API + |
+apig:apis:import + |
+POST /v2/{project_id}/apigw/instances/{instance_id}/openapi/import + |
+√ + |
+√ + |
+
Exporting an API + |
+apig:apis:export + |
+POST /v2/{project_id}/apigw/instances/{instance_id}/openapi/export + |
+√ + |
+√ + |
+
Authorizing an app to access an API + |
+apig:apis:grantAppAccess + |
+POST /v2/{project_id}/apigw/instances/{instance_id}/app-auths + |
+√ + |
+√ + |
+
Canceling the authorization of an app for accessing an API + |
+apig:apis:relieveAppAccess + |
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/app-auths/{app_auth_id} + |
+√ + |
+√ + |
+
Binding a signature key to an API + |
+apig:apis:bindSigns + |
+POST /v2/{project_id}/apigw/instances/{instance_id}/sign-bindings + |
+√ + |
+√ + |
+
Unbinding a signature key from an API + |
+apig:apis:unbindSigns + |
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/sign-bindings/{sign_bindings_id} + |
+√ + |
+√ + |
+
Binding an access control policy to an API + |
+apig:apis:bindAcls + |
+POST /v2/{project_id}/apigw/instances/{instance_id}/acl-bindings + |
+√ + |
+√ + |
+
Unbinding an access control policy from an API + |
+apig:apis:unbindAcls + |
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/acl-bindings/{acl_bindings_id} + |
+√ + |
+√ + |
+
Binding a request throttling policy to an API + |
+apig:apis:bindThrottles + |
+POST /v2/{project_id}/apigw/instances/{instance_id}/throttle-bindings + |
+√ + |
+√ + |
+
Unbinding a request throttling policy from an API + |
+apig:apis:unbindThrottles + |
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/throttle-bindings/{throttle_binding_id} + |
+√ + |
+√ + |
+
Querying details of an API + |
+apig:apis:get + |
+GET /v2/{project_id}/apigw/instances/{instance_id}/apis/{api_id} + |
+√ + |
+√ + |
+
Querying an API list + |
+apig:apis:list + |
+GET /v2/{project_id}/apigw/instances/{instance_id}/apis + |
+√ + |
+√ + |
+
Querying the list of apps bound to an API + |
+apig:apis:listBindedApps + |
+GET /v2/{project_id}/apigw/instances/{instance_id}/app-auths/binded-apps + |
+√ + |
+√ + |
+
Querying the list of signature keys bound to an API + |
+apig:apis:listBindedSigns + |
+GET /v2/{project_id}/apigw/instances/{instance_id}/sign-bindings/binded-signs + |
+√ + |
+√ + |
+
Querying the list of access control policies bound to an API + |
+apig:apis:listBindedAcls + |
+GET /v2/{project_id}/apigw/instances/{instance_id}/acl-bindings/binded-acls + |
+√ + |
+√ + |
+
Querying the list of request throttling policies bound to an API + |
+apig:apis:listBindedTrottles + |
+GET /v2/{project_id}/apigw/instances/{instance_id}/throttle-bindings/binded-throttles + |
+√ + |
+√ + |
+
Creating an environment + |
+apig:envs:create + |
+POST /v2/{project_id}/apigw/instances/{instance_id}/envs + |
+√ + |
+√ + |
+
Deleting an environment + |
+apig:envs:delete + |
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/envs/{env_id} + |
+√ + |
+√ + |
+
Querying an environment list + |
+apig:envs:list + |
+GET /v2/{project_id}/apigw/instances/{instance_id}/envs + |
+√ + |
+√ + |
+
Creating an app + |
+apig:apps:create + |
+POST /v2/{project_id}/apigw/instances/{instance_id}/apps + |
+√ + |
+√ + |
+
Deleting an app + |
+apig:apps:delete + |
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/apps/{app_id} + |
+√ + |
+√ + |
+
Querying details of an app + |
+apig:apps:get + |
+GET /v2/{project_id}/apigw/instances/{instance_id}/apps/{app_id} + |
+√ + |
+√ + |
+
Querying an app list + |
+apig:apps:list + |
+GET /v2/{project_id}/apigw/instances/{instance_id}/apps + |
+√ + |
+√ + |
+
Querying the list of APIs bound to an app + |
+apig:apps:listBindedApis + |
+GET /v2/{project_id}/apigw/instances/{instance_id}/app-auths/binded-apis + |
+√ + |
+√ + |
+
Querying the list of APIs not bound to an app + |
+apig:apps:listUnbindedApis + |
+GET /v2/{project_id}/apigw/instances/{instance_id}/app-auths/unbinded-apis + |
+√ + |
+√ + |
+
Creating a signature key + |
+apig:signs:create + |
+POST /v2/{project_id}/apigw/instances/{instance_id}/signs + |
+√ + |
+√ + |
+
Deleting a signature key + |
+apig:signs:delete + |
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/signs/{sign_id} + |
+√ + |
+√ + |
+
Querying a signature key list + |
+apig:signs:list + |
+GET /v2/{project_id}/apigw/instances/{instance_id}/signs + |
+√ + |
+√ + |
+
Querying the list of APIs bound to a signature key + |
+apig:signs:listBindedApis + |
+GET /v2/{project_id}/apigw/instances/{instance_id}/sign-bindings/binded-apis + |
+√ + |
+√ + |
+
Querying the list of APIs not bound to a signature key + |
+apig:signs:listUnbindedApis + |
+GET /v2/{project_id}/apigw/instances/{instance_id}/sign-bindings/unbinded-apis + |
+√ + |
+√ + |
+
Creating an access control policy + |
+apig:acls:create + |
+POST /v2/{project_id}/apigw/instances/{instance_id}/acls + |
+√ + |
+√ + |
+
Deleting an access control policy + |
+apig:acls:delete + |
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/acls/{acl_id} + |
+√ + |
+√ + |
+
Querying details of an access control policy + |
+apig:acls:get + |
+GET /v2/{project_id}/apigw/instances/{instance_id}/acls/{acl_id} + |
+√ + |
+√ + |
+
Querying an access control policy list + |
+apig:acls:list + |
+GET /v2/{project_id}/apigw/instances/{instance_id}/acls + |
+√ + |
+√ + |
+
Querying the list of APIs bound to an access control policy + |
+apig:acls:listBindedApis + |
+GET /v2/{project_id}/apigw/instances/{instance_id}/acl-bindings/binded-apis + |
+√ + |
+√ + |
+
Querying the list of APIs not bound to an access control policy + |
+apig:acls:listUnbindedApis + |
+GET /v2/{project_id}/apigw/instances/{instance_id}/acl-bindings/unbinded-apis + |
+√ + |
+√ + |
+
Creating a request throttling policy + |
+apig:throttles:create + |
+POST /v2/{project_id}/apigw/instances/{instance_id}/throttles + |
+√ + |
+√ + |
+
Deleting a request throttling policy + |
+apig:throttles:delete + |
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/throttles/{throttle_id} + |
+√ + |
+√ + |
+
Querying details of a request throttling policy + |
+apig:throttles:get + |
+GET /v2/{project_id}/apigw/instances/{instance_id}/throttles/{throttle_id} + |
+√ + |
+√ + |
+
Querying a request control policy list + |
+apig:throttles:list + |
+GET /v2/{project_id}/apigw/instances/{instance_id}/throttles + |
+√ + |
+√ + |
+
Querying the list of APIs bound to a request control policy + |
+apig:throttles:listBindedApis + |
+GET /v2/{project_id}/apigw/instances/{instance_id}/throttle-bindings/binded-apis + |
+√ + |
+√ + |
+
Querying the list of APIs not bound to a request control policy + |
+apig:throttles:listUnbindedApis + |
+GET /v2/{project_id}/apigw/instances/{instance_id}/throttle-bindings/unbinded-apis + |
+√ + |
+√ + |
+
Creating an excluded request throttling configuration + |
+apig:specialThrottles:create + |
+POST /v2/{project_id}/apigw/instances/{instance_id}/throttles/{throttle_id}/throttle-specials + |
+√ + |
+√ + |
+
Deleting an excluded request throttling configuration + |
+apig:specialThrottles:delete + |
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/throttles/{throttle_id}/throttle-specials/{strategy_id} + |
+√ + |
+√ + |
+
Querying excluded request throttling configurations + |
+apig:specialThrottles:get + |
+GET /v2/{project_id}/apigw/instances/{instance_id}/throttles/{throttle_id}/throttle-specials + |
+√ + |
+√ + |
+
Creating a VPC channel + |
+apig:vpcChannels:create + |
+POST /v2/{project_id}/apigw/instances/{instance_id}/vpc-channels + |
+√ + |
+√ + |
+
Deleting a VPC channel + |
+apig:vpcChannels:delete + |
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/vpc-channels/{vpc_channel_id} + |
+√ + |
+√ + |
+
Updating a VPC channel + |
+apig:vpcChannels:update + |
+PUT /v2/{project_id}/apigw/instances/{instance_id}/vpc-channels/{vpc_channel_id} + |
+√ + |
+√ + |
+
Creating a backend instance + |
+apig:vpcChannels:addInstance + |
+POST /v2/{project_id}/apigw/instances/{instance_id}/vpc-channels/{vpc_channel_id}/members + |
+√ + |
+√ + |
+
Deleting a backend instance + |
+apig:vpcChannels:deleteInstance + |
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/vpc-channels/{vpc_channel_id}/members/{member_id} + |
+√ + |
+√ + |
+
Querying details of a VPC channel + |
+apig:vpcs:get + |
+GET /v2/{project_id}/apigw/instances/{instance_id}/vpc-channels/{vpc_channel_id} + |
+√ + |
+√ + |
+
Querying a VPC channel list + |
+apig:vpcs:list + |
+GET /v2/{project_id}/apigw/instances/{instance_id}/vpc-channels + |
+√ + |
+√ + |
+
Creating a custom authorizer + |
+apig:authorizers:create + |
+POST /v2/{project_id}/apigw/instances/{instance_id}/authorizers + |
+√ + |
+√ + |
+
Deleting a custom authorizer + |
+apig:authorizers:delete + |
+DELETE /v2/{project_id}/apigw/instances/{instance_id}/authorizers/{authorizer_id} + |
+√ + |
+√ + |
+
Querying details of a custom authorizer + |
+apig:authorizers:get + |
+GET /v2/{project_id}/apigw/instances/{instance_id}/authorizers/{authorizer_id} + |
+√ + |
+√ + |
+
Query a custom authorizer list + |
+apig:authorizers:list + |
+GET /v2/{project_id}/apigw/instances/{instance_id}/authorizers + |
+√ + |
+√ + |
+
Querying a tag list + |
+apig:tags:list + |
+GET /v2/{project_id}/apigw/instances/{instance_id}/tags + |
+√ + |
+√ + |
+
Querying an instance feature list + |
+apig:features:list + |
+GET /v2/{project_id}/apigw/instances/{instance_id}/features + |
+√ + |
+√ + |
+
Creating an instance feature + |
+apig:features:create + |
+POST /v2/{project_id}/apigw/instances/{instance_id}/features + |
+√ + |
+√ + |
+
API Gateway (APIG) is a high-performance, high-availability, and high-security API hosting service that helps enterprises build, manage, and deploy APIs at any scale.
+This document describes how to use REST APIs to perform operations on APIG, such as creating, deleting, and modify your own APIs.
+If you plan to access APIG through APIs, ensure that you are familiar with APIG concepts. For details, see the User Guide.
+APIG supports Representational State Transfer (REST) APIs, allowing you to call APIs using HTTPS. For details about API calling, see Calling APIs.
+An endpoint is the request address for calling an API. Endpoints vary depending on services and regions. For the endpoints of all services, contact technical support.
+An account is created upon successful registration with the cloud system. The account has full access permissions for all of its cloud services and resources. It can be used to reset user passwords and grant user permissions. The account is a payment entity and should not be used directly to perform routine management. For security purposes, create IAM users and grant them permissions for routine management.
+An IAM user is created using an account to use cloud services. Each IAM user has its own identity credentials (password and access keys).
+An IAM user can view the account ID and user ID on the My Credentials page of the console. The account name, username, and password will be required for API authentication.
+Regions are defined by their geographical location and network latency. Public services, such as Elastic Cloud Server (ECS), Elastic Volume Service (EVS), and Object Storage Service (OBS), are shared within the same region. There are universal regions and dedicated regions. A universal region serves all tenants, while a dedicated region serves specific tenants.
+AZs are physically isolated locations in a region, but are interconnected through an internal network for enhanced application availability.
+Projects group and isolate resources (including compute, storage, and network resources) across physical regions. A default project is provided for each region, and subprojects can be created under each default project. Users can be granted permissions to access all resources in a specific project. For more refined access control, create subprojects under a project. Users can then be assigned permissions to access only specific resources in the subprojects.
+
Requests for calling an API can be authenticated using either of the following methods:
+
The validity period of a token is 24 hours. When using a token for authentication, cache it to prevent frequently calling the IAM API used to obtain a user token.
+A token specifies temporary permissions in a computer system. During API authentication using a token, the token is added to requests to get permissions for calling the API.
+Making an API Request describes the process of calling the API used to create an API group (dedicated gateways). After a token is obtained, the X-Auth-Token header field must be added to requests to specify the token when calling other APIs. For example, if the token is ABCDEFJ...., X-Auth-Token: ABCDEFJ.... can be added to a request as follows:
+
+POST https://{apig_endpoint}/v2/{project_id}/apigw/instances/{instance_id}/api-groups
+Content-Type: application/json
+X-Auth-Token: ABCDEFJ....
+An AK/SK is used to verify the identity of a request sender. In AK/SK-based authentication, a signature needs to be obtained and then added to requests.
+
AK: access key ID, which is a unique identifier used in conjunction with a secret access key to sign requests cryptographically.
+SK: secret access key used in conjunction with an AK to sign requests cryptographically. It identifies a request sender and prevents the request from being modified.
+The following uses a demo project to show how to sign a request and use an HTTP client to send an HTTPS request.
+Download the demo project at https://github.com/api-gate-way/SdkDemo.
+If you do not need the demo, obtain the APIG signing SDK from technical support personnel.
+AK: access key ID, which is a unique identifier used in conjunction with a secret access key to sign requests cryptographically.
+
For users created in IAM that have not bound any email address or mobile number, only the login password needs to be entered.
+
Keep the access key secure.
+


The request signing method is integrated in the JAR files imported in 3. The request needs to be signed before it is sent. The signature will then be added as part of the HTTP header to the request.
+The demo code is classified into the following classes to demonstrate signing and sending the HTTP request:
+As shown in the following code, if you use other methods such as POST, PUT, and DELETE, see the corresponding comment.
+Specify region, serviceName, ak/sk, and url as the actual values. In this demo, the URLs for accessing VPC resources are used.
+To obtain the project ID in the URLs, see Obtaining a Project ID.
+Obtain the endpoint from the enterprise administrator.
+//TODO: Replace region with the name of the region in which the service to be accessed is located.
+private static final String region = "";
+
+//TODO: Replace vpc with the name of the service you want to access. For example, ecs, vpc, iam, and elb.
+private static final String serviceName = "";
+
+public static void main(String[] args) throws UnsupportedEncodingException
+{
+//TODO: Replace the AK and SK with those obtained on the My Credential page.
+String ak = "ZIRRKMTWP******1WKNKB";
+String sk = "Us0mdMNHk******YrRCnW0ecfzl";
+
+//TODO: To specify a project ID (multi-project scenarios), add the X-Project-Id header.
+//TODO: To access a global service, such as IAM, DNS, CDN, and TMS, add the X-Domain-Id header to specify an account ID.
+//TODO: To add a header, find "Add special headers" in the AccessServiceImple.java file.
+
+//TODO: Test the API
+String url = "https://{Endpoint}/v1/{project_id}/vpcs";
+get(ak, sk, url);
+
+//TODO: When creating a VPC, replace {project_id} in postUrl with the actual value.
+//String postUrl = "https://serviceEndpoint/v1/{project_id}/cloudservers";
+//String postbody ="{\"vpc\": {\"name\": \"vpc\",\"cidr\": \"192.168.0.0/16\"}}";
+//post(ak, sk, postUrl, postbody);
+
+//TODO: When querying a VPC, replace {project_id} in url with the actual value.
+//String url = "https://serviceEndpoint/v1/{project_id}/vpcs/{vpc_id}";
+//get(ak, sk, url);
+
+//TODO: When updating a VPC, replace {project_id} and {vpc_id} in putUrl with the actual values.
+//String putUrl = "https://serviceEndpoint/v1/{project_id}/vpcs/{vpc_id}";
+//String putbody ="{\"vpc\":{\"name\": \"vpc1\",\"cidr\": \"192.168.0.0/16\"}}";
+//put(ak, sk, putUrl, putbody);
+
+//TODO: When deleting a VPC, replace {project_id} and {vpc_id} in deleteUrl with the actual values.
+//String deleteUrl = "https://serviceEndpoint/v1/{project_id}/vpcs/{vpc_id}";
+//delete(ak, sk, deleteUrl);
+}
+In the Package Explorer area on the left, right-click Demo.java, choose Run AS > Java Application from the shortcut menu to run the demo code.
+You can view the API call logs on the console.
+After sending a request, you will receive a response, including a status code, response header, and response body.
+A status code is a group of digits, ranging from 1xx to 5xx. It indicates the status of a request. For more information, see HTTP Status Codes.
+For example, if status code 201 is returned for calling the API used to create an API group (dedicated gateways), the request is successful.
+Similar to a request, a response also has a header, for example, Content-Type.
+The body of a response is often returned in structured format as specified in the Content-Type header field. The response body transfers content except the response header.
+The following is part of the response body for the API used to create an API group (dedicated gateways).
+{
+ "id": "abcdef...",
+ "name": "APIGroup_test",
+ "remark": "api group remark",
+......
+}
+If an error occurs during API calling, an error code and a message will be displayed. The following shows an error response body.
+{
+ "error_msg": "The token is missing.",
+ "error_code": "APIG.1000"
+}
+In the response body, error_code is an error code, and error_msg provides information about the error.
+The following table lists the features that are supported by dedicated gateways.
+
If the gateway you use does not have specific features, contact technical support to upgrade your gateway.
+Feature Name + |
+Feature Description + |
+Configurable + |
+Feature Configuration Example + |
+Configuration Parameter + |
+Parameter Description + |
+Default Value + |
+Value Range + |
+
|---|---|---|---|---|---|---|---|
lts + |
+Reporting of Shubao access logs + |
+Yes + |
+{"name":"lts","enable":true,"config": "{\"group_id\": ",\"topic_id\":\"\",\"log_group\":\"\",\"log_stream\":\"\"}"} + |
+group_id + |
+Log group ID. + |
+- + |
+- + |
+
topic_id + |
+Log stream ID. + |
+- + |
+- + |
+||||
log_group + |
+Name of a log group. + |
+- + |
+- + |
+||||
log_stream + |
+Name of a log stream. + |
+- + |
+- + |
+||||
gateway_responses + |
+Custom gateway responses + |
+No + |
+- + |
+- + |
+- + |
+- + |
+- + |
+
ratelimit + |
+Request throttling limit configuration + |
+Yes + |
+{"name":"ratelimit","enable":true,"config": "{\"api_limits\": 500}"} + |
+api_limits + |
+Default request throttling value applied to all APIs. Set this parameter properly to meet service requirements. A small value may constantly throttle your services. + |
+200 calls per second + |
+1–1,000,000 calls per second + |
+
request_body_size + |
+Configuration of the maximum request body size + |
+Yes + |
+{"name":"request_body_size","enable":true,"config": "104857600"} + |
+request_body_size + |
+Maximum size of the body allowed in an API request. + |
+12 MB + |
+1–9536 MB + |
+
backend_timeout + |
+Backend timeout configuration + |
+Yes + |
+{"name":"backend_timeout","enable":true,"config": "{"max_timeout": 500}"} + |
+max_timeout + |
+Maximum timeout duration for APIC to access a backend service. + |
+60,000 ms + |
+1-600,000 ms + |
+
app_token + |
+app_token authentication + |
+Yes + |
+{"name":"app_token","enable":true,"config": "{\"enable\": \"on\", \"app_token_expire_time\": 3600, \"app_token_uri\": \"/v1/apigw/oauth2/token\", \"refresh_token_expire_time\": 7200}"} + |
+enable + |
+Whether to enable app_token authentication. + |
+Off + |
+On/Off + |
+
app_token_expire_time + |
+Validity period of the access token. + |
+3600s + |
+1–72,000s + |
+||||
refresh_token_expire_time + |
+Validity period of the refresh token. + |
+7200s + |
+1–72,000s + |
+||||
app_token_uri + |
+URI used for obtaining the token. + |
+/v1/apigw/oauth2/token + |
+- + |
+||||
app_token_key + |
+Token encryption key. + |
+- + |
+- + |
+||||
app_api_key + |
+app_api_key authentication + |
+Yes + |
+{"name":"app_api_key","enable":true,"config": "on"} + |
+- + |
+- + |
+Off + |
+On/Off + |
+
app_basic + |
+app_basic authentication + |
+Yes + |
+{"name":"app_basic","enable":true,"config": "on"} + |
+- + |
+- + |
+Off + |
+On/Off + |
+
app_secret + |
+app_secret authentication + |
+Yes + |
+{"name":"app_secret","enable":true,"config": "on"} + |
+- + |
+- + |
+Off + |
+On/Off + |
+
app_jwt + |
+app_jwt authentication + |
+Yes + |
+{"name":"app_jwt","enable":true,"config": "{\"enable\": \"on\", \"auth_header\": \"Authorization\"}"} + |
+enable + |
+Whether to enable app_jwt authentication. + |
+Off + |
+On/Off + |
+
auth_header + |
+app_jwt authentication header. + |
+Authorization + |
+- + |
+||||
public_key + |
+Public_key backend signatures + |
+Yes + |
+{"name":"public_key","enable":true,"config": "{\"enable\": \"on\", \"public_key_uri_prefix\": \"/apigw/authadv/v2/public-key/\"}"} + |
+enable + |
+Whether to enable app_jwt authentication. + |
+Off + |
+On/Off + |
+
public_key_uri_prefix + |
+URI prefix used for obtaining the public key. + |
+/apigw/authadv/v2/public-key/ + |
+- + |
+||||
backend_token_allow + |
+Allowing tenants to transparently transmit tokens to the backend + |
+Yes + |
+{"name":"backend_token_allow","enable":true,"config": "{\"backend_token_allow_users\": [\"paas_apig_wwx548366_01\"]}"} + |
+backend_token_allow_users + |
+Regular expression for transparently transmitting the token to the common tenant whitelist of the tenant to match the domain name of the common tenant. + |
+- + |
+- + |
+
sign_basic + |
+Basic signature keys + |
+No + |
+- + |
+- + |
+- + |
+- + |
+- + |
+
multi_auth + |
+Two-factor authentication + |
+No + |
+- + |
+- + |
+- + |
+- + |
+- + |
+
backend_client_certificate + |
+Backend two-way authentication + |
+Yes + |
+{"name":"backend_client_certificate","enable":true,"config": "{\"enable\": \"on\",\"ca\": \"\",\"content\": \"\",\"key\": \"\"}"} + |
+enable + |
+Whether to enable this feature. + |
+Off + |
+On/Off + |
+
ca + |
+CA file of two-way authentication. + |
+- + |
+- + |
+||||
content + |
+Two-way authentication file. + |
+- + |
+- + |
+||||
key + |
+Private key of two-way authentication. + |
+- + |
+- + |
+||||
ssl_ciphers + |
+HTTPS cipher suites + |
+Yes + |
+{"name":"ssl_ciphers","enable":true,"config": "config": "{\"ssl_ciphers\": [\"ECDHE-ECDSA-AES256-GCM-SHA384\"]}"} + |
+ssl_ciphers + |
+Encryption and decryption suites supported. The ssl_ciphers parameter cannot be left blank and can contain only the options in the default value. + |
+- + |
+ECDHE-ECDSA-AES256-GCM-SHA384,ECDHE-RSA-AES256-GCM-SHA384,ECDHE-ECDSA-AES128-GCM-SHA256,ECDHE-RSA-AES128-GCM-SHA256,ECDHE-ECDSA-AES256-SHA384,ECDHE-RSA-AES256-SHA384,ECDHE-ECDSA-AES128-SHA256,ECDHE-RSA-AES128-SHA256 + |
+
real_ip_from_xff + |
+X-Forwarded-For header for identifying IP addresses during access control and request throttling + |
+Yes + |
+{"name": "real_ip_from_xff","enable": true,"config": {"enable": "on","xff_index": -1}} + |
+enable + |
+Whether to enable this feature. + |
+Off + |
+On/Off + |
+
xff_index + |
+Sequence number of an IP address in the X-Forwarded-For header. The value of this parameter can be 0 or a positive or negative number. If the value is 0 or a positive number, the IP address of the corresponding index is obtained from the X-Forwarded-For header. If the value is a negative number, the IP address in reverse index order is obtained from the X-Forwarded-For header. For example, assume that the X-Forwarded-For header of a request received by API gateway contains three IP addresses: IP1, IP2, and IP3. If the value of xff_index is 0, IP1 is obtained. If the value of xff_index is 1, IP2 is obtained. If the value of xff_index is –1, IP3 is obtained. + |
+-1 + |
+Valid Int32 value + |
+
An account name and account ID are required for some URLs when an API is called. To obtain an account name and account ID, perform the following operations:
+View the account name and account ID.
+You can also obtain a project ID by calling the IAM API used to query project information.
+The API used to obtain a project ID is "GET https://{Endpoint}/v3/projects/". {Endpoint} is the IAM endpoint and can be obtained from technical support. For details on API calling authentication, see Authentication.
+The following is an example response. The value of id in the projects field is the project ID.
+{
+ "projects": [
+ {
+ "domain_id": "65382450e8f64ac0870cd180d14e684b",
+ "is_domain": false,
+ "parent_id": "65382450e8f64ac0870cd180d14e684b",
+ "name": "xx-north-4",
+ "description": "",
+ "links": {
+ "next": null,
+ "previous": null,
+ "self": "https://www.example.com/v3/projects/a4a5d4098fb4474fa22cd05f897d6b99"
+ },
+ "id": "a4a5d4098fb4474fa22cd05f897d6b99",
+ "enabled": true
+ }
+ ],
+ "links": {
+ "next": null,
+ "previous": null,
+ "self": "https://www.example.com/v3/projects"
+ }
+}
+A project ID needs to be specified in the URLs of some APIs. Therefore, you need to obtain a project ID before calling such APIs. To obtain a project ID, perform the following operations:
+On the My Credentials page, view project IDs in the project list.
+If there are multiple projects in one region, expand Region and view subproject IDs in the Project ID column.
+This section describes the structure of a REST API request, and uses the APIG API for creating an API group (dedicated gateways) as an example to demonstrate how to call an API.
+A request URI is in the following format:
+{URI-scheme} :// {Endpoint} / {resource-path} ? {query-string}
+Although a request URI is included in the request header, most programming languages or frameworks require the request URI to be transmitted separately.
+ +Parameter + |
+Description + |
+
|---|---|
URI-scheme + |
+Protocol used to transmit requests. All APIs use HTTPS. + |
+
Endpoint + |
+Domain name or IP address of the server bearing the REST service. The endpoint varies between services in different regions. It can be obtained from Endpoints. + |
+
resource-path + |
+Access path of an API for performing a specified operation. Obtain the path from the URI of an API. For example, the resource-path of the API used to create an API group is /v2/{project_id}/apigw/instances/{instance_id}/api-groups. {project_id} indicates a project ID and {instance_id} indicates a gateway ID. The two IDs can be obtained from the gateway information on the APIG console. + |
+
query-string + |
+Query parameter, which is optional. Ensure that a question mark (?) is included before each query parameter that is in the format of "Parameter name=Parameter value". For example, ?limit=10 indicates that a maximum of 10 data records will be displayed. Separate multiple query parameters with ampersands (&). + |
+
For example, to create an API group in a region, combine the parameters in the URI. apig_endpoint indicates the endpoint of APIG.
+https://{apig_endpoint}/v2/{project_id}/apigw/instances/{instance_id}/api-groups
+
To simplify the URI display in this document, each API is provided only with a resource-path and a request method. The URI-scheme of all APIs is HTTPS, and the endpoints of all APIs in the same region are identical.
+The HTTP protocol defines the following request methods that can be used to send a request to the server:
+For example, in the case of the API used to create an API group (dedicated gateways), the request method is POST. The request is as follows:
+POST https://{apig_endpoint}/v2/{project_id}/apigw/instances/{instance_id}/api-groups
+You can also add additional header fields to a request, such as the fields required by a specified URI or HTTP method. For example, to request for the authentication information, add Content-Type, which specifies the request body type.
+Common request header fields are as follows:
+
In addition to supporting token-based authentication, APIs also support authentication using access key ID/secret access key (AK/SK). During AK/SK-based authentication, an SDK is used to sign the request, and the Authorization (signature information) and X-Sdk-Date (time when the request is sent) header fields are automatically added to the request.
+For more information, see AK/SK-based Authentication.
+The API used to obtain a user token does not require authentication. Therefore, only the Content-Type field needs to be added to requests for calling the API. An example of such requests is as follows:
+POST https://{iam_endpoint}/v3/auth/tokens
+Content-Type: application/json
+The body of a request is often sent in a structured format as specified in the Content-Type header field. The request body transfers content except the request header.
+The request body varies between APIs. Some APIs do not require the request body, such as the APIs requested using the GET and DELETE methods.
+In the case of the API used to create an API group (dedicated gateways), the request parameters and parameter description can be obtained from the API request. The following provides an example request with a body included. Replace name (API group name) and remark (API group description) with the actual values.
+POST https://{apig_endpoint}/v2/{project_id}/v2/{project_id}/apigw/instances/{instance_id}/api-groups
+Content-Type: application/json
+X-Auth-Token: xxxx
+{
+ "name": "APIGroup_test",
+ "remark": "api group remark"
+}
+If all data required for the API request is available, you can send the request to call the API through curl, Postman, or coding.
+APIG supports pagination query of resource lists, such as an API list.
+To perform a pagination query, add the following parameters to the URL:
+Example:
+GET /v1.0/apigw/apis?page_size=10&page_no=5+
APIG filters query results by object attribute when you query a resource list, such as an API list.
+Example:
+GET /v1.0/apigw/apis?id=xxxx+
Table 1 describes common status codes.
+ +Status Code & Message + |
+Description + |
+
|---|---|
200 OK + |
+The request has been processed successfully. + |
+
204 No Content + |
+The server successfully processed the request and is not returning any content. + |
+
400 Bad Request + |
+The server failed to process the request. Possible causes include: +
|
+
401 Unauthorized + |
+The request requires user authentication. For example, the username and password are required. + |
+
403 Forbidden + |
+The server understood the request, but is refusing to fulfill it. + |
+
404 Not Found + |
+The server has not found anything matching the request URI. + |
+
405 Method Not Allowed + |
+The method specified in the request line is not allowed for the resource identified by the request URI. + |
+
406 Not Acceptable + |
+The response generated by the server could not be accepted by the client. + |
+
407 Proxy Authentication Required + |
+You must first authenticate yourself with the proxy. + |
+
408 Request Timeout + |
+The server timed out waiting for the request. + |
+
409 Conflict + |
+The request could not be completed due to a conflict with the current state of the resource. + |
+
410 Gone + |
+The requested resource is no longer available at the server and no forwarding address is known. + |
+
412 Precondition Failed + |
+The server does not meet one of the preconditions that the requester put on the request. + |
+
500 Internal Server Error + |
+The server encountered an unexpected condition which prevented it from fulfilling the request. + |
+
501 Not Implemented + |
+The server does not support the functionality required to fulfill the request. + |
+
502 Bad Gateway + |
+The server, while acting as a gateway or proxy, received an invalid response from the upstream server it accessed in attempting to fulfill the request. + |
+
503 Service Unavailable + |
+The server is currently unable to handle the request due to a temporary overloading or maintenance of the server. + |
+
504 Gateway Timeout + |
+The server was acting as a gateway or proxy and did not receive a timely response from the upstream server. + |
+
Released On + |
+Description + |
+
|---|---|
2022-12-30 + |
+This issue is the first official release. + |
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+