APIs & integrations
With a rich set of APIs, Cube can power and deliver data to all kinds of data applications.
Data APIs are used to run queries against the data model. Despite varying protocols and query formats, all data APIs share common querying concepts.
Also, there are management APIs to control Cube deployments externally.
Data APIs
A few rules of thumb to help you choose an API:
-
To connect to Microsoft Power BI, use the DAX API.
-
To connect to Microsoft Excel, use either the MDX API or Cube Cloud for Excel.
-
To connect to Google Sheets, use Cube Cloud for Sheets.
-
For internal or self-serve business intelligence (opens in a new tab), use Semantic Layer Sync in case it supports your BI tools. Otherwise, connect via the SQL API directly.
-
For embedded analytics (opens in a new tab) and real-time analytics (opens in a new tab), use REST API or GraphQL API. When using the REST API, the JavaScript SDK can simplify integration with your front-end code.
-
For AI use cases, use the AI API.
See this GitHub issue (opens in a new tab) for an unofficial, community-maintained client library for Python (opens in a new tab).
Data modeling
Support for data modeling features differ across APIs, integrations, and visualization tools. Some of the features with partial support are listed below:
Feature | ✅ Supported in | ❌ Not supported in |
---|---|---|
Hierarchies | Microsoft Power BI via the DAX API Cube Cloud for Excel Cube Cloud for Sheets Tableau via Semantic Layer Sync | All other tools |
Folders | Microsoft Power BI via the DAX API Cube Cloud for Excel Cube Cloud for Sheets Tableau via Semantic Layer Sync | All other tools |
Authentication methods
Support for authentication methods differ across APIs, integrations, and visualization tools:
Method | ✅ Supported in |
---|---|
User name and password | DAX API MDX API Semantic Layer Sync SQL API |
Identity provider | Cube Cloud for Excel Cube Cloud for Sheets |
Access token | REST API GraphQL API AI API |
Management APIs
In case you'd like Cube to work with data orchestration tools and let them push changes from upstream data sources to Cube, explore the Orchestration API.