You need to enable JavaScript to run this app.
Intelligent Data Insight

Intelligent Data Insight

Copy page
Download PDF
OpenAPI
Invocation Method
Copy page
Download PDF
Invocation Method

This document provides an overview of the overall process for OpenAPI invocation, interface call limitations, and common error codes, with a focus on the required token application and usage methods for OpenAPI invocation.

Overall process
  1. A clientId and clientSecret are generated for each OpenAPI caller; these serve as credentials for invoking the interface.
  2. The user uses the clientId and clientSecret to call the interface and exchange for a JWT token containing user identity information.
  3. When invoking business interfaces, the user must include the JWT token in the request header, for example: Authorization: Bearer jwt_token.
  4. When an interface is called, DataWind uses a public key to verify the JWT token and performs rate limiting and auditing.
  5. When invoking any DataWind interface, to facilitate troubleshooting, it is recommended to add both the 'x-request-id' and 'request-id' headers (ensure each is a unique string). Two headers are needed because DataWind consists of multiple components, and different components may use different identifiers. These two parameters will be recorded in DataWind's backend logs, providing strong support for analysis and troubleshooting when issues arise, thereby enabling more efficient resolution of potential faults.
  6. Return business results.

The overall process is as follows:
Image

Token application

Obtain clientId and clientSecret

Go to "Open Platform" -> "Developer Console", click "Create Credential" to apply for clientId and clientSecret. There are two types of credentials: user and system (system is only supported for system administrators). As shown below:
Image
Image
Image

warning

Be sure to properly keep clientId and clientSecret confidential. These are credentials for calling the interface. Exposing them to other users will result in a risk of data leakage.

Obtain jwtToken

Request description

Request URL: The interface URL used for invocation varies by environment.

  • For private deployment environments, the interface URL prefix is the same as the private environment access address.
  • For the Volcano Engine SaaS environment, if the access address is https://console.volcengine.com/bi/datawind, then the interface URL prefix is https://console.volcengine.com/bi/datawind/aeolus.

Request example

curl --location --request POST 'https://console.volcengine.com/bi/datawind/aeolus/api/v3/openapi/jwtToken' \
--header 'Content-Type: application/json' \
--data-raw '{
  "metadata": {
    "clientId": "{clientId}",
    "clientSecret": "{clientSecret}",
    "proxyUser": "abc****@21**********",
    "expire": 3600
  }
}'

tip

If the user has opened the "Developer Console" - "Credential Management" page, the user can directly copy the relevant request parameters provided below the credentials. Only the obtained clientId and clientSecret need to be replaced; the system has already filled in the proxyUser and expire parameters.
Image

Request parameters

Name

Type

Required

Example value

Description

clientId

integer

Required

123abc

Login credential ID, obtained in the previous step

clientSecret

integer

Required

123abc

Login credential key, obtained in the previous step

proxyUser

string

Optional

user_1

The username corresponding to the token

expire

integer

Optional

3600

Token expiration time. The default value is 3600 seconds.

warning

The maximum token expiration time is 3 days

Response parameters

Parameter

Type

Description

code

string

Return status code. If the request is successful, aeolus/ok is returned. The following are error codes and their explanations:

  • aeolus/openapiClient/tokenExpired: The token has expired
  • aeolus/openapiClient/tokenError: The token is incorrect
  • aeolus/openapiClient/requestRateExcess: The token call exceeds the frequency limit
  • aeolus/openapiClient/blocked: The request has been intercepted

data

object

Contains specific information returned by the interface, including jwtToken and proxyUser

data.jwtToken

string

Represents the user's identity information. When calling business interfaces, the user needs to include the jwtToken in the request header.

data.proxyUser

string

The username corresponding to the token

msg

string

A natural language description of the operation result

Response example

{
    "code": "aeolus/ok",
    "data": {
        "jwtToken": "eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9.ey*****************************************************************************************************************************************************************************.********************-*************************************************************************************-****************************************************************************************************************************-***-********************************************-******************************************************-*************************-****************************************************************************-************-*************************************-*********************************************************************************************************************************************************-****************-******************5sus",
        "proxyUser": "user_1"
    },
    "msg": "成功"
}

Token usage

When invoking an interface, the user must include the content of the jwtToken in the request header, for example: Authorization: Bearer jwt_token
The following is an example of invoking the current user interface using curl:

curl -X GET 'https://{domain}/aeolus/api/v3/open/misc/current_user' \
-H 'Authorization: Bearer jwt_token'

tip

  • In the above link, {domain} refers to the environment domain name
    • For private deployment environments, the address prefix used to call the interface is consistent with the private environment access address
    • For Volcano Engine SaaS environments, the interface address prefix is https://console.volcengine.com/bi/datawind
  • clientId is not shared across different environments

Interface call limitations

To ensure service stability and prevent malicious attacks, the DataWind backend uses the following methods to limit requests:
(1) Rate limiting (the current external service capacity of the interface has reached a high level; if it still does not meet your needs, you can contact the Volcano Engine technical support team to request modifications);
(2) Blocking, used to reserve certain APIs that are not open or to temporarily block abnormal user requests;
(3) Auditing, every OpenAPI call will be recorded, including the caller, interface, parameters, and call time.

Common error codes

For details, see Common Error codes.

Last updated: 2026.07.06 17:03:29