---
schema_version: "1"
id: 94bb85ef896220d6a33add4a09f6e9f8ebe5794673f8f714fa6023ea5deaafc0
title: VizSettings | Tableau Embedding API
collection: tableau
version: current
locale: en-us
portal_url: https://docs.salesforce.com/tableau/current/en-us/api/embedding_api/reference/interfaces/VizSettings.md
canonical_url: https://help.tableau.com/current/api/embedding_api/en-us/reference/interfaces/VizSettings.html
source_site: help.tableau.com
content_type: documentation
content_hash: ff38f504fee9a62bc088ed045f7f588976fc8ba95922cb5aa9b74749863e9d96
description: Documentation for Tableau Embedding API
---
- VizSettings

# Interface VizSettings

The options for configuring a viz in view mode.

interface VizSettings {  
    [debug](#debug)?: boolean;  
    [device](#device)?: [DeviceType](https://help.tableau.com/current/api/embedding_api/en-us/reference/enums/DeviceType.html);  
    [disableUrlActionsPopups](#disableurlactionspopups)?: boolean;  
    [hideEditButton](#hideeditbutton)?: boolean;  
    [hideEditInDesktopButton](#hideeditindesktopbutton)?: boolean;  
    [hideTabs](#hidetabs)?: boolean;  
    [iframeAttributeClass](#iframeattributeclass)?: string;  
    [iframeAttributeLoading](#iframeattributeloading)?: string;  
    [iframeAttributeStyle](#iframeattributestyle)?: string;  
    [iframeAuth](#iframeauth)?: boolean;  
    [instanceIdToClone](#instanceidtoclone)?: string;  
    [onCustomMarkContextMenuEvent](#oncustommarkcontextmenuevent)?: string;  
    [onCustomViewLoaded](#oncustomviewloaded)?: string;  
    [onCustomViewRemoved](#oncustomviewremoved)?: string;  
    [onCustomViewSaved](#oncustomviewsaved)?: string;  
    [onCustomViewSetDefault](#oncustomviewsetdefault)?: string;  
    [onEditButtonClicked](#oneditbuttonclicked)?: string;  
    [onEditInDesktopButtonClicked](#oneditindesktopbuttonclicked)?: string;  
    [onFilterChanged](#onfilterchanged)?: string;  
    [onFirstInteractive](#onfirstinteractive)?: string;  
    [onFirstVizSizeKnown](#onfirstvizsizeknown)?: string;  
    [onMarkSelectionChanged](#onmarkselectionchanged)?: string;  
    [onParameterChanged](#onparameterchanged)?: string;  
    [onStoryPointSwitched](#onstorypointswitched)?: string;  
    [onSummaryDataChanged](#onsummarydatachanged)?: string;  
    [onTabSwitched](#ontabswitched)?: string;  
    [onToolbarStateChanged](#ontoolbarstatechanged)?: string;  
    [onUrlAction](#onurlaction)?: string;  
    [suppressDefaultEditBehavior](#suppressdefaulteditbehavior)?: boolean;  
    [token](#token)?: string;  
    [toolbar](#toolbar)?: [Toolbar](https://help.tableau.com/current/api/embedding_api/en-us/reference/enums/Toolbar.html);  
    [touchOptimize](#touchoptimize)?: boolean;  
}

#### Hierarchy ([View Summary](https://help.tableau.com/current/api/embedding_api/en-us/reference/hierarchy.html#VizSettings))

- VizSettingsShared
    - VizSettings
        - [Viz](https://help.tableau.com/current/api/embedding_api/en-us/reference/interfaces/Viz.html)

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/VizInterfaces.ts:502

##### Index

### Properties

[debug?](#debug) [device?](#device) [disableUrlActionsPopups?](#disableurlactionspopups) [hideEditButton?](#hideeditbutton) [hideEditInDesktopButton?](#hideeditindesktopbutton) [hideTabs?](#hidetabs) [iframeAttributeClass?](#iframeattributeclass) [iframeAttributeLoading?](#iframeattributeloading) [iframeAttributeStyle?](#iframeattributestyle) [iframeAuth?](#iframeauth) [instanceIdToClone?](#instanceidtoclone) [onCustomMarkContextMenuEvent?](#oncustommarkcontextmenuevent) [onCustomViewLoaded?](#oncustomviewloaded) [onCustomViewRemoved?](#oncustomviewremoved) [onCustomViewSaved?](#oncustomviewsaved) [onCustomViewSetDefault?](#oncustomviewsetdefault) [onEditButtonClicked?](#oneditbuttonclicked) [onEditInDesktopButtonClicked?](#oneditindesktopbuttonclicked) [onFilterChanged?](#onfilterchanged) [onFirstInteractive?](#onfirstinteractive) [onFirstVizSizeKnown?](#onfirstvizsizeknown) [onMarkSelectionChanged?](#onmarkselectionchanged) [onParameterChanged?](#onparameterchanged) [onStoryPointSwitched?](#onstorypointswitched) [onSummaryDataChanged?](#onsummarydatachanged) [onTabSwitched?](#ontabswitched) [onToolbarStateChanged?](#ontoolbarstatechanged) [onUrlAction?](#onurlaction) [suppressDefaultEditBehavior?](#suppressdefaulteditbehavior) [token?](#token) [toolbar?](#toolbar) [touchOptimize?](#touchoptimize)

## Properties

### `Optional`debug[](#debug)

debug?: boolean

Indicates whether the non-minified version of JavaScript is loaded. If specified (or set to true), the non-minified version is used for both the local component and the Tableau Server visualization (if enabled). If not specified (or set to false), the minified version of the JavaScript files are loaded.

```
<tableau-viz id="tableauViz" debug /><tableau-authoring-viz id="tableauViz" debug /><tableau-ask-data id="tableauAskData" debug />
```

Inherited from VizSettingsShared.debug

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/WebComponentInterfaces.ts:50

### `Optional`device[](#device)

device?: [DeviceType](https://help.tableau.com/current/api/embedding_api/en-us/reference/enums/DeviceType.html)

Specifies a device layout for a dashboard, if it exists. Values can be default, desktop, tablet, or phone. If not specified, defaults to loading a layout based on the smallest dimension of the hosting iframe element.

```
<tableau-viz id="tableauViz"  device="desktop" />
```

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/VizInterfaces.ts:545

### `Optional`disableUrlActionsPopups[](#disableurlactionspopups)

disableUrlActionsPopups?: boolean

Indicates whether to suppress the execution of URL actions. This option does not prevent the URL action event from being raised. You can use this option to change what happens when a URL action occurs. If set to true and you create an event listener for the URL\_ACTION event, you can use an event listener handler to customize the actions.

```
<tableau-viz id="tableauViz" disable-url-actions />
```

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/VizInterfaces.ts:513

### `Optional`hideEditButton[](#hideeditbutton)

hideEditButton?: boolean

Indicates whether the Edit button is hidden or visible. If not set, defaults to false, meaning that the Edit button is visible.

```
<tableau-viz id="tableauViz" hide-edit-button>
```

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/VizInterfaces.ts:566

### `Optional`hideEditInDesktopButton[](#hideeditindesktopbutton)

hideEditInDesktopButton?: boolean

Indicates whether the Edit in Desktop button is hidden or visible. If not specified, defaults to false, meaning that the Edit in Desktop button is visible.

```
<tableau-viz id="tableauViz" hide-edit-in-desktop-button><tableau-authoring-viz id="tableauViz" hide-edit-in-desktop-button>
```

Inherited from VizSettingsShared.hideEditInDesktopButton

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/VizInterfaces.ts:457

### `Optional`hideTabs[](#hidetabs)

hideTabs?: boolean

Indicates whether tabs are hidden or shown.

```
<tableau-viz id="tableauViz"  hide-tabs />
```

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/VizInterfaces.ts:522

### `Optional`iframeAttributeClass[](#iframeattributeclass)

iframeAttributeClass?: string

The value of the 'class' attribute of the embedded iframe providing access to any custom selectors defined in the `<iframe-style>` child tag.

```
<tableau-viz id="tableauViz" iframe-attr-class="red-border">  <iframe-style>    .red-border {      border: 1px solid red;    }  </iframe-style></tableau-viz>
```

Inherited from VizSettingsShared.iframeAttributeClass

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/WebComponentInterfaces.ts:101

### `Optional`iframeAttributeLoading[](#iframeattributeloading)

iframeAttributeLoading?: string

The value of the 'loading' attribute of the embedded iframe. See: [https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe#loading](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe#loading)

```
<tableau-viz id="tableauViz" iframe-attr-loading="lazy" /><tableau-authoring-viz id="tableauViz" iframe-attr-loading="lazy" /><tableau-pulse id="tableauPulse" iframe-attr-loading="lazy" />
```

Inherited from VizSettingsShared.iframeAttributeLoading

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/WebComponentInterfaces.ts:74

### `Optional`iframeAttributeStyle[](#iframeattributestyle)

iframeAttributeStyle?: string

The value of the 'style' attribute of the embedded iframe.

```
<tableau-viz id="tableauViz" iframe-attr-style="border: 1px solid red" /><tableau-authoring-viz id="tableauViz" iframe-attr-style="border: 1px solid red" /><tableau-pulse id="tableauPulse" iframe-attr-style="border: 1px solid red" />
```

Inherited from VizSettingsShared.iframeAttributeStyle

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/WebComponentInterfaces.ts:85

### `Optional`iframeAuth[](#iframeauth)

iframeAuth?: boolean

Indicates whether to use the old auth mechanism for authentication which happens inside the iframe. If specified, VizLoadErrorEvents triggered due to auth failures will not be thrown.

```
<tableau-viz id="tableauViz" iframe-auth /><tableau-authoring-viz id="tableauViz" iframe-auth /><tableau-ask-data id="tableauAskData" iframe-auth />
```

Inherited from VizSettingsShared.iframeAuth

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/WebComponentInterfaces.ts:62

### `Optional`instanceIdToClone[](#instanceidtoclone)

instanceIdToClone?: string

Specifies the ID of an existing instance to make a copy (clone) of. This is useful if the user wants to continue analysis of an existing visualization without losing the state of the original. If the ID does not refer to an existing visualization, the cloned version is derived from the original visualization.

```
<tableau-viz id="tableauViz"  instance-id-to-clone="id1" />
```

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/VizInterfaces.ts:557

### `Optional`onCustomMarkContextMenuEvent[](#oncustommarkcontextmenuevent)

onCustomMarkContextMenuEvent?: string

An event raised when a custom mark context menu is clicked.

```
<tableau-viz id="tableauViz" onCustomMarkContextMenuEvent="onCustomMarkContextMenuEventHandler" />
```

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/VizInterfaces.ts:590

### `Optional`onCustomViewLoaded[](#oncustomviewloaded)

onCustomViewLoaded?: string

An event raised when a custom view has finished loading. This event is raised after the callback function for [TableauEventType.FirstInteractive](https://help.tableau.com/current/api/embedding_api/en-us/reference/enums/TableauEventType.html#firstinteractive) (if any) has been called.

```
<tableau-viz id="tableauViz" onCustomViewLoaded="onCustomViewLoadedHandler" />
```

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/VizInterfaces.ts:639

### `Optional`onCustomViewRemoved[](#oncustomviewremoved)

onCustomViewRemoved?: string

An event raised when a custom view has been removed.

```
<tableau-viz id="tableauViz" onCustomViewRemoved="onCustomViewRemovedHandler" />
```

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/VizInterfaces.ts:647

### `Optional`onCustomViewSaved[](#oncustomviewsaved)

onCustomViewSaved?: string

An event raised when a custom view has been saved (newly created or updated).

```
<tableau-viz id="tableauViz" onCustomViewSaved="onCustomViewSavedHandler" />
```

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/VizInterfaces.ts:655

### `Optional`onCustomViewSetDefault[](#oncustomviewsetdefault)

onCustomViewSetDefault?: string

An event raised when a custom view has been set as the default view for a workbook.

```
<tableau-viz id="tableauViz" onCustomViewSetDefault="onCustomViewSetDefaultHandler" />
```

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/VizInterfaces.ts:663

### `Optional`onEditButtonClicked[](#oneditbuttonclicked)

onEditButtonClicked?: string

An event raised when the user clicks on the Edit Button.

```
<tableau-viz id="tableauViz" onEditButtonClicked="onEditButtonClickedHandler" />
```

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/VizInterfaces.ts:574

### `Optional`onEditInDesktopButtonClicked[](#oneditindesktopbuttonclicked)

onEditInDesktopButtonClicked?: string

An event raised when the user clicks on the Edit In Desktop Button. You can use this event type with TableauViz objects.

```
<tableau-viz id="tableauViz" onEditInDesktopButtonClicked="onEditInDesktopButtonClickedHandler" /><tableau-authoring-viz id="tableauViz" onEditInDesktopButtonClicked="onEditInDesktopButtonClickedHandler" />
```

Inherited from VizSettingsShared.onEditInDesktopButtonClicked

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/VizInterfaces.ts:477

### `Optional`onFilterChanged[](#onfilterchanged)

onFilterChanged?: string

An event raised when any filter has changed state. You can use this event type with TableauViz objects.

```
<tableau-viz id="tableauViz" onFilterChanged="onFilterChangedHandler" />
```

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/VizInterfaces.ts:582

### `Optional`onFirstInteractive[](#onfirstinteractive)

onFirstInteractive?: string

An event raised when the Viz object first becomes interactive. This is only raised once.

```
<tableau-viz id="tableauViz" "onFirstInteractive"="onFirstInteractiveHandler" /><tableau-authoring-viz id="tableauViz" onFirstInteractive="onFirstInteractiveHandler" />
```

Inherited from VizSettingsShared.onFirstInteractive

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/VizInterfaces.ts:496

### `Optional`onFirstVizSizeKnown[](#onfirstvizsizeknown)

onFirstVizSizeKnown?: string

An event raised when the size of the viz is known. You can use this event to perform tasks such as resizing the elements surrounding the Viz object once the object's size has been established.

```
<tableau-viz id="tableauViz" "onFirstVizSizeKnown"="onFirstVizSizeKnownHandler" /><tableau-authoring-viz id="tableauViz" onFirstVizSizeKnown="onFirstVizSizeKnownHandler" />
```

Inherited from VizSettingsShared.onFirstVizSizeKnown

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/VizInterfaces.ts:487

### `Optional`onMarkSelectionChanged[](#onmarkselectionchanged)

onMarkSelectionChanged?: string

An event raised when the selected marks on a visualization have changed. You can use this event type with TableauViz objects.

```
<tableau-viz id="tableauViz" onMarkSelectionChanged="onMarkSelectionChangedHandler" />
```

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/VizInterfaces.ts:598

### `Optional`onParameterChanged[](#onparameterchanged)

onParameterChanged?: string

An event raised when a parameter has had its value modified. You can use this event type with \[\[Parameter\]\] objects.

```
<tableau-viz id="tableauViz" onParameterChanged="onParameterChangedHandler" />
```

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/VizInterfaces.ts:606

### `Optional`onStoryPointSwitched[](#onstorypointswitched)

onStoryPointSwitched?: string

An event raised after a new story point becomes active.

```
<tableau-viz id="tableauViz" onStoryPointSwitched="onStoryPointSwitchedHandler" />
```

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/VizInterfaces.ts:671

### `Optional`onSummaryDataChanged[](#onsummarydatachanged)

onSummaryDataChanged?: string

An event raised when the summary data on a visualization have changed. You can use this event type with TableauViz objects.

```
<tableau-viz id="tableauViz" onSummaryDataChanged="onSummaryDataChangedHandler" />
```

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/VizInterfaces.ts:679

### `Optional`onTabSwitched[](#ontabswitched)

onTabSwitched?: string

An event raised after a tab switch occurs (the active sheet has changed). Guarantees the viz object will be interactive after this.

```
<tableau-viz id="tableauViz" onTabSwitched="onTabSwitchedHandler" />
```

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/VizInterfaces.ts:630

### `Optional`onToolbarStateChanged[](#ontoolbarstatechanged)

onToolbarStateChanged?: string

An event raised when a toolbar button or control becomes available or becomes unavailable.

```
<tableau-viz id="tableauViz" onToolbarStateChanged="onToolbarStateChangedHandler" />
```

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/VizInterfaces.ts:614

### `Optional`onUrlAction[](#onurlaction)

onUrlAction?: string

An event raised when a URL action occurs. See the [UrlActionEvent](https://help.tableau.com/current/api/embedding_api/en-us/reference/interfaces/UrlActionEvent.html) class.

```
<tableau-viz id="tableauViz" onUrlAction="onUrlActionHandler" />
```

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/VizInterfaces.ts:622

### `Optional`suppressDefaultEditBehavior[](#suppressdefaulteditbehavior)

suppressDefaultEditBehavior?: boolean

Indicates whether the default edit behavior is suppressed. If not specified, defaults to false, meaning that the default edit behavior is not suppressed.

```
<tableau-viz id="tableauViz" suppress-default-edit-behavior><tableau-authoring-viz id="tableauViz" suppress-default-edit-behavior>
```

Inherited from VizSettingsShared.suppressDefaultEditBehavior

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/VizInterfaces.ts:468

### `Optional`token[](#token)

token?: string

The token used for authorization

```
<tableau-viz id="tableauViz" token="some-token-containing-clientId" /><tableau-authoring-viz id="tableauViz" token="some-token-containing-clientId" /><tableau-ask-data id="tableauAskData" token="some-token-containing-clientId" />
```

Inherited from VizSettingsShared.token

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/WebComponentInterfaces.ts:37

### `Optional`toolbar[](#toolbar)

toolbar?: [Toolbar](https://help.tableau.com/current/api/embedding_api/en-us/reference/enums/Toolbar.html)

Specifies the position of the toolbar, if it is shown. The values can be Toolbar.Top, Toolbar.Bottom or Toolbar.Hidden. If not specified, defaults to Toolbar.Bottom.

```
<tableau-viz id="tableauViz"  toolbar="hidden" />
```

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/VizInterfaces.ts:533

### `Optional`touchOptimize[](#touchoptimize)

touchOptimize?: boolean

Indicates whether to touch optimize viz controls.

```
<tableau-viz id="tableauViz" touch-optimize /><tableau-authoring-viz id="tableauViz" touch-optimize />
```

Inherited from VizSettingsShared.touchOptimize

- Defined in packages/api-external-contract-js/src/ExternalContract/Embedding/VizInterfaces.ts:446

### Settings

Member Visibility

- Protected
- Inherited
- External

ThemeOSLightDark

### On This Page

Properties

[debug](#debug)[device](#device)[disableUrlActionsPopups](#disableurlactionspopups)[hideEditButton](#hideeditbutton)[hideEditInDesktopButton](#hideeditindesktopbutton)[hideTabs](#hidetabs)[iframeAttributeClass](#iframeattributeclass)[iframeAttributeLoading](#iframeattributeloading)[iframeAttributeStyle](#iframeattributestyle)[iframeAuth](#iframeauth)[instanceIdToClone](#instanceidtoclone)[onCustomMarkContextMenuEvent](#oncustommarkcontextmenuevent)[onCustomViewLoaded](#oncustomviewloaded)[onCustomViewRemoved](#oncustomviewremoved)[onCustomViewSaved](#oncustomviewsaved)[onCustomViewSetDefault](#oncustomviewsetdefault)[onEditButtonClicked](#oneditbuttonclicked)[onEditInDesktopButtonClicked](#oneditindesktopbuttonclicked)[onFilterChanged](#onfilterchanged)[onFirstInteractive](#onfirstinteractive)[onFirstVizSizeKnown](#onfirstvizsizeknown)[onMarkSelectionChanged](#onmarkselectionchanged)[onParameterChanged](#onparameterchanged)[onStoryPointSwitched](#onstorypointswitched)[onSummaryDataChanged](#onsummarydatachanged)[onTabSwitched](#ontabswitched)[onToolbarStateChanged](#ontoolbarstatechanged)[onUrlAction](#onurlaction)[suppressDefaultEditBehavior](#suppressdefaulteditbehavior)[token](#token)[toolbar](#toolbar)[touchOptimize](#touchoptimize)