Sharing Links
Sharing links are not available on the Free plan (see Plans Comparison).
A Sharing Link gives someone access to a dashboard (or a single report) without
requiring them to have a Cluvio account. Sharing links are also the basis for
embedded analytics. Depending on your plan, a sharing link
can be restricted by IP address, protected by a password, set to auto-expire,
configured to require a signed sharingSecret, and more.
A typical sharing link URL looks like this:
https://dashboards.cluvio.com/dashboards/jvre-px0w-p1z2/shared?sharingToken=1c1d9827-bbd6-4d08-af81-2f68baacd81d
Embedded in an iframe, the same link renders as:
Creating a Sharing Link
Open the dashboard's Manage Sharing page from the dashboard actions menu (or from the dashboards overview list). The page opens on the Sharing tab, which lists every sharing link that already exists for the dashboard and offers an Add Sharing Link button.

The create page shows the parent dashboard at the top (thumbnail + name) and the full Settings panel so you can name the link, configure access controls, choose initial filter values, and so on before saving. Saving lands you on the new link's Info tab, ready to copy the URL.
The Sharing Link Page
Selecting a link opens its dedicated page. The page header shows the link's name, the parent dashboard (clickable for a quick-look popover), any drill-down restrictions, and feature badges summarising the link's configuration:

Below the header are five tabs:
| Tab | What it's for |
|---|---|
| Info | Grab the link URL, embed code, and (when required) JWT generation snippets. |
| Preview | View the dashboard as a sharing-link viewer would see it. |
| Access Activity | Chart of who has been accessing the link over time. |
| History | Audit log of changes made to the link. |
| Settings | Configure the link's name, access controls, permissions, filters, drill-down restrictions. |
Click Open Link in the header to open the link in a new tab as anyone with the URL would experience it.
Info — share the link
The Info tab is the place to grab everything you need to share or embed the link.

Sharing Link URL
The full URL is displayed with syntax colouring so the structure stands out at a glance: the host and path in primary tones, parameter keys in blue, values in green, punctuation dimmed. Click Copy above the box to copy the URL to the clipboard.
If the link requires a sharingSecret (see
Require Sharing Secret), the URL display includes a red
<sharing_secret> placeholder where your application's generated JWT must be
substituted before use. The placeholder is preserved when copying so it's
hard to miss when you paste the URL into application code.
Embed Code
Below the URL you'll find an embed snippet ready to paste into your site's HTML, in two flavours:
- iframe Element — just the
<iframe>tag, with attributes on separate lines for readability. - Whole HTML — a complete minimal HTML document wrapping the iframe.
Switch between the two with the tab strip above the snippet. Each comes with its own Copy button.
Sharing Secret (JWT)
When the link requires a sharingSecret, the Info tab also includes a JWT
generation section with ready-to-paste code snippets in seven languages
(Node.js, Python, Ruby, PHP, Java, Go, Rust). Each snippet:
- Has the link's URL pre-filled.
- Loads the signing secret from a
CLUVIO_EMBED_SECRETenvironment variable. - Includes a comment pointing at your organization's Embed Secret.
See Embedded Analytics for a deep dive on context-restricted dashboards, the JWT payload structure, and how to keep secrets short-lived.
Preview
The Preview tab embeds the link's destination in an iframe so you can verify how it'll look to a viewer.

Use the controls above the preview to:
- Switch Color Mode between Auto / Light / Dark to confirm the link looks right in both themes.
- Toggle Expand Filters so the filter bar opens by default.
- Toggle TV Mode to verify the layout when the link will be displayed full-screen.
- Pick a Locale to preview the dashboard in another language. Selecting
one appends the
localeparameter to the preview (and to the Show URL value), so you can copy a language-pinned link. Default Locale (en-us) leaves the parameter off. - Toggle Show URL to overlay the current URL on the preview (useful when verifying URL-driven options).
Access Activity
If your plan includes access tracking, the Access Activity tab shows a chart of how often the link is being viewed.

Use the range selector in the top-right to switch between presets. The available presets depend on your plan's access-tracking retention; long retention plans include All Time. The granularity adapts automatically: 30-minute presets show 1-minute buckets; long ranges show daily buckets.
History
The History tab is the audit log for the link itself — every change made to the link's name, description, access controls, filters, drill-down selection, etc.

