# Cube Documentation ## Docs - [AI Tokens](https://docs.cube.dev/admin/account-billing/ai-tokens.md): Understand how AI token usage works in Cube, including per-seat grants, token packages, and usage tracking. - [API keys](https://docs.cube.dev/admin/account-billing/api-keys.md): Admins can manage API keys through Admin → API Keys. - [Billing FAQ](https://docs.cube.dev/admin/account-billing/billing-faq.md): Frequently asked questions about Cube billing, pricing, payments, and invoices. - [Support in Cube Cloud](https://docs.cube.dev/admin/account-billing/support.md): Summarizes support channels, coverage hours, and ticket allowances across Cube Cloud product tiers. - [Bring Your Own Model](https://docs.cube.dev/admin/ai/bring-your-own-model.md): Configure custom LLM providers for AI agents in Cube, including supported providers, setup, and billing implications. - [Certified queries](https://docs.cube.dev/admin/ai/certified-queries.md): Provide a library of trusted SQL queries that the agent uses as reference examples when answering user requests. - [Overview](https://docs.cube.dev/admin/ai/index.md): Configure the agent that ships with every Cube deployment — accessible views, LLM, runtime, and memory. - [Memories](https://docs.cube.dev/admin/ai/memory-isolation.md): How the agent stores, retrieves, and isolates memories across tenants, spaces, and users. - [Multi-agent](https://docs.cube.dev/admin/ai/multi-agent.md): Configure multiple agents within a single deployment, each with its own model, accessible views, rules, and certified queries. - [Rules](https://docs.cube.dev/admin/ai/rules.md): Define instructions in your data model repository that guide the agent's behavior. - [Querying concurrency](https://docs.cube.dev/admin/connect-to-data/concurrency.md): All queries to data APIs are processed asynchronously via a query queue. It allows to optimize the load and increase querying performance. - [Amazon Athena](https://docs.cube.dev/admin/connect-to-data/data-sources/aws-athena.md): Give Cube IAM access to Athena, an S3 query-results path, region and catalog settings, plus optional assumed-role credentials. - [AWS Redshift](https://docs.cube.dev/admin/connect-to-data/data-sources/aws-redshift.md): Authenticate Cube to Amazon Redshift with database passwords or IAM roles and ensure network reachability from your deployment. - [ClickHouse](https://docs.cube.dev/admin/connect-to-data/data-sources/clickhouse.md): Connect Cube to ClickHouse for low-latency analytics, including host credentials and driver-specific connection options. - [Databricks](https://docs.cube.dev/admin/connect-to-data/data-sources/databricks-jdbc.md): Databricks is a unified data intelligence platform. - [Druid](https://docs.cube.dev/admin/connect-to-data/data-sources/druid.md): The driver for Druid is community-supported and is not maintained by Cube or the database vendor. - [DuckDB](https://docs.cube.dev/admin/connect-to-data/data-sources/duckdb.md): Set up Cube with DuckDB for cloud object storage, local database files, or MotherDuck-backed hybrid query execution. - [Elasticsearch](https://docs.cube.dev/admin/connect-to-data/data-sources/elasticsearch.md): The driver for Elasticsearch is community-supported and is not maintained by Cube or the database vendor. - [Firebolt](https://docs.cube.dev/admin/connect-to-data/data-sources/firebolt.md): The driver for Firebolt is supported by its vendor. Please report any issues to their Help Center. - [Google BigQuery](https://docs.cube.dev/admin/connect-to-data/data-sources/google-bigquery.md): Grant a Google Cloud service account the right BigQuery IAM roles, then point Cube at your project, region, and key material. - [Hive / SparkSQL](https://docs.cube.dev/admin/connect-to-data/data-sources/hive.md): The driver for Hive / SparkSQL is community-supported and is not maintained by Cube or the database vendor. - [Data Sources](https://docs.cube.dev/admin/connect-to-data/data-sources/index.md): Choose and configure a data warehouse, query engine, or other data source to connect to Cube. - [ksqlDB](https://docs.cube.dev/admin/connect-to-data/data-sources/ksqldb.md): ksqlDB is a purpose-built database for stream processing applications, ingesting data from Apache Kafka. - [Materialize](https://docs.cube.dev/admin/connect-to-data/data-sources/materialize.md): The driver for Materialize is supported by its vendor. Please report any issues to their Slack. - [MongoDB](https://docs.cube.dev/admin/connect-to-data/data-sources/mongodb.md): Query MongoDB from Cube through the BI Connector’s SQL interface, including community-driver and Atlas deprecation caveats. - [Microsoft Fabric](https://docs.cube.dev/admin/connect-to-data/data-sources/ms-fabric.md): Microsoft Fabric is an all-in-one analytics solution for enterprises. It offers a comprehensive suite of services, including a data warehouse. - [Microsoft SQL Server](https://docs.cube.dev/admin/connect-to-data/data-sources/ms-sql.md): Connect Cube to SQL Server with database host credentials, optional domain-scoped login, and SSL or pool tuning as needed. - [MySQL](https://docs.cube.dev/admin/connect-to-data/data-sources/mysql.md): Configure Cube’s MySQL client with TCP or Unix socket access, SSL, pooling limits, and optional timezone handling flags. - [Oracle](https://docs.cube.dev/admin/connect-to-data/data-sources/oracle.md): The driver for Oracle is community-supported and is not maintained by Cube or the database vendor. - [Apache Pinot](https://docs.cube.dev/admin/connect-to-data/data-sources/pinot.md): Broker-level connection details and required Pinot SQL features for wiring Cube to an Apache Pinot cluster via environment variables. - [Postgres](https://docs.cube.dev/admin/connect-to-data/data-sources/postgres.md): Supply PostgreSQL host, database name, credentials, and optional SSL or pool settings to connect Cube as a client. - [Presto](https://docs.cube.dev/admin/connect-to-data/data-sources/presto.md): Connect Cube to PrestoDB using hostname authentication together with catalog and schema selectors for your query engine layout. - [QuestDB](https://docs.cube.dev/admin/connect-to-data/data-sources/questdb.md): QuestDB is a high-performance time-series database which helps you overcome ingestion bottlenecks. - [RisingWave](https://docs.cube.dev/admin/connect-to-data/data-sources/risingwave.md): Point Cube at RisingWave using the Postgres-compatible driver and your cluster host, database, and credential settings. - [SingleStore](https://docs.cube.dev/admin/connect-to-data/data-sources/singlestore.md): SingleStore is a distributed SQL database that offers high-throughput transactions (inserts and upserts) and low-latency analytics. - [Snowflake](https://docs.cube.dev/admin/connect-to-data/data-sources/snowflake.md): Snowflake is a popular cloud-based data platform. - [SQLite](https://docs.cube.dev/admin/connect-to-data/data-sources/sqlite.md): The driver for SQLite is community-supported and is not maintained by Cube or the database vendor. - [Trino](https://docs.cube.dev/admin/connect-to-data/data-sources/trino.md): Map Cube to Trino with host credentials plus catalog, schema, SSL, and optional bearer-token variables on the shared Presto driver. - [Vertica](https://docs.cube.dev/admin/connect-to-data/data-sources/vertica.md): OpenText Analytics Database (Vertica) is a columnar database designed for big data analytics. - [Connect to data](https://docs.cube.dev/admin/connect-to-data/index.md): Connect your data warehouse or database to Cube and configure connection settings. - [Connecting to multiple data sources](https://docs.cube.dev/admin/connect-to-data/multiple-data-sources.md): Manage one or more data source connections per Cube Cloud deployment from a single place. - [Set up per-user OAuth](https://docs.cube.dev/admin/connect-to-data/oauth-authentication.md): Configure Cube to authenticate each user with their own OAuth token, falling back to a service account for liveness checks. - [App theme](https://docs.cube.dev/admin/customization/app-theme.md): Brand Cube with your own colors, logo, and fonts — applied to embedded surfaces and, optionally, across the entire Cube Cloud console. - [Chart palettes](https://docs.cube.dev/admin/customization/chart-palettes.md): Create custom color palettes so charts across your account stay consistent and on-brand. - [Dashboard themes](https://docs.cube.dev/admin/customization/dashboard-themes.md): Style dashboards with reusable themes that control backgrounds, widget cards, borders, titles, and text. - [Continuous deployment](https://docs.cube.dev/admin/deployment/continuous-deployment.md): This guide covers features and tools you can use to deploy your Cube project to Cube Cloud. - [Custom domains](https://docs.cube.dev/admin/deployment/custom-domains.md): Maps your own DNS hostname to Cube Cloud deployment APIs using the custom domain flow and required CNAME records. - [Bring Your Own Cloud on AWS](https://docs.cube.dev/admin/deployment/dedicated/aws/byoc.md): Prerequisites, IAM access, and provisioning steps for deploying BYOC inside your own AWS account, managed by the Cube Operator. - [Dedicated Infrastructure on AWS](https://docs.cube.dev/admin/deployment/dedicated/aws/index.md): Connect Cube's Dedicated Infrastructure on AWS to your VPCs and corporate networks, or deploy the entire data plane inside your own AWS account via BYOC. - [Private API Connectivity on AWS](https://docs.cube.dev/admin/deployment/dedicated/aws/private-api-connectivity.md): Expose Cube's HTTP and SQL APIs to your AWS network and internal BI tools over AWS PrivateLink so traffic from your applications, browsers, and BI clients never traverses the public internet. - [Setting up AWS PrivateLink](https://docs.cube.dev/admin/deployment/dedicated/aws/private-link.md): How to expose an AWS endpoint service and coordinate PrivateLink so Cube's Dedicated Infrastructure reaches your VPC privately. - [Setting up VPC Peering on AWS](https://docs.cube.dev/admin/deployment/dedicated/aws/vpc-peering.md): End-to-end checklist for VPC peering Cube's Dedicated Infrastructure with your AWS VPC for private data access. - [Bring Your Own Cloud on Azure](https://docs.cube.dev/admin/deployment/dedicated/azure/byoc.md): Azure BYOC architecture, provisioner app access, and AKS-based onboarding for deploying Cube inside your own Azure subscription. - [Dedicated Infrastructure on Azure](https://docs.cube.dev/admin/deployment/dedicated/azure/index.md): Connect Cube's Dedicated Infrastructure on Azure to your VNets and corporate networks, or deploy the entire data plane inside your own Azure subscription via BYOC. - [Setting up Azure Private Link](https://docs.cube.dev/admin/deployment/dedicated/azure/private-link.md): How to publish an Azure Private Link Service and coordinate the connection so Cube's Dedicated Infrastructure reaches your VNet privately. - [Setting up VNet Peering on Azure](https://docs.cube.dev/admin/deployment/dedicated/azure/vpc-peering.md): End-to-end checklist for VNet peering Cube's Dedicated Infrastructure with your Azure VNet for private data access. - [Bring Your Own Cloud on GCP](https://docs.cube.dev/admin/deployment/dedicated/gcp/byoc.md): Project setup, permissions, and provisioning flow for deploying Cube BYOC inside a dedicated GCP project. - [Dedicated Infrastructure on GCP](https://docs.cube.dev/admin/deployment/dedicated/gcp/index.md): Connect Cube's Dedicated Infrastructure on GCP to your VPC networks via Private Service Connect or VPC Peering, or deploy the entire data plane inside your own GCP project via BYOC. - [Setting up Google Private Service Connect](https://docs.cube.dev/admin/deployment/dedicated/gcp/private-service-connect.md): How to publish a Service Attachment and coordinate Private Service Connect so Cube's Dedicated Infrastructure reaches your VPC privately. - [Setting up VPC Peering on GCP](https://docs.cube.dev/admin/deployment/dedicated/gcp/vpc-peering.md): End-to-end checklist for VPC peering Cube's Dedicated Infrastructure with your GCP VPC network for private data access. - [Dedicated Infrastructure](https://docs.cube.dev/admin/deployment/dedicated/index.md): Run Cube on dedicated single-tenant infrastructure (managed by Cube) or on your own AWS, Azure, or GCP account (BYOC), with private connectivity to your data sources and APIs. - [Bring-Your-Own Pre-aggregation Storage](https://docs.cube.dev/admin/deployment/dedicated/pre-aggregation-storage.md): Supply your own object storage bucket as the backend for Cube Store pre-aggregated data so that all data at rest stays within your infrastructure. - [Deployment types](https://docs.cube.dev/admin/deployment/deployment-types.md): Cube provides three deployment types: Shared, Dedicated, and Multi-cluster. - [Encryption keys](https://docs.cube.dev/admin/deployment/encryption-keys.md): The Encryption Keys page in Cube Cloud allows to manage data-at-rest encryption in Cube Store. - [Deployment environments](https://docs.cube.dev/admin/deployment/environments.md): Outlines production, staging, and per-developer environments and how they differ inside one Cube deployment. - [Overview](https://docs.cube.dev/admin/deployment/index.md): Introduces Cube deployments and how to browse, create, and operate the environments that run your semantic layer. - [Infrastructure Options](https://docs.cube.dev/admin/deployment/infrastructure.md): Cube Cloud provides four infrastructure options to host your Cube deployments: - [Limits and quotas](https://docs.cube.dev/admin/deployment/limits.md): Cube Cloud implements limits on resource usage on account and deployment levels to ensure the best experience for all Cube Cloud users. - [Scalability](https://docs.cube.dev/admin/deployment/scalability.md): Tune Cube Cloud throughput and pre-aggregation capacity by scaling API instances and Cube Store workers. - [Deployment warm-up](https://docs.cube.dev/admin/deployment/warm-up.md): Covers optional pre-launch warm-up for data model compilation and pre-aggregations on Dedicated deployments. - [Audit Log](https://docs.cube.dev/admin/monitoring/audit-log.md): Learn how to turn on Audit Log in Cube Cloud, review security events across deployments, and download them for compliance reviews. - [Chats History](https://docs.cube.dev/admin/monitoring/chats-history.md): Admins can access users chat history through Admin → Chats History. - [Integration with Amazon CloudWatch](https://docs.cube.dev/admin/monitoring/monitoring-integrations/cloudwatch.md): Export Cube Cloud deployment logs to Amazon CloudWatch using Vector and an aws_cloudwatch_logs sink configuration. - [Integration with Datadog](https://docs.cube.dev/admin/monitoring/monitoring-integrations/datadog.md): Datadog is a popular fully managed observability service. This guide demonstrates how to set up Cube Cloud to export logs and metrics to Datadog. - [Integration with Grafana Cloud](https://docs.cube.dev/admin/monitoring/monitoring-integrations/grafana-cloud.md): Grafana Cloud is a popular fully managed observability service. This guide demonstrates how to set up Cube Cloud to export logs to Grafana Cloud. - [Overview](https://docs.cube.dev/admin/monitoring/monitoring-integrations/index.md): Export Cube Cloud logs and metrics to external monitoring tools like Datadog, Grafana Cloud, and New Relic. - [Integration with New Relic](https://docs.cube.dev/admin/monitoring/monitoring-integrations/new-relic.md): Forward Cube Cloud logs and metrics to New Relic with Vector sinks targeting the logs and metrics APIs. - [Integration with Amazon S3](https://docs.cube.dev/admin/monitoring/monitoring-integrations/s3.md): Amazon S3 is a popular object storage system. This guide demonstrates how to set up Cube Cloud to export logs to Amazon S3. - [Performance Insights](https://docs.cube.dev/admin/monitoring/performance.md): Use Performance Insights charts in Cube Cloud to interpret API load, queues, and resource behavior when tuning a deployment. - [Pre-Aggregations](https://docs.cube.dev/admin/monitoring/pre-aggregations.md): Monitor pre-aggregation builds, partitions, and refresh history from the Cube Cloud Pre-Aggregations console. - [Query History](https://docs.cube.dev/admin/monitoring/query-history.md): The Query History feature in Cube Cloud is a one-stop shop for all performance and diagnostic information about queries issued for a deployment. - [Analyzing data from Query History export](https://docs.cube.dev/admin/monitoring/query-history-export.md): Walk through exporting Query History to Amazon S3 with Vector and analyzing the files with DuckDB inside Cube. - [Google Workspace](https://docs.cube.dev/admin/sso/google-workspace.md): Walks Google Workspace super admins through SAML single sign-on between Google Admin and Cube Cloud. - [Overview](https://docs.cube.dev/admin/sso/index.md): Configure how your team accesses Cube Cloud using passwords, social logins, or SAML-based single sign-on. - [SAML authentication with Microsoft Entra ID](https://docs.cube.dev/admin/sso/microsoft-entra-id/saml.md): Step-by-step guide for configuring Microsoft Entra ID as a SAML identity provider for Cube sign-in. - [SCIM provisioning with Microsoft Entra ID](https://docs.cube.dev/admin/sso/microsoft-entra-id/scim.md): Automates user and group lifecycle in Cube by connecting SCIM provisioning to Microsoft Entra ID. - [SAML authentication with Okta](https://docs.cube.dev/admin/sso/okta/saml.md): Connects Okta to Cube Cloud with SAML so members authenticate through your existing Okta application. - [SCIM provisioning with Okta](https://docs.cube.dev/admin/sso/okta/scim.md): With SCIM (System for Cross-domain Identity Management) enabled, you can automate user provisioning in Cube Cloud and keep user groups synchronized with Okta. - [Custom roles](https://docs.cube.dev/admin/users-and-permissions/custom-roles.md): Define fine-grained custom roles for your organization on the Enterprise plan. - [Manage users](https://docs.cube.dev/admin/users-and-permissions/manage-users.md): Add users to your Cube Cloud account, assign roles, and control their access. - [Roles & Permissions](https://docs.cube.dev/admin/users-and-permissions/roles-and-permissions.md): _Understanding user roles and permissions in Cube._ - [User Attributes](https://docs.cube.dev/admin/users-and-permissions/user-attributes.md): _Secure data access with user attributes for filtering based on individual permissions._ - [User groups](https://docs.cube.dev/admin/users-and-permissions/user-groups.md): Organize Cube Cloud users into groups and tie those groups to data access policies instead of managing every account in isolation. - [Architecture](https://docs.cube.dev/cube-core/architecture.md): Learn about Cube Core's production deployment architecture, including API instances, refresh workers, and Cube Store. - [Deploying Cube Core with Docker](https://docs.cube.dev/cube-core/deployment.md): This guide walks you through deploying Cube with Docker. - [Add a pre-aggregation](https://docs.cube.dev/cube-core/getting-started/add-a-pre-aggregation.md): Hands-on walkthrough of accepting a Playground pre-aggregation suggestion, updating the data model, and rerunning an accelerated query. - [Create a project](https://docs.cube.dev/cube-core/getting-started/create-a-project.md): In this step, we will create a Cube Core project on your computer, connect a data source, and generate data models. - [Learn more](https://docs.cube.dev/cube-core/getting-started/learn-more.md): Now that you've set up your first project, learn more about what else Cube can do for you. - [Query data](https://docs.cube.dev/cube-core/getting-started/query-data.md): Surveys ways to explore and consume modeled data—Playground, APIs, client SDKs, and BI or app integrations—after cubes are defined. - [Cube Core](https://docs.cube.dev/cube-core/index.md): Cube Core is the open-source semantic layer you can self-host with Docker. - [Running in production](https://docs.cube.dev/cube-core/running-in-production.md): Cube makes use of two different kinds of cache: - [Security context](https://docs.cube.dev/docs/data-modeling/access-control/context.md): How Cube derives verified user claims from inbound JWTs and where those claims plug into query rewrite and compile-time logic. - [Access Control](https://docs.cube.dev/docs/data-modeling/access-control/index.md): Learn how Cube separates authentication and authorization to control who can access your data and platform features. - [Member-level security](https://docs.cube.dev/docs/data-modeling/access-control/member-level-security.md): Covers restricting which cubes, views, and members end users can query, including defaults and policy configuration with includes and excludes. - [Row-level security](https://docs.cube.dev/docs/data-modeling/access-control/row-level-security.md): Covers applying group- and attribute-based filters so query results only include rows users are allowed to see. - [Access Policies viewer](https://docs.cube.dev/docs/data-modeling/access-policies-viewer.md): Audit row-level, member-level, and member-masking access policies that govern your data model from the Cube Cloud UI, grouped by user group. - [AI context](https://docs.cube.dev/docs/data-modeling/ai-context.md): Improve AI accuracy and trust by enriching your semantic layer with descriptions and AI-specific context that helps agents generate better insights. - [Syntax](https://docs.cube.dev/docs/data-modeling/concepts/syntax.md): Specifies the model directory layout, file naming, and when to use YAML versus JavaScript for Cube data model files. - [Configuration](https://docs.cube.dev/docs/data-modeling/configuration.md): Configure model-level query defaults for a Cube deployment — query time zone, row limits, and query timeout. - [Cubes](https://docs.cube.dev/docs/data-modeling/cubes.md): Cubes represent the tables in your database. Each cube maps to a table or query in your data source and contains measures, dimensions, joins, and pre-aggregations. - [Access policies](https://docs.cube.dev/docs/data-modeling/data-access-policies.md): Declares group-scoped policies that combine member access, row filters, and masking rules directly in the data model. - [Data Model IDE](https://docs.cube.dev/docs/data-modeling/data-model-ide.md): Covers the browser code editor for full data modeling features, branch-based dev APIs, and testing model changes before they reach production traffic. - [Development mode](https://docs.cube.dev/docs/data-modeling/dev-mode.md): Outlines development mode in Cube Cloud—branch-scoped APIs, save and commit flows, and safe iteration before promoting changes to production. - [Dimensions](https://docs.cube.dev/docs/data-modeling/dimensions.md): Dimensions are attributes that describe individual rows of data — the fields you group by and filter on, such as status, city, or created_at. - [Export and import](https://docs.cube.dev/docs/data-modeling/dynamic/code-reusability-export-and-import.md): This functionality only works with data models written in JavaScript, not YAML. - [Dynamic Data Models](https://docs.cube.dev/docs/data-modeling/dynamic/index.md): Generate data models programmatically using Jinja with Python or JavaScript for dynamic schema creation. - [Data modeling with JavaScript](https://docs.cube.dev/docs/data-modeling/dynamic/javascript.md): This functionality only works with data models written in JavaScript, not YAML. - [Data modeling with YAML, Jinja, and Python](https://docs.cube.dev/docs/data-modeling/dynamic/jinja.md): Jinja and Python techniques for templating YAML models—loops, includes, and runtime generation—to keep large or multi-tenant schemas maintainable. - [Execution Environment (JavaScript)](https://docs.cube.dev/docs/data-modeling/dynamic/schema-execution-environment.md): How JavaScript model code runs inside Cube’s Node VM, including custom require, forbidden globals, and constraints compared to normal Node scripts. - [Extending cubes](https://docs.cube.dev/docs/data-modeling/extending-cubes.md): Use extends on cubes to inherit and merge members from a parent so shared measures, dimensions, and joins stay defined once. - [Joins](https://docs.cube.dev/docs/data-modeling/joins.md): Joins define relationships between cubes, allowing Cube to automatically generate multi-table SQL queries when views combine data from multiple cubes. - [Measures](https://docs.cube.dev/docs/data-modeling/measures.md): Measures compute aggregated values across rows — counts, sums, averages, and more complex calculations like rolling windows, time shifts, and rankings. - [Multi-fact views](https://docs.cube.dev/docs/data-modeling/multi-fact-views.md): Analyze data across multiple fact tables that share common dimensions like time or customers, without row multiplication or manual workarounds. - [Getting started](https://docs.cube.dev/docs/data-modeling/overview.md): Build a reusable semantic layer that provides the shared context for AI agents, BI dashboards, and embedded analytics — turning warehouse tables into governed metrics and dimensions. - [View groups](https://docs.cube.dev/docs/data-modeling/view-groups.md): View groups organize views into named collections by domain or purpose, helping downstream consumers — including AI agents and embedded analytics — navigate large data models. - [Views](https://docs.cube.dev/docs/data-modeling/views.md): Views are curated datasets that sit on top of cubes and create a user-friendly facade of your data model for downstream consumers, AI agents, and embedded analytics. - [Visual Modelerer](https://docs.cube.dev/docs/data-modeling/visual-modeler.md): Walks through Cube Cloud’s browser-based Visual Modeler for no-code modeling, including setup, workflow, and known limitations versus the code editor. - [Analytics Chat](https://docs.cube.dev/docs/explore-analyze/analytics-chat.md): Conversational analytics interface for asking plain-language questions and getting trusted, AI-powered insights from your semantic layer. - [Area](https://docs.cube.dev/docs/explore-analyze/charts/chart-types/area.md): Show volume or part-to-whole trends over time with a filled region beneath the line. - [Bar](https://docs.cube.dev/docs/explore-analyze/charts/chart-types/bar.md): Compare values across categories with grouped, stacked, percentage, and horizontal variants. - [Boxplot](https://docs.cube.dev/docs/explore-analyze/charts/chart-types/boxplot.md): Display the statistical distribution of a measure across categories using box-and-whisker plots. - [Heatmap](https://docs.cube.dev/docs/explore-analyze/charts/chart-types/heatmap.md): Visualize a measure across two categorical dimensions as a color-coded grid. - [HTML](https://docs.cube.dev/docs/explore-analyze/charts/chart-types/html.md): Build fully custom layouts using HTML templates with Handlebars and JavaScript. - [Chart types](https://docs.cube.dev/docs/explore-analyze/charts/chart-types/index.md): Overview of all built-in chart types available in Cube workbooks. - [KPI](https://docs.cube.dev/docs/explore-analyze/charts/chart-types/kpi.md): Highlight key metrics with composable blocks — numbers, comparisons, progress bars, sparklines, text, and HTML. - [Line](https://docs.cube.dev/docs/explore-analyze/charts/chart-types/line.md): Track how a measure changes over time or across an ordered dimension. - [Map](https://docs.cube.dev/docs/explore-analyze/charts/chart-types/map.md): Plot geographic data as point maps (latitude/longitude) or region maps (choropleth from GeoJSON polygons). - [Pie & donut](https://docs.cube.dev/docs/explore-analyze/charts/chart-types/pie.md): Show how a single measure is distributed across a small number of categories. - [Scatter](https://docs.cube.dev/docs/explore-analyze/charts/chart-types/scatter.md): Plot two measures against each other to find correlations, clusters, and outliers. - [Table](https://docs.cube.dev/docs/explore-analyze/charts/chart-types/table.md): Display query results as a configurable table with pivots, conditional formatting, and inline visualizations. - [Axes](https://docs.cube.dev/docs/explore-analyze/charts/configuration/axes.md): Configure axis titles, grid lines, label formatting, dual Y-axis, and reference lines. - [Color & stacking](https://docs.cube.dev/docs/explore-analyze/charts/configuration/color-and-stacking.md): Configure color palettes, stacking behavior, stacked segment sorting, and legend placement for charts. - [Data labels](https://docs.cube.dev/docs/explore-analyze/charts/configuration/data-labels.md): Display totals directly on stacked bar charts with configurable positioning and formatting. - [Configure charts](https://docs.cube.dev/docs/explore-analyze/charts/configuration/index.md): Reference for chart configuration options — series mapping, color, axes, tooltips, and data labels. - [Series configuration](https://docs.cube.dev/docs/explore-analyze/charts/configuration/series-configuration.md): Configure individual series — mark type, color, and display options — independently from the global chart settings. - [Series mapping](https://docs.cube.dev/docs/explore-analyze/charts/configuration/series-mapping.md): Assign query columns to chart channels — X axis, Y axis, color, size, and tooltips. - [Tooltips](https://docs.cube.dev/docs/explore-analyze/charts/configuration/tooltips.md): Control which fields appear when a user hovers over a chart mark. - [Custom visualizations](https://docs.cube.dev/docs/explore-analyze/charts/custom.md): Edit raw Vega-Lite specs to build visualizations beyond what the chart builder supports. - [Charts](https://docs.cube.dev/docs/explore-analyze/charts/index.md): Visualize query results as charts, tables, KPIs, and maps directly inside Cube workbooks. - [Dashboard Agent](https://docs.cube.dev/docs/explore-analyze/dashboards/dashboard-agent.md): Ask questions about a dashboard and its charts using a conversational AI assistant docked alongside the dashboard. - [Dashboards](https://docs.cube.dev/docs/explore-analyze/dashboards/index.md): Curate and share polished views of your workbook reports with stakeholders as interactive dashboards. - [Styling](https://docs.cube.dev/docs/explore-analyze/dashboards/styling.md): Customize the appearance of a dashboard from the Styling panel in the Dashboard Builder. - [AI summary](https://docs.cube.dev/docs/explore-analyze/dashboards/widgets/ai-summary.md): Generate natural-language summaries of dashboard data on demand using an AI agent. - [Charts](https://docs.cube.dev/docs/explore-analyze/dashboards/widgets/charts.md): Display reports from your workbook as visualizations on the dashboard. - [Controls](https://docs.cube.dev/docs/explore-analyze/dashboards/widgets/controls.md): Filter and time grain switcher widgets that let dashboard viewers change what's shown on the dashboard. - [Widgets](https://docs.cube.dev/docs/explore-analyze/dashboards/widgets/index.md): Building blocks for dashboards — charts, text, controls, and AI summaries that you arrange on the canvas to tell your data story. - [Text](https://docs.cube.dev/docs/explore-analyze/dashboards/widgets/text.md): Add titles, descriptions, and rich formatting to dashboards using Markdown. - [Explore](https://docs.cube.dev/docs/explore-analyze/explore.md): Self-serve data exploration from Analytics Chat, dashboards, or any semantic view — governed by your data model, shareable via URL. - [Notifications](https://docs.cube.dev/docs/explore-analyze/notifications.md): Notifications are available on Premium and Enterprise plans. - [Scheduled Refreshes](https://docs.cube.dev/docs/explore-analyze/scheduled-refreshes.md): Scheduled refreshes are available on Premium and Enterprise plans. - [Calculated fields](https://docs.cube.dev/docs/explore-analyze/workbooks/calculated-fields.md): Create ad-hoc custom dimensions and measures with Semantic SQL in workbooks, with help from AI or the field picker. - [Workbooks](https://docs.cube.dev/docs/explore-analyze/workbooks/index.md): Build reports and explore data with AI agents, organize analyses across multiple tabs, and share trusted insights with your team. - [Querying data](https://docs.cube.dev/docs/explore-analyze/workbooks/querying-data.md): In the Semantic Query tab, you can query the semantic layer. On the left, there is a selector for the semantic view that you want to query. - [Source SQL Tabs](https://docs.cube.dev/docs/explore-analyze/workbooks/source-sql-tabs.md): Run warehouse-native SQL inside Workbooks—by hand or with AI help—to explore raw tables before promoting logic into the semantic model. - [Workbook Agent](https://docs.cube.dev/docs/explore-analyze/workbooks/workbook-agent.md): Use the AI agent inside a workbook to build reports, create and edit dashboards, and run analysis with natural language. - [Connect your data](https://docs.cube.dev/docs/getting-started/connect-your-data.md): If you don't have a data source to connect to, you can create a demo deployment to test all Cube features with demo data. - [Create workbooks and dashboards](https://docs.cube.dev/docs/getting-started/create-workbooks-and-dashboards.md): Workbooks are places to curate and organize your analysis. You can create multiple reports using tabs, each focusing on different aspects of your data. - [Develop in IDE](https://docs.cube.dev/docs/getting-started/develop-in-ide.md): Use Cube Cloud IDE branch environments, commits, merges, and AI assistance to iterate on your data model without destabilizing production. - [Embed analytics](https://docs.cube.dev/docs/getting-started/embed-analytics.md): Ship agentic embedded analytics in your product — choose among iframe embeds, the conversational Chat API, or headless core APIs for full control. - [Import a Bitbucket repository](https://docs.cube.dev/docs/getting-started/migrate-from-core/import-bitbucket-repository-via-ssh.md): Onboard an existing Cube project by linking a Bitbucket repository over SSH in Cube Cloud and completing database connectivity. - [Import a Git repository](https://docs.cube.dev/docs/getting-started/migrate-from-core/import-git-repository-via-ssh.md): This guide walks you through setting up Cube Cloud, importing a generic Git repository with an existing Cube project via SSH, and connecting to your database. - [Import a GitHub repository](https://docs.cube.dev/docs/getting-started/migrate-from-core/import-github-repository.md): This guide walks you through setting up Cube Cloud, importing a GitHub repository with an existing Cube project, and connecting to your database. - [Import a GitLab repository](https://docs.cube.dev/docs/getting-started/migrate-from-core/import-gitlab-repository-via-ssh.md): Onboard an existing Cube project by linking a GitLab repository over SSH in Cube Cloud and completing database connectivity. - [Import a local project to Cube Cloud with CLI](https://docs.cube.dev/docs/getting-started/migrate-from-core/upload-with-cli.md): This guide walks you through setting up Cube Cloud, importing an existing Cube project from a local machine via SSH, and connecting to your database. - [Use analytics chat](https://docs.cube.dev/docs/getting-started/use-analytics-chat.md): Once your initial semantic model is ready, you can start using Cube features: analytics chat, workbooks, dashboards, IDE and more. - [Cube Cloud for Sheets](https://docs.cube.dev/docs/integrations/google-sheets.md): Cube Cloud for Sheets is the native Google Sheets add-on for Cube Cloud. - [MCP server](https://docs.cube.dev/docs/integrations/mcp-server.md): Connect MCP-aware assistants to Cube through a hosted HTTPS endpoint with OAuth and admin-managed defaults. - [Cube Cloud for Excel](https://docs.cube.dev/docs/integrations/microsoft-excel.md): Cube Cloud for Excel is the native Microsoft Excel add-in for Cube Cloud. - [Microsoft Power BI](https://docs.cube.dev/docs/integrations/power-bi/index.md): Microsoft Power BI is a popular business intelligence tool. - [Kerberos authentication](https://docs.cube.dev/docs/integrations/power-bi/kerberos.md): Kerberos is the most common authentication method for Windows environments. It can be used to authenticate requests to DAX API. - [NTLM authentication](https://docs.cube.dev/docs/integrations/power-bi/ntlm.md): NTLM is an authentication method developed by Microsoft that can be used to authenticate requests to DAX API. - [Semantic Layer Sync](https://docs.cube.dev/docs/integrations/semantic-layer-sync/index.md): Automatically synchronize your Cube data model into BI tools like Superset, Metabase, Preset, and Tableau. - [Semantic Layer Sync with Preset](https://docs.cube.dev/docs/integrations/semantic-layer-sync/preset.md): This page details the support for Preset in Semantic Layer Sync. - [Semantic Layer Sync with Apache Superset](https://docs.cube.dev/docs/integrations/semantic-layer-sync/superset.md): This page details the support for Apache Superset in Semantic Layer Sync. - [Semantic Layer Sync with Tableau](https://docs.cube.dev/docs/integrations/semantic-layer-sync/tableau.md): This page details the support for Tableau in Semantic Layer Sync. - [Slack](https://docs.cube.dev/docs/integrations/slack.md): Connect Cube to Slack for notifications and AI-powered analytics chat. - [Snowflake Semantic Views Integration](https://docs.cube.dev/docs/integrations/snowflake-semantic-views.md): Snowflake Semantic Views integration is available in Cube on the Enterprise plan. - [Tableau Integration](https://docs.cube.dev/docs/integrations/tableau.md): Connect Tableau to Cube using Semantic Layer Sync to programmatically create and update Tableau data sources. - [Introduction](https://docs.cube.dev/docs/introduction.md): Cube is the agentic analytics platform for business intelligence and embedded analytics, built on an open-source semantic layer. - [Folders](https://docs.cube.dev/docs/organize-content/folders.md): Organize workbooks, dashboards, and explorations into a hierarchical folder structure for easy navigation and access control. - [Share content](https://docs.cube.dev/docs/organize-content/sharing.md): Share workbooks, dashboards, and explorations with specific users, groups, or your entire organization. - [Getting started with pre-aggregations](https://docs.cube.dev/docs/pre-aggregations/getting-started-pre-aggregations.md): Conceptual introduction to pre-aggregations as Cube Store–backed rollups that tame warehouse latency as analytical data volume grows. - [Overview](https://docs.cube.dev/docs/pre-aggregations/index.md): Understand Cube's two-level caching with in-memory query results and configurable pre-aggregations. - [Lambda pre-aggregations](https://docs.cube.dev/docs/pre-aggregations/lambda-pre-aggregations.md): Lambda-style pre-aggregations that merge historical rollups with fresher source or streaming layers for near-real-time serving on Cube Store. - [Matching queries with pre-aggregations](https://docs.cube.dev/docs/pre-aggregations/matching-pre-aggregations.md): When executing a query, Cube will try to match and fulfill it with the best available pre-aggregation. - [Refreshing pre-aggregations](https://docs.cube.dev/docs/pre-aggregations/refreshing-pre-aggregations.md): Refresh worker responsibilities, key environment variables for scheduled builds, and troubleshooting when refresh intervals fall behind. - [Using pre-aggregations](https://docs.cube.dev/docs/pre-aggregations/using-pre-aggregations.md): Operational guide to aggregate awareness—how Cube picks rollups, partitions data, enforces rollup-only mode, and tunes pre-aggregation behavior. - [Authenticate requests to Cube with Auth0](https://docs.cube.dev/embedding/authentication/auth0.md): Step-by-step Auth0 application and API setup, rules for enriching JWTs with claims, and Cube configuration for Auth0-issued tokens. - [Authenticate requests to Cube with AWS Cognito](https://docs.cube.dev/embedding/authentication/aws-cognito.md): Step-by-step wiring of AWS Cognito User Pools and Hosted UI to Cube, including optional Lambda hooks for custom JWT claims. - [JSON Web Token authentication](https://docs.cube.dev/embedding/authentication/jwt.md): Walks through validating JWTs from clients or identity providers, the relevant Cube settings and environment variables, and custom check_auth implementations. - [Security context](https://docs.cube.dev/embedding/authentication/security-context.md): Explains how verified JWT claims become the security context Cube uses for access control, query rewrite, and multi-tenant configuration. - [Analytics Chat](https://docs.cube.dev/embedding/iframe/analytics-chat.md): Embed Cube Analytics Chat into your applications via iframe. - [Private embedding](https://docs.cube.dev/embedding/iframe/auth/private.md): Authenticate iframe-embedded Cube content with users' existing Cube accounts. - [Signed embedding](https://docs.cube.dev/embedding/iframe/auth/signed.md): Authenticate iframe-embedded Cube content with secure, server-generated sessions. - [Creator Mode](https://docs.cube.dev/embedding/iframe/creator-mode.md): Embed the full Cube application so users can build and modify their own dashboards. - [Customization](https://docs.cube.dev/embedding/iframe/customization.md): Customize the appearance of embedded dashboards and the embedded Cube app. - [Dashboards](https://docs.cube.dev/embedding/iframe/dashboards.md): Embed Cube dashboards into your applications via iframe. - [Overview](https://docs.cube.dev/embedding/index.md): Embed AI-powered analytics into your applications using iframes, the React Embed SDK, or a headless approach. - [Multitenancy](https://docs.cube.dev/embedding/multitenancy.md): Reference for tenant-aware Cube configuration—per-tenant drivers, schemas, repositories, refresh, and query rewrite driven by security context. - [React Embed SDK](https://docs.cube.dev/embedding/react-embed-sdk.md): React Embed SDK is currently in public preview. The API may change in future releases. - [Agent-to-agent: using the Chat API as a tool](https://docs.cube.dev/recipes/ai/agent-to-agent.md): In this recipe, you will learn how to wrap the Cube Chat API as a tool for an external AI agent, enabling agent-to-agent analytics workflows. - [Providing a custom data model for each tenant](https://docs.cube.dev/recipes/configuration/custom-data-model-per-tenant.md): We have multiple users and we would like them to have different data models. These data models can be completely different or have something in common. - [Optimizing data source usage](https://docs.cube.dev/recipes/configuration/data-store-cost-saving-guide.md): Shrink warehouse spend by shaping how Cube hits upstream stores through pre-aggregations, refresh strategy, and workload-aware settings. - [Referencing environment variables](https://docs.cube.dev/recipes/configuration/environment-variables.md): Read deployment secrets and tunables from environment variables inside Python config, JavaScript config, and data model code. - [Providing a custom data source for each tenant](https://docs.cube.dev/recipes/configuration/multiple-sources-same-schema.md): Route each tenant to its own physical database while reusing one data model by combining context IDs with a dynamic driver factory. - [Using SSL connections to a data source](https://docs.cube.dev/recipes/configuration/using-ssl-connections-to-data-source.md): Enable TLS to upstream databases from Cube and, when required, inject custom CA bundles, client certificates, and private keys. - [Retrieving numeric values on the front-end](https://docs.cube.dev/recipes/core-data-api/cast-numerics.md): Recipe for coercing REST (JSON) numeric strings into JavaScript numbers on the client, including precision pitfalls and when casting is unsafe. - [Using cloud groups and user attributes with Core Data APIs](https://docs.cube.dev/recipes/core-data-api/cloud-groups-and-user-attributes.md): Pass Cube Cloud groups and user attributes via JWT when querying Core Data APIs directly, so data access policies work seamlessly. - [Drilldowns](https://docs.cube.dev/recipes/core-data-api/drilldowns.md): Configure measure drill members in the data model and invoke `ResultSet.drillDown()` to fetch detail rows behind an aggregate. - [Getting unique values for a field](https://docs.cube.dev/recipes/core-data-api/getting-unique-values-for-a-field.md): Recipe for powering filter dropdowns by querying distinct dimension values from Cube’s data APIs on a users-by-city example. - [Implementing pagination](https://docs.cube.dev/recipes/core-data-api/pagination.md): Recipe for paged tables over Cube queries using `limit`, `offset`, and deterministic ordering on a sample orders model. - [Real-Time data fetch in the REST (JSON) API](https://docs.cube.dev/recipes/core-data-api/real-time-data-fetch.md): Recipe for live-updating dashboards using the REST (JSON) API with WebSocket transport and `@cubejs-client` subscriptions. - [Implementing custom sorting](https://docs.cube.dev/recipes/core-data-api/sorting.md): In this recipe, you will learn how to sort the result set of a query by your custom criteria. - [Daily, Weekly, Monthly Active Users (DAU, WAU, MAU)](https://docs.cube.dev/recipes/data-modeling/active-users.md): We want to know the customer engagement of our store. To do this, we need to use an Active Users metric. - [Implementing retention analysis & cohorts](https://docs.cube.dev/recipes/data-modeling/cohort-retention.md): This is an advanced topic that assumes good, pre-existing knowledge of SQL and Cube. - [Implementing custom calendars](https://docs.cube.dev/recipes/data-modeling/custom-calendar.md): Map fact tables to irregular retail or fiscal calendars—illustrated with the 4-5-4 pattern—using dedicated calendar cubes and proxy dimensions. - [Implementing custom time dimension granularities](https://docs.cube.dev/recipes/data-modeling/custom-granularity.md): This recipe shows examples of commonly used custom granularities. - [Custom ordering for categorical values](https://docs.cube.dev/recipes/data-modeling/custom-order.md): This recipe shows how to define a custom sort order for dimension values that don't follow alphabetical or numeric ordering. - [Using Cube with dbt](https://docs.cube.dev/recipes/data-modeling/dbt.md): Layer Cube cubes and views on dbt-built warehouse models, aligning documentation patterns with dimensions, measures, joins, and downstream APIs. - [Using dynamic union tables](https://docs.cube.dev/recipes/data-modeling/dynamic-union-tables.md): Sometimes, you may have a lot of tables in a database, which actually relate to the same entity. - [Implementing Entity-Attribute-Value Model (EAV)](https://docs.cube.dev/recipes/data-modeling/entity-attribute-value.md): Shape sparse entity-attribute-value warehouse tables into queryable dimensions and joins while preserving flexibility across entities. - [Implementing event analytics](https://docs.cube.dev/recipes/data-modeling/event-analytics.md): Turn raw clickstream events into session definitions and metrics you control, using SQL-based patterns that work across common event pipelines. - [Calculating filtered aggregates](https://docs.cube.dev/recipes/data-modeling/filtered-aggregates.md): Model cross-cube filters so measures aggregate facts in one entity while respecting dimensions and time bounds from related cubes. - [Calculating nested aggregates](https://docs.cube.dev/recipes/data-modeling/nested-aggregates.md): Express aggregates-of-aggregates—such as a median of per-group sums—by splitting inner and outer rollups across joined cubes and subquery dimensions. - [Passing dynamic parameters in a query](https://docs.cube.dev/recipes/data-modeling/passing-dynamic-parameters-in-a-query.md): In some cases we may want to let a user select a filter value and be able to use that value in calculations without filtering the entire query. - [Calculating averages and percentiles](https://docs.cube.dev/recipes/data-modeling/percentiles.md): Learn how to model and query percentile-based metrics alongside averages so skewed numeric distributions are represented accurately in Cube. - [Calculating period-over-period changes](https://docs.cube.dev/recipes/data-modeling/period-over-period.md): Often, there's a need to calculate a period-over-period change in a metric, e.g., week-over-week or month-over-month growth of clicks, orders, revenue, etc. - [Polymorphic cubes](https://docs.cube.dev/recipes/data-modeling/polymorphic-cubes.md): Models one shared fact or dimension table that represents multiple entity types by extending a base cube into type-specific cubes with correct joins and logic. - [Calculating share of total](https://docs.cube.dev/recipes/data-modeling/share-of-total.md): Compute each dimension member's contribution to the grand total—or to a fixed subtotal—using calculated fields or multi-stage measures. - [Implementing data snapshots](https://docs.cube.dev/recipes/data-modeling/snapshots.md): Build point-in-time snapshots from change-history data so you can report the latest status of an entity as of any date. - [Working around string time dimensions](https://docs.cube.dev/recipes/data-modeling/string-time-dimensions.md): Cube always expects a timestamp with timezone (or compatible type) as an input to the time dimension. - [Cube style guide](https://docs.cube.dev/recipes/data-modeling/style-guide.md): This style guide includes best practices on data modeling in Cube. - [Generating the data model dynamically](https://docs.cube.dev/recipes/data-modeling/using-dynamic-measures.md): Generate measures programmatically from changing reference data so distribution and percentage metrics stay in sync without hand-editing each value. - [Recipes Home](https://docs.cube.dev/recipes/index.md): Step-by-step tutorials and best practices for getting the most out of Cube. - [Disabling pre-aggregations](https://docs.cube.dev/recipes/pre-aggregations/disabling-pre-aggregations.md): We want to disable pre-aggregations unless some condition is fulfilled, e.g., unless the deployment is running in a production environment. - [Incrementally building pre-aggregations for a date range](https://docs.cube.dev/recipes/pre-aggregations/incrementally-building-pre-aggregations-for-a-date-range.md): How to rebuild only the time-bounded partitions you need instead of refreshing an entire multi-year partitioned rollup. - [Joining data from multiple data sources](https://docs.cube.dev/recipes/pre-aggregations/joining-multiple-data-sources.md): Cross-database rollup joins that relate entities living in different warehouses while keeping aggregation performant. - [Joining pre-aggregations with different refresh cadences](https://docs.cube.dev/recipes/pre-aggregations/mixed-refresh-cadences-rollup-join.md): Use a rollup join to combine a heavy, slowly-refreshed fact pre-aggregation with a lightweight, frequently-refreshed lookup pre-aggregation so derived metrics stay fresh without rebuilding the full fact table. - [Accelerating non-additive measures](https://docs.cube.dev/recipes/pre-aggregations/non-additivity.md): Modeling techniques so averages, distinct counts, and similar non-additive measures still benefit from pre-aggregation acceleration. - [Refreshing select partitions](https://docs.cube.dev/recipes/pre-aggregations/refreshing-select-partitions.md): Partition-level refresh patterns using refresh_key and FILTER_PARAMS when dimension values change long after the fact. - [Using `original_sql` and `rollup` pre-aggregations effectively](https://docs.cube.dev/recipes/pre-aggregations/using-originalsql-and-rollups-effectively.md): Recipe for materializing expensive cube SQL once with original_sql, then reusing it across rollup pre-aggregations and ad hoc queries. - [Configuration options](https://docs.cube.dev/reference/configuration/config.md): Following configuration options can be defined either using Python, in a cube.py file, or using JavaScript, in a cube.js file. - [Environment variables](https://docs.cube.dev/reference/configuration/environment-variables.md): To see a complete list of environment variables for a specific data source, please check the relevant page on Connecting to Data Sources. - [Control Plane API](https://docs.cube.dev/reference/control-plane-api.md): REST surface for automating Cube Cloud deployments, environments, JWT issuance, and audit log export. - [Cross-view filtering](https://docs.cube.dev/reference/core-data-apis/dax-api/cross-view-filter.md): Enable cross-view filtering in the DAX API to build dashboards that span multiple views in Power BI. - [DAX API](https://docs.cube.dev/reference/core-data-apis/dax-api/index.md): Connect Microsoft Power BI to Cube natively using the DAX API for superior feature support over the SQL API. - [DAX API reference](https://docs.cube.dev/reference/core-data-apis/dax-api/reference.md): The DAX API supports the following functions. - [GraphQL API](https://docs.cube.dev/reference/core-data-apis/graphql-api/index.md): Query Cube over HTTP using GraphQL for embedded analytics and front-end data applications. - [GraphQL API reference](https://docs.cube.dev/reference/core-data-apis/graphql-api/reference.md): GraphQL API supports the following requests and parameters. - [Core Data APIs](https://docs.cube.dev/reference/core-data-apis/index.md): Query the Cube semantic layer using SQL, DAX, REST (JSON), or GraphQL protocols depending on your application needs. - [Querying data APIs](https://docs.cube.dev/reference/core-data-apis/queries.md): Cross-cutting query behavior in Cube—default ordering and limits, query kinds, and how REST (JSON), GraphQL, and SQL APIs interpret them. - [REST (JSON) API](https://docs.cube.dev/reference/core-data-apis/rest-api/index.md): Deliver data from Cube over HTTP to front-end apps, notebooks, low-code tools, and automated jobs. - [Query format in the REST (JSON) API](https://docs.cube.dev/reference/core-data-apis/rest-api/query-format.md): Field-by-field guide to the REST (JSON) API `/load` query JSON, including members, filters, time dimensions, limits, totals, and data blending arrays. - [REST (JSON) API reference](https://docs.cube.dev/reference/core-data-apis/rest-api/reference.md): The REST (JSON) API provides the following endpoints. - [Cube Core](https://docs.cube.dev/reference/core-data-apis/sql-api/index.md): Connect any Postgres-compatible client or BI tool to Cube using the Postgres-protocol SQL API. - [Joins in the SQL API](https://docs.cube.dev/reference/core-data-apis/sql-api/joins.md): The best practice is to use views to specify explicit join paths for SQL API queries. - [Query format in the SQL API](https://docs.cube.dev/reference/core-data-apis/sql-api/query-format.md): SQL API runs queries in the Postgres dialect that can reference those tables and columns. - [SQL API reference](https://docs.cube.dev/reference/core-data-apis/sql-api/reference.md): SQL API supports the following commands as well as functions and operators. - [Authentication and Authorization](https://docs.cube.dev/reference/core-data-apis/sql-api/security.md): Harden the SQL API with `checkSqlAuth`, per-user passwords, security-context switching, and row-level enforcement hooks. - [Context variables](https://docs.cube.dev/reference/data-modeling/context-variables.md): Context variables like CUBE, FILTER_PARAMS, SQL_UTILS, and COMPILE_CONTEXT are available within cube definitions for dynamic SQL and model generation. - [Cubes](https://docs.cube.dev/reference/data-modeling/cube.md): Cubes represent tables of data. Each cube contains measures, dimensions, joins, pre-aggregations, and access policies. - [`cube` package](https://docs.cube.dev/reference/data-modeling/cube-package.md): The cube Python package provides tools for setting configuration options and the Jinja template context for YAML data models. - [`cube_dbt` package](https://docs.cube.dev/reference/data-modeling/cube_dbt.md): cube_dbt is a Python package for loading dbt project metadata and generating Cube data models from dbt models. - [Access policies](https://docs.cube.dev/reference/data-modeling/data-access-policies.md): Access policies control row-level and member-level security on cubes and views, restricting what data users can see. - [Dimensions](https://docs.cube.dev/reference/data-modeling/dimensions.md): Dimensions are attributes related to measures, such as country, age, or occupation. They support various types, formatting, and hierarchy membership. - [Hierarchies](https://docs.cube.dev/reference/data-modeling/hierarchies.md): Hierarchies group dimensions into levels of granularity, allowing users to drill down or roll up for analysis. - [Joins](https://docs.cube.dev/reference/data-modeling/joins.md): Joins define relationships between cubes, allowing you to access and compare members from multiple cubes at the same time. - [`lkml2cube` package](https://docs.cube.dev/reference/data-modeling/lkml2cube.md): lkml2cube is a command-line tool for converting LookML models into Cube data models during a Looker-to-Cube migration. - [Measures](https://docs.cube.dev/reference/data-modeling/measures.md): Measures are aggregations over columns in your database table, supporting types like count, sum, avg, rolling windows, and more. - [Pre-aggregations](https://docs.cube.dev/reference/data-modeling/pre-aggregations.md): Pre-aggregations are materialized summaries of data that accelerate query performance by pre-computing results. - [Segments](https://docs.cube.dev/reference/data-modeling/segments.md): Segments are predefined, reusable filters that package common SQL predicates for use in queries and tooling. - [Views](https://docs.cube.dev/reference/data-modeling/view.md): Views are curated compositions of cube members that simplify consumption and clarify join paths for downstream tools. - [View groups](https://docs.cube.dev/reference/data-modeling/view-group.md): View groups organize views into named collections, making it easier for data consumers to navigate and discover related views. - [Chat API](https://docs.cube.dev/reference/embed-apis/chat-api.md): The Chat API enables real-time conversations with AI agents for analytics and data exploration. - [Generate Session](https://docs.cube.dev/reference/embed-apis/generate-session.md): HTTP reference for minting short-lived embed sessions that authorize external viewers under signed embedding without sharing API keys. - [Embed APIs](https://docs.cube.dev/reference/embed-apis/index.md): Integrate Cube analytics into your applications using the Chat API and session-based secure embedding. - [Angular](https://docs.cube.dev/reference/javascript-sdk/angular.md): Cube is visualization-agnostic, so you can build any user interface for your application. - [React](https://docs.cube.dev/reference/javascript-sdk/react.md): Cube is visualization-agnostic, so you can build any user interface for your application. - [`@cubejs-client/core`](https://docs.cube.dev/reference/javascript-sdk/reference/cubejs-client-core.md): Vanilla JavaScript client for Cube. - [`@cubejs-client/ngx`](https://docs.cube.dev/reference/javascript-sdk/reference/cubejs-client-ngx.md): @cubejs-client/ngx provides Angular Module for easy integration Cube into an Angular app. - [`@cubejs-client/react`](https://docs.cube.dev/reference/javascript-sdk/reference/cubejs-client-react.md): @cubejs-client/react provides React Components for easy Cube integration in a React app. - [`@cubejs-client/vue3`](https://docs.cube.dev/reference/javascript-sdk/reference/cubejs-client-vue.md): @cubejs-client/vue3 provides Vue Components to easily integrate Cube within a Vue.js app. - [`@cubejs-client/ws-transport`](https://docs.cube.dev/reference/javascript-sdk/reference/cubejs-client-ws-transport.md): WebSocket transport for Cube client - [Vue](https://docs.cube.dev/reference/javascript-sdk/vue.md): Cube is visualization-agnostic, so you can build any user interface for your application. - [Integration with Apache Airflow](https://docs.cube.dev/reference/orchestration-api/airflow.md): Pair Airflow (including Astro) with Cube using `airflow-provider-cube` operators for loads, pre-aggregations, and orchestration triggers. - [Integration with Dagster](https://docs.cube.dev/reference/orchestration-api/dagster.md): Dagster is a popular open-source data pipeline orchestrator. Dagster Cloud is a fully managed service for Dagster. - [Orchestration API](https://docs.cube.dev/reference/orchestration-api/index.md): Trigger pre-aggregation refreshes from Airflow, Dagster, or Prefect instead of relying on Cube's scheduled refresh. - [Integration with Prefect](https://docs.cube.dev/reference/orchestration-api/prefect.md): Prefect is a popular open-source orchestrator for data-intensive workflows. Prefect Cloud is a fully managed service for Prefect. ## OpenAPI Specs - [openapi](https://docs.cube.dev/api-reference/openapi.json)