diff --git a/docs-mintlify/access-security/access-control/data-access-policies.mdx b/docs-mintlify/access-security/access-control/data-access-policies.mdx
deleted file mode 100644
index db04ade6b445b..0000000000000
--- a/docs-mintlify/access-security/access-control/data-access-policies.mdx
+++ /dev/null
@@ -1,573 +0,0 @@
----
-title: Access policies
-description: "Explains how to declare unified access policies in your data model to govern member visibility, row filters, and masking across user groups."
----
-
-# Access policies
-
-Access policies provide a holistic mechanism to manage [member-level](#member-level-access),
-[row-level](#row-level-access) security, and [data masking](#data-masking) for
-different user groups. You can define access control rules in data model files,
-allowing for an organized and maintainable approach to security.
-
-## Policies
-
-You can define policies that target specific groups and contain member-level and (or)
-row-level security rules:
-
-
-
-```yaml title="YAML"
-cubes:
- - name: orders
- # ...
-
- access_policy:
- # For the `manager` group,
- # allow access to all members
- # but filter rows by the user's country
- - group: manager
- member_level:
- includes: "*"
- row_level:
- filters:
- - member: country
- operator: equals
- values: [ "{ userAttributes.country }" ]
-```
-
-```javascript title="JavaScript"
-cube(`orders`, {
- // ...
-
- access_policy: [
- {
- // For all groups, restrict access entirely
- group: `*`,
- member_level: {
- includes: []
- }
- },
- {
- // For the `manager` group,
- // allow access to all members
- // but filter rows by the user's country
- group: `manager`,
- member_level: {
- includes: `*`
- },
- row_level: {
- filters: [
- {
- member: `country`,
- operator: `equals`,
- values: [ userAttributes.country ]
- }
- ]
- }
- }
- ]
-})
-```
-
-
-
-While you can define access policies on both cubes and views, it is more common to define them on views.
-
-For more details on available parameters, check out the [access policies reference][ref-ref-dap].
-
-## Policy evaluation
-
-When processing a request, Cube will evaluate the access policies and combine them
-with relevant custom security rules, e.g., [`public` parameters][ref-mls-public] for member-level security
-and `query_rewrite` filters for row-level security.
-
-If multiple access policies apply to a request, they are _combined together_
-using the _OR_ semantics. For example, if a user has two groups with different
-policies, the user will get the union of the permissions in these policies.
-
-### Member-level access
-
-Member-level security rules in access policies are _combined together_
-with `public` parameters of cube and view members using the _AND_ semantics.
-Both will apply to the request.
-
-_When querying a view,_ member-level security rules defined in the view are _**not** combined together_
-with member-level security rules defined in relevant cubes.
-**Only the ones from the view will apply to the request.**
-
-
-
-This is consistent with how column-level security works in SQL databases. If you have
-a view that exposes a subset of columns from a table, it doesnt matter if the
-columns in the table are public or not, the view will expose them anyway.
-
-
-
-### Row-level access
-
-Row-level filters in access policies are _combined together_ with filters defined
-using the `query_rewrite` configuration option.
-Both will apply to the request.
-
-_When querying a view,_ row-level filters defined in the view are _combined together_
-with row-level filters defined in relevant cubes. Both will apply to the request.
-
-
-
-This is consistent with how row-level security works in SQL databases. If you have
-a view that exposes a subset of rows from another view, the result set will be
-filtered by the row-level security rules of both views.
-
-
-
-### Data masking
-
-With data masking, you can return masked values for restricted members instead
-of denying access entirely. Users who don't have full access to a member will
-see a transformed value (e.g., `***`, `-1`, `NULL`) rather than receiving an error.
-
-To use data masking, define a [`mask` parameter][ref-ref-mask-dim] on dimensions
-or measures, and add `member_masking` to your access policy alongside `member_level`.
-Members in `member_level` get real values; members not in `member_level` but in
-`member_masking` get masked values; members in neither are denied.
-
-
-
-```yaml title="YAML"
-cubes:
- - name: orders
- # ...
-
- dimensions:
- - name: status
- sql: status
- type: string
-
- - name: secret_code
- sql: secret_code
- type: string
- mask:
- sql: "CONCAT('***', RIGHT({CUBE}.secret_code, 3))"
-
- - name: revenue
- sql: revenue
- type: number
- mask: -1
-
- measures:
- - name: count
- type: count
- mask: 0
-
- access_policy:
- - group: manager
- member_level:
- includes:
- - status
- - count
- member_masking:
- includes: "*"
-```
-
-```javascript title="JavaScript"
-cube(`orders`, {
- // ...
-
- dimensions: {
- status: {
- sql: `status`,
- type: `string`
- },
-
- secret_code: {
- sql: `secret_code`,
- type: `string`,
- mask: {
- sql: `CONCAT('***', RIGHT(${CUBE}.secret_code, 3))`
- }
- },
-
- revenue: {
- sql: `revenue`,
- type: `number`,
- mask: -1
- }
- },
-
- measures: {
- count: {
- type: `count`,
- mask: 0
- }
- },
-
- access_policy: [
- {
- group: `manager`,
- member_level: {
- includes: [`status`, `count`]
- },
- member_masking: {
- includes: `*`
- }
- }
- ]
-})
-```
-
-
-
-With this policy, users in the `manager` group will see:
-
-| Member | Value |
-| --- | --- |
-| `status` | Real value (full access via `member_level`) |
-| `count` | Real value (full access via `member_level`) |
-| `secret_code` | Masked via SQL: `***xyz` |
-| `revenue` | Masked: `-1` |
-
-If no `mask` is defined on a member, the default mask value is `NULL`. You can
-customize defaults with the `CUBEJS_ACCESS_POLICY_MASK_STRING`,
-`CUBEJS_ACCESS_POLICY_MASK_NUMBER`, `CUBEJS_ACCESS_POLICY_MASK_BOOLEAN`, and
-`CUBEJS_ACCESS_POLICY_MASK_TIME` environment variables.
-
-
-
-SQL masks (`mask: { sql: "..." }`) on measures are not applied in ungrouped
-queries (e.g., `SELECT *` via the SQL API), because SQL mask expressions
-typically reference columns that are not meaningful in a per-row context.
-Static masks (`mask: -1`, `mask: 0`) are applied in all cases.
-
-If you need to mask a measure in ungrouped queries with a dynamic expression,
-define it as a dimension with an SQL mask instead, and reference that masked
-dimension in your query.
-
-
-
-_When querying a view,_ data masking follows the same pattern as row-level
-security: masking rules from both the view and relevant cubes are applied.
-
-For more details on available parameters, check out the
-[`member_masking` reference][ref-ref-dap-masking].
-
-## Common patterns
-
-### Restrict access to specific groups
-
-To restrict access to a view to only specific groups, define access policies for those groups. Access is automatically denied to all other groups:
-
-
-
-```yaml title="YAML"
-views:
- - name: sensitive_data_view
- # ...
-
- access_policy:
- # Allow access only to the `analysts` group
- - group: analysts
- member_level:
- includes: "*"
-```
-
-```javascript title="JavaScript"
-view(`sensitive_data_view`, {
- // ...
-
- access_policy: [
- {
- // Allow access only to the `analysts` group
- group: `analysts`,
- member_level: {
- includes: `*`
- }
- }
- ]
-})
-```
-
-
-
-You can also use the `groups` parameter (plural) to apply the same policy to multiple groups at once:
-
-
-
-```yaml title="YAML"
-views:
- - name: sensitive_data_view
- # ...
-
- access_policy:
- # Allow access to multiple groups using groups array
- - groups: [analysts, managers]
- member_level:
- includes: "*"
-```
-
-```javascript title="JavaScript"
-view(`sensitive_data_view`, {
- // ...
-
- access_policy: [
- {
- // Allow access to multiple groups using groups array
- groups: [`analysts`, `managers`],
- member_level: {
- includes: `*`
- }
- }
- ]
-})
-```
-
-
-
-### Filter by user attribute
-
-You can filter data based on user attributes to ensure users only see data they're authorized to access. For example, sales people can see only their own deals, while sales managers can see all deals:
-
-
-
-```yaml title="YAML"
-views:
- - name: deals_view
- # ...
-
- access_policy:
- # Sales people can only see their own deals
- - group: sales
- member_level:
- includes: "*"
- row_level:
- filters:
- - member: sales_person_id
- operator: equals
- values: [ "{ userAttributes.userId }" ]
-
- # Sales managers can see all deals
- - group: sales_manager
- member_level:
- includes: "*"
- # No row-level filters - full access to all rows
-```
-
-```javascript title="JavaScript"
-view(`deals_view`, {
- // ...
-
- access_policy: [
- {
- // Sales people can only see their own deals
- group: `sales`,
- member_level: {
- includes: `*`
- },
- row_level: {
- filters: [
- {
- member: `sales_person_id`,
- operator: `equals`,
- values: [ userAttributes.userId ]
- }
- ]
- }
- },
- {
- // Sales managers can see all deals
- group: `sales_manager`,
- member_level: {
- includes: `*`
- }
- // No row-level filters - full access to all rows
- }
- ]
-})
-```
-
-
-
-### Mask sensitive members
-
-You can mask sensitive members for most users while granting full access to
-privileged groups:
-
-
-
-```yaml title="YAML"
-views:
- - name: orders_view
- # ...
-
- access_policy:
- # Default: all members masked
- - group: "*"
- member_level:
- includes: []
- member_masking:
- includes: "*"
-
- # Admins: full access
- - group: admin
- member_level:
- includes: "*"
-```
-
-```javascript title="JavaScript"
-view(`orders_view`, {
- // ...
-
- access_policy: [
- {
- // Default: all members masked
- group: `*`,
- member_level: {
- includes: []
- },
- member_masking: {
- includes: `*`
- }
- },
- {
- // Admins: full access
- group: `admin`,
- member_level: {
- includes: `*`
- }
- }
- ]
-})
-```
-
-
-
-### Mandatory filters
-
-You can apply mandatory row-level filters to specific groups to ensure they only see data matching certain criteria:
-
-
-
-```yaml title="YAML"
-views:
- - name: country_data_view
- # ...
-
- access_policy:
- # Allow access only to the `sales` and `marketing` groups with country filtering
- - groups: [sales, marketing]
- member_level:
- includes: "*"
- row_level:
- filters:
- - member: users_country
- operator: equals
- values: ["Brasil"]
-```
-
-```javascript title="JavaScript"
-view(`country_data_view`, {
- // ...
-
- access_policy: [
- {
- // Allow access only to the `sales` and `marketing` groups with country filtering
- groups: [`sales`, `marketing`],
- member_level: {
- includes: `*`
- },
- row_level: {
- filters: [
- {
- member: `users_country`,
- operator: `equals`,
- values: [`Brasil`]
- }
- ]
- }
- }
- ]
-})
-```
-
-
-
-## Custom mapping
-
-Cube cloud platform automatically maps authenticated users to groups for access policies.
-If you are using Cube Core or authenticating against [Core Data APIs][ref-core-data-apis] directly, you might need to map the security context to groups manually.
-
-
-
-```python title="Python"
-# cube.py
-from cube import config
-
-@config('context_to_groups')
-def context_to_groups(ctx: dict) -> list[str]:
- return ctx['securityContext'].get('groups', ['default'])
-```
-
-```javascript title="JavaScript"
-// cube.js
-module.exports = {
- contextToGroups: ({ securityContext }) => {
- return securityContext.groups || ['default']
- }
-}
-```
-
-
-
-A user can have more than one group.
-
-## Using securityContext
-
-The [`userAttributes`][ref-sec-ctx] object is only available in Cube Cloud platform. If you are using Cube Core or authenticating against [Core Data APIs][ref-core-data-apis] directly, you won't have access to `userAttributes`. Instead, you need to use `securityContext` directly when referencing user attributes in access policies (e.g., in `row_level` filters or `conditions`). For example, use `securityContext.userId` instead of `userAttributes.userId`.
-
-
-
-```yaml title="YAML"
-cubes:
- - name: orders
- # ...
-
- access_policy:
- - group: manager
- row_level:
- filters:
- - member: country
- operator: equals
- values: [ "{ securityContext.country }" ]
-```
-
-```javascript title="JavaScript"
-cube(`orders`, {
- // ...
-
- access_policy: [
- {
- group: `manager`,
- row_level: {
- filters: [
- {
- member: `country`,
- operator: `equals`,
- values: [ securityContext.country ]
- }
- ]
- }
- }
- ]
-})
-```
-
-
-
-
-[ref-mls-public]: /access-security/access-control/member-level-security#managing-member-level-access
-[ref-sec-ctx]: /access-security/access-control/context
-[ref-ref-dap]: /reference/data-modeling/data-access-policies
-[ref-ref-dap-role]: /reference/data-modeling/data-access-policies#role
-[ref-ref-dap-masking]: /reference/data-modeling/data-access-policies#member-masking
-[ref-ref-mask-dim]: /reference/data-modeling/dimensions#mask
-[ref-core-data-apis]: /reference/core-data-apis
\ No newline at end of file
diff --git a/docs-mintlify/access-security/authentication/identity-provider.mdx b/docs-mintlify/access-security/authentication/identity-provider.mdx
deleted file mode 100644
index db91b2f2b3406..0000000000000
--- a/docs-mintlify/access-security/authentication/identity-provider.mdx
+++ /dev/null
@@ -1,26 +0,0 @@
----
-title: Identity provider
-description: "Some visualization tools (e.g., [Cube Cloud for Sheets][ref-cube-cloud-sheets]) implement an OAuth 2.0 flow to authenticate users."
----
-
-# Identity provider
-
-Some visualization tools (e.g., [Cube Cloud for Sheets][ref-cube-cloud-sheets]) implement
-an OAuth 2.0 flow to authenticate users.
-
-
-
-Available on [Premium and above plans](https://cube.dev/pricing).
-
-
-
-During this flow, users are redirected to a login page of an identity provider (e.g., Google)
-where they enter their credentials. Then, the identity provider passes the user identity
-information to Cube Cloud.
-
-## Configuration
-
-This method does not require any configuration.
-
-
-[ref-cube-cloud-sheets]: /docs/integrations/google-sheets
\ No newline at end of file
diff --git a/docs-mintlify/access-security/authentication/index.mdx b/docs-mintlify/access-security/authentication/index.mdx
deleted file mode 100644
index dc3acd8b10e4f..0000000000000
--- a/docs-mintlify/access-security/authentication/index.mdx
+++ /dev/null
@@ -1,40 +0,0 @@
----
-description: Explore supported authentication methods for Cube APIs, including passwords, Kerberos, NTLM, identity providers, and JWT.
----
-
- Authentication methods
-
-Cube supports the following methods to authenticate requests to [APIs & integrations][ref-apis].
-Usually, an API supports authentication via [one of these methods][ref-apis-methods]:
-
-* [User name and password][ref-name-password] (e.g., used by the [SQL API][ref-sql-api]).
-* [Kerberos][ref-kerberos] and [NTLM][ref-ntlm] (e.g., used by the [DAX API][ref-dax-api]).
-* [Identity provider][ref-identity-provider] (e.g., used by the [Cube Cloud for Sheets][ref-cube-cloud-sheets]).
-* [JSON Web Token][ref-jwt] (e.g., used by the [REST API][ref-rest-api]).
-
-## Authentication flow
-
-Regardless of the method, the authentication flow includes the following steps:
-
-* User identity information (e.g., password or access token) is passed to Cube.
-* Cube validates the identity information.
-* Cube associates the API request with a [security context][ref-sec-ctx].
-* The security context is used to configure [member-level security][ref-mls]
-and [row-level security][ref-rls] as well as set [access policies][ref-dap].
-
-
-[ref-apis]: /reference
-[ref-apis-methods]: /reference#authentication-methods
-[ref-rest-api]: /reference/rest-api
-[ref-sql-api]: /reference/sql-api
-[ref-dax-api]: /reference/dax-api
-[ref-cube-cloud-sheets]: /docs/integrations/google-sheets
-[ref-name-password]: /access-security/authentication/name-password
-[ref-kerberos]: /access-security/authentication/kerberos
-[ref-ntlm]: /access-security/authentication/ntlm
-[ref-identity-provider]: /access-security/authentication/identity-provider
-[ref-jwt]: /access-security/authentication/jwt
-[ref-sec-ctx]: /access-security/access-control/context
-[ref-dap]: /access-security/access-control/data-access-policies
-[ref-mls]: /access-security/access-control/member-level-security
-[ref-rls]: /access-security/access-control/row-level-security
\ No newline at end of file
diff --git a/docs-mintlify/access-security/authentication/name-password.mdx b/docs-mintlify/access-security/authentication/name-password.mdx
deleted file mode 100644
index 57e03d5a062e8..0000000000000
--- a/docs-mintlify/access-security/authentication/name-password.mdx
+++ /dev/null
@@ -1,23 +0,0 @@
----
-title: User name and password
-description: Some visualization tools (e.g., BI tools) can pass user name and, sometimes, password to Cube.
----
-
-# User name and password
-
-Some visualization tools (e.g., BI tools) can pass user name and, sometimes, password
-to Cube.
-
-## Configuration
-
-By default, [`CUBEJS_SQL_USER`](/reference/configuration/environment-variables#cubejs_sql_user) and [`CUBEJS_SQL_PASSWORD`](/reference/configuration/environment-variables#cubejs_sql_password) environment variables are used
-to verify the credentials. You can also customize the authentication by using the
-[`check_sql_auth` configuration option][ref-config-check-sql-auth].
-
-Also, the [`CUBEJS_SQL_SUPER_USER`](/reference/configuration/environment-variables#cubejs_sql_super_user) environment variable or the [`can_switch_sql_user`
-configuration option][ref-config-can-switch-sql-user] can be used to ensure that the
-user name can be changed after the initial authentication.
-
-
-[ref-config-check-sql-auth]: /reference/configuration/config#check_sql_auth
-[ref-config-can-switch-sql-user]: /reference/configuration/config#can_switch_sql_user
\ No newline at end of file
diff --git a/docs-mintlify/access-security/sso/google-workspace.mdx b/docs-mintlify/access-security/sso/google-workspace.mdx
deleted file mode 100644
index 82eb8105a730f..0000000000000
--- a/docs-mintlify/access-security/sso/google-workspace.mdx
+++ /dev/null
@@ -1,117 +0,0 @@
----
-title: Google Workspace
-description: Enterprise guide for configuring Google Workspace SAML so users can sign into Cube Cloud with SSO.
----
-
-# Google Workspace
-
-Cube Cloud supports authenticating users through Google Workspace, which is
-useful when you want your users to access Cube Cloud using single sign on. This
-guide will walk you through the steps of configuring SAML authentication in Cube
-Cloud with Google Workspace. You **must** be a super administrator in your
-Google Workspace to access the Admin Console and create a SAML integration.
-
-
-
-Available on [Enterprise and above plans](https://cube.dev/pricing).
-
-
-
-## Enable SAML in Cube Cloud
-
-First, we'll enable SAML authentication in Cube Cloud. To do this, log in to
-Cube Cloud and
-
-1. Click your username from the top-right corner, then click **Team &
- Security**.
-
-2. On the **Authentication & SSO** tab, ensure **SAML** is
- enabled:
-
-
-
-
-
-Take note of the **Single Sign On URL** and **Service Provider Entity
-ID** values here, as we will need them in the next step when we configure
-the SAML integration in Google Workspace.
-
-## Create a SAML Integration in Google Workspace
-
-Next, we'll create a [SAML app integration for Cube Cloud in Google
-Workspace][google-docs-create-saml-app].
-
-1. Log in to [admin.google.com](https://admin.google.com) as an administrator,
- then navigate to
-
- **Apps → Web and Mobile Apps** from the left sidebar.
-
-2. Click **Add App**, then click **Add custom SAML app**:
-
-
-
-
-
-3. Enter a name for your application and click **Next**. You can
- optionally add a description and upload a logo for the application, but this
- is not required. Click **Continue** to go to the next screen.
-
-
-
-
-
-4. Take note of the **SSO URL**, **Entity ID** and
- **Certificate** values here, as we will need them when we finalize the
- SAML integration in Cube Cloud. Click **Continue** to go to the next screen.
-
-
-
-
-
-5. Enter the following values for the **Service provider details**
- section and click **Continue**.
-
-| Name | Description |
-| --------- | ------------------------------------------------------------------- |
-| ACS URL | Use the **Single Sign On URL** value from Cube Cloud |
-| Entity ID | Use the **Service Provider Entity ID** value from Cube Cloud |
-
-5. On the final screen, click **Finish**.
-
-6. From the app details page, click **User access** and ensure the app is
- **ON for everyone**:
-
-
-
-
-
-## Enable SAML in Cube Cloud
-
-In this step, we'll finalise the configuration by entering the values from our
-SAML integration in Google into Cube Cloud.
-
-1. From the same **Authentication & SSO > SAML** tab, click the
- **Advanced Settings** tab:
-
-
-
-
-
-2. Enter the following values in the **SAML Settings** section:
-
-| Name | Description |
-| --------------------------- | ------------------------------------------------------------------ |
-| Audience (SP Entity ID) | Delete the prefilled value and leave empty |
-| IdP Issuer (IdP Entity ID) | Use the **Issuer** value from Google Workspace |
-| Identity Provider Login URL | Use the **Sign on URL** value from Google Workspace |
-| Certificate | Use the **Signing Certificate** value from Google Workspace |
-
-3. Scroll down and click **Save SAML Settings** to save the changes.
-
-## Test SAML authentication
-
-To start using SAML authentication, use the
-[single sign-on URL provided by Cube Cloud](#enable-saml-in-cube-cloud)
-(typically `/sso/saml`) to log in to Cube Cloud.
-
-[google-docs-create-saml-app]: https://support.google.com/a/answer/6087519?hl=en
diff --git a/docs-mintlify/access-security/sso/index.mdx b/docs-mintlify/access-security/sso/index.mdx
deleted file mode 100644
index c1a5d1294706c..0000000000000
--- a/docs-mintlify/access-security/sso/index.mdx
+++ /dev/null
@@ -1,52 +0,0 @@
----
-description: "Configure how your team accesses Cube Cloud using passwords, social logins, or SAML-based single sign-on."
----
-
- Authentication & SSO
-
-As an account administrator, you can manage how your team and users access Cube Cloud.
-
-You can authenticate using email and password, a GitHub account, or a Google account.
-Cube Cloud also provides single sign-on (SSO) via identity providers supporting
-[SAML](#saml), e.g., Okta, Google Workspace, Azure AD, etc.
-
-
-
-[SAML](#saml) is available on [Enterprise and above plans](https://cube.dev/pricing).
-
-
-
-
-
-
-
-## Configuration
-
-To manage authentication settings, navigate to **Admin → Settings**
-of your Cube Cloud account, and switch to the **Authentication & SSO** tab.
-
-Use the toggles in **Password**, **Google**, and **GitHub**
-sections to enable or disable these authentication options.
-
-### SAML
-
-Use the toggle in the **SAML** section to enable or disable the authentication
-via an identity provider supporting the [SAML protocol][wiki-saml].
-Once it's enabled, you'll see the **SAML Settings** section directly below.
-
-Check the following guides to get tool-specific instructions on configuration:
-
-
-
-
-
-
-
-
-
-
-[wiki-saml]: https://en.wikipedia.org/wiki/SAML_2.0
-[ref-apis]: /reference
-[ref-dap]: /access-security/access-control/data-access-policies
-[ref-security-context]: /access-security/access-control/context
-[ref-auth-integration]: /access-security/access-control#authentication-integration
\ No newline at end of file
diff --git a/docs-mintlify/access-security/sso/microsoft-entra-id/index.mdx b/docs-mintlify/access-security/sso/microsoft-entra-id/index.mdx
deleted file mode 100644
index a14d33cfb5265..0000000000000
--- a/docs-mintlify/access-security/sso/microsoft-entra-id/index.mdx
+++ /dev/null
@@ -1,26 +0,0 @@
----
-description: Set up single sign-on for Cube Cloud using Microsoft Entra ID with SAML authentication and SCIM provisioning.
----
-
- Microsoft Entra ID
-
-Cube Cloud supports authenticating users through [Microsoft Entra
-ID][ext-ms-entra-id] (formerly Azure Active Directory), which is
-useful when you want your users to access Cube Cloud using single sign-on.
-
-
-
-Available on [Enterprise and above plans](https://cube.dev/pricing).
-
-
-
-## Setup guides
-
-
-
-
-
-
-
-
-[ext-ms-entra-id]: https://www.microsoft.com/en-us/security/business/identity-access/microsoft-entra-id
diff --git a/docs-mintlify/access-security/sso/microsoft-entra-id/saml.mdx b/docs-mintlify/access-security/sso/microsoft-entra-id/saml.mdx
deleted file mode 100644
index 7a49626d1fb8c..0000000000000
--- a/docs-mintlify/access-security/sso/microsoft-entra-id/saml.mdx
+++ /dev/null
@@ -1,118 +0,0 @@
----
-title: SAML authentication with Microsoft Entra ID
-description: Enterprise guide for creating a Microsoft Entra ID enterprise application and completing SAML SSO into Cube.
----
-
-# SAML authentication with Microsoft Entra ID
-
-With SAML (Security Assertion Markup Language) enabled, you can authenticate
-users in Cube through Microsoft Entra ID (formerly Azure Active Directory),
-allowing your team to access Cube using single sign-on.
-
-
-
-Available on [Enterprise and above plans](https://cube.dev/pricing).
-
-
-
-## Prerequisites
-
-Before proceeding, ensure you have the following:
-
-- Admin permissions in Cube.
-- Sufficient permissions in Microsoft Entra to create and configure
- Enterprise Applications.
-
-## Enable SAML in Cube
-
-First, enable SAML authentication in Cube:
-
-1. In Cube, navigate to **Admin → Settings**.
-2. On the **Authentication & SSO** tab, enable the **SAML**
- toggle.
-3. Take note of the **Single Sign-On URL** and **Audience**
- values — you'll need them when configuring the Enterprise Application
- in Entra.
-
-## Create an Enterprise Application in Entra
-
-1. Sign in to the [Microsoft Entra admin center](https://entra.microsoft.com).
-2. Go to [Enterprise Applications](https://portal.azure.com/#view/Microsoft_AAD_IAM/StartboardApplicationsMenuBlade/~/AppAppsPreview)
- and click **New application**.
-3. Select **Create your own application**.
-4. Give it a name and choose a **non-gallery application**, then click
- **Create**.
-
-## Configure SAML in Entra
-
-1. In your new Enterprise Application, go to the **Single sign-on**
- section and select **SAML**.
-2. In the **Basic SAML Configuration** section, enter the following:
- - **Entity ID** — Use the **Single Sign-On URL** value from Cube.
- - **Reply URL** — Use the **Single Sign-On URL** value from Cube.
-3. Go to **Attributes & Claims → Edit → Advanced settings** and
- set the audience claim override to the **Audience** value from Cube.
-4. Go to **SAML Certificates → Edit** and select **Sign SAML
- response and assertion** for the **Signing Option**.
-5. Download the **Federation Metadata XML** file — you'll need it
- in the next step.
-
-## Complete configuration in Cube
-
-Return to the SAML configuration page in Cube and provide the identity
-provider details. You can do this in one of two ways:
-
-**Option A: Upload metadata file**
-
-1. In the **Import IdP Metadata** section, click **Upload
- Metadata File**.
-2. Select the **Federation Metadata XML** file you downloaded from Entra.
- This will automatically populate the **Entity ID / Issuer**,
- **SSO (Sign on) URL**, and **Certificate** fields.
-
-**Option B: Enter details manually**
-
-If you prefer to configure the fields manually, enter the following
-values from the Entra **Single sign-on** page:
-
-- **Entity ID / Issuer** — Use the **Microsoft Entra Identifier**
- value.
-- **SSO (Sign on) URL** — Use the **Login URL** value.
-- **Certificate** — Paste the Base64-encoded certificate from the
- **SAML Certificates** section.
-
-## Configure attribute mappings
-
-To map user attributes from Entra to Cube, configure the claim URIs
-in the SAML settings:
-
-- Enter the claim URI that corresponds to the user's email address in
- the **Email** attribute field. Common values:
- - `http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress`
- - `http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name`
-- To map a role attribute from Entra to an identically-named role
- defined in Cube, add the corresponding claim URI to the
- **Role** field.
-- You can also map the user's display name in the same manner.
-
-
-
-Admin status cannot be set via SSO. To grant admin permissions, update
-the user's role manually in Cube under **Team & Security**.
-
-
-
-## Assign users
-
-Make sure the new Enterprise Application is assigned to the relevant
-users or groups in Entra before testing.
-
-## Test the integration
-
-1. In the Entra **Single sign-on** section, click **Test**
- to verify the SAML integration works for your Cube account.
-2. Alternatively, copy the **Single Sign-On URL** from Cube,
- open it in a new browser tab, and verify you are redirected to
- Entra for authentication and then back to Cube.
-
-[ext-ms-entra-id]: https://www.microsoft.com/en-us/security/business/identity-access/microsoft-entra-id
diff --git a/docs-mintlify/access-security/sso/microsoft-entra-id/scim.mdx b/docs-mintlify/access-security/sso/microsoft-entra-id/scim.mdx
deleted file mode 100644
index 8581377d1dbb6..0000000000000
--- a/docs-mintlify/access-security/sso/microsoft-entra-id/scim.mdx
+++ /dev/null
@@ -1,124 +0,0 @@
----
-title: SCIM provisioning with Microsoft Entra ID
-description: How to enable SCIM in Cube, create an API key for Entra, and keep users and groups in sync with Microsoft Entra ID.
----
-
-# SCIM provisioning with Microsoft Entra ID
-
-With SCIM (System for Cross-domain Identity Management) enabled, you can
-automate user provisioning in Cube and keep user groups synchronized
-with Microsoft Entra ID (formerly Azure Active Directory).
-
-
-
-Available on [Enterprise and above plans](https://cube.dev/pricing).
-
-
-
-## Prerequisites
-
-Before proceeding, ensure you have the following:
-
-- Microsoft Entra SAML authentication already configured. If not, complete
- the [SAML setup][ref-saml] first.
-- Admin permissions in Cube.
-- Sufficient permissions in Microsoft Entra to manage Enterprise Applications.
-
-## Enable SCIM provisioning in Cube
-
-Before configuring SCIM in Microsoft Entra, you need to enable SCIM
-provisioning in Cube:
-
-1. In Cube, navigate to **Admin → Settings**.
-2. In the **SAML** section, enable **SCIM Provisioning**.
-
-## Generate an API key in Cube
-
-To allow Entra ID to communicate with Cube via SCIM, you'll need to
-create a dedicated API key:
-
-1. In Cube, navigate to **Settings → API Keys**.
-2. Create a new API key. Give it a descriptive name such as **Entra SCIM**.
-3. Copy the generated key and store it securely — you'll need it in the
- next step.
-
-## Set up provisioning in Microsoft Entra
-
-This section assumes you already have a Cube Enterprise Application
-in Microsoft Entra. If you haven't created one yet, follow the
-[SAML setup guide][ref-saml] first.
-
-1. Sign in to the [Microsoft Entra admin center](https://entra.microsoft.com).
-2. Go to **Applications → Enterprise Applications** and open your
- Cube application.
-3. Navigate to **Manage → Provisioning**.
-4. Set the **Provisioning Mode** to **Automatic**.
-5. Under **Admin Credentials**, fill in the following:
- - **Tenant URL** — Your Cube deployment URL with `/api/scim/v2`
- appended. For example: `https://your-deployment.cubecloud.dev/api/scim/v2`
- - **Secret Token** — The API key you generated in the previous step.
-6. Click **Test Connection** to verify that Entra ID can reach
- Cube. Proceed once the test is successful.
-
-## Configure attribute mappings
-
-Next, configure which user and group attributes are synchronized with
-Cube:
-
-1. In the **Mappings** section, select the object type you want to
- configure — either users or groups.
-2. Remove all default attribute mappings **except** the following:
- - **For users**: keep `userName`, `displayName` and `active`.
- - **For groups**: keep `displayName` and `members`.
-3. Click **Save**.
-
-
-
-Users provisioned via SCIM will receive the Explorer role.
-To grant admin permissions, update the user's role manually in
-Cube under **Team & Security**.
-
-
-
-## Syncing user attributes
-
-You can sync [user attributes][ref-user-attributes] from Microsoft Entra to
-Cube via SCIM, allowing you to centralize user management in Entra.
-
-### Create a user attribute in Cube
-
-In Cube, navigate to **Admin → Settings → User Attributes** and
-create a new attribute. Take note of the attribute **reference** name — you will
-need it when configuring Entra.
-
-### Create an Entra user attribute
-
-1. In the [Microsoft Entra admin center](https://entra.microsoft.com), navigate
- to **Applications → Enterprise Applications** and open your Cube
- application.
-2. Go to **Manage → Provisioning → Mappings**.
-3. Select the user mapping you want to add the attribute to.
-4. At the bottom of the page, select **Show advanced options**.
-5. Select **Edit attribute list for customappsso**.
-6. Add a new attribute with the following settings:
- - **Name** — The reference of the attribute you created in Cube,
- prefixed with `urn:cube:params:1.0:UserAttribute:`.
- For example, for an attribute with the reference `country`, enter
- `urn:cube:params:1.0:UserAttribute:country`.
- - **Type** — Select the matching type (`string` or `integer`).
-7. Save the changes.
-
-### Create attribute mapping
-
-1. After saving, click **Yes** when prompted.
-2. In the **Attribute Mapping** page, click **Add New Mapping**.
-3. In the **Target attribute** dropdown, select the attribute you created
- in the previous step.
-4. Configure the source mapping to the appropriate Entra field.
-5. Click **OK**, then **Save**.
-
-The next time the Entra application syncs, the attribute values will be
-provisioned as [user attributes][ref-user-attributes] in Cube.
-
-[ref-saml]: /access-security/sso/microsoft-entra-id/saml
-[ref-user-attributes]: /access-security/users-and-permissions/user-attributes
\ No newline at end of file
diff --git a/docs-mintlify/access-security/sso/okta/index.mdx b/docs-mintlify/access-security/sso/okta/index.mdx
deleted file mode 100644
index 9c14bbdd71daf..0000000000000
--- a/docs-mintlify/access-security/sso/okta/index.mdx
+++ /dev/null
@@ -1,26 +0,0 @@
----
-description: Set up single sign-on for Cube Cloud using Okta with SAML authentication and SCIM provisioning.
----
-
- Okta
-
-Cube Cloud supports authenticating users through [Okta][ext-okta],
-which is useful when you want your users to access Cube Cloud using
-single sign-on.
-
-
-
-Available on [Enterprise and above plans](https://cube.dev/pricing).
-
-
-
-## Setup guides
-
-
-
-
-
-
-
-
-[ext-okta]: https://www.okta.com/
diff --git a/docs-mintlify/access-security/sso/okta/saml.mdx b/docs-mintlify/access-security/sso/okta/saml.mdx
deleted file mode 100644
index 39705f5ee1f10..0000000000000
--- a/docs-mintlify/access-security/sso/okta/saml.mdx
+++ /dev/null
@@ -1,99 +0,0 @@
----
-title: SAML authentication with Okta
-description: Enterprise checklist for enabling SAML single sign-on to Cube Cloud using an Okta SAML application.
----
-
-# SAML authentication with Okta
-
-With SAML (Security Assertion Markup Language) enabled, you can authenticate
-users in Cube Cloud through Okta, allowing your team to access Cube Cloud
-using single sign-on.
-
-
-
-Available on [Enterprise and above plans](https://cube.dev/pricing).
-
-
-
-## Prerequisites
-
-Before proceeding, ensure you have the following:
-
-- Admin permissions in Cube Cloud.
-- Account administrator permissions in your Okta organization to access
- the Admin Console and create SAML integrations.
-
-## Enable SAML in Cube Cloud
-
-First, enable SAML authentication in Cube Cloud:
-
-1. In Cube Cloud, navigate to **Admin → Settings**.
-2. On the **Authentication & SSO** tab, enable the **SAML**
- toggle.
-3. Take note of the **Single Sign-On URL** and **Audience**
- values — you'll need them when configuring the SAML integration in Okta.
-
-## Create a SAML integration in Okta
-
-1. Log in to your Okta organization as an administrator, then navigate to
- the Admin Console by clicking **Admin** in the top-right corner.
-2. Click **Applications → Applications** from the navigation on the
- left, then click **Create App Integration**.
-3. Select **SAML 2.0** and click **Next**.
-4. Enter a name for your application and click **Next**.
-5. Enter the following values in the **SAML Settings** section:
- - **Single sign on URL** — Use the **Single Sign-On URL**
- value from Cube Cloud.
- - **Audience URI (SP Entity ID)** — Use the **Audience**
- value from Cube Cloud.
-6. Click **Next** to go to the **Feedback** screen, fill in
- any necessary details and click **Finish**.
-
-## Configure attribute statements in Okta
-
-After the application is created, configure attribute statements to map
-user attributes from Okta to Cube Cloud:
-
-1. In your SAML app integration, go to the **Sign On** tab.
-2. Scroll down to the **Attribute statements** section.
-3. Click **Add expression** and create the following entries:
-
-| Name | Expression |
-| ------- | ------------------------- |
-| `email` | `user.profile.email` |
-| `name` | `user.profile.firstName` |
-
-## Retrieve SAML details from Okta
-
-Next, retrieve the values you'll need to complete the configuration
-in Cube Cloud:
-
-1. In your SAML app integration, go to the **Sign On** tab.
-2. In the sidebar, click **View SAML setup instructions**.
-3. Take note of the following values from the setup instructions page:
- - **Identity Provider Single Sign-On URL**
- - **Identity Provider Issuer**
- - **X.509 Certificate**
-
-## Complete configuration in Cube Cloud
-
-Return to the SAML configuration page in Cube Cloud and provide the
-identity provider details:
-
-- **Entity ID / Issuer** — Use the **Identity Provider Issuer**
- value from Okta.
-- **SSO (Sign on) URL** — Use the **Identity Provider Single
- Sign-On URL** value from Okta.
-- **Certificate** — Paste the **X.509 Certificate** from Okta.
-
-## Test SAML authentication
-
-1. Copy the **Single Sign-On URL** from the SAML configuration page
- in Cube Cloud.
-2. Open a new browser tab and paste the URL into the address bar, then
- press **Enter**.
-3. You should be redirected to Okta to log in. After a successful login,
- you should be redirected back to Cube Cloud.
-
-[okta-docs-create-saml-app]:
- https://help.okta.com/en-us/Content/Topics/Apps/Apps_App_Integration_Wizard_SAML.htm
diff --git a/docs-mintlify/access-security/sso/okta/scim.mdx b/docs-mintlify/access-security/sso/okta/scim.mdx
deleted file mode 100644
index addba7c6c0f2c..0000000000000
--- a/docs-mintlify/access-security/sso/okta/scim.mdx
+++ /dev/null
@@ -1,127 +0,0 @@
----
-title: SCIM provisioning with Okta
-description: With SCIM (System for Cross-domain Identity Management) enabled, you can automate user provisioning in Cube Cloud and keep user groups synchronized with Okta.
----
-
-# SCIM provisioning with Okta
-
-With SCIM (System for Cross-domain Identity Management) enabled, you can
-automate user provisioning in Cube Cloud and keep user groups synchronized
-with Okta.
-
-
-
-Available on [Enterprise and above plans](https://cube.dev/pricing).
-
-
-
-## Prerequisites
-
-Before proceeding, ensure you have the following:
-
-- Okta SAML authentication already configured. If not, complete
- the [SAML setup][ref-saml] first.
-- Admin permissions in Cube Cloud.
-- Admin permissions in Okta to manage application integrations.
-
-## Enable SCIM provisioning in Cube Cloud
-
-Before configuring SCIM in Okta, you need to enable SCIM
-provisioning in Cube Cloud:
-
-1. In Cube, navigate to **Admin → Settings**.
-2. In the **SAML** section, enable **SCIM Provisioning**.
-
-## Generate an API key in Cube Cloud
-
-To allow Okta to communicate with Cube Cloud via SCIM, you'll need to
-create a dedicated API key:
-
-1. In Cube Cloud, navigate to **Settings → API Keys**.
-2. Create a new API key. Give it a descriptive name such as **Okta SCIM**.
-3. Copy the generated key and store it securely — you'll need it in the
- next step.
-
-## Enable SCIM provisioning in Okta
-
-This section assumes you already have a Cube Cloud SAML app integration
-in Okta. If you haven't created one yet, follow the
-[SAML setup guide][ref-saml] first.
-
-1. In the Okta Admin Console, go to **Applications → Applications**
- and open your Cube Cloud application.
-2. On the **General** tab, click **Edit** in the
- **App Settings** section.
-3. Set the **Provisioning** field to **SCIM** and click
- **Save**.
-
-## Configure SCIM connection in Okta
-
-1. Navigate to the **Provisioning** tab of your Cube Cloud application.
-2. In the **Settings → Integration** section, click **Edit**.
-3. Fill in the following fields:
- - **SCIM connector base URL** — Your Cube Cloud deployment URL with
- `/api/scim/v2` appended. For example:
- `https://your-deployment.cubecloud.dev/api/scim/v2`
- - **Unique identifier field for users** — `userName`
- - **Supported provisioning actions** — Select **Push New Users**,
- **Push Profile Updates**, and **Push Groups**.
- - **Authentication Mode** — Select **HTTP Header**.
-4. In the **HTTP Header** section, paste the API key you generated
- earlier into the **Authorization** field.
-5. Click **Test Connector Configuration** to verify that Okta can
- reach Cube Cloud. Proceed once the test is successful.
-6. Click **Save**.
-
-## Configure provisioning actions
-
-After saving the SCIM connection, configure which provisioning actions
-are enabled for your application:
-
-1. On the **Provisioning** tab, go to **Settings → To App**.
-2. Click **Edit** and enable the actions you want:
- - **Create Users** — Automatically create users in Cube Cloud when
- they are assigned in Okta.
- - **Update User Attributes** — Synchronize profile changes from Okta
- to Cube Cloud.
- - **Deactivate Users** — Deactivate users in Cube Cloud when they are
- unassigned or deactivated in Okta.
-3. Click **Save**.
-
-## Assign users and groups
-
-For users and groups to be provisioned in Cube Cloud, you need to assign
-them to your Cube Cloud application in Okta. This is also required for
-group memberships to be correctly synchronized — pushing a group alone
-does not assign its members to the application.
-
-1. In your Cube Cloud application, navigate to the **Assignments** tab.
-2. Click **Assign** and choose **Assign to Groups** (or
- **Assign to People** for individual users).
-3. Select the groups or users you want to provision and click **Assign**,
- then click **Done**.
-
-
-
-If users were assigned to the application before SCIM provisioning was enabled,
-Okta will show the following message in the **Assignments** tab:
-*"User was assigned this application before Provisioning was enabled and not
-provisioned in the downstream application. Click Provision User."*
-
-To resolve this, click **Provision User** next to each affected user.
-This will trigger SCIM provisioning for them without needing to remove and
-re-add their assignment.
-
-
-
-## Push groups to Cube Cloud
-
-To synchronize groups from Okta to Cube Cloud, you need to select which
-groups to push:
-
-1. In your Cube Cloud application, navigate to the **Push Groups** tab.
-2. Click **Push Groups** and choose how to find your groups — you can
- search by name or rule.
-3. Select the groups you want to push to Cube Cloud and click **Save**.
-
-[ref-saml]: /access-security/sso/okta/saml
\ No newline at end of file
diff --git a/docs-mintlify/access-security/users-and-permissions/custom-roles.mdx b/docs-mintlify/access-security/users-and-permissions/custom-roles.mdx
deleted file mode 100644
index e61bd2b0a3012..0000000000000
--- a/docs-mintlify/access-security/users-and-permissions/custom-roles.mdx
+++ /dev/null
@@ -1,152 +0,0 @@
----
-title: Custom roles
-description: Custom roles are available on the Enterprise plan.
----
-
-# Custom roles
-
-
-
-Custom roles are available on the [Enterprise plan](https://cube.dev/pricing).
-
-
-
-Cube comes with [default roles][ref-default-roles] that cover common use cases. However, if you need more customization, you can create custom roles with a fine-grained set of permissions tailored to your organization's specific needs.
-
-[ref-default-roles]: /access-security/users-and-permissions/roles-and-permissions
-## Managing roles
-
-In Cube Cloud, users are not assigned permissions directly. Instead, they are assigned
-_roles_ that are associated with _policies_. Each policy define what _actions_ they can
-perform and on what _resources_ they can perform those actions. This approach makes it
-easier to manage permissions at scale.
-
-Each role can be associated with one or more of the following policies:
-
-| Policy | Description |
-| --- | --- |
-| `Global` | Controls account-level functionality, e.g., as Billing. |
-| `Deployment` | Controls deployment-level functionality, e.g., as Playground. |
-| `Report` | Controls access to specific reports in Saved Reports. |
-| `ReportFolder` | Controls access to specific folders in Saved Reports. |
-| `Agent` | Controls access to specific [AI agents][ref-ai-agents]. |
-| `AgentSpace` | Controls access to specific AI agent [spaces][ref-ai-spaces]. |
-| `Workbook` | Controls access to specific [workbooks][ref-workbooks]. |
-
-Each policy can apply to _all resources_ or _specific resources_. For example, a policy
-could apply to all deployments or only to a specific deployment.
-
-Also, each policy can have _all actions_ or only _specific actions_ associated with it.
-For example, a policy could allow a user to view, create, or delete one or more
-deployments if it's associated with those specific actions.
-
-See [actions reference](#actions) for a list of available actions.
-
-### Browsing roles
-
-To see a list of custom roles, go to the **Admin -> Custom Roles** page in your Cube
-account:
-
-
-
-
-
-### Creating a role
-
-To create a new role, click the **Add Role** button. Enter a name and an optional
-description for the role, then click **Add Policy** and select either **Deployment**
-or **Global** for this policy's scope.
-
-Deployment policies apply to deployment-level functionality, such as the
-Playground and Data Model editor. Global policies apply to account-level
-functionality, such as Billing. Once the policy scope has been
-selected, you can restrict which actions this role can perform by selecting
-"Specific" and using the dropdown to select specific actions.
-
-
-
-
-
-When you are finished, click **Create** to create the role.
-
-## Assigning roles to users
-
-To assign custom roles to users:
-
-1. Navigate to **Admin → Users**
-2. Choose one of the following methods:
- - **From the users table**: Use the dropdown in the users table
- - **From individual user page**: Click on a user and assign roles from their profile page
-3. You can assign multiple custom roles to a single user
-
-## Actions
-
-Policies can have the following actions associated with them.
-
-### `Global`
-
-| Action | Description |
-| --- | --- |
-| `Alerts Access`
`Alerts Create`
`Alerts Edit`
`Alerts Delete` | View, create, edit, and delete [budgets][ref-budgets]. |
-| `Billing Access` | Access the billing data of the Cube Cloud account. |
-| `Deployment Manage` | Create and delete deployments in the Cube Cloud account. |
-| `Agent Admin` | Administer AI agents across the account. |
-| `AI BI Developer` | Developer-level access to AI BI features with full AI token usage. |
-| `AI BI User` | User-level access to AI BI features with standard AI token usage. |
-| `AI BI Viewer` | Viewer-level access to AI BI features with limited AI token usage. |
-
-### `Deployment`
-
-| Action | Description |
-| --- | --- |
-| `Deployment View`
`Deployment Edit` | Access the deployment, change its settings. |
-| `Playground Access` | Use [Playground][ref-playground]. |
-| `Data Model View` | View the source code in the [data model][ref-data-model] editor, use [Visual Modeler][ref-visual-model]. |
-| `Data Model Edit (all branches)`
`Data Model Edit (dev branches only)` | Use the [development mode][ref-dev-mode], edit the data model, perform Git operations (e.g., commit, pull, push). |
-| `Queries & Metrics Access` | Use [Query History][ref-query-history] and [Performance Insights][ref-perf-insights]. |
-| `SQL Runner Access` | Use [SQL Runner][ref-sql-runner]. |
-| `Data Assets Access` | Use [Semantic Catalog][ref-semantic-catalog]. |
-
-### `Report`
-
-| Action | Description |
-| --- | --- |
-| `Report Read`
`Report Manage` | View and create/delete reports. |
-
-### `ReportFolder`
-
-| Action | Description |
-| --- | --- |
-| `Report Read`
`Report Manage` | View and create/delete report folders. |
-
-### `Agent`
-
-| Action | Description |
-| --- | --- |
-| `Agent Access`
`Agent Manage` | View and manage AI agents. |
-
-### `AgentSpace`
-
-| Action | Description |
-| --- | --- |
-| `Agent Space Manage` | Manage AI agent spaces. |
-
-### `Workbook`
-
-| Action | Description |
-| --- | --- |
-| `Workbook Read`
`Workbook Manage`
`Workbook Edit` | View, manage, and edit workbooks. |
-
-
-[ref-budgets]: /admin/budgets
-[ref-playground]: /docs/workspace/playground
-[ref-data-model]: /docs/data-modeling/data-model-ide
-[ref-visual-model]: /docs/data-modeling/visual-modeler
-[ref-dev-mode]: /docs/data-modeling/dev-mode
-[ref-query-history]: /admin/monitoring/query-history
-[ref-perf-insights]: /admin/monitoring/performance
-[ref-sql-runner]: /docs/data-modeling/sql-runner
-[ref-semantic-catalog]: /docs/workspace/semantic-catalog
-[ref-ai-agents]: /admin/ai/spaces-agents-models#2-agents-ai-agents
-[ref-ai-spaces]: /admin/ai/spaces-agents-models#1-spaces-agent-spaces
-[ref-workbooks]: /analytics/workbooks
\ No newline at end of file
diff --git a/docs-mintlify/access-security/users-and-permissions/index.mdx b/docs-mintlify/access-security/users-and-permissions/index.mdx
deleted file mode 100644
index 4a102ea2b36cf..0000000000000
--- a/docs-mintlify/access-security/users-and-permissions/index.mdx
+++ /dev/null
@@ -1,19 +0,0 @@
----
-description: Manage user attributes, roles, permissions, and groups to control access to Cube features and data.
----
-
- Users and permissions
-
-Manage users and control access to features and data in Cube.
-
-## Users and permissions
-
-Configure access control to:
-
-- Define [user attributes][ref-attributes] for personalized data access
-- Set up [roles and permissions][ref-roles] to control feature access
-- Create [custom roles][ref-custom-roles] with specific permissions for your team
-
-[ref-attributes]: /access-security/users-and-permissions/user-attributes
-[ref-roles]: /access-security/users-and-permissions/roles-and-permissions
-[ref-custom-roles]: /access-security/users-and-permissions/custom-roles
\ No newline at end of file
diff --git a/docs-mintlify/access-security/users-and-permissions/roles-and-permissions.mdx b/docs-mintlify/access-security/users-and-permissions/roles-and-permissions.mdx
deleted file mode 100644
index 5a11ed0c83f07..0000000000000
--- a/docs-mintlify/access-security/users-and-permissions/roles-and-permissions.mdx
+++ /dev/null
@@ -1,49 +0,0 @@
----
-title: "Roles & Permissions"
-description: _Understanding user roles and permissions in Cube._
----
-
-# Roles & Permissions
-
-_Understanding user roles and permissions in Cube._
-
-Cube has four built-in default roles: Admin, Developer, Explorer, and Viewer. Each role has specific permissions and access levels designed to support different responsibilities within the platform.
-
-The Enterprise tier allows creation of custom roles with a customized set of permissions tailored to your organization's specific needs.
-
-## Permissions matrix
-
-| Permission | Admin | Developer | Explorer | Viewer |
-| ----------------------------------- | :---: | :-------: | :------: | :----: |
-| Manage users and account settings | ✅ | ❌ | ❌ | ❌ |
-| Manage deployments and their settings | ✅ | ✅ | ❌ | ❌ |
-| Edit semantic model | ✅ | ✅ | ❌ | ❌ |
-| Execute SQL queries against data sources | ✅ | ✅ | ❌ | ❌ |
-| Explore and query semantic models | ✅ | ✅ | ✅ | ❌ |
-| Create and edit workbooks | ✅ | ✅ | ✅ | ❌ |
-| View published dashboards | ✅ | ✅ | ✅ | ✅ |
-| Access Analytics Chat | ✅ | ✅ | ✅ | ✅ |
-| Query from external tools (Tableau, Power BI) | ✅ | ✅ | ✅ | ✅ |
-
-
-
-Admin roles are billed at the developer rate.
-
-
-
-## Agent Permissions
-
-Agents are connected to Semantic Model Deployments and inherit the permission level of the user they are operating under.
-
-Each agent can be configured to use the _Restrict Views_ feature which allows to select the views that are visible to the agent.
-This feature should not be used as a security measure. Configure [access policies][ref-data-access-policies] instead.
-
-## Typical Usage Scenarios
-
-- Viewers: Business users who consume published dashboards, use Analytics Chat, and query data through external tools like Tableau or Power BI
-- Explorers: Typically data consumers and analysts
-- Developers: Usually data stewards and data engineers
-- Admins: Typically assigned to data engineers managing the entire Cube instance (billed at the developer rate with additional privileges)
-
-
-[ref-data-access-policies]: /access-security/access-control/data-access-policies
\ No newline at end of file
diff --git a/docs-mintlify/access-security/users-and-permissions/user-attributes.mdx b/docs-mintlify/access-security/users-and-permissions/user-attributes.mdx
deleted file mode 100644
index cab9c9303cadd..0000000000000
--- a/docs-mintlify/access-security/users-and-permissions/user-attributes.mdx
+++ /dev/null
@@ -1,48 +0,0 @@
----
-title: User Attributes
-description: _Secure data access with user attributes for filtering based on individual permissions._
----
-
-# User Attributes
-
-_Secure data access with user attributes for filtering based on individual permissions._
-
-User attributes allow you to implement row-level security by filtering data based on user-specific values. This documentation explains how to set up and use user attributes for access control.
-
-## Creating User Attributes
-
-1. Go to **Admin → Attributes**
-2. Click to create a new attribute
-3. Configure the attribute:
- - Set a name
- - Choose the type
- - Optionally set a default value
- - Optionally set a display name
-
-## Setting User Attribute Values
-
-User attributes can be set on a per-user basis:
-
-1. Go to the user's page
-2. Locate the attributes section
-3. Set the desired attribute value (e.g., setting city to "Los Angeles")
-
-## Implementing Row-Level Access Policy
-
-To filter data based on user attributes, implement an access policy in your views:
-
-```yaml
-views:
- - name: orders_view
- access_policy:
- - group: "*" # Applies to all groups
- row_level:
- filters:
- - member: customers_city
- operator: equals
- values: ["{ userAttributes.city }"]
-```
-
-## Effect on Queries
-
-When the access policy is implemented, queries will automatically be filtered based on the user's attributes. This ensures users can only access data that matches their attribute values.
\ No newline at end of file
diff --git a/docs-mintlify/access-security/users-and-permissions/user-groups.mdx b/docs-mintlify/access-security/users-and-permissions/user-groups.mdx
deleted file mode 100644
index 1de6395d2f9e0..0000000000000
--- a/docs-mintlify/access-security/users-and-permissions/user-groups.mdx
+++ /dev/null
@@ -1,28 +0,0 @@
----
-title: User groups
-description: "How to create and manage user groups in the admin UI and connect them to group-based access policies."
----
-
-# User groups
-
-User groups allow you to organize users and manage access collectively.
-Instead of assigning [user attributes][ref-user-attributes] to individual users, you can add users to groups for easier management at scale.
-[Access policies][ref-dap] can be configured based on groups to control [row-level security][ref-rls].
-
-## Creating groups
-
-To create a user group:
-
-1. Navigate to **Admin → User Groups**
-2. Click **Create Group**
-3. Enter a group name and optional description
-4. Add users to the group
-
-
-
-
-
-
-[ref-user-attributes]: /access-security/users-and-permissions/user-attributes
-[ref-rls]: /access-security/access-control/row-level-security
-[ref-dap]: /access-security/access-control/data-access-policies
\ No newline at end of file
diff --git a/docs-mintlify/admin/configuration/data-sources/index.mdx b/docs-mintlify/admin/configuration/data-sources/index.mdx
deleted file mode 100644
index b5afbf709d600..0000000000000
--- a/docs-mintlify/admin/configuration/data-sources/index.mdx
+++ /dev/null
@@ -1,168 +0,0 @@
----
-description: Choose and configure a data warehouse, query engine, or other data source to connect to Cube.
----
-
- Connecting to data sources
-
-Choose a data source to get started with below.
-
-You can also connect [multiple data sources][ref-config-multi-data-src] at the same
-time and adjust the [concurrency settings][ref-data-source-concurrency] for data
-sources.
-
-## Data warehouses
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-## Query engines
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-## Transactional databases
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-## Time series databases
-
-
-
-
-
-
-## Streaming
-
-
-
-
-
-
-
-
-
-
-## Other data sources
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-### API endpoints
-
-Cube is designed to work with data sources that allow querying them with SQL.
-
-Cube is not designed to access data files directly or fetch data from REST,
-or GraphQL, or any other API. To use Cube in that way, you either need to use
-a supported data source (e.g., use [DuckDB][ref-duckdb] to query Parquet files
-on Amazon S3) or create a [custom data source driver](#currently-unsupported-data-sources).
-
-## Data source drivers
-
-### Driver support
-
-Most of the drivers for data sources are supported either directly by the Cube
-team or by their vendors. The rest are community-supported and will be
-highlighted as such in their respective pages.
-
-You can find the [source code][link-github-packages] of the drivers that are part
-of the Cube distribution in `cubejs-*-driver` folders on GitHub.
-
-### Third-party drivers
-
-The following drivers were contributed by the Cube community. They are not part
-of the Cube distribution, however, they can still be used with Cube:
-
-- [ArangoDB](https://www.npmjs.com/package/arangodb-cubejs-driver)
-- [CosmosDB](https://www.npmjs.com/package/cosmosdb-cubejs-driver)
-- [CrateDB](https://www.npmjs.com/package/cratedb-cubejs-driver)
-- [Dremio](https://www.npmjs.com/package/mydremio-cubejs-driver)
-- [Dremio ODBC](https://www.npmjs.com/package/dremio-odbc-cubejs-driver)
-- [OpenDistro Elastic](https://www.npmjs.com/package/opendistro-cubejs-driver)
-- [SAP Hana](https://www.npmjs.com/package/cubejs-hana-driver)
-- [Trino](https://www.npmjs.com/package/trino-cubejs-driver)
-- [Vertica](https://www.npmjs.com/package/@knowitall/vertica-driver)
-
-You need to configure [`driver_factory`][ref-driver-factory] to use a third-party
-driver.
-
-### Currently unsupported data sources
-
-If you'd like to connect to a data source which is not yet listed on this page,
-please see the list of [requested drivers](https://github.com/cube-js/cube/issues/7076)
-and [file an issue](https://github.com/cube-js/cube/issues) on GitHub.
-
-You're more than welcome to contribute new drivers as well as new features and
-patches to
-[existing drivers](https://github.com/cube-js/cube/tree/master/packages). Please
-check the
-[contribution guidelines](https://github.com/cube-js/cube/blob/master/CONTRIBUTING.md#contributing-database-drivers)
-and join the `#contributing-to-cube` channel in our
-[Slack community](https://slack.cube.dev).
-
-
-
-You can [contact us](https://cube.dev/contact) to discuss an integration
-with a currently unsupported data source. We might be able to assist Cube Cloud
-users on the [Enterprise Premier plan](https://cube.dev/pricing).
-
-
-
-
-[ref-config-multi-data-src]: /admin/configuration/advanced/multiple-data-sources
-[ref-driver-factory]: /reference/configuration/config#driver_factory
-[ref-duckdb]: /admin/configuration/data-sources/duckdb
-[link-github-packages]: https://github.com/cube-js/cube/tree/master/packages
-[ref-data-source-concurrency]: /admin/configuration/concurrency#data-sources
\ No newline at end of file
diff --git a/docs-mintlify/admin/configuration/concurrency.mdx b/docs-mintlify/admin/connect-to-data/concurrency.mdx
similarity index 86%
rename from docs-mintlify/admin/configuration/concurrency.mdx
rename to docs-mintlify/admin/connect-to-data/concurrency.mdx
index ac4fa9d907ba4..c2fa18bf1bde0 100644
--- a/docs-mintlify/admin/configuration/concurrency.mdx
+++ b/docs-mintlify/admin/connect-to-data/concurrency.mdx
@@ -80,16 +80,16 @@ However, you can override this behvaior in the refresh worker
[ref-data-apis]: /reference
-[ref-data-sources]: /admin/configuration/data-sources
+[ref-data-sources]: /admin/connect-to-data/data-sources
[ref-context-to-orchestrator-id]: /reference/configuration/config#context_to_orchestrator_id
[ref-driver-factory]: /reference/configuration/config#driver_factory
[ref-preagg-refresh]: /docs/caching/refreshing-pre-aggregations#configuration
-[ref-athena]: /admin/configuration/data-sources/aws-athena
-[ref-clickhouse]: /admin/configuration/data-sources/clickhouse
-[ref-databricks]: /admin/configuration/data-sources/databricks-jdbc
-[ref-firebolt]: /admin/configuration/data-sources/firebolt
-[ref-pinot]: /admin/configuration/data-sources/pinot
-[ref-redshift]: /admin/configuration/data-sources/aws-redshift
-[ref-snowflake]: /admin/configuration/data-sources/snowflake
-[ref-bigquery]: /admin/configuration/data-sources/google-bigquery
+[ref-athena]: /admin/connect-to-data/data-sources/aws-athena
+[ref-clickhouse]: /admin/connect-to-data/data-sources/clickhouse
+[ref-databricks]: /admin/connect-to-data/data-sources/databricks-jdbc
+[ref-firebolt]: /admin/connect-to-data/data-sources/firebolt
+[ref-pinot]: /admin/connect-to-data/data-sources/pinot
+[ref-redshift]: /admin/connect-to-data/data-sources/aws-redshift
+[ref-snowflake]: /admin/connect-to-data/data-sources/snowflake
+[ref-bigquery]: /admin/connect-to-data/data-sources/google-bigquery
[link-github-data-source-concurrency]: https://github.com/search?q=repo%3Acube-js%2Fcube+getDefaultConcurrency+path%3Apackages%2Fcubejs-&type=code
\ No newline at end of file
diff --git a/docs-mintlify/admin/configuration/data-sources/aws-athena.mdx b/docs-mintlify/admin/connect-to-data/data-sources/aws-athena.mdx
similarity index 99%
rename from docs-mintlify/admin/configuration/data-sources/aws-athena.mdx
rename to docs-mintlify/admin/connect-to-data/data-sources/aws-athena.mdx
index e8dafd4a48ca1..ac97cc495517f 100644
--- a/docs-mintlify/admin/configuration/data-sources/aws-athena.mdx
+++ b/docs-mintlify/admin/connect-to-data/data-sources/aws-athena.mdx
@@ -91,7 +91,7 @@ if [dedicated infrastructure][ref-dedicated-infra] is used. Check out the
1 Either provide [`CUBEJS_AWS_KEY`](/reference/configuration/environment-variables#cubejs_aws_key) and [`CUBEJS_AWS_SECRET`](/reference/configuration/environment-variables#cubejs_aws_secret) for static credentials, or use [`CUBEJS_AWS_ATHENA_ASSUME_ROLE_ARN`](/reference/configuration/environment-variables#cubejs_aws_athena_assume_role_arn) for role-based authentication. When using role assumption without static credentials, the driver will use the AWS SDK's default credential chain (IAM instance profile, EKS IRSA, etc.).
-[ref-data-source-concurrency]: /admin/configuration/concurrency#data-source-concurrency
+[ref-data-source-concurrency]: /admin/connect-to-data/concurrency#data-source-concurrency
## Pre-Aggregation Feature Support
### count_distinct_approx
diff --git a/docs-mintlify/admin/configuration/data-sources/aws-redshift.mdx b/docs-mintlify/admin/connect-to-data/data-sources/aws-redshift.mdx
similarity index 98%
rename from docs-mintlify/admin/configuration/data-sources/aws-redshift.mdx
rename to docs-mintlify/admin/connect-to-data/data-sources/aws-redshift.mdx
index 1bda40c577165..1b243fe7dce53 100644
--- a/docs-mintlify/admin/configuration/data-sources/aws-redshift.mdx
+++ b/docs-mintlify/admin/connect-to-data/data-sources/aws-redshift.mdx
@@ -116,7 +116,7 @@ if [dedicated infrastructure][ref-dedicated-infra] is used. Check out the
1 Required when using password-based authentication. When using IAM authentication, omit these and set [`CUBEJS_DB_REDSHIFT_CLUSTER_IDENTIFIER`](/reference/configuration/environment-variables#cubejs_db_redshift_cluster_identifier) and [`CUBEJS_DB_REDSHIFT_AWS_REGION`](/reference/configuration/environment-variables#cubejs_db_redshift_aws_region) instead. The driver uses the AWS SDK's default credential chain (IAM instance profile, EKS IRSA, etc.) to obtain temporary database credentials.
-[ref-data-source-concurrency]: /admin/configuration/concurrency#data-source-concurrency
+[ref-data-source-concurrency]: /admin/connect-to-data/concurrency#data-source-concurrency
## Pre-Aggregation Feature Support
### count_distinct_approx
@@ -197,7 +197,7 @@ Database][ref-recipe-enable-ssl].
https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.html#concepts-available-regions
[ref-caching-large-preaggs]: /docs/caching/using-pre-aggregations#export-bucket
[ref-caching-using-preaggs-build-strats]: /docs/caching/using-pre-aggregations#pre-aggregation-build-strategies
-[ref-recipe-enable-ssl]: /admin/configuration/recipes/using-ssl-connections-to-data-source
+[ref-recipe-enable-ssl]: /recipes/configuration/using-ssl-connections-to-data-source
[ref-schema-ref-types-formats-countdistinctapprox]: /reference/data-modeling/measures#type
[self-preaggs-batching]: #batching
[ref-conf-preaggs-schema]: /reference/configuration/config#pre_aggregations_schema
\ No newline at end of file
diff --git a/docs-mintlify/admin/configuration/data-sources/clickhouse.mdx b/docs-mintlify/admin/connect-to-data/data-sources/clickhouse.mdx
similarity index 97%
rename from docs-mintlify/admin/configuration/data-sources/clickhouse.mdx
rename to docs-mintlify/admin/connect-to-data/data-sources/clickhouse.mdx
index af6a5a0b8f5de..80745e3a0551c 100644
--- a/docs-mintlify/admin/configuration/data-sources/clickhouse.mdx
+++ b/docs-mintlify/admin/connect-to-data/data-sources/clickhouse.mdx
@@ -43,7 +43,7 @@ CUBEJS_DB_PASS=**********
| [`CUBEJS_DB_MAX_POOL`](/reference/configuration/environment-variables#cubejs_db_max_pool) | The maximum number of concurrent database connections to pool. Default is `20` | A valid number | ❌ |
| [`CUBEJS_CONCURRENCY`](/reference/configuration/environment-variables#cubejs_concurrency) | The number of [concurrent queries][ref-data-source-concurrency] to the data source | A valid number | ❌ |
-[ref-data-source-concurrency]: /admin/configuration/concurrency#data-source-concurrency
+[ref-data-source-concurrency]: /admin/connect-to-data/concurrency#data-source-concurrency
## Pre-Aggregation Feature Support
When using [pre-aggregations][ref-preaggs] with ClickHouse, you have to define
@@ -138,7 +138,7 @@ You can connect to a ClickHouse database with compression enabled, by setting
https://clickhouse.tech/docs/en/operations/settings/settings-users/
[clickhouse-readonly]: https://clickhouse.com/docs/en/operations/settings/permissions-for-queries#readonly
[ref-caching-using-preaggs-build-strats]: /docs/caching/using-pre-aggregations#pre-aggregation-build-strategies
-[ref-recipe-enable-ssl]: /admin/configuration/recipes/using-ssl-connections-to-data-source
+[ref-recipe-enable-ssl]: /recipes/configuration/using-ssl-connections-to-data-source
[ref-caching-large-preaggs]: /docs/caching/using-pre-aggregations#export-bucket
[ref-schema-ref-types-formats-countdistinctapprox]: /reference/data-modeling/measures#type
[self-preaggs-batching]: #batching
diff --git a/docs-mintlify/admin/configuration/data-sources/databricks-jdbc.mdx b/docs-mintlify/admin/connect-to-data/data-sources/databricks-jdbc.mdx
similarity index 99%
rename from docs-mintlify/admin/configuration/data-sources/databricks-jdbc.mdx
rename to docs-mintlify/admin/connect-to-data/data-sources/databricks-jdbc.mdx
index 77af4354edf8f..c9415610ca2d9 100644
--- a/docs-mintlify/admin/configuration/data-sources/databricks-jdbc.mdx
+++ b/docs-mintlify/admin/connect-to-data/data-sources/databricks-jdbc.mdx
@@ -65,7 +65,7 @@ docker run -it -p 4000:4000 --env-file=.env cube-jdk
| [`CUBEJS_DB_MAX_POOL`](/reference/configuration/environment-variables#cubejs_db_max_pool) | The maximum number of concurrent database connections to pool. Default is `8` | A valid number | ❌ |
| [`CUBEJS_CONCURRENCY`](/reference/configuration/environment-variables#cubejs_concurrency) | The number of [concurrent queries][ref-data-source-concurrency] to the data source | A valid number | ❌ |
-[ref-data-source-concurrency]: /admin/configuration/concurrency#data-source-concurrency
+[ref-data-source-concurrency]: /admin/connect-to-data/concurrency#data-source-concurrency
## Pre-Aggregation Feature Support
### count_distinct_approx
diff --git a/docs-mintlify/admin/configuration/data-sources/druid.mdx b/docs-mintlify/admin/connect-to-data/data-sources/druid.mdx
similarity index 96%
rename from docs-mintlify/admin/configuration/data-sources/druid.mdx
rename to docs-mintlify/admin/connect-to-data/data-sources/druid.mdx
index 3d671a0d0b8e1..54610243ef004 100644
--- a/docs-mintlify/admin/configuration/data-sources/druid.mdx
+++ b/docs-mintlify/admin/connect-to-data/data-sources/druid.mdx
@@ -39,7 +39,7 @@ CUBEJS_DB_PASS=**********
| [`CUBEJS_DB_MAX_POOL`](/reference/configuration/environment-variables#cubejs_db_max_pool) | The maximum number of concurrent database connections to pool. Default is `8` | A valid number | ❌ |
| [`CUBEJS_CONCURRENCY`](/reference/configuration/environment-variables#cubejs_concurrency) | The number of [concurrent queries][ref-data-source-concurrency] to the data source | A valid number | ❌ |
-[ref-data-source-concurrency]: /admin/configuration/concurrency#data-source-concurrency
+[ref-data-source-concurrency]: /admin/connect-to-data/concurrency#data-source-concurrency
## SSL
Cube does not require any additional configuration to enable SSL as Druid
diff --git a/docs-mintlify/admin/configuration/data-sources/duckdb.mdx b/docs-mintlify/admin/connect-to-data/data-sources/duckdb.mdx
similarity index 98%
rename from docs-mintlify/admin/configuration/data-sources/duckdb.mdx
rename to docs-mintlify/admin/connect-to-data/data-sources/duckdb.mdx
index b3144d123ad28..1d631936a1324 100644
--- a/docs-mintlify/admin/configuration/data-sources/duckdb.mdx
+++ b/docs-mintlify/admin/connect-to-data/data-sources/duckdb.mdx
@@ -85,7 +85,7 @@ deployment][ref-demo-deployment] in Cube Cloud.
| `CUBEJS_DB_DUCKDB_S3_USE_CREDENTIAL_CHAIN` | A flag to use credentials chain for secrets for S3 connections | `true`, `false`. Defaults to `false` | ❌ |
| [`CUBEJS_CONCURRENCY`](/reference/configuration/environment-variables#cubejs_concurrency) | The number of [concurrent queries][ref-data-source-concurrency] to the data source | A valid number | ❌ |
-[ref-data-source-concurrency]: /admin/configuration/concurrency#data-source-concurrency
+[ref-data-source-concurrency]: /admin/connect-to-data/concurrency#data-source-concurrency
## Pre-Aggregation Feature Support
### count_distinct_approx
diff --git a/docs-mintlify/admin/configuration/data-sources/elasticsearch.mdx b/docs-mintlify/admin/connect-to-data/data-sources/elasticsearch.mdx
similarity index 98%
rename from docs-mintlify/admin/configuration/data-sources/elasticsearch.mdx
rename to docs-mintlify/admin/connect-to-data/data-sources/elasticsearch.mdx
index 70c0f426c008a..6f4bc064f7470 100644
--- a/docs-mintlify/admin/configuration/data-sources/elasticsearch.mdx
+++ b/docs-mintlify/admin/connect-to-data/data-sources/elasticsearch.mdx
@@ -64,7 +64,7 @@ CUBEJS_DB_ELASTIC_APIKEY_KEY=ui2lp2axTNmsyakw9tvNnw
| [`CUBEJS_DB_MAX_POOL`](/reference/configuration/environment-variables#cubejs_db_max_pool) | The maximum number of concurrent database connections to pool. Default is `8` | A valid number | ❌ |
| [`CUBEJS_CONCURRENCY`](/reference/configuration/environment-variables#cubejs_concurrency) | The number of [concurrent queries][ref-data-source-concurrency] to the data source | A valid number | ❌ |
-[ref-data-source-concurrency]: /admin/configuration/concurrency#data-source-concurrency
+[ref-data-source-concurrency]: /admin/connect-to-data/concurrency#data-source-concurrency
## SSL
Cube does not require any additional configuration to enable SSL as
diff --git a/docs-mintlify/admin/configuration/data-sources/firebolt.mdx b/docs-mintlify/admin/connect-to-data/data-sources/firebolt.mdx
similarity index 97%
rename from docs-mintlify/admin/configuration/data-sources/firebolt.mdx
rename to docs-mintlify/admin/connect-to-data/data-sources/firebolt.mdx
index 941b4ca193708..ec7ae7e3a9131 100644
--- a/docs-mintlify/admin/configuration/data-sources/firebolt.mdx
+++ b/docs-mintlify/admin/connect-to-data/data-sources/firebolt.mdx
@@ -43,7 +43,7 @@ CUBEJS_FIREBOLT_ENGINE_NAME=engine_name
| [`CUBEJS_DB_MAX_POOL`](/reference/configuration/environment-variables#cubejs_db_max_pool) | The maximum number of concurrent database connections to pool. Default is `20` | A valid number | ❌ |
| [`CUBEJS_CONCURRENCY`](/reference/configuration/environment-variables#cubejs_concurrency) | The number of [concurrent queries][ref-data-source-concurrency] to the data source | A valid number | ❌ |
-[ref-data-source-concurrency]: /admin/configuration/concurrency#data-source-concurrency
+[ref-data-source-concurrency]: /admin/connect-to-data/concurrency#data-source-concurrency
[firebolt]: https://www.firebolt.io/
[firebolt-help]: https://help.firebolt.io/
[firebolt-service-accounts]: https://docs.firebolt.io/godocs/Guides/managing-your-organization/service-accounts.html
diff --git a/docs-mintlify/admin/configuration/data-sources/google-bigquery.mdx b/docs-mintlify/admin/connect-to-data/data-sources/google-bigquery.mdx
similarity index 98%
rename from docs-mintlify/admin/configuration/data-sources/google-bigquery.mdx
rename to docs-mintlify/admin/connect-to-data/data-sources/google-bigquery.mdx
index c12905ecbd29f..affc933061768 100644
--- a/docs-mintlify/admin/configuration/data-sources/google-bigquery.mdx
+++ b/docs-mintlify/admin/connect-to-data/data-sources/google-bigquery.mdx
@@ -80,7 +80,7 @@ if [dedicated infrastructure][ref-dedicated-infra] is used. Check out the
| [`CUBEJS_DB_MAX_POOL`](/reference/configuration/environment-variables#cubejs_db_max_pool) | The maximum number of concurrent database connections to pool. Default is `40` | A valid number | ❌ |
| [`CUBEJS_CONCURRENCY`](/reference/configuration/environment-variables#cubejs_concurrency) | The number of [concurrent queries][ref-data-source-concurrency] to the data source | A valid number | ❌ |
-[ref-data-source-concurrency]: /admin/configuration/concurrency#data-source-concurrency
+[ref-data-source-concurrency]: /admin/connect-to-data/concurrency#data-source-concurrency
## Pre-Aggregation Feature Support
### count_distinct_approx
diff --git a/docs-mintlify/admin/configuration/data-sources/hive.mdx b/docs-mintlify/admin/connect-to-data/data-sources/hive.mdx
similarity index 97%
rename from docs-mintlify/admin/configuration/data-sources/hive.mdx
rename to docs-mintlify/admin/connect-to-data/data-sources/hive.mdx
index a7696231fa27c..5254af4ec5ba8 100644
--- a/docs-mintlify/admin/configuration/data-sources/hive.mdx
+++ b/docs-mintlify/admin/connect-to-data/data-sources/hive.mdx
@@ -46,5 +46,5 @@ CUBEJS_DB_PASS=**********
| [`CUBEJS_DB_MAX_POOL`](/reference/configuration/environment-variables#cubejs_db_max_pool) | The maximum number of concurrent database connections to pool. Default is `8` | A valid number | ❌ |
| [`CUBEJS_CONCURRENCY`](/reference/configuration/environment-variables#cubejs_concurrency) | The number of [concurrent queries][ref-data-source-concurrency] to the data source | A valid number | ❌ |
-[ref-data-source-concurrency]: /admin/configuration/concurrency#data-source-concurrency
+[ref-data-source-concurrency]: /admin/connect-to-data/concurrency#data-source-concurrency
[hive]: https://hive.apache.org/
diff --git a/docs-mintlify/admin/connect-to-data/data-sources/index.mdx b/docs-mintlify/admin/connect-to-data/data-sources/index.mdx
new file mode 100644
index 0000000000000..f49383a0ffca8
--- /dev/null
+++ b/docs-mintlify/admin/connect-to-data/data-sources/index.mdx
@@ -0,0 +1,187 @@
+---
+description: Choose and configure a data warehouse, query engine, or other data source to connect to Cube.
+title: Data Sources
+sidebarTitle: Overview
+mode: wide
+---
+
+Cube connects directly to your data warehouse or database. Select your data
+source below to get started with the setup process.
+
+You can also connect [multiple data sources][ref-config-multi-data-src] at the same
+time and adjust the [concurrency settings][ref-data-source-concurrency] for data
+sources.
+
+## Data warehouses
+
+
+
+ Connect to Amazon Redshift.
+
+
+ Connect to Google BigQuery.
+
+
+ Connect to Snowflake.
+
+
+ Connect to Databricks.
+
+
+ Connect to Microsoft Fabric.
+
+
+ Connect to ClickHouse.
+
+
+ Connect to SingleStore.
+
+
+ Connect to Apache Pinot.
+
+
+ Connect to Firebolt.
+
+
+ Connect to Vertica.
+
+
+
+## Query engines
+
+
+
+ Connect to Amazon Athena.
+
+
+ Connect to DuckDB or MotherDuck.
+
+
+ Connect to Hive or SparkSQL.
+
+
+ Connect to Presto.
+
+
+ Connect to Trino.
+
+
+
+## Transactional databases
+
+
+
+ Connect to Postgres.
+
+
+ Connect to Microsoft SQL Server.
+
+
+ Connect to MySQL.
+
+
+ Connect to Oracle.
+
+
+ Connect to SQLite.
+
+
+
+## Time series & streaming
+
+
+
+ Connect to QuestDB.
+
+
+ Connect to ksqlDB.
+
+
+ Connect to Materialize.
+
+
+ Connect to RisingWave.
+
+
+
+## Other data sources
+
+
+
+ Connect to Elasticsearch.
+
+
+ Connect to MongoDB.
+
+
+ Connect to Apache Druid.
+
+
+ Query Parquet files via DuckDB.
+
+
+ Query CSV files via DuckDB.
+
+
+ Query JSON files via DuckDB.
+
+
+
+### API endpoints
+
+Cube is designed to work with data sources that allow querying them with SQL.
+
+Cube is not designed to access data files directly or fetch data from REST,
+or GraphQL, or any other API. To use Cube in that way, you either need to use
+a supported data source (e.g., use [DuckDB][ref-duckdb] to query Parquet files
+on Amazon S3) or create a [custom data source driver](#currently-unsupported-data-sources).
+
+## Data source drivers
+
+### Driver support
+
+Most of the drivers for data sources are supported either directly by the Cube
+team or by their vendors. The rest are community-supported and will be
+highlighted as such in their respective pages.
+
+You can find the [source code][link-github-packages] of the drivers that are part
+of the Cube distribution in `cubejs-*-driver` folders on GitHub.
+
+### Third-party drivers
+
+The following drivers were contributed by the Cube community. They are not part
+of the Cube distribution, however, they can still be used with Cube:
+
+- [ArangoDB](https://www.npmjs.com/package/arangodb-cubejs-driver)
+- [CosmosDB](https://www.npmjs.com/package/cosmosdb-cubejs-driver)
+- [CrateDB](https://www.npmjs.com/package/cratedb-cubejs-driver)
+- [Dremio](https://www.npmjs.com/package/mydremio-cubejs-driver)
+- [Dremio ODBC](https://www.npmjs.com/package/dremio-odbc-cubejs-driver)
+- [OpenDistro Elastic](https://www.npmjs.com/package/opendistro-cubejs-driver)
+- [SAP Hana](https://www.npmjs.com/package/cubejs-hana-driver)
+- [Trino](https://www.npmjs.com/package/trino-cubejs-driver)
+- [Vertica](https://www.npmjs.com/package/@knowitall/vertica-driver)
+
+You need to configure [`driver_factory`][ref-driver-factory] to use a third-party
+driver.
+
+### Currently unsupported data sources
+
+If you'd like to connect to a data source which is not yet listed on this page,
+please see the list of [requested drivers](https://github.com/cube-js/cube/issues/7076)
+and [file an issue](https://github.com/cube-js/cube/issues) on GitHub.
+
+You're more than welcome to contribute new drivers as well as new features and
+patches to
+[existing drivers](https://github.com/cube-js/cube/tree/master/packages). Please
+check the
+[contribution guidelines](https://github.com/cube-js/cube/blob/master/CONTRIBUTING.md#contributing-database-drivers)
+and join the `#contributing-to-cube` channel in our
+[Slack community](https://slack.cube.dev).
+
+
+[ref-config-multi-data-src]: /admin/connect-to-data/multiple-data-sources
+[ref-driver-factory]: /reference/configuration/config#driver_factory
+[ref-duckdb]: /admin/connect-to-data/data-sources/duckdb
+[link-github-packages]: https://github.com/cube-js/cube/tree/master/packages
+[ref-data-source-concurrency]: /admin/connect-to-data/concurrency#data-sources
diff --git a/docs-mintlify/admin/configuration/data-sources/ksqldb.mdx b/docs-mintlify/admin/connect-to-data/data-sources/ksqldb.mdx
similarity index 95%
rename from docs-mintlify/admin/configuration/data-sources/ksqldb.mdx
rename to docs-mintlify/admin/connect-to-data/data-sources/ksqldb.mdx
index b238040413b9a..6589c74d3a01d 100644
--- a/docs-mintlify/admin/configuration/data-sources/ksqldb.mdx
+++ b/docs-mintlify/admin/connect-to-data/data-sources/ksqldb.mdx
@@ -78,12 +78,12 @@ CUBEJS_DB_PASS=password
| [`CUBEJS_DB_PASS`](/reference/configuration/environment-variables#cubejs_db_pass) | The password used to connect to the ksqlDB. API secret for Confluent Cloud. | A valid database name | ✅ |
| [`CUBEJS_CONCURRENCY`](/reference/configuration/environment-variables#cubejs_concurrency) | The number of [concurrent queries][ref-data-source-concurrency] to the data source | A valid number | ❌ |
-[ref-data-source-concurrency]: /admin/configuration/concurrency#data-source-concurrency
+[ref-data-source-concurrency]: /admin/connect-to-data/concurrency#data-source-concurrency
## Pre-Aggregations Support
ksqlDB supports only
[streaming pre-aggregations](/docs/caching/using-pre-aggregations#streaming-pre-aggregations).
-[ref-powerbi]: /admin/configuration/visualization-tools/powerbi
+[ref-powerbi]: /admin/connect-to-data/visualization-tools/powerbi
[ref-dax-api]: /reference/dax-api
\ No newline at end of file
diff --git a/docs-mintlify/admin/configuration/data-sources/materialize.mdx b/docs-mintlify/admin/connect-to-data/data-sources/materialize.mdx
similarity index 94%
rename from docs-mintlify/admin/configuration/data-sources/materialize.mdx
rename to docs-mintlify/admin/connect-to-data/data-sources/materialize.mdx
index ecd7eea84e179..d5b4c761a5781 100644
--- a/docs-mintlify/admin/configuration/data-sources/materialize.mdx
+++ b/docs-mintlify/admin/connect-to-data/data-sources/materialize.mdx
@@ -45,7 +45,7 @@ CUBEJS_DB_MATERIALIZE_CLUSTER=quickstart
| [`CUBEJS_DB_MATERIALIZE_CLUSTER`](/reference/configuration/environment-variables#cubejs_db_materialize_cluster) | The name of the Materialize cluster to connect to | A valid cluster name | ❌ |
| [`CUBEJS_CONCURRENCY`](/reference/configuration/environment-variables#cubejs_concurrency) | The number of [concurrent queries][ref-data-source-concurrency] to the data source | A valid number | ❌ |
-[ref-data-source-concurrency]: /admin/configuration/concurrency#data-source-concurrency
+[ref-data-source-concurrency]: /admin/connect-to-data/concurrency#data-source-concurrency
## SSL
To enable SSL-encrypted connections between Cube and Materialize, set the
@@ -55,4 +55,4 @@ Database][ref-recipe-enable-ssl].
[materialize]: https://materialize.com/docs/
[materialize-slack]: https://materialize.com/s/chat
-[ref-recipe-enable-ssl]: /admin/configuration/recipes/using-ssl-connections-to-data-source
\ No newline at end of file
+[ref-recipe-enable-ssl]: /recipes/configuration/using-ssl-connections-to-data-source
\ No newline at end of file
diff --git a/docs-mintlify/admin/configuration/data-sources/mongodb.mdx b/docs-mintlify/admin/connect-to-data/data-sources/mongodb.mdx
similarity index 97%
rename from docs-mintlify/admin/configuration/data-sources/mongodb.mdx
rename to docs-mintlify/admin/connect-to-data/data-sources/mongodb.mdx
index 5b29867ce7e54..5ce08892c1a45 100644
--- a/docs-mintlify/admin/configuration/data-sources/mongodb.mdx
+++ b/docs-mintlify/admin/connect-to-data/data-sources/mongodb.mdx
@@ -75,7 +75,7 @@ file][mongobi-with-remote-db].
| [`CUBEJS_DB_MAX_POOL`](/reference/configuration/environment-variables#cubejs_db_max_pool) | The maximum number of concurrent database connections to pool. Default is `8` | A valid number | ❌ |
| [`CUBEJS_CONCURRENCY`](/reference/configuration/environment-variables#cubejs_concurrency) | The number of [concurrent queries][ref-data-source-concurrency] to the data source | A valid number | ❌ |
-[ref-data-source-concurrency]: /admin/configuration/concurrency#data-source-concurrency
+[ref-data-source-concurrency]: /admin/connect-to-data/concurrency#data-source-concurrency
## Pre-Aggregation Feature Support
### count_distinct_approx
@@ -123,7 +123,7 @@ Database][ref-recipe-enable-ssl].
https://cube.dev/blog/building-mongodb-dashboard-using-nodejs
[mongobi-download]: https://www.mongodb.com/download-center/bi-connector
[ref-caching-using-preaggs-build-strats]: /docs/caching/using-pre-aggregations#pre-aggregation-build-strategies
-[ref-recipe-enable-ssl]: /admin/configuration/recipes/using-ssl-connections-to-data-source
+[ref-recipe-enable-ssl]: /recipes/configuration/using-ssl-connections-to-data-source
[ref-schema-ref-types-formats-countdistinctapprox]: /reference/data-modeling/measures#type
[self-preaggs-batching]: #batching
[link-bi-connector]: https://www.mongodb.com/docs/bi-connector/current/
\ No newline at end of file
diff --git a/docs-mintlify/admin/configuration/data-sources/ms-fabric.mdx b/docs-mintlify/admin/connect-to-data/data-sources/ms-fabric.mdx
similarity index 100%
rename from docs-mintlify/admin/configuration/data-sources/ms-fabric.mdx
rename to docs-mintlify/admin/connect-to-data/data-sources/ms-fabric.mdx
diff --git a/docs-mintlify/admin/configuration/data-sources/ms-sql.mdx b/docs-mintlify/admin/connect-to-data/data-sources/ms-sql.mdx
similarity index 96%
rename from docs-mintlify/admin/configuration/data-sources/ms-sql.mdx
rename to docs-mintlify/admin/connect-to-data/data-sources/ms-sql.mdx
index d5c09fde4f830..c5369be6972a8 100644
--- a/docs-mintlify/admin/configuration/data-sources/ms-sql.mdx
+++ b/docs-mintlify/admin/connect-to-data/data-sources/ms-sql.mdx
@@ -40,7 +40,7 @@ CUBEJS_DB_PASS=**********
| [`CUBEJS_DB_MAX_POOL`](/reference/configuration/environment-variables#cubejs_db_max_pool) | The maximum number of concurrent database connections to pool. Default is `8` | A valid number | ❌ |
| [`CUBEJS_CONCURRENCY`](/reference/configuration/environment-variables#cubejs_concurrency) | The number of [concurrent queries][ref-data-source-concurrency] to the data source | A valid number | ❌ |
-[ref-data-source-concurrency]: /admin/configuration/concurrency#data-source-concurrency
+[ref-data-source-concurrency]: /admin/connect-to-data/concurrency#data-source-concurrency
## Pre-Aggregation Feature Support
### count_distinct_approx
@@ -106,6 +106,6 @@ module.exports = {
[mssql]: https://www.microsoft.com/en-gb/sql-server/sql-server-2019
[ref-caching-using-preaggs-build-strats]: /docs/caching/using-pre-aggregations#pre-aggregation-build-strategies
-[ref-recipe-enable-ssl]: /admin/configuration/recipes/using-ssl-connections-to-data-source
+[ref-recipe-enable-ssl]: /recipes/configuration/using-ssl-connections-to-data-source
[ref-schema-ref-types-formats-countdistinctapprox]: /reference/data-modeling/measures#type
[self-preaggs-simple]: #simple
diff --git a/docs-mintlify/admin/configuration/data-sources/mysql.mdx b/docs-mintlify/admin/connect-to-data/data-sources/mysql.mdx
similarity index 96%
rename from docs-mintlify/admin/configuration/data-sources/mysql.mdx
rename to docs-mintlify/admin/connect-to-data/data-sources/mysql.mdx
index 64c563c22da66..79db4859d134f 100644
--- a/docs-mintlify/admin/configuration/data-sources/mysql.mdx
+++ b/docs-mintlify/admin/connect-to-data/data-sources/mysql.mdx
@@ -40,7 +40,7 @@ CUBEJS_DB_PASS=**********
| [`CUBEJS_DB_MYSQL_USE_NAMED_TIMEZONES`](/reference/configuration/environment-variables#cubejs_db_mysql_use_named_timezones) | The flag to use time zone names or numeric offsets for time zone conversion. Default is `false` | `true`, `false` | ❌ |
| [`CUBEJS_CONCURRENCY`](/reference/configuration/environment-variables#cubejs_concurrency) | The number of [concurrent queries][ref-data-source-concurrency] to the data source | A valid number | ❌ |
-[ref-data-source-concurrency]: /admin/configuration/concurrency#data-source-concurrency
+[ref-data-source-concurrency]: /admin/connect-to-data/concurrency#data-source-concurrency
## Pre-Aggregation Feature Support
### count_distinct_approx
@@ -109,6 +109,6 @@ For additional details, check the [relevant issue](https://github.com/cube-js/cu
[mysql]: https://www.mysql.com/
[ref-caching-using-preaggs-build-strats]: /docs/caching/using-pre-aggregations#pre-aggregation-build-strategies
-[ref-recipe-enable-ssl]: /admin/configuration/recipes/using-ssl-connections-to-data-source
+[ref-recipe-enable-ssl]: /recipes/configuration/using-ssl-connections-to-data-source
[ref-schema-ref-types-formats-countdistinctapprox]: /reference/data-modeling/measures#type
[self-preaggs-batching]: #batching
diff --git a/docs-mintlify/admin/configuration/data-sources/oracle.mdx b/docs-mintlify/admin/connect-to-data/data-sources/oracle.mdx
similarity index 94%
rename from docs-mintlify/admin/configuration/data-sources/oracle.mdx
rename to docs-mintlify/admin/connect-to-data/data-sources/oracle.mdx
index 4e6d73c595264..f9f8378963329 100644
--- a/docs-mintlify/admin/configuration/data-sources/oracle.mdx
+++ b/docs-mintlify/admin/connect-to-data/data-sources/oracle.mdx
@@ -44,7 +44,7 @@ CUBEJS_DB_PASS=**********
| [`CUBEJS_DB_MAX_POOL`](/reference/configuration/environment-variables#cubejs_db_max_pool) | The maximum number of concurrent database connections to pool. Default is `8` | A valid number | ❌ |
| [`CUBEJS_CONCURRENCY`](/reference/configuration/environment-variables#cubejs_concurrency) | The number of [concurrent queries][ref-data-source-concurrency] to the data source | A valid number | ❌ |
-[ref-data-source-concurrency]: /admin/configuration/concurrency#data-source-concurrency
+[ref-data-source-concurrency]: /admin/connect-to-data/concurrency#data-source-concurrency
## SSL
To enable SSL-encrypted connections between Cube and Oracle, set the
@@ -53,4 +53,4 @@ configure custom certificates, please check out [Enable SSL Connections to the
Database][ref-recipe-enable-ssl].
[oracle]: https://www.oracle.com/uk/index.html
-[ref-recipe-enable-ssl]: /admin/configuration/recipes/using-ssl-connections-to-data-source
\ No newline at end of file
+[ref-recipe-enable-ssl]: /recipes/configuration/using-ssl-connections-to-data-source
\ No newline at end of file
diff --git a/docs-mintlify/admin/configuration/data-sources/pinot.mdx b/docs-mintlify/admin/connect-to-data/data-sources/pinot.mdx
similarity index 98%
rename from docs-mintlify/admin/configuration/data-sources/pinot.mdx
rename to docs-mintlify/admin/connect-to-data/data-sources/pinot.mdx
index 7a4ade2550755..adee4c7920cd3 100644
--- a/docs-mintlify/admin/configuration/data-sources/pinot.mdx
+++ b/docs-mintlify/admin/connect-to-data/data-sources/pinot.mdx
@@ -53,7 +53,7 @@ CUBEJS_DB_PASS=**********
| [`CUBEJS_DB_PINOT_AUTH_TOKEN`](/reference/configuration/environment-variables#cubejs_db_pinot_auth_token) | The authentication token for StarTree | A valid token | ❌ |
| [`CUBEJS_CONCURRENCY`](/reference/configuration/environment-variables#cubejs_concurrency) | The number of [concurrent queries][ref-data-source-concurrency] to the data source | A valid number | ❌ |
-[ref-data-source-concurrency]: /admin/configuration/concurrency#data-source-concurrency
+[ref-data-source-concurrency]: /admin/connect-to-data/concurrency#data-source-concurrency
## Pre-Aggregation Feature Support
### count_distinct_approx
diff --git a/docs-mintlify/admin/configuration/data-sources/postgres.mdx b/docs-mintlify/admin/connect-to-data/data-sources/postgres.mdx
similarity index 97%
rename from docs-mintlify/admin/configuration/data-sources/postgres.mdx
rename to docs-mintlify/admin/connect-to-data/data-sources/postgres.mdx
index 92646fee05986..5f433000bace4 100644
--- a/docs-mintlify/admin/configuration/data-sources/postgres.mdx
+++ b/docs-mintlify/admin/connect-to-data/data-sources/postgres.mdx
@@ -39,7 +39,7 @@ CUBEJS_DB_PASS=**********
| [`CUBEJS_DB_MAX_POOL`](/reference/configuration/environment-variables#cubejs_db_max_pool) | The maximum number of concurrent database connections to pool. Default is `8` | A valid number | ❌ |
| [`CUBEJS_CONCURRENCY`](/reference/configuration/environment-variables#cubejs_concurrency) | The number of [concurrent queries][ref-data-source-concurrency] to the data source | A valid number | ❌ |
-[ref-data-source-concurrency]: /admin/configuration/concurrency#data-source-concurrency
+[ref-data-source-concurrency]: /admin/connect-to-data/concurrency#data-source-concurrency
## Pre-Aggregation Feature Support
### count_distinct_approx
@@ -127,7 +127,7 @@ module.exports = {
https://help.heroku.com/3DELT3RK/why-can-t-my-third-party-utility-connect-to-heroku-postgres-with-ssl
[postgres]: https://www.postgresql.org/
[ref-caching-using-preaggs-build-strats]: /docs/caching/using-pre-aggregations#pre-aggregation-build-strategies
-[ref-recipe-enable-ssl]: /admin/configuration/recipes/using-ssl-connections-to-data-source
+[ref-recipe-enable-ssl]: /recipes/configuration/using-ssl-connections-to-data-source
[ref-schema-ref-types-formats-countdistinctapprox]: /reference/data-modeling/measures#type
[self-preaggs-batching]: #batching
[self-ssl]: #ssl
diff --git a/docs-mintlify/admin/configuration/data-sources/presto.mdx b/docs-mintlify/admin/connect-to-data/data-sources/presto.mdx
similarity index 97%
rename from docs-mintlify/admin/configuration/data-sources/presto.mdx
rename to docs-mintlify/admin/connect-to-data/data-sources/presto.mdx
index dc429a76028a8..e34f2fcfaeccd 100644
--- a/docs-mintlify/admin/configuration/data-sources/presto.mdx
+++ b/docs-mintlify/admin/connect-to-data/data-sources/presto.mdx
@@ -47,7 +47,7 @@ CUBEJS_DB_SCHEMA=my_presto_schema
| [`CUBEJS_DB_EXPORT_BUCKET_AWS_REGION`](/reference/configuration/environment-variables#cubejs_db_export_bucket_aws_region) | The AWS region to use for export bucket writes | A valid AWS region | ❌ |
| [`CUBEJS_DB_EXPORT_GCS_CREDENTIALS`](/reference/configuration/environment-variables#cubejs_db_export_gcs_credentials) | A Base64 encoded JSON key file for connecting to Google Cloud Storage | A valid Google Cloud JSON key file, encoded as a Base64 string | ❌ |
-[ref-data-source-concurrency]: /admin/configuration/concurrency#data-source-concurrency
+[ref-data-source-concurrency]: /admin/connect-to-data/concurrency#data-source-concurrency
## Pre-Aggregation Feature Support
### count_distinct_approx
@@ -129,6 +129,6 @@ Database][ref-recipe-enable-ssl].
[presto-docs-approx-agg-fns]:
https://prestodb.io/docs/current/functions/aggregate.html
[ref-caching-using-preaggs-build-strats]: /docs/caching/using-pre-aggregations#pre-aggregation-build-strategies
-[ref-recipe-enable-ssl]: /admin/configuration/recipes/using-ssl-connections-to-data-source
+[ref-recipe-enable-ssl]: /recipes/configuration/using-ssl-connections-to-data-source
[ref-schema-ref-types-formats-countdistinctapprox]: /reference/data-modeling/measures#type
[self-preaggs-simple]: #simple
diff --git a/docs-mintlify/admin/configuration/data-sources/questdb.mdx b/docs-mintlify/admin/connect-to-data/data-sources/questdb.mdx
similarity index 97%
rename from docs-mintlify/admin/configuration/data-sources/questdb.mdx
rename to docs-mintlify/admin/connect-to-data/data-sources/questdb.mdx
index aa4a649131b99..d6c2eed022441 100644
--- a/docs-mintlify/admin/configuration/data-sources/questdb.mdx
+++ b/docs-mintlify/admin/connect-to-data/data-sources/questdb.mdx
@@ -77,7 +77,7 @@ Access Cube at http://localhost:4000 & QuestDB at http://localhost:9000
| [`CUBEJS_DB_MAX_POOL`](/reference/configuration/environment-variables#cubejs_db_max_pool) | The maximum number of concurrent database connections to pool. Default is `8` | A valid number | ❌ |
| [`CUBEJS_CONCURRENCY`](/reference/configuration/environment-variables#cubejs_concurrency) | The number of [concurrent queries][ref-data-source-concurrency] to the data source | A valid number | ❌ |
-[ref-data-source-concurrency]: /admin/configuration/concurrency#data-source-concurrency
+[ref-data-source-concurrency]: /admin/connect-to-data/concurrency#data-source-concurrency
[questdb]: https://questdb.io/
[questdb-slack]: https://slack.questdb.io/
[time-series-database-glossary]: https://questdb.io/glossary/time-series/database/
diff --git a/docs-mintlify/admin/configuration/data-sources/risingwave.mdx b/docs-mintlify/admin/connect-to-data/data-sources/risingwave.mdx
similarity index 96%
rename from docs-mintlify/admin/configuration/data-sources/risingwave.mdx
rename to docs-mintlify/admin/connect-to-data/data-sources/risingwave.mdx
index 2c6edbec698b3..423ca671c5142 100644
--- a/docs-mintlify/admin/configuration/data-sources/risingwave.mdx
+++ b/docs-mintlify/admin/connect-to-data/data-sources/risingwave.mdx
@@ -45,7 +45,7 @@ CUBEJS_DB_PASS=risingwave_password
| [`CUBEJS_DB_MAX_POOL`](/reference/configuration/environment-variables#cubejs_db_max_pool) | The maximum number of concurrent database connections to pool. Default is `8` | A valid number | ❌ |
| [`CUBEJS_CONCURRENCY`](/reference/configuration/environment-variables#cubejs_concurrency) | The number of [concurrent queries][ref-data-source-concurrency] to the data source | A valid number | ❌ |
-[ref-data-source-concurrency]: /admin/configuration/concurrency#data-source-concurrency
+[ref-data-source-concurrency]: /admin/connect-to-data/concurrency#data-source-concurrency
## Pre-aggregation feature support
### `count_distinct_approx`
@@ -85,6 +85,6 @@ RisingWave does not support batching.
RisingWave does not support export buckets.
-[ref-postgres]: /admin/configuration/data-sources/postgres
+[ref-postgres]: /admin/connect-to-data/data-sources/postgres
[ref-caching-using-preaggs-build-strats]: /docs/caching/using-pre-aggregations#pre-aggregation-build-strategies
[ref-schema-ref-types-formats-countdistinctapprox]: /reference/data-modeling/measures#type
\ No newline at end of file
diff --git a/docs-mintlify/admin/configuration/data-sources/singlestore.mdx b/docs-mintlify/admin/connect-to-data/data-sources/singlestore.mdx
similarity index 100%
rename from docs-mintlify/admin/configuration/data-sources/singlestore.mdx
rename to docs-mintlify/admin/connect-to-data/data-sources/singlestore.mdx
diff --git a/docs-mintlify/admin/configuration/data-sources/snowflake.mdx b/docs-mintlify/admin/connect-to-data/data-sources/snowflake.mdx
similarity index 99%
rename from docs-mintlify/admin/configuration/data-sources/snowflake.mdx
rename to docs-mintlify/admin/connect-to-data/data-sources/snowflake.mdx
index 531ade7a4ed68..2a54057340557 100644
--- a/docs-mintlify/admin/configuration/data-sources/snowflake.mdx
+++ b/docs-mintlify/admin/connect-to-data/data-sources/snowflake.mdx
@@ -94,7 +94,7 @@ if [dedicated infrastructure][ref-dedicated-infra] is used. Check out the
| [`CUBEJS_DB_MAX_POOL`](/reference/configuration/environment-variables#cubejs_db_max_pool) | The maximum number of concurrent database connections to pool. Default is `20` | A valid number | ❌ |
| [`CUBEJS_CONCURRENCY`](/reference/configuration/environment-variables#cubejs_concurrency) | The number of [concurrent queries][ref-data-source-concurrency] to the data source | A valid number | ❌ |
-[ref-data-source-concurrency]: /admin/configuration/concurrency#data-source-concurrency
+[ref-data-source-concurrency]: /admin/connect-to-data/concurrency#data-source-concurrency
## Pre-Aggregation Feature Support
### count_distinct_approx
diff --git a/docs-mintlify/admin/configuration/data-sources/sqlite.mdx b/docs-mintlify/admin/connect-to-data/data-sources/sqlite.mdx
similarity index 94%
rename from docs-mintlify/admin/configuration/data-sources/sqlite.mdx
rename to docs-mintlify/admin/connect-to-data/data-sources/sqlite.mdx
index e061b3b3280b8..8a3f501d4de8d 100644
--- a/docs-mintlify/admin/configuration/data-sources/sqlite.mdx
+++ b/docs-mintlify/admin/connect-to-data/data-sources/sqlite.mdx
@@ -32,7 +32,7 @@ CUBEJS_DB_NAME=my_sqlite_database
| [`CUBEJS_DB_MAX_POOL`](/reference/configuration/environment-variables#cubejs_db_max_pool) | The maximum number of concurrent database connections to pool. Default is `8` | A valid number | ❌ |
| [`CUBEJS_CONCURRENCY`](/reference/configuration/environment-variables#cubejs_concurrency) | The number of [concurrent queries][ref-data-source-concurrency] to the data source | A valid number | ❌ |
-[ref-data-source-concurrency]: /admin/configuration/concurrency#data-source-concurrency
+[ref-data-source-concurrency]: /admin/connect-to-data/concurrency#data-source-concurrency
## SSL
SQLite does not support SSL connections.
diff --git a/docs-mintlify/admin/configuration/data-sources/trino.mdx b/docs-mintlify/admin/connect-to-data/data-sources/trino.mdx
similarity index 97%
rename from docs-mintlify/admin/configuration/data-sources/trino.mdx
rename to docs-mintlify/admin/connect-to-data/data-sources/trino.mdx
index 00a2d235d93de..3ddc9878ddfe5 100644
--- a/docs-mintlify/admin/configuration/data-sources/trino.mdx
+++ b/docs-mintlify/admin/connect-to-data/data-sources/trino.mdx
@@ -47,7 +47,7 @@ CUBEJS_DB_SCHEMA=my_trino_schema
| [`CUBEJS_DB_EXPORT_BUCKET_AWS_REGION`](/reference/configuration/environment-variables#cubejs_db_export_bucket_aws_region) | The AWS region to use for export bucket writes | A valid AWS region | ❌ |
| [`CUBEJS_DB_EXPORT_GCS_CREDENTIALS`](/reference/configuration/environment-variables#cubejs_db_export_gcs_credentials) | A Base64 encoded JSON key file for connecting to Google Cloud Storage | A valid Google Cloud JSON key file, encoded as a Base64 string | ❌ |
-[ref-data-source-concurrency]: /admin/configuration/concurrency#data-source-concurrency
+[ref-data-source-concurrency]: /admin/connect-to-data/concurrency#data-source-concurrency
## Pre-Aggregation Feature Support
### count_distinct_approx
@@ -130,5 +130,5 @@ Database][ref-recipe-enable-ssl].
[trino]: https://trino.io/
[trino-docs-approx-agg-fns]:
https://trino.io/docs/current/functions/aggregate.html#approximate-aggregate-functions
-[ref-recipe-enable-ssl]: /admin/configuration/recipes/using-ssl-connections-to-data-source
+[ref-recipe-enable-ssl]: /recipes/configuration/using-ssl-connections-to-data-source
[ref-schema-ref-types-formats-countdistinctapprox]: /reference/data-modeling/measures#type
\ No newline at end of file
diff --git a/docs-mintlify/admin/configuration/data-sources/vertica.mdx b/docs-mintlify/admin/connect-to-data/data-sources/vertica.mdx
similarity index 95%
rename from docs-mintlify/admin/configuration/data-sources/vertica.mdx
rename to docs-mintlify/admin/connect-to-data/data-sources/vertica.mdx
index be03acc616e5d..1f708886c9ae8 100644
--- a/docs-mintlify/admin/configuration/data-sources/vertica.mdx
+++ b/docs-mintlify/admin/connect-to-data/data-sources/vertica.mdx
@@ -41,7 +41,7 @@ CUBEJS_DB_SCHEMA=my_vertica_schema
| [`CUBEJS_DB_MAX_POOL`](/reference/configuration/environment-variables#cubejs_db_max_pool) | The maximum number of concurrent database connections to pool. Default is `8` | A valid number | ❌ |
| [`CUBEJS_CONCURRENCY`](/reference/configuration/environment-variables#cubejs_concurrency) | The number of [concurrent queries][ref-data-source-concurrency] to the data source | A valid number | ❌ |
-[ref-data-source-concurrency]: /admin/configuration/concurrency#data-source-concurrency
+[ref-data-source-concurrency]: /admin/connect-to-data/concurrency#data-source-concurrency
## SSL
To enable SSL-encrypted connections between Cube and Verica, set the
@@ -51,4 +51,4 @@ Database][ref-recipe-enable-ssl].
[opentext-adb]: https://www.opentext.com/products/analytics-database?o=vert
[vertica]: https://www.vertica.com/documentation/vertica/all/
-[ref-recipe-enable-ssl]: /admin/configuration/recipes/using-ssl-connections-to-data-source
\ No newline at end of file
+[ref-recipe-enable-ssl]: /recipes/configuration/using-ssl-connections-to-data-source
\ No newline at end of file
diff --git a/docs-mintlify/admin/connect-to-data/index.mdx b/docs-mintlify/admin/connect-to-data/index.mdx
new file mode 100644
index 0000000000000..7973e9f3eb124
--- /dev/null
+++ b/docs-mintlify/admin/connect-to-data/index.mdx
@@ -0,0 +1,54 @@
+---
+title: Connect to data
+sidebarTitle: Overview
+description: Connect your data warehouse or database to Cube and configure connection settings.
+mode: wide
+---
+
+# Connect to data
+
+Connect your data warehouse, database, or query engine to Cube. Once connected,
+you can configure multiple data sources, tune concurrency, and set up
+multitenancy.
+
+## Getting started
+
+
+
+ Choose and configure a data warehouse, query engine, or other data source.
+
+
+ Connect to multiple databases so different cubes reference different sources.
+
+
+ Optimize query queue settings and control load on your data sources.
+
+
+
+## Advanced configuration
+
+
+
+ Isolate tenants across databases, schemas, and caching layers.
+
+
+ Connect BI tools like Tableau, Power BI, Metabase, and others.
+
+
+ Reference secrets and connection settings from environment variables.
+
+
+
+## Recipes
+
+
+
+ Enable TLS to upstream databases with custom CA bundles and client certificates.
+
+
+ Reduce warehouse spend through pre-aggregation strategy and workload-aware settings.
+
+
+ Route each tenant to its own database while reusing a single data model.
+
+
diff --git a/docs-mintlify/admin/configuration/multiple-data-sources.mdx b/docs-mintlify/admin/connect-to-data/multiple-data-sources.mdx
similarity index 92%
rename from docs-mintlify/admin/configuration/multiple-data-sources.mdx
rename to docs-mintlify/admin/connect-to-data/multiple-data-sources.mdx
index 339bea999d399..aed2cd6eb5de7 100644
--- a/docs-mintlify/admin/configuration/multiple-data-sources.mdx
+++ b/docs-mintlify/admin/connect-to-data/multiple-data-sources.mdx
@@ -97,15 +97,15 @@ cube(`orders_from_other_data_source`, {
[ref-config-ref-env]: /reference/configuration/environment-variables
[ref-config-ref-driverfactory]: /reference/configuration/config#driverfactory
-[ref-config-db]: /admin/configuration/data-sources
-[ref-config-multitenancy]: /admin/configuration/multitenancy#multitenancy-multitenancy-vs-multiple-data-sources
+[ref-config-db]: /admin/connect-to-data/data-sources
+[ref-config-multitenancy]: /admin/connect-to-data/multitenancy#multitenancy-multitenancy-vs-multiple-data-sources
## Cube Cloud
Follow these steps to connect to multiple data sources in Cube Cloud:
- Set up the `default` database connection when creating a new deployment.
- Ensure you have the correct
- [multitenancy](/admin/configuration/multitenancy) configuration in
+ [multitenancy](/admin/connect-to-data/multitenancy) configuration in
your `cube.js` file.
- Configure the corresponding environment variables in **Settings →
Environment variables**.
diff --git a/docs-mintlify/admin/configuration/multitenancy.mdx b/docs-mintlify/admin/connect-to-data/multitenancy.mdx
similarity index 96%
rename from docs-mintlify/admin/configuration/multitenancy.mdx
rename to docs-mintlify/admin/connect-to-data/multitenancy.mdx
index b25dc32ac294d..dc0311dcd8779 100644
--- a/docs-mintlify/admin/configuration/multitenancy.mdx
+++ b/docs-mintlify/admin/connect-to-data/multitenancy.mdx
@@ -383,21 +383,21 @@ input.
-[ref-config]: /admin/configuration#configuration-options
+[ref-config]: /admin/connect-to-data#configuration-options
[ref-config-opts]: /reference/configuration/config
-[ref-config-db]: /admin/configuration/data-sources
+[ref-config-db]: /admin/connect-to-data/data-sources
[ref-config-driverfactory]: /reference/configuration/config#driver_factory
[ref-config-repofactory]: /reference/configuration/config#repository_factory
[ref-config-preagg-schema]: /reference/configuration/config#pre_aggregations_schema
[ref-config-ctx-to-appid]: /reference/configuration/config#context_to_app_id
[ref-config-ctx-to-orch-id]: /reference/configuration/config#context_to_orchestrator_id
-[ref-config-multi-data-src]: /admin/configuration/advanced/multiple-data-sources
+[ref-config-multi-data-src]: /admin/connect-to-data/advanced/multiple-data-sources
[ref-config-query-rewrite]: /reference/configuration/config#query_rewrite
[ref-config-refresh-ctx]: /reference/configuration/config#scheduled_refresh_contexts
[ref-config-refresh-tz]: /reference/configuration/config#scheduled_refresh_timezones
-[ref-config-security-ctx]: /access-security/access-control/context
-[ref-security]: /access-security/access-control
+[ref-config-security-ctx]: /docs/data-modeling/access-control/context
+[ref-security]: /docs/data-modeling/access-control
[ref-cube-datasource]: /reference/data-modeling/cube#data_source
[ref-cube-security-ctx]: /reference/data-modeling/context-variables#compile_context
-[ref-per-tenant-data-source-recipe]: /admin/configuration/recipes/multiple-sources-same-schema
-[ref-per-tenant-data-model-recipe]: /admin/configuration/recipes/custom-data-model-per-tenant
\ No newline at end of file
+[ref-per-tenant-data-source-recipe]: /recipes/configuration/multiple-sources-same-schema
+[ref-per-tenant-data-model-recipe]: /recipes/configuration/custom-data-model-per-tenant
\ No newline at end of file
diff --git a/docs-mintlify/admin/configuration/visualization-tools/appsmith.mdx b/docs-mintlify/admin/connect-to-data/visualization-tools/appsmith.mdx
similarity index 96%
rename from docs-mintlify/admin/configuration/visualization-tools/appsmith.mdx
rename to docs-mintlify/admin/connect-to-data/visualization-tools/appsmith.mdx
index 354c11adfc0fd..21a809c2ab1cc 100644
--- a/docs-mintlify/admin/configuration/visualization-tools/appsmith.mdx
+++ b/docs-mintlify/admin/connect-to-data/visualization-tools/appsmith.mdx
@@ -36,7 +36,7 @@ would be `HOST/cubejs-api/v1`. Please refer to the
You will also need to generate a JSON Web Token that would be used to
authenticate requests to Cube.
-Please check the [Security page](/access-security/authentication/jwt#generating-json-web-tokens)
+Please check the [Security page](/embedding/authentication/jwt#generating-json-web-tokens)
to learn how to generate a token. We suggest generating a long-lived JWT that
won't expire soon.
diff --git a/docs-mintlify/admin/configuration/visualization-tools/bubble.mdx b/docs-mintlify/admin/connect-to-data/visualization-tools/bubble.mdx
similarity index 97%
rename from docs-mintlify/admin/configuration/visualization-tools/bubble.mdx
rename to docs-mintlify/admin/connect-to-data/visualization-tools/bubble.mdx
index 4c2f62b1540de..7d2131339a539 100644
--- a/docs-mintlify/admin/configuration/visualization-tools/bubble.mdx
+++ b/docs-mintlify/admin/connect-to-data/visualization-tools/bubble.mdx
@@ -36,7 +36,7 @@ would be `HOST/cubejs-api/v1`. Please refer to the
You will also need to generate a JSON Web Token that would be used to
authenticate requests to Cube.
-Please check the [Security page](/access-security/authentication/jwt#generating-json-web-tokens)
+Please check the [Security page](/embedding/authentication/jwt#generating-json-web-tokens)
to learn how to generate a token. We suggest generating a long-lived JWT that
won't expire soon.
diff --git a/docs-mintlify/admin/configuration/visualization-tools/budibase.mdx b/docs-mintlify/admin/connect-to-data/visualization-tools/budibase.mdx
similarity index 97%
rename from docs-mintlify/admin/configuration/visualization-tools/budibase.mdx
rename to docs-mintlify/admin/connect-to-data/visualization-tools/budibase.mdx
index 8931134f65d20..2c1020a303ebe 100644
--- a/docs-mintlify/admin/configuration/visualization-tools/budibase.mdx
+++ b/docs-mintlify/admin/connect-to-data/visualization-tools/budibase.mdx
@@ -37,7 +37,7 @@ would be `HOST/cubejs-api/v1`. Please refer to the
You will also need to generate a JSON Web Token that would be used to
authenticate requests to Cube.
-Please check the [Security page](/access-security/authentication/jwt#generating-json-web-tokens)
+Please check the [Security page](/embedding/authentication/jwt#generating-json-web-tokens)
to learn how to generate a token. We suggest generating a long-lived JWT that
won't expire soon.
diff --git a/docs-mintlify/admin/configuration/visualization-tools/deepnote.mdx b/docs-mintlify/admin/connect-to-data/visualization-tools/deepnote.mdx
similarity index 100%
rename from docs-mintlify/admin/configuration/visualization-tools/deepnote.mdx
rename to docs-mintlify/admin/connect-to-data/visualization-tools/deepnote.mdx
diff --git a/docs-mintlify/admin/configuration/visualization-tools/excel.mdx b/docs-mintlify/admin/connect-to-data/visualization-tools/excel.mdx
similarity index 100%
rename from docs-mintlify/admin/configuration/visualization-tools/excel.mdx
rename to docs-mintlify/admin/connect-to-data/visualization-tools/excel.mdx
diff --git a/docs-mintlify/admin/configuration/visualization-tools/google-sheets.mdx b/docs-mintlify/admin/connect-to-data/visualization-tools/google-sheets.mdx
similarity index 100%
rename from docs-mintlify/admin/configuration/visualization-tools/google-sheets.mdx
rename to docs-mintlify/admin/connect-to-data/visualization-tools/google-sheets.mdx
diff --git a/docs-mintlify/admin/configuration/visualization-tools/hashboard.mdx b/docs-mintlify/admin/connect-to-data/visualization-tools/hashboard.mdx
similarity index 100%
rename from docs-mintlify/admin/configuration/visualization-tools/hashboard.mdx
rename to docs-mintlify/admin/connect-to-data/visualization-tools/hashboard.mdx
diff --git a/docs-mintlify/admin/configuration/visualization-tools/hex.mdx b/docs-mintlify/admin/connect-to-data/visualization-tools/hex.mdx
similarity index 100%
rename from docs-mintlify/admin/configuration/visualization-tools/hex.mdx
rename to docs-mintlify/admin/connect-to-data/visualization-tools/hex.mdx
diff --git a/docs-mintlify/admin/configuration/visualization-tools/hightouch.mdx b/docs-mintlify/admin/connect-to-data/visualization-tools/hightouch.mdx
similarity index 100%
rename from docs-mintlify/admin/configuration/visualization-tools/hightouch.mdx
rename to docs-mintlify/admin/connect-to-data/visualization-tools/hightouch.mdx
diff --git a/docs-mintlify/admin/configuration/visualization-tools/index.mdx b/docs-mintlify/admin/connect-to-data/visualization-tools/index.mdx
similarity index 100%
rename from docs-mintlify/admin/configuration/visualization-tools/index.mdx
rename to docs-mintlify/admin/connect-to-data/visualization-tools/index.mdx
diff --git a/docs-mintlify/admin/configuration/visualization-tools/jupyter.mdx b/docs-mintlify/admin/connect-to-data/visualization-tools/jupyter.mdx
similarity index 100%
rename from docs-mintlify/admin/configuration/visualization-tools/jupyter.mdx
rename to docs-mintlify/admin/connect-to-data/visualization-tools/jupyter.mdx
diff --git a/docs-mintlify/admin/configuration/visualization-tools/klipfolio.mdx b/docs-mintlify/admin/connect-to-data/visualization-tools/klipfolio.mdx
similarity index 100%
rename from docs-mintlify/admin/configuration/visualization-tools/klipfolio.mdx
rename to docs-mintlify/admin/connect-to-data/visualization-tools/klipfolio.mdx
diff --git a/docs-mintlify/admin/configuration/visualization-tools/langchain.mdx b/docs-mintlify/admin/connect-to-data/visualization-tools/langchain.mdx
similarity index 96%
rename from docs-mintlify/admin/configuration/visualization-tools/langchain.mdx
rename to docs-mintlify/admin/connect-to-data/visualization-tools/langchain.mdx
index 3f7976f762e33..19a36d04b4df7 100644
--- a/docs-mintlify/admin/configuration/visualization-tools/langchain.mdx
+++ b/docs-mintlify/admin/connect-to-data/visualization-tools/langchain.mdx
@@ -46,4 +46,4 @@ on GitHub.
[langchain-docs-cube]:
https://python.langchain.com/docs/integrations/document_loaders/cube_semantic#example
[ref-rest-api]: /reference/rest-api
-[ref-jwt]: /access-security/access-control#generating-json-web-tokens-jwt
\ No newline at end of file
+[ref-jwt]: /docs/data-modeling/access-control#generating-json-web-tokens-jwt
\ No newline at end of file
diff --git a/docs-mintlify/admin/configuration/visualization-tools/looker-studio.mdx b/docs-mintlify/admin/connect-to-data/visualization-tools/looker-studio.mdx
similarity index 100%
rename from docs-mintlify/admin/configuration/visualization-tools/looker-studio.mdx
rename to docs-mintlify/admin/connect-to-data/visualization-tools/looker-studio.mdx
diff --git a/docs-mintlify/admin/configuration/visualization-tools/metabase.mdx b/docs-mintlify/admin/connect-to-data/visualization-tools/metabase.mdx
similarity index 100%
rename from docs-mintlify/admin/configuration/visualization-tools/metabase.mdx
rename to docs-mintlify/admin/connect-to-data/visualization-tools/metabase.mdx
diff --git a/docs-mintlify/admin/configuration/visualization-tools/observable.mdx b/docs-mintlify/admin/connect-to-data/visualization-tools/observable.mdx
similarity index 98%
rename from docs-mintlify/admin/configuration/visualization-tools/observable.mdx
rename to docs-mintlify/admin/connect-to-data/visualization-tools/observable.mdx
index 251f007ec09b9..a93a7f8fea99c 100644
--- a/docs-mintlify/admin/configuration/visualization-tools/observable.mdx
+++ b/docs-mintlify/admin/connect-to-data/visualization-tools/observable.mdx
@@ -89,7 +89,7 @@ would be `HOST/cubejs-api/v1`. Please refer to the
You will also need to generate a JSON Web Token that would be used to
authenticate requests to Cube.
-Please check the [Security page](/access-security/authentication/jwt#generating-json-web-tokens)
+Please check the [Security page](/embedding/authentication/jwt#generating-json-web-tokens)
to learn how to generate a token. We suggest generating a long-lived JWT that
won't expire soon.
diff --git a/docs-mintlify/admin/configuration/visualization-tools/powerbi.mdx b/docs-mintlify/admin/connect-to-data/visualization-tools/powerbi.mdx
similarity index 93%
rename from docs-mintlify/admin/configuration/visualization-tools/powerbi.mdx
rename to docs-mintlify/admin/connect-to-data/visualization-tools/powerbi.mdx
index 29f6211da4143..8bf028f2e2558 100644
--- a/docs-mintlify/admin/configuration/visualization-tools/powerbi.mdx
+++ b/docs-mintlify/admin/connect-to-data/visualization-tools/powerbi.mdx
@@ -81,8 +81,8 @@ than the DAX API. However, this is the only option when using Cube Core.
[ref-integrations-apis]: /docs/workspace/integrations#view-api-credentials
[ref-sql-api]: /reference/sql-api
[ref-sls]: /docs/integrations/semantic-layer-sync
-[ref-kerberos]: /access-security/authentication/kerberos
-[ref-ntlm]: /access-security/authentication/ntlm
-[ref-ntlm-desktop]: /access-security/authentication/ntlm#power-bi-desktop
+[ref-kerberos]: /docs/integrations/power-bi/kerberos
+[ref-ntlm]: /docs/integrations/power-bi/ntlm
+[ref-ntlm-desktop]: /docs/integrations/power-bi/ntlm#power-bi-desktop
[link-powerbi-connection]: https://learn.microsoft.com/en-us/power-bi/connect-data/service-live-connect-dq-datasets
-[ref-opdg]: /access-security/authentication/ntlm#configuration
\ No newline at end of file
+[ref-opdg]: /docs/integrations/power-bi/ntlm#configuration
\ No newline at end of file
diff --git a/docs-mintlify/admin/configuration/visualization-tools/push-ai.mdx b/docs-mintlify/admin/connect-to-data/visualization-tools/push-ai.mdx
similarity index 100%
rename from docs-mintlify/admin/configuration/visualization-tools/push-ai.mdx
rename to docs-mintlify/admin/connect-to-data/visualization-tools/push-ai.mdx
diff --git a/docs-mintlify/admin/configuration/visualization-tools/qlik-sense.mdx b/docs-mintlify/admin/connect-to-data/visualization-tools/qlik-sense.mdx
similarity index 100%
rename from docs-mintlify/admin/configuration/visualization-tools/qlik-sense.mdx
rename to docs-mintlify/admin/connect-to-data/visualization-tools/qlik-sense.mdx
diff --git a/docs-mintlify/admin/configuration/visualization-tools/quicksight.mdx b/docs-mintlify/admin/connect-to-data/visualization-tools/quicksight.mdx
similarity index 100%
rename from docs-mintlify/admin/configuration/visualization-tools/quicksight.mdx
rename to docs-mintlify/admin/connect-to-data/visualization-tools/quicksight.mdx
diff --git a/docs-mintlify/admin/configuration/visualization-tools/retool.mdx b/docs-mintlify/admin/connect-to-data/visualization-tools/retool.mdx
similarity index 100%
rename from docs-mintlify/admin/configuration/visualization-tools/retool.mdx
rename to docs-mintlify/admin/connect-to-data/visualization-tools/retool.mdx
diff --git a/docs-mintlify/admin/configuration/visualization-tools/rudderstack.mdx b/docs-mintlify/admin/connect-to-data/visualization-tools/rudderstack.mdx
similarity index 100%
rename from docs-mintlify/admin/configuration/visualization-tools/rudderstack.mdx
rename to docs-mintlify/admin/connect-to-data/visualization-tools/rudderstack.mdx
diff --git a/docs-mintlify/admin/configuration/visualization-tools/sigma.mdx b/docs-mintlify/admin/connect-to-data/visualization-tools/sigma.mdx
similarity index 100%
rename from docs-mintlify/admin/configuration/visualization-tools/sigma.mdx
rename to docs-mintlify/admin/connect-to-data/visualization-tools/sigma.mdx
diff --git a/docs-mintlify/admin/configuration/visualization-tools/steep.mdx b/docs-mintlify/admin/connect-to-data/visualization-tools/steep.mdx
similarity index 100%
rename from docs-mintlify/admin/configuration/visualization-tools/steep.mdx
rename to docs-mintlify/admin/connect-to-data/visualization-tools/steep.mdx
diff --git a/docs-mintlify/admin/configuration/visualization-tools/streamlit.mdx b/docs-mintlify/admin/connect-to-data/visualization-tools/streamlit.mdx
similarity index 100%
rename from docs-mintlify/admin/configuration/visualization-tools/streamlit.mdx
rename to docs-mintlify/admin/connect-to-data/visualization-tools/streamlit.mdx
diff --git a/docs-mintlify/admin/configuration/visualization-tools/superset.mdx b/docs-mintlify/admin/connect-to-data/visualization-tools/superset.mdx
similarity index 100%
rename from docs-mintlify/admin/configuration/visualization-tools/superset.mdx
rename to docs-mintlify/admin/connect-to-data/visualization-tools/superset.mdx
diff --git a/docs-mintlify/admin/configuration/visualization-tools/tableau.mdx b/docs-mintlify/admin/connect-to-data/visualization-tools/tableau.mdx
similarity index 100%
rename from docs-mintlify/admin/configuration/visualization-tools/tableau.mdx
rename to docs-mintlify/admin/connect-to-data/visualization-tools/tableau.mdx
diff --git a/docs-mintlify/admin/configuration/visualization-tools/thoughtspot.mdx b/docs-mintlify/admin/connect-to-data/visualization-tools/thoughtspot.mdx
similarity index 100%
rename from docs-mintlify/admin/configuration/visualization-tools/thoughtspot.mdx
rename to docs-mintlify/admin/connect-to-data/visualization-tools/thoughtspot.mdx
diff --git a/docs-mintlify/admin/configuration/visualization-tools/unity-catalog.mdx b/docs-mintlify/admin/connect-to-data/visualization-tools/unity-catalog.mdx
similarity index 100%
rename from docs-mintlify/admin/configuration/visualization-tools/unity-catalog.mdx
rename to docs-mintlify/admin/connect-to-data/visualization-tools/unity-catalog.mdx
diff --git a/docs-mintlify/admin/deployment/auto-suspension.mdx b/docs-mintlify/admin/deployment/auto-suspension.mdx
index 041b8c883a9e9..67b9112253f45 100644
--- a/docs-mintlify/admin/deployment/auto-suspension.mdx
+++ b/docs-mintlify/admin/deployment/auto-suspension.mdx
@@ -121,7 +121,7 @@ response times to be significantly longer than usual.
[ref-deployment-pricing]: /admin/pricing
[ref-monitoring]: /admin/deployment/monitoring
[ref-data-model]: /docs/data-modeling/overview
-[ref-multitenancy]: /admin/configuration/multitenancy
+[ref-multitenancy]: /admin/connect-to-data/multitenancy
[self-effects]: #effects-on-experience
[ref-refresh-worker]: /docs/deployment#refresh-worker
[ref-sls]: /docs/integrations/semantic-layer-sync#on-schedule
diff --git a/docs-mintlify/admin/deployment/core.mdx b/docs-mintlify/admin/deployment/core.mdx
index ad80df25cc5b9..90a4708729385 100644
--- a/docs-mintlify/admin/deployment/core.mdx
+++ b/docs-mintlify/admin/deployment/core.mdx
@@ -524,7 +524,7 @@ data source usage.
[blog-migrate-to-cube-cloud]:
https://cube.dev/blog/migrating-from-self-hosted-to-cube-cloud/
[link-cube-cloud]: https://cubecloud.dev
-[link-cubejs-dev-vs-prod]: /admin/configuration#development-mode
+[link-cubejs-dev-vs-prod]: /admin/connect-to-data#development-mode
[link-k8s-healthcheck-api]:
https://kubernetes.io/docs/reference/using-api/health-checks/
[ref-config-connect-db]: /connecting-to-the-database
@@ -532,17 +532,17 @@ data source usage.
[ref-conf-preaggs-schema]: /reference/configuration/config#pre_aggregations_schema
[ref-env-vars]: /reference/configuration/environment-variables
[ref-schema-ref-preaggs]: /reference/data-modeling/pre-aggregations
-[ref-sec-ctx]: /access-security/access-control/context
+[ref-sec-ctx]: /docs/data-modeling/access-control/context
[ref-config-jwt]: /reference/configuration/config#jwt
[ref-api-readyz]: /reference/rest-api/reference#readyz
[ref-api-livez]: /reference/rest-api/reference#livez
-[ref-data-store-cost-saving-guide]: /admin/configuration/recipes/data-store-cost-saving-guide
+[ref-data-store-cost-saving-guide]: /recipes/configuration/data-store-cost-saving-guide
[medium-letsencrypt-nginx]:
https://pentacent.medium.com/nginx-and-lets-encrypt-with-docker-in-less-than-5-minutes-b4b8a60d3a71
[link-cubejs-docker]: https://hub.docker.com/r/cubejs/cube
[link-docker-app]: https://www.docker.com/products/docker-app
[link-nginx]: https://www.nginx.com/
-[ref-config-files]: /admin/configuration#cubepy-and-cubejs-files
+[ref-config-files]: /admin/connect-to-data#cubepy-and-cubejs-files
[ref-dynamic-data-models]: /docs/data-modeling/dynamic
[ref-config-queryrewrite]: /reference/configuration/config#queryrewrite
[ref-config-sched-ref-ctx]: /reference/configuration/config#scheduledrefreshcontexts
\ No newline at end of file
diff --git a/docs-mintlify/admin/deployment/deployment-types.mdx b/docs-mintlify/admin/deployment/deployment-types.mdx
index 739ec0e1d3d33..81146d0a96a36 100644
--- a/docs-mintlify/admin/deployment/deployment-types.mdx
+++ b/docs-mintlify/admin/deployment/deployment-types.mdx
@@ -182,6 +182,6 @@ and select from the available options:
[ref-ctx-to-app-id]: /reference/configuration/config#context_to_app_id
[ref-limits]: /docs/deployment/cloud/limits#resources
[ref-scalability]: /docs/deployment/cloud/scalability
-[ref-multitenancy]: /admin/configuration/multitenancy
+[ref-multitenancy]: /admin/connect-to-data/multitenancy
[ref-auto-sus]: /docs/deployment/cloud/auto-suspension
[ref-refresh-worker]: /docs/deployment#refresh-worker
\ No newline at end of file
diff --git a/docs-mintlify/admin/deployment/deployments.mdx b/docs-mintlify/admin/deployment/deployments.mdx
index 541e5f807f648..a3eb85036aea0 100644
--- a/docs-mintlify/admin/deployment/deployments.mdx
+++ b/docs-mintlify/admin/deployment/deployments.mdx
@@ -190,17 +190,17 @@ resource consumption in different scenarios.
[ref-dev-mode]: /docs/data-modeling/dev-mode
[ref-auto-sus]: /docs/deployment/cloud/auto-suspension
[ref-total-cost]: /admin/pricing#total-cost-examples
-[ref-data-source]: /admin/configuration/data-sources
-[ref-duckdb]: /admin/configuration/data-sources/duckdb
+[ref-data-source]: /admin/connect-to-data/data-sources
+[ref-duckdb]: /admin/connect-to-data/data-sources/duckdb
[ref-data-model]: /docs/data-modeling/overview
[ref-dynamic-data-models]: /docs/data-modeling/dynamic
-[ref-config-options]: /admin/configuration#configuration-options
+[ref-config-options]: /admin/connect-to-data#configuration-options
[ref-data-model]: /docs/data-modeling/data-model-ide
[ref-playground]: /docs/workspace/playground
[ref-environments]: /admin/deployment/environments
[ref-environments-prod]: /admin/deployment/environments#production-environment
[ref-lts]: /docs/distribution#long-term-support
[link-semver]: https://semver.org
-[ref-data-sources]: /admin/configuration/data-sources
+[ref-data-sources]: /admin/connect-to-data/data-sources
[ref-audit-log]: /admin/monitoring/audit-log
[ref-distribution-versions]: /docs/distribution#versions
\ No newline at end of file
diff --git a/docs-mintlify/admin/deployment/monitoring/index.mdx b/docs-mintlify/admin/deployment/monitoring/index.mdx
index f65885237cfc8..470502d587015 100644
--- a/docs-mintlify/admin/deployment/monitoring/index.mdx
+++ b/docs-mintlify/admin/deployment/monitoring/index.mdx
@@ -372,6 +372,6 @@ Query History export.
[ref-deployments]: /docs/deployment/cloud/deployments
[ref-environments]: /admin/deployment/environments
[ref-apis]: /reference
-[ref-security-context]: /access-security/access-control/context
+[ref-security-context]: /docs/data-modeling/access-control/context
[ref-cache-type]: /docs/caching#cache-type
[ref-query-history-export-recipe]: /admin/monitoring/query-history-export
\ No newline at end of file
diff --git a/docs-mintlify/admin/deployment/providers/aws.mdx b/docs-mintlify/admin/deployment/providers/aws.mdx
index bfad812a374be..23f1191d31d15 100644
--- a/docs-mintlify/admin/deployment/providers/aws.mdx
+++ b/docs-mintlify/admin/deployment/providers/aws.mdx
@@ -17,18 +17,18 @@ This page provides a non-exhaustive lists of these services.
## Data sources
-Cube Cloud integrates with the following [data sources](/admin/configuration/data-sources):
+Cube Cloud integrates with the following [data sources](/admin/connect-to-data/data-sources):
-- [Amazon Redshift](/admin/configuration/data-sources/aws-redshift)
-- [Amazon Athena](/admin/configuration/data-sources/aws-athena)
-- [Postgres](/admin/configuration/data-sources/postgres), [Microsoft SQL Server](/admin/configuration/data-sources/ms-sql), [MySQL](/admin/configuration/data-sources/mysql), and [Oracle](/admin/configuration/data-sources/oracle) on [Amazon RDS](https://aws.amazon.com/rds/)
-- [Hive / SparkSQL](/admin/configuration/data-sources/hive), [Presto](/admin/configuration/data-sources/presto), and [Trino](/admin/configuration/data-sources/trino) on [Amazon EMR](https://aws.amazon.com/emr/)
-- [Elasticsearch](/admin/configuration/data-sources/elasticsearch) on [Amazon OpenSearch Service](https://aws.amazon.com/opensearch-service/)
-- [Parquet, CSV, and JSON files](/admin/configuration/data-sources/duckdb) on [Amazon S3](https://aws.amazon.com/s3/)
+- [Amazon Redshift](/admin/connect-to-data/data-sources/aws-redshift)
+- [Amazon Athena](/admin/connect-to-data/data-sources/aws-athena)
+- [Postgres](/admin/connect-to-data/data-sources/postgres), [Microsoft SQL Server](/admin/connect-to-data/data-sources/ms-sql), [MySQL](/admin/connect-to-data/data-sources/mysql), and [Oracle](/admin/connect-to-data/data-sources/oracle) on [Amazon RDS](https://aws.amazon.com/rds/)
+- [Hive / SparkSQL](/admin/connect-to-data/data-sources/hive), [Presto](/admin/connect-to-data/data-sources/presto), and [Trino](/admin/connect-to-data/data-sources/trino) on [Amazon EMR](https://aws.amazon.com/emr/)
+- [Elasticsearch](/admin/connect-to-data/data-sources/elasticsearch) on [Amazon OpenSearch Service](https://aws.amazon.com/opensearch-service/)
+- [Parquet, CSV, and JSON files](/admin/connect-to-data/data-sources/duckdb) on [Amazon S3](https://aws.amazon.com/s3/)
## Data visualization tools
-Cube Cloud integrates with the following [data visualization tools](/admin/configuration/visualization-tools):
+Cube Cloud integrates with the following [data visualization tools](/admin/connect-to-data/visualization-tools):
- [Amazon QuickSight](https://aws.amazon.com/quicksight/) via [SQL API](/reference/sql-api)
@@ -42,7 +42,7 @@ Cube Cloud integrates with the following [data visualization tools](/admin/confi
## Authentication
-[Amazon Cognito](https://aws.amazon.com/pm/cognito/) can be used for [authentication of API requests](/access-security/access-control/recipes/aws-cognito).
+[Amazon Cognito](https://aws.amazon.com/pm/cognito/) can be used for [authentication of API requests](/docs/data-modeling/access-control/recipes/aws-cognito).
## Monitoring
diff --git a/docs-mintlify/admin/deployment/providers/azure.mdx b/docs-mintlify/admin/deployment/providers/azure.mdx
index 2d77a325ab407..1d2ec56e17248 100644
--- a/docs-mintlify/admin/deployment/providers/azure.mdx
+++ b/docs-mintlify/admin/deployment/providers/azure.mdx
@@ -17,16 +17,16 @@ This page provides a non-exhaustive lists of these services.
## Data sources
-Cube Cloud integrates with the following [data sources](/admin/configuration/data-sources):
+Cube Cloud integrates with the following [data sources](/admin/connect-to-data/data-sources):
-- [Microsoft Fabric](/admin/configuration/data-sources/ms-fabric)
-- [Microsoft SQL Server](/admin/configuration/data-sources/ms-sql) on [Azure SQL](https://azure.microsoft.com/en-us/products/azure-sql)
-- [Postgres](/admin/configuration/data-sources/postgres) on [Azure Database for PostgreSQL](https://azure.microsoft.com/en-us/products/postgresql/)
-- [MySQL](/admin/configuration/data-sources/mysql) on [Azure Database for MySQL](https://azure.microsoft.com/en-us/products/mysql/)
+- [Microsoft Fabric](/admin/connect-to-data/data-sources/ms-fabric)
+- [Microsoft SQL Server](/admin/connect-to-data/data-sources/ms-sql) on [Azure SQL](https://azure.microsoft.com/en-us/products/azure-sql)
+- [Postgres](/admin/connect-to-data/data-sources/postgres) on [Azure Database for PostgreSQL](https://azure.microsoft.com/en-us/products/postgresql/)
+- [MySQL](/admin/connect-to-data/data-sources/mysql) on [Azure Database for MySQL](https://azure.microsoft.com/en-us/products/mysql/)
## Data visualization tools
-Cube Cloud integrates with the following [data visualization tools](/admin/configuration/visualization-tools):
+Cube Cloud integrates with the following [data visualization tools](/admin/connect-to-data/visualization-tools):
- [Microsoft Power BI][ref-powerbi] via the [DAX API][ref-dax-api]
- [Microsoft Excel][ref-excel] via [Cube Cloud for Excel][ref-cube-cloud-for-excel]
@@ -56,7 +56,7 @@ Cube Cloud integrates with the following [data visualization tools](/admin/confi
[Azure Virtual Network](https://azure.microsoft.com/en-us/products/virtual-network) can be used for [secure networking](/docs/deployment/cloud/vpc/azure).
-[ref-powerbi]: /admin/configuration/visualization-tools/powerbi
+[ref-powerbi]: /admin/connect-to-data/visualization-tools/powerbi
[ref-dax-api]: /reference/dax-api
-[ref-excel]: /admin/configuration/visualization-tools/excel
+[ref-excel]: /admin/connect-to-data/visualization-tools/excel
[ref-cube-cloud-for-excel]: /docs/integrations/microsoft-excel
\ No newline at end of file
diff --git a/docs-mintlify/admin/deployment/providers/gcp.mdx b/docs-mintlify/admin/deployment/providers/gcp.mdx
index 8e0d3a1f5ff43..b2b3ec3967266 100644
--- a/docs-mintlify/admin/deployment/providers/gcp.mdx
+++ b/docs-mintlify/admin/deployment/providers/gcp.mdx
@@ -17,16 +17,16 @@ This page provides a non-exhaustive lists of these services.
## Data sources
-Cube Cloud integrates with the following [data sources](/admin/configuration/data-sources):
+Cube Cloud integrates with the following [data sources](/admin/connect-to-data/data-sources):
-- [Google BigQuery](/admin/configuration/data-sources/google-bigquery)
-- [Postgres](/admin/configuration/data-sources/postgres), [Microsoft SQL Server](/admin/configuration/data-sources/ms-sql), [MySQL](/admin/configuration/data-sources/mysql) on [Google Cloud SQL](https://cloud.google.com/sql)
-- [Hive / SparkSQL](/admin/configuration/data-sources/hive), [Presto](/admin/configuration/data-sources/presto), and [Trino](/admin/configuration/data-sources/trino) on [Google Dataproc](https://cloud.google.com/dataproc)
-- [Parquet, CSV, and JSON files](/admin/configuration/data-sources/duckdb) on [Google Cloud Storage](https://cloud.google.com/storage)
+- [Google BigQuery](/admin/connect-to-data/data-sources/google-bigquery)
+- [Postgres](/admin/connect-to-data/data-sources/postgres), [Microsoft SQL Server](/admin/connect-to-data/data-sources/ms-sql), [MySQL](/admin/connect-to-data/data-sources/mysql) on [Google Cloud SQL](https://cloud.google.com/sql)
+- [Hive / SparkSQL](/admin/connect-to-data/data-sources/hive), [Presto](/admin/connect-to-data/data-sources/presto), and [Trino](/admin/connect-to-data/data-sources/trino) on [Google Dataproc](https://cloud.google.com/dataproc)
+- [Parquet, CSV, and JSON files](/admin/connect-to-data/data-sources/duckdb) on [Google Cloud Storage](https://cloud.google.com/storage)
## Data visualization tools
-Cube Cloud integrates with the following [data visualization tools](/admin/configuration/visualization-tools):
+Cube Cloud integrates with the following [data visualization tools](/admin/connect-to-data/visualization-tools):
- [Looker Studio](https://cloud.google.com/looker-studio) via [SQL API](/reference/sql-api)
diff --git a/docs-mintlify/admin/deployment/warm-up.mdx b/docs-mintlify/admin/deployment/warm-up.mdx
index a6341001c8f4d..f206d8e54f0de 100644
--- a/docs-mintlify/admin/deployment/warm-up.mdx
+++ b/docs-mintlify/admin/deployment/warm-up.mdx
@@ -96,5 +96,5 @@ and enable **Warm-up pre-aggregations before deploying API**:
[ref-prod-multi-cluster]: /docs/deployment/cloud/deployment-types#production-multi-cluster
[ref-data-model]: /docs/data-modeling/overview
[ref-dynamic-data-model]: /docs/data-modeling/dynamic
-[ref-multitenancy]: /admin/configuration/multitenancy
+[ref-multitenancy]: /admin/connect-to-data/multitenancy
[ref-pre-aggs]: /docs/caching#pre-aggregations
\ No newline at end of file
diff --git a/docs-mintlify/admin/configuration/index.mdx b/docs-mintlify/admin/index.mdx
similarity index 95%
rename from docs-mintlify/admin/configuration/index.mdx
rename to docs-mintlify/admin/index.mdx
index 3cdd4b86ee1d9..850bc288c04cb 100644
--- a/docs-mintlify/admin/configuration/index.mdx
+++ b/docs-mintlify/admin/index.mdx
@@ -1,10 +1,8 @@
---
-title: Base path for the REST API
-description: Configure Cube using environment variables and configuration files for both Cube Core and Cube Cloud deployments.
+title: Administration
+description: TODO
---
- Overview
-
Cube is configured via [environment variables][link-env-vars] and
[configuration options][link-config] in a configuration file. Usually,
both would be used to configure a Cube deployment in production.
@@ -206,7 +204,7 @@ mode does the following:
[ref-dynamic-data-models]: /docs/data-modeling/dynamic
[ref-custom-docker-image]: /docs/deployment/core#extend-the-docker-image
[link-docker-env-vars]: https://docs.docker.com/compose/environment-variables/set-environment-variables/
-[ref-mls]: /access-security/access-control/member-level-security
+[ref-mls]: /docs/data-modeling/access-control/member-level-security
[link-current-python-version]: https://github.com/cube-js/cube/blob/master/packages/cubejs-docker/latest.Dockerfile#L13
[link-current-nodejs-version]: https://github.com/cube-js/cube/blob/master/packages/cubejs-docker/latest.Dockerfile#L1
[ref-data-model]: /docs/data-modeling/data-model-ide
@@ -214,4 +212,4 @@ mode does the following:
[ref-python]: /docs/data-modeling/dynamic/jinja#python
[ref-javascript]: /docs/data-modeling/dynamic/javascript
[ref-cube-package-config]: /reference/data-modeling/cube-package#config-object
-[ref-env-var-recipe]: /admin/configuration/recipes/environment-variables
\ No newline at end of file
+[ref-env-var-recipe]: /recipes/configuration/environment-variables
\ No newline at end of file
diff --git a/docs-mintlify/admin/monitoring/audit-log.mdx b/docs-mintlify/admin/monitoring/audit-log.mdx
index 0e711d6440143..8c07dd2c3a8b7 100644
--- a/docs-mintlify/admin/monitoring/audit-log.mdx
+++ b/docs-mintlify/admin/monitoring/audit-log.mdx
@@ -101,7 +101,7 @@ Audit Log collects the following types of events:
| Category | Event type |
| --- | --- |
| Users | `Created user`
`Deleted user`
`Invited user`
`Updated user profile`
`Requested password reset`
`Changed password` |
-| [Custom roles](/access-security/users-and-permissions/custom-roles) | `Created role`
`Deleted role`
`Updated role`
`Assigned role to user`
`Assigned roles to user`
`Removed role from user` |
+| [Custom roles](/admin/users-and-permissions/custom-roles) | `Created role`
`Deleted role`
`Updated role`
`Assigned role to user`
`Assigned roles to user`
`Removed role from user` |
| Authentication | `Logged in`
`Logged out`
`Redirected to SAML provider for login`
`Logged in via SAML` |
| Account and [single sign-on](/docs/workspace/sso) | `Updated account settings`
`Updated account authentication configuration`
`Updated account SAML configuration`
`Uploaded identity provider metadata file` |
| [Deployments](/docs/deployment/cloud/deployments) | `Created deployment`
`Deleted deployment`
`Updated deployment configuration`
`Enabled SQL API for deployment`
`Generated data model` |
diff --git a/docs-mintlify/admin/monitoring/performance.mdx b/docs-mintlify/admin/monitoring/performance.mdx
index c649438f63f9d..7c515f09dd4d6 100644
--- a/docs-mintlify/admin/monitoring/performance.mdx
+++ b/docs-mintlify/admin/monitoring/performance.mdx
@@ -182,7 +182,7 @@ for queries and jobs.
[ref-prod-cluster]: /docs/deployment/cloud/deployment-types#production-cluster
[ref-multi-cluster]: /docs/deployment/cloud/deployment-types#production-multi-cluster
[ref-pre-aggregations]: /docs/caching/using-pre-aggregations
-[ref-multitenancy]: /admin/configuration/multitenancy
+[ref-multitenancy]: /admin/connect-to-data/multitenancy
[ref-context-to-app-id]: /reference/configuration/config#context_to_app_id
[ref-cache-types]: /docs/caching#cache-type
[ref-indexes]: /docs/caching/using-pre-aggregations#using-indexes
\ No newline at end of file
diff --git a/docs-mintlify/admin/monitoring/query-history.mdx b/docs-mintlify/admin/monitoring/query-history.mdx
index da8156c0cb40b..2cccea1ff0003 100644
--- a/docs-mintlify/admin/monitoring/query-history.mdx
+++ b/docs-mintlify/admin/monitoring/query-history.mdx
@@ -236,11 +236,11 @@ while the query is in the query execution queue:
[datadog-kb-flamegraph]:
https://www.datadoghq.com/knowledge-center/distributed-tracing/flame-graph/
[ref-caching-gs-preaggs]: /docs/caching/getting-started-pre-aggregations
-[ref-conf-db]: /admin/configuration/data-sources
+[ref-conf-db]: /admin/connect-to-data/data-sources
[ref-workspace-sqlrunner]: /docs/data-modeling/sql-runner
[ref-query-format]: /reference/rest-api/query-format
[ref-cache-types]: /docs/caching#cache-type
-[ref-security-context]: /access-security/access-control/context
-[ref-multitenancy]: /admin/configuration/multitenancy
+[ref-security-context]: /docs/data-modeling/access-control/context
+[ref-multitenancy]: /admin/connect-to-data/multitenancy
[ref-apis]: /reference
[ref-query-history-export]: /admin/deployment/monitoring#query-history-export
\ No newline at end of file
diff --git a/docs-mintlify/admin/pricing.mdx b/docs-mintlify/admin/pricing.mdx
index a0b062a2a4ee7..9631bc85b72c2 100644
--- a/docs-mintlify/admin/pricing.mdx
+++ b/docs-mintlify/admin/pricing.mdx
@@ -346,7 +346,7 @@ for the AI token consumption at the **Billing** page of their Cube Cloud account
[ref-cloud-limits]: /docs/deployment/cloud/limits
[ref-monitoring-integrations]: /docs/monitoring/integrations
[ref-monitoring-integrations-config]: /admin/deployment/monitoring#configuration
-[ref-cloud-acl]: /access-security/users-and-permissions/custom-roles
+[ref-cloud-acl]: /admin/users-and-permissions/custom-roles
[ref-cloud-deployment-prod-multicluster]: /docs/deployment/cloud/deployment-types#production-multi-cluster
[ref-cloud-custom-domains]: /docs/deployment/cloud/custom-domains
[ref-cloud-vpc-peering]: /docs/deployment/cloud/vpc
diff --git a/docs-mintlify/admin/sso/index.mdx b/docs-mintlify/admin/sso/index.mdx
index 1daa64f11c728..dea7104121132 100644
--- a/docs-mintlify/admin/sso/index.mdx
+++ b/docs-mintlify/admin/sso/index.mdx
@@ -49,6 +49,6 @@ Check the following guides to get tool-specific instructions on configuration:
[wiki-saml]: https://en.wikipedia.org/wiki/SAML_2.0
[ref-apis]: /reference
-[ref-dap]: /access-security/access-control/data-access-policies
-[ref-security-context]: /access-security/access-control/context
-[ref-auth-integration]: /access-security/access-control#authentication-integration
\ No newline at end of file
+[ref-dap]: /docs/data-modeling/access-control/data-access-policies
+[ref-security-context]: /docs/data-modeling/access-control/context
+[ref-auth-integration]: /docs/data-modeling/access-control#authentication-integration
\ No newline at end of file
diff --git a/docs-mintlify/admin/sso/microsoft-entra-id/scim.mdx b/docs-mintlify/admin/sso/microsoft-entra-id/scim.mdx
index 1087fff895769..a8bb1d4b06d7f 100644
--- a/docs-mintlify/admin/sso/microsoft-entra-id/scim.mdx
+++ b/docs-mintlify/admin/sso/microsoft-entra-id/scim.mdx
@@ -121,5 +121,5 @@ need it when configuring Entra.
The next time the Entra application syncs, the attribute values will be
provisioned as [user attributes][ref-user-attributes] in Cube.
-[ref-saml]: /access-security/sso/microsoft-entra-id/saml
-[ref-user-attributes]: /access-security/users-and-permissions/user-attributes
\ No newline at end of file
+[ref-saml]: /admin/sso/microsoft-entra-id/saml
+[ref-user-attributes]: /admin/users-and-permissions/user-attributes
\ No newline at end of file
diff --git a/docs-mintlify/admin/sso/okta/scim.mdx b/docs-mintlify/admin/sso/okta/scim.mdx
index c3971be183383..173261563c9ec 100644
--- a/docs-mintlify/admin/sso/okta/scim.mdx
+++ b/docs-mintlify/admin/sso/okta/scim.mdx
@@ -125,4 +125,4 @@ groups to push:
search by name or rule.
3. Select the groups you want to push to Cube Cloud and click **Save**.
-[ref-saml]: /access-security/sso/okta/saml
\ No newline at end of file
+[ref-saml]: /admin/sso/okta/saml
\ No newline at end of file
diff --git a/docs-mintlify/admin/users-and-permissions/custom-roles.mdx b/docs-mintlify/admin/users-and-permissions/custom-roles.mdx
index e61bd2b0a3012..89bff2f370bac 100644
--- a/docs-mintlify/admin/users-and-permissions/custom-roles.mdx
+++ b/docs-mintlify/admin/users-and-permissions/custom-roles.mdx
@@ -13,7 +13,7 @@ Custom roles are available on the [Enterprise plan](https://cube.dev/pricing).
Cube comes with [default roles][ref-default-roles] that cover common use cases. However, if you need more customization, you can create custom roles with a fine-grained set of permissions tailored to your organization's specific needs.
-[ref-default-roles]: /access-security/users-and-permissions/roles-and-permissions
+[ref-default-roles]: /admin/users-and-permissions/roles-and-permissions
## Managing roles
In Cube Cloud, users are not assigned permissions directly. Instead, they are assigned
diff --git a/docs-mintlify/admin/users-and-permissions/index.mdx b/docs-mintlify/admin/users-and-permissions/index.mdx
index 4a102ea2b36cf..1fa8c9904bd48 100644
--- a/docs-mintlify/admin/users-and-permissions/index.mdx
+++ b/docs-mintlify/admin/users-and-permissions/index.mdx
@@ -14,6 +14,6 @@ Configure access control to:
- Set up [roles and permissions][ref-roles] to control feature access
- Create [custom roles][ref-custom-roles] with specific permissions for your team
-[ref-attributes]: /access-security/users-and-permissions/user-attributes
-[ref-roles]: /access-security/users-and-permissions/roles-and-permissions
-[ref-custom-roles]: /access-security/users-and-permissions/custom-roles
\ No newline at end of file
+[ref-attributes]: /admin/users-and-permissions/user-attributes
+[ref-roles]: /admin/users-and-permissions/roles-and-permissions
+[ref-custom-roles]: /admin/users-and-permissions/custom-roles
\ No newline at end of file
diff --git a/docs-mintlify/admin/users-and-permissions/roles-and-permissions.mdx b/docs-mintlify/admin/users-and-permissions/roles-and-permissions.mdx
index 5a11ed0c83f07..11186e3a43472 100644
--- a/docs-mintlify/admin/users-and-permissions/roles-and-permissions.mdx
+++ b/docs-mintlify/admin/users-and-permissions/roles-and-permissions.mdx
@@ -46,4 +46,4 @@ This feature should not be used as a security measure. Configure [access policie
- Admins: Typically assigned to data engineers managing the entire Cube instance (billed at the developer rate with additional privileges)
-[ref-data-access-policies]: /access-security/access-control/data-access-policies
\ No newline at end of file
+[ref-data-access-policies]: /docs/data-modeling/access-control/data-access-policies
\ No newline at end of file
diff --git a/docs-mintlify/admin/users-and-permissions/user-groups.mdx b/docs-mintlify/admin/users-and-permissions/user-groups.mdx
index ad7939c90bff4..d2a12df25e99f 100644
--- a/docs-mintlify/admin/users-and-permissions/user-groups.mdx
+++ b/docs-mintlify/admin/users-and-permissions/user-groups.mdx
@@ -23,6 +23,6 @@ To create a user group:
-[ref-user-attributes]: /access-security/users-and-permissions/user-attributes
-[ref-rls]: /access-security/access-control/row-level-security
-[ref-dap]: /access-security/access-control/data-access-policies
\ No newline at end of file
+[ref-user-attributes]: /admin/users-and-permissions/user-attributes
+[ref-rls]: /docs/data-modeling/access-control/row-level-security
+[ref-dap]: /docs/data-modeling/access-control/data-access-policies
\ No newline at end of file
diff --git a/docs-mintlify/admin/workspace/cli/reference.mdx b/docs-mintlify/admin/workspace/cli/reference.mdx
index dff2920a7946a..7901132bf211f 100644
--- a/docs-mintlify/admin/workspace/cli/reference.mdx
+++ b/docs-mintlify/admin/workspace/cli/reference.mdx
@@ -46,7 +46,7 @@ npx cubejs-cli create demo-app -t express -d mysql
The `generate` command helps to build data models for existing database tables.
You can only run `generate` from the Cube app directory. This command requires
-an active [database connection](/admin/configuration/data-sources).
+an active [database connection](/admin/connect-to-data/data-sources).
### Usage
@@ -106,7 +106,7 @@ The `token` command generates a JWT Cube token. It either uses the value of the
can only run `token` command from the Cube app directory.
_Use these manually generated tokens in production with caution._
_Please
-refer to the [Security Guide](/access-security/access-control) for production security best
+refer to the [Security Guide](/docs/data-modeling/access-control) for production security best
practices._
### Usage
diff --git a/docs-mintlify/admin/workspace/index.mdx b/docs-mintlify/admin/workspace/index.mdx
index e3ba9e746a5bd..8443df59df3fc 100644
--- a/docs-mintlify/admin/workspace/index.mdx
+++ b/docs-mintlify/admin/workspace/index.mdx
@@ -74,7 +74,7 @@ With Cube Core, you can:
[ref-pre-aggs]: /admin/monitoring/pre-aggregations
[ref-perf-insights]: /admin/monitoring/performance
[ref-monitoring-integrations]: /admin/deployment/monitoring
-[ref-custom-roles]: /access-security/users-and-permissions/custom-roles
+[ref-custom-roles]: /admin/users-and-permissions/custom-roles
[ref-sso]: /docs/workspace/sso
[ref-audit-log]: /admin/monitoring/audit-log
[ref-budgets]: /admin/budgets
@@ -85,6 +85,6 @@ With Cube Core, you can:
[ref-visual-model]: /docs/data-modeling/visual-modeler
[ref-saved-reports]: /docs/workspace/saved-reports
[ref-sheets-integration]: /docs/integrations/google-sheets
-[ref-excel-integration]: /admin/configuration/visualization-tools/excel
+[ref-excel-integration]: /admin/connect-to-data/visualization-tools/excel
[ref-api-keys]: /admin/api-keys
[ref-chats-history]: /admin/monitoring/chats-history
\ No newline at end of file
diff --git a/docs-mintlify/admin/workspace/integrations.mdx b/docs-mintlify/admin/workspace/integrations.mdx
index b3a1e6eda12f6..3fc8dd73f1fa1 100644
--- a/docs-mintlify/admin/workspace/integrations.mdx
+++ b/docs-mintlify/admin/workspace/integrations.mdx
@@ -82,6 +82,6 @@ to a specific API.
-[ref-viz-tools]: /admin/configuration/visualization-tools
+[ref-viz-tools]: /admin/connect-to-data/visualization-tools
[ref-sls]: /docs/integrations/semantic-layer-sync
[ref-apis]: /reference
\ No newline at end of file
diff --git a/docs-mintlify/admin/workspace/semantic-catalog.mdx b/docs-mintlify/admin/workspace/semantic-catalog.mdx
index 847dc48bff0ee..2710753ab1b6c 100644
--- a/docs-mintlify/admin/workspace/semantic-catalog.mdx
+++ b/docs-mintlify/admin/workspace/semantic-catalog.mdx
@@ -71,5 +71,5 @@ dashboards that query it in tools such as Tableau and Superset.
-[ref-tableau]: /admin/configuration/visualization-tools/tableau
-[ref-superset]: /admin/configuration/visualization-tools/superset
\ No newline at end of file
+[ref-tableau]: /admin/connect-to-data/visualization-tools/tableau
+[ref-superset]: /admin/connect-to-data/visualization-tools/superset
\ No newline at end of file
diff --git a/docs-mintlify/apis-integrations/overview.mdx b/docs-mintlify/apis-integrations/overview.mdx
deleted file mode 100644
index 257aee1746386..0000000000000
--- a/docs-mintlify/apis-integrations/overview.mdx
+++ /dev/null
@@ -1,45 +0,0 @@
----
-title: "APIs & Integrations Overview"
-description: Connect to Cube using REST, GraphQL, or SQL APIs.
----
-
- APIs & Integrations
-
-Cube exposes your semantic layer through multiple API protocols, enabling integration with any tool in your data stack.
-
-## Available APIs
-
-
-
- JSON-based API for custom applications
-
-
- Postgres-compatible SQL interface
-
-
- Flexible query API for frontend apps
-
-
-
-## Choosing an API
-
-| Use case | Recommended API |
-|----------|-----------------|
-| Custom web applications | REST API |
-| BI tools (Tableau, Power BI, Metabase) | SQL API |
-| Frontend applications | GraphQL or REST API |
-| AI agents | SQL API or REST API |
-| Data notebooks | SQL API |
-
-## Authentication
-
-All APIs support JWT-based authentication. Include a valid JWT token in your requests:
-
-```bash
-curl -H "Authorization: Bearer YOUR_JWT_TOKEN" \
- https://your-cube-instance.com/cubejs-api/v1/load?query=...
-```
-
-
-The JWT token carries the security context used by Cube to enforce access control policies.
-
diff --git a/docs-mintlify/apis-integrations/rest-api.mdx b/docs-mintlify/apis-integrations/rest-api.mdx
deleted file mode 100644
index 2cfc46f22225a..0000000000000
--- a/docs-mintlify/apis-integrations/rest-api.mdx
+++ /dev/null
@@ -1,102 +0,0 @@
----
-title: REST API
-description: Query Cube using the REST API for custom applications.
----
-
- REST API
-
-The Cube REST API provides a JSON-based interface for querying your semantic layer.
-
-## Base URL
-
-```
-https://your-cube-instance.com/cubejs-api/v1
-```
-
-## Load endpoint
-
-The primary endpoint for querying data:
-
-```bash
-curl \
- -H "Authorization: Bearer YOUR_JWT_TOKEN" \
- -G "https://your-cube-instance.com/cubejs-api/v1/load" \
- --data-urlencode 'query={
- "measures": ["orders.count"],
- "dimensions": ["orders.status"],
- "timeDimensions": [{
- "dimension": "orders.created_at",
- "granularity": "month"
- }]
- }'
-```
-
-### Response
-
-```json
-{
- "data": [
- {
- "orders.status": "completed",
- "orders.count": 1250,
- "orders.created_at.month": "2024-01-01T00:00:00.000"
- },
- {
- "orders.status": "pending",
- "orders.count": 340,
- "orders.created_at.month": "2024-01-01T00:00:00.000"
- }
- ]
-}
-```
-
-## Meta endpoint
-
-Retrieve the data model schema:
-
-```bash
-curl \
- -H "Authorization: Bearer YOUR_JWT_TOKEN" \
- "https://your-cube-instance.com/cubejs-api/v1/meta"
-```
-
-## Query format
-
-### Measures and dimensions
-
-```json
-{
- "measures": ["orders.count", "orders.total_amount"],
- "dimensions": ["orders.status", "customers.city"]
-}
-```
-
-### Filters
-
-```json
-{
- "measures": ["orders.count"],
- "filters": [
- {
- "member": "orders.status",
- "operator": "equals",
- "values": ["completed"]
- }
- ]
-}
-```
-
-### Time dimensions
-
-```json
-{
- "measures": ["orders.count"],
- "timeDimensions": [
- {
- "dimension": "orders.created_at",
- "dateRange": ["2024-01-01", "2024-12-31"],
- "granularity": "month"
- }
- ]
-}
-```
diff --git a/docs-mintlify/apis-integrations/sql-api.mdx b/docs-mintlify/apis-integrations/sql-api.mdx
deleted file mode 100644
index 081080be8f68a..0000000000000
--- a/docs-mintlify/apis-integrations/sql-api.mdx
+++ /dev/null
@@ -1,82 +0,0 @@
----
-title: SQL API
-description: Connect to Cube using Postgres-compatible SQL.
----
-
- SQL API
-
-Cube's SQL API provides a Postgres-compatible interface, allowing you to connect any tool that supports PostgreSQL.
-
-## Connection details
-
-Connect using standard Postgres credentials:
-
-| Parameter | Value |
-|-----------|-------|
-| Host | Your Cube instance hostname |
-| Port | `15432` |
-| Database | `db` |
-| Username | From your API credentials |
-| Password | From your API credentials |
-
-## Example queries
-
-### Basic query
-
-```sql
-SELECT
- status,
- MEASURE(count),
- MEASURE(total_amount)
-FROM orders
-GROUP BY 1;
-```
-
-### With time dimension
-
-```sql
-SELECT
- DATE_TRUNC('month', created_at) AS month,
- status,
- MEASURE(count)
-FROM orders
-GROUP BY 1, 2
-ORDER BY 1;
-```
-
-### Joining cubes
-
-```sql
-SELECT
- customers.company,
- MEASURE(orders.count),
- MEASURE(orders.total_amount)
-FROM orders
-CROSS JOIN customers
-GROUP BY 1
-ORDER BY 2 DESC
-LIMIT 10;
-```
-
-
-The `MEASURE()` function is Cube's extension to standard SQL. It tells Cube to evaluate the measure according to its definition in the data model.
-
-
-## Connecting BI tools
-
-The SQL API works with any Postgres-compatible tool:
-
-
-
- Connect using the PostgreSQL connector
-
-
- Use the PostgreSQL data source
-
-
- Add as a PostgreSQL database
-
-
- Configure a PostgreSQL connection
-
-
diff --git a/docs-mintlify/cube-core/authentication/auth0.mdx b/docs-mintlify/cube-core/authentication/auth0.mdx
index 40876f16eeb81..bfc9ddb039ca9 100644
--- a/docs-mintlify/cube-core/authentication/auth0.mdx
+++ b/docs-mintlify/cube-core/authentication/auth0.mdx
@@ -243,7 +243,7 @@ your own Cube application.
[link-jwt-io-debug]: https://jwt.io/#debugger-io
[link-openid-playground]: https://openidconnect.net/
[ref-config-auth0]: #configure-cube
-[ref-sec-ctx]: /access-security/access-control/context
+[ref-sec-ctx]: /docs/data-modeling/access-control/context
[gh-cube-auth0-example]:
https://github.com/cube-js/examples/tree/master/auth0
diff --git a/docs-mintlify/cube-core/authentication/aws-cognito.mdx b/docs-mintlify/cube-core/authentication/aws-cognito.mdx
index 50336f253831c..268d88e4961f9 100644
--- a/docs-mintlify/cube-core/authentication/aws-cognito.mdx
+++ b/docs-mintlify/cube-core/authentication/aws-cognito.mdx
@@ -192,4 +192,4 @@ models using the [Security Context][ref-sec-ctx] should now work as expected.
https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-lambda-pre-token-generation.html#aws-lambda-triggers-pre-token-generation-example-1
[link-aws-lambda]: https://docs.aws.amazon.com/lambda/latest/dg/welcome.html
[link-openid-playground]: https://openidconnect.net/
-[ref-sec-ctx]: /access-security/access-control/context
\ No newline at end of file
+[ref-sec-ctx]: /docs/data-modeling/access-control/context
\ No newline at end of file
diff --git a/docs-mintlify/cube-core/authentication/context.mdx b/docs-mintlify/cube-core/authentication/context.mdx
index 714eca15c1f8b..719b761eb4f32 100644
--- a/docs-mintlify/cube-core/authentication/context.mdx
+++ b/docs-mintlify/cube-core/authentication/context.mdx
@@ -535,13 +535,13 @@ view(`total_revenue_per_customer`, {
[link-auth0-jwks]:
https://auth0.com/docs/tokens/json-web-tokens/json-web-key-sets
-[link-multitenancy]: /admin/configuration/multitenancy
+[link-multitenancy]: /admin/connect-to-data/multitenancy
[ref-config-queryrewrite]: /reference/configuration/config#query_rewrite
[ref-config-sched-refresh]: /reference/configuration/config#scheduledrefreshcontexts
[ref-config-sec-ctx]: /reference/configuration/config#securitycontext
[ref-cubes-compile-ctx]: /reference/data-modeling/context-variables#compile_context
[ref-devtools-playground]: /docs/workspace/playground#editing-the-security-context
-[ref-auth-integration]: /access-security/access-control#authentication-integration
+[ref-auth-integration]: /docs/data-modeling/access-control#authentication-integration
[ref-extend-context]: /reference/configuration/config#extend_context
[ref-dynamic-data-modeling]: /docs/data-modeling/dynamic
-[ref-multitenancy]: /admin/configuration/multitenancy
\ No newline at end of file
+[ref-multitenancy]: /admin/connect-to-data/multitenancy
\ No newline at end of file
diff --git a/docs-mintlify/cube-core/authentication/jwt.mdx b/docs-mintlify/cube-core/authentication/jwt.mdx
index 0659f939a5ac6..6038bccf776e5 100644
--- a/docs-mintlify/cube-core/authentication/jwt.mdx
+++ b/docs-mintlify/cube-core/authentication/jwt.mdx
@@ -233,6 +233,6 @@ module.exports = {
[link-jwk-ref]: https://tools.ietf.org/html/rfc7517#section-4
[ref-config-check-auth]: /reference/configuration/config#check_auth
[ref-config-jwt]: /reference/configuration/config#jwt
-[ref-recipe-auth0]: /access-security/access-control/recipes/auth0-guide
-[ref-recipe-cognito]: /access-security/access-control/recipes/aws-cognito
-[ref-sec-ctx]: /access-security/access-control/context
\ No newline at end of file
+[ref-recipe-auth0]: /docs/data-modeling/access-control/recipes/auth0-guide
+[ref-recipe-cognito]: /docs/data-modeling/access-control/recipes/aws-cognito
+[ref-sec-ctx]: /docs/data-modeling/access-control/context
\ No newline at end of file
diff --git a/docs-mintlify/cube-core/configuration/concurrency.mdx b/docs-mintlify/cube-core/configuration/concurrency.mdx
index ac4fa9d907ba4..c2fa18bf1bde0 100644
--- a/docs-mintlify/cube-core/configuration/concurrency.mdx
+++ b/docs-mintlify/cube-core/configuration/concurrency.mdx
@@ -80,16 +80,16 @@ However, you can override this behvaior in the refresh worker
[ref-data-apis]: /reference
-[ref-data-sources]: /admin/configuration/data-sources
+[ref-data-sources]: /admin/connect-to-data/data-sources
[ref-context-to-orchestrator-id]: /reference/configuration/config#context_to_orchestrator_id
[ref-driver-factory]: /reference/configuration/config#driver_factory
[ref-preagg-refresh]: /docs/caching/refreshing-pre-aggregations#configuration
-[ref-athena]: /admin/configuration/data-sources/aws-athena
-[ref-clickhouse]: /admin/configuration/data-sources/clickhouse
-[ref-databricks]: /admin/configuration/data-sources/databricks-jdbc
-[ref-firebolt]: /admin/configuration/data-sources/firebolt
-[ref-pinot]: /admin/configuration/data-sources/pinot
-[ref-redshift]: /admin/configuration/data-sources/aws-redshift
-[ref-snowflake]: /admin/configuration/data-sources/snowflake
-[ref-bigquery]: /admin/configuration/data-sources/google-bigquery
+[ref-athena]: /admin/connect-to-data/data-sources/aws-athena
+[ref-clickhouse]: /admin/connect-to-data/data-sources/clickhouse
+[ref-databricks]: /admin/connect-to-data/data-sources/databricks-jdbc
+[ref-firebolt]: /admin/connect-to-data/data-sources/firebolt
+[ref-pinot]: /admin/connect-to-data/data-sources/pinot
+[ref-redshift]: /admin/connect-to-data/data-sources/aws-redshift
+[ref-snowflake]: /admin/connect-to-data/data-sources/snowflake
+[ref-bigquery]: /admin/connect-to-data/data-sources/google-bigquery
[link-github-data-source-concurrency]: https://github.com/search?q=repo%3Acube-js%2Fcube+getDefaultConcurrency+path%3Apackages%2Fcubejs-&type=code
\ No newline at end of file
diff --git a/docs-mintlify/cube-core/configuration/config.mdx b/docs-mintlify/cube-core/configuration/config.mdx
index 696c3c936e84e..97513ddb9fdb7 100644
--- a/docs-mintlify/cube-core/configuration/config.mdx
+++ b/docs-mintlify/cube-core/configuration/config.mdx
@@ -1522,14 +1522,14 @@ module.exports = {
[link-jwt-ref-sub]: https://tools.ietf.org/html/rfc7519#section-4.1.2
[link-jwt-ref-aud]: https://tools.ietf.org/html/rfc7519#section-4.1.3
[link-wiki-tz]: https://en.wikipedia.org/wiki/Tz_database
-[ref-development-mode]: /admin/configuration#development-mode
-[ref-multitenancy]: /admin/configuration/multitenancy
+[ref-development-mode]: /admin/connect-to-data#development-mode
+[ref-multitenancy]: /admin/connect-to-data/multitenancy
[ref-rest-api]: /reference/rest-api
[ref-sql-api]: /reference/sql-api
[ref-pre-aggregations-refresh-key]: /reference/data-modeling/pre-aggregations#refresh_key
[ref-schema-cube-ref-refresh-key]: /reference/data-modeling/cube#refresh_key
[ref-schema-cube-ref-ctx-sec-ctx]: /reference/data-modeling/context-variables#security_context
-[ref-sec-ctx]: /access-security/access-control/context
+[ref-sec-ctx]: /docs/data-modeling/access-control/context
[self-pre-aggregations-schema]: #pre_aggregations_schema
[self-opts-ctx-to-appid]: #context_to_app_id
[self-driver-factory]: #driver_factory
@@ -1538,18 +1538,18 @@ module.exports = {
[ref-exec-environment-globals]: /docs/data-modeling/dynamic/schema-execution-environment#nodejs-globals-processenv-consolelog-and-others
[ref-environment-variables]: /reference/configuration/environment-variables
[ref-rest-scopes]: /reference/rest-api#api-scopes
-[ref-config-options]: /admin/configuration#configuration-options
+[ref-config-options]: /admin/connect-to-data#configuration-options
[self-orchestrator-id]: #context_to_orchestrator_id
-[ref-multiple-data-sources]: /admin/configuration/advanced/multiple-data-sources
+[ref-multiple-data-sources]: /admin/connect-to-data/advanced/multiple-data-sources
[ref-websockets]: /reference/rest-api/real-time-data-fetch
[ref-matching-preaggs]: /docs/caching/matching-pre-aggregations
[link-snake-case]: https://en.wikipedia.org/wiki/Snake_case
[link-camel-case]: https://en.wikipedia.org/wiki/Camel_case
[link-github-cube-drivers]: https://github.com/cube-js/cube/tree/master/packages
[ref-ungrouped-query]: /reference/queries#ungrouped-query
-[ref-dap]: /access-security/access-control/data-access-policies
-[ref-dap-roles]: /access-security/access-control/data-access-policies#data-access-roles
-[ref-auth-integration]: /access-security/access-control#authentication-integration
+[ref-dap]: /docs/data-modeling/access-control/data-access-policies
+[ref-dap-roles]: /docs/data-modeling/access-control/data-access-policies#data-access-roles
+[ref-auth-integration]: /docs/data-modeling/access-control#authentication-integration
[ref-dax-api]: /reference/dax-api
-[ref-ntlm]: /access-security/authentication/ntlm
+[ref-ntlm]: /docs/integrations/power-bi/ntlm
[ref-environments]: /admin/deployment/environments
\ No newline at end of file
diff --git a/docs-mintlify/cube-core/configuration/environment-variables.mdx b/docs-mintlify/cube-core/configuration/environment-variables.mdx
index 9e314891ce5f0..5f30a6c51f0dd 100644
--- a/docs-mintlify/cube-core/configuration/environment-variables.mdx
+++ b/docs-mintlify/cube-core/configuration/environment-variables.mdx
@@ -655,7 +655,7 @@ The host URL for a database.
## `CUBEJS_DB_SOCKET_PATH`
The path to a Unix socket that is used to connect to a data source, e.g.,
-[MySQL](/admin/configuration/data-sources/mysql#connecting-via-a-unix-socket).
+[MySQL](/admin/connect-to-data/data-sources/mysql#connecting-via-a-unix-socket).
| Possible Values | Default in Development | Default in Production |
| ------------------------- | ---------------------- | --------------------- |
@@ -747,7 +747,7 @@ for pre-aggregation generation.
## `CUBEJS_DB_MATERIALIZE_CLUSTER`
-The cluster name to use when connecting to [Materialize](/admin/configuration/data-sources/materialize).
+The cluster name to use when connecting to [Materialize](/admin/connect-to-data/data-sources/materialize).
| Possible Values | Default in Development | Default in Production |
| --------------------------------------------------------- | ---------------------- | --------------------- |
@@ -952,7 +952,7 @@ option](/reference/configuration/config#context_to_api_scopes).
## `CUBEJS_DEV_MODE`
-If `true`, enables [development mode](/admin/configuration#development-mode).
+If `true`, enables [development mode](/admin/connect-to-data#development-mode).
| Possible Values | Default in Development | Default in Production |
| --------------- | ---------------------- | --------------------- |
@@ -1873,8 +1873,8 @@ The port for a Cube deployment to listen to API connections on.
[ietf-jwt-ref-aud]: https://tools.ietf.org/html/rfc7519#section-4.1.3
[motherduck-docs-svc-token]:
https://motherduck.com/docs/authenticating-to-motherduck/#authentication-using-a-service-token
-[ref-config-db]: /admin/configuration/data-sources
-[ref-config-multiple-ds-decorating-env]: /admin/configuration/advanced/multiple-data-sources#configuring-data-sources-with-environment-variables-decorated-environment-variables
+[ref-config-db]: /admin/connect-to-data/data-sources
+[ref-config-multiple-ds-decorating-env]: /admin/connect-to-data/advanced/multiple-data-sources#configuring-data-sources-with-environment-variables-decorated-environment-variables
[ref-config-sched-refresh-timer]: /reference/configuration/config#scheduled_refresh_timer
[ref-rest-scopes]: /reference/rest-api#configuration-api-scopes
[snowflake-docs-account-id]:
@@ -1896,7 +1896,7 @@ The port for a Cube deployment to listen to API connections on.
[link-tesseract]: https://cube.dev/blog/introducing-next-generation-data-modeling-engine
[ref-multi-stage-calculations]: /docs/data-modeling/concepts/multi-stage-calculations
[ref-folders]: /reference/data-modeling/view#folders
-[ref-dataviz-tools]: /admin/configuration/visualization-tools
+[ref-dataviz-tools]: /admin/connect-to-data/visualization-tools
[ref-context-to-app-id]: /reference/configuration/config#context_to_app_id
[ref-environments]: /admin/deployment/environments
[ref-databricks-m2m-oauth]: https://docs.databricks.com/aws/en/dev-tools/auth/oauth-m2m
diff --git a/docs-mintlify/cube-core/configuration/multiple-data-sources.mdx b/docs-mintlify/cube-core/configuration/multiple-data-sources.mdx
index 339bea999d399..aed2cd6eb5de7 100644
--- a/docs-mintlify/cube-core/configuration/multiple-data-sources.mdx
+++ b/docs-mintlify/cube-core/configuration/multiple-data-sources.mdx
@@ -97,15 +97,15 @@ cube(`orders_from_other_data_source`, {
[ref-config-ref-env]: /reference/configuration/environment-variables
[ref-config-ref-driverfactory]: /reference/configuration/config#driverfactory
-[ref-config-db]: /admin/configuration/data-sources
-[ref-config-multitenancy]: /admin/configuration/multitenancy#multitenancy-multitenancy-vs-multiple-data-sources
+[ref-config-db]: /admin/connect-to-data/data-sources
+[ref-config-multitenancy]: /admin/connect-to-data/multitenancy#multitenancy-multitenancy-vs-multiple-data-sources
## Cube Cloud
Follow these steps to connect to multiple data sources in Cube Cloud:
- Set up the `default` database connection when creating a new deployment.
- Ensure you have the correct
- [multitenancy](/admin/configuration/multitenancy) configuration in
+ [multitenancy](/admin/connect-to-data/multitenancy) configuration in
your `cube.js` file.
- Configure the corresponding environment variables in **Settings →
Environment variables**.
diff --git a/docs-mintlify/cube-core/configuration/multitenancy.mdx b/docs-mintlify/cube-core/configuration/multitenancy.mdx
index 2fd16b9943956..e41728db56d0e 100644
--- a/docs-mintlify/cube-core/configuration/multitenancy.mdx
+++ b/docs-mintlify/cube-core/configuration/multitenancy.mdx
@@ -383,21 +383,21 @@ input.
-[ref-config]: /admin/configuration#configuration-options
+[ref-config]: /admin/connect-to-data#configuration-options
[ref-config-opts]: /reference/configuration/config
-[ref-config-db]: /admin/configuration/data-sources
+[ref-config-db]: /admin/connect-to-data/data-sources
[ref-config-driverfactory]: /reference/configuration/config#driver_factory
[ref-config-repofactory]: /reference/configuration/config#repository_factory
[ref-config-preagg-schema]: /reference/configuration/config#pre_aggregations_schema
[ref-config-ctx-to-appid]: /reference/configuration/config#context_to_app_id
[ref-config-ctx-to-orch-id]: /reference/configuration/config#context_to_orchestrator_id
-[ref-config-multi-data-src]: /admin/configuration/advanced/multiple-data-sources
+[ref-config-multi-data-src]: /admin/connect-to-data/advanced/multiple-data-sources
[ref-config-query-rewrite]: /reference/configuration/config#query_rewrite
[ref-config-refresh-ctx]: /reference/configuration/config#scheduled_refresh_contexts
[ref-config-refresh-tz]: /reference/configuration/config#scheduled_refresh_timezones
-[ref-config-security-ctx]: /access-security/access-control/context
-[ref-security]: /access-security/access-control
+[ref-config-security-ctx]: /docs/data-modeling/access-control/context
+[ref-security]: /docs/data-modeling/access-control
[ref-cube-datasource]: /reference/data-modeling/cube#data_source
[ref-cube-security-ctx]: /reference/data-modeling/context-variables#compile_context
-[ref-per-tenant-data-source-recipe]: /admin/configuration/recipes/multiple-sources-same-schema
-[ref-per-tenant-data-model-recipe]: /admin/configuration/recipes/custom-data-model-per-tenant
\ No newline at end of file
+[ref-per-tenant-data-source-recipe]: /recipes/configuration/multiple-sources-same-schema
+[ref-per-tenant-data-model-recipe]: /recipes/configuration/custom-data-model-per-tenant
\ No newline at end of file
diff --git a/docs-mintlify/cube-core/deployment.mdx b/docs-mintlify/cube-core/deployment.mdx
index ad80df25cc5b9..90a4708729385 100644
--- a/docs-mintlify/cube-core/deployment.mdx
+++ b/docs-mintlify/cube-core/deployment.mdx
@@ -524,7 +524,7 @@ data source usage.
[blog-migrate-to-cube-cloud]:
https://cube.dev/blog/migrating-from-self-hosted-to-cube-cloud/
[link-cube-cloud]: https://cubecloud.dev
-[link-cubejs-dev-vs-prod]: /admin/configuration#development-mode
+[link-cubejs-dev-vs-prod]: /admin/connect-to-data#development-mode
[link-k8s-healthcheck-api]:
https://kubernetes.io/docs/reference/using-api/health-checks/
[ref-config-connect-db]: /connecting-to-the-database
@@ -532,17 +532,17 @@ data source usage.
[ref-conf-preaggs-schema]: /reference/configuration/config#pre_aggregations_schema
[ref-env-vars]: /reference/configuration/environment-variables
[ref-schema-ref-preaggs]: /reference/data-modeling/pre-aggregations
-[ref-sec-ctx]: /access-security/access-control/context
+[ref-sec-ctx]: /docs/data-modeling/access-control/context
[ref-config-jwt]: /reference/configuration/config#jwt
[ref-api-readyz]: /reference/rest-api/reference#readyz
[ref-api-livez]: /reference/rest-api/reference#livez
-[ref-data-store-cost-saving-guide]: /admin/configuration/recipes/data-store-cost-saving-guide
+[ref-data-store-cost-saving-guide]: /recipes/configuration/data-store-cost-saving-guide
[medium-letsencrypt-nginx]:
https://pentacent.medium.com/nginx-and-lets-encrypt-with-docker-in-less-than-5-minutes-b4b8a60d3a71
[link-cubejs-docker]: https://hub.docker.com/r/cubejs/cube
[link-docker-app]: https://www.docker.com/products/docker-app
[link-nginx]: https://www.nginx.com/
-[ref-config-files]: /admin/configuration#cubepy-and-cubejs-files
+[ref-config-files]: /admin/connect-to-data#cubepy-and-cubejs-files
[ref-dynamic-data-models]: /docs/data-modeling/dynamic
[ref-config-queryrewrite]: /reference/configuration/config#queryrewrite
[ref-config-sched-ref-ctx]: /reference/configuration/config#scheduledrefreshcontexts
\ No newline at end of file
diff --git a/docs-mintlify/cube-core/getting-started/create-a-project.mdx b/docs-mintlify/cube-core/getting-started/create-a-project.mdx
index ad498ff1c3e57..6e04754d53c55 100644
--- a/docs-mintlify/cube-core/getting-started/create-a-project.mdx
+++ b/docs-mintlify/cube-core/getting-started/create-a-project.mdx
@@ -35,7 +35,7 @@ services:
```
Note that we're setting the [`CUBEJS_DEV_MODE`](/reference/configuration/environment-variables#cubejs_dev_mode) environment variable to `true` to
-enable the [Development Mode](/admin/configuration#development-mode). This is
+enable the [Development Mode](/admin/connect-to-data#development-mode). This is
handy for local development but not suitable for
[production](/docs/deployment/production-checklist).
@@ -115,7 +115,7 @@ You're now ready for the next step, [querying the
data][ref-getting-started-core-query-cube].
[powershell-docs]: https://learn.microsoft.com/en-us/powershell/
-[ref-conf-db]: /admin/configuration/data-sources
+[ref-conf-db]: /admin/connect-to-data/data-sources
[ref-getting-started-core-query-cube]: /docs/getting-started/core/query-data
[ref-devtools-playground]: /docs/workspace/playground
[wsl2-docs]: https://learn.microsoft.com/en-us/windows/wsl/install
diff --git a/docs-mintlify/cube-core/getting-started/learn-more.mdx b/docs-mintlify/cube-core/getting-started/learn-more.mdx
index e596e5995967c..410356d6facb0 100644
--- a/docs-mintlify/cube-core/getting-started/learn-more.mdx
+++ b/docs-mintlify/cube-core/getting-started/learn-more.mdx
@@ -18,7 +18,7 @@ and how to effectively define metrics in your data models.
Cube can be queried in a variety of ways. Explore how to use
[REST API](/reference/rest-api), [GraphQL API](/reference/graphql-api), and
[SQL API](/reference/sql-api), or how to
-[connect a BI or data visualization tool](/admin/configuration/visualization-tools).
+[connect a BI or data visualization tool](/admin/connect-to-data/visualization-tools).
## Caching
@@ -28,6 +28,6 @@ Learn more about the [two-level cache](/docs/caching) and how
## Access Control
Cube uses [JSON Web Tokens](https://jwt.io/) to
-[authenticate requests for the HTTP APIs](/access-security/access-control), and
+[authenticate requests for the HTTP APIs](/docs/data-modeling/access-control), and
[`check_sql_auth`](/reference/configuration/config#check_sql_auth) to
[authenticate requests for the SQL API](/reference/sql-api/security).
diff --git a/docs-mintlify/cube-core/getting-started/query-data.mdx b/docs-mintlify/cube-core/getting-started/query-data.mdx
index a30bb716b0058..1a356d62f3037 100644
--- a/docs-mintlify/cube-core/getting-started/query-data.mdx
+++ b/docs-mintlify/cube-core/getting-started/query-data.mdx
@@ -62,7 +62,7 @@ pre-aggregations][next] to speed up your queries.
[ref-graphql-api]: /reference/graphql-api
[ref-rest-api]: /reference/rest-api
-[ref-downstream]: /admin/configuration/visualization-tools
+[ref-downstream]: /admin/connect-to-data/visualization-tools
[ref-frontend-int]: /reference/javascript-sdk
[ref-sql-api]: /reference/sql-api
[next]: /docs/getting-started/core/add-a-pre-aggregation
\ No newline at end of file
diff --git a/docs-mintlify/cube-core/migrate-from-core/import-bitbucket-repository-via-ssh.mdx b/docs-mintlify/cube-core/migrate-from-core/import-bitbucket-repository-via-ssh.mdx
index 88d2f0e329987..e2312dccbec5b 100644
--- a/docs-mintlify/cube-core/migrate-from-core/import-bitbucket-repository-via-ssh.mdx
+++ b/docs-mintlify/cube-core/migrate-from-core/import-bitbucket-repository-via-ssh.mdx
@@ -208,4 +208,4 @@ application to the Cube Cloud API.
[bitbucket]: https://bitbucket.org/
-[link-connecting-to-databases]: /admin/configuration/data-sources
\ No newline at end of file
+[link-connecting-to-databases]: /admin/connect-to-data/data-sources
\ No newline at end of file
diff --git a/docs-mintlify/cube-core/migrate-from-core/import-git-repository-via-ssh.mdx b/docs-mintlify/cube-core/migrate-from-core/import-git-repository-via-ssh.mdx
index 4c34f099e2aee..1932d11d40ec4 100644
--- a/docs-mintlify/cube-core/migrate-from-core/import-git-repository-via-ssh.mdx
+++ b/docs-mintlify/cube-core/migrate-from-core/import-git-repository-via-ssh.mdx
@@ -169,4 +169,4 @@ application to the Cube Cloud API.
/>
-[link-connecting-to-databases]: /admin/configuration/data-sources
\ No newline at end of file
+[link-connecting-to-databases]: /admin/connect-to-data/data-sources
\ No newline at end of file
diff --git a/docs-mintlify/cube-core/migrate-from-core/import-github-repository.mdx b/docs-mintlify/cube-core/migrate-from-core/import-github-repository.mdx
index c4f3b8983eb75..3ab41d9b26e8c 100644
--- a/docs-mintlify/cube-core/migrate-from-core/import-github-repository.mdx
+++ b/docs-mintlify/cube-core/migrate-from-core/import-github-repository.mdx
@@ -147,4 +147,4 @@ application to Cube Cloud API.
[github]: https://github.com
-[link-connecting-to-databases]: /admin/configuration/data-sources
\ No newline at end of file
+[link-connecting-to-databases]: /admin/connect-to-data/data-sources
\ No newline at end of file
diff --git a/docs-mintlify/cube-core/migrate-from-core/import-gitlab-repository-via-ssh.mdx b/docs-mintlify/cube-core/migrate-from-core/import-gitlab-repository-via-ssh.mdx
index 042a3c904e03b..ff2f5704805ac 100644
--- a/docs-mintlify/cube-core/migrate-from-core/import-gitlab-repository-via-ssh.mdx
+++ b/docs-mintlify/cube-core/migrate-from-core/import-gitlab-repository-via-ssh.mdx
@@ -207,4 +207,4 @@ application to the Cube Cloud API.
[gitlab]: https://gitlab.com/
-[link-connecting-to-databases]: /admin/configuration/data-sources
\ No newline at end of file
+[link-connecting-to-databases]: /admin/connect-to-data/data-sources
\ No newline at end of file
diff --git a/docs-mintlify/cube-core/migrate-from-core/upload-with-cli.mdx b/docs-mintlify/cube-core/migrate-from-core/upload-with-cli.mdx
index 8c7518e2be4a6..6389f9f0ee6ad 100644
--- a/docs-mintlify/cube-core/migrate-from-core/upload-with-cli.mdx
+++ b/docs-mintlify/cube-core/migrate-from-core/upload-with-cli.mdx
@@ -103,5 +103,5 @@ queries or connect your application to Cube Cloud API.
/>
-[ref-cloud-connecting-to-databases]: /admin/configuration/data-sources
+[ref-cloud-connecting-to-databases]: /admin/connect-to-data/data-sources
[ref-cloud-playground]: /cloud/dev-tools/dev-playground
diff --git a/docs-mintlify/cube-core/running-in-production.mdx b/docs-mintlify/cube-core/running-in-production.mdx
index f859746cd5438..c605dc8991897 100644
--- a/docs-mintlify/cube-core/running-in-production.mdx
+++ b/docs-mintlify/cube-core/running-in-production.mdx
@@ -432,7 +432,7 @@ It's not supported by Cube or the vendor.
[link-parquet-encryption]: https://parquet.apache.org/docs/file-format/data-pages/encryption/
[link-aes]: https://en.wikipedia.org/wiki/Advanced_Encryption_Standard
[ref-cmk]: /admin/deployment/encryption-keys
-[ref-data-sources]: /admin/configuration/data-sources
+[ref-data-sources]: /admin/connect-to-data/data-sources
[ref-pre-agg-partitions]: /docs/caching/using-pre-aggregations#partitioning
[ref-pre-agg-incremental]: /reference/data-modeling/pre-aggregations#incremental
[ref-pre-agg-build-range]: /reference/data-modeling/pre-aggregations#build_range_start-and-build_range_end
diff --git a/docs-mintlify/docs.json b/docs-mintlify/docs.json
index 2eda1bff0077a..9223a09ae2ed3 100644
--- a/docs-mintlify/docs.json
+++ b/docs-mintlify/docs.json
@@ -49,23 +49,23 @@
"pages": [
{
"group": "Workbooks",
+ "root": "docs/explore-analyze/workbooks/index",
"pages": [
- "analytics/workbooks",
- "analytics/workbooks/querying-data",
- "analytics/workbooks/source-sql-tabs",
- "analytics/workbooks/charts"
+ "docs/explore-analyze/workbooks/querying-data",
+ "docs/explore-analyze/workbooks/source-sql-tabs",
+ "docs/explore-analyze/workbooks/charts"
]
},
- "analytics/explore",
- "analytics/analytics-chat"
+ "docs/explore-analyze/explore",
+ "docs/explore-analyze/analytics-chat"
]
},
{
"group": "Present & Share",
"pages": [
- "analytics/dashboards",
- "analytics/scheduled-refreshes",
- "analytics/notifications"
+ "docs/explore-analyze/dashboards",
+ "docs/explore-analyze/scheduled-refreshes",
+ "docs/explore-analyze/notifications"
]
},
{
@@ -88,11 +88,11 @@
{
"group": "Access Control",
"pages": [
- "access-security/access-control/index",
+ "docs/data-modeling/access-control/index",
"docs/data-modeling/data-access-policies",
- "access-security/access-control/row-level-security",
- "access-security/access-control/member-level-security",
- "access-security/access-control/context"
+ "docs/data-modeling/access-control/row-level-security",
+ "docs/data-modeling/access-control/member-level-security",
+ "docs/data-modeling/access-control/context"
]
},
@@ -114,31 +114,6 @@
"docs/data-modeling/dev-mode",
"docs/data-modeling/sql-runner"
]
- },
- {
- "group": "Recipes",
- "pages": [
- "docs/data-modeling/recipes/style-guide",
- "docs/data-modeling/recipes/designing-metrics",
- "docs/data-modeling/recipes/percentiles",
- "docs/data-modeling/recipes/nested-aggregates",
- "docs/data-modeling/recipes/filtered-aggregates",
- "docs/data-modeling/recipes/period-over-period",
- "docs/data-modeling/recipes/passing-dynamic-parameters-in-a-query",
- "docs/data-modeling/recipes/using-dynamic-measures",
- "docs/data-modeling/recipes/dynamic-union-tables",
- "docs/data-modeling/recipes/string-time-dimensions",
- "docs/data-modeling/recipes/custom-granularity",
- "docs/data-modeling/recipes/custom-calendar",
- "docs/data-modeling/recipes/entity-attribute-value",
- "docs/data-modeling/recipes/snapshots",
- "docs/data-modeling/recipes/active-users",
- "docs/data-modeling/recipes/event-analytics",
- "docs/data-modeling/recipes/funnels",
- "docs/data-modeling/recipes/cohort-retention",
- "docs/data-modeling/recipes/xirr",
- "docs/data-modeling/recipes/dbt"
- ]
}
]
},
@@ -150,18 +125,7 @@
"docs/caching/using-pre-aggregations",
"docs/caching/matching-pre-aggregations",
"docs/caching/refreshing-pre-aggregations",
- "docs/caching/lambda-pre-aggregations",
- {
- "group": "Recipes",
- "pages": [
- "docs/caching/recipes/non-additivity",
- "docs/caching/recipes/incrementally-building-pre-aggregations-for-a-date-range",
- "docs/caching/recipes/disabling-pre-aggregations",
- "docs/caching/recipes/using-originalsql-and-rollups-effectively",
- "docs/caching/recipes/refreshing-select-partitions",
- "docs/caching/recipes/joining-multiple-data-sources"
- ]
- }
+ "docs/caching/lambda-pre-aggregations"
]
},
{
@@ -172,8 +136,8 @@
"group": "Power BI",
"pages": [
"docs/integrations/power-bi",
- "access-security/authentication/kerberos",
- "access-security/authentication/ntlm"
+ "docs/integrations/power-bi/kerberos",
+ "docs/integrations/power-bi/ntlm"
]
},
"docs/integrations/microsoft-excel",
@@ -198,54 +162,44 @@
"tab": "Admin",
"groups": [
{
- "group": "Data Sources",
+ "group": "Connect to data",
"pages": [
- "admin/configuration",
+ "admin/connect-to-data/index",
{
"group": "Data Sources",
+ "root": "admin/connect-to-data/data-sources/index",
"pages": [
- "admin/configuration/data-sources",
- "admin/configuration/data-sources/aws-athena",
- "admin/configuration/data-sources/aws-redshift",
- "admin/configuration/data-sources/clickhouse",
- "admin/configuration/data-sources/databricks-jdbc",
- "admin/configuration/data-sources/druid",
- "admin/configuration/data-sources/duckdb",
- "admin/configuration/data-sources/elasticsearch",
- "admin/configuration/data-sources/firebolt",
- "admin/configuration/data-sources/google-bigquery",
- "admin/configuration/data-sources/hive",
- "admin/configuration/data-sources/ksqldb",
- "admin/configuration/data-sources/materialize",
- "admin/configuration/data-sources/mongodb",
- "admin/configuration/data-sources/ms-fabric",
- "admin/configuration/data-sources/ms-sql",
- "admin/configuration/data-sources/mysql",
- "admin/configuration/data-sources/oracle",
- "admin/configuration/data-sources/pinot",
- "admin/configuration/data-sources/postgres",
- "admin/configuration/data-sources/presto",
- "admin/configuration/data-sources/questdb",
- "admin/configuration/data-sources/risingwave",
- "admin/configuration/data-sources/singlestore",
- "admin/configuration/data-sources/snowflake",
- "admin/configuration/data-sources/sqlite",
- "admin/configuration/data-sources/trino",
- "admin/configuration/data-sources/vertica"
+ "admin/connect-to-data/data-sources/aws-athena",
+ "admin/connect-to-data/data-sources/aws-redshift",
+ "admin/connect-to-data/data-sources/clickhouse",
+ "admin/connect-to-data/data-sources/databricks-jdbc",
+ "admin/connect-to-data/data-sources/druid",
+ "admin/connect-to-data/data-sources/duckdb",
+ "admin/connect-to-data/data-sources/elasticsearch",
+ "admin/connect-to-data/data-sources/firebolt",
+ "admin/connect-to-data/data-sources/google-bigquery",
+ "admin/connect-to-data/data-sources/hive",
+ "admin/connect-to-data/data-sources/ksqldb",
+ "admin/connect-to-data/data-sources/materialize",
+ "admin/connect-to-data/data-sources/mongodb",
+ "admin/connect-to-data/data-sources/ms-fabric",
+ "admin/connect-to-data/data-sources/ms-sql",
+ "admin/connect-to-data/data-sources/mysql",
+ "admin/connect-to-data/data-sources/oracle",
+ "admin/connect-to-data/data-sources/pinot",
+ "admin/connect-to-data/data-sources/postgres",
+ "admin/connect-to-data/data-sources/presto",
+ "admin/connect-to-data/data-sources/questdb",
+ "admin/connect-to-data/data-sources/risingwave",
+ "admin/connect-to-data/data-sources/singlestore",
+ "admin/connect-to-data/data-sources/snowflake",
+ "admin/connect-to-data/data-sources/sqlite",
+ "admin/connect-to-data/data-sources/trino",
+ "admin/connect-to-data/data-sources/vertica"
]
},
- "admin/configuration/multiple-data-sources",
- "admin/configuration/concurrency",
- {
- "group": "Recipes",
- "pages": [
- "admin/configuration/recipes/environment-variables",
- "admin/configuration/recipes/using-ssl-connections-to-data-source",
- "admin/configuration/recipes/data-store-cost-saving-guide",
- "admin/configuration/recipes/multiple-sources-same-schema",
- "admin/configuration/recipes/custom-data-model-per-tenant"
- ]
- }
+ "admin/connect-to-data/multiple-data-sources",
+ "admin/connect-to-data/concurrency"
]
},
{
@@ -426,9 +380,9 @@
{
"group": "Authentication",
"pages": [
- "access-security/authentication/jwt",
- "access-security/authentication/auth0",
- "access-security/authentication/aws-cognito"
+ "embedding/authentication/jwt",
+ "embedding/authentication/auth0",
+ "embedding/authentication/aws-cognito"
]
},
"cube-core/configuration/multitenancy"
@@ -572,16 +526,79 @@
"cube-core/deployment",
"cube-core/running-in-production"
]
- },
+ }
+ ]
+ },
+ {
+ "tab": "Recipes",
+ "groups": [
{
- "group": "API Recipes",
+ "group": "Topics",
"pages": [
- "reference/recipes/getting-unique-values-for-a-field",
- "reference/recipes/cast-numerics",
- "reference/recipes/sorting",
- "reference/recipes/pagination",
- "reference/recipes/drilldowns",
- "reference/recipes/real-time-data-fetch"
+ "recipes/index",
+ {
+ "group": "API",
+ "pages": [
+ "recipes/core-data-api/getting-unique-values-for-a-field",
+ "recipes/core-data-api/cast-numerics",
+ "recipes/core-data-api/sorting",
+ "recipes/core-data-api/pagination",
+ "recipes/core-data-api/drilldowns",
+ "recipes/core-data-api/real-time-data-fetch"
+ ]
+ },
+ {
+ "group": "AI",
+ "pages": [
+ "recipes/ai/agent-to-agent"
+ ]
+ },
+ {
+ "group": "Pre-aggregations",
+ "pages": [
+ "recipes/pre-aggregations/non-additivity",
+ "recipes/pre-aggregations/incrementally-building-pre-aggregations-for-a-date-range",
+ "recipes/pre-aggregations/disabling-pre-aggregations",
+ "recipes/pre-aggregations/using-originalsql-and-rollups-effectively",
+ "recipes/pre-aggregations/refreshing-select-partitions",
+ "recipes/pre-aggregations/joining-multiple-data-sources"
+ ]
+ },
+ {
+ "group": "Configuration",
+ "pages": [
+ "recipes/configuration/environment-variables",
+ "recipes/configuration/using-ssl-connections-to-data-source",
+ "recipes/configuration/data-store-cost-saving-guide",
+ "recipes/configuration/multiple-sources-same-schema",
+ "recipes/configuration/custom-data-model-per-tenant"
+ ]
+ },
+ {
+ "group": "Data Modeling",
+ "pages": [
+ "recipes/data-modeling/style-guide",
+ "recipes/data-modeling/designing-metrics",
+ "recipes/data-modeling/percentiles",
+ "recipes/data-modeling/nested-aggregates",
+ "recipes/data-modeling/filtered-aggregates",
+ "recipes/data-modeling/period-over-period",
+ "recipes/data-modeling/passing-dynamic-parameters-in-a-query",
+ "recipes/data-modeling/using-dynamic-measures",
+ "recipes/data-modeling/dynamic-union-tables",
+ "recipes/data-modeling/string-time-dimensions",
+ "recipes/data-modeling/custom-granularity",
+ "recipes/data-modeling/custom-calendar",
+ "recipes/data-modeling/entity-attribute-value",
+ "recipes/data-modeling/snapshots",
+ "recipes/data-modeling/active-users",
+ "recipes/data-modeling/event-analytics",
+ "recipes/data-modeling/funnels",
+ "recipes/data-modeling/cohort-retention",
+ "recipes/data-modeling/xirr",
+ "recipes/data-modeling/dbt"
+ ]
+ }
]
}
]
@@ -616,21 +633,5 @@
}
},
"redirects": [
- {
- "source": "/docs/data-modeling/reference/types-and-formats",
- "destination": "/reference/data-modeling/measures#type"
- },
- {
- "source": "/docs/data-modeling/reference/:slug*",
- "destination": "/reference/data-modeling/:slug*"
- },
- {
- "source": "/api-reference/:slug*",
- "destination": "/reference/:slug*"
- },
- {
- "source": "/docs/configuration/:slug*",
- "destination": "/admin/configuration/:slug*"
- }
]
}
\ No newline at end of file
diff --git a/docs-mintlify/docs/caching/index.mdx b/docs-mintlify/docs/caching/index.mdx
index 1301c29401888..86309cec6b0d3 100644
--- a/docs-mintlify/docs/caching/index.mdx
+++ b/docs-mintlify/docs/caching/index.mdx
@@ -290,7 +290,7 @@ cache types.
[link-cube-cloud]: https://cube.dev/cloud
[ref-config-preagg-schema]: /reference/configuration/config#preaggregationsschema
[ref-dev-playground]: /docs/workspace/playground
-[ref-development-mode]: /admin/configuration#development-mode
+[ref-development-mode]: /admin/connect-to-data#development-mode
[ref-production-checklist]: /docs/deployment/production-checklist
[ref-production-checklist-refresh]: /docs/deployment/production-checklist#set-up-refresh-worker
[ref-schema-ref-cube-refresh-key]: /reference/data-modeling/cube#refresh_key
diff --git a/docs-mintlify/docs/caching/matching-pre-aggregations.mdx b/docs-mintlify/docs/caching/matching-pre-aggregations.mdx
index 7298d028148dc..78fea524719df 100644
--- a/docs-mintlify/docs/caching/matching-pre-aggregations.mdx
+++ b/docs-mintlify/docs/caching/matching-pre-aggregations.mdx
@@ -140,7 +140,7 @@ configuration option.
[ref-leaf-measures]: /docs/data-modeling/concepts#leaf-measures
[ref-calculated-measures]: /docs/data-modeling/overview#4-using-calculated-measures
[ref-non-strict-date-range-match]: /reference/data-modeling/pre-aggregations#allow_non_strict_date_range_match
-[ref-non-additive-recipe]: /docs/caching/recipes/non-additivity
+[ref-non-additive-recipe]: /recipes/pre-aggregations/non-additivity
[ref-conf-scheduled-refresh-time-zones]: /reference/configuration/config#scheduled_refresh_time_zones
[ref-ungrouped-queries]: /reference/queries#ungrouped-query
[ref-primary-key]: /reference/data-modeling/dimensions#primary_key
diff --git a/docs-mintlify/caching/overview.mdx b/docs-mintlify/docs/caching/overview.mdx
similarity index 100%
rename from docs-mintlify/caching/overview.mdx
rename to docs-mintlify/docs/caching/overview.mdx
diff --git a/docs-mintlify/docs/caching/refreshing-pre-aggregations.mdx b/docs-mintlify/docs/caching/refreshing-pre-aggregations.mdx
index 7b48445389b00..62e7ab12343e0 100644
--- a/docs-mintlify/docs/caching/refreshing-pre-aggregations.mdx
+++ b/docs-mintlify/docs/caching/refreshing-pre-aggregations.mdx
@@ -48,6 +48,6 @@ If you're using Cube Cloud, you can use a [production multi-cluster][ref-product
that would automatically do this for you.
-[ref-multitenancy]: /admin/configuration/multitenancy
+[ref-multitenancy]: /admin/connect-to-data/multitenancy
[ref-preaggs]: /docs/caching/using-pre-aggregations
[ref-production-multi-cluster]: /docs/deployment/cloud/deployment-types#production-multi-cluster
\ No newline at end of file
diff --git a/docs-mintlify/docs/caching/running-in-production.mdx b/docs-mintlify/docs/caching/running-in-production.mdx
index f859746cd5438..c605dc8991897 100644
--- a/docs-mintlify/docs/caching/running-in-production.mdx
+++ b/docs-mintlify/docs/caching/running-in-production.mdx
@@ -432,7 +432,7 @@ It's not supported by Cube or the vendor.
[link-parquet-encryption]: https://parquet.apache.org/docs/file-format/data-pages/encryption/
[link-aes]: https://en.wikipedia.org/wiki/Advanced_Encryption_Standard
[ref-cmk]: /admin/deployment/encryption-keys
-[ref-data-sources]: /admin/configuration/data-sources
+[ref-data-sources]: /admin/connect-to-data/data-sources
[ref-pre-agg-partitions]: /docs/caching/using-pre-aggregations#partitioning
[ref-pre-agg-incremental]: /reference/data-modeling/pre-aggregations#incremental
[ref-pre-agg-build-range]: /reference/data-modeling/pre-aggregations#build_range_start-and-build_range_end
diff --git a/docs-mintlify/docs/caching/using-pre-aggregations.mdx b/docs-mintlify/docs/caching/using-pre-aggregations.mdx
index 42ee6ea9e115d..3f4b5c121cf0f 100644
--- a/docs-mintlify/docs/caching/using-pre-aggregations.mdx
+++ b/docs-mintlify/docs/caching/using-pre-aggregations.mdx
@@ -192,8 +192,8 @@ the data between multiple tables, splitting them by a defined attribute.
Cube can be configured to incrementally refresh only the last set of partitions
through the `updateWindow` property. This leads to faster refresh times due to
unnecessary data not being reloaded, and even reduced cost for some databases
-like [BigQuery](/admin/configuration/data-sources/google-bigquery) or
-[AWS Athena](/admin/configuration/data-sources/aws-athena).
+like [BigQuery](/admin/connect-to-data/data-sources/google-bigquery) or
+[AWS Athena](/admin/connect-to-data/data-sources/aws-athena).
@@ -999,7 +999,7 @@ You don’t need to define `refresh_key` for streaming pre-aggregations. Whether
pre-aggregation is streaming or not is defined by the data source.
Currently, Cube supports only one streaming data source -
-[ksqlDB](/admin/configuration/data-sources/ksqldb). All pre-aggregations where
+[ksqlDB](/admin/connect-to-data/data-sources/ksqldb). All pre-aggregations where
data source is ksqlDB are streaming.
We are working on supporting more data sources for streaming pre-aggregations,
@@ -1037,7 +1037,7 @@ of this member. For numeric types, it will most likely be an integer, a float,
or a decimal type, depending on the nature of your data.
-[ref-config-db]: /admin/configuration/data-sources
+[ref-config-db]: /admin/connect-to-data/data-sources
[ref-schema-ref-preaggs]: /reference/data-modeling/pre-aggregations
[ref-schema-ref-preaggs-refresh-key]: /reference/data-modeling/pre-aggregations#refresh_key
[ref-schema-ref-preaggs-refresh-key-every]: /reference/data-modeling/pre-aggregations#every
@@ -1058,4 +1058,4 @@ or a decimal type, depending on the nature of your data.
[ref-cube-store]: /docs/caching/running-in-production#architecture
[ref-cube-store-storage]: /docs/caching/running-in-production#storage
[ref-member-sql]: /reference/data-modeling/dimensions#sql
-[ref-incremental-refresh-recipe]: /docs/caching/recipes/incrementally-building-pre-aggregations-for-a-date-range
\ No newline at end of file
+[ref-incremental-refresh-recipe]: /recipes/pre-aggregations/incrementally-building-pre-aggregations-for-a-date-range
\ No newline at end of file
diff --git a/docs-mintlify/access-security/access-control/context.mdx b/docs-mintlify/docs/data-modeling/access-control/context.mdx
similarity index 98%
rename from docs-mintlify/access-security/access-control/context.mdx
rename to docs-mintlify/docs/data-modeling/access-control/context.mdx
index 420cd683f1824..8088072fccadf 100644
--- a/docs-mintlify/access-security/access-control/context.mdx
+++ b/docs-mintlify/docs/data-modeling/access-control/context.mdx
@@ -535,13 +535,13 @@ view(`total_revenue_per_customer`, {
[link-auth0-jwks]:
https://auth0.com/docs/tokens/json-web-tokens/json-web-key-sets
-[link-multitenancy]: /admin/configuration/multitenancy
+[link-multitenancy]: /admin/connect-to-data/multitenancy
[ref-config-queryrewrite]: /reference/configuration/config#query_rewrite
[ref-config-sched-refresh]: /reference/configuration/config#scheduledrefreshcontexts
[ref-config-sec-ctx]: /reference/configuration/config#securitycontext
[ref-cubes-compile-ctx]: /reference/data-modeling/context-variables#compile_context
[ref-devtools-playground]: /docs/workspace/playground#editing-the-security-context
-[ref-auth-integration]: /access-security/access-control#authentication-integration
+[ref-auth-integration]: /docs/data-modeling/access-control#authentication-integration
[ref-extend-context]: /reference/configuration/config#extend_context
[ref-dynamic-data-modeling]: /docs/data-modeling/dynamic
-[ref-multitenancy]: /admin/configuration/multitenancy
\ No newline at end of file
+[ref-multitenancy]: /admin/connect-to-data/multitenancy
\ No newline at end of file
diff --git a/docs-mintlify/access-security/access-control/index.mdx b/docs-mintlify/docs/data-modeling/access-control/index.mdx
similarity index 78%
rename from docs-mintlify/access-security/access-control/index.mdx
rename to docs-mintlify/docs/data-modeling/access-control/index.mdx
index 6074a9319afea..ce0973957e232 100644
--- a/docs-mintlify/access-security/access-control/index.mdx
+++ b/docs-mintlify/docs/data-modeling/access-control/index.mdx
@@ -33,11 +33,11 @@ parameter.
configuration parameter for details.
-[ref-roles-perms]: /access-security/users-and-permissions/roles-and-permissions
-[ref-auth-methods]: /access-security/authentication
-[ref-user-groups]: /access-security/users-and-permissions/user-groups
-[ref-user-attributes]: /access-security/users-and-permissions/user-attributes
-[ref-sec-ctx]: /access-security/access-control/context
-[ref-dap]: /access-security/access-control/data-access-policies
+[ref-roles-perms]: /admin/users-and-permissions/roles-and-permissions
+[ref-auth-methods]: /embedding/authentication/jwt
+[ref-user-groups]: /admin/users-and-permissions/user-groups
+[ref-user-attributes]: /admin/users-and-permissions/user-attributes
+[ref-sec-ctx]: /docs/data-modeling/access-control/context
+[ref-dap]: /docs/data-modeling/access-control/data-access-policies
[ref-query-rewrite]: /reference/configuration/config#query_rewrite
[ref-ctx-to-groups]: /reference/configuration/config#context_to_groups
\ No newline at end of file
diff --git a/docs-mintlify/access-security/access-control/member-level-security.mdx b/docs-mintlify/docs/data-modeling/access-control/member-level-security.mdx
similarity index 94%
rename from docs-mintlify/access-security/access-control/member-level-security.mdx
rename to docs-mintlify/docs/data-modeling/access-control/member-level-security.mdx
index 5c9f840306dde..1365cbab33bd6 100644
--- a/docs-mintlify/access-security/access-control/member-level-security.mdx
+++ b/docs-mintlify/docs/data-modeling/access-control/member-level-security.mdx
@@ -149,10 +149,10 @@ them entirely, see [data masking][ref-data-masking] in access policies.
[ref-apis]: /reference
[ref-cubes]: /docs/data-modeling/concepts#cubes
[ref-views]: /docs/data-modeling/concepts#views
-[ref-dap]: /access-security/access-control/data-access-policies
+[ref-dap]: /docs/data-modeling/access-control/data-access-policies
[ref-ref-cubes]: /reference/data-modeling/cube
[ref-ref-views]: /reference/data-modeling/view
-[ref-dev-mode]: /admin/configuration#development-mode
+[ref-dev-mode]: /admin/connect-to-data#development-mode
[ref-playground]: /docs/workspace/playground
[ref-dap-ref]: /reference/data-modeling/data-access-policies
[ref-cubes-public]: /reference/data-modeling/cube#public
@@ -162,5 +162,5 @@ them entirely, see [data masking][ref-data-masking] in access policies.
[ref-hierarchies-public]: /reference/data-modeling/hierarchies#public
[ref-segments-public]: /reference/data-modeling/segments#public
[ref-dynamic-data-modeling]: /docs/data-modeling/dynamic
-[ref-security-context]: /access-security/access-control/context
-[ref-data-masking]: /access-security/access-control/data-access-policies#data-masking
\ No newline at end of file
+[ref-security-context]: /docs/data-modeling/access-control/context
+[ref-data-masking]: /docs/data-modeling/access-control/data-access-policies#data-masking
\ No newline at end of file
diff --git a/docs-mintlify/access-security/access-control/row-level-security.mdx b/docs-mintlify/docs/data-modeling/access-control/row-level-security.mdx
similarity index 90%
rename from docs-mintlify/access-security/access-control/row-level-security.mdx
rename to docs-mintlify/docs/data-modeling/access-control/row-level-security.mdx
index 2d958acf368a8..588279f5f70c7 100644
--- a/docs-mintlify/access-security/access-control/row-level-security.mdx
+++ b/docs-mintlify/docs/data-modeling/access-control/row-level-security.mdx
@@ -71,6 +71,6 @@ cube(`orders`, {
[ref-views]: /docs/data-modeling/concepts#views
[ref-cubes-sql]: /reference/data-modeling/cube#sql
[ref-dynamic-data-modeling]: /docs/data-modeling/dynamic
-[ref-dap]: /access-security/access-control/data-access-policies
-[ref-mls]: /access-security/access-control/member-level-security
-[ref-security-context]: /access-security/access-control/context
\ No newline at end of file
+[ref-dap]: /docs/data-modeling/access-control/data-access-policies
+[ref-mls]: /docs/data-modeling/access-control/member-level-security
+[ref-security-context]: /docs/data-modeling/access-control/context
\ No newline at end of file
diff --git a/docs-mintlify/docs/data-modeling/concepts/calculated-members.mdx b/docs-mintlify/docs/data-modeling/concepts/calculated-members.mdx
index bdfb61101cced..18b9653c9bc52 100644
--- a/docs-mintlify/docs/data-modeling/concepts/calculated-members.mdx
+++ b/docs-mintlify/docs/data-modeling/concepts/calculated-members.mdx
@@ -715,9 +715,9 @@ GROUP BY 1, 2
[ref-sql-expressions]: /docs/data-modeling/syntax#sql-expressions
[ref-joins]: /docs/data-modeling/concepts/working-with-joins
[ref-ref-subquery]: /reference/data-modeling/dimensions#sub_query
-[ref-decomposition-recipe]: /docs/caching/recipes/non-additivity#decomposing-into-a-formula-with-additive-measures
-[ref-nested-aggregates-recipe]: /docs/data-modeling/recipes/nested-aggregates
-[ref-filtered-aggregates-recipe]: /docs/data-modeling/recipes/filtered-aggregates
+[ref-decomposition-recipe]: /recipes/pre-aggregations/non-additivity#decomposing-into-a-formula-with-additive-measures
+[ref-nested-aggregates-recipe]: /recipes/data-modeling/nested-aggregates
+[ref-filtered-aggregates-recipe]: /recipes/data-modeling/filtered-aggregates
[ref-non-additive]: /docs/data-modeling/concepts#measure-additivity
[link-postgres-division]: https://www.postgresql.org/docs/current/functions-math.html#FUNCTIONS-MATH
[wiki-correlated-subquery]: https://en.wikipedia.org/wiki/Correlated_subquery
diff --git a/docs-mintlify/docs/data-modeling/concepts/index.mdx b/docs-mintlify/docs/data-modeling/concepts/index.mdx
index 5dac231180869..7c18c44080555 100644
--- a/docs-mintlify/docs/data-modeling/concepts/index.mdx
+++ b/docs-mintlify/docs/data-modeling/concepts/index.mdx
@@ -840,23 +840,23 @@ See the reference documentaton for the full list of pre-aggregation
[ref-syntax-references]: /docs/data-modeling/syntax#references
[ref-syntax-references-column]: /docs/data-modeling/syntax#column
[ref-calculated-measures]: /docs/data-modeling/overview#4-using-calculated-measures
-[ref-multitenancy]: /admin/configuration/multitenancy
+[ref-multitenancy]: /admin/connect-to-data/multitenancy
[ref-pmc]: /docs/deployment/cloud/deployment-types#production-multi-cluster
[ref-ref-time-dimensions]: /reference/data-modeling/dimensions#type
[ref-ref-dimension-granularities]: /reference/data-modeling/dimensions#granularities
[ref-ref-primary-key]: /reference/data-modeling/dimensions#primary_key
-[ref-custom-granularity-recipe]: /docs/data-modeling/recipes/custom-granularity
+[ref-custom-granularity-recipe]: /recipes/data-modeling/custom-granularity
[ref-proxy-granularity]: /docs/data-modeling/concepts/calculated-members#time-dimension-granularity
-[ref-mls]: /access-security/access-control/member-level-security
+[ref-mls]: /docs/data-modeling/access-control/member-level-security
[ref-ref-hierarchies]: /reference/data-modeling/hierarchies
[ref-ref-folders]: /reference/data-modeling/view#folders
[ref-multi-stage-calculations]: /docs/data-modeling/concepts/multi-stage-calculations
-[ref-entities-vs-metrics-recipe]: /docs/data-modeling/recipes/designing-metrics
-[ref-avg-and-percentile-recipe]: /docs/data-modeling/recipes/percentiles
-[ref-period-over-period-recipe]: /docs/data-modeling/recipes/period-over-period
-[ref-custom-calendar-recipe]: /docs/data-modeling/recipes/custom-calendar
-[ref-cube-with-dbt]: /docs/data-modeling/recipes/dbt
+[ref-entities-vs-metrics-recipe]: /recipes/data-modeling/designing-metrics
+[ref-avg-and-percentile-recipe]: /recipes/data-modeling/percentiles
+[ref-period-over-period-recipe]: /recipes/data-modeling/period-over-period
+[ref-custom-calendar-recipe]: /recipes/data-modeling/custom-calendar
+[ref-cube-with-dbt]: /recipes/data-modeling/dbt
[ref-apis-support]: /reference#data-modeling
-[ref-viz-tools]: /admin/configuration/visualization-tools
-[ref-data-sources]: /admin/configuration/data-sources
+[ref-viz-tools]: /admin/connect-to-data/visualization-tools
+[ref-data-sources]: /admin/connect-to-data/data-sources
[ref-calendar-cubes]: /docs/data-modeling/concepts/calendar-cubes
\ No newline at end of file
diff --git a/docs-mintlify/docs/data-modeling/concepts/syntax.mdx b/docs-mintlify/docs/data-modeling/concepts/syntax.mdx
index d77090ca48eab..13fe8bde64eae 100644
--- a/docs-mintlify/docs/data-modeling/concepts/syntax.mdx
+++ b/docs-mintlify/docs/data-modeling/concepts/syntax.mdx
@@ -992,14 +992,14 @@ string values in time dimensions.
[ref-time-dimension]: /reference/data-modeling/dimensions#type
[ref-default-granularities]: /docs/data-modeling/concepts#time-dimensions
[ref-custom-granularities]: /reference/data-modeling/dimensions#granularities
-[ref-style-guide]: /docs/data-modeling/recipes/style-guide
+[ref-style-guide]: /recipes/data-modeling/style-guide
[ref-polymorphism]: /docs/data-modeling/concepts/polymorphic-cubes
[ref-data-blending]: /docs/data-modeling/concepts/data-blending
[link-js-template-literals]: https://developer.mozilla.org/en-US/docs/Learn_web_development/Core/Scripting/Strings#embedding_javascript
[link-python-reserved-words]: https://docs.python.org/3/reference/lexical_analysis.html#keywords
[ref-dax-api-date-hierarchies]: /reference/dax-api#date-hierarchies
[ref-time-dimension]: /docs/data-modeling/concepts#time-dimensions
-[ref-recipe-string-time-dimensions]: /docs/data-modeling/recipes/string-time-dimensions
+[ref-recipe-string-time-dimensions]: /recipes/data-modeling/string-time-dimensions
[ref-views]: /docs/data-modeling/concepts#views
[ref-preaggs]: /docs/data-modeling/concepts#pre-aggregations
[ref-join-paths]: /docs/data-modeling/concepts/working-with-joins#join-paths
diff --git a/docs-mintlify/docs/data-modeling/data-access-policies.mdx b/docs-mintlify/docs/data-modeling/data-access-policies.mdx
index 18b36475265ed..14dd410a38789 100644
--- a/docs-mintlify/docs/data-modeling/data-access-policies.mdx
+++ b/docs-mintlify/docs/data-modeling/data-access-policies.mdx
@@ -564,8 +564,8 @@ cube(`orders`, {
-[ref-mls-public]: /access-security/access-control/member-level-security#managing-member-level-access
-[ref-sec-ctx]: /access-security/access-control/context
+[ref-mls-public]: /docs/data-modeling/access-control/member-level-security#managing-member-level-access
+[ref-sec-ctx]: /docs/data-modeling/access-control/context
[ref-ref-dap]: /reference/data-modeling/data-access-policies
[ref-ref-dap-role]: /reference/data-modeling/data-access-policies#role
[ref-ref-dap-masking]: /reference/data-modeling/data-access-policies#member-masking
diff --git a/docs-mintlify/docs/data-modeling/dynamic/code-reusability-export-and-import.mdx b/docs-mintlify/docs/data-modeling/dynamic/code-reusability-export-and-import.mdx
index 022f058e0f8a3..f220ae5258dce 100644
--- a/docs-mintlify/docs/data-modeling/dynamic/code-reusability-export-and-import.mdx
+++ b/docs-mintlify/docs/data-modeling/dynamic/code-reusability-export-and-import.mdx
@@ -123,4 +123,4 @@ export const capitalize = (s) => s.charAt(0).toUpperCase() + s.slice(1)
https://developer.mozilla.org/en-US/docs/web/javascript/reference/statements/export
[mdn-js-es6-import]:
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/import
-[ref-schema-string-time-dims]: /docs/data-modeling/recipes/string-time-dimensions
\ No newline at end of file
+[ref-schema-string-time-dims]: /recipes/data-modeling/string-time-dimensions
\ No newline at end of file
diff --git a/docs-mintlify/docs/data-modeling/dynamic/jinja.mdx b/docs-mintlify/docs/data-modeling/dynamic/jinja.mdx
index 057e97984780b..56ac1f823c107 100644
--- a/docs-mintlify/docs/data-modeling/dynamic/jinja.mdx
+++ b/docs-mintlify/docs/data-modeling/dynamic/jinja.mdx
@@ -391,7 +391,7 @@ image][ref-docker-image-extension].
[ref-cube-package]: /reference/data-modeling/cube-package
[ref-cube-template-context]: /reference/data-modeling/cube-package#templatecontext-class
[ref-cube-dbt-package]: /reference/data-modeling/cube_dbt
-[ref-cube-with-dbt]: /docs/data-modeling/recipes/dbt
+[ref-cube-with-dbt]: /recipes/data-modeling/dbt
[ref-data-model-editor]: /docs/data-modeling/data-model-ide
[ref-payground]: /docs/workspace/playground
[ref-meta-api]: /reference/rest-api/reference#base_pathv1meta
diff --git a/docs-mintlify/docs/data-modeling/sql-runner.mdx b/docs-mintlify/docs/data-modeling/sql-runner.mdx
index 73ee46718e4dd..ad308ec4b83e7 100644
--- a/docs-mintlify/docs/data-modeling/sql-runner.mdx
+++ b/docs-mintlify/docs/data-modeling/sql-runner.mdx
@@ -70,7 +70,7 @@ will be executed with the default security context. If one is provided, then the
security context.
[ref-conf-ref-driverfactory]: /reference/configuration/config#driverfactory
-[ref-recipe-multi-src-same-model]: /admin/configuration/recipes/multiple-sources-same-schema
+[ref-recipe-multi-src-same-model]: /recipes/configuration/multiple-sources-same-schema
### Scheduled Refresh Contexts
If you have configured
diff --git a/docs-mintlify/analytics/analytics-chat.mdx b/docs-mintlify/docs/explore-analyze/analytics-chat.mdx
similarity index 87%
rename from docs-mintlify/analytics/analytics-chat.mdx
rename to docs-mintlify/docs/explore-analyze/analytics-chat.mdx
index a3e6fb5fc5bc4..8f254c394a768 100644
--- a/docs-mintlify/analytics/analytics-chat.mdx
+++ b/docs-mintlify/docs/explore-analyze/analytics-chat.mdx
@@ -16,7 +16,7 @@ The AI agent interprets your questions, generates queries against your semantic
- **Natural language queries** – Ask questions in plain language without knowing SQL
- **Multi-query reasoning** – The AI creates and synthesizes multiple queries for complex questions
- **Semantic model integration** – All queries run against your semantic model with proper access control and security
-- **Save to Workbook** – Export insights to [Workbooks](/analytics/workbooks) for further analysis
+- **Save to Workbook** – Export insights to [Workbooks](/docs/explore-analyze/workbooks) for further analysis
## Embedding
@@ -24,7 +24,7 @@ Analytics Chat can be [embedded](/embedding) into your applications for customer
## Learn more
-- [Workbooks](/analytics/workbooks) – Build and organize reports with AI assistance
+- [Workbooks](/docs/explore-analyze/workbooks) – Build and organize reports with AI assistance
- [Embedding](/embedding) – Embed analytics in your applications
- [Cube Agentic Analytics announcement](https://cube.dev/blog/cube-agentic-analytics) – Learn about the vision behind agentic analytics
diff --git a/docs-mintlify/analytics/dashboards.mdx b/docs-mintlify/docs/explore-analyze/dashboards.mdx
similarity index 100%
rename from docs-mintlify/analytics/dashboards.mdx
rename to docs-mintlify/docs/explore-analyze/dashboards.mdx
diff --git a/docs-mintlify/analytics/explore.mdx b/docs-mintlify/docs/explore-analyze/explore.mdx
similarity index 95%
rename from docs-mintlify/analytics/explore.mdx
rename to docs-mintlify/docs/explore-analyze/explore.mdx
index d4ef11623acbe..ba79372dc8806 100644
--- a/docs-mintlify/analytics/explore.mdx
+++ b/docs-mintlify/docs/explore-analyze/explore.mdx
@@ -7,7 +7,7 @@ description: Start governed, shareable explorations from Analytics Chat or dashb
Explore is a quick way to explore data in your semantic layer either by point and click or with an AI agent. Unlike workbooks, Explore doesn't require you to create a workbook—you can start exploring immediately from dashboard, analytics chat or any semantic view.
-Explore state is saved to the URL, making it easy to share your exploration with another user. When you're ready to build a more permanent analysis, you can convert your exploration to a [workbook](/analytics/workbooks).
+Explore state is saved to the URL, making it easy to share your exploration with another user. When you're ready to build a more permanent analysis, you can convert your exploration to a [workbook](/docs/explore-analyze/workbooks).
Explore leverages your data model definitions, ensuring that all queries use consistent metrics, respect access control policies, and benefit from pre-aggregations for fast performance.
@@ -45,4 +45,4 @@ Navigate to the **Explore** page in the sidebar. From here, you can select any s
The functionality in Explore is similar to when working with semantic views in workbooks. You can build visualizations, pivot tables, and tables by selecting measures and dimensions from your semantic views, apply filters, group and aggregate data.
-Explore state is saved in the URL, making it easy to share your exploration with other users by simply copying and sharing the URL. When you're ready to build a more permanent analysis, you can [convert your exploration to a workbook](/analytics/workbooks).
+Explore state is saved in the URL, making it easy to share your exploration with other users by simply copying and sharing the URL. When you're ready to build a more permanent analysis, you can [convert your exploration to a workbook](/docs/explore-analyze/workbooks).
diff --git a/docs-mintlify/analytics/notifications.mdx b/docs-mintlify/docs/explore-analyze/notifications.mdx
similarity index 96%
rename from docs-mintlify/analytics/notifications.mdx
rename to docs-mintlify/docs/explore-analyze/notifications.mdx
index c6e4fb6e777e3..48ddd5e241fce 100644
--- a/docs-mintlify/analytics/notifications.mdx
+++ b/docs-mintlify/docs/explore-analyze/notifications.mdx
@@ -70,5 +70,5 @@ Before you can send Slack notifications, connect your Slack workspace:
This is a one-time setup. Once connected, you can select any channel your Slack
workspace has access to.
-[ref-roles]: /access-security/users-and-permissions/roles-and-permissions
+[ref-roles]: /admin/users-and-permissions/roles-and-permissions
[ref-scheduled-refreshes]: /analytics/scheduled-refreshes
\ No newline at end of file
diff --git a/docs-mintlify/analytics/playground.mdx b/docs-mintlify/docs/explore-analyze/playground.mdx
similarity index 95%
rename from docs-mintlify/analytics/playground.mdx
rename to docs-mintlify/docs/explore-analyze/playground.mdx
index 01487bc4a3e4f..93d2b780fd289 100644
--- a/docs-mintlify/analytics/playground.mdx
+++ b/docs-mintlify/docs/explore-analyze/playground.mdx
@@ -14,7 +14,7 @@ or use the [JavaScript SDKs][ref-js-sdk] to build your own query builder.
-We recommend to migrate over to [Explore](/analytics/explore) and [Workbooks](/analytics/workbooks) for data analysis in exploration in Cube cloud platform.
+We recommend to migrate over to [Explore](/docs/explore-analyze/explore) and [Workbooks](/docs/explore-analyze/workbooks) for data analysis in exploration in Cube cloud platform.
Playground is available in Cube Core at [localhost:4000](http://localhost:4000)
when it's run in the [development mode][ref-dev-mode].
@@ -195,11 +195,11 @@ manually.
*/}
-[ref-dev-mode]: /admin/configuration#development-mode
-[ref-dataviz-tools]: /admin/configuration/visualization-tools
+[ref-dev-mode]: /admin/connect-to-data#development-mode
+[ref-dataviz-tools]: /admin/connect-to-data/visualization-tools
[ref-js-sdk]: /reference/javascript-sdk
[ref-data-model]: /docs/data-modeling/data-model-ide#generating-data-model-files
-[ref-multiple-data-sources]: /admin/configuration/advanced/multiple-data-sources
+[ref-multiple-data-sources]: /admin/connect-to-data/advanced/multiple-data-sources
[ref-queries]: /reference/queries
[ref-data-modeling]: /docs/data-modeling/overview
[ref-data-model-title]: /reference/data-modeling/measures#title
diff --git a/docs-mintlify/analytics/scheduled-refreshes.mdx b/docs-mintlify/docs/explore-analyze/scheduled-refreshes.mdx
similarity index 97%
rename from docs-mintlify/analytics/scheduled-refreshes.mdx
rename to docs-mintlify/docs/explore-analyze/scheduled-refreshes.mdx
index c31f030117e91..364097d5ffd72 100644
--- a/docs-mintlify/analytics/scheduled-refreshes.mdx
+++ b/docs-mintlify/docs/explore-analyze/scheduled-refreshes.mdx
@@ -96,5 +96,5 @@ When a scheduled refresh runs, it progresses through these phases:
The sidebar shows real-time status updates during execution.
-[ref-roles]: /access-security/users-and-permissions/roles-and-permissions
+[ref-roles]: /admin/users-and-permissions/roles-and-permissions
[ref-notifications]: /analytics/notifications
\ No newline at end of file
diff --git a/docs-mintlify/analytics/workbooks/charts.mdx b/docs-mintlify/docs/explore-analyze/workbooks/charts.mdx
similarity index 100%
rename from docs-mintlify/analytics/workbooks/charts.mdx
rename to docs-mintlify/docs/explore-analyze/workbooks/charts.mdx
diff --git a/docs-mintlify/analytics/workbooks/index.mdx b/docs-mintlify/docs/explore-analyze/workbooks/index.mdx
similarity index 71%
rename from docs-mintlify/analytics/workbooks/index.mdx
rename to docs-mintlify/docs/explore-analyze/workbooks/index.mdx
index 7430497a3c078..3df263951feda 100644
--- a/docs-mintlify/analytics/workbooks/index.mdx
+++ b/docs-mintlify/docs/explore-analyze/workbooks/index.mdx
@@ -1,9 +1,8 @@
---
description: "Build reports with an AI agent, organize analyses across multiple tabs, and share insights with your team."
+title: Workbooks
---
- Workbooks
-
Workbooks allow you to build reports with an AI agent, organize the results of your
analysis, and share insights with your team.
@@ -17,7 +16,7 @@ Workbooks support two types of tabs, each designed for different querying approa
### Semantic Query
-[Semantic Query tabs](/analytics/workbooks/querying-data) allow you to query your data model through the semantic layer. This ensures all queries use consistent metrics, respect access control policies, and benefit from pre-aggregations for fast performance.
+[Semantic Query tabs](/docs/explore-analyze/workbooks/querying-data) allow you to query your data model through the semantic layer. This ensures all queries use consistent metrics, respect access control policies, and benefit from pre-aggregations for fast performance.
You can query the semantic layer in three ways:
@@ -27,7 +26,7 @@ You can query the semantic layer in three ways:
### Source SQL Query
-[Source SQL Query tabs](/analytics/workbooks/source-sql-tabs) allow you to query your connected data sources directly, bypassing the semantic layer. This gives you direct access to your raw data and enables deeper exploration beyond what's defined in your data model.
+[Source SQL Query tabs](/docs/explore-analyze/workbooks/source-sql-tabs) allow you to query your connected data sources directly, bypassing the semantic layer. This gives you direct access to your raw data and enables deeper exploration beyond what's defined in your data model.
You can query source SQL in two ways:
diff --git a/docs-mintlify/analytics/workbooks/querying-data.mdx b/docs-mintlify/docs/explore-analyze/workbooks/querying-data.mdx
similarity index 100%
rename from docs-mintlify/analytics/workbooks/querying-data.mdx
rename to docs-mintlify/docs/explore-analyze/workbooks/querying-data.mdx
diff --git a/docs-mintlify/analytics/workbooks/source-sql-tabs.mdx b/docs-mintlify/docs/explore-analyze/workbooks/source-sql-tabs.mdx
similarity index 100%
rename from docs-mintlify/analytics/workbooks/source-sql-tabs.mdx
rename to docs-mintlify/docs/explore-analyze/workbooks/source-sql-tabs.mdx
diff --git a/docs-mintlify/docs/getting-started/cloud/query-from-react-app.mdx b/docs-mintlify/docs/getting-started/cloud/query-from-react-app.mdx
index fad23824ba910..19e93b5a0505d 100644
--- a/docs-mintlify/docs/getting-started/cloud/query-from-react-app.mdx
+++ b/docs-mintlify/docs/getting-started/cloud/query-from-react-app.mdx
@@ -42,7 +42,7 @@ token. Cube uses the [JSON Web Token (JWT)](https://jwt.io/) standard by default
to authenticate requests. You can copy a temporary token from the "How to
connect to your application" modal window. For production use, you must generate
this token from your secret key. You can learn more about this in the
-[Authentication & Authorization](/access-security/access-control) section of the documentation.
+[Authentication & Authorization](/docs/data-modeling/access-control) section of the documentation.
```jsx
import cube from "@cubejs-client/core";
diff --git a/docs-mintlify/docs/getting-started/core/add-a-pre-aggregation.mdx b/docs-mintlify/docs/getting-started/core/add-a-pre-aggregation.mdx
deleted file mode 100644
index 5522542496385..0000000000000
--- a/docs-mintlify/docs/getting-started/core/add-a-pre-aggregation.mdx
+++ /dev/null
@@ -1,37 +0,0 @@
----
-title: Add a pre-aggregation
-description: Use Playground suggestions to add a pre-aggregation that accelerates a repeated query and see the performance difference immediately.
----
-
-# Add a pre-aggregation
-
-In this step, we'll add a pre-aggregation to optimize the performance of a
-specific query. Pre-aggregations are a caching technique that massively reduces
-query time from seconds to milliseconds. They are extremely useful for speeding
-up queries that are run frequently.
-
-From the **Build** tab, execute a query:
-
-
-
-
-
-Just above the results, click on **Query was not accelerated with
-pre-aggregation** to bring up the pre-aggregation suggestion:
-
-
-
-
-
-A pre-aggregation will be automatically suggested for the query;
-click **Add to the Data Model** and then retry the query in the
-Playground. This time, the query should be accelerated with a pre-aggregation:
-
-
-
-
-
-And with that, we conclude our Getting Started with Cube guide. If you'd like to
-learn more about Cube, [check out this page][next].
-
-[next]: /docs/getting-started/core/learn-more
\ No newline at end of file
diff --git a/docs-mintlify/docs/getting-started/core/create-a-project.mdx b/docs-mintlify/docs/getting-started/core/create-a-project.mdx
deleted file mode 100644
index ad498ff1c3e57..0000000000000
--- a/docs-mintlify/docs/getting-started/core/create-a-project.mdx
+++ /dev/null
@@ -1,121 +0,0 @@
----
-title: Create a project
-description: In this step, we will create a Cube Core project on your computer, connect a data source, and generate data models.
----
-
-# Create a project
-
-In this step, we will create a Cube Core project on your computer, connect a
-data source, and generate data models.
-
-## Scaffold a project
-
-Start by opening your terminal to create a new folder for the project, then
-create a `docker-compose.yml` file within it:
-
-```bash
-mkdir my-first-cube-project
-cd my-first-cube-project
-touch docker-compose.yml
-```
-
-Open the `docker-compose.yml` file and add the following content:
-
-```yaml
-services:
- cube:
- image: cubejs/cube:latest
- ports:
- - 4000:4000
- - 15432:15432
- environment:
- - CUBEJS_DEV_MODE=true
- volumes:
- - .:/cube/conf
-```
-
-Note that we're setting the [`CUBEJS_DEV_MODE`](/reference/configuration/environment-variables#cubejs_dev_mode) environment variable to `true` to
-enable the [Development Mode](/admin/configuration#development-mode). This is
-handy for local development but not suitable for
-[production](/docs/deployment/production-checklist).
-
-
-
-If you're using Linux as the Docker host OS, you'll also need to add
-`network_mode: 'host'` to your `docker-compose.yml`.
-
-
-
-## Start the development server
-
-From the newly-created project directory, run the following command to start
-Cube:
-
-```bash
-docker compose up -d
-```
-
-
-
-Using Windows? Remember to use [PowerShell][powershell-docs] or
-[WSL2][wsl2-docs] to run the command below.
-
-
-
-## Connect a data source
-
-Head to [http://localhost:4000](http://localhost:4000) to open the [Developer
-Playground][ref-devtools-playground].
-
-The Playground has a database connection wizard that loads when Cube is first
-started up and no `.env` file is found. After database credentials have been set
-up, an `.env` file will automatically be created and populated with credentials.
-
-
-
-
-
-
-
-Want to use a sample database instead? Select **PostgreSQL** and use the
-credentials below:
-
-
-
-| Field | Value |
-| -------- | ------------------ |
-| Host | `demo-db.cube.dev` |
-| Port | `5432` |
-| Database | `ecom` |
-| Username | `cube` |
-| Password | `12345` |
-
-
-
-After selecting the data source, enter valid credentials for it and
-click **Apply**. Check the [Connecting to Databases][ref-conf-db] page
-for more details on specific data sources.
-
-
-
-
-
-You should see tables available to you from the configured database; select the
-`orders` table. After selecting the table, click **Generate Data Model**
-and pick either **YAML** (recommended) or **JavaScript** format:
-
-
-
-
-
-Finally, click **Build** in the dialog, which should take you to
-the **Build** page.
-
-You're now ready for the next step, [querying the
-data][ref-getting-started-core-query-cube].
-
-[powershell-docs]: https://learn.microsoft.com/en-us/powershell/
-[ref-conf-db]: /admin/configuration/data-sources
-[ref-getting-started-core-query-cube]: /docs/getting-started/core/query-data
-[ref-devtools-playground]: /docs/workspace/playground
-[wsl2-docs]: https://learn.microsoft.com/en-us/windows/wsl/install
diff --git a/docs-mintlify/docs/getting-started/core/index.mdx b/docs-mintlify/docs/getting-started/core/index.mdx
deleted file mode 100644
index 6c9c71295452f..0000000000000
--- a/docs-mintlify/docs/getting-started/core/index.mdx
+++ /dev/null
@@ -1,21 +0,0 @@
----
-description: Create a project, connect a database, query data, and add a pre-aggregation in self-hosted Cube Core.
----
-
- Getting started with Cube Core
-
-First, we'll create a new project, connect it to a database and generate a data
-model from it. Then, we'll run queries using the Developer Playground and APIs.
-Finally, we'll add a pre-aggregation to optimize query latency down to
-milliseconds.
-
-This guide will walk you through the following tasks:
-
-- [Create a new project](/docs/getting-started/core/create-a-project)
-- [Run queries using the Developer Playground and APIs](/docs/getting-started/core/query-data)
-- [Add a pre-aggregation to optimize query performance](/docs/getting-started/core/add-a-pre-aggregation)
-
-If you'd prefer to try Cube Cloud, then you can refer to [Getting Started using
-Cube Cloud][ref-getting-started-cloud-overview] instead.
-
-[ref-getting-started-cloud-overview]: /docs/getting-started/cloud
\ No newline at end of file
diff --git a/docs-mintlify/docs/getting-started/core/learn-more.mdx b/docs-mintlify/docs/getting-started/core/learn-more.mdx
deleted file mode 100644
index e596e5995967c..0000000000000
--- a/docs-mintlify/docs/getting-started/core/learn-more.mdx
+++ /dev/null
@@ -1,33 +0,0 @@
----
-title: Learn more
-description: Now that you've set up your first project, learn more about what else Cube can do for you.
----
-
-# Learn more
-
-Now that you've set up your first project, learn more about what else Cube can
-do for you.
-
-## Data Modeling
-
-Learn more about [data modeling](/docs/data-modeling/concepts)
-and how to effectively define metrics in your data models.
-
-## Querying
-
-Cube can be queried in a variety of ways. Explore how to use
-[REST API](/reference/rest-api), [GraphQL API](/reference/graphql-api), and
-[SQL API](/reference/sql-api), or how to
-[connect a BI or data visualization tool](/admin/configuration/visualization-tools).
-
-## Caching
-
-Learn more about the [two-level cache](/docs/caching) and how
-[pre-aggregations help speed up queries](/docs/caching/getting-started-pre-aggregations).
-
-## Access Control
-
-Cube uses [JSON Web Tokens](https://jwt.io/) to
-[authenticate requests for the HTTP APIs](/access-security/access-control), and
-[`check_sql_auth`](/reference/configuration/config#check_sql_auth) to
-[authenticate requests for the SQL API](/reference/sql-api/security).
diff --git a/docs-mintlify/docs/getting-started/core/query-data.mdx b/docs-mintlify/docs/getting-started/core/query-data.mdx
deleted file mode 100644
index d8b0fba1206d4..0000000000000
--- a/docs-mintlify/docs/getting-started/core/query-data.mdx
+++ /dev/null
@@ -1,68 +0,0 @@
----
-title: Query data
-description: Run and inspect semantic-layer queries in Playground, then connect the same model to downstream APIs and integrations.
----
-
-# Query data
-
-In this step, you will learn how to query your data using the data models you
-created in the previous step. Cube provides several ways to query your data, and
-we'll go over them here.
-
-## Playground
-
-[Playground](/docs/workspace/playground) is a web-based tool which allows for
-model generation and data exploration. On the **Build** tab, you can
-select the measures and dimensions, and then run the query. Let's do this for
-the `orders` cube you generated in the previous step.
-
-Click **+ Measure** to display the available measures and add
-`orders.count`, then click **+ Dimension** for available dimensions and
-add `orders.status`:
-
-
-
-
-
-Then, click **Run** to execute the query and see the results:
-
-
-
-
-
-Please feel free to experiment: select other measures or dimensions, pick a
-granularity for the time dimension instead of **w/o grouping**, or choose
-another chart type instead of **Table**.
-
-## APIs and integrations
-
-Cube provides a [rich set of options][ref-downstream] to deliver data to other
-tools: a suite of APIs, [JavaScript SDKs][ref-frontend-int], and integrations.
-
-Connectivity to BI tools and data notebooks is enabled by the [SQL
-API][ref-sql-api] which is Postgres-compatible: if something connects to
-Postgres, it will work with Cube. Check the **Connect to BI** tab for
-connection instructions for specific BI tools:
-
-
-
-
-
-Connectivity to data applications is enabled by the [REST API][ref-rest-api] and
-the [GraphQL API][ref-graphql-api] as well as [JavaScript
-SDKs][ref-frontend-int]. Check the **Frontend Integrations** tab for
-usage instructions for these APIs:
-
-
-
-
-
-Now that we've seen how to use Cube's APIs, let's take a look at [how to add
-pre-aggregations][next] to speed up your queries.
-
-[ref-graphql-api]: /reference/graphql-api
-[ref-rest-api]: /reference/rest-api
-[ref-downstream]: /admin/configuration/visualization-tools
-[ref-frontend-int]: /reference/javascript-sdk
-[ref-sql-api]: /reference/sql-api
-[next]: /docs/getting-started/core/add-a-pre-aggregation
\ No newline at end of file
diff --git a/docs-mintlify/docs/getting-started/databricks/query-from-react-app.mdx b/docs-mintlify/docs/getting-started/databricks/query-from-react-app.mdx
index 7116b10587da9..7156095d288c7 100644
--- a/docs-mintlify/docs/getting-started/databricks/query-from-react-app.mdx
+++ b/docs-mintlify/docs/getting-started/databricks/query-from-react-app.mdx
@@ -42,7 +42,7 @@ token. Cube uses the [JSON Web Token (JWT)](https://jwt.io/) standard by default
to authenticate requests. You can copy a temporary token from the "How to
connect to your application" modal window. For production use, you must generate
this token from your secret key. You can learn more about this in the
-[Authentication & Authorization](/access-security/access-control) section of the documentation.
+[Authentication & Authorization](/docs/data-modeling/access-control) section of the documentation.
```jsx
import cube from "@cubejs-client/core";
diff --git a/docs-mintlify/docs/getting-started/index.mdx b/docs-mintlify/docs/getting-started/index.mdx
index 440d229cae298..064655bad6362 100644
--- a/docs-mintlify/docs/getting-started/index.mdx
+++ b/docs-mintlify/docs/getting-started/index.mdx
@@ -35,4 +35,4 @@ Cube Cloud supports several ways to import existing Cube projects:
[cube-cloud]: https://cube.dev/cloud/
[ref-infrastructure]: /docs/deployment/cloud
[ref-workspace]: /docs/workspace
-[ref-data-sources]: /admin/configuration/data-sources
\ No newline at end of file
+[ref-data-sources]: /admin/connect-to-data/data-sources
\ No newline at end of file
diff --git a/docs-mintlify/docs/getting-started/migrate-from-core/import-bitbucket-repository-via-ssh.mdx b/docs-mintlify/docs/getting-started/migrate-from-core/import-bitbucket-repository-via-ssh.mdx
index b8879d0e48206..fa0a9c14a2d00 100644
--- a/docs-mintlify/docs/getting-started/migrate-from-core/import-bitbucket-repository-via-ssh.mdx
+++ b/docs-mintlify/docs/getting-started/migrate-from-core/import-bitbucket-repository-via-ssh.mdx
@@ -208,4 +208,4 @@ application to the Cube Cloud API.
[bitbucket]: https://bitbucket.org/
-[link-connecting-to-databases]: /admin/configuration/data-sources
\ No newline at end of file
+[link-connecting-to-databases]: /admin/connect-to-data/data-sources
\ No newline at end of file
diff --git a/docs-mintlify/docs/getting-started/migrate-from-core/import-git-repository-via-ssh.mdx b/docs-mintlify/docs/getting-started/migrate-from-core/import-git-repository-via-ssh.mdx
index 4c34f099e2aee..1932d11d40ec4 100644
--- a/docs-mintlify/docs/getting-started/migrate-from-core/import-git-repository-via-ssh.mdx
+++ b/docs-mintlify/docs/getting-started/migrate-from-core/import-git-repository-via-ssh.mdx
@@ -169,4 +169,4 @@ application to the Cube Cloud API.
/>
-[link-connecting-to-databases]: /admin/configuration/data-sources
\ No newline at end of file
+[link-connecting-to-databases]: /admin/connect-to-data/data-sources
\ No newline at end of file
diff --git a/docs-mintlify/docs/getting-started/migrate-from-core/import-github-repository.mdx b/docs-mintlify/docs/getting-started/migrate-from-core/import-github-repository.mdx
index c4f3b8983eb75..3ab41d9b26e8c 100644
--- a/docs-mintlify/docs/getting-started/migrate-from-core/import-github-repository.mdx
+++ b/docs-mintlify/docs/getting-started/migrate-from-core/import-github-repository.mdx
@@ -147,4 +147,4 @@ application to Cube Cloud API.
[github]: https://github.com
-[link-connecting-to-databases]: /admin/configuration/data-sources
\ No newline at end of file
+[link-connecting-to-databases]: /admin/connect-to-data/data-sources
\ No newline at end of file
diff --git a/docs-mintlify/docs/getting-started/migrate-from-core/import-gitlab-repository-via-ssh.mdx b/docs-mintlify/docs/getting-started/migrate-from-core/import-gitlab-repository-via-ssh.mdx
index 4ae0bee597e33..21eed427bbc64 100644
--- a/docs-mintlify/docs/getting-started/migrate-from-core/import-gitlab-repository-via-ssh.mdx
+++ b/docs-mintlify/docs/getting-started/migrate-from-core/import-gitlab-repository-via-ssh.mdx
@@ -207,4 +207,4 @@ application to the Cube Cloud API.
[gitlab]: https://gitlab.com/
-[link-connecting-to-databases]: /admin/configuration/data-sources
\ No newline at end of file
+[link-connecting-to-databases]: /admin/connect-to-data/data-sources
\ No newline at end of file
diff --git a/docs-mintlify/docs/getting-started/migrate-from-core/upload-with-cli.mdx b/docs-mintlify/docs/getting-started/migrate-from-core/upload-with-cli.mdx
index 8c7518e2be4a6..6389f9f0ee6ad 100644
--- a/docs-mintlify/docs/getting-started/migrate-from-core/upload-with-cli.mdx
+++ b/docs-mintlify/docs/getting-started/migrate-from-core/upload-with-cli.mdx
@@ -103,5 +103,5 @@ queries or connect your application to Cube Cloud API.
/>
-[ref-cloud-connecting-to-databases]: /admin/configuration/data-sources
+[ref-cloud-connecting-to-databases]: /admin/connect-to-data/data-sources
[ref-cloud-playground]: /cloud/dev-tools/dev-playground
diff --git a/docs-mintlify/docs/integrations/microsoft-excel.mdx b/docs-mintlify/docs/integrations/microsoft-excel.mdx
index 06a9272e42e5c..60ecfcd8442b6 100644
--- a/docs-mintlify/docs/integrations/microsoft-excel.mdx
+++ b/docs-mintlify/docs/integrations/microsoft-excel.mdx
@@ -131,7 +131,7 @@ You can also manage saved reports in the **[Saved Reports][ref-saved-reports]**
in Cube Cloud.
-[ref-excel]: /admin/configuration/visualization-tools/excel
+[ref-excel]: /admin/connect-to-data/visualization-tools/excel
[link-pivottable]: https://support.microsoft.com/en-us/office/create-a-pivottable-to-analyze-worksheet-data-a9a84538-bfe9-40a9-a8e9-f99134456576
[ref-playground]: /docs/workspace/playground
[ref-views]: /docs/data-modeling/concepts#views
diff --git a/docs-mintlify/docs/integrations/power-bi.mdx b/docs-mintlify/docs/integrations/power-bi/index.mdx
similarity index 93%
rename from docs-mintlify/docs/integrations/power-bi.mdx
rename to docs-mintlify/docs/integrations/power-bi/index.mdx
index a069a6ec0f958..462a5f97e36c3 100644
--- a/docs-mintlify/docs/integrations/power-bi.mdx
+++ b/docs-mintlify/docs/integrations/power-bi/index.mdx
@@ -74,8 +74,8 @@ than the DAX API. However, this is the only option when using Cube Core.
[ref-integrations-apis]: /docs/workspace/integrations#view-api-credentials
[ref-sql-api]: /reference/sql-api
[ref-sls]: /docs/integrations/semantic-layer-sync
-[ref-kerberos]: /access-security/authentication/kerberos
-[ref-ntlm]: /access-security/authentication/ntlm
-[ref-ntlm-desktop]: /access-security/authentication/ntlm#power-bi-desktop
+[ref-kerberos]: /docs/integrations/power-bi/kerberos
+[ref-ntlm]: /docs/integrations/power-bi/ntlm
+[ref-ntlm-desktop]: /docs/integrations/power-bi/ntlm#power-bi-desktop
[link-powerbi-connection]: https://learn.microsoft.com/en-us/power-bi/connect-data/service-live-connect-dq-datasets
-[ref-opdg]: /access-security/authentication/ntlm#configuration
\ No newline at end of file
+[ref-opdg]: /docs/integrations/power-bi/ntlm#configuration
\ No newline at end of file
diff --git a/docs-mintlify/access-security/authentication/kerberos.mdx b/docs-mintlify/docs/integrations/power-bi/kerberos.mdx
similarity index 98%
rename from docs-mintlify/access-security/authentication/kerberos.mdx
rename to docs-mintlify/docs/integrations/power-bi/kerberos.mdx
index 32b5dcae9ba34..64b5cc861c7e7 100644
--- a/docs-mintlify/access-security/authentication/kerberos.mdx
+++ b/docs-mintlify/docs/integrations/power-bi/kerberos.mdx
@@ -133,7 +133,7 @@ from Power BI][ref-power-bi] to the DAX API.
[link-setspn]: https://learn.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2012-r2-and-2012/cc731241(v=ws.11)
[link-keytab-file]: https://web.mit.edu/Kerberos/krb5-1.16/doc/basic/keytab_def.html
[link-ktpass]: https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/ktpass
-[ref-power-bi]: /admin/configuration/visualization-tools/powerbi#connecting-from-power-bi
+[ref-power-bi]: /admin/connect-to-data/visualization-tools/powerbi#connecting-from-power-bi
[link-kerberos]: https://en.wikipedia.org/wiki/Kerberos_(protocol)#Microsoft_Windows
[ref-dax-api]: /reference/dax-api
[ref-config-check-sql-auth]: /reference/configuration/config#check_sql_auth
\ No newline at end of file
diff --git a/docs-mintlify/access-security/authentication/ntlm.mdx b/docs-mintlify/docs/integrations/power-bi/ntlm.mdx
similarity index 98%
rename from docs-mintlify/access-security/authentication/ntlm.mdx
rename to docs-mintlify/docs/integrations/power-bi/ntlm.mdx
index 6746a8cb13808..844572ce9badc 100644
--- a/docs-mintlify/access-security/authentication/ntlm.mdx
+++ b/docs-mintlify/docs/integrations/power-bi/ntlm.mdx
@@ -101,6 +101,6 @@ of the master user account were passed.
[link-ntlm]: https://en.wikipedia.org/wiki/NTLM
[ref-dax-api]: /reference/dax-api
[link-power-bi-opdg]: https://learn.microsoft.com/en-us/power-bi/connect-data/service-gateway-onprem
-[ref-kerberos]: /access-security/authentication/kerberos
+[ref-kerberos]: /docs/integrations/power-bi/kerberos
[ref-config-check-sql-auth]: /reference/configuration/config#check_sql_auth
[ref-config-can-switch-sql-user]: /reference/configuration/config#can_switch_sql_user
\ No newline at end of file
diff --git a/docs-mintlify/docs/integrations/semantic-layer-sync/index.mdx b/docs-mintlify/docs/integrations/semantic-layer-sync/index.mdx
index 5495aa911bfa4..0c3ac2b341a63 100644
--- a/docs-mintlify/docs/integrations/semantic-layer-sync/index.mdx
+++ b/docs-mintlify/docs/integrations/semantic-layer-sync/index.mdx
@@ -365,7 +365,7 @@ on, i.e., your development mode branch, shared branch, or main branch.
[ref-data-model]: /docs/data-modeling/overview
[ref-sql-api]: /reference/sql-api
-[ref-config-file]: /admin/configuration#configuration-options
+[ref-config-file]: /admin/connect-to-data#configuration-options
[ref-config-contexts]: /reference/configuration/config#scheduledrefreshcontexts
[ref-config-schemaversion]: /reference/configuration/config#schema_version
[ref-dev-mode]: /docs/data-modeling/dev-mode
diff --git a/docs-mintlify/docs/integrations/tableau.mdx b/docs-mintlify/docs/integrations/tableau.mdx
index 438dc6039d40e..a6024df235488 100644
--- a/docs-mintlify/docs/integrations/tableau.mdx
+++ b/docs-mintlify/docs/integrations/tableau.mdx
@@ -128,12 +128,12 @@ You can use [user attributes][ref-user-attributes] and
[data access policies][ref-dap] to control which data each user can access.
[ref-sls]: /docs/integrations/semantic-layer-sync
-[ref-scim]: /access-security/sso/microsoft-entra-id/scim
-[ref-entra]: /access-security/sso/microsoft-entra-id
-[ref-okta]: /access-security/sso/okta
-[ref-user-attributes]: /access-security/users-and-permissions/user-attributes
-[ref-user-groups]: /access-security/users-and-permissions/user-groups
-[ref-dap]: /access-security/access-control/data-access-policies
+[ref-scim]: /admin/sso/microsoft-entra-id/scim
+[ref-entra]: /admin/sso/microsoft-entra-id
+[ref-okta]: /admin/sso/okta
+[ref-user-attributes]: /admin/users-and-permissions/user-attributes
+[ref-user-groups]: /admin/users-and-permissions/user-groups
+[ref-dap]: /docs/data-modeling/access-control/data-access-policies
[ref-sql-api]: /reference/sql-api
[tds]: https://help.tableau.com/current/pro/desktop/en-us/export_connection.htm
[tableau-api]: https://help.tableau.com/current/api/rest_api/en-us/REST/rest_api.htm
diff --git a/docs-mintlify/access-security/authentication/auth0.mdx b/docs-mintlify/embedding/authentication/auth0.mdx
similarity index 99%
rename from docs-mintlify/access-security/authentication/auth0.mdx
rename to docs-mintlify/embedding/authentication/auth0.mdx
index ba887d2941838..6002892725885 100644
--- a/docs-mintlify/access-security/authentication/auth0.mdx
+++ b/docs-mintlify/embedding/authentication/auth0.mdx
@@ -243,7 +243,7 @@ your own Cube application.
[link-jwt-io-debug]: https://jwt.io/#debugger-io
[link-openid-playground]: https://openidconnect.net/
[ref-config-auth0]: #configure-cube
-[ref-sec-ctx]: /access-security/access-control/context
+[ref-sec-ctx]: /docs/data-modeling/access-control/context
[gh-cube-auth0-example]:
https://github.com/cube-js/examples/tree/master/auth0
diff --git a/docs-mintlify/access-security/authentication/aws-cognito.mdx b/docs-mintlify/embedding/authentication/aws-cognito.mdx
similarity index 99%
rename from docs-mintlify/access-security/authentication/aws-cognito.mdx
rename to docs-mintlify/embedding/authentication/aws-cognito.mdx
index 29fbd7d6c952d..be5092e3a63f5 100644
--- a/docs-mintlify/access-security/authentication/aws-cognito.mdx
+++ b/docs-mintlify/embedding/authentication/aws-cognito.mdx
@@ -192,4 +192,4 @@ models using the [Security Context][ref-sec-ctx] should now work as expected.
https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-lambda-pre-token-generation.html#aws-lambda-triggers-pre-token-generation-example-1
[link-aws-lambda]: https://docs.aws.amazon.com/lambda/latest/dg/welcome.html
[link-openid-playground]: https://openidconnect.net/
-[ref-sec-ctx]: /access-security/access-control/context
\ No newline at end of file
+[ref-sec-ctx]: /docs/data-modeling/access-control/context
\ No newline at end of file
diff --git a/docs-mintlify/access-security/authentication/jwt.mdx b/docs-mintlify/embedding/authentication/jwt.mdx
similarity index 97%
rename from docs-mintlify/access-security/authentication/jwt.mdx
rename to docs-mintlify/embedding/authentication/jwt.mdx
index 72ca4b60b407a..6024f42db97bb 100644
--- a/docs-mintlify/access-security/authentication/jwt.mdx
+++ b/docs-mintlify/embedding/authentication/jwt.mdx
@@ -233,6 +233,6 @@ module.exports = {
[link-jwk-ref]: https://tools.ietf.org/html/rfc7517#section-4
[ref-config-check-auth]: /reference/configuration/config#check_auth
[ref-config-jwt]: /reference/configuration/config#jwt
-[ref-recipe-auth0]: /access-security/access-control/recipes/auth0-guide
-[ref-recipe-cognito]: /access-security/access-control/recipes/aws-cognito
-[ref-sec-ctx]: /access-security/access-control/context
\ No newline at end of file
+[ref-recipe-auth0]: /docs/data-modeling/access-control/recipes/auth0-guide
+[ref-recipe-cognito]: /docs/data-modeling/access-control/recipes/aws-cognito
+[ref-sec-ctx]: /docs/data-modeling/access-control/context
\ No newline at end of file
diff --git a/docs-mintlify/embedding/index.mdx b/docs-mintlify/embedding/index.mdx
index c439ac5d8238a..93faf922df0bb 100644
--- a/docs-mintlify/embedding/index.mdx
+++ b/docs-mintlify/embedding/index.mdx
@@ -14,7 +14,7 @@ Cube provides multiple approaches for embedding analytics into your applications
Embed Cube content using iframes for the fastest integration with minimal code. This approach works with any frontend framework and requires no additional dependencies.
-Iframe embedding supports [dashboards](/analytics/dashboards), [analytics chat](/analytics/analytics-chat), and the full Cube application in [creator mode](/embedding/creator-mode).
+Iframe embedding supports [dashboards](/docs/explore-analyze/dashboards), [analytics chat](/docs/explore-analyze/analytics-chat), and the full Cube application in [creator mode](/embedding/creator-mode).
**Authentication options:**
- **[Private embedding](/embedding/private-embedding)** – For internal use cases where users authenticate with their Cube accounts
diff --git a/docs-mintlify/embedding/private-embedding.mdx b/docs-mintlify/embedding/private-embedding.mdx
index 62e37917c2cc8..26ca0b97d26ae 100644
--- a/docs-mintlify/embedding/private-embedding.mdx
+++ b/docs-mintlify/embedding/private-embedding.mdx
@@ -84,4 +84,4 @@ Private embedding uses Cube's built-in authentication. Users must:
- Be signed in to Cube (or will be prompted to sign in)
- Have appropriate permissions to view the embedded content
-Access control is managed through your existing Cube [roles and permissions](/access-security/users-and-permissions/roles-and-permissions) settings.
+Access control is managed through your existing Cube [roles and permissions](/admin/users-and-permissions/roles-and-permissions) settings.
diff --git a/docs-mintlify/embedding/signed-embedding.mdx b/docs-mintlify/embedding/signed-embedding.mdx
index f9ef414662b12..1cc54fb237a2d 100644
--- a/docs-mintlify/embedding/signed-embedding.mdx
+++ b/docs-mintlify/embedding/signed-embedding.mdx
@@ -188,7 +188,7 @@ User attributes enable row-level security and personalized chat responses by fil
User attributes must first be configured in your Cube admin panel. See the
- [User Attributes documentation](/access-security/users-and-permissions/user-attributes) for
+ [User Attributes documentation](/admin/users-and-permissions/user-attributes) for
setup instructions.
diff --git a/docs-mintlify/getting-started/connect-your-data.mdx b/docs-mintlify/getting-started/connect-your-data.mdx
deleted file mode 100644
index fc4ef94ec6804..0000000000000
--- a/docs-mintlify/getting-started/connect-your-data.mdx
+++ /dev/null
@@ -1,45 +0,0 @@
----
-title: Connect Your Data
-description: Learn how to connect your data sources to Cube.
----
-
- Connect your data
-
-
-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.
-
-
-Cube supports multiple warehouses and databases.
-
-
-
-Once you select your data source, follow the instructions on the connection page.
-
-
-
-## AI builds initial semantic model
-
-Select what tables you'd like to use in your initial semantic model and let AI build it.
-
-## Supported data sources
-
-
-
- Connect to PostgreSQL databases
-
-
- Connect to Snowflake data warehouses
-
-
- Connect to Google BigQuery
-
-
- Connect to Databricks lakehouses
-
-
diff --git a/docs-mintlify/getting-started/core.mdx b/docs-mintlify/getting-started/core.mdx
deleted file mode 100644
index c0fa07da8b089..0000000000000
--- a/docs-mintlify/getting-started/core.mdx
+++ /dev/null
@@ -1,67 +0,0 @@
----
-title: Cube Core
-description: Get started with self-hosted Cube Core.
----
-
- Cube Core
-
-Cube Core is the open-source version of Cube that you can self-host.
-
-## Quick start with Docker
-
-The fastest way to get started with Cube Core is using Docker:
-
-```bash
-docker pull cubejs/cube:latest
-```
-
-Create a `docker-compose.yml` file:
-
-```yaml
-version: "2.2"
-
-services:
- cube:
- image: cubejs/cube:latest
- ports:
- - 4000:4000
- - 15432:15432
- environment:
- - CUBEJS_DEV_MODE=true
- volumes:
- - .:/cube/conf
-```
-
-Start the services:
-
-```bash
-docker compose up -d
-```
-
-
-Cube will start in development mode, which enables the Playground at [http://localhost:4000](http://localhost:4000).
-
-
-## Configuration
-
-Cube Core is configured using environment variables. The most common ones are:
-
-| Variable | Description |
-|----------|-------------|
-| `CUBEJS_DB_TYPE` | The type of database to connect to |
-| `CUBEJS_DB_HOST` | Database host |
-| `CUBEJS_DB_PORT` | Database port |
-| `CUBEJS_DB_NAME` | Database name |
-| `CUBEJS_DB_USER` | Database user |
-| `CUBEJS_DB_PASS` | Database password |
-
-## Next steps
-
-
-
- Learn how to define your data model
-
-
- Explore all configuration options
-
-
diff --git a/docs-mintlify/recipes/ai/agent-to-agent.mdx b/docs-mintlify/recipes/ai/agent-to-agent.mdx
new file mode 100644
index 0000000000000..60d1c70368a16
--- /dev/null
+++ b/docs-mintlify/recipes/ai/agent-to-agent.mdx
@@ -0,0 +1,371 @@
+---
+title: "Agent-to-agent: using the Chat API as a tool"
+description: "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."
+---
+
+# Agent-to-agent: using the Chat API as a tool
+
+In this recipe, you will learn how to wrap the Cube [Chat API][ref-chat-api]
+as a tool for an external AI agent, enabling agent-to-agent analytics
+workflows.
+
+## Use case
+
+When building AI-powered applications, you often have an orchestrating agent
+(built with frameworks like LangChain, LlamaIndex, or CrewAI) that handles
+user conversations and coordinates multiple capabilities. One of these
+capabilities might be answering data questions — revenue trends, customer
+metrics, pipeline analysis, and so on.
+
+Rather than building a custom data retrieval pipeline, you can give your
+agent a tool that calls the Cube Chat API. This way, the Cube AI agent
+handles the hard parts — understanding the data model, writing correct
+queries, and summarizing results — while your orchestrating agent decides
+*when* to ask data questions and how to fold the answers into its broader
+workflow.
+
+## Architecture
+
+The following diagram shows how the orchestrating agent delegates data
+questions to the Cube AI agent via the Chat API:
+
+```mermaid
+sequenceDiagram
+ participant User
+ participant Agent as Your Agent
(LangChain, etc.)
+ participant Tool as Cube Chat API Tool
+ participant Cube as Cube AI Agent
+
+ User->>Agent: "Prepare a board report
with last quarter financials"
+ activate Agent
+ Note over Agent: Decides it needs
financial data
+ Agent->>Tool: ask_cube("What was total revenue
last quarter, broken down
by product line?")
+ activate Tool
+ Tool->>Cube: POST /chat/stream-chat-state
+ activate Cube
+ Note over Cube: Queries data model,
runs SQL, summarizes
+ Cube-->>Tool: Streamed NDJSON response
+ deactivate Cube
+ Tool-->>Agent: "Total revenue was $4.2M…"
+ deactivate Tool
+ Note over Agent: Incorporates data
into the report
+ Agent-->>User: Board report with
financial analysis
+ deactivate Agent
+```
+
+**Key benefits of this approach:**
+
+- **Separation of concerns.** Your agent handles conversation flow and
+ business logic; Cube handles data access, governance, and query
+ optimization.
+- **Built-in security.** Row-level security, data access policies, and
+ user attributes are enforced by the Cube layer — your agent does not
+ need to implement them.
+- **Multi-turn context.** By reusing a `chatId`, the Cube agent retains
+ conversational context, so follow-up questions like "now break that
+ down by region" work automatically.
+
+## Prerequisites
+
+Before you begin, make sure you have:
+
+- A Cube Cloud deployment on a [Premium or Enterprise plan](https://cube.dev/pricing)
+- An AI agent configured in **Admin -> Agents**
+- An [API key][ref-api-keys] with access to the agent
+- The **Chat API URL** copied from your agent settings
+
+## Implementation
+
+### Wrapping the Chat API as a tool
+
+The core idea is to write a function that sends a question to the Cube
+Chat API, collects the streamed response, and returns the final answer
+as a plain string. You then register this function as a tool that your
+agent can invoke.
+
+Here is a helper that calls the Chat API and extracts the final answer:
+
+```python
+import requests
+import json
+
+CUBE_CHAT_API_URL = "YOUR_CHAT_API_URL"
+CUBE_API_KEY = "YOUR_API_KEY"
+
+
+def query_cube_agent(question: str, chat_id: str | None = None) -> str:
+ """Send a question to the Cube AI agent and return its final answer."""
+
+ payload = {
+ "input": question,
+ "sessionSettings": {
+ "externalId": "orchestrating-agent",
+ },
+ }
+ if chat_id:
+ payload["chatId"] = chat_id
+
+ response = requests.post(
+ CUBE_CHAT_API_URL,
+ headers={
+ "Content-Type": "application/json",
+ "Authorization": f"Api-Key {CUBE_API_KEY}",
+ },
+ json=payload,
+ stream=True,
+ )
+ response.raise_for_status()
+
+ messages = []
+ for line in response.iter_lines():
+ if line:
+ messages.append(json.loads(line.decode("utf-8")))
+
+ # Extract the final answer from the stream
+ final_messages = [
+ msg
+ for msg in messages
+ if msg.get("role") == "assistant"
+ and isinstance(msg.get("graphPath"), list)
+ and len(msg["graphPath"]) > 0
+ and msg["graphPath"][0] == "final"
+ and len(msg["graphPath"]) <= 2
+ ]
+
+ if final_messages:
+ return final_messages[-1].get("content", "")
+
+ # Fallback: return the last assistant message with content
+ for msg in reversed(messages):
+ if msg.get("role") == "assistant" and msg.get("content"):
+ return msg["content"]
+
+ return "No answer received from the Cube agent."
+```
+
+
+
+The function filters streamed messages for those where
+`graphPath[0] === "final"` to get the consolidated answer. See the
+[Chat API reference][ref-chat-api] for details on the response format.
+
+
+
+### LangChain integration
+
+Below is a complete example of a LangChain agent that has access to the
+Cube Chat API as a tool. When the agent decides it needs data to answer
+a question, it calls the `ask_cube` tool automatically.
+
+```python
+import os
+import requests
+import json
+from langchain_core.tools import tool
+from langchain_openai import ChatOpenAI
+from langgraph.prebuilt import create_react_agent
+
+CUBE_CHAT_API_URL = os.environ["CUBE_CHAT_API_URL"]
+CUBE_API_KEY = os.environ["CUBE_API_KEY"]
+
+
+def query_cube_agent(question: str) -> str:
+ """Send a question to the Cube AI agent and return its final answer."""
+
+ response = requests.post(
+ CUBE_CHAT_API_URL,
+ headers={
+ "Content-Type": "application/json",
+ "Authorization": f"Api-Key {CUBE_API_KEY}",
+ },
+ json={
+ "input": question,
+ "sessionSettings": {
+ "externalId": "orchestrating-agent",
+ },
+ },
+ stream=True,
+ )
+ response.raise_for_status()
+
+ messages = []
+ for line in response.iter_lines():
+ if line:
+ messages.append(json.loads(line.decode("utf-8")))
+
+ final_messages = [
+ msg
+ for msg in messages
+ if msg.get("role") == "assistant"
+ and isinstance(msg.get("graphPath"), list)
+ and len(msg["graphPath"]) > 0
+ and msg["graphPath"][0] == "final"
+ and len(msg["graphPath"]) <= 2
+ ]
+
+ if final_messages:
+ return final_messages[-1].get("content", "")
+
+ for msg in reversed(messages):
+ if msg.get("role") == "assistant" and msg.get("content"):
+ return msg["content"]
+
+ return "No answer received from the Cube agent."
+
+
+@tool
+def ask_cube(question: str) -> str:
+ """Ask a data analytics question. Use this tool whenever you need
+ business metrics, KPIs, trends, or any data from the company's
+ databases. Pass a clear, self-contained question."""
+
+ return query_cube_agent(question)
+
+
+llm = ChatOpenAI(model="gpt-4o")
+agent = create_react_agent(llm, [ask_cube])
+
+result = agent.invoke(
+ {
+ "messages": [
+ {
+ "role": "user",
+ "content": (
+ "Prepare a brief executive summary of last quarter's "
+ "performance. Include revenue, top products, and "
+ "month-over-month trends."
+ ),
+ }
+ ]
+ }
+)
+
+print(result["messages"][-1].content)
+```
+
+When you run this, the LangChain agent will:
+
+1. Read the user's request and decide it needs data.
+2. Call `ask_cube` with a focused data question (e.g., *"What was total
+ revenue last quarter?"*).
+3. Receive the Cube agent's answer with queried data and analysis.
+4. Optionally call `ask_cube` again for additional data points.
+5. Compose the final executive summary using all collected data.
+
+### Passing user context
+
+If your application has per-user data access policies, pass the
+current user's identity and attributes through `sessionSettings` so that
+the Cube agent enforces row-level security:
+
+```python
+def query_cube_agent_for_user(
+ question: str,
+ user_id: str,
+ user_email: str | None = None,
+ user_attributes: list[dict] | None = None,
+) -> str:
+ """Query the Cube agent with user-scoped permissions."""
+
+ session_settings = {"externalId": user_id}
+ if user_email:
+ session_settings["email"] = user_email
+ if user_attributes:
+ session_settings["userAttributes"] = user_attributes
+
+ response = requests.post(
+ CUBE_CHAT_API_URL,
+ headers={
+ "Content-Type": "application/json",
+ "Authorization": f"Api-Key {CUBE_API_KEY}",
+ },
+ json={
+ "input": question,
+ "sessionSettings": session_settings,
+ },
+ stream=True,
+ )
+ response.raise_for_status()
+
+ # ... same response parsing as above ...
+```
+
+This way, a sales manager asking about revenue will only see data for
+their territory, while a VP will see the full picture — without any
+changes to your agent code.
+
+### Multi-turn conversations
+
+To maintain context across multiple questions in a single workflow, reuse
+the `chatId` returned by the Cube Chat API:
+
+```python
+def query_cube_with_followup(questions: list[str]) -> list[str]:
+ """Send a sequence of related questions, maintaining conversation context."""
+
+ chat_id = None
+ answers = []
+
+ for question in questions:
+ payload = {
+ "input": question,
+ "sessionSettings": {
+ "externalId": "orchestrating-agent",
+ },
+ }
+ if chat_id:
+ payload["chatId"] = chat_id
+
+ response = requests.post(
+ CUBE_CHAT_API_URL,
+ headers={
+ "Content-Type": "application/json",
+ "Authorization": f"Api-Key {CUBE_API_KEY}",
+ },
+ json=payload,
+ stream=True,
+ )
+ response.raise_for_status()
+
+ messages = []
+ for line in response.iter_lines():
+ if line:
+ messages.append(json.loads(line.decode("utf-8")))
+
+ # Capture the chatId for follow-up questions
+ for msg in messages:
+ if msg.get("id") == "__cutoff__" and msg.get("state", {}).get("chatId"):
+ chat_id = msg["state"]["chatId"]
+
+ final_messages = [
+ msg
+ for msg in messages
+ if msg.get("role") == "assistant"
+ and isinstance(msg.get("graphPath"), list)
+ and len(msg["graphPath"]) > 0
+ and msg["graphPath"][0] == "final"
+ and len(msg["graphPath"]) <= 2
+ ]
+
+ if final_messages:
+ answers.append(final_messages[-1].get("content", ""))
+ else:
+ answers.append("")
+
+ return answers
+
+
+# Example: ask a question and then a follow-up
+answers = query_cube_with_followup([
+ "What was total revenue last quarter?",
+ "Now break that down by product line.",
+])
+```
+
+With this approach, the second question — *"Now break that down by
+product line"* — is understood in the context of the first, just like a
+human conversation.
+
+
+[ref-chat-api]: /reference/embed-apis/chat-api
+[ref-api-keys]: /admin/api-keys
diff --git a/docs-mintlify/admin/configuration/recipes/custom-data-model-per-tenant.mdx b/docs-mintlify/recipes/configuration/custom-data-model-per-tenant.mdx
similarity index 98%
rename from docs-mintlify/admin/configuration/recipes/custom-data-model-per-tenant.mdx
rename to docs-mintlify/recipes/configuration/custom-data-model-per-tenant.mdx
index 8fe6f1e9adb6a..9ee5f8ca9a8bb 100644
--- a/docs-mintlify/admin/configuration/recipes/custom-data-model-per-tenant.mdx
+++ b/docs-mintlify/recipes/configuration/custom-data-model-per-tenant.mdx
@@ -524,11 +524,11 @@ Instead of using the `file_repository` utility, you would have to write your own
code that fetches data model files for each tenant.
-[ref-multitenancy]: /admin/configuration/multitenancy
+[ref-multitenancy]: /admin/connect-to-data/multitenancy
[ref-scheduled-refresh-contexts]: /reference/configuration/config#scheduled_refresh_contexts
[ref-context-to-app-id]: /reference/configuration/config#context_to_app_id
-[ref-config-files]: /admin/configuration#cubepy-and-cubejs-files
-[ref-mls]: /access-security/access-control/member-level-security
+[ref-config-files]: /admin/connect-to-data#cubepy-and-cubejs-files
+[ref-mls]: /docs/data-modeling/access-control/member-level-security
[ref-cubes-public]: /reference/data-modeling/cube#public
[ref-views-public]: /reference/data-modeling/view#public
[ref-measures-public]: /reference/data-modeling/measures#public
@@ -538,7 +538,7 @@ code that fetches data model files for each tenant.
[ref-apis]: /reference
[ref-cube-sql-table]: /reference/data-modeling/cube#sql_table
[ref-cube-data-source]: /reference/data-modeling/cube#data_source
-[ref-data-sources]: /admin/configuration/advanced/multiple-data-sources
+[ref-data-sources]: /admin/connect-to-data/advanced/multiple-data-sources
[ref-cube-extends]: /reference/data-modeling/cube#extends
[ref-dynamic-data-modeling]: /docs/data-modeling/dynamic
[ref-repository-factory]: /reference/configuration/config#repository_factory
\ No newline at end of file
diff --git a/docs-mintlify/admin/configuration/recipes/data-store-cost-saving-guide.mdx b/docs-mintlify/recipes/configuration/data-store-cost-saving-guide.mdx
similarity index 98%
rename from docs-mintlify/admin/configuration/recipes/data-store-cost-saving-guide.mdx
rename to docs-mintlify/recipes/configuration/data-store-cost-saving-guide.mdx
index cbd617468d5ee..0b5fb7886a6d0 100644
--- a/docs-mintlify/admin/configuration/recipes/data-store-cost-saving-guide.mdx
+++ b/docs-mintlify/recipes/configuration/data-store-cost-saving-guide.mdx
@@ -145,11 +145,11 @@ when data outside the last partition can be updated.
-[ref-config-data-sources]: /admin/configuration/data-sources
+[ref-config-data-sources]: /admin/connect-to-data/data-sources
[ref-intro]: /docs/introduction
[ref-caching]: /docs/caching
[ref-pre-agg-refresh-key]: /reference/data-modeling/pre-aggregations#refresh_key
-[ref-config-apis]: /admin/configuration/visualization-tools#ap-is-references
+[ref-config-apis]: /admin/connect-to-data/visualization-tools#ap-is-references
[ref-caching-using-pre-aggs]: /docs/caching/getting-started-pre-aggregations
[ref-query-history]: /admin/monitoring/query-history
[ref-caching-using-pre-aggs]: /docs/caching/using-pre-aggregations
diff --git a/docs-mintlify/admin/configuration/recipes/environment-variables.mdx b/docs-mintlify/recipes/configuration/environment-variables.mdx
similarity index 98%
rename from docs-mintlify/admin/configuration/recipes/environment-variables.mdx
rename to docs-mintlify/recipes/configuration/environment-variables.mdx
index 7273d00450550..466462290574c 100644
--- a/docs-mintlify/admin/configuration/recipes/environment-variables.mdx
+++ b/docs-mintlify/recipes/configuration/environment-variables.mdx
@@ -160,7 +160,7 @@ cube(`my_cube`, {
[ref-data-model-syntax]: /docs/data-modeling/syntax
-[ref-config-files]: /admin/configuration#cubepy-and-cubejs-files
+[ref-config-files]: /admin/connect-to-data#cubepy-and-cubejs-files
[ref-docker-compose-config]: /docs/deployment/core#configuration
[ref-python-globals]: /docs/data-modeling/dynamic/jinja#python
[ref-template-context]: /reference/data-modeling/cube-package#templatecontext-class
diff --git a/docs-mintlify/admin/configuration/recipes/multiple-sources-same-schema.mdx b/docs-mintlify/recipes/configuration/multiple-sources-same-schema.mdx
similarity index 97%
rename from docs-mintlify/admin/configuration/recipes/multiple-sources-same-schema.mdx
rename to docs-mintlify/recipes/configuration/multiple-sources-same-schema.mdx
index d79226a021c87..07d7ac8c884ec 100644
--- a/docs-mintlify/admin/configuration/recipes/multiple-sources-same-schema.mdx
+++ b/docs-mintlify/recipes/configuration/multiple-sources-same-schema.mdx
@@ -23,7 +23,7 @@ To enable multitenancy, use the
provide distinct identifiers for each tenant. Also, implement the
[`driverFactory`](/reference/configuration/config#driverfactory) function where
you can select a data source based on the tenant name.
-[JSON Web Token](/access-security/access-control) includes information about the tenant name in
+[JSON Web Token](/docs/data-modeling/access-control) includes information about the tenant name in
the `tenant` property of the `securityContext`.
```javascript
diff --git a/docs-mintlify/admin/configuration/recipes/using-ssl-connections-to-data-source.mdx b/docs-mintlify/recipes/configuration/using-ssl-connections-to-data-source.mdx
similarity index 98%
rename from docs-mintlify/admin/configuration/recipes/using-ssl-connections-to-data-source.mdx
rename to docs-mintlify/recipes/configuration/using-ssl-connections-to-data-source.mdx
index 443c4bffa7895..b545720338d98 100644
--- a/docs-mintlify/admin/configuration/recipes/using-ssl-connections-to-data-source.mdx
+++ b/docs-mintlify/recipes/configuration/using-ssl-connections-to-data-source.mdx
@@ -79,4 +79,4 @@ Add the following environment variables:
[nodejs-docs-tls-options]:
https://nodejs.org/docs/latest/api/tls.html#tls_tls_createsecurecontext_options
-[ref-config-db]: /admin/configuration/data-sources
\ No newline at end of file
+[ref-config-db]: /admin/connect-to-data/data-sources
\ No newline at end of file
diff --git a/docs-mintlify/reference/recipes/cast-numerics.mdx b/docs-mintlify/recipes/core-data-api/api/cast-numerics.mdx
similarity index 100%
rename from docs-mintlify/reference/recipes/cast-numerics.mdx
rename to docs-mintlify/recipes/core-data-api/api/cast-numerics.mdx
diff --git a/docs-mintlify/reference/recipes/drilldowns.mdx b/docs-mintlify/recipes/core-data-api/api/drilldowns.mdx
similarity index 100%
rename from docs-mintlify/reference/recipes/drilldowns.mdx
rename to docs-mintlify/recipes/core-data-api/api/drilldowns.mdx
diff --git a/docs-mintlify/reference/recipes/getting-unique-values-for-a-field.mdx b/docs-mintlify/recipes/core-data-api/api/getting-unique-values-for-a-field.mdx
similarity index 100%
rename from docs-mintlify/reference/recipes/getting-unique-values-for-a-field.mdx
rename to docs-mintlify/recipes/core-data-api/api/getting-unique-values-for-a-field.mdx
diff --git a/docs-mintlify/reference/recipes/pagination.mdx b/docs-mintlify/recipes/core-data-api/api/pagination.mdx
similarity index 100%
rename from docs-mintlify/reference/recipes/pagination.mdx
rename to docs-mintlify/recipes/core-data-api/api/pagination.mdx
diff --git a/docs-mintlify/reference/recipes/real-time-data-fetch.mdx b/docs-mintlify/recipes/core-data-api/api/real-time-data-fetch.mdx
similarity index 100%
rename from docs-mintlify/reference/recipes/real-time-data-fetch.mdx
rename to docs-mintlify/recipes/core-data-api/api/real-time-data-fetch.mdx
diff --git a/docs-mintlify/reference/recipes/sorting.mdx b/docs-mintlify/recipes/core-data-api/api/sorting.mdx
similarity index 100%
rename from docs-mintlify/reference/recipes/sorting.mdx
rename to docs-mintlify/recipes/core-data-api/api/sorting.mdx
diff --git a/docs-mintlify/docs/data-modeling/recipes/active-users.mdx b/docs-mintlify/recipes/data-modeling/active-users.mdx
similarity index 100%
rename from docs-mintlify/docs/data-modeling/recipes/active-users.mdx
rename to docs-mintlify/recipes/data-modeling/active-users.mdx
diff --git a/docs-mintlify/docs/data-modeling/recipes/cohort-retention.mdx b/docs-mintlify/recipes/data-modeling/cohort-retention.mdx
similarity index 100%
rename from docs-mintlify/docs/data-modeling/recipes/cohort-retention.mdx
rename to docs-mintlify/recipes/data-modeling/cohort-retention.mdx
diff --git a/docs-mintlify/docs/data-modeling/recipes/custom-calendar.mdx b/docs-mintlify/recipes/data-modeling/custom-calendar.mdx
similarity index 99%
rename from docs-mintlify/docs/data-modeling/recipes/custom-calendar.mdx
rename to docs-mintlify/recipes/data-modeling/custom-calendar.mdx
index ea2fea84da83d..797cab953db1d 100644
--- a/docs-mintlify/docs/data-modeling/recipes/custom-calendar.mdx
+++ b/docs-mintlify/recipes/data-modeling/custom-calendar.mdx
@@ -223,6 +223,6 @@ Querying this data modal would yield the following result:
[link-454]: https://nrf.com/resources/4-5-4-calendar
[link-454-official-calendar]: https://2fb5c46100c1b71985e2-011e70369171d43105aff38e48482379.ssl.cf1.rackcdn.com/4-5-4%20calendar/3-Year-Calendar-5-27.pdf
[ref-custom-granularities]: /reference/data-modeling/dimensions#granularities
-[ref-custom-granularities-recipe]: /docs/data-modeling/recipes/custom-granularity
+[ref-custom-granularities-recipe]: /recipes/data-modeling/custom-granularity
[ref-proxy-dimensions]: /docs/data-modeling/concepts/calculated-members#proxy-dimensions
[ref-jinja-macro]: /docs/data-modeling/dynamic/jinja#macros
\ No newline at end of file
diff --git a/docs-mintlify/docs/data-modeling/recipes/custom-granularity.mdx b/docs-mintlify/recipes/data-modeling/custom-granularity.mdx
similarity index 100%
rename from docs-mintlify/docs/data-modeling/recipes/custom-granularity.mdx
rename to docs-mintlify/recipes/data-modeling/custom-granularity.mdx
diff --git a/docs-mintlify/docs/data-modeling/recipes/dbt.mdx b/docs-mintlify/recipes/data-modeling/dbt.mdx
similarity index 99%
rename from docs-mintlify/docs/data-modeling/recipes/dbt.mdx
rename to docs-mintlify/recipes/data-modeling/dbt.mdx
index 3c3b8dd03ab08..a5e3aac822e72 100644
--- a/docs-mintlify/docs/data-modeling/recipes/dbt.mdx
+++ b/docs-mintlify/recipes/data-modeling/dbt.mdx
@@ -336,7 +336,7 @@ of the REST API.
[dynamic-models]: /docs/data-modeling/dynamic/jinja
[dbt-manifest]: https://docs.getdbt.com/reference/artifacts/manifest-json
-[self-integration]: /docs/data-modeling/recipes/dbt#data-model-integration
+[self-integration]: /recipes/data-modeling/dbt#data-model-integration
[ref-ref-cubes]: /reference/data-modeling/cube
[ref-ref-dimensions]: /reference/data-modeling/dimensions
[ref-ref-measures]: /reference/data-modeling/measures
diff --git a/docs-mintlify/docs/data-modeling/recipes/designing-metrics.mdx b/docs-mintlify/recipes/data-modeling/designing-metrics.mdx
similarity index 100%
rename from docs-mintlify/docs/data-modeling/recipes/designing-metrics.mdx
rename to docs-mintlify/recipes/data-modeling/designing-metrics.mdx
diff --git a/docs-mintlify/docs/data-modeling/recipes/dynamic-union-tables.mdx b/docs-mintlify/recipes/data-modeling/dynamic-union-tables.mdx
similarity index 100%
rename from docs-mintlify/docs/data-modeling/recipes/dynamic-union-tables.mdx
rename to docs-mintlify/recipes/data-modeling/dynamic-union-tables.mdx
diff --git a/docs-mintlify/docs/data-modeling/recipes/entity-attribute-value.mdx b/docs-mintlify/recipes/data-modeling/entity-attribute-value.mdx
similarity index 100%
rename from docs-mintlify/docs/data-modeling/recipes/entity-attribute-value.mdx
rename to docs-mintlify/recipes/data-modeling/entity-attribute-value.mdx
diff --git a/docs-mintlify/docs/data-modeling/recipes/event-analytics.mdx b/docs-mintlify/recipes/data-modeling/event-analytics.mdx
similarity index 100%
rename from docs-mintlify/docs/data-modeling/recipes/event-analytics.mdx
rename to docs-mintlify/recipes/data-modeling/event-analytics.mdx
diff --git a/docs-mintlify/docs/data-modeling/recipes/filtered-aggregates.mdx b/docs-mintlify/recipes/data-modeling/filtered-aggregates.mdx
similarity index 100%
rename from docs-mintlify/docs/data-modeling/recipes/filtered-aggregates.mdx
rename to docs-mintlify/recipes/data-modeling/filtered-aggregates.mdx
diff --git a/docs-mintlify/docs/data-modeling/recipes/funnels.mdx b/docs-mintlify/recipes/data-modeling/funnels.mdx
similarity index 100%
rename from docs-mintlify/docs/data-modeling/recipes/funnels.mdx
rename to docs-mintlify/recipes/data-modeling/funnels.mdx
diff --git a/docs-mintlify/docs/data-modeling/recipes/nested-aggregates.mdx b/docs-mintlify/recipes/data-modeling/nested-aggregates.mdx
similarity index 100%
rename from docs-mintlify/docs/data-modeling/recipes/nested-aggregates.mdx
rename to docs-mintlify/recipes/data-modeling/nested-aggregates.mdx
diff --git a/docs-mintlify/docs/data-modeling/recipes/passing-dynamic-parameters-in-a-query.mdx b/docs-mintlify/recipes/data-modeling/passing-dynamic-parameters-in-a-query.mdx
similarity index 100%
rename from docs-mintlify/docs/data-modeling/recipes/passing-dynamic-parameters-in-a-query.mdx
rename to docs-mintlify/recipes/data-modeling/passing-dynamic-parameters-in-a-query.mdx
diff --git a/docs-mintlify/docs/data-modeling/recipes/percentiles.mdx b/docs-mintlify/recipes/data-modeling/percentiles.mdx
similarity index 100%
rename from docs-mintlify/docs/data-modeling/recipes/percentiles.mdx
rename to docs-mintlify/recipes/data-modeling/percentiles.mdx
diff --git a/docs-mintlify/docs/data-modeling/recipes/period-over-period.mdx b/docs-mintlify/recipes/data-modeling/period-over-period.mdx
similarity index 100%
rename from docs-mintlify/docs/data-modeling/recipes/period-over-period.mdx
rename to docs-mintlify/recipes/data-modeling/period-over-period.mdx
diff --git a/docs-mintlify/docs/data-modeling/recipes/snapshots.mdx b/docs-mintlify/recipes/data-modeling/snapshots.mdx
similarity index 100%
rename from docs-mintlify/docs/data-modeling/recipes/snapshots.mdx
rename to docs-mintlify/recipes/data-modeling/snapshots.mdx
diff --git a/docs-mintlify/docs/data-modeling/recipes/string-time-dimensions.mdx b/docs-mintlify/recipes/data-modeling/string-time-dimensions.mdx
similarity index 100%
rename from docs-mintlify/docs/data-modeling/recipes/string-time-dimensions.mdx
rename to docs-mintlify/recipes/data-modeling/string-time-dimensions.mdx
diff --git a/docs-mintlify/docs/data-modeling/recipes/style-guide.mdx b/docs-mintlify/recipes/data-modeling/style-guide.mdx
similarity index 100%
rename from docs-mintlify/docs/data-modeling/recipes/style-guide.mdx
rename to docs-mintlify/recipes/data-modeling/style-guide.mdx
diff --git a/docs-mintlify/docs/data-modeling/recipes/using-dynamic-measures.mdx b/docs-mintlify/recipes/data-modeling/using-dynamic-measures.mdx
similarity index 100%
rename from docs-mintlify/docs/data-modeling/recipes/using-dynamic-measures.mdx
rename to docs-mintlify/recipes/data-modeling/using-dynamic-measures.mdx
diff --git a/docs-mintlify/docs/data-modeling/recipes/xirr.mdx b/docs-mintlify/recipes/data-modeling/xirr.mdx
similarity index 100%
rename from docs-mintlify/docs/data-modeling/recipes/xirr.mdx
rename to docs-mintlify/recipes/data-modeling/xirr.mdx
diff --git a/docs-mintlify/recipes/index.mdx b/docs-mintlify/recipes/index.mdx
new file mode 100644
index 0000000000000..363f21c3bbee4
--- /dev/null
+++ b/docs-mintlify/recipes/index.mdx
@@ -0,0 +1,162 @@
+---
+title: Recipes Home
+description: Step-by-step tutorials and best practices for getting the most out of Cube.
+mode: wide
+---
+
+Explore **38 recipes** across data modeling, calculations, analytics patterns,
+pre-aggregations, configuration, APIs, and AI.
+
+## Data Modeling
+
+
+
+ Best practices and conventions for structuring your Cube data models.
+
+
+ Compare entity-first and metrics-first ways to structure views for BI tools, apps, and agents.
+
+
+ Shape sparse EAV warehouse tables into queryable dimensions and joins.
+
+
+ Layer Cube on dbt-built warehouse models, aligning documentation patterns with your semantic layer.
+
+
+ Generate measures programmatically from changing reference data.
+
+
+ Combine multiple database tables that relate to the same entity into a single cube.
+
+
+
+## Calculations & Metrics
+
+
+
+ Model percentile-based metrics alongside averages for accurate representation of skewed distributions.
+
+
+ Express aggregates-of-aggregates like a median of per-group sums using joined cubes and subquery dimensions.
+
+
+ Model cross-cube filters so measures aggregate facts while respecting dimensions from related cubes.
+
+
+ Calculate week-over-week, month-over-month, and other period-over-period metric changes.
+
+
+ Let users select filter values and use them in calculations without filtering the entire query.
+
+
+ Calculate XIRR for a schedule of cash flows that is not necessarily periodic.
+
+
+
+## Time Series & Calendars
+
+
+
+ Work around non-timestamp time columns by casting strings to proper time dimension types.
+
+
+ Implement custom time dimension granularities like fiscal quarters or custom week definitions.
+
+
+ Map fact tables to retail or fiscal calendars using dedicated calendar cubes and proxy dimensions.
+
+
+ Build point-in-time snapshots from change-history data to report status as of any date.
+
+
+
+## User & Event Analytics
+
+
+
+ Measure customer engagement with daily, weekly, and monthly active user metrics.
+
+
+ Turn raw clickstream events into session definitions and metrics for product analytics.
+
+
+ Configure multi-step conversion funnels for product and marketing analytics.
+
+
+ Implement cohort-based retention analysis to track user engagement over time.
+
+
+
+## Pre-Aggregations
+
+
+
+ Accelerate averages, distinct counts, and similar non-additive measures with pre-aggregations.
+
+
+ Rebuild only the time-bounded partitions you need instead of refreshing entire rollups.
+
+
+ Conditionally disable pre-aggregations based on environment or deployment context.
+
+
+ Materialize expensive SQL once with original_sql, then reuse across rollup pre-aggregations.
+
+
+ Partition-level refresh patterns for when dimension values change after initial load.
+
+
+ Join data from different warehouses with cross-database rollup joins.
+
+
+
+## Configuration
+
+
+
+ Reference deployment secrets and tunables from environment variables in your config.
+
+
+ Enable TLS to upstream databases with custom CA bundles and client certificates.
+
+
+ Reduce warehouse spend through pre-aggregation strategy and workload-aware settings.
+
+
+ Route each tenant to its own database while reusing a single data model.
+
+
+ Give each tenant a unique data model, from completely different to partially shared schemas.
+
+
+
+## APIs & Frontend
+
+
+
+ Power filter dropdowns by querying distinct dimension values from Cube's data APIs.
+
+
+ Coerce REST numeric strings into JavaScript numbers, with precision pitfalls and caveats.
+
+
+ Sort query result sets by custom criteria beyond default ordering.
+
+
+ Implement paged tables over Cube queries using limit, offset, and deterministic ordering.
+
+
+ Configure drill members and fetch detail rows behind an aggregate value.
+
+
+ Build live-updating dashboards using WebSocket transport and client subscriptions.
+
+
+
+## AI
+
+
+
+ Wrap the Cube Chat API as a LangChain tool so an orchestrating agent can query data on demand.
+
+
diff --git a/docs-mintlify/docs/caching/recipes/disabling-pre-aggregations.mdx b/docs-mintlify/recipes/pre-aggregations/disabling-pre-aggregations.mdx
similarity index 91%
rename from docs-mintlify/docs/caching/recipes/disabling-pre-aggregations.mdx
rename to docs-mintlify/recipes/pre-aggregations/disabling-pre-aggregations.mdx
index 29d0a7abda51e..64bc2f9b4557f 100644
--- a/docs-mintlify/docs/caching/recipes/disabling-pre-aggregations.mdx
+++ b/docs-mintlify/recipes/pre-aggregations/disabling-pre-aggregations.mdx
@@ -86,6 +86,6 @@ the reason why `measures` are defined as such above.
[ref-pre-aggs]: /docs/caching#pre-aggregations
-[ref-env-vars-recipe-yaml]: /admin/configuration/recipes/environment-variables#yaml-files
-[ref-env-vars-recipe-js]: /admin/configuration/recipes/environment-variables#javascript-files
+[ref-env-vars-recipe-yaml]: /recipes/configuration/environment-variables#yaml-files
+[ref-env-vars-recipe-js]: /recipes/configuration/environment-variables#javascript-files
[ref-context-symbols-transpilation]: /docs/data-modeling/dynamic/schema-execution-environment#context-symbols-transpile
\ No newline at end of file
diff --git a/docs-mintlify/docs/caching/recipes/incrementally-building-pre-aggregations-for-a-date-range.mdx b/docs-mintlify/recipes/pre-aggregations/incrementally-building-pre-aggregations-for-a-date-range.mdx
similarity index 98%
rename from docs-mintlify/docs/caching/recipes/incrementally-building-pre-aggregations-for-a-date-range.mdx
rename to docs-mintlify/recipes/pre-aggregations/incrementally-building-pre-aggregations-for-a-date-range.mdx
index d749895d72b6e..073e2d5bb2c06 100644
--- a/docs-mintlify/docs/caching/recipes/incrementally-building-pre-aggregations-for-a-date-range.mdx
+++ b/docs-mintlify/recipes/pre-aggregations/incrementally-building-pre-aggregations-for-a-date-range.mdx
@@ -257,4 +257,4 @@ used to apply the build ranges as defined by `build_range_start` and
[ref-schema-ref-preagg-buildrange]: /reference/data-modeling/pre-aggregations#build_range_start-and-build_range_end
[ref-schema-ref-cube-filterparam]: /reference/data-modeling/cube#filter-params
[self-config-aws-athena]: /config/databases/aws-athena/
-[self-config-google-bigquery]: /admin/configuration/data-sources/google-bigquery
\ No newline at end of file
+[self-config-google-bigquery]: /admin/connect-to-data/data-sources/google-bigquery
\ No newline at end of file
diff --git a/docs-mintlify/docs/caching/recipes/joining-multiple-data-sources.mdx b/docs-mintlify/recipes/pre-aggregations/joining-multiple-data-sources.mdx
similarity index 100%
rename from docs-mintlify/docs/caching/recipes/joining-multiple-data-sources.mdx
rename to docs-mintlify/recipes/pre-aggregations/joining-multiple-data-sources.mdx
diff --git a/docs-mintlify/docs/caching/recipes/non-additivity.mdx b/docs-mintlify/recipes/pre-aggregations/non-additivity.mdx
similarity index 98%
rename from docs-mintlify/docs/caching/recipes/non-additivity.mdx
rename to docs-mintlify/recipes/pre-aggregations/non-additivity.mdx
index e86e71d821a19..3152448c122b4 100644
--- a/docs-mintlify/docs/caching/recipes/non-additivity.mdx
+++ b/docs-mintlify/recipes/pre-aggregations/non-additivity.mdx
@@ -249,5 +249,5 @@ or run it with the `docker-compose up` command. You'll see the result, including
queried data, in the console.
-[ref-percentile-recipe]: /docs/data-modeling/recipes/percentiles
+[ref-percentile-recipe]: /recipes/data-modeling/percentiles
[ref-calculated-measures]: /docs/data-modeling/concepts/calculated-members#calculated-measures
\ No newline at end of file
diff --git a/docs-mintlify/docs/caching/recipes/refreshing-select-partitions.mdx b/docs-mintlify/recipes/pre-aggregations/refreshing-select-partitions.mdx
similarity index 100%
rename from docs-mintlify/docs/caching/recipes/refreshing-select-partitions.mdx
rename to docs-mintlify/recipes/pre-aggregations/refreshing-select-partitions.mdx
diff --git a/docs-mintlify/docs/caching/recipes/using-originalsql-and-rollups-effectively.mdx b/docs-mintlify/recipes/pre-aggregations/using-originalsql-and-rollups-effectively.mdx
similarity index 100%
rename from docs-mintlify/docs/caching/recipes/using-originalsql-and-rollups-effectively.mdx
rename to docs-mintlify/recipes/pre-aggregations/using-originalsql-and-rollups-effectively.mdx
diff --git a/docs-mintlify/reference/configuration/config.mdx b/docs-mintlify/reference/configuration/config.mdx
index 696c3c936e84e..97513ddb9fdb7 100644
--- a/docs-mintlify/reference/configuration/config.mdx
+++ b/docs-mintlify/reference/configuration/config.mdx
@@ -1522,14 +1522,14 @@ module.exports = {
[link-jwt-ref-sub]: https://tools.ietf.org/html/rfc7519#section-4.1.2
[link-jwt-ref-aud]: https://tools.ietf.org/html/rfc7519#section-4.1.3
[link-wiki-tz]: https://en.wikipedia.org/wiki/Tz_database
-[ref-development-mode]: /admin/configuration#development-mode
-[ref-multitenancy]: /admin/configuration/multitenancy
+[ref-development-mode]: /admin/connect-to-data#development-mode
+[ref-multitenancy]: /admin/connect-to-data/multitenancy
[ref-rest-api]: /reference/rest-api
[ref-sql-api]: /reference/sql-api
[ref-pre-aggregations-refresh-key]: /reference/data-modeling/pre-aggregations#refresh_key
[ref-schema-cube-ref-refresh-key]: /reference/data-modeling/cube#refresh_key
[ref-schema-cube-ref-ctx-sec-ctx]: /reference/data-modeling/context-variables#security_context
-[ref-sec-ctx]: /access-security/access-control/context
+[ref-sec-ctx]: /docs/data-modeling/access-control/context
[self-pre-aggregations-schema]: #pre_aggregations_schema
[self-opts-ctx-to-appid]: #context_to_app_id
[self-driver-factory]: #driver_factory
@@ -1538,18 +1538,18 @@ module.exports = {
[ref-exec-environment-globals]: /docs/data-modeling/dynamic/schema-execution-environment#nodejs-globals-processenv-consolelog-and-others
[ref-environment-variables]: /reference/configuration/environment-variables
[ref-rest-scopes]: /reference/rest-api#api-scopes
-[ref-config-options]: /admin/configuration#configuration-options
+[ref-config-options]: /admin/connect-to-data#configuration-options
[self-orchestrator-id]: #context_to_orchestrator_id
-[ref-multiple-data-sources]: /admin/configuration/advanced/multiple-data-sources
+[ref-multiple-data-sources]: /admin/connect-to-data/advanced/multiple-data-sources
[ref-websockets]: /reference/rest-api/real-time-data-fetch
[ref-matching-preaggs]: /docs/caching/matching-pre-aggregations
[link-snake-case]: https://en.wikipedia.org/wiki/Snake_case
[link-camel-case]: https://en.wikipedia.org/wiki/Camel_case
[link-github-cube-drivers]: https://github.com/cube-js/cube/tree/master/packages
[ref-ungrouped-query]: /reference/queries#ungrouped-query
-[ref-dap]: /access-security/access-control/data-access-policies
-[ref-dap-roles]: /access-security/access-control/data-access-policies#data-access-roles
-[ref-auth-integration]: /access-security/access-control#authentication-integration
+[ref-dap]: /docs/data-modeling/access-control/data-access-policies
+[ref-dap-roles]: /docs/data-modeling/access-control/data-access-policies#data-access-roles
+[ref-auth-integration]: /docs/data-modeling/access-control#authentication-integration
[ref-dax-api]: /reference/dax-api
-[ref-ntlm]: /access-security/authentication/ntlm
+[ref-ntlm]: /docs/integrations/power-bi/ntlm
[ref-environments]: /admin/deployment/environments
\ No newline at end of file
diff --git a/docs-mintlify/reference/configuration/environment-variables.mdx b/docs-mintlify/reference/configuration/environment-variables.mdx
index 9e314891ce5f0..5f30a6c51f0dd 100644
--- a/docs-mintlify/reference/configuration/environment-variables.mdx
+++ b/docs-mintlify/reference/configuration/environment-variables.mdx
@@ -655,7 +655,7 @@ The host URL for a database.
## `CUBEJS_DB_SOCKET_PATH`
The path to a Unix socket that is used to connect to a data source, e.g.,
-[MySQL](/admin/configuration/data-sources/mysql#connecting-via-a-unix-socket).
+[MySQL](/admin/connect-to-data/data-sources/mysql#connecting-via-a-unix-socket).
| Possible Values | Default in Development | Default in Production |
| ------------------------- | ---------------------- | --------------------- |
@@ -747,7 +747,7 @@ for pre-aggregation generation.
## `CUBEJS_DB_MATERIALIZE_CLUSTER`
-The cluster name to use when connecting to [Materialize](/admin/configuration/data-sources/materialize).
+The cluster name to use when connecting to [Materialize](/admin/connect-to-data/data-sources/materialize).
| Possible Values | Default in Development | Default in Production |
| --------------------------------------------------------- | ---------------------- | --------------------- |
@@ -952,7 +952,7 @@ option](/reference/configuration/config#context_to_api_scopes).
## `CUBEJS_DEV_MODE`
-If `true`, enables [development mode](/admin/configuration#development-mode).
+If `true`, enables [development mode](/admin/connect-to-data#development-mode).
| Possible Values | Default in Development | Default in Production |
| --------------- | ---------------------- | --------------------- |
@@ -1873,8 +1873,8 @@ The port for a Cube deployment to listen to API connections on.
[ietf-jwt-ref-aud]: https://tools.ietf.org/html/rfc7519#section-4.1.3
[motherduck-docs-svc-token]:
https://motherduck.com/docs/authenticating-to-motherduck/#authentication-using-a-service-token
-[ref-config-db]: /admin/configuration/data-sources
-[ref-config-multiple-ds-decorating-env]: /admin/configuration/advanced/multiple-data-sources#configuring-data-sources-with-environment-variables-decorated-environment-variables
+[ref-config-db]: /admin/connect-to-data/data-sources
+[ref-config-multiple-ds-decorating-env]: /admin/connect-to-data/advanced/multiple-data-sources#configuring-data-sources-with-environment-variables-decorated-environment-variables
[ref-config-sched-refresh-timer]: /reference/configuration/config#scheduled_refresh_timer
[ref-rest-scopes]: /reference/rest-api#configuration-api-scopes
[snowflake-docs-account-id]:
@@ -1896,7 +1896,7 @@ The port for a Cube deployment to listen to API connections on.
[link-tesseract]: https://cube.dev/blog/introducing-next-generation-data-modeling-engine
[ref-multi-stage-calculations]: /docs/data-modeling/concepts/multi-stage-calculations
[ref-folders]: /reference/data-modeling/view#folders
-[ref-dataviz-tools]: /admin/configuration/visualization-tools
+[ref-dataviz-tools]: /admin/connect-to-data/visualization-tools
[ref-context-to-app-id]: /reference/configuration/config#context_to_app_id
[ref-environments]: /admin/deployment/environments
[ref-databricks-m2m-oauth]: https://docs.databricks.com/aws/en/dev-tools/auth/oauth-m2m
diff --git a/docs-mintlify/reference/control-plane-api.mdx b/docs-mintlify/reference/control-plane-api.mdx
index a7b1ba8752160..fb995f5cbd030 100644
--- a/docs-mintlify/reference/control-plane-api.mdx
+++ b/docs-mintlify/reference/control-plane-api.mdx
@@ -220,4 +220,4 @@ Example response:
[ref-deployments]: /admin/deployment/deployments
[ref-environments]: /admin/workspace/environments
[ref-api-keys]: /admin/api-keys
-[ref-security-context]: /access-security/access-control/context
\ No newline at end of file
+[ref-security-context]: /docs/data-modeling/access-control/context
\ No newline at end of file
diff --git a/docs-mintlify/reference/core-data-apis/dax-api/index.mdx b/docs-mintlify/reference/core-data-apis/dax-api/index.mdx
index 0b75787f1af88..f5cd211915655 100644
--- a/docs-mintlify/reference/core-data-apis/dax-api/index.mdx
+++ b/docs-mintlify/reference/core-data-apis/dax-api/index.mdx
@@ -74,12 +74,12 @@ The DAX API only exposes [views][ref-views], not cubes.
-[ref-powerbi]: /admin/configuration/visualization-tools/powerbi
+[ref-powerbi]: /admin/connect-to-data/visualization-tools/powerbi
[link-dax]: https://learn.microsoft.com/en-us/dax/
[ref-sql-api]: /reference/sql-api
[ref-ref-dax-api]: /reference/dax-api/reference
[ref-views]: /docs/data-modeling/concepts#views
[ref-time-dimensions]: /docs/data-modeling/concepts#time-dimensions
-[ref-kerberos]: /access-security/authentication/kerberos
-[ref-ntlm]: /access-security/authentication/ntlm
-[ref-power-bi]: /admin/configuration/visualization-tools/powerbi
\ No newline at end of file
+[ref-kerberos]: /docs/integrations/power-bi/kerberos
+[ref-ntlm]: /docs/integrations/power-bi/ntlm
+[ref-power-bi]: /admin/connect-to-data/visualization-tools/powerbi
\ No newline at end of file
diff --git a/docs-mintlify/reference/core-data-apis/dax-api/reference.mdx b/docs-mintlify/reference/core-data-apis/dax-api/reference.mdx
index 91e5ad3becd59..525bf4f5bae44 100644
--- a/docs-mintlify/reference/core-data-apis/dax-api/reference.mdx
+++ b/docs-mintlify/reference/core-data-apis/dax-api/reference.mdx
@@ -118,7 +118,7 @@ of the DAX documentation.
-See the [XIRR recipe](/docs/data-modeling/recipes/xirr) for more details.
+See the [XIRR recipe](/recipes/data-modeling/xirr) for more details.
diff --git a/docs-mintlify/reference/core-data-apis/index.mdx b/docs-mintlify/reference/core-data-apis/index.mdx
index 62d95ebcd90d2..9ffcd4485d3ec 100644
--- a/docs-mintlify/reference/core-data-apis/index.mdx
+++ b/docs-mintlify/reference/core-data-apis/index.mdx
@@ -79,23 +79,23 @@ tools][ref-viz-tools]:
[ref-cube-cloud-for-excel]: /docs/integrations/microsoft-excel
[ref-cube-cloud-for-sheets]: /docs/integrations/google-sheets
[ref-mcp-server]: /reference/mcp-server
-[ref-viz-tools]: /admin/configuration/visualization-tools
+[ref-viz-tools]: /admin/connect-to-data/visualization-tools
[ref-hierarchies]: /reference/data-modeling/hierarchies
[ref-folders]: /reference/data-modeling/view#folders
-[ref-powerbi]: /admin/configuration/visualization-tools/powerbi
-[ref-excel]: /admin/configuration/visualization-tools/excel
-[ref-sheets]: /admin/configuration/visualization-tools/google-sheets
-[ref-tableau]: /admin/configuration/visualization-tools/tableau
-[ref-auth-user-pass]: /access-security/authentication/name-password
-[ref-auth-idp]: /access-security/authentication/identity-provider
-[ref-auth-jwt]: /access-security/authentication/jwt
-[ref-auth-kerberos]: /access-security/authentication/kerberos
-[ref-auth-ntlm]: /access-security/authentication/ntlm
-[ref-superset]: /admin/configuration/visualization-tools/superset
-[ref-preset]: /admin/configuration/visualization-tools/superset
+[ref-powerbi]: /admin/connect-to-data/visualization-tools/powerbi
+[ref-excel]: /admin/connect-to-data/visualization-tools/excel
+[ref-sheets]: /admin/connect-to-data/visualization-tools/google-sheets
+[ref-tableau]: /admin/connect-to-data/visualization-tools/tableau
+[ref-auth-user-pass]: /embedding/authentication/jwt
+[ref-auth-idp]: /embedding/authentication/jwt
+[ref-auth-jwt]: /embedding/authentication/jwt
+[ref-auth-kerberos]: /docs/integrations/power-bi/kerberos
+[ref-auth-ntlm]: /docs/integrations/power-bi/ntlm
+[ref-superset]: /admin/connect-to-data/visualization-tools/superset
+[ref-preset]: /admin/connect-to-data/visualization-tools/superset
[ref-playground]: /admin/workspace/playground
[ref-custom-time-formats]: /reference/data-modeling/dimensions#format
[ref-workbooks]: /analytics/workbooks
-[ref-groups]: /access-security/users-and-permissions/user-groups
-[ref-user-attributes]: /access-security/users-and-permissions/user-attributes
-[ref-dap]: /access-security/access-control/data-access-policies
\ No newline at end of file
+[ref-groups]: /admin/users-and-permissions/user-groups
+[ref-user-attributes]: /admin/users-and-permissions/user-attributes
+[ref-dap]: /docs/data-modeling/access-control/data-access-policies
\ No newline at end of file
diff --git a/docs-mintlify/reference/core-data-apis/mdx-api.mdx b/docs-mintlify/reference/core-data-apis/mdx-api.mdx
index 0a393698a6d0e..68b5b91c70c66 100644
--- a/docs-mintlify/reference/core-data-apis/mdx-api.mdx
+++ b/docs-mintlify/reference/core-data-apis/mdx-api.mdx
@@ -222,7 +222,7 @@ This is going to be harmonized in the future.
Authentication and authorization work the same as for the [SQL API](/reference/sql-api/security).
-[ref-excel]: /admin/configuration/visualization-tools/excel
+[ref-excel]: /admin/connect-to-data/visualization-tools/excel
[link-mdx]: https://learn.microsoft.com/en-us/analysis-services/multidimensional-models/mdx/multidimensional-model-data-access-analysis-services-multidimensional-data?view=asallproducts-allversions#bkmk_querylang
[link-pivottable]: https://support.microsoft.com/en-us/office/create-a-pivottable-to-analyze-worksheet-data-a9a84538-bfe9-40a9-a8e9-f99134456576
[ref-cube-cloud-for-excel]: /docs/integrations/microsoft-excel
diff --git a/docs-mintlify/reference/core-data-apis/queries.mdx b/docs-mintlify/reference/core-data-apis/queries.mdx
index aa44e1989a0f6..acb4abfca8201 100644
--- a/docs-mintlify/reference/core-data-apis/queries.mdx
+++ b/docs-mintlify/reference/core-data-apis/queries.mdx
@@ -402,7 +402,7 @@ called `count` to be defined in the cube or view. Please add one to resolve this
[ref-rest-api]: /reference/rest-api
[ref-rest-api-load]: /reference/rest-api/reference#v1load
[ref-graphql-api]: /reference/graphql-api
-[ref-data-sources]: /admin/configuration/data-sources
+[ref-data-sources]: /admin/connect-to-data/data-sources
[ref-rest-api-query-format-options]: /reference/rest-api/query-format#query-properties
[ref-rest-api-query-format-options-tdf]: /reference/rest-api/query-format#time-dimensions-format
[ref-ref-graphql-api-args]: /reference/graphql-api/reference#cubequeryargs
@@ -416,4 +416,4 @@ called `count` to be defined in the cube or view. Please add one to resolve this
[ref-query-rewrite]: /reference/configuration/config#query_rewrite
[blog-compare-date-range]: https://cube.dev/blog/comparing-data-over-different-time-periods
[ref-sql-api-streaming]: /reference/sql-api#streaming
-[ref-tableau]: /admin/configuration/visualization-tools/tableau
\ No newline at end of file
+[ref-tableau]: /admin/connect-to-data/visualization-tools/tableau
\ No newline at end of file
diff --git a/docs-mintlify/reference/core-data-apis/rest-api/index.mdx b/docs-mintlify/reference/core-data-apis/rest-api/index.mdx
index 2a550d11bcffd..44ee073467a9a 100644
--- a/docs-mintlify/reference/core-data-apis/rest-api/index.mdx
+++ b/docs-mintlify/reference/core-data-apis/rest-api/index.mdx
@@ -317,11 +317,11 @@ warehouse][ref-data-warehouses].
[ref-ref-meta-endpoint]: /reference/rest-api/reference#base_pathv1meta
[ref-config-cors]: /reference/configuration/config#http
[ref-schema-ref-cube-refresh-key]: /reference/data-modeling/cube#refresh_key
-[ref-security]: /access-security/access-control
-[ref-notebooks]: /admin/configuration/visualization-tools#notebooks
-[ref-observable]: /admin/configuration/visualization-tools/observable
-[ref-low-code]: /admin/configuration/visualization-tools#low-code-tools-internal-tool-builders
-[ref-retool]: /admin/configuration/visualization-tools/retool
+[ref-security]: /docs/data-modeling/access-control
+[ref-notebooks]: /admin/connect-to-data/visualization-tools#notebooks
+[ref-observable]: /admin/connect-to-data/visualization-tools/observable
+[ref-low-code]: /admin/connect-to-data/visualization-tools#low-code-tools-internal-tool-builders
+[ref-retool]: /admin/connect-to-data/visualization-tools/retool
[ref-conf-basepath]: /reference/configuration/config#basepath
[ref-conf-contexttoapiscopes]: /reference/configuration/config#contexttoapiscopes
[ref-ref-load]: /reference/rest-api/reference#base_pathv1load
@@ -329,7 +329,7 @@ warehouse][ref-data-warehouses].
[ref-ref-sql]: /reference/rest-api/reference#base_pathv1sql
[ref-ref-cubesql]: /reference/rest-api/reference#base_pathv1cubesql
[ref-ref-paj]: /reference/rest-api/reference#base_pathv1pre-aggregationsjobs
-[ref-security-context]: /access-security/access-control/context
+[ref-security-context]: /docs/data-modeling/access-control/context
[ref-graphql-api]: /reference/graphql-api
[ref-orchestration-api]: /reference/orchestration-api
[cube-ea]: https://cube.dev/use-cases/embedded-analytics
@@ -341,9 +341,9 @@ warehouse][ref-data-warehouses].
[link-jq-utility]: https://jqlang.github.io/jq/
[gh-cube-openspec]: https://github.com/cube-js/cube/blob/master/packages/cubejs-api-gateway/openspec.yml
[link-websocket]: https://en.wikipedia.org/wiki/WebSocket
-[ref-concurrency]: /admin/configuration/concurrency
-[ref-data-warehouses]: /admin/configuration/data-sources#data-warehouses
-[ref-traditional-databases]: /admin/configuration/data-sources#transactional-databases
+[ref-concurrency]: /admin/connect-to-data/concurrency
+[ref-data-warehouses]: /admin/connect-to-data/data-sources#data-warehouses
+[ref-traditional-databases]: /admin/connect-to-data/data-sources#transactional-databases
[ref-pre-aggregations]: /docs/caching/using-pre-aggregations
[ref-javascript-sdk]: /reference/javascript-sdk
[ref-recipe-real-time-data-fetch]: /reference/recipes/real-time-data-fetch
diff --git a/docs-mintlify/reference/core-data-apis/rest-api/reference.mdx b/docs-mintlify/reference/core-data-apis/rest-api/reference.mdx
index a158e8e79e836..ec5d7bb80b317 100644
--- a/docs-mintlify/reference/core-data-apis/rest-api/reference.mdx
+++ b/docs-mintlify/reference/core-data-apis/rest-api/reference.mdx
@@ -874,7 +874,7 @@ Keep-Alive: timeout=5
[ref-recipes-data-blending]: /docs/data-modeling/concepts/data-blending#data-blending
[ref-rest-api]: /reference/rest-api
[ref-basepath]: /reference/rest-api#base-path
-[ref-datasources]: /admin/configuration/advanced/multiple-data-sources
+[ref-datasources]: /admin/connect-to-data/advanced/multiple-data-sources
[ref-sql-api]: /reference/sql-api
[ref-rest-api]: /reference/rest-api
[ref-regular-queries]: /reference/queries#regular-query
diff --git a/docs-mintlify/reference/core-data-apis/sql-api/index.mdx b/docs-mintlify/reference/core-data-apis/sql-api/index.mdx
index fa2298584bb1e..76a147761fc46 100644
--- a/docs-mintlify/reference/core-data-apis/sql-api/index.mdx
+++ b/docs-mintlify/reference/core-data-apis/sql-api/index.mdx
@@ -243,15 +243,15 @@ Use the following environment variables to allocate more resources for query pla
[ref-sql-api-auth]: /reference/sql-api/security
[ref-config-checksqlauth]: /reference/configuration/config#checksqlauth
[ref-config-canswitchsqluser]: /reference/configuration/config#canswitchsqluser
-[ref-dataviz-tools]: /admin/configuration/visualization-tools
-[ref-bi]: /admin/configuration/visualization-tools#bi-data-exploration-tools
-[ref-thoughtspot]: /admin/configuration/visualization-tools/thoughtspot
-[ref-sigma]: /admin/configuration/visualization-tools/sigma
-[ref-looker-studio]: /admin/configuration/visualization-tools/looker-studio
-[ref-notebooks]: /admin/configuration/visualization-tools#notebooks
-[ref-jupyter]: /admin/configuration/visualization-tools/jupyter
-[ref-hex]: /admin/configuration/visualization-tools/hex
-[ref-deepnote]: /admin/configuration/visualization-tools/deepnote
+[ref-dataviz-tools]: /admin/connect-to-data/visualization-tools
+[ref-bi]: /admin/connect-to-data/visualization-tools#bi-data-exploration-tools
+[ref-thoughtspot]: /admin/connect-to-data/visualization-tools/thoughtspot
+[ref-sigma]: /admin/connect-to-data/visualization-tools/sigma
+[ref-looker-studio]: /admin/connect-to-data/visualization-tools/looker-studio
+[ref-notebooks]: /admin/connect-to-data/visualization-tools#notebooks
+[ref-jupyter]: /admin/connect-to-data/visualization-tools/jupyter
+[ref-hex]: /admin/connect-to-data/visualization-tools/hex
+[ref-deepnote]: /admin/connect-to-data/visualization-tools/deepnote
[ref-sql-query-format]: /reference/sql-api/query-format
[ref-ref-sql-api]: /reference/sql-api/reference
[ref-data-model-concepts]: /docs/data-modeling/concepts
diff --git a/docs-mintlify/reference/core-data-apis/sql-api/reference.mdx b/docs-mintlify/reference/core-data-apis/sql-api/reference.mdx
index a0d00ad4c2060..a31121b934ff8 100644
--- a/docs-mintlify/reference/core-data-apis/sql-api/reference.mdx
+++ b/docs-mintlify/reference/core-data-apis/sql-api/reference.mdx
@@ -434,7 +434,7 @@ of the PostgreSQL documentation.
-See the [XIRR recipe](/docs/data-modeling/recipes/xirr) for more details.
+See the [XIRR recipe](/recipes/data-modeling/xirr) for more details.
diff --git a/docs-mintlify/reference/data-modeling/context-variables.mdx b/docs-mintlify/reference/data-modeling/context-variables.mdx
index 2afa0d1ffdea0..86fa676a025bb 100644
--- a/docs-mintlify/reference/data-modeling/context-variables.mdx
+++ b/docs-mintlify/reference/data-modeling/context-variables.mdx
@@ -815,7 +815,7 @@ cube(`orders`, {
[ref-config-ext-ctx]: /reference/configuration/config#extendcontext
[ref-config-queryrewrite]: /reference/configuration/config#query_rewrite
-[ref-sec-ctx]: /access-security/access-control/context
+[ref-sec-ctx]: /docs/data-modeling/access-control/context
[ref-ref-cubes]: /reference/data-modeling/cube
[ref-syntax-references]: /docs/data-modeling/syntax#references
[ref-dynamic-data-models]: /docs/data-modeling/dynamic/jinja
diff --git a/docs-mintlify/reference/data-modeling/cube-package.mdx b/docs-mintlify/reference/data-modeling/cube-package.mdx
index b23dc28bd39e8..70d33e3b0c4ed 100644
--- a/docs-mintlify/reference/data-modeling/cube-package.mdx
+++ b/docs-mintlify/reference/data-modeling/cube-package.mdx
@@ -148,6 +148,6 @@ def wrap_2(data):
[link-cube-repo-issues]: https://github.com/cube-js/cube/issues
[link-jinja-filters]: https://jinja.palletsprojects.com/en/3.1.x/templates/#filters
-[ref-config-options]: /admin/configuration#configuration-options
+[ref-config-options]: /admin/connect-to-data#configuration-options
[ref-ref-config-options]: /reference/configuration/config
[ref-model-syntax]: /docs/data-modeling/syntax#model-syntax
\ No newline at end of file
diff --git a/docs-mintlify/reference/data-modeling/cube.mdx b/docs-mintlify/reference/data-modeling/cube.mdx
index 4071f50941da5..1908134fa46c7 100644
--- a/docs-mintlify/reference/data-modeling/cube.mdx
+++ b/docs-mintlify/reference/data-modeling/cube.mdx
@@ -653,7 +653,7 @@ The `access_policy` parameter is used to configure [access policies][ref-ref-dap
[ref-config-driverfactory]: /reference/configuration/config#driverfactory
-[ref-recipe-control-access-cubes-views]: /access-security/access-control/recipes/controlling-access-to-cubes-and-views
+[ref-recipe-control-access-cubes-views]: /docs/data-modeling/access-control/recipes/controlling-access-to-cubes-and-views
[ref-naming]: /docs/data-modeling/syntax#naming
[ref-playground]: /docs/workspace/playground
[ref-apis]: /reference
diff --git a/docs-mintlify/reference/data-modeling/data-access-policies.mdx b/docs-mintlify/reference/data-modeling/data-access-policies.mdx
index afcd1c7362fe6..1adfa5152e718 100644
--- a/docs-mintlify/reference/data-modeling/data-access-policies.mdx
+++ b/docs-mintlify/reference/data-modeling/data-access-policies.mdx
@@ -460,14 +460,14 @@ cube(`orders`, {
[ref-ref-cubes]: /reference/data-modeling/cube
[ref-ref-views]: /reference/data-modeling/view
-[ref-dap]: /access-security/access-control/data-access-policies
-[ref-dap-mls]: /access-security/access-control/data-access-policies#member-level-access
-[ref-dap-rls]: /access-security/access-control/data-access-policies#row-level-access
-[ref-mls]: /access-security/access-control/member-level-security
-[ref-rls]: /access-security/access-control/row-level-security
-[ref-sec-ctx]: /access-security/access-control/context
+[ref-dap]: /docs/data-modeling/access-control/data-access-policies
+[ref-dap-mls]: /docs/data-modeling/access-control/data-access-policies#member-level-access
+[ref-dap-rls]: /docs/data-modeling/access-control/data-access-policies#row-level-access
+[ref-mls]: /docs/data-modeling/access-control/member-level-security
+[ref-rls]: /docs/data-modeling/access-control/row-level-security
+[ref-sec-ctx]: /docs/data-modeling/access-control/context
[ref-core-data-apis]: /reference/core-data-apis
-[ref-dap-masking]: /access-security/access-control/data-access-policies#data-masking
+[ref-dap-masking]: /docs/data-modeling/access-control/data-access-policies#data-masking
[ref-mask-dim]: /reference/data-modeling/dimensions#mask
[ref-rest-query-filters]: /reference/rest-api/query-format#filters-format
[ref-rest-query-ops]: /reference/rest-api/query-format#filters-operators
diff --git a/docs-mintlify/reference/data-modeling/dimensions.mdx b/docs-mintlify/reference/data-modeling/dimensions.mdx
index 8cb75ec1a114e..661702f63a41d 100644
--- a/docs-mintlify/reference/data-modeling/dimensions.mdx
+++ b/docs-mintlify/reference/data-modeling/dimensions.mdx
@@ -1198,14 +1198,14 @@ cube(`fiscal_calendar`, {
[ref-apis]: /reference
[ref-time-dimensions]: #type
[link-date-time-string]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date#date_time_string_format
-[ref-custom-granularity-recipe]: /docs/data-modeling/recipes/custom-granularity
+[ref-custom-granularity-recipe]: /recipes/data-modeling/custom-granularity
[ref-ref-hierarchies]: /reference/data-modeling/hierarchies
-[ref-data-sources]: /admin/configuration/data-sources
+[ref-data-sources]: /admin/connect-to-data/data-sources
[ref-calendar-cubes]: /docs/data-modeling/concepts/calendar-cubes
[ref-time-shift]: /docs/data-modeling/concepts/multi-stage-calculations#time-shift
[ref-cube-calendar]: /reference/data-modeling/cube#calendar
[ref-measure-time-shift]: /reference/data-modeling/measures#time_shift
-[ref-data-masking]: /access-security/access-control/data-access-policies#data-masking
+[ref-data-masking]: /docs/data-modeling/access-control/data-access-policies#data-masking
[link-iso-4217]: https://en.wikipedia.org/wiki/ISO_4217
[link-d3-format]: https://d3js.org/d3-format
[link-strftime]: https://pubs.opengroup.org/onlinepubs/009695399/functions/strptime.html
@@ -1213,4 +1213,4 @@ cube(`fiscal_calendar`, {
[link-tesseract]: https://cube.dev/blog/introducing-next-generation-data-modeling-engine
[ref-case-measures]: /reference/data-modeling/measures#case
[ref-meta-api]: /reference/rest-api/reference#base_pathv1meta
-[ref-string-time-dims]: /docs/data-modeling/recipes/string-time-dimensions
\ No newline at end of file
+[ref-string-time-dims]: /recipes/data-modeling/string-time-dimensions
\ No newline at end of file
diff --git a/docs-mintlify/reference/data-modeling/hierarchies.mdx b/docs-mintlify/reference/data-modeling/hierarchies.mdx
index 44b9e5c86fab8..2557482c33ea1 100644
--- a/docs-mintlify/reference/data-modeling/hierarchies.mdx
+++ b/docs-mintlify/reference/data-modeling/hierarchies.mdx
@@ -318,4 +318,4 @@ cube(`users`, {
[ref-naming]: /docs/data-modeling/syntax#naming
[ref-apis-support]: /reference#data-modeling
[ref-playground]: /docs/workspace/playground#viewing-the-data-model
-[ref-viz-tools]: /admin/configuration/visualization-tools
\ No newline at end of file
+[ref-viz-tools]: /admin/connect-to-data/visualization-tools
\ No newline at end of file
diff --git a/docs-mintlify/reference/data-modeling/measures.mdx b/docs-mintlify/reference/data-modeling/measures.mdx
index ff2a765600f22..e54aad197312a 100644
--- a/docs-mintlify/reference/data-modeling/measures.mdx
+++ b/docs-mintlify/reference/data-modeling/measures.mdx
@@ -1431,7 +1431,7 @@ cube(`orders`, {
[ref-nested-aggregate]: /docs/data-modeling/concepts/multi-stage-calculations#nested-aggregate
[ref-calendar-cubes]: /docs/data-modeling/concepts/calendar-cubes
[ref-switch-dimensions]: /reference/data-modeling/dimensions#type
-[ref-data-masking]: /access-security/access-control/data-access-policies#data-masking
+[ref-data-masking]: /docs/data-modeling/access-control/data-access-policies#data-masking
[link-d3-format]: https://d3js.org/d3-format
[link-iso-4217]: https://en.wikipedia.org/wiki/ISO_4217
[ref-calculated-measures]: /docs/data-modeling/concepts/calculated-members#calculated-measures
diff --git a/docs-mintlify/reference/data-modeling/pre-aggregations.mdx b/docs-mintlify/reference/data-modeling/pre-aggregations.mdx
index eea33cc5c56c1..b2efa80b1bcea 100644
--- a/docs-mintlify/reference/data-modeling/pre-aggregations.mdx
+++ b/docs-mintlify/reference/data-modeling/pre-aggregations.mdx
@@ -1757,10 +1757,10 @@ cube(`orders`, {
[ref-caching-lambda-preaggs]: /docs/caching/lambda-pre-aggregations
[ref-caching-partitioning]: /docs/caching/using-pre-aggregations#partitioning
[ref-caching-preaggs-target]: /docs/caching/getting-started-pre-aggregations#ensuring-pre-aggregations-are-targeted-by-queries
-[ref-config-downstream-superset]: /admin/configuration/visualization-tools/superset
+[ref-config-downstream-superset]: /admin/connect-to-data/visualization-tools/superset
[ref-cube-refreshkey]: /reference/data-modeling/cube#refresh_key
[ref-production-checklist-refresh]: /docs/deployment/production-checklist#set-up-refresh-worker
-[ref-recipe-funnels]: /docs/data-modeling/recipes/funnels
+[ref-recipe-funnels]: /recipes/data-modeling/funnels
[ref-schema-ref-cube-datasource]: /reference/data-modeling/cube#data_source
[ref-schema-dimensions]: /reference/data-modeling/dimensions
[ref-schema-measures]: /reference/data-modeling/measures
@@ -1788,4 +1788,4 @@ cube(`orders`, {
[ref-ref-cubes]: /reference/data-modeling/cube
[ref-custom-granularity]: /reference/data-modeling/dimensions#granularities
[ref-env-allow-non-strict]: /reference/configuration/environment-variables#cubejs-pre-aggregations-allow-non-strict-date-range-match
-[ref-config-downstream-tableau]: /admin/configuration/visualization-tools/tableau
\ No newline at end of file
+[ref-config-downstream-tableau]: /admin/connect-to-data/visualization-tools/tableau
\ No newline at end of file
diff --git a/docs-mintlify/reference/data-modeling/segments.mdx b/docs-mintlify/reference/data-modeling/segments.mdx
index de1a5353f5df6..996edfd5c4ab7 100644
--- a/docs-mintlify/reference/data-modeling/segments.mdx
+++ b/docs-mintlify/reference/data-modeling/segments.mdx
@@ -338,7 +338,7 @@ cube(`users`, {
[ref-ref-cubes]: /reference/data-modeling/cube
[ref-backend-query]: /reference/rest-api/query-format
-[ref-schema-gen]: /docs/data-modeling/recipes/using-dynamic-measures
+[ref-schema-gen]: /recipes/data-modeling/using-dynamic-measures
[ref-naming]: /docs/data-modeling/syntax#naming
[ref-playground]: /docs/workspace/playground
[ref-apis]: /reference
\ No newline at end of file
diff --git a/docs-mintlify/reference/data-modeling/view.mdx b/docs-mintlify/reference/data-modeling/view.mdx
index 3bfac5fd9c9e9..81905e36401a5 100644
--- a/docs-mintlify/reference/data-modeling/view.mdx
+++ b/docs-mintlify/reference/data-modeling/view.mdx
@@ -151,7 +151,7 @@ view(`orders`, {
You can also use `COMPILE_CONTEXT` for dynamic visibility if necessary, check
out our
-[Controlling access to cubes and views ](/access-security/access-control/recipes/controlling-access-to-cubes-and-views)
+[Controlling access to cubes and views ](/docs/data-modeling/access-control/recipes/controlling-access-to-cubes-and-views)
recipe.
@@ -645,14 +645,14 @@ Details`.
The `access_policy` parameter is used to configure [access policies][ref-ref-dap].
-[ref-recipe-control-access-cubes-views]: /access-security/access-control/recipes/controlling-access-to-cubes-and-views
+[ref-recipe-control-access-cubes-views]: /docs/data-modeling/access-control/recipes/controlling-access-to-cubes-and-views
[ref-naming]: /docs/data-modeling/syntax#naming
[ref-apis]: /reference
[ref-ref-cubes]: /reference/data-modeling/cube
[ref-ref-dap]: /reference/data-modeling/data-access-policies
[ref-apis-support]: /reference#data-modeling
[ref-playground]: /docs/workspace/playground#viewing-the-data-model
-[ref-viz-tools]: /admin/configuration/visualization-tools
+[ref-viz-tools]: /admin/connect-to-data/visualization-tools
[ref-extension]: /docs/data-modeling/concepts/code-reusability-extending-cubes
[ref-dim-name]: /reference/data-modeling/dimensions#name
[ref-dim-title]: /reference/data-modeling/dimensions#title
diff --git a/docs-mintlify/reference/embed-apis/chat-api.mdx b/docs-mintlify/reference/embed-apis/chat-api.mdx
index bdd2834d7ed39..29781cf26755f 100644
--- a/docs-mintlify/reference/embed-apis/chat-api.mdx
+++ b/docs-mintlify/reference/embed-apis/chat-api.mdx
@@ -106,7 +106,7 @@ When using `internalId`, the user must already exist in Cube Cloud. You cannot s
User attributes allow you to pass contextual information about the user to the AI agent. This enables personalized responses and automatic data filtering based on user permissions through row-level security policies.
-User attributes must first be configured in your Cube admin panel before they can be used. See the [User Attributes documentation](/access-security/users-and-permissions/user-attributes) for setup instructions.
+User attributes must first be configured in your Cube admin panel before they can be used. See the [User Attributes documentation](/admin/users-and-permissions/user-attributes) for setup instructions.
**Supported Fields:**
diff --git a/docs-mintlify/reference/javascript-sdk/angular.mdx b/docs-mintlify/reference/javascript-sdk/angular.mdx
index 0065fdf0b6de3..8bfc5885085ed 100644
--- a/docs-mintlify/reference/javascript-sdk/angular.mdx
+++ b/docs-mintlify/reference/javascript-sdk/angular.mdx
@@ -65,7 +65,7 @@ Here are the typical steps to query and visualize analytical data in Angular:
- **Create an instance of Cube JavaScript Client.** The client is initialized
with Cube API URL. In development mode, the default URL is
[http://localhost:4000/cubejs-api/v1](http://localhost:4000/cubejs-api/v1).
- The client is also initialized with an [API token](/access-security/access-control), but it
+ The client is also initialized with an [API token](/docs/data-modeling/access-control), but it
takes effect only in [production](/docs/deployment/production-checklist).
- **Query data from Cube Backend and Transform data for visualization.** Use
[`CubeClient`](/reference/javascript-sdk/reference/cubejs-client-ngx#api) to load data. The
@@ -102,7 +102,7 @@ yarn add @cubejs-client/core @cubejs-client/ngx
```
Now you can build your application from scratch or connect to one of our
-[supported data visualization tools](/admin/configuration/visualization-tools).
+[supported data visualization tools](/admin/connect-to-data/visualization-tools).
[ref-compare-date-range]: /reference/queries#compare-date-range-query
\ No newline at end of file
diff --git a/docs-mintlify/reference/javascript-sdk/index.mdx b/docs-mintlify/reference/javascript-sdk/index.mdx
index 53f531bd16c46..e43688b881061 100644
--- a/docs-mintlify/reference/javascript-sdk/index.mdx
+++ b/docs-mintlify/reference/javascript-sdk/index.mdx
@@ -55,7 +55,7 @@ Here are the typical steps to query and visualize analytical data:
- **Create an instance of Cube JavaScript Client.** The client is initialized
with Cube API URL. In development mode, the default URL is
[http://localhost:4000/cubejs-api/v1](http://localhost:4000/cubejs-api/v1).
- The client is also initialized with an [API token](/access-security/access-control), but it
+ The client is also initialized with an [API token](/docs/data-modeling/access-control), but it
takes effect only in [production](/docs/deployment/production-checklist).
- **Query data from Cube Backend.** The client accepts a query, which is a plain
JavaScript object. See
@@ -93,7 +93,7 @@ yarn add @cubejs-client/core
```
Now you can build your application from scratch or connect to one of our
-[supported data visualization tools](/admin/configuration/visualization-tools).
+[supported data visualization tools](/admin/connect-to-data/visualization-tools).
## Data format
@@ -128,5 +128,5 @@ console.log(resultSet.tablePivot())
[ref-compare-date-range]: /reference/queries#compare-date-range-query
[ref-rest-api]: /reference/rest-api
[link-max-safe-int]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/MAX_SAFE_INTEGER
-[ref-data-sources]: /admin/configuration/data-sources
+[ref-data-sources]: /admin/connect-to-data/data-sources
[ref-ref-loadmethodoptions]: /reference/javascript-sdk/reference/cubejs-client-core#loadmethodoptions
\ No newline at end of file
diff --git a/docs-mintlify/reference/javascript-sdk/react.mdx b/docs-mintlify/reference/javascript-sdk/react.mdx
index e32ccfae190f0..a39ff2f93b27b 100644
--- a/docs-mintlify/reference/javascript-sdk/react.mdx
+++ b/docs-mintlify/reference/javascript-sdk/react.mdx
@@ -72,7 +72,7 @@ Here are the typical steps to query and visualize analytical data in React:
- **Create an instance of Cube JavaScript Client.** The client is initialized
with Cube API URL. In development mode, the default URL is
[http://localhost:4000/cubejs-api/v1](http://localhost:4000/cubejs-api/v1).
- The client is also initialized with an [API token](/access-security/access-control), but it
+ The client is also initialized with an [API token](/docs/data-modeling/access-control), but it
takes effect only in [production](/docs/deployment/production-checklist).
- **Query data from Cube Backend.** In functional React components, use the
`useCubeQuery` hook to execute a query, which is a plain JavaScript object.
@@ -111,7 +111,7 @@ yarn add @cubejs-client/core @cubejs-client/react
```
Now you can build your application from scratch or connect to one of our
-[supported data visualization tools](/admin/configuration/visualization-tools).
+[supported data visualization tools](/admin/connect-to-data/visualization-tools).
[ref-compare-date-range]: /reference/queries#compare-date-range-query
\ No newline at end of file
diff --git a/docs-mintlify/reference/javascript-sdk/reference/cubejs-client-core.mdx b/docs-mintlify/reference/javascript-sdk/reference/cubejs-client-core.mdx
index 17b6229557816..a8f14d1dc0c38 100644
--- a/docs-mintlify/reference/javascript-sdk/reference/cubejs-client-core.mdx
+++ b/docs-mintlify/reference/javascript-sdk/reference/cubejs-client-core.mdx
@@ -1121,4 +1121,4 @@ values? | never |
[link-mdn-max-safe-integer]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Number/MAX_SAFE_INTEGER
[ref-query-format]: /reference/rest-api/query-format
-[ref-security]: /access-security/access-control
\ No newline at end of file
+[ref-security]: /docs/data-modeling/access-control
\ No newline at end of file
diff --git a/docs-mintlify/reference/javascript-sdk/vue.mdx b/docs-mintlify/reference/javascript-sdk/vue.mdx
index 6b23cc912d73e..4ccf86568d427 100644
--- a/docs-mintlify/reference/javascript-sdk/vue.mdx
+++ b/docs-mintlify/reference/javascript-sdk/vue.mdx
@@ -64,7 +64,7 @@ Here are the typical steps to query and visualize analytical data in Vue:
- **Create an instance of Cube JavaScript Client.** The client is initialized
with Cube API URL. In development mode, the default URL is
[http://localhost:4000/cubejs-api/v1](http://localhost:4000/cubejs-api/v1).
- The client is also initialized with an [API token](/access-security/access-control), but it
+ The client is also initialized with an [API token](/docs/data-modeling/access-control), but it
takes effect only in [production](/docs/deployment/production-checklist).
- **Query data from Cube Backend.** Use
[`QueryBuilder`](/reference/javascript-sdk/reference/cubejs-client-vue#querybuilder) or
@@ -107,7 +107,7 @@ yarn add @cubejs-client/core @cubejs-client/vue3
```
Now you can build your application from scratch or connect to one of our
-[supported data visualization tools](/admin/configuration/visualization-tools).
+[supported data visualization tools](/admin/connect-to-data/visualization-tools).
[ref-compare-date-range]: /reference/queries#compare-date-range-query
\ No newline at end of file
diff --git a/docs-mintlify/reference/mcp-server.mdx b/docs-mintlify/reference/mcp-server.mdx
index b69ed1f2de8da..5b3721a40c9cc 100644
--- a/docs-mintlify/reference/mcp-server.mdx
+++ b/docs-mintlify/reference/mcp-server.mdx
@@ -204,4 +204,4 @@ Basic config example:
For local server details and updates, see the GitHub repo for `@cube-dev/mcp-server`: [cubedevinc/cube-mcp-server][ref-mcp-server-github].
[ref-mcp-server-github]: https://github.com/cubedevinc/cube-mcp-server
-[ref-roles]: /access-security/users-and-permissions/roles-and-permissions
\ No newline at end of file
+[ref-roles]: /admin/users-and-permissions/roles-and-permissions
\ No newline at end of file