# SmartVisuals AI Chatbot for Power BI

- Page: https://www.smartvisuals.io/chatbot
- Fields and settings: https://www.smartvisuals.io/chatbot/settings
- Microsoft Marketplace: https://marketplace.microsoft.com/en-us/product/smartvisuals.smartvisuals-chatbot?tab=overview
- Package: https://www.smartvisuals.io/downloads/chatbot-visual.pbiviz
- Price: Free plan with a monthly message allowance; paid plans from $12 per month on smartvisuals.io, with a 30-day free trial.
- Certified by Microsoft: no
- Version: 1.1.0.0
- GUID (visualType and publicCustomVisuals): `powerBIChatbot76A36CD15A0D`

## Fields

| Field | Internal name | Takes | Needed | What it is for |
| --- | --- | --- | --- | --- |
| Data | `data` | Column or measure | Optional |  |
| Values | `values` | Column or measure | Optional |  |

## Format pane

Each card is a key under `visual.objects` in a PBIR visual.json; each setting is a property of it. Toggles take `true`/`false`, choices and text a value in single quotes (`'auto'`), numbers a `D` suffix (`12D`).

### License (`licenseSettings`)

| Setting | Internal name | Type or options |
| --- | --- | --- |
| License Key: Optional. Enter your free or paid SmartVisuals licence key to enable AI chat and premium analytics | `licenseKey` | Text |
| Show Usage Indicator: Shows how many messages from monthly limit you have used | `showUsageBar` | On / off |

### AI Provider (`apiProviderSettings`)

