API overview
Updated at:
This topic describes the APIs provided by Quick BI.
Important
- APIs are available only to Quick BI users on the public cloud, not the financial or government clouds.
- Only users of Quick BI Professional Edition or higher can call APIs.
| Primary category | Secondary category | Version | API | Description | QPS | Timeout (s) |
| Organization management | Organization user management | 2020-08-01 | AddUser | Adds an organization member. | 50 | 10 |
| UpdateUser | Updates information for a specified organization member. | 50 | 10 | |||
| QueryUserList | Retrieves a list of organization members. | 30 | 10 | |||
| DeleteUser | Deletes a specified organization member. | 50 | 10 | |||
| QueryUserInfoByUserId | Retrieves information about an organization member by user ID. | 30 | 10 | |||
| QueryUserInfoByAccount | Retrieves information about an organization member by Alibaba Cloud account ID or name. | 30 | 10 | |||
| User tag management | 2020-08-02 | AddUserTagMeta | Adds tag metadata for organization members. | 50 | 10 | |
| DeleteUserTagMeta | Deletes tag metadata of an organization member. | 50 | 10 | |||
| QueryUserTagMetaList | Retrieves the tag metadata of members in an organization. | 30 | 10 | |||
| UpdateUserTagValue | Updates the tag value for an organization member. | 50 | 10 | |||
| QueryUserTagValueList | Retrieves the tag values for a specific organization member. | 30 | 10 | |||
| UpdateUserTagMeta | Updates the tag metadata of an organization member. | 50 | 10 | |||
| User group management | 2020-07-31 | AddUserGroupMember | Adds an organization member to a specified user group. | 50 | 10 | |
| AddUserGroupMembers | Adds multiple organization members to a specified user group. | 50 | 10 | |||
| DeleteUserGroupMember | Deletes a specified member from a user group. | 50 | 10 | |||
| CreateUserGroup | Creates a user group in a specified organization. | 50 | 10 | |||
| DeleteUserGroup | Deletes a user group from a specified organization. | 50 | 10 | |||
| UpdateUserGroup | Updates the information of a specified user group. | 50 | 10 | |||
| QueryUserGroupMember | Retrieves a list of members in a user group. | 30 | 10 | |||
| QueryUserGroupListByParentId | Retrieves the child user groups of a specified parent user group. | 30 | 10 | |||
| GetUserGroupInfo | Searches for a user group by keyword. | 30 | 10 | |||
| ListUserGroupsByUserId | Lists the user groups to which a specified user belongs. | 30 | 10 | |||
| WithdrawAllUserGroups | Removes a specified user from all user groups. | 50 | 10 | |||
| DeleteUserGroupMembers | Removes multiple users from a user group. | 50 | 10 | |||
| ListByUserGroupId | Retrieves information about multiple user groups by user group ID. | 50 | 10 | |||
| Permission management | Report sharing authorization management | 2020-08-04 | QueryShareList | Retrieves a list of authorization policies. | 30 | 10 |
| AddShareReport | Adds an authorization policy to a report. | 50 | 10 | |||
| QuerySharesToUserList | Retrieves a list of reports authorized to a user. | 30 | 10 | |||
| CancelReportShare | Deletes the authorization policy for a report. | 50 | 10 | |||
| Data portal menu authorization management | 2020-08-08 | ListPortalMenus | Retrieves a list of data portal menus. | 30 | 10 | |
| ListPortalMenuAuthorization | Retrieves the authorization list for a data portal menu. | 30 | 10 | |||
| AuthorizeMenu | Adds authorizations to data portal menus in bulk. | 50 | 10 | |||
| CancelAuthorizationMenu | Revokes authorizations from data portal menus in bulk. | 50 | 10 | |||
| ChangeVisibilityModel | Sets a data portal menu to be visible only to authorized users. | 50 | 10 | |||
| Row-level permission management | 2020-11-11 | QueryDatasetSwitchInfo | Retrieves the status of the row-level permission switch for a dataset. | 30 | 10 | |
| UpdateDataLevelPermissionStatus | Enables or disables row-level and column-level permissions for a dataset. | 50 | 10 | |||
| ListCubeDataLevelPermissionConfig | Retrieves the row-level and column-level permission configurations of a dataset. | 30 | 10 | |||
| SetDataLevelPermissionRuleConfig | Sets a single row-level or column-level permission configuration for a dataset. | 50 | 10 | |||
| DeleteDataLevelRuleConfig | Deletes a single row-level or column-level permission rule configuration for a dataset. | 50 | 10 | |||
| AddDataLevelPermissionRuleUsers | Incrementally adds users to a single row-level permission rule. | 50 | 10 | |||
| DeleteDataLevelPermissionRuleUsers | Removes users from a single row-level permission rule. | 50 | 10 | |||
| SetDataLevelPermissionExtraConfig | Sets extra configurations for row-level or column-level permissions. | 50 | 10 | |||
| ListDataLevelPermissionWhiteList | Retrieves the whitelist for row-level and column-level permissions of a dataset. | 30 | 10 | |||
| SetDataLevelPermissionWhiteList | Overwrites the whitelist for row-level and column-level permissions. | 50 | 10 | |||
| AddDataLevelPermissionWhiteList | Incrementally adds users to the whitelist for row-level and column-level permissions. | 50 | 10 | |||
| Resource management | Workspace management | 2020-08-03 | UpdateWorkspaceUserRole | Changes the role of a workspace member. | 50 | 10 |
| QueryWorkspaceUserList | Retrieves a list of members in a specified workspace. | 30 | 10 | |||
| DeleteUserFromWorkspace | Deletes a member from a specified workspace. | 50 | 10 | |||
| QueryOrganizationWorkspaceList | Retrieves a list of workspaces in the current organization. | 30 | 10 | |||
| AddUserToWorkspace | Adds a single member to a specified workspace. | 50 | 10 | |||
| AddWorkspaceUsers | Adds multiple members to a specified workspace. | 50 | 10 | |||
| QueryUserRoleInfoInWorkspace | Retrieves the role information of a member in a specified workspace. | 30 | 10 | |||
| UpdateWorkspaceUsersRole | Updates the roles of workspace members in bulk. | 50 | 10 | |||
| Report resource management | 2020-08-07 | QueryWorksByOrganization | Retrieves a list of reports in the organization. | 30 | 10 | |
| QueryWorksByWorkspace | Retrieves a list of reports in a specified workspace. | 30 | 10 | |||
| QueryReadableResourcesListByUserId | Retrieves a list of reports that a specified user has permission to view. | 30 | 10 | |||
| CheckReadable | Checks if a user can view a specified report. | 50 | 10 | |||
| QueryEmbeddedInfo | Retrieves the embedding information for a report in an organization. | 30 | 10 | |||
| UpdateEmbeddedStatus | Changes the embedding status of a report. | 50 | 10 | |||
| QueryWorks | Retrieves information about a report. | 30 | 10 | |||
| QueryWorksBloodRelationship | Retrieves the data lineage of a specified report. | 30 | 10 | |||
| Dataset resource management | 2020-08-06 | QueryDatasetList | Retrieves a list of datasets in a specified workspace. | 30 | 10 | |
| QueryDatasetDetailInfo | Retrieves the details of a specified dataset. | 30 | 10 | |||
| QueryDatasetInfo | Retrieves the details of a dataset. | 30 | 10 | |||
| Favorites management | 2020-08-09 | ListCollections | Retrieves the user's list of favorites. | 30 | 10 | |
| SaveFavorites | Adds an item to favorites. | 50 | 10 | |||
| CancelCollection | Removes an item from favorites. | 50 | 10 | |||
| Homepage management | 2020-08-09 | ListSharedReports | Retrieves a list of shared reports from the my dashboard page for a specified user. | 30 | 10 | |
| ListFavoriteReports | Retrieves a list of favorite reports from the my dashboard page for a specified user. | 30 | 10 | |||
| ListRecentViewReports | Retrieves a list of recently or frequently viewed reports from the my dashboard page for a specified user. | 30 | 10 | |||
| Data management | Data services | 2020-07-30 | QueryDataService | Calls an API that was created in Data Services. | 10 | 60 |
| Embedded analytics | Token-based mechanism | 2021-03-25 | CreateEmbedToken | Generates a token for report embedding. | 50 | 10 |
| QueryEmbedTokenInfo | Retrieves the details of a token used for report embedding. | 30 | 10 | |||
| DelayEmbedToken | Extends the validity period of a token used for report embedding. | 50 | 10 | |||
| DeleteEmbedToken | Deletes a specified token. | 50 | 10 | |||
| Ticket-based mechanism (enhanced security) | 2021-03-25 | CreateTicket | Generates a ticket for third-party report embedding. | 50 | 10 | |
| QueryTicketInfo | Retrieves the details of a ticket used for report embedding. | 30 | 10 | |||
| DeleteTicket | Deletes a ticket used for report embedding. | 50 | 10 | |||
| DelayTicketExpireTime | Extends the expiration time of a ticket used for report embedding. | 50 | 10 | |||
| UpdateTicketNum | Updates the number of times a ticket can be used for report embedding. | 50 | 10 |
API usage
Only users of Quick BI Professional Edition or higher can call APIs.
SDK version
In the pom.xml file, ensure the version is set to the latest version.
Find the latest version at https://mvnrepository.com/artifact/com.aliyun/aliyun-java-sdk-quickbi-public.
Limiting request QPS
Problem Description: For performance and security reasons, the Quick BI open APIs on the public cloud have default throttling configurations. When you use concurrent threads to call these APIs, the requests fail if the actual queries per second (QPS) exceeds the throttling threshold.
Solution: We recommend using the RateLimiter class from the Google Guava toolkit to limit the QPS of API requests.
- If you use Maven to manage your Java project, add the following dependency to the pom.xml file.
<dependency> <groupId>com.google.guava</groupId> <artifactId>guava</artifactId> <version>${google.guava.version}</version> </dependency>Note Use the latest version. You can find it at Guava: Google Core Libraries For Java. - Create and use a RateLimiter.Use the
create()factory method to create a RateLimiter instance. For details, see https://www.baeldung.com/guava-rate-limiter.// Create a RateLimiter with a limit of 30 QPS. RateLimiter rateLimiter = RateLimiter.create(30); // Acquire a permit. This call blocks if the QPS limit is exceeded. rateLimiter.acquire(); // Make the API request only after a permit is acquired. doSomeAPIRequest();
Note QPS (Queries Per Second) refers to the number of requests or tasks per second.
Concurrency refers to the number of requests or tasks that the system processes simultaneously.
QPS = concurrency / average response time.
Is this page helpful?