Initializing Tableau Extensions API…

Tableau API Explorer
— pass — fail — partial API v?
Visual Demos — inspect visually
backdrop-filter / glassmorphism
Glassmorphism Card
CSS animation (if spinning → supported)
position: sticky
Sticky Header (scroll me)
Line 1 — scroll down to test sticky header
Line 2
Line 3
Line 4
Line 5
Line 6
Line 7
CSS linear-gradient
Auto-detected CSS Support
Feature Status Detail
Browser / JavaScript API Support
API Status Value / Detail Note
Interactive Tests
Browser Environment
Initialization & Environment
Settings API
Events (registered — interact with dashboard to test)
Waiting for events…
UI Namespace (Dialog API)
Worksheet Methods (select a worksheet to test)
Select a worksheet and click Run Tests.
DataTableReader (Modern Pagination API — v1.10+)
Tests getSummaryDataReaderAsync, getSummaryColumnsInfoAsync, getVisualSpecificationAsync.
Mark Selection API
Tests getSelectedMarksAsync, getHighlightedMarksAsync, selectMarksByValueAsync.
Dashboard Object Control
Loading after init…
Dashboard-Level Filters (v1.9+)
Loading after init…
Environment — All Properties
Loading after init…
Live Worksheet Data Viewer
ℹ️ Worksheets appear here only if they are placed in the dashboard as a tiled or floating zone — not just connected as a data source. The worksheet must have at least one field on a shelf so it has data to return.
Filters on Selected Worksheet
Select a worksheet above to see its filters.
Dummy Data (always available — for offline testing)
Loading dashboard info…
System Font Detection (canvas-based)
Detecting…
Font Rendering Samples
Tableau CSS Font Family
Detected from Tableau environment after init…
Tableau Analytics Extensions (TabPy)

What it is: Server-side API that lets Tableau calculated fields call Python/R scripts via SCRIPT_REAL(), SCRIPT_STR(), etc.

Relevance: Not directly usable from a Dashboard Extension (no client API). Useful only if embedding Tableau views that already use TabPy calculations.

Analytics Extensions API Docs →

Tableau Embedding API v3

What it is: Web Component API (<tableau-viz>) for embedding Tableau views in external web pages. Uses OAuth/token-based auth.

Can we use it inside an Extension? Likely blocked — Tableau's webview would be embedding itself recursively. Use the Extensions API instead.

Embedding API v3 Docs →

Tableau REST API (Platform / Server)

What it is: Server admin API for workbooks, users, data sources, permissions. Requires server credentials.

Relevance for extensions: Could call the REST API via fetch() IF CORS allows it and you have credentials. Useful for: listing workbooks, getting view thumbnails, metadata queries.

Tableau Cloud REST API: Requires Personal Access Token or OAuth. Available from Tableau Public only for read operations.

REST API Docs →

Viz Extensions API

What it is: A different API for creating custom chart types that appear as viz marks inside Tableau worksheets (not a dashboard panel). Uses a different TREX manifest type.

Key difference: Viz extensions live inside worksheets; Dashboard extensions live in dashboard zones. They have separate APIs.

Viz extension APIs: getDataAsync(), updateMarkAsync(), registerSelectedMarksCallback() — completely different from dashboard extensions.

Save Findings

Save to findings.json — POSTs results to the local dev server at http://localhost:9000/save-results. Claude Code reads findings.json directly and updates memory + implementation decisions based on what Tableau actually supports.

Download JSON — Browser download fallback (works without the dev server running). Save the downloaded file to packages/tableau-explorer/findings.json manually.

Previous Findings (from server)