Skip to main content

Documentation Index

Fetch the complete documentation index at: https://cubed3-docs-cub-2416-update-semantic-snowflake-semantic-vie.mintlify.app/llms.txt

Use this file to discover all available pages before exploring further.

Creator Mode is available on the Enterprise plan.
Creator Mode lets you embed the entire Cube application into your product so users can create and modify their own dashboards directly within the embedded experience.
Creator Mode requires Signed embedding. Private embedding is not supported.

How it works

In Creator Mode, you embed the full Cube application instead of individual dashboards or chat interfaces. This provides users with the complete Cube experience, including the ability to:
  • Create new dashboards
  • Modify existing dashboards
  • Access all workbook and dashboard functionality
  • Build custom analytics experiences
To enable Creator Mode, pass creatorMode: true to the Generate Session API when generating an embed session. Optionally, pass embedTenantName to scope content to a specific embed tenant — by default, creator mode uses the current tenant’s name.

Embed tenant name

embedTenantName is an optional parameter on the Generate Session API used to scope all content (dashboards, workbooks, etc.) that users create within the embedded application to a specific embed tenant. This ensures proper data isolation in multi-tenant scenarios. When embedTenantName is omitted in creator mode, the session defaults to the current tenant, so most setups don’t need to set it. The value must be lowercase, start with a letter, end with a letter or number, and only contain letters, numbers, or hyphens (length 5–36).

Using Creator Mode

To use Creator Mode and embed the app:
  1. Set the embed type to “App” in the form
  2. Fill in Deployment ID and either External ID or Internal ID (email). Optionally provide an Embed Tenant Name to scope content to a specific embed tenant
  3. Click “Generate Session & Embed” — the request automatically includes creatorMode: true for app embeddings
  4. The app is embedded at /embed/d/{deploymentId}/app?session={sessionId} and displayed in the iframe
Creator mode is enabled automatically when the embed type is “app”; no additional configuration is needed.

Example

const API_KEY = "YOUR_API_KEY";
const DEPLOYMENT_ID = 32;

const session = await fetch(
  "https://your-account.cubecloud.dev/api/v1/embed/generate-session",
  {
    method: "POST",
    headers: {
      "Content-Type": "application/json",
      Authorization: `Api-Key ${API_KEY}`,
    },
    body: JSON.stringify({
      deploymentId: DEPLOYMENT_ID,
      externalId: "user@example.com",
      creatorMode: true,
      // Optional — defaults to the current tenant when omitted:
      embedTenantName: "acme-corp",
    }),
  },
);

const data = await session.json();
const sessionId = data.sessionId;

Embedding the app

Use the session ID to embed the full Cube application:
<iframe
  title="Cube App"
  src="https://your-tenant.cubecloud.dev/embed/d/{deploymentId}/app?session={sessionId}"
  width="100%"
  height="800"
></iframe>
Replace {deploymentId} with your deployment ID and {sessionId} with the session ID returned from the Generate Session API.

Example application

For a complete working example of embedding, including Creator Mode, check out the cube-embedding-demo repository. This demo application provides:
  • A full working example of iframe embedding
  • Implementation of signed iframe embedding with session generation
  • Support for creator mode with an optional embed tenant name
  • A React-based UI for testing embedding functionality
  • Backend server that securely handles API key authentication
You can clone the repository, configure it with your Cube credentials, and run it locally to test embedding functionality or use it as a reference implementation for your own application.