| Setting | Internal name | Type or options |
| --- | --- | --- |
| Select AI Provider: Choose your AI provider (Bring Your Own Key) | `selectedProvider` | `smartvisuals` (SmartVisuals AI (included)), `openai` (OpenAI (GPT)), `anthropic` (Anthropic (Claude)), `google` (Google (Gemini)), `xai` (xAI (Grok)), `azure` (Azure OpenAI) |
| Show Provider Switcher in Menu: Enable quick provider switching in hamburger menu | `showProviderSwitcher` | On / off |
| ✓ Enable OpenAI: Show OpenAI in provider switcher menu | `openaiEnabled` | On / off |
| ✓ Enable Anthropic: Show Anthropic in provider switcher menu | `anthropicEnabled` | On / off |
| ✓ Enable Google: Show Google in provider switcher menu | `googleEnabled` | On / off |
| ✓ Enable xAI: Show xAI (Grok) in provider switcher menu | `xaiEnabled` | On / off |
| ✓ Enable Azure OpenAI: Show Azure OpenAI in provider switcher menu | `azureEnabled` | On / off |
| OpenAI API Key: Your OpenAI API key | `openaiApiKey` | Text |
| OpenAI Model | `openaiModel` | `gpt-6-luna` (GPT-6 Luna (fast, low cost)), `gpt-6-sol` (GPT-6 Sol), `gpt-6-astra` (GPT-6 Astra (most capable)), `custom` (Custom Model) |
| Custom OpenAI Model Name: Enter a model ID from your OpenAI account (e.g., gpt-6-sol) | `customOpenAiModel` | Text |
| Anthropic API Key: Your Anthropic API key | `anthropicApiKey` | Text |
| Anthropic Model | `anthropicModel` | `claude-haiku-5-5` (Claude Haiku 5.5), `claude-sonnet-5-5` (Claude Sonnet 5.5), `claude-opus-5-5` (Claude Opus 5.5), `claude-fable-5-1` (Claude Fable 5.1), `custom` (Custom Model) |
| Custom Anthropic Model Name: Enter a model ID (e.g., claude-sonnet-5-5) | `customAnthropicModel` | Text |
| Google API Key: Your Google AI API key | `googleApiKey` | Text |
| Google Model | `googleModel` | `gemini-3.5-flash-lite` (Gemini 3.5 Flash-Lite (low cost)), `gemini-3.8-flash` (Gemini 3.8 Flash), `gemini-3.1-pro-preview` (Gemini 3.1 Pro (preview)), `custom` (Custom Model) |
| Custom Google Model Name: Enter a model ID (e.g., gemini-3.8-flash) | `customGoogleModel` | Text |
| xAI API Key: Your xAI API key | `xaiApiKey` | Text |
| xAI Model | `xaiModel` | `grok-4.3` (Grok 4.3 (lower cost, 1M context)), `grok-4.7` (Grok 4.7), `custom` (Custom Model) |
| Custom xAI Model Name: Enter custom model name (e.g., grok-3) | `customXaiModel` | Text |
| Azure API Key: Your Azure OpenAI API key | `azureApiKey` | Text |
| Azure Endpoint: Your Azure OpenAI endpoint URL (e.g. https://myresource.openai.azure.com) | `azureEndpointUrl` | Text |
| Deployment Name: Your model deployment name | `azureDeploymentName` | Text |
| API Version: API version (default: 2024-02-15-preview) | `azureApiVersionStr` | Text |

### Chatbot Behavior (`chatSettings`)

| Setting | Internal name | Type or options |
| --- | --- | --- |
| Azure Endpoint: Your Azure OpenAI endpoint (only for Azure) | `azureEndpoint` | Text |
| Max Response Length: Maximum tokens in an AI answer (free plan: up to 1500) | `maxTokens` | Number |
| AI Creativity: 0 = Focused, 1 = Creative | `temperature` | Number |
| System Prompt: Instructions for AI behavior | `systemPrompt` | Text |
| Welcome Message: Custom welcome message shown at the start of a conversation | `welcomeMessage` | Text |
| Save Conversation History: Off by default. When on, the conversation (questions, answers and the data shown in them) is stored on SmartVisuals servers so it can be reopened later | `saveConversationHistory` | On / off |
| Enable Context Memory: Include previous messages as context for AI responses | `enableContextMemory` | On / off |
| Context Message Count: How many previous messages to include as context | `maxContextMessages` | Number |

### Language (`languageSettings`)

| Setting | Internal name | Type or options |
| --- | --- | --- |
| Interface Language: Choose your preferred language for the chatbot interface | `selectedLanguage` | `auto` (Auto (Power BI language)), `en` (🇺🇸 English), `cs` (🇨🇿 Čeština), `de` (🇩🇪 Deutsch), `fr` (🇫🇷 Français), `es` (🇪🇸 Español) |
| Chat Language: Language for AI responses (leave empty for auto-detection based on your question) | `chatLanguage` | Text |

### Interface (`uiSettings`)

| Setting | Internal name | Type or options |
| --- | --- | --- |
| Chatbot Name: Custom name for your AI assistant | `chatbotName` | Text |
| User Avatar: URL or emoji for user avatar (supports URLs and base64 images) | `userAvatar` | Text |
| Assistant Avatar: URL or emoji for assistant avatar (only for Blank theme) | `assistantAvatar` | Text |
| Show Avatars | `showAvatars` | On / off |
| Show Typing Indicator | `showTypingIndicator` | On / off |
| Enable Export | `enableExport` | On / off |
| Show AI Suggestions | `showSuggestions` | On / off |
| Enable Copy Button | `showCopyButton` | On / off |
| Enable Animations | `enableAnimations` | On / off |

### Geek Mode (`geekModeSettings`)

| Setting | Internal name | Type or options |
| --- | --- | --- |
| Enable Geek Mode: Developer panel with data preview and metrics (Professional+) | `enableGeekMode` | On / off |
| Show in Menu | `showInMenu` | On / off |
| Button Position | `buttonPosition` | Text |

### Instant Insights (Offline) (`instantInsightsSettings`)

| Setting | Internal name | Type or options |
| --- | --- | --- |
| Enable Instant Insights: OFFLINE feature — basic insights (top values, trends, data quality) computed locally on your device. No AI, no API key and no internet involved. On by default — shown automatically when no licence key is set. | `enableInstantInsights` | On / off |
| Show Automatically Without API Key: When enabled, offline insights replace the empty state if no license or API key is configured | `autoRunWhenNoKey` | On / off |
| Number of Insights: How many insight cards to show (1-8) | `maxInsights` | Number |
| Show in Menu | `showInMenu` | On / off |

### Insight Discovery (`insightDiscoverySettings`)

| Setting | Internal name | Type or options |
| --- | --- | --- |
| Enable Insight Discovery: Automated dataset analysis that surfaces patterns and trends (Professional+) | `enableInsightDiscovery` | On / off |
| Show in Menu | `showInMenu` | On / off |
| Number of Queries: How many smart queries to run during discovery | `numberOfQueries` | Number |
| Query Delay (ms): Delay between queries to avoid rate limiting | `queryDelay` | Number |
| Show Visual Indicator | `visualIndicator` | On / off |

### Theme (`themeSettings`)

| Setting | Internal name | Type or options |
| --- | --- | --- |
| Appearance | `selectedTheme` | `smartvisuals` (SmartVisuals (recommended)), `modern` (Modern - clean and bright), `terminal` (Terminal - hacker style), `dark` (Dark - easy on eyes), `blank` (Blank - fully customizable) |

### Colors (`colorSettings`)

| Setting | Internal name | Type or options |
| --- | --- | --- |
| Primary Color: Main theme color | `primaryColor` | Colour |
| Accent Color: Secondary accent color | `secondaryColor` | Colour |
| Background Color: Chat area background | `backgroundColor` | Colour |
| User Message Background | `userMessageColor` | Colour |
| AI Message Background | `assistantMessageColor` | Colour |
| Light Text Color: Text on dark backgrounds | `textColorLight` | Colour |
| Dark Text Color: Text on light backgrounds | `textColorDark` | Colour |
| User Bubble Text: Text color inside user message bubbles | `userBubbleTextColor` | Colour |
| AI Bubble Text: Text color inside AI message bubbles | `aiBubbleTextColor` | Colour |
| Input Text: Text color in the input textbox | `inputTextColor` | Colour |
| Header Text: Header title and slogan text color | `headerTextColor` | Colour |
| Highlight Color: Bold text, links, and emphasis inside messages | `highlightColor` | Colour |
| Icon Color: Menu icons, send button, and UI controls | `iconColor` | Colour |
| Scrollbar Color: Scrollbar thumb color | `scrollbarColor` | Colour |
| Button Color: Suggestion buttons and CTA elements | `buttonColor` | Colour |
| Border Accent: Blockquote borders and secondary accents | `borderColor` | Colour |

### Visual Effects (`effectsSettings`)

| Setting | Internal name | Type or options |
| --- | --- | --- |
| Glassmorphism: Translucent blur effects for modern look | `enableGlassmorphism` | On / off |
| Background Gradients: Gradient backgrounds for chat area | `enableBackgroundGradients` | On / off |
| Message Gradients: Gradient backgrounds for messages | `enableMessageGradients` | On / off |
| Advanced Shadows: Enhanced shadow effects | `enableAdvancedShadows` | On / off |
| Hover Animations: Interactive hover animations | `enableHoverEffects` | On / off |
| Message Transparency: Semi-transparent message bubbles | `enableMessageTransparency` | On / off |

### Typography (`fontSettings`)

| Setting | Internal name | Type or options |
| --- | --- | --- |
| Font Family | `fontFamily` | `Inter, sans-serif` (Inter), `Segoe UI, sans-serif` (Segoe UI), `Roboto, sans-serif` (Roboto), `Arial, sans-serif` (Arial), `Helvetica, sans-serif` (Helvetica), `Georgia, serif` (Georgia), `Times New Roman, serif` (Times New Roman), `Poppins, sans-serif` (Poppins), `Montserrat, sans-serif` (Montserrat) |
| Base Font Size | `fontSize` | Number |

### Layout (`layoutSettings`)

| Setting | Internal name | Type or options |
| --- | --- | --- |
| Message Padding | `messagePadding` | `0.75em 1em` (Compact), `1em 1.25em` (Normal), `1.25em 1.5em` (Spacious) |
| Message Corner Radius | `messageRadius` | `0` (Square), `8px` (Slightly Rounded), `16px` (Rounded), `24px` (Very Rounded) |
| Space Between Messages | `messageSpacing` | `0.5em` (Tight), `1em` (Medium), `1.5em` (Large) |
| Maximum Message Width | `maxMessageWidth` | `60%` (Narrow (60%)), `70%` (Medium (70%)), `80%` (Wide (80%)), `90%` (Very Wide (90%)) |

### Data Context (`dataDescriptionSettings`)

| Setting | Internal name | Type or options |
| --- | --- | --- |
| Enable Custom Descriptions: Use custom column descriptions for better AI understanding | `enableDescriptions` | On / off |
| Column Descriptions: Format: ColumnName=Description; (e.g. LY_castka=Last year amount; Revenue=Total revenue) | `columnDescriptions` | Text |
| Show Auto-detected Descriptions: Display what AI understands from your column names (debug) | `showAutoDetected` | On / off |

### Auto Charts (`chartSettings`)

| Setting | Internal name | Type or options |
| --- | --- | --- |
| Enable Auto Charts: Automatically generate charts from data responses | `enableAutoCharts` | On / off |
| Show in Menu: Show chart toggle in hamburger menu | `showInMenu` | On / off |

### DAX Assistant (`daxAssistantSettings`)

| Setting | Internal name | Type or options |
| --- | --- | --- |
| Enable DAX Assistant | `enableDaxAssistant` | On / off |
| Show in Menu | `showInMenu` | On / off |
| Visual Indicator | `visualIndicator` | On / off |

### PDF Export (`pdfExportSettings`)

| Setting | Internal name | Type or options |
| --- | --- | --- |
| Enable PDF Export to Email: Allow exporting conversations as PDF and sending via email | `enablePdfExport` | On / off |
| Email Recipients (To): Comma-separated email addresses (e.g., user@example.com, team@example.com) | `emailRecipients` | Text |
| CC Recipients: Comma-separated email addresses for CC | `ccRecipients` | Text |
| From Name: Name that will appear as sender (default: Power BI Chatbot) | `fromName` | Text |

### Advanced (`advancedSettings`)

| Setting | Internal name | Type or options |
| --- | --- | --- |
| Analysis Engine: Tools: the AI calls local data tools for every number and shows how it got the answer. Classic: the earlier planner pipeline. | `analysisEngine` | `tools` (Tools (recommended)), `classic` (Classic) |
| Show "How I got this": Show the fields, filters and row counts behind each answer under the answer. | `showProvenance` | On / off |
| Enable Response Streaming: Stream AI responses token by token (OpenAI & Grok only) | `enableStreaming` | On / off |
| Enable Data Visualization: Allow rich data visualization in responses | `enableDataVisualization` | On / off |
| Enable Code Highlighting: Syntax highlighting for code blocks | `enableCodeHighlight` | On / off |
| Enable Auto Insights: Automatic insight generation from data | `enableAutoInsights` | On / off |
| Debug Mode: Show debug information in console (Developer only) | `debugMode` | On / off |

### Debug (`debugSettings`)

| Setting | Internal name | Type or options |
| --- | --- | --- |
| Enable Debug Mode: Show debug information in console (Developer license only) | `enableDebugMode` | On / off |
