Back to Cube

Analytics Chat

docs-mintlify/embedding/iframe/analytics-chat.mdx

1.7.72.7 KB
Original Source
<Info> Iframe embedding is available on [Premium and Enterprise plans](https://cube.dev/pricing). </Info>

Embed Analytics Chat into your application using an iframe. Let your users ask questions in plain language and get trusted answers powered by your semantic layer — without leaving your product.

Analytics Chat can be embedded with either authentication mode:

Embed with private embedding

The embed URL for Analytics Chat is always the same:

html
<iframe
  title="Analytics Chat"
  src="https://your-account.cubecloud.dev/embed/chat"
  width="100%"
  height="800"
></iframe>

Users will be prompted to sign in with their Cube credentials when accessing the embedded chat. See Private embedding for details on the auth model.

Embed with signed embedding

To embed Analytics Chat for external/customer-facing applications, generate a session on your backend and pass the session ID into the iframe:

html
<iframe
  title="Analytics Chat"
  src="https://your-tenant.cubecloud.dev/embed/chat?sessionId=YOUR_SESSION_ID"
  width="100%"
  height="800"
></iframe>

See Signed embedding for the full session generation flow, API key setup, and a complete working example.

Personalize chat with user attributes

When using signed embedding, you can pass user attributes during session generation to personalize chat responses for each user — for example, scoping answers to a specific region, department, or tenant.

Customize the chat

Add these query parameters to the embed URL to hide parts of the chat UI:

ParameterEffect
hideNewChat=1Hides the New chat button.
hideChatInput=1Hides the message input, for a read-only transcript.
hideHistory=1Hides the Chat History button.

By default, the chat header shows a Chat History button that lists the user's past conversations (matched by externalId under signed embedding) so they can resume one instead of always starting fresh.

To deep-link directly into a specific past conversation, pass its ID as chatId alongside sessionId on the short embed URL:

text
https://your-tenant.cubecloud.dev/embed/chat?sessionId=YOUR_SESSION_ID&chatId=YOUR_CHAT_ID