Expand any row to see the attribute-level changes (previous → new value).
Settings — configure the link
The Settings tab is where every link option is configured. Edits are kept in the form until you click Save (or Cancel to discard). Leaving the tab with unsaved changes prompts you to confirm.

General
- Name — required. Used in the link page title, the dashboard's sharing-links card, and the audit log. Not shown to anyone visiting the link.
- Description — optional, free-form notes for your team. Not shown to anyone visiting the link.
Appearance
- Color Mode — Auto / Light / Dark. Determines the default theme of the embedded dashboard.
- Show Toolbar — show the dashboard's toolbar (filter bar, refresh button, etc.) to link viewers. Turn off for a chrome-less embed.
Access Control
Each of the three access controls is gated by a toggle that hides its inputs when off:

-
Restrict Access by IP Addresses — when on, only requests coming from the listed IPs (or CIDR ranges) can access the link. Use the inline add my IP link to insert your current public IP.
-
Protect access with a Password — when on, viewers must enter a password before the link loads. The input shows masked dots (
●●●●●●) when an existing password is set; use Show to reveal it, Change to set a new one, Hide / Cancel to back out. Changing the password invalidates any existing viewer session. -
Auto-expire the Sharing Link — when on, the link stops working after the configured date / time. Choose a preset (1 Hour / 1 Day / 1 Week / 1 Month) or pick a custom date and time. Once saved, the display shows the human-readable countdown alongside the absolute timestamp; click Change to revise.
-
Require Sharing Secret — when on, the link only works if a signed JWT is appended as the
sharingSecretURL parameter. This is the foundation for context-restricted dashboards and short-lived links (see Embedded Analytics). The Info tab will automatically display JWT generation snippets when this option is on.
Permissions
Checkboxes controlling what link viewers are allowed to do:
- Allow User to Download CSV/Excel — allow exporting report data from the dashboard or report actions menu.
- Allow User to Refresh Data — allow re-running the dashboard's queries to load fresh data.
- Allow User to Download Unlimited CSV — remove the row cap on CSV / Excel exports. This option only appears if the dashboard has at least one report with unlimited CSV enabled.
Filters
If the dashboard has any filters, this section lets you decide what filter state the link should start with.

-
Allow User to Change Filters — when on, the link viewer can change filter values via the toolbar or URL parameters. When off, the link is non-interactive — the filter selections you configure below are fixed.
-
Interactive Toolbar (visible only when both Allow User to Change Filters and Show Toolbar are on) — show the filter controls in the toolbar so the viewer can adjust them.
-
Initial Filters / Applied Filters — choose between Dashboard Defaults and Custom:
- Dashboard Defaults: the link uses whatever the dashboard's default filter values are at view time. If the dashboard's defaults change, the link reflects the change.
- Custom: pick specific filter values to apply. With Allow User to Change Filters on, viewers see these as the initial values; with it off, these values are locked.
Drill-Down
If the dashboard has reports that drill down into other dashboards, this section appears.

The list shows every dashboard a viewer of this link could potentially reach via drill-down. Check the ones you want to allow; leave unchecked any you want to hide.
For drill-down to work, Allow User to Change Filters must be on (the target dashboards are reached via URL parameters). For drill-downs from non-interactive sharing links, see Drill-Down for embedded dashboards.
Danger Zone
At the bottom of the Settings tab, Delete Sharing Link permanently removes the link. Anyone holding the URL will no longer be able to access the dashboard. The Danger Zone is hidden while you have unsaved changes — save or cancel first.
URL Parameters
The following URL parameters can be appended to any sharing link for ad-hoc customization of how the linked dashboard is rendered. Typically these are used in the context of embedding:
-
tvMode<=true|false|fullscreen>: When set totrue(or with no value), the height of each report dynamically adjusts so the dashboard fits the screen height. When set tofullscreen, the effect is only applied when the page is viewed fullscreen / maximised. When not present or set tofalse, the dashboard is displayed as usual, with report heights honouring the dashboard layout configuration.

