Core Data APIs
Core Data APIs enable you to query and retrieve data from your Cube semantic layer using various protocols and formats, including SQL, DAX, MDX, REST, and GraphQL.
Choosing the Right 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
-
To connect to AI assistants, use the Model Context Protocol (MCP) server
-
For internal or self-serve business intelligence (opens in a new tab), use Semantic Layer Sync if 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
All Core Data APIs share common querying concepts and support authentication, security contexts, and access policies defined in your semantic layer.
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 |
|---|---|
| Hierarchies | Microsoft Power BI via the DAX API Cube Cloud for Excel Cube Cloud for Sheets Tableau via Semantic Layer Sync Also, supported in Playground |
| Flat folders | Microsoft Power BI via the DAX API Microsoft Excel via the MDX API Cube Cloud for Excel Cube Cloud for Sheets Tableau via Semantic Layer Sync Apache Superset via Semantic Layer Sync Preset via Semantic Layer Sync Also, supported in Playground |
| Nested folders | Microsoft Power BI via the DAX API Microsoft Excel via the MDX API |
Authentication methods
Support for authentication methods differ across APIs, integrations, and visualization tools: