Authorizing Apps
Function
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.
URI
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.  | 
     
Request Parameters
| 
        Parameter  | 
      
        Mandatory  | 
      
        Type  | 
      
        Description  | 
     
|---|---|---|---|
| 
        X-Auth-Token  | 
      
        Yes  | 
      
        String  | 
      
        User token. It can be obtained by calling the IAM API used to obtain a user token. The value of X-Subject-Token in the response header is a token.  | 
     
| 
        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.  | 
     
Response Parameters
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.  | 
     
Example Requests
{
  "env_id" : "DEFAULT_ENVIRONMENT_RELEASE_ID",
  "app_ids" : [ "356de8eb7a8742168586e5daf5339965" ],
  "api_ids" : [ "5f918d104dc84480a75166ba99efff21" ]
}
 Example Responses
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 Codes
| 
        Status Code  | 
      
        Description  | 
     
|---|---|
| 
        201  | 
      
        Created  | 
     
| 
        400  | 
      
        Bad Request  | 
     
| 
        401  | 
      
        Unauthorized  | 
     
| 
        403  | 
      
        Forbidden  | 
     
| 
        404  | 
      
        Not Found  | 
     
| 
        500  | 
      
        Internal Server Error  | 
     
Error Codes
See Error Codes.
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.