TV mode is ideal for dashboards displayed on a wall-mounted TV, making full use of the available screen real estate.
-
backgroundColor=<color>: Overrides the background color of the dashboard. The value is any hex color (without the leading#). (Example Link) -
noBorder=<true|false>: Iftrue, the border around individual report widgets is hidden. Defaults tofalse. (Example Link) -
darkMode=<true|false|auto>: Iftrue, the dashboard renders in dark mode; ifauto, the mode follows the operating system setting. This URL parameter overrides the Color Mode set on the sharing link. (Example Link) -
locale=<code>: Show the dashboard in a specific language. See Languages and Localization for the full list of codes and exactly what gets localized. (Example Link) -
reportId=<id>: Show a single report from the shared dashboard, maximised. You can find a report's ID in the URL bar while editing it. (Example Link) -
reportOnly=<true|false>: WhenreportIdis set,reportOnlydisables the link back to the full dashboard, so you can share or embed just a single report. (Example Link) -
expandFilters[=true]: When present or set totrue, the filter bar is expanded by default so viewers don't have to click to reveal it. No effect on non-interactive links. (Example Link) -
preloadDashboard=<true|false>: WhenreportIdis set,preloadDashboardcontrols whether the other reports on the dashboard are also loaded in the background. Whentrue, the initial load may be slower but subsequent navigation between reports is faster. Defaults tofalse. -
oneColumn=<true|false>: Disables the automatic switch to a single column layout below a configurable width (seeoneColumnMinWidth). (Example Link) -
oneColumnMinWidth=<number>: The pixel width below which the dashboard grid switches to single-column mode (default768). (Example Link) -
gridColumns=<number>: A number between 1 and 12 (inclusive) defining how many columns the grid uses. Defaults to12. (Example Link) -
hideLoadingIndicators=<true|false>: Hides the small per-report loading indicators in the top-right corner of each report. Useful for embedded dashboards with 1- or 2-minute refresh rates, where the indicators would otherwise be present most of the time.
Languages and Localization
Share one dashboard, in everyone's language. Append a locale parameter to
a sharing link and the whole viewer experience renders in that
language — handy for embedding the same dashboard across regional sites, or for
sending a partner a link that opens in theirs.
What gets localized:
- Date and time — format order, month and weekday names, and 12- vs 24-hour clocks.
- Numbers — thousands separators and decimal marks (e.g.
1,234.56vs1.234,56), including the values shown in charts and tables. - Filter and toolbar labels, the time-range picker, and refresh controls.
- Buttons and actions — download and export labels, paging, and the rest of Cluvio's interface text.
- Empty and error states shown to the viewer.
What stays as you wrote it: your own content is never translated — report names and descriptions, and the query data itself, render exactly as authored. The interface is localized around your data, not the data.
When no locale is set, the link falls back to en-us. The
Preview tab has a Locale picker that sets the parameter for you
and reflects it in the Show URL value, so you can grab a language-pinned
link in a couple of clicks.
Supported languages
| Language | Code |
|---|---|
| Chinese (Simplified) | zh-cn |
| Chinese (Traditional) | zh-tw |
| Czech | cs |
| Danish | da |
| Dutch | nl |
| English (United States) | en-us (default) |
| Finnish | fi |
| French | fr |
| German | de |
| Greek | el |
| Hindi | hi |
| Hungarian | hu |
| Italian | it |
| Japanese | ja |
| Korean | ko |
| Norwegian | no |
| Polish | pl |
| Portuguese | pt |
| Slovak | sk |
| Spanish | es |
| Swedish | sv |
| Thai | th |
| Turkish | tr |
| Ukrainian | uk |
| Vietnamese | vi |
Try the same dashboard in five languages:
Sharing Link Security
Sharing Token
Every sharing link contains a sharingToken URL parameter — a random
UUID
generated from a cryptographically secure random source. The token uniquely
identifies the link in Cluvio. While the token can't be guessed, anyone who
obtains a sharing link has access to whatever the link is configured to
expose.
Additional Security
To ensure the confidentiality of your sharing links, only share them with authorised recipients and use secure channels for distribution (secure messaging applications with end-to-end encryption and device authentication). To further harden access to a link:
- Use Restrict Access by IP Addresses to limit access to a corporate network or known good IP ranges.
- Set a strong Password on the link and share it on a separate channel.
- Set an Expiration so the link automatically becomes inaccessible after a chosen date.
- Delete links that are no longer needed (see Danger Zone).
- For links used in embedding, enable
Require Sharing Secret and generate short-lived
sharingSecrets on the server side.