Skip to main content
Cube exposes three HTTP API families, each for a different job and with slightly different authentication: The exact header for each is shown above. The Platform and SCIM schemes are detailed on the Authentication page; the Core Data and AI headers are also documented on their own reference pages.

Available endpoints

Each API family has its own base URL — copy the exact host from Cube Cloud where noted. Only HTTPS is accepted, and every request must be authenticated (see Authentication).

Core Data API

Base URL — your deployment’s data API host (the /cubejs-api base path is configurable):

AI API

Base URL — your agent’s Chat API URL (copy it from Admin → Agents → Chat API URL):

Platform API

Base URL — your Cube Cloud tenant host under /api (endpoints live under /api/v1/… for REST management and /api/scim/v2/… for SCIM 2.0 provisioning):
| Deployments | /v1/deployments | v1 | | Environments | /v1/deployments/{deploymentId}/environments | v1 | | Folders | /v1/deployments/{deploymentId}/folders | v1 | | Reports | /v1/deployments/{deploymentId}/reports | v1 | | Workbooks | /v1/deployments/{deploymentId}/workbooks | v1 | | Notifications | /v1/deployments/{deploymentId}/notifications | v1 | | Workspace | /v1/deployments/{deploymentId} | v1 | | User Attributes | /v1/user-attributes | v1 | | App Theme | /v1/app-config | v1 | | Embed | /v1/embed | v1 | | Embed Tenants | /v1/embed-tenants/{embedTenantName} | v1 | | Dbt Sync | /v1/deployments/{deploymentId}/dbt-sync | v1 | | Env Variables | /v1/deployments/{deploymentId}/env-vars | v1 | | OAuth Integrations | /v1/oauth-integrations | v1 | | OIDC Token Configs | /v1/oidc-token-configs | v1 | | Regions | /v1/regions | v1 | | Tenant Settings | /v1/tenant/settings | v1 | | User Attribute Values | /v1/user-attribute-values | v1 | | User OAuth Tokens | /v1/user-oauth-tokens | v1 | | Users Admin | /v1/users | v1 | | Users (SCIM) | /scim/v2/Users | SCIM 2.0 | | Groups (SCIM) | /scim/v2/Groups | SCIM 2.0 |

Client libraries

Core Data API

Query the Core Data API from JavaScript or TypeScript with Cube’s JS client, @cubejs-client/core, which also ships React, Vue, and Angular bindings and a WebSocket transport for real-time updates. See the JavaScript SDK reference for full usage.

Platform API

The recommended way to call the Platform API from JavaScript or TypeScript is the official client, @cube-dev/platform-client. It wraps the OpenAPI spec on this site with end-to-end types for every endpoint, request, and response, plus optional React Query bindings.
Create a client with your tenant’s base URL and an auth header (see Authentication), then call any endpoint through the fully-typed fetchClient:

React Query bindings

The @cube-dev/platform-client/react-query entry point adds a provider and typed hooks built on @tanstack/react-query (a peer dependency alongside react):
Schema types are exported as PlatformApiSchemas (e.g. PlatformApiSchemas['Deployment']). See the package CHANGELOG for release notes and breaking changes.