docs - nav link check (#82211)
This commit is contained in:
6
.github/workflows/docs-links.yml
vendored
6
.github/workflows/docs-links.yml
vendored
@@ -32,3 +32,9 @@ jobs:
|
||||
fail: true
|
||||
args: docs --config ./.lychee/config.toml --offline
|
||||
format: markdown
|
||||
|
||||
# lychee can't read the YAML nav, so this script renders it as markdown first. lychee is on PATH
|
||||
# from the step above.
|
||||
- name: Check nav.yml links
|
||||
if: ${{ !cancelled() }}
|
||||
run: docs/util/check-links.sh nav
|
||||
|
||||
@@ -1,5 +1,16 @@
|
||||
accept = ["200..=204", "429"]
|
||||
exclude = ["\\.html(#.*)?$"]
|
||||
exclude = [
|
||||
"\\.html(#.*)?$",
|
||||
# Liquid templates ({{page.version}}) in docs/embedding/sdk are rendered by the docs site, not here.
|
||||
"%7B%7B",
|
||||
# Bot-blocked: 403 for anything that isn't a browser.
|
||||
"^https://(www|dev)\\.mysql\\.com/",
|
||||
"^https://platform\\.deepseek\\.com/",
|
||||
# Login-walled: redirects forever between console and auth.
|
||||
"^https://console\\.mistral\\.ai/",
|
||||
# GitHub renders issue comments client-side, so lychee can't see #issuecomment anchors.
|
||||
"^https://github\\.com/.+/issues/\\d+#issuecomment-",
|
||||
]
|
||||
exclude_path = ["docs/util", "docs/embedding/sdk/api"]
|
||||
no_progress = true
|
||||
include_fragments = "full"
|
||||
|
||||
@@ -20,7 +20,7 @@ For significant feature additions, it is expected that discussion will have take
|
||||
|
||||
## Contributor License Agreement
|
||||
|
||||
We don't like getting sued, so before merging any pull request, we'll need each person contributing code to sign a [Contributor License Agreement](https://docs.google.com/a/metabase.com/forms/d/1oV38o7b9ONFSwuzwmERRMi9SYrhYeOrkbmNaq9pOJ_E/viewform).
|
||||
We don't like getting sued, so before merging any pull request, we'll need each person contributing code to sign a [Contributor License Agreement](https://docs.google.com/a/metabase.com/forms/d/e/1FAIpQLSfc9GWyJ3F9U_4NzHLeTblgtog1FKtG3CjLshE4FAAKSdvNoQ/viewform).
|
||||
|
||||
## What we're trying to build
|
||||
|
||||
@@ -69,7 +69,7 @@ If there are tests missing, code style concerns or specific architectural issues
|
||||
|
||||
## Ways to help
|
||||
|
||||
The starting point would be to get familiar with Metabase the product, and know your way around. If you're using it at work, that's great! If not, [download Metabase](https://www.metabase.com/start/oss/) and play around with it. Read the docs and generally get a feel for the flow of the product.
|
||||
The starting point would be to get familiar with Metabase the product, and know your way around. If you're using it at work, that's great! If not, [download Metabase](https://www.metabase.com/start/oss) and play around with it. Read the docs and generally get a feel for the flow of the product.
|
||||
|
||||
Here are some ways you can help, in order of increasing coordination + interaction with us:
|
||||
|
||||
|
||||
@@ -28,7 +28,7 @@ Run as a JAR, using Docker, or on [Metabase Cloud](https://store.metabase.com/ch
|
||||
|
||||
Once installed, set up your Metabase and connect to your data.
|
||||
|
||||
### [Getting started](https://www.metabase.com/learn/metabase-basics/getting-started/index)
|
||||
### [Getting started](https://www.metabase.com/learn/metabase-basics/getting-started)
|
||||
|
||||
With your data connected, get started asking questions, creating dashboards, and sharing your work.
|
||||
|
||||
@@ -329,8 +329,8 @@ Contribute to the Metabase open source project!
|
||||
|
||||
Data jargon explained.
|
||||
|
||||
### [Metabase Experts](https://www.metabase.com/partners/)
|
||||
### [Metabase Experts](https://www.metabase.com/partners)
|
||||
|
||||
If you’d like more technical resources to set up your data stack with Metabase, connect with a [Metabase Expert](https://www.metabase.com/partners/).
|
||||
If you’d like more technical resources to set up your data stack with Metabase, connect with a [Metabase Expert](https://www.metabase.com/partners).
|
||||
|
||||
<!-- bump 2 -->
|
||||
|
||||
@@ -41,7 +41,7 @@ Supported models:
|
||||
|
||||
Credentials:
|
||||
|
||||
- **API key** (required). [Where do I find this?](https://console.anthropic.com/settings/keys) You can also set it with the environment variable `MB_LLM_ANTHROPIC_API_KEY`.
|
||||
- **API key** (required). [Where do I find this?](https://platform.claude.com/settings/keys) You can also set it with the environment variable `MB_LLM_ANTHROPIC_API_KEY`.
|
||||
- **API base URL** (advanced). Defaults to `https://api.anthropic.com`. You can also set it with the environment variable `MB_LLM_ANTHROPIC_API_BASE_URL`.
|
||||
|
||||
## OpenAI
|
||||
|
||||
@@ -14,7 +14,7 @@ redirect_from:
|
||||
|
||||
By default, Metabase will automatically provision a domain name for your Metabase that ends in metabaseapp.com (e.g., yourcompany.metabaseapp.com).
|
||||
|
||||
[Pro and Enterprise](https://www.metabase.com/pricing/) plans allow you to add a custom domain. Setting a custom domain will update your instance's [Site URL](../configuring-metabase/settings.md#site-url). The Site URL is used for things like creating links in emails, auth redirects, and in some embedding scenarios.
|
||||
[Pro and Enterprise](https://www.metabase.com/pricing) plans allow you to add a custom domain. Setting a custom domain will update your instance's [Site URL](../configuring-metabase/settings.md#site-url). The Site URL is used for things like creating links in emails, auth redirects, and in some embedding scenarios.
|
||||
|
||||
## Add a custom domain to your Metabase
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@ redirect_from:
|
||||
|
||||
# Limitations of Metabase Cloud
|
||||
|
||||
There are some limitations that could impact your migration to Metabase Cloud. These limitations apply to all [Metabase Cloud plans](https://www.metabase.com/pricing/).
|
||||
There are some limitations that could impact your migration to Metabase Cloud. These limitations apply to all [Metabase Cloud plans](https://www.metabase.com/pricing).
|
||||
|
||||
## Metabase Cloud only supports official databases
|
||||
|
||||
|
||||
@@ -67,13 +67,13 @@ Before executing the migration script, you may need to set the environment varia
|
||||
|
||||
The script will upload your application data to your new Metabase Cloud instance. If all goes well, the script will print `Done!`.
|
||||
|
||||
If anything goes sideways, follow any prompts the script outputs. If you're still stuck, [send us an email](https://www.metabase.com/help/) and we'll help you troubleshoot.
|
||||
If anything goes sideways, follow any prompts the script outputs. If you're still stuck, [send us an email](https://www.metabase.com/help) and we'll help you troubleshoot.
|
||||
|
||||
## After migrating to Metabase Cloud
|
||||
|
||||
After a successful upload, some finishing touches and a restart are done automatically in a couple of minutes, and then you can log into your shiny new Metabase Cloud instance. You should see all of your questions and dashboards just as you did in your self-hosted instance.
|
||||
|
||||
- **If you're using Google Sign-in**, you'll need to go to [Google Developers Console](https://console.developers.google.com/) and add your new Metabase Cloud URL to the Authorized JavaScript Origins of the Google Auth Client ID.
|
||||
- **If you're using Google Sign-in**, you'll need to go to [Google Developers Console](https://console.cloud.google.com/apis/dashboard) and add your new Metabase Cloud URL to the Authorized JavaScript Origins of the Google Auth Client ID.
|
||||
- **For Pro and Enterprise customers using SAML SSO**, you'll need to update your settings with your identity provider to change the Redirect URL and the Base URL to your new Metabase Cloud URL, otherwise your identity provider will still redirect people to your old (and shut down) Metabase instance. See [Authenticating with SAML](../../people-and-groups/authenticating-with-saml.md).
|
||||
|
||||
## Tell your team about the new Metabase address
|
||||
@@ -92,4 +92,4 @@ We'll take care of your Metabase and keep it up to date from here on out. Welcom
|
||||
|
||||
## Need help?
|
||||
|
||||
If you have any questions, just [send us an email](https://www.metabase.com/help/).
|
||||
If you have any questions, just [send us an email](https://www.metabase.com/help).
|
||||
|
||||
@@ -76,7 +76,7 @@ If the default version on Metabase Cloud is the same or lower than your current
|
||||
|
||||
## Follow up after the migration
|
||||
|
||||
- **If you're using Google Sign-in**, you'll need to go to [Google Developers Console](https://console.developers.google.com/) and add your new Metabase Cloud URL to the Authorized JavaScript Origins of the Google Auth Client ID.
|
||||
- **If you're using Google Sign-in**, you'll need to go to [Google Developers Console](https://console.cloud.google.com/apis/dashboard) and add your new Metabase Cloud URL to the Authorized JavaScript Origins of the Google Auth Client ID.
|
||||
- **For Pro and Enterprise customers using SAML SSO**, you'll need to update your settings with your identity provider to change the Redirect URL and the Base URL to your new Metabase Cloud URL, otherwise your identity provider will still redirect people to your old Metabase instance. See [Authenticating with SAML](../../people-and-groups/authenticating-with-saml.md) for details on how to set these URLs.
|
||||
|
||||
### Tell your team about the new Metabase address
|
||||
@@ -93,4 +93,4 @@ If you were self-hosting via a third-party, be sure to clean up and cancel any s
|
||||
|
||||
## Need help?
|
||||
|
||||
If you run into any trouble, just [send us an email](https://www.metabase.com/help/).
|
||||
If you run into any trouble, just [send us an email](https://www.metabase.com/help-premium).
|
||||
|
||||
@@ -20,7 +20,7 @@ You should follow along with the [migration guide](./guide.md). Once you downloa
|
||||
|
||||
## Install Heroku CLI for your OS
|
||||
|
||||
To get shell access, follow the instructions for your operating system to [install the Heroku CLI](https://devcenter.heroku.com/articles/heroku-cli#download-and-install).
|
||||
To get shell access, follow the instructions for your operating system to [install the Heroku CLI](https://devcenter.heroku.com/articles/heroku-cli#install-the-heroku-cli).
|
||||
|
||||
### Get shell access to your Heroku server
|
||||
|
||||
|
||||
@@ -30,7 +30,7 @@ Under the hood, Metabase Cloud Storage uses [ClickHouse](https://www.metabase.co
|
||||
|
||||
### Writing SQL queries on data stored in Metabase Cloud Storage
|
||||
|
||||
For the SQL dialect supported by ClickHouse, check out [ClickHouse's SQL reference](https://clickhouse.com/docs/en/sql-reference).
|
||||
For the SQL dialect supported by ClickHouse, check out [ClickHouse's SQL reference](https://clickhouse.com/docs/reference/syntax).
|
||||
|
||||
## How to get Metabase Cloud Storage
|
||||
|
||||
@@ -54,7 +54,7 @@ To add storage to an existing instance, use the following steps.
|
||||
|
||||
## Metabase Cloud Storage pricing
|
||||
|
||||
Pricing depends on how much data you need to store. See the Storage section on our [pricing page](https://www.metabase.com/pricing/).
|
||||
Pricing depends on how much data you need to store. See the Storage section on our [pricing page](https://www.metabase.com/pricing).
|
||||
|
||||
### Increase Metabase Cloud Storage
|
||||
|
||||
|
||||
@@ -130,9 +130,9 @@ Keep in mind that if you hide documentation links, people using your Metabase mi
|
||||
|
||||
### Help link in the settings menu
|
||||
|
||||
The Settings menu (the "grid" menu in the upper right of your Metabase) includes a **Help** option that links to a [Metabase help page](https://www.metabase.com/help/) by default. You can change this menu Help item by selecting one of the following options:
|
||||
The Settings menu (the "grid" menu in the upper right of your Metabase) includes a **Help** option that links to a [Metabase help page](https://www.metabase.com/help) by default. You can change this menu Help item by selecting one of the following options:
|
||||
|
||||
- Link to [Metabase help](https://www.metabase.com/help/) (default)
|
||||
- Link to [Metabase help](https://www.metabase.com/help) (default)
|
||||
- Hide it (the Settings menu won't display the Help option at all).
|
||||
- Go to a custom destination. Enter a URL that the Settings menu's Help option should link to. Valid URLs include http, https, and mailto URLs.
|
||||
|
||||
@@ -188,6 +188,5 @@ Metabase will display this illustration when searches don't return any results.
|
||||
|
||||
## Further reading
|
||||
|
||||
- [Customer-facing analytics](https://www.metabase.com/learn/metabase-basics/embedding).
|
||||
- [Embedding introduction](../embedding/start.md).
|
||||
- [Brand your Metabase](https://www.metabase.com/docs/latest/configuring-metabase/appearance).
|
||||
|
||||
@@ -2188,7 +2188,7 @@ Git synchronization type - :read-write or :read-only.
|
||||
- Default: `null`
|
||||
- [Configuration file name](./config-file.md): `remote-sync-url`
|
||||
|
||||
The location of your git repository, e.g. https://github.com/acme-inco/metabase.git.
|
||||
The location of your git repository, e.g. `https://github.com/acme-inco/metabase.git`.
|
||||
|
||||
### `MB_REPORT_TIMEZONE`
|
||||
|
||||
@@ -2514,7 +2514,7 @@ Value for the session cookie's `SameSite` directive.
|
||||
|
||||
See [Embedding Metabase in a different domain](../embedding/full-app-embedding.md#embedding-metabase-in-a-different-domain).
|
||||
Read more about [Full app embedding](../embedding/full-app-embedding.md).
|
||||
Learn more about [SameSite cookies](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie/SameSite).
|
||||
Learn more about [SameSite cookies](https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Headers/Set-Cookie#samesitesamesite-value).
|
||||
|
||||
### `MB_SESSION_COOKIES`
|
||||
|
||||
@@ -3533,4 +3533,4 @@ Setting `MB_JETTY_SKIP_SNI=true` (the default setting) turns off the Server Name
|
||||
Type: string<br>
|
||||
Default: `null`
|
||||
|
||||
Base-64 encoded public key for this sites SSL certificate. Specify this to enable HTTP Public Key Pinning. Using HPKP is no longer recommended. See http://mzl.la/1EnfqBf for more information.
|
||||
Base-64 encoded public key for this sites SSL certificate. Specify this to enable HTTP Public Key Pinning. Using HPKP is no longer recommended. See https://developer.mozilla.org/en-US/docs/Web/Security/Defenses/Certificate_Transparency for more information.
|
||||
|
||||
@@ -145,5 +145,4 @@ When configuring [guest embeds](../embedding/guest-embedding.md), you can select
|
||||
## Further reading
|
||||
|
||||
- [Customizing Metabase's appearance](./appearance.md)
|
||||
- [Customer-facing analytics](https://www.metabase.com/learn/metabase-basics/embedding)
|
||||
- [Embedding documentation](../embedding/start.md)
|
||||
|
||||
@@ -6,7 +6,7 @@ redirect_from:
|
||||
|
||||
# Setting up Metabase
|
||||
|
||||
This guide will help you set up Metabase once you’ve gotten it installed. If you haven’t installed Metabase yet, you can [get Metabase here](https://metabase.com/pricing/).
|
||||
This guide will help you set up Metabase once you’ve gotten it installed. If you haven’t installed Metabase yet, you can [get Metabase here](https://www.metabase.com/pricing).
|
||||
|
||||
Start Metabase up for the first time and you’ll see this screen:
|
||||

|
||||
@@ -60,7 +60,7 @@ For more on connecting to databases, see [Adding and managing databases](../data
|
||||
|
||||
If you're self-hosting Metabase on the [Pro](https://www.metabase.com/product/pro) or [Enterprise](https://www.metabase.com/product/enterprise) plan, Metabase will prompt you for your license. This step is just a convenience. You don't need to enter your license here; you can [activate your license](../installation-and-operation/activating-the-enterprise-edition.md) at any time. Just know that all of your Pro and Enterprise features won't work until you've activated your license.
|
||||
|
||||
If you're running Pro on [Metabase Cloud](https://www.metabase.com/cloud/), we'll handle this step for you. Your Pro features should already be available.
|
||||
If you're running Pro on [Metabase Cloud](https://www.metabase.com/cloud), we'll handle this step for you. Your Pro features should already be available.
|
||||
|
||||
## Usage data preferences
|
||||
|
||||
@@ -90,8 +90,8 @@ The providers you set up in AI settings power Metabase's built-in AI functionali
|
||||
|
||||
## Getting started with Metabase
|
||||
|
||||
For a tutorial on getting up and running with questions and dashboards, head over to [Learn Metabase](https://www.metabase.com/learn/metabase-basics/getting-started/).
|
||||
For a tutorial on getting up and running with questions and dashboards, head over to [Learn Metabase](https://www.metabase.com/learn/metabase-basics/getting-started).
|
||||
|
||||
---
|
||||
|
||||
If you’d like more technical resources to set up your data stack with Metabase, connect with a [Metabase Expert](https://www.metabase.com/partners/){:target="\_blank"}.
|
||||
If you’d like more technical resources to set up your data stack with Metabase, connect with a [Metabase Expert](https://www.metabase.com/partners){:target="\_blank"}.
|
||||
|
||||
@@ -80,7 +80,7 @@ Once you select the column that contains the value you want to pass, the sidebar
|
||||
|
||||
In the example above, when a user clicks on the **Orders by product category** card, Metabase will pass the clicked `Product -> Category` to the destination dashboard ("Interactive Dashboard"), which will then filter its cards by that `Category`.
|
||||
|
||||
You can also send the currently selected value of a dashboard filter on the current dashboard to the destination. In [some plans](https://www.metabase.com/pricing/), you can pass a user attribute provided by SSO to the destination, too. Those user attributes will show up as options when you click on one of the destination's filters (provided the values are compatible with that filter).
|
||||
You can also send the currently selected value of a dashboard filter on the current dashboard to the destination. In [some plans](https://www.metabase.com/pricing), you can pass a user attribute provided by SSO to the destination, too. Those user attributes will show up as options when you click on one of the destination's filters (provided the values are compatible with that filter).
|
||||
|
||||
When displaying questions as tables, you can select different click behaviors for different columns in the table. You can also modify the contents of the cells in a given column, replacing the value with custom text. For example, if you had a column that listed categories, you could change the text in the cell to read: "Click for details about {% raw %}{{Category}}{% endraw %}", where `Category` is the name of your column.
|
||||
|
||||
|
||||
@@ -132,7 +132,7 @@ To provide values for the variable, you'll need to add a filter to the dashboard
|
||||
|
||||
## Iframe cards
|
||||
|
||||
[Iframes](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/iframe) allow you to nest one HTML page in another HTML page. With iframe cards in Metabase, you can embed a webpage in your dashboard. You can embed:
|
||||
[Iframes](https://developer.mozilla.org/en-US/docs/Web/HTML/Reference/Elements/iframe) allow you to nest one HTML page in another HTML page. With iframe cards in Metabase, you can embed a webpage in your dashboard. You can embed:
|
||||
|
||||
- Spreadsheets or surveys for data entry or workflows
|
||||
- Videos or slides for contextualizing and storytelling on dashboards
|
||||
@@ -325,7 +325,7 @@ If your Metabase administrator has enabled [public sharing](../embedding/public-
|
||||
|
||||

|
||||
|
||||
Public links can be viewed by anyone, even if they don't have access to Metabase. You can also use the public embedding code to embed your question or dashboard in a simple web page or blog post. Check out examples of simple apps with embedded dashboards in our [embedding-reference-apps repository](https://github.com/metabase/embedding-reference-apps). To learn more about [embedding](../embedding/introduction.md), check out our article on [How to use Metabase to deliver analytics to your customers](https://www.metabase.com/learn/metabase-basics/embedding/overview), as well as an article on how to combine branding, Single Sign-On, full app embedding, and row and column security to deliver [multi-tenant, self-service analytics](https://www.metabase.com/learn/metabase-basics/embedding/multi-tenant-self-service-analytics).
|
||||
Public links can be viewed by anyone, even if they don't have access to Metabase. You can also use the public embedding code to embed your question or dashboard in a simple web page or blog post. Check out examples of simple apps with embedded dashboards in our [embedding-reference-apps repository](https://github.com/metabase/static-embedding-reference-apps). To learn more about [embedding](../embedding/introduction.md), check out how to combine branding, Single Sign-On, full app embedding, and row and column security to deliver [multi-tenant, self-service analytics](../embedding/tenants.md).
|
||||
|
||||
Admins can also [create an account](../people-and-groups/managing.md#creating-an-account) for someone and point them to a specific dashboard or question. On a dashboard or question, click the **Sharing** icon and select **Invite someone to view this**.
|
||||
|
||||
|
||||
@@ -221,4 +221,4 @@ See [Working with JSON](./json-unfolding.md).
|
||||
## Further reading
|
||||
|
||||
- [Keeping your analytics organized](https://www.metabase.com/learn/metabase-basics/administration/administration-and-operation/same-page)
|
||||
- [Data modeling tutorials](https://www.metabase.com/learn/metabase-basics/getting-started/models)
|
||||
- [Data modeling tutorials](https://www.metabase.com/learn/metabase-basics/querying-and-dashboards/models)
|
||||
|
||||
@@ -36,7 +36,7 @@ To turn on model persistence for your Metabase, go to **Admin** > **Performance*
|
||||
|
||||
You can set models to refresh based on one of the default frequencies (every 1 hour, 2 hours, etc.), or select the **Custom** option to use [cron syntax](https://www.quartz-scheduler.org/documentation/quartz-2.3.0/tutorials/crontrigger.html) to specify your own update frequency.
|
||||
|
||||
The cron scheduler uses the [default instance report Timezone](../configuring-metabase/localization.md#set-default-instance-report-timezone) if selected. Otherwise the scheduler will use the System Timezone (which defaults to GMT in [Metabase Cloud](https://www.metabase.com/cloud/)).
|
||||
The cron scheduler uses the [default instance report Timezone](../configuring-metabase/localization.md#set-default-instance-report-timezone) if selected. Otherwise the scheduler will use the System Timezone (which defaults to GMT in [Metabase Cloud](https://www.metabase.com/cloud)).
|
||||
|
||||
We recommend scheduling your models to refresh on a frequency that makes sense with how often your source tables update with new data.
|
||||
|
||||
|
||||
@@ -67,7 +67,7 @@ To view a model's details, visit the model and click on the **info** button in t
|
||||
- **History**: Lists changes to the model, and by whom.
|
||||
- **Relationships**: Lists which questions use the model, and which tables the model is linked to.
|
||||
- **Actions**: Lists actions created based on the model.
|
||||
- **Insights**: Info about the [model's usage](../usage-and-performance-tools/usage-analytics.md). Only visible to admins on a [Pro or Enterprise plan](https://www.metabase.com/pricing/).
|
||||
- **Insights**: Info about the [model's usage](../usage-and-performance-tools/usage-analytics.md). Only visible to admins on a [Pro or Enterprise plan](https://www.metabase.com/pricing).
|
||||
|
||||
## Add metadata to columns in a model
|
||||
|
||||
@@ -235,5 +235,5 @@ See [Convert existing models to transforms](../data-studio/transforms/query-tran
|
||||
[cte]: https://www.metabase.com/learn/sql/working-with-sql/sql-cte
|
||||
[measures-dimensions]: https://www.metabase.com/learn/grow-your-data-skills/data-fundamentals/dimensions-and-measures
|
||||
[question]: ../questions/start.md
|
||||
[learn-models]: https://www.metabase.com/learn/metabase-basics/getting-started/models
|
||||
[learn-models]: https://www.metabase.com/learn/metabase-basics/querying-and-dashboards/models
|
||||
[troubleshooting-models]: ../troubleshooting-guide/models.md
|
||||
|
||||
@@ -181,6 +181,6 @@ With records that include integer entity keys, you can also configure text field
|
||||
|
||||
## Further Reading
|
||||
|
||||
- [Exploring data with Metabase's data browser](https://www.metabase.com/learn/metabase-basics/querying-and-dashboards/data-browser).
|
||||
- [Data reference](../exploration-and-organization/data-model-reference.md).
|
||||
- [The Table Metadata page: editing metadata](./metadata-editing.md).
|
||||
- [Field Filters: create smart filter widgets for SQL questions](https://www.metabase.com/learn/metabase-basics/querying-and-dashboards/sql-in-metabase/field-filters).
|
||||
|
||||
@@ -27,7 +27,7 @@ Data Studio provides tools to shape and track your data so everyone can trust th
|
||||
- **[Transforms](./transforms/transforms-overview.md)**: Wrangle your data in Metabase, write the query results back to your database, and reuse them in Metabase as sources for new queries.
|
||||
- **[Glossary](../exploration-and-organization/data-model-reference.md#glossary)**: Define terms relevant to your business, both for people and agents trying to understand your data.
|
||||
|
||||
\* Available on [Pro and Enterprise plans](https://www.metabase.com/pricing/).
|
||||
\* Available on [Pro and Enterprise plans](https://www.metabase.com/pricing).
|
||||
|
||||
## Permissions for Data Studio
|
||||
|
||||
|
||||
@@ -117,7 +117,7 @@ Below are example configurations for different scenarios.
|
||||
|
||||
### Self-hosted storage with MinIO
|
||||
|
||||
[MinIO](https://min.io/) is an S3-compatible server you can run yourself, which makes it a common pick for self-hosted Metabase. This Compose file runs Metabase, the Python runner, MinIO, and a short-lived container that creates the bucket Metabase will use — neither MinIO nor Metabase creates that bucket for you.
|
||||
[MinIO](https://www.min.io/) is an S3-compatible server you can run yourself, which makes it a common pick for self-hosted Metabase. This Compose file runs Metabase, the Python runner, MinIO, and a short-lived container that creates the bucket Metabase will use — neither MinIO nor Metabase creates that bucket for you.
|
||||
|
||||
```yml
|
||||
name: metabase-python-runner
|
||||
|
||||
@@ -25,7 +25,7 @@ To add a database connection:
|
||||
|
||||
## Connecting to supported databases
|
||||
|
||||
The databases listed below have official drivers maintained by the Metabase team. Customers on [Pro and Enterprise](https://www.metabase.com/pricing/) will get official support. For each database, Metabase supports the oldest supported version through the latest stable version.
|
||||
The databases listed below have official drivers maintained by the Metabase team. Customers on [Pro and Enterprise](https://www.metabase.com/pricing) will get official support. For each database, Metabase supports the oldest supported version through the latest stable version.
|
||||
|
||||
- [Athena](./connections/athena.md)
|
||||
- [BigQuery](./connections/bigquery.md) (Google Cloud Platform)
|
||||
|
||||
@@ -103,7 +103,7 @@ Most issues that we see when people attempt to connect to AWS Athena involve per
|
||||
|
||||
This policy provides read-only permissions for data in S3. You'll need to specify any S3 buckets that you want Metabase to be able to query from _as well as_ the S3 bucket provided as part of the configuration where results are written to.
|
||||
|
||||
There may be additional permissions required for other Athena functionality, like federated queries. For details, check out the [Athena docs](https://docs.aws.amazon.com/athena/latest/ug/security-iam-athena).
|
||||
There may be additional permissions required for other Athena functionality, like federated queries. For details, check out the [Athena docs](https://docs.aws.amazon.com/athena/latest/ug/security-iam-athena.html).
|
||||
|
||||
```json
|
||||
{
|
||||
|
||||
@@ -10,13 +10,13 @@ To add a database connection, click the **grid** icon in the top right, and navi
|
||||
|
||||
## Prerequisites
|
||||
|
||||
You'll need to have a [Google Cloud Platform](https://cloud.google.com/) account with a [project](https://cloud.google.com/storage/docs/projects) you would like to use in Metabase. Consult the Google Cloud Platform documentation for how to [create and manage a project](https://cloud.google.com/resource-manager/docs/creating-managing-projects). This project should have a BigQuery dataset for Metabase to connect to.
|
||||
You'll need to have a [Google Cloud Platform](https://cloud.google.com/) account with a [project](https://docs.cloud.google.com/storage/docs/projects) you would like to use in Metabase. Consult the Google Cloud Platform documentation for how to [create and manage a project](https://docs.cloud.google.com/resource-manager/docs/creating-managing-projects). This project should have a BigQuery dataset for Metabase to connect to.
|
||||
|
||||
## Google Cloud Platform: creating a service account and JSON file
|
||||
|
||||
You'll first need a [service account](https://cloud.google.com/iam/docs/service-account-overview) JSON file that Metabase can use to access your BigQuery dataset. Service accounts are intended for non-human users (such as applications like Metabase) to authenticate (who am I?) and authorize (what can I do?) their API calls.
|
||||
You'll first need a [service account](https://docs.cloud.google.com/iam/docs/service-account-overview) JSON file that Metabase can use to access your BigQuery dataset. Service accounts are intended for non-human users (such as applications like Metabase) to authenticate (who am I?) and authorize (what can I do?) their API calls.
|
||||
|
||||
To create the service account JSON file, follow Google's documentation on [setting up a service account](https://cloud.google.com/iam/docs/creating-managing-service-accounts) for your BigQuery dataset. Here's the basic flow:
|
||||
To create the service account JSON file, follow Google's documentation on [setting up a service account](https://docs.cloud.google.com/iam/docs/service-accounts-create) for your BigQuery dataset. Here's the basic flow:
|
||||
|
||||
1. **Create service account**. From your Google Cloud Platform project console, open the main sidebar menu on the left, go to the **IAM & Admin** section, and select **Service account**. The console will list existing service accounts, if any. At the top of the screen, click on **+ CREATE SERVICE ACCOUNT**.
|
||||
|
||||
@@ -28,7 +28,7 @@ To create the service account JSON file, follow Google's documentation on [setti
|
||||
- BigQuery Metadata Viewer
|
||||
- BigQuery Job User (distinct from BigQuery User)
|
||||
|
||||
For more information on **roles** in BigQuery, see [Google Cloud Platform's documentation](https://cloud.google.com/bigquery/docs/access-control).
|
||||
For more information on **roles** in BigQuery, see [Google Cloud Platform's documentation](https://docs.cloud.google.com/bigquery/docs/access-control).
|
||||
|
||||
4. **Create key**. Once you have assigned roles to the service account, click on the **Create Key** button, and select **JSON** for the **key type**. The JSON file will download to your computer.
|
||||
|
||||
@@ -54,7 +54,7 @@ The display name for the database in the Metabase interface.
|
||||
|
||||
### Project ID
|
||||
|
||||
Each BigQuery dataset will have a **Project ID**. You can find this ID via the [Google Cloud Console](https://console.cloud.google.com/). If you're not sure where to find the **Project ID**, see Google's documentation on [getting information on datasets](https://cloud.google.com/bigquery/docs/dataset-metadata#getting_dataset_information).
|
||||
Each BigQuery dataset will have a **Project ID**. You can find this ID via the [Google Cloud Console](https://console.cloud.google.com/). If you're not sure where to find the **Project ID**, see Google's documentation on [getting information on datasets](https://cloud.google.com/bigquery/docs/dataset-metadata#get_information_about_datasets).
|
||||
|
||||
> When entering the **Project ID**, omit the Project ID prefix. For example, if your ID is `project_name:project_id`, only enter `project_id`.
|
||||
|
||||
@@ -137,9 +137,9 @@ Choose **Viewer** from the dropdown, uncheck the **Notify people** option, and c
|
||||
|
||||
### Create an external table in BigQuery that points to your Google Drive source
|
||||
|
||||
If you don't already have a BigQuery dataset, [create one](https://cloud.google.com/bigquery/docs/datasets).
|
||||
If you don't already have a BigQuery dataset, [create one](https://docs.cloud.google.com/bigquery/docs/datasets).
|
||||
|
||||
Next, using the Google Cloud Console, [create an external table](https://cloud.google.com/bigquery/external-data-drive?hl=en#creating_and_querying_a_permanent_external_table) within your BigQuery dataset that points to your Google Sheet.
|
||||
Next, using the Google Cloud Console, [create an external table](https://cloud.google.com/bigquery/docs/external-data-drive#create_external_tables) within your BigQuery dataset that points to your Google Sheet.
|
||||
|
||||
Be sure to specify the correct **Drive URI** and file format.
|
||||
|
||||
@@ -149,7 +149,7 @@ Once you've completed these steps, you'll be able to ask questions and create da
|
||||
|
||||
## Using Legacy SQL
|
||||
|
||||
As of version 0.30.0, Metabase tells BigQuery to interpret SQL queries as [Standard SQL (GoogleSQL)](https://cloud.google.com/bigquery/docs/introduction-sql). If you prefer using [Legacy SQL](https://cloud.google.com/bigquery/docs/reference/legacy-sql) instead, you can tell Metabase to do so by including a `#legacySQL` directive at the beginning of your query, for example:
|
||||
As of version 0.30.0, Metabase tells BigQuery to interpret SQL queries as [Standard SQL (GoogleSQL)](https://docs.cloud.google.com/bigquery/docs/introduction-sql). If you prefer using [Legacy SQL](https://docs.cloud.google.com/bigquery/docs/reference/legacy-sql) instead, you can tell Metabase to do so by including a `#legacySQL` directive at the beginning of your query, for example:
|
||||
|
||||
```sql
|
||||
#legacySQL
|
||||
|
||||
@@ -12,7 +12,7 @@ MariaDB shares a driver with MySQL, so select the **MySQL** driver.
|
||||
|
||||
## Supported versions
|
||||
|
||||
Metabase supports the oldest supported version of Maria DB through the latest stable version. See [MariaDB Server releases](https://mariadb.com/kb/en/mariadb-server-release-dates/).
|
||||
Metabase supports the oldest supported version of Maria DB through the latest stable version. See [MariaDB Server releases](https://mariadb.com/docs/release-notes/community-server).
|
||||
|
||||
## Edit connection details
|
||||
|
||||
|
||||
@@ -39,7 +39,7 @@ You'll also have the option to **Use a secure connection (SSL)**. Enable SSL and
|
||||
|
||||
### Using a connection string
|
||||
|
||||
If you'd prefer to connect to MongoDB using a [connection string](https://docs.mongodb.com/manual/reference/connection-string/), click on **Paste a connection string**. The Metabase user interface will update with a field to paste your connection string.
|
||||
If you'd prefer to connect to MongoDB using a [connection string](https://www.mongodb.com/docs/manual/reference/connection-string/), click on **Paste a connection string**. The Metabase user interface will update with a field to paste your connection string.
|
||||
|
||||
Metabase currently does NOT support the following connection string parameters:
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@ To add a database connection, click the **grid** icon in the top right, and navi
|
||||
|
||||
## Supported versions
|
||||
|
||||
Metabase supports the oldest supported version through the latest stable version. See [MySQL end-of-life dates](https://endoflife.software/applications/databases/mysql).
|
||||
Metabase supports the oldest supported version through the latest stable version. See [MySQL end-of-life dates](https://endoflife.date/mysql).
|
||||
|
||||
## Edit connection details
|
||||
|
||||
|
||||
@@ -68,7 +68,7 @@ Only for self-hosted Pro and Enterprise plans.
|
||||
|
||||
#### Azure Managed Identity
|
||||
|
||||
To use Azure Managed Identity, you'll need to input your [client ID](https://learn.microsoft.com/en-us/previous-versions/azure/postgresql/single-server/how-to-connect-with-managed-identity#retrieving-the-access-token-from-azure-instance-metadata-service).
|
||||
To use Azure Managed Identity, you'll need to input your [client ID](https://learn.microsoft.com/en-us/azure/postgresql/flexible-server/how-to-connect-with-managed-identity#retrieve-the-access-token-from-the-azure-instance-metadata-service).
|
||||
|
||||
#### Oauth
|
||||
|
||||
|
||||
@@ -4,7 +4,7 @@ title: SQLite
|
||||
|
||||
# SQLite
|
||||
|
||||
> SQLite isn't available for [Metabase Cloud](https://www.metabase.com/cloud/).
|
||||
> SQLite isn't available for [Metabase Cloud](https://www.metabase.com/cloud).
|
||||
|
||||
To add a database connection, click the **grid** icon in the top right, and navigate to **Admin** > **Databases** > **Add a database**.
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@ is straightforward and only takes a few minutes.
|
||||
|
||||
## Downloading the Vertica JDBC Driver JAR
|
||||
|
||||
You can download the JDBC driver from [Vertica's JDBC driver downloads page](https://my.vertica.com/download/vertica/client-drivers/).
|
||||
You can download the JDBC driver from [Vertica's JDBC driver downloads page](https://vertica.com/download/vertica/client-drivers/).
|
||||
Head to this page, log in to your account, accept the license agreement, and download `vertica-jdbc-8.0.0-0.jar` (for Vertica DB version 8.0)
|
||||
or whatever driver version most closely matches the version of Vertica you're running.
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@ description: The Danger Zone section of database connections is where you can di
|
||||
|
||||
The Danger zone section of the database connection is the destructive section. Here you can discard field values for that database, or remove the database entirely.
|
||||
|
||||
But since of course you're making [backups of your Metabase application database](../installation-and-operation/backing-up-metabase-application-data.md), it's not _that_ destructive. But these changes are permanent in Metabase. The only way to get your stuff back is if you restore your Metabase application database from a backup. If you're on [Metabase Cloud](https://www.metabase.com/cloud/), backups are handled for you.
|
||||
But since of course you're making [backups of your Metabase application database](../installation-and-operation/backing-up-metabase-application-data.md), it's not _that_ destructive. But these changes are permanent in Metabase. The only way to get your stuff back is if you restore your Metabase application database from a backup. If you're on [Metabase Cloud](https://www.metabase.com/cloud), backups are handled for you.
|
||||
|
||||
To access the Danger Zone section for a database connection:
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@ Metabase stores connection information for the various databases you add in the
|
||||
|
||||
1. Generate a secret key that is at least 16 characters (longer is even better!). We recommend using a secure random key generator, such as `openssl`.
|
||||
> You cannot decrypt connection details without this key. If you lose (or change) the key, you'll have to reset all of the connection details that have been encrypted with that key in the Admin Panel.
|
||||
2. Set your secret key as the environment variable `MB_ENCRYPTION_SECRET_KEY`. On self-hosted [Pro and Enterprise plans](https://www.metabase.com/pricing/), you can also set this using the [config file](../configuring-metabase/config-file.md).
|
||||
2. Set your secret key as the environment variable `MB_ENCRYPTION_SECRET_KEY`. On self-hosted [Pro and Enterprise plans](https://www.metabase.com/pricing), you can also set this using the [config file](../configuring-metabase/config-file.md).
|
||||
|
||||
### Example commands for creating and adding a key
|
||||
|
||||
|
||||
@@ -17,7 +17,7 @@ In general, there are two basic use cases for an SSH tunnel:
|
||||
|
||||
Sometimes when a data warehouse is inside an enterprise environment, direct connections are blocked by security devices such as firewalls and intrusion prevention systems. Bastion hosts offer the option to first connect to a computer on the edge of the protected network, then, from that bastion host computer, establish a second connection to the data warehouse within the internal network, essentially patching these two connections together. Using the SSH tunneling feature, Metabase can automate this process.
|
||||
|
||||
> [Metabase Cloud](https://www.metabase.com/cloud/) does not currently support VPN connections to databases. To connect to databases in private networks, you can instead use SSH tunneling.
|
||||
> [Metabase Cloud](https://www.metabase.com/cloud) does not currently support VPN connections to databases. To connect to databases in private networks, you can instead use SSH tunneling.
|
||||
|
||||
## How to use SSH tunneling
|
||||
|
||||
|
||||
@@ -18,7 +18,7 @@ Some Metabase functionality requires write access to the database. Depending on
|
||||
|
||||
Bundling your privileges into roles based on use cases makes it easier to manage privileges in the future (especially in [multi-tenant situations](#multi-tenant-permissions)). For example, you could:
|
||||
|
||||
- Use the same `analytics` role for other BI tools in your [data stack](https://www.metabase.com/learn/grow-your-data-skills/data-fundamentals/data-landscape) that need read-only access to the analytics tables in your database.
|
||||
- Use the same `analytics` role for other BI tools in your data stack that need read-only access to the analytics tables in your database.
|
||||
- Revoke the write access for `metabase_model_persistence` without affecting the write access for `metabase_actions`.
|
||||
|
||||
For operations that require write access, we recommend using separate [writable connections](./writable-connection.md).
|
||||
|
||||
@@ -65,7 +65,7 @@ For a summary of research on code reviews, check out [How code review works (and
|
||||
|
||||
- Guide reviewers by commenting on the important sections of the code.
|
||||
- If you need someone's expertise/opinion, tag that person.
|
||||
- Enhance PR descriptions by using [Notes and Warnings](https://github.com/github-community/community/discussions/16925) - these can be effective tools if you want a certain piece of information to stand out.
|
||||
- Enhance PR descriptions by using [Notes and Warnings](https://github.com/orgs/community/discussions/16925) - these can be effective tools if you want a certain piece of information to stand out.
|
||||
|
||||
### What PR reviewers can do to give a better review
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@ redirect_from:
|
||||
|
||||
# Community drivers
|
||||
|
||||
> Community drivers are not supported on [Metabase Cloud](https://www.metabase.com/cloud/).
|
||||
> Community drivers are not supported on [Metabase Cloud](https://www.metabase.com/cloud).
|
||||
|
||||
In addition to our [Officially supported drivers](../databases/connecting.md#connecting-to-supported-databases), many people build and maintain drivers for database integrations.
|
||||
|
||||
@@ -22,7 +22,7 @@ You can change the location of the plugins directory by setting the environment
|
||||
|
||||
## Community drivers
|
||||
|
||||
> You install these drivers at your own risk. The plugins run as part of your Metabase and will have access to anything your Metabase does. And since we can’t vet for them, we don’t make them available on [Metabase Cloud](https://www.metabase.com/cloud/).
|
||||
> You install these drivers at your own risk. The plugins run as part of your Metabase and will have access to anything your Metabase does. And since we can’t vet for them, we don’t make them available on [Metabase Cloud](https://www.metabase.com/cloud).
|
||||
|
||||
Anyone can build a community driver. These are the currently known third-party database drivers for Metabase.
|
||||
|
||||
@@ -33,11 +33,10 @@ Anyone can build a community driver. These are the currently known third-party d
|
||||
| [DB2 for LUW](https://github.com/alisonrafael/metabase-db2-driver) |  |  |
|
||||
| [IBM i](https://github.com/damienchambe/metabase-ibmi-driver) |  |  |
|
||||
| [Dremio](https://github.com/Baoqi/metabase-dremio-driver) |  |  |
|
||||
| [DuckDB](https://github.com/MotherDuck-Open-Source/metabase_duckdb_driver) |  |  |
|
||||
| [DuckDB](https://github.com/motherduckdb/metabase_duckdb_driver) |  |  |
|
||||
| [Firebolt](https://github.com/firebolt-db/metabase-firebolt-driver) |  |  |
|
||||
| [Firebird](https://github.com/evosec/metabase-firebird-driver) |  |  |
|
||||
| [GreptimeDB](https://github.com/greptimeteam/greptimedb-metabase-driver) |  |  |
|
||||
| [Hydra](https://www.hydra.so/blog-posts/2022-09-28-metabase-and-hydra) | Hydra connections use the official [Postgres driver](../databases/connections/postgresql.md). | Not applicable. |
|
||||
| [Impala](https://github.com/brenoae/metabase-impala-driver) |  |  |
|
||||
| [InterSystems IRIS](https://github.com/Siddardar/metabase-iris-driver/tree/main) |  |  |
|
||||
| [Materialize](https://github.com/MaterializeInc/metabase-materialize-driver) |  |  |
|
||||
|
||||
@@ -28,7 +28,7 @@ Building a custom viz from scaffolding to adding it to your Metabase looks somet
|
||||
|
||||
- Node.js 22 or newer.
|
||||
- Familiarity with React and TypeScript.
|
||||
- A Metabase on a [Pro or Enterprise plan](https://www.metabase.com/pricing/) to load your plugin into.
|
||||
- A Metabase on a [Pro or Enterprise plan](https://www.metabase.com/pricing) to load your plugin into.
|
||||
|
||||
## Scaffold a custom visualization project
|
||||
|
||||
@@ -72,7 +72,7 @@ The scaffold ships a complete, working example: a chart that shows a thumbs-up e
|
||||
|
||||
To develop your plugin against a live Metabase with hot reload:
|
||||
|
||||
1. Start Metabase with the `MB_CUSTOM_VIZ_PLUGIN_DEV_MODE_ENABLED` environment variable set to `true`. Dev mode is meant for local development, so you can only turn it on with this environment variable. Like any Metabase that runs custom visualizations, this local instance needs a [Pro or Enterprise](https://www.metabase.com/pricing/) token.
|
||||
1. Start Metabase with the `MB_CUSTOM_VIZ_PLUGIN_DEV_MODE_ENABLED` environment variable set to `true`. Dev mode is meant for local development, so you can only turn it on with this environment variable. Like any Metabase that runs custom visualizations, this local instance needs a [Pro or Enterprise](https://www.metabase.com/pricing) token.
|
||||
2. Run `npm run dev` in your project. By default, the dev server listens on `http://localhost:5174`.
|
||||
3. In Metabase, go to **Admin** > **Settings** > **Custom visualizations** > **Development** and set the **Dev server URL** to your dev server's address.
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@ If you're looking to download and run the latest official open source version of
|
||||
|
||||
The only thing you’ll need to get started is Docker itself.
|
||||
|
||||
- [Install Docker Desktop](https://www.docker.com/products/docker-desktop)
|
||||
- [Install Docker Desktop](https://www.docker.com/products/docker-desktop/)
|
||||
|
||||
OR
|
||||
|
||||
|
||||
@@ -41,7 +41,7 @@ You can't remove the Postgres, H2, or MySQL drivers, because Metabase needs them
|
||||
|
||||
## Example module directory
|
||||
|
||||
Let's take a high-level look at the [SQLite driver](https://github.com/metabase/metabase/tree/master/modules/drivers/sqlite):
|
||||
Let's take a high-level look at how a driver module is laid out, using the [SQLite driver](https://github.com/metabase/metabase/blob/master/src/metabase/driver/sqlite.clj) as the example:
|
||||
|
||||
```
|
||||
|-- deps.edn
|
||||
|
||||
@@ -235,4 +235,4 @@ be-tests-postgres-latest-ee:
|
||||
junit-name: "be-tests-postgres-latest-ee"
|
||||
```
|
||||
|
||||
For more on what it is you're doing here and how all this works, see [Workflow syntax for GitHub Actions](https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions).
|
||||
For more on what it is you're doing here and how all this works, see [Workflow syntax for GitHub Actions](https://docs.github.com/en/actions/reference/workflows-and-actions/workflow-syntax).
|
||||
|
||||
@@ -67,7 +67,7 @@ The if-you're-interested reason is that Java's JDBC `DriverManager` won't use JD
|
||||
|
||||
## Building the driver
|
||||
|
||||
To build a driver as a plugin JAR, check out the [Build-driver scripts README](https://github.com/metabase/metabase/tree/master/bin/build-drivers.md).
|
||||
To build a driver as a plugin JAR, check out the [Build-driver scripts README](https://github.com/metabase/metabase/blob/master/bin/build-drivers.md).
|
||||
|
||||
Place the JAR you built in your Metabase's `/plugins` directory, and you're off to the races.
|
||||
|
||||
|
||||
@@ -39,7 +39,7 @@ This flag can be used to run all specs within a folder, or to run multiple assor
|
||||
CYPRESS_GUI=false bun run test-cypress --spec e2e/test/scenarios/question/new.cy.spec.js
|
||||
```
|
||||
|
||||
You can specify a browser to execute Cypress tests in using the `--browser` flag. For more details, please consult [the official documentation](https://docs.cypress.io/guides/guides/launching-browsers).
|
||||
You can specify a browser to execute Cypress tests in using the `--browser` flag. For more details, please consult [the official documentation](https://docs.cypress.io/app/references/launching-browsers).
|
||||
|
||||
Specifying a browser makes most sense when running Cypress in a _run_ mode. On the other hand, Cypress _open_ mode (GUI) allows one to easily switch between all available browsers on the system. However, some people prefer to specify a browser even in this scenario. If you do this, keep in mind that you are merely preselecting an initial browser for Cypress but you still have the option to choose a different one.
|
||||
|
||||
@@ -237,7 +237,7 @@ You should provide 4 tokens:
|
||||
|
||||
You can configure these via ENVs or via the `cypress.env.json` file (see `cypress.env.json.example` for an example).
|
||||
|
||||
For more information, please see [Metabase pricing page](https://www.metabase.com/pricing/).
|
||||
For more information, please see [Metabase pricing page](https://www.metabase.com/pricing).
|
||||
|
||||
If you navigate to the `/admin/settings/license` page, the license input field should display the active token. Be careful when sharing screenshots!
|
||||
|
||||
@@ -246,7 +246,7 @@ If you navigate to the `/admin/settings/license` page, the license input field s
|
||||
|
||||
## Tags
|
||||
|
||||
Cypress allows us to [tag](https://github.com/cypress-io/cypress/tree/develop/npm/grep#tags-in-the-test-config-object) tests, to easily find certain categories of tags. For example, we can tag all tests that require an external database with `@external` and then run only those tests with `bun run test-cypress --env grepTags="@external"`. Tags should start with `@` just to make it easier to distinguish them from other strings in searches.
|
||||
Cypress allows us to [tag](https://github.com/cypress-io/cypress/tree/develop/npm/grep#filter-by-tags) tests, to easily find certain categories of tags. For example, we can tag all tests that require an external database with `@external` and then run only those tests with `bun run test-cypress --env grepTags="@external"`. Tags should start with `@` just to make it easier to distinguish them from other strings in searches.
|
||||
|
||||
These are the tags currently in use:
|
||||
|
||||
|
||||
@@ -61,7 +61,7 @@ The gold release is the first stable release of a new major version of Metabase.
|
||||
|
||||
### Cloud builds
|
||||
|
||||
If you see a version followed by an `-X`, like `v1.56.2-X01`, these are version numbers related to builds for customers on [Metabase Cloud](https://www.metabase.com/cloud/).
|
||||
If you see a version followed by an `-X`, like `v1.56.2-X01`, these are version numbers related to builds for customers on [Metabase Cloud](https://www.metabase.com/cloud).
|
||||
|
||||
## Further reading
|
||||
|
||||
|
||||
@@ -21,13 +21,13 @@ To begin debugging Metabase, switch to the Debug view (shortcut: `Ctrl+Shift+D`)
|
||||
|
||||
After that, begin the debugging session by choosing menu _Run_, _Start Debugging_ (shortcut: `F5`).
|
||||
|
||||
For more details, please refer to the complete VS Code documentation on [Debugging](https://code.visualstudio.com/docs/editor/debugging).
|
||||
For more details, please refer to the complete VS Code documentation on [Debugging](https://code.visualstudio.com/docs/debugtest/debugging).
|
||||
|
||||
## Docker-based Workflow
|
||||
|
||||
These instructions allow you to work on Metabase codebase on Windows, Linux, or macOS using [Visual Studio Code](https://code.visualstudio.com/), **without** manually installing the necessary dependencies. This is possible by leveraging Docker container and the Remote Containers extension from VS Code.
|
||||
|
||||
For more details, please follow the complete VS Code guide on [Developing inside a Container](https://code.visualstudio.com/docs/remote/containers).
|
||||
For more details, please follow the complete VS Code guide on [Developing inside a Container](https://code.visualstudio.com/docs/devcontainers/containers).
|
||||
|
||||
Requirements:
|
||||
|
||||
|
||||
@@ -15,11 +15,11 @@ We've developed some [agent skills](https://github.com/metabase/agent-skills) to
|
||||
|
||||
| Skill | Description |
|
||||
| ------------------------------- | -------------------------------------------------------------------------------------------- |
|
||||
| [SDK version upgrade](https://skillsmp.com/skills/metabase-agent-skills-skills-metabase-modular-embedding-version-upgrade-skill-md) | Upgrade your modular embedding SDK, including changelog checks and breaking change handling. |
|
||||
| [Full app → modular embedding](https://skillsmp.com/skills/metabase-agent-skills-skills-metabase-full-app-to-modular-embedding-upgrade-skill-md) | Migrate from full app embedding to modular embedding. |
|
||||
| [Modular embedding → SDK (React)](https://skillsmp.com/skills/metabase-agent-skills-skills-metabase-modular-embedding-to-modular-embedding-sdk-upgrade-skill-md) | Migrate from script-based modular embedding to the React SDK. |
|
||||
| [Static → guest embeds](https://skillsmp.com/skills/metabase-agent-skills-skills-metabase-static-embedding-to-guest-embedding-upgrade-skill-md) | Migrate from static (signed) embeds to guest embeds. |
|
||||
| [SSO for embeds](https://skillsmp.com/skills/metabase-agent-skills-skills-metabase-embedding-sso-implementation-skill-md) | Set up SSO authentication for embedded Metabase.|
|
||||
| [SDK version upgrade](https://skillsmp.com/creators/metabase/agent-skills/skills-metabase-modular-embedding-version-upgrade) | Upgrade your modular embedding SDK, including changelog checks and breaking change handling. |
|
||||
| [Full app → modular embedding](https://skillsmp.com/creators/metabase/agent-skills/skills-metabase-full-app-to-modular-embedding-upgrade) | Migrate from full app embedding to modular embedding. |
|
||||
| [Modular embedding → SDK (React)](https://skillsmp.com/creators/metabase/agent-skills/skills-metabase-modular-embedding-to-modular-embedding-sdk-upgrade) | Migrate from script-based modular embedding to the React SDK. |
|
||||
| [Static → guest embeds](https://skillsmp.com/creators/metabase/agent-skills/skills-metabase-static-embedding-to-guest-embedding-upgrade) | Migrate from static (signed) embeds to guest embeds. |
|
||||
| [SSO for embeds](https://skillsmp.com/creators/metabase/agent-skills/skills-metabase-embedding-sso-implementation) | Set up SSO authentication for embedded Metabase.|
|
||||
|
||||
Browse all skills on the [agent skills repo](https://github.com/metabase/agent-skills).
|
||||
|
||||
|
||||
@@ -17,7 +17,7 @@ You can set up SSO with JWT or SAML.
|
||||
|
||||
## Setting up JWT SSO
|
||||
|
||||
To set up JWT SSO, you'll need [a Metabase Pro or Enterprise license](https://www.metabase.com/pricing/).
|
||||
To set up JWT SSO, you'll need [a Metabase Pro or Enterprise license](https://www.metabase.com/pricing).
|
||||
|
||||
Here's a high-level overview:
|
||||
|
||||
@@ -311,4 +311,4 @@ You can also set the [`MB_SESSION_COOKIE_SAMESITE` environment variable](../conf
|
||||
|
||||
If you're using Safari, you'll need to [allow cross-site tracking](https://support.apple.com/en-tj/guide/safari/sfri40732/mac). Depending on the browser, you may also run into issues when viewing embedded items in private/incognito tabs.
|
||||
|
||||
Learn more about [SameSite cookies](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie/SameSite).
|
||||
Learn more about [SameSite cookies](https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Headers/Set-Cookie#samesitesamesite-value).
|
||||
|
||||
@@ -26,12 +26,12 @@ Check out the [Full app embedding quick start](./full-app-embedding-quick-start-
|
||||
|
||||
## Prerequisites for full app embedding
|
||||
|
||||
1. Make sure you have a [license token](../installation-and-operation/activating-the-enterprise-edition.md) for a [Pro or Enterprise plan](https://store.metabase.com/checkout/login-details).
|
||||
1. Make sure you have a [license token](../installation-and-operation/activating-the-enterprise-edition.md) for a [Pro or Enterprise plan](https://www.metabase.com/pricing).
|
||||
2. Organize people into Metabase [groups](../people-and-groups/start.md).
|
||||
3. Set up [permissions](../permissions/introduction.md) for each group.
|
||||
4. Set up [SSO](../people-and-groups/start.md#authentication) to automatically apply permissions and show people the right data upon sign-in. In general, **we recommend using [SSO with JWT](../people-and-groups/authenticating-with-jwt.md)**.
|
||||
|
||||
If you're dealing with a [multi-tenant](https://www.metabase.com/learn/metabase-basics/embedding/multi-tenant-self-service-analytics) situation, check out our recommendations for [Configuring permissions for different customer schemas](../permissions/embedding.md).
|
||||
If you're dealing with a [multi-tenant](./tenants.md) situation, check out our recommendations for [Configuring permissions for different customer schemas](../permissions/embedding.md).
|
||||
|
||||
If you have your app running locally, and you're using the Pro Cloud version, or hosting Metabase and your app in different domains, you'll need to set your Metabase environment's session cookie SameSite option to "none".
|
||||
|
||||
@@ -141,7 +141,7 @@ You can also set the [`MB_SESSION_COOKIE_SAMESITE` environment variable](../conf
|
||||
|
||||
If you're using Safari, you'll need to [allow cross-site tracking](https://support.apple.com/en-tj/guide/safari/sfri40732/mac). Depending on the browser, you may also run into issues when viewing embedded items in private/incognito tabs.
|
||||
|
||||
Learn more about [SameSite cookies](https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie/SameSite).
|
||||
Learn more about [SameSite cookies](https://developer.mozilla.org/en-US/docs/Web/HTTP/Reference/Headers/Set-Cookie#samesitesamesite-value).
|
||||
|
||||
## Securing full app embeds
|
||||
|
||||
@@ -246,6 +246,6 @@ To build a sample full app embed using SSO with JWT, see our reference apps:
|
||||
## Further reading
|
||||
|
||||
- [Full app embedding quick start](./full-app-embedding-quick-start-guide.md)
|
||||
- [Strategies for delivering customer-facing analytics](https://www.metabase.com/learn/metabase-basics/embedding/overview).
|
||||
- [Embedding introduction](./introduction.md).
|
||||
- [Permissions strategies](https://www.metabase.com/learn/metabase-basics/administration/permissions/strategy).
|
||||
- [Customizing Metabase's appearance](../configuring-metabase/appearance.md).
|
||||
|
||||
@@ -547,7 +547,6 @@ For those features, check out [Modular embedding with SSO](./modular-embedding.m
|
||||
|
||||
## Further reading
|
||||
|
||||
- [Reference apps repo](https://github.com/metabase/embedding-reference-apps).
|
||||
- [Strategies for delivering customer-facing analytics](https://www.metabase.com/learn/metabase-basics/embedding/overview).
|
||||
- [Publishing data visualizations to the web](https://www.metabase.com/learn/metabase-basics/embedding/charts-and-dashboards).
|
||||
- [Reference apps repo](https://github.com/metabase/static-embedding-reference-apps).
|
||||
- [Embedding introduction](./introduction.md).
|
||||
- [Customizing Metabase's appearance](../configuring-metabase/appearance.md).
|
||||
|
||||
@@ -57,9 +57,9 @@ All SSO options require a Pro or Enterprise plan.
|
||||
| Customize layouts and behavior with [plugins](./sdk/plugins.md) | ✅ | ❌ |
|
||||
| [Locked filters](./guest-embedding.md#locked-parameters)\*\*\* | ❌ | ✅ |
|
||||
|
||||
\* Each authentication method allows data downloads by default, but only [Pro and Enterprise](https://www.metabase.com/pricing/) plans can disable data downloads.
|
||||
\* Each authentication method allows data downloads by default, but only [Pro and Enterprise](https://www.metabase.com/pricing) plans can disable data downloads.
|
||||
|
||||
\*\* Requires a [Pro and Enterprise](https://www.metabase.com/pricing/) plan with either authentication method.
|
||||
\*\* Requires a [Pro and Enterprise](https://www.metabase.com/pricing) plan with either authentication method.
|
||||
|
||||
\*\*\* Components that use SSO don't need locked filters. Since Metabase knows who's viewing, you can segregate data with [permissions](../permissions/embedding.md) instead. There's a little more set up, but much less long-term overhead.
|
||||
|
||||
@@ -121,8 +121,6 @@ For information about the anonymous usage data Metabase collects from embedded c
|
||||
|
||||
## Further reading
|
||||
|
||||
- [Strategies for delivering customer-facing analytics](https://www.metabase.com/learn/metabase-basics/embedding/overview).
|
||||
- [Publishing data visualizations to the web](https://www.metabase.com/learn/metabase-basics/embedding/charts-and-dashboards).
|
||||
- [Multi-tenant self-service analytics](https://www.metabase.com/learn/metabase-basics/embedding/multi-tenant-self-service-analytics).
|
||||
- [Tenants](./tenants.md).
|
||||
- [Customizing Metabase's appearance](../configuring-metabase/appearance.md).
|
||||
- [Securing embedded Metabase](./securing-embeds.md).
|
||||
|
||||
@@ -55,7 +55,7 @@ https://www.example.com/public/question/cf347ce0-90bb-4669-b73b-56c73edd10cb.csv
|
||||
|
||||
By default, Metabase will export the results of a question that include any formatting you added (for example, if you formatted a column with floats to display as a percentage (0.42 -> 42%)).
|
||||
|
||||
See docs for the [export format endpoint](https://www.metabase.com/docs/latest/api#tag/public/GET/public/card/{uuid}/query/{export-format}).
|
||||
See docs for the [export format endpoint](https://www.metabase.com/docs/latest/api#tag/apipublic/GET/api/public/card/{uuid}/query/{export-format}).
|
||||
|
||||
## Simulating drill-through with public links
|
||||
|
||||
@@ -194,7 +194,6 @@ Admins can see all publicly shared questions, dashboards, documents, and actions
|
||||
|
||||
## Further reading
|
||||
|
||||
- [Publishing data visualizations to the web](https://www.metabase.com/learn/metabase-basics/embedding/charts-and-dashboards).
|
||||
- [Customizing Metabase's appearance](../configuring-metabase/appearance.md).
|
||||
- [Embedding introduction](../embedding/start.md).
|
||||
- [Custom visualizations in embeds](./custom-visualizations.md).
|
||||
|
||||
@@ -119,7 +119,7 @@ Start with one of the quickstarts, then see these pages for more info on compone
|
||||
|
||||
## Modular embedding SDK source code
|
||||
|
||||
You can find the [Modular embedding SDK source code in the Metabase repo](https://github.com/metabase/metabase/tree/master/enterprise/frontend/src/embedding-sdk).
|
||||
You can find the [Modular embedding SDK source code in the Metabase repo](https://github.com/metabase/metabase/tree/master/enterprise/frontend/src/embedding-sdk-package).
|
||||
|
||||
## Modular embedding SDK on npm
|
||||
|
||||
|
||||
@@ -63,7 +63,7 @@ The tool will then prompt you to pick 1-3 tables to embed. You can press <space>
|
||||
|
||||
## Permissions setup with multi-tenancy (optional)
|
||||
|
||||
If you have a Pro/EE license, the tool can set up permissions. To get a license, sign up for a [free trial of self-hosted Metabase Pro](https://www.metabase.com/pricing/).
|
||||
If you have a Pro/EE license, the tool can set up permissions. To get a license, sign up for a [free trial of self-hosted Metabase Pro](https://www.metabase.com/pricing).
|
||||
|
||||
If you opted to set up multi-tenancy and connected to your own database, the tool will ask you for the column you want to use to restrict the table (e.g., a user ID column). Metabase will [set row-level security](../../permissions/row-and-column-security.md) for that table based on the values in that column.
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@ This guide sets up the modular embedding SDK with a [sample React app](https://g
|
||||
|
||||
- [Node.js 20.x LTS or higher](https://nodejs.org/en) (for the sample application).
|
||||
- [Metabase version v1.52 or higher](https://github.com/metabase/metabase/releases).
|
||||
- [A Metabase Pro or Enterprise license](https://www.metabase.com/pricing/) (If you don't have a license, check out [this quickstart](./quickstart.md) that lacks the paid JWT SSO setup.)
|
||||
- [A Metabase Pro or Enterprise license](https://www.metabase.com/pricing) (If you don't have a license, check out [this quickstart](./quickstart.md) that lacks the paid JWT SSO setup.)
|
||||
- (Optional): [Docker](https://www.docker.com/)
|
||||
|
||||
## Clone the sample app repo
|
||||
@@ -99,7 +99,7 @@ Let's go.
|
||||
|
||||
## Install Metabase Enterprise Edition
|
||||
|
||||
You can run Metabase Pro on a Cloud plan with a [free trial](https://www.metabase.com/pricing/).
|
||||
You can run Metabase Pro on a Cloud plan with a [free trial](https://www.metabase.com/pricing).
|
||||
|
||||
Or run it locally. Here's a [docker](../../installation-and-operation/running-metabase-on-docker.md) one-liner:
|
||||
|
||||
|
||||
@@ -13,7 +13,7 @@ This setup:
|
||||
- Only works on localhost when developing your app (though your Metabase doesn't need to be running locally).
|
||||
- Works with both the Enterprise and Open Source editions of Metabase, both self-hosted and on Metabase Cloud.
|
||||
|
||||
If you want to use the SDK in production, however, you'll also need to [set up JWT SSO authentication](../authentication.md), which requires a [Pro](https://store.metabase.com/checkout/embedding) or [Enterprise plan](https://www.metabase.com/pricing/). To enable JWT SSO when you're self-hosting Metabase, you'll need to run the Enterprise Edition Docker image or JAR, and [activate your license](../../installation-and-operation/activating-the-enterprise-edition.md).
|
||||
If you want to use the SDK in production, however, you'll also need to [set up JWT SSO authentication](../authentication.md), which requires a [Pro](https://store.metabase.com/checkout/embedding) or [Enterprise plan](https://www.metabase.com/pricing). To enable JWT SSO when you're self-hosting Metabase, you'll need to run the Enterprise Edition Docker image or JAR, and [activate your license](../../installation-and-operation/activating-the-enterprise-edition.md).
|
||||
|
||||
## Prerequisites
|
||||
|
||||
|
||||
@@ -248,7 +248,7 @@ When Customer 1 logs in, they'll see a different filtered version of the Account
|
||||
- [Modular embedding with SDK reference app](https://github.com/metabase/metabase-nodejs-react-sdk-embedding-sample)
|
||||
- [Full app embedding demo](https://embedding-demo.metabase.com/)
|
||||
- [Full app embedding reference app](https://github.com/metabase/sso-examples/tree/master/app-embed-example)
|
||||
- [Guest embedding reference app](https://github.com/metabase/embedding-reference-apps)
|
||||
- [Guest embedding reference app](https://github.com/metabase/static-embedding-reference-apps)
|
||||
|
||||
## Further reading
|
||||
|
||||
|
||||
@@ -119,7 +119,7 @@ If you want to restrict the data that's displayed in an embedded dashboard or SQ
|
||||
6. Click **Publish** to save your changes.
|
||||
7. Add or update the code on your server to [match the code generated by Metabase](./static-embedding.md#previewing-the-code-for-an-embed).
|
||||
|
||||
You can use locked parameters to display filtered data based on attributes captured by your web server, such as a username or a tenant ID. For more examples, see the [reference apps repo](https://github.com/metabase/embedding-reference-apps).
|
||||
You can use locked parameters to display filtered data based on attributes captured by your web server, such as a username or a tenant ID. For more examples, see the [reference apps repo](https://github.com/metabase/static-embedding-reference-apps).
|
||||
|
||||
Locked parameters will apply the selected filter values to your original dashboard or SQL question, but they won't be displayed as filter widgets on your embed. Locked parameters may also limit the values that are shown in your [editable filter widgets](#adding-a-filter-widget-to-a-static-embed).
|
||||
|
||||
@@ -209,5 +209,4 @@ If your static embedding URL exceeds the maximum header size, you'll see a log m
|
||||
## Further reading
|
||||
|
||||
- [Static embedding documentation](./static-embedding.md).
|
||||
- [Strategies for delivering customer-facing analytics](https://www.metabase.com/learn/metabase-basics/embedding/overview).
|
||||
- [Publishing data visualizations to the web](https://www.metabase.com/learn/metabase-basics/embedding/charts-and-dashboards).
|
||||
- [Embedding introduction](./introduction.md).
|
||||
|
||||
@@ -69,7 +69,7 @@ Once you've made a question or dashboard [embeddable](#making-a-question-or-dash
|
||||
4. Add the code to the server code that builds your website.
|
||||
5. Add the frontend code to the code that generates the page where you want the embedded item to appear.
|
||||
|
||||
For more examples, see our [reference apps repo](https://github.com/metabase/embedding-reference-apps).
|
||||
For more examples, see our [reference apps repo](https://github.com/metabase/static-embedding-reference-apps).
|
||||
|
||||
## Previewing the code for an embed
|
||||
|
||||
@@ -191,7 +191,6 @@ See [Translating embedded questions and dashboards](./translations.md).
|
||||
## Further reading
|
||||
|
||||
- [Parameters for static embeds](./static-embedding-parameters.md).
|
||||
- [Reference apps repo](https://github.com/metabase/embedding-reference-apps).
|
||||
- [Strategies for delivering customer-facing analytics](https://www.metabase.com/learn/metabase-basics/embedding/overview).
|
||||
- [Publishing data visualizations to the web](https://www.metabase.com/learn/metabase-basics/embedding/charts-and-dashboards).
|
||||
- [Reference apps repo](https://github.com/metabase/static-embedding-reference-apps).
|
||||
- [Embedding introduction](./introduction.md).
|
||||
- [Customizing Metabase's appearance](../configuring-metabase/appearance.md).
|
||||
|
||||
@@ -57,7 +57,7 @@ The left sidebar lists your databases, [models](../data-modeling/models.md), and
|
||||
|
||||
The database browser will list all the databases connected to your Metabase. Hover over a table and click on the **bolt** icon to [X-ray](x-rays.md) the table, or click on the **book** icon to view more info about the table: its fields and their descriptions (if any), what questions are based on that table, and more.
|
||||
|
||||
To learn more, see [Exploring data with Metabase's data browser](https://www.metabase.com/learn/metabase-basics/querying-and-dashboards/data-browser).
|
||||
To learn more, see the [data reference](./data-model-reference.md).
|
||||
|
||||
## Exploring collections
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@ redirect_from:
|
||||
|
||||
# Activating your Metabase commercial license
|
||||
|
||||
The [paid Pro and Enterprise editions](https://www.metabase.com/pricing/) of Metabase are distinct from the free [Open Source edition](../installation-and-operation/running-the-metabase-jar-file.md) and the [Starter version of Metabase Cloud](https://www.metabase.com/cloud/).
|
||||
The [paid Pro and Enterprise editions](https://www.metabase.com/pricing) of Metabase are distinct from the free [Open Source edition](../installation-and-operation/running-the-metabase-jar-file.md) and the [Starter version of Metabase Cloud](https://www.metabase.com/cloud).
|
||||
|
||||
## If you're running on Metabase Cloud
|
||||
|
||||
@@ -20,7 +20,7 @@ To use your Pro/Enterprise features, you’ll need to do two things:
|
||||
- Download Metabase Enterprise Edition
|
||||
- Enter your license.
|
||||
|
||||
You can get a license by signing up for a free trial of the [Pro or Enterprise edition plans](https://www.metabase.com/pricing/), both of which can be self-hosted or hosted on Metabase Cloud.
|
||||
You can get a license by signing up for a free trial of the [Pro or Enterprise edition plans](https://www.metabase.com/pricing), both of which can be self-hosted or hosted on Metabase Cloud.
|
||||
|
||||
### Download the Enterprise edition
|
||||
|
||||
@@ -39,7 +39,7 @@ OR
|
||||
|
||||
## Upgrading from a self-hosted Metabase Open Source Edition to a Pro or Enterprise plan
|
||||
|
||||
To get all the features available when upgrading to a _self-hosted_ [Pro or Enterprise plan](https://www.metabase.com/pricing/), you'll need to:
|
||||
To get all the features available when upgrading to a _self-hosted_ [Pro or Enterprise plan](https://www.metabase.com/pricing), you'll need to:
|
||||
|
||||
1. Change to the Metabase Enterprise Edition (that goes for both the Pro and Enterprise plans).
|
||||
2. Activate your license.
|
||||
|
||||
@@ -56,7 +56,7 @@ java --add-opens java.base/java.nio=ALL-UNNAMED -jar metabase.jar
|
||||
|
||||
## MySQL or MariaDB
|
||||
|
||||
We recommend [PostgreSQL](#postgresql), but you can also use [MySQL](https://www.mysql.com/) or [MariaDB](https://www.mariadb.org/).
|
||||
We recommend [PostgreSQL](#postgresql), but you can also use [MySQL](https://www.mysql.com/) or [MariaDB](https://mariadb.org/).
|
||||
|
||||
The minimum recommended version is MySQL 8.4.0 or MariaDB 10.6.0. The `utf8mb4` character set is required.
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@ summary: Create development instances of Metabase for testing without paying per
|
||||
On Pro and Enterprise plans, you can purchase a development instance or development token as an add-on to your plan.
|
||||
|
||||
- **Self-hosted**: you can purchase a dev token so you don't get billed for every test user account. You can use the same dev token for one or more self-hosted development instances (meaning: you can reuse the same token for multiple dev instances at no additional cost). The development token will have access to the same set of paid features as your production token.
|
||||
- **Cloud**: you can purchase a development instance hosted on [Metabase Cloud](https://www.metabase.com/cloud/). The development instance will have access to the same set of paid features as your production token.
|
||||
- **Cloud**: you can purchase a development instance hosted on [Metabase Cloud](https://www.metabase.com/cloud). The development instance will have access to the same set of paid features as your production token.
|
||||
|
||||
Dev instances are only available to Pro and Enterprise plans; they're not included in the base plans. Dev instances must be purchased as an add-on to your plan, after you've completed your trial and made your first payment.
|
||||
|
||||
|
||||
@@ -10,7 +10,7 @@ Metabase is built and packaged as a Java JAR file and can be run anywhere that J
|
||||
|
||||
## Metabase Cloud (Recommended)
|
||||
|
||||
[Metabase Cloud](https://www.metabase.com/cloud/) is the easiest way to run Metabase. All you need to do is [sign up for a free trial](https://store.metabase.com/checkout), and you're off to the races.
|
||||
[Metabase Cloud](https://www.metabase.com/cloud) is the easiest way to run Metabase. All you need to do is [sign up for a free trial](https://store.metabase.com/checkout), and you're off to the races.
|
||||
|
||||
## Self-hosting Metabase
|
||||
|
||||
@@ -57,4 +57,4 @@ Metabase doesn't have an officially supported Helm chart.
|
||||
|
||||
## Connect with a Metabase Expert
|
||||
|
||||
If you’d like more technical resources to set up your data stack with Metabase, connect with a [Metabase Expert](https://www.metabase.com/partners/).
|
||||
If you’d like more technical resources to set up your data stack with Metabase, connect with a [Metabase Expert](https://www.metabase.com/partners).
|
||||
|
||||
@@ -25,7 +25,7 @@ The migration process is a one-off process. You can execute the migration script
|
||||
|
||||
One important thing here is that the version of Metabase you use during the migration process must be the same. Meaning, the Metabase you use to run the migration command must be the same one that was last used to create or update H2 file, which must be the same version you'll be using in production. Only _after_ completing the migration should you consider upgrading.
|
||||
|
||||
You could also choose to run Metabase on a [Metabase Cloud](https://www.metabase.com/pricing/) plan, which takes care of all of this stuff for you. If you have an existing Metabase, here's how you can [migrate to Metabase Cloud](../cloud/migrate/guide.md).
|
||||
You could also choose to run Metabase on a [Metabase Cloud](https://www.metabase.com/pricing) plan, which takes care of all of this stuff for you. If you have an existing Metabase, here's how you can [migrate to Metabase Cloud](../cloud/migrate/guide.md).
|
||||
|
||||
## Supported databases for storing your Metabase application data
|
||||
|
||||
@@ -37,7 +37,7 @@ We recommend using PostgreSQL for your application database.
|
||||
|
||||
## How can I tell if my Metabase instance uses H2?
|
||||
|
||||
As a Metabase admin, call the [`GET /api/bug-reporting/details`](https://www.metabase.com/docs/latest/api#tag/apibug-reporting/get/api/bug-reporting/details) API endpoint. This will return something like this:
|
||||
As a Metabase admin, call the [`GET /api/bug-reporting/details`](https://www.metabase.com/docs/latest/api#tag/apibug-reporting/GET/api/bug-reporting/details) API endpoint. This will return something like this:
|
||||
|
||||
```json
|
||||
{
|
||||
@@ -174,7 +174,7 @@ docker run -d -p 3000:3000 \
|
||||
|
||||
### 7. Remove the old container that was using the H2 database
|
||||
|
||||
If you have your H2 file backed up somewhere safe, go ahead and remove the old container. See [Docker docs](https://docs.docker.com/engine/reference/commandline/rm/) for removing containers.
|
||||
If you have your H2 file backed up somewhere safe, go ahead and remove the old container. See [Docker docs](https://docs.docker.com/reference/cli/docker/container/rm/) for removing containers.
|
||||
|
||||
## Running Metabase application database migrations manually
|
||||
|
||||
|
||||
@@ -12,7 +12,7 @@ To give you an idea of how Metabase and Prometheus would work in your production
|
||||
|
||||
## Start up Metabase with `MB_PROMETHEUS_SERVER_PORT`
|
||||
|
||||
Download the latest [Metabase JAR](https://www.metabase.com/start/oss/), and run Metabase using an environment variable to specify the Prometheus server port:
|
||||
Download the latest [Metabase JAR](https://www.metabase.com/start/oss), and run Metabase using an environment variable to specify the Prometheus server port:
|
||||
|
||||
```sh
|
||||
MB_PROMETHEUS_SERVER_PORT=9191 java --add-opens java.base/java.nio=ALL-UNNAMED -jar metabase.jar
|
||||
@@ -39,7 +39,7 @@ You can view your locally running Metabase at `http://localhost:3000`.
|
||||
|
||||
## Download and configure Prometheus
|
||||
|
||||
[Download Prometheus](https://prometheus.io/download), and extract the files.
|
||||
[Download Prometheus](https://prometheus.io/download/), and extract the files.
|
||||
|
||||
Change into the Prometheus directory, and add the following YAML file to configure your Prometheus:
|
||||
|
||||
|
||||
@@ -14,7 +14,7 @@ If you self-host your Metabase instance, we have no access to any of your data,
|
||||
|
||||
### Metabase Cloud
|
||||
|
||||
If you're a [Metabase Cloud](https://www.metabase.com/pricing/) customer, your [Terms of Service](https://www.metabase.com/license/hosting) include a Data Processing Agreement (DPA).
|
||||
If you're a [Metabase Cloud](https://www.metabase.com/pricing) customer, your [Terms of Service](https://www.metabase.com/license/hosting) include a Data Processing Agreement (DPA).
|
||||
|
||||
## Further reading
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@ redirect_from:
|
||||
|
||||
# Running Metabase on Docker
|
||||
|
||||
> To get fast, reliable, and secure deployment with none of the work or hidden costs that come with self-hosting, check out [Metabase Cloud](https://www.metabase.com/cloud/).
|
||||
> To get fast, reliable, and secure deployment with none of the work or hidden costs that come with self-hosting, check out [Metabase Cloud](https://www.metabase.com/cloud).
|
||||
|
||||
Metabase provides an official Docker image via Docker Hub that can be used for deployments on any system that is running Docker.
|
||||
|
||||
@@ -46,7 +46,7 @@ docker run -d -p 12345:3000 --name metabase metabase/metabase
|
||||
|
||||
## Pro or Enterprise quick start
|
||||
|
||||
Use this quick start if you have a [license token](../installation-and-operation/activating-the-enterprise-edition.md) for a [Pro or Enterprise version](https://www.metabase.com/pricing/) of Metabase, and you want to run Metabase locally. See below for instructions on [running Metabase in production](#production-installation).
|
||||
Use this quick start if you have a [license token](../installation-and-operation/activating-the-enterprise-edition.md) for a [Pro or Enterprise version](https://www.metabase.com/pricing) of Metabase, and you want to run Metabase locally. See below for instructions on [running Metabase in production](#production-installation).
|
||||
|
||||
Assuming you have [Docker](https://www.docker.com/) installed and running, get the latest Docker image:
|
||||
|
||||
|
||||
@@ -16,7 +16,7 @@ If you're running Metabase on Elastic Beanstalk, we recommend you switch to a di
|
||||
|
||||
### Metabase Cloud
|
||||
|
||||
We recommend [Metabase Cloud](https://www.metabase.com/pricing/) (obviously).
|
||||
We recommend [Metabase Cloud](https://www.metabase.com/pricing) (obviously).
|
||||
|
||||
### Self-hosted setups
|
||||
|
||||
|
||||
@@ -40,7 +40,7 @@ podman run -d -p 12345:3000 --name=metabase docker.io/metabase/metabase:latest
|
||||
|
||||
## Pro or Enterprise quick start
|
||||
|
||||
Use this quick start if you have a [license token](../installation-and-operation/activating-the-enterprise-edition.md) for a [Pro or Enterprise version](https://www.metabase.com/pricing/) of Metabase, and you want to run Metabase locally.
|
||||
Use this quick start if you have a [license token](../installation-and-operation/activating-the-enterprise-edition.md) for a [Pro or Enterprise version](https://www.metabase.com/pricing) of Metabase, and you want to run Metabase locally.
|
||||
|
||||
Assuming you have [Podman](https://podman.io) installed and running, get the latest container image:
|
||||
|
||||
|
||||
@@ -7,11 +7,11 @@ redirect_from:
|
||||
|
||||
# Running the Metabase OSS JAR file
|
||||
|
||||
> We recommend running Metabase on [Metabase Cloud](https://www.metabase.com/cloud/). If you need to self-host, you _can_ run Metabase as a standalone JAR, but [we recommend running Metabase in a Docker container](./running-metabase-on-docker.md).
|
||||
> We recommend running Metabase on [Metabase Cloud](https://www.metabase.com/cloud). If you need to self-host, you _can_ run Metabase as a standalone JAR, but [we recommend running Metabase in a Docker container](./running-metabase-on-docker.md).
|
||||
|
||||
To run the free, Open Source version of Metabase via a JAR file, you will need to have a Java Runtime Environment (JRE) installed on your system.
|
||||
|
||||
If you have a token for the [Pro or Enterprise editions](https://www.metabase.com/pricing/) of Metabase, see [Activating your Metabase commercial license](../installation-and-operation/activating-the-enterprise-edition.md).
|
||||
If you have a token for the [Pro or Enterprise editions](https://www.metabase.com/pricing) of Metabase, see [Activating your Metabase commercial license](../installation-and-operation/activating-the-enterprise-edition.md).
|
||||
|
||||
## Quick start
|
||||
|
||||
@@ -19,7 +19,7 @@ If you have a token for the [Pro or Enterprise editions](https://www.metabase.co
|
||||
|
||||
If you have Java installed:
|
||||
|
||||
1. [Download the JAR file for Metabase OSS](https://metabase.com/start/oss/jar). If you're on a [Pro](https://www.metabase.com/product/pro) or [Enterprise](https://www.metabase.com/product/enterprise) plan, download the [JAR for the Enterprise Edition](https://downloads.metabase.com/enterprise/latest/metabase.jar).
|
||||
1. [Download the JAR file for Metabase OSS](https://www.metabase.com/start/oss/jar). If you're on a [Pro](https://www.metabase.com/product/pro) or [Enterprise](https://www.metabase.com/product/enterprise) plan, download the [JAR for the Enterprise Edition](https://downloads.metabase.com/enterprise/latest/metabase.jar).
|
||||
2. Create a new directory and move the Metabase JAR into it.
|
||||
3. Change into your new Metabase directory and run the JAR.
|
||||
|
||||
@@ -54,7 +54,7 @@ Download the JAR file:
|
||||
- [Metabase OSS](https://www.metabase.com/start/oss/jar)
|
||||
- [Metabase Enterprise/Pro edition](https://downloads.metabase.com/enterprise/latest/metabase.jar)
|
||||
|
||||
If you want to install the [Pro or Enterprise editions](https://www.metabase.com/pricing/) of Metabase, see [Activating your Metabase commercial license](../installation-and-operation/activating-the-enterprise-edition.md).
|
||||
If you want to install the [Pro or Enterprise editions](https://www.metabase.com/pricing) of Metabase, see [Activating your Metabase commercial license](../installation-and-operation/activating-the-enterprise-edition.md).
|
||||
|
||||
### 3. Create a new directory and move the Metabase JAR into it
|
||||
|
||||
|
||||
@@ -334,7 +334,7 @@ Sets the name of the directory that holds the exported YAML files.
|
||||
|
||||
> Just like the CLI serialization commands, these endpoints are only available for [Pro](https://www.metabase.com/product/pro) and [Enterprise](https://www.metabase.com/product/enterprise) plans.
|
||||
|
||||
You can import and export serialized Metabase data via Metabase's API, which makes serialization possible for [Metabase Cloud](https://www.metabase.com/cloud/) deployments.
|
||||
You can import and export serialized Metabase data via Metabase's API, which makes serialization possible for [Metabase Cloud](https://www.metabase.com/cloud) deployments.
|
||||
|
||||
There are two endpoints:
|
||||
|
||||
|
||||
@@ -64,4 +64,4 @@ Administrative commands built into the Metabase JAR.
|
||||
|
||||
---
|
||||
|
||||
If you’d like more technical resources to set up your data stack with Metabase, connect with a [Metabase Expert](https://www.metabase.com/partners/).
|
||||
If you’d like more technical resources to set up your data stack with Metabase, connect with a [Metabase Expert](https://www.metabase.com/partners).
|
||||
|
||||
@@ -14,7 +14,7 @@ This page covers how to upgrade to a new Metabase release.
|
||||
|
||||
## Upgrading Metabase Cloud
|
||||
|
||||
If you're on a [Metabase Cloud](https://www.metabase.com/pricing/) plan, we'll upgrade your Metabase automatically with each new release; no action needed on your end ([unless you're using the modular embedding SDK](#instances-using-the-modular-embedding-sdk-on-metabase-cloud-must-request-an-upgrade)).
|
||||
If you're on a [Metabase Cloud](https://www.metabase.com/pricing) plan, we'll upgrade your Metabase automatically with each new release; no action needed on your end ([unless you're using the modular embedding SDK](#instances-using-the-modular-embedding-sdk-on-metabase-cloud-must-request-an-upgrade)).
|
||||
|
||||
How soon we upgrade you depends on the type of release:
|
||||
|
||||
|
||||
@@ -26,7 +26,7 @@ Monitor contains three sections:
|
||||
- **[Erroring questions](./erroring-questions.md)**\*: See questions that returned an error the last time they ran.
|
||||
- **[Alerts management](./alerts-management.md)**: View and manage every alert in your Metabase, including failing and ownerless alerts.
|
||||
|
||||
\* Available on [Pro and Enterprise plans](https://www.metabase.com/pricing/). On other plans, these tabs show an upgrade page.
|
||||
\* Available on [Pro and Enterprise plans](https://www.metabase.com/pricing). On other plans, these tabs show an upgrade page.
|
||||
|
||||
### Logs and activity
|
||||
|
||||
@@ -37,7 +37,7 @@ Monitor contains three sections:
|
||||
|
||||
### AI auditing
|
||||
|
||||
The AI auditing tabs are only available on [Pro and Enterprise plans](https://www.metabase.com/pricing/).
|
||||
The AI auditing tabs are only available on [Pro and Enterprise plans](https://www.metabase.com/pricing).
|
||||
|
||||
- **[Usage stats](../ai/usage-auditing.md#usage-stats)**: See AI feature usage, including tokens and messages.
|
||||
- **[Conversations](../ai/usage-auditing.md#conversations)**: Review people's conversations with Metabot.
|
||||
@@ -52,4 +52,4 @@ Who can see each Monitor page depends on their group:
|
||||
- **[Data Analysts](../people-and-groups/managing.md#data-analysts) group** can view Dependency diagnostics.\*
|
||||
- **Groups with [Monitoring access](../permissions/application.md#monitoring-access)** can view every page except Dependency diagnostics and Alerts management.\*
|
||||
|
||||
\* On OSS, only admins can view Monitor. The Data Analysts group and the Monitoring access permission are only available on [Pro and Enterprise plans](https://www.metabase.com/pricing/).
|
||||
\* On OSS, only admins can view Monitor. The Data Analysts group and the Monitoring access permission are only available on [Pro and Enterprise plans](https://www.metabase.com/pricing).
|
||||
|
||||
@@ -29,7 +29,7 @@ To create an API key:
|
||||
|
||||
### Creating API keys from the config file
|
||||
|
||||
If you're on a [Pro or Enterprise self-hosted plan](https://www.metabase.com/pricing/), you can [create API keys via the configuration file](../configuring-metabase/config-file.md#api-keys).
|
||||
If you're on a [Pro or Enterprise self-hosted plan](https://www.metabase.com/pricing), you can [create API keys via the configuration file](../configuring-metabase/config-file.md#api-keys).
|
||||
|
||||
## Managing API Keys
|
||||
|
||||
|
||||
@@ -139,7 +139,7 @@ If you're running a multi-tenant application, you can use JWT to automatically a
|
||||
|
||||
## Note about Azure
|
||||
|
||||
If you're using Azure, you may need to use Azure AD B2C. Check out their [tokens overview](https://docs.microsoft.com/en-us/azure/active-directory-b2c/tokens-overview).
|
||||
If you're using Azure, you may need to use Azure AD B2C. Check out their [tokens overview](https://learn.microsoft.com/en-us/azure/active-directory-b2c/tokens-overview).
|
||||
|
||||
## Example code using JWT-based authentication
|
||||
|
||||
|
||||
@@ -9,7 +9,7 @@ redirect_from:
|
||||
|
||||
Enabling [Google Sign-In](https://developers.google.com/identity/sign-in/web/sign-in) for single sign-on (SSO) lets your team log in with a click instead of using email and password. SSO can also be used to let people create Metabase accounts without asking an admin to add each person manually. You can find SSO options under **Settings** > **Admin** > **Authentication**.
|
||||
|
||||
If you'd like to have people authenticate with [SAML][saml-docs] or [JWT][jwt-docs], Metabase's [Pro and Enterprise](https://www.metabase.com/pricing/) let you do just that.
|
||||
If you'd like to have people authenticate with [SAML][saml-docs] or [JWT][jwt-docs], Metabase's [Pro and Enterprise](https://www.metabase.com/pricing) let you do just that.
|
||||
|
||||
## Enabling Google Sign-In
|
||||
|
||||
@@ -20,7 +20,7 @@ Google Sign-In is a good option for SSO if:
|
||||
|
||||
## Get your Client ID from the Google developer console
|
||||
|
||||
To let your team start signing in with Google, you’ll first need to create an application through Google’s [developer console](https://console.developers.google.com/projectselector2/apis/library).
|
||||
To let your team start signing in with Google, you’ll first need to create an application through Google’s [developer console](https://console.cloud.google.com/projectselector2/apis/library).
|
||||
|
||||
Next, you'll have to create authorization credentials and [get a Google API Client ID](https://developers.google.com/identity/gsi/web/guides/get-google-api-clientid):
|
||||
|
||||
@@ -40,7 +40,7 @@ Once you have your Google API `Client ID` (ending in `.apps.googleusercontent.co
|
||||
|
||||
## Creating Metabase accounts with Google Sign-in
|
||||
|
||||
> On [paid plans](https://www.metabase.com/pricing/), you're [charged for each active account](https://www.metabase.com/how-billing-works#what-counts-as-a-user-account).
|
||||
> On [paid plans](https://www.metabase.com/pricing), you're [charged for each active account](https://www.metabase.com/how-billing-works#what-counts-as-a-user-account).
|
||||
|
||||
If people's Google account email addresses are from a specific domain, and you want to allow them to sign up on their own, you can enter that domain in the **Domain** field.
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@ redirect_from:
|
||||
|
||||
{% include plans-blockquote.html feature="Google SAML authentication" %}
|
||||
|
||||
1. Set up a [custom SAML app](https://support.google.com/a/answer/6087519) in your [Google admin console](https://admin.google.com).
|
||||
1. Set up a [custom SAML app](https://knowledge.workspace.google.com/admin/apps/set-up-your-own-custom-saml-app) in your [Google admin console](https://admin.google.com).
|
||||
2. As you follow Google's instructions, you'll need to:
|
||||
|
||||
- [Save information about Google for Metabase](#saving-google-idp-info-for-metabase).
|
||||
@@ -62,8 +62,8 @@ For example, to add the attribute "First name":
|
||||
## Setting up synchronize group membership
|
||||
|
||||
1. In Google Admin, you can EITHER:
|
||||
- Set up a multi-value [custom user attribute](https://support.google.com/a/answer/6208725?hl=en#zippy=%2Cadd-a-new-custom-attribute) for your users. Recommended if you manage multiple SAML app permissions in Google or if you lack existing Google Groups that align with your desired Metabase groups.
|
||||
- [Map to existing Google Groups](https://support.google.com/a/answer/11143403?hl=en).
|
||||
- Set up a multi-value [custom user attribute](https://knowledge.workspace.google.com/admin/users/create-custom-attributes-for-user-profiles) for your users. Recommended if you manage multiple SAML app permissions in Google or if you lack existing Google Groups that align with your desired Metabase groups.
|
||||
- [Map to existing Google Groups](https://knowledge.workspace.google.com/admin/apps/about-group-membership-mapping).
|
||||
2. Follow the instructions for [Configuring the group schema](./authenticating-with-saml.md#configuring-the-group-schema-in-metabase) using the `App attribute` that you used in Google as the Group attribute name in Metabase.
|
||||
|
||||
## Troubleshooting SAML issues
|
||||
|
||||
@@ -40,7 +40,7 @@ Metabase offers several options for authentication.
|
||||
|
||||
### SSO for Metabase Pro and Enterprise plans
|
||||
|
||||
With [Pro and Enterprise plans](https://www.metabase.com/pricing/), you have more options to help orchestrate lots of people and groups.
|
||||
With [Pro and Enterprise plans](https://www.metabase.com/pricing), you have more options to help orchestrate lots of people and groups.
|
||||
|
||||
- [JWT][jwt]
|
||||
- LDAP advanced features
|
||||
|
||||
@@ -92,7 +92,7 @@ People in groups with Curate access to a collection can pin items in the collect
|
||||
|
||||
To pin an item, select the **pin icon** next to the item's name.
|
||||
|
||||
Note that collections themselves can't be pinned. If you're running on a [Pro or Enterprise plan](https://www.metabase.com/pricing/), admins can designate [Official Collections][official-collections].
|
||||
Note that collections themselves can't be pinned. If you're running on a [Pro or Enterprise plan](https://www.metabase.com/pricing), admins can designate [Official Collections][official-collections].
|
||||
|
||||
## Special collections
|
||||
|
||||
|
||||
@@ -78,7 +78,7 @@ When, for example, Tenant A logs in, they'll only see the `Tenant_ID` and `Metri
|
||||
|
||||
Impersonation lets you map user attributes to database roles, which lets you do row-level security based on the database privileges you give each role.
|
||||
|
||||
Check out this [article on impersonation](https://www.metabase.com/learn/metabase-basics/administration/permissions/impersonation).
|
||||
Check out [impersonation access](./impersonation.md).
|
||||
|
||||
## One database per customer
|
||||
|
||||
|
||||
@@ -55,7 +55,7 @@ Impersonation uses database roles to run queries on your database, but there sti
|
||||
|
||||
You can then create roles in the database that have more restrictive access to the database (like row-level or table-level security). When the role is passed to the database using impersonation, the engine will return a subset of the data, or restrict the query altogether.
|
||||
|
||||
> For **Redshift** databases, the user account Metabase uses to [connect to your Redshift database](../databases/connections/redshift.md) must be a superuser, as Metabase will need to be able to run the [SET SESSION AUTHORIZATION](https://docs.aws.amazon.com/redshift/latest/dg/r_SET_SESSION_AUTHORIZATION) command, which can only be run by a database superuser.
|
||||
> For **Redshift** databases, the user account Metabase uses to [connect to your Redshift database](../databases/connections/redshift.md) must be a superuser, as Metabase will need to be able to run the [SET SESSION AUTHORIZATION](https://docs.aws.amazon.com/redshift/latest/dg/r_SET_SESSION_AUTHORIZATION.html) command, which can only be run by a database superuser.
|
||||
|
||||
### In your database, set up roles
|
||||
|
||||
|
||||
@@ -141,6 +141,6 @@ Save it to the "Admins collection" you created in the setup (or any collection t
|
||||
|
||||
## Further reading
|
||||
|
||||
- [Setting row-level permissions](https://www.metabase.com/learn/metabase-basics/administration/permissions/data-sandboxing-row-permissions)
|
||||
- [Custom views: limiting access to columns](https://www.metabase.com/learn/metabase-basics/administration/permissions/data-sandboxing-column-permissions)
|
||||
- [Tutorial: setting row-level permissions](https://www.metabase.com/learn/metabase-basics/administration/permissions/row-permissions)
|
||||
- [Tutorial: limiting access to columns](https://www.metabase.com/learn/metabase-basics/administration/permissions/column-permissions)
|
||||
- [Configuring permissions for embedding](../permissions/embedding.md)
|
||||
|
||||
@@ -12,7 +12,7 @@ redirect_from:
|
||||
|
||||
Row and column security lets you give granular permissions for different groups of people. You can change what data a group [can view](./data.md#can-view-data-permission), as well as what data a group [can query](./data.md#create-queries-permissions) with the query builder.
|
||||
|
||||
You can use row and column security to set up [self-service analytics](https://www.metabase.com/learn/metabase-basics/embedding/multi-tenant-self-service-analytics), so that each of your customers can only view the rows that match their customer ID. For example, if you have an Accounts table with information about your customers, you can add permissions to the table so that each customer only sees the data relevant to them.
|
||||
You can use row and column security to set up [self-service analytics](./embedding.md), so that each of your customers can only view the rows that match their customer ID. For example, if you have an Accounts table with information about your customers, you can add permissions to the table so that each customer only sees the data relevant to them.
|
||||
|
||||

|
||||
|
||||
|
||||
@@ -32,7 +32,7 @@ You can create a Snippet folder from the **Snippets** menu in the [SQL editor](.
|
||||
|
||||
### Creating a new Snippet
|
||||
|
||||
On [some plans](https://www.metabase.com/pricing/), when creating a Snippet, you'll also see an additional option to add that snippet to an existing folder (the **Folder this should be in** option).
|
||||
On [some plans](https://www.metabase.com/pricing), when creating a Snippet, you'll also see an additional option to add that snippet to an existing folder (the **Folder this should be in** option).
|
||||
|
||||

|
||||
|
||||
@@ -88,4 +88,4 @@ Because of how snippet folder permissions work, we recommend that you consider s
|
||||
|
||||
## Further reading
|
||||
|
||||
- [Snippets](https://www.metabase.com/learn/metabase-basics/querying-and-dashboards/sql-in-metabase/snippets).
|
||||
- [Snippets](../questions/native-editor/snippets.md).
|
||||
|
||||
@@ -45,7 +45,7 @@ By default, Metabase will export the pivoted results, but you'll have the option
|
||||
|
||||

|
||||
|
||||
The pivoted results will display as a flat table in Excel, not a native [Excel PivotTable](https://support.microsoft.com/en-us/office/overview-of-pivottables-and-pivotcharts-527c8fa3-02c0-445a-a2db-7794676bce96).
|
||||
The pivoted results will display as a flat table in Excel, not a native [Excel PivotTable](https://support.microsoft.com/en-us/excel/overview-of-pivottables-and-pivotcharts).
|
||||
|
||||
If you want to use a native Excel PivotTable, you'll instead want to export the raw, unaggregated rows of data that you'll need. That is, you'll want to undo any of the summarizations and groupings in your question, _then_ export the results.
|
||||
|
||||
@@ -68,7 +68,7 @@ By default, Metabase will export the first 1048575 rows of results.
|
||||
|
||||
### Cell character limit in Excel exports
|
||||
|
||||
When exporting results to an Excel document (.xlsx), Metabase will limit the number of characters per cell to 32,767, which is the [character limit enforced by Excel](https://support.microsoft.com/en-us/office/excel-specifications-and-limit-1672b34d-7043-467e-8e27-269d656771c3). If you have a bonkers number of characters in a single cell, Metabase will truncate the content to fit within that limit.
|
||||
When exporting results to an Excel document (.xlsx), Metabase will limit the number of characters per cell to 32,767, which is the [character limit enforced by Excel](https://support.microsoft.com/en-us/excel/excel-specifications-and-limits). If you have a bonkers number of characters in a single cell, Metabase will truncate the content to fit within that limit.
|
||||
|
||||
## Exporting results from document cards
|
||||
|
||||
@@ -138,7 +138,7 @@ By default, data exports (PDFs, PNGs, alert and subscription emails, etc.) featu
|
||||
|
||||

|
||||
|
||||
To remove the Metabase logo and branding on exports, you'll need to subscribe to a [Pro or Enterprise plan](https://www.metabase.com/pricing/).
|
||||
To remove the Metabase logo and branding on exports, you'll need to subscribe to a [Pro or Enterprise plan](https://www.metabase.com/pricing).
|
||||
|
||||
## Further reading
|
||||
|
||||
|
||||
@@ -63,7 +63,7 @@ FROM
|
||||
## Further reading
|
||||
|
||||
- [Models](../../data-modeling/models.md)
|
||||
- [Snippets](https://www.metabase.com/learn/metabase-basics/querying-and-dashboards/sql-in-metabase/sql-snippets)
|
||||
- [Snippets](./snippets.md)
|
||||
- [Snippets vs Saved Questions vs. Views](https://www.metabase.com/learn/metabase-basics/querying-and-dashboards/sql-in-metabase/organizing-sql)
|
||||
- [SQL troubleshooting guide](../../troubleshooting-guide/sql.md).
|
||||
|
||||
|
||||
@@ -6,7 +6,7 @@ title: RegexExtract
|
||||
|
||||
> ⚠️ `regexExtract` is unavailable for MongoDB, SQLite, and SQL Server. For Druid, `regexExtract` is only available for the Druid-JDBC driver.
|
||||
|
||||
`regexExtract` uses [regular expressions (regex)](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions) to get a specific part of your text.
|
||||
`regexExtract` uses [regular expressions (regex)](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_expressions) to get a specific part of your text.
|
||||
|
||||
`regexExtract` is ideal for text that has little to no structure, like URLs or freeform survey responses. If you're working with strings in predictable formats like SKU numbers, IDs, or other types of codes, check out the simpler [substring](../expressions/substring.md) expression instead.
|
||||
|
||||
@@ -25,11 +25,11 @@ Use `regexExtract` to create custom columns with shorter, more readable labels f
|
||||
|
||||
Let's say that you have web data with a lot of different URLs, and you want to map each URL to a shorter, more readable campaign name.
|
||||
|
||||
| URL | Campaign Name |
|
||||
| ----------------------------------------------------- | ------------- |
|
||||
| https://www.metabase.com/docs/?utm_campaign=alice | alice |
|
||||
| https://www.metabase.com/learn/?utm_campaign=neo | neo |
|
||||
| https://www.metabase.com/glossary/?utm_campaign=candy | candy |
|
||||
| URL | Campaign Name |
|
||||
| ---------------------------------------------------- | ------------- |
|
||||
| https://www.metabase.com/docs?utm_campaign=alice | alice |
|
||||
| https://www.metabase.com/learn?utm_campaign=neo | neo |
|
||||
| https://www.metabase.com/glossary?utm_campaign=candy | candy |
|
||||
|
||||
You can create a custom column **Campaign Name** with the expression:
|
||||
|
||||
@@ -37,7 +37,7 @@ You can create a custom column **Campaign Name** with the expression:
|
||||
regexExtract([URL], "^[^?#]+\?utm_campaign=(.*)")
|
||||
```
|
||||
|
||||
Here, the regex pattern [`^[^?#]+\?` matches all valid URL strings](https://www.oreilly.com/library/view/regular-expressions-cookbook/9780596802837/ch07s13.html). You can replace `utm_campaign=` with whatever query parameter you like. At the end of the regex pattern, the [capturing group](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_Expressions/Groups_and_Backreferences) `(.*)` gets all of the characters that appear after the query parameter `utm_campaign=`.
|
||||
Here, the regex pattern [`^[^?#]+\?` matches all valid URL strings](https://www.oreilly.com/library/view/regular-expressions-cookbook/9780596802837/ch07s13.html). You can replace `utm_campaign=` with whatever query parameter you like. At the end of the regex pattern, the [capturing group](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Guide/Regular_expressions/Groups_and_backreferences) `(.*)` gets all of the characters that appear after the query parameter `utm_campaign=`.
|
||||
|
||||
Now, you can use **Campaign Name** in places where you need clean labels, such as [filter dropdown menus](../../../dashboards/filters.md), [charts](../../visualizations/visualizing-results.md), and [embedding parameters](../../../embedding/static-embedding-parameters.md).
|
||||
|
||||
|
||||
@@ -176,7 +176,7 @@ If you have a bar chart like Count of Users by Age, where the x-axis is a number
|
||||
|
||||
## Custom visualizations
|
||||
|
||||
On [Pro and Enterprise plans](https://www.metabase.com/pricing/), admins can add [custom visualizations](./custom.md): chart types you build with the Custom Visualizations SDK and upload to Metabase. Once a custom visualization is installed, it shows up in the visualization picker alongside the built-in charts.
|
||||
On [Pro and Enterprise plans](https://www.metabase.com/pricing), admins can add [custom visualizations](./custom.md): chart types you build with the Custom Visualizations SDK and upload to Metabase. Once a custom visualization is installed, it shows up in the visualization picker alongside the built-in charts.
|
||||
|
||||
## Styling and formatting data in charts
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@ title: I can't see my tables
|
||||
You've connected Metabase to a database, but:
|
||||
|
||||
- you don't see the tables in the [Table Metadata](../data-modeling/metadata-editing.md) section of the Admin Panel,
|
||||
- the tables don't appear in the [Data Browser](https://www.metabase.com/learn/metabase-basics/querying-and-dashboards/data-browser),
|
||||
- the tables don't appear in the [Data Browser](../exploration-and-organization/data-model-reference.md),
|
||||
- the tables don't show up as possible data sources when you create a query using the Query Builder, or
|
||||
- you can no longer see tables that you used to be able to see.
|
||||
|
||||
|
||||
@@ -8,7 +8,7 @@ redirect_from:
|
||||
|
||||
If you can't connect to your database, you'll need to figure out if the problem is happening with Metabase or your database server.
|
||||
|
||||
If your database connection is successful, but the tables aren't showing up in the [Data Browser](https://www.metabase.com/learn/metabase-basics/querying-and-dashboards/data-browser), go to [Troubleshooting missing tables](./cant-see-tables.md).
|
||||
If your database connection is successful, but the tables aren't showing up in the [Data Browser](../exploration-and-organization/data-model-reference.md), go to [Troubleshooting missing tables](./cant-see-tables.md).
|
||||
|
||||
## Troubleshooting connections to Metabase
|
||||
|
||||
@@ -127,7 +127,7 @@ If you can’t solve your problem using the troubleshooting guides:
|
||||
|
||||
- Search or ask the [Metabase community][discourse].
|
||||
- Search for [known bugs or limitations][known-issues].
|
||||
- Hire a [Metabase Expert](https://www.metabase.com/partners/){:target="\_blank"}.
|
||||
- Hire a [Metabase Expert](https://www.metabase.com/partners){:target="\_blank"}.
|
||||
|
||||
[discourse]: https://discourse.metabase.com/
|
||||
[known-issues]: ./known-issues.md
|
||||
|
||||
@@ -28,7 +28,7 @@ Metabase will log errors, both on the server and in the browser console, dependi
|
||||
**Checking for Javascript console errors:** Metabase will send debugging information and errors to your browser's developer console. To open the developer console, follow the instructions for your web browser:
|
||||
|
||||
- [Chrome](https://developers.google.com/web/tools/chrome-devtools/open#console)
|
||||
- [Edge](https://docs.microsoft.com/en-us/microsoft-edge/devtools-guide-chromium)
|
||||
- [Edge](https://learn.microsoft.com/en-us/microsoft-edge/devtools/landing/)
|
||||
- [Firefox](https://firefox-source-docs.mozilla.org/devtools-user/)
|
||||
- [Safari](https://support.apple.com/guide/safari-developer/develop-menu-dev39df999c1/mac)
|
||||
|
||||
|
||||
@@ -85,7 +85,7 @@ Metabase adds new features and squashes bugs with each release. [Upgrading to th
|
||||
[appdb]: ./loading-from-h2.md
|
||||
[bugs]: ./bugs.md
|
||||
[cant-see-tables]: ./cant-see-tables.md
|
||||
[cloud]: https://www.metabase.com/cloud/
|
||||
[cloud]: https://www.metabase.com/cloud
|
||||
[db-connection]: ./db-connection.md
|
||||
[db-performance]: ./db-performance.md
|
||||
[docker]: ./docker.md
|
||||
|
||||
@@ -50,7 +50,7 @@ If you can’t solve your problem using the troubleshooting guides:
|
||||
[collection-permissions]: ../permissions/collections.md
|
||||
[collections-restricted-data]: ./data-permissions.md#a-user-group-can-view-collections-that-contain-restricted-data
|
||||
[connecting-database]: ../databases/connecting.md
|
||||
[data-browser]: https://www.metabase.com/learn/metabase-basics/querying-and-dashboards/data-browser
|
||||
[data-browser]: ../exploration-and-organization/data-model-reference.md
|
||||
[data-model]: ../data-modeling/metadata-editing.md
|
||||
[data-permissions]: ../permissions/data.md
|
||||
[discourse]: https://discourse.metabase.com/
|
||||
|
||||
@@ -77,7 +77,7 @@ Connecting to a running Metabase with VisualVM makes a lot of runtime informatio
|
||||
|
||||
### Heap dump
|
||||
|
||||
When running into memory-related issues, typically the first question to ask is: what is consuming extra memory? A heap dump will take a snapshot of everything in memory at that specific point of time. That memory snapshot can be analyzed later by tools like the [Eclipse Memory Analyzer Tool](https://www.eclipse.org/mat/). Create a heap dump from the "Monitor" tab:
|
||||
When running into memory-related issues, typically the first question to ask is: what is consuming extra memory? A heap dump will take a snapshot of everything in memory at that specific point of time. That memory snapshot can be analyzed later by tools like the [Eclipse Memory Analyzer Tool](https://eclipse.dev/mat/). Create a heap dump from the "Monitor" tab:
|
||||
|
||||

|
||||
|
||||
|
||||
@@ -166,16 +166,16 @@ The administrator can [create a new group][groups] to capture precisely who's al
|
||||
|
||||
[authenticating-with-saml]: ../people-and-groups/authenticating-with-saml.md
|
||||
[cant-see-tables]: cant-see-tables.md
|
||||
[column-permissions]: https://www.metabase.com/learn/metabase-basics/administration/permissions/data-sandboxing-column-permissions
|
||||
[column-permissions]: https://www.metabase.com/learn/metabase-basics/administration/permissions/column-permissions
|
||||
[data-model]: ../data-modeling/metadata-editing.md
|
||||
[data-permissions]: https://www.metabase.com/learn/metabase-basics/administration/permissions/data-permissions
|
||||
[groups]: ../people-and-groups/managing.md#groups
|
||||
[jwt-auth]: ../people-and-groups/authenticating-with-jwt.md
|
||||
[locked-parameters]: https://www.metabase.com/learn/metabase-basics/embedding/charts-and-dashboards#hide-or-lock-parameters-to-restrict-what-data-is-shown
|
||||
[locked-parameters]: ../embedding/guest-embedding.md#locked-parameters
|
||||
[permissions]: https://www.metabase.com/learn/metabase-basics/administration/permissions/data-permissions
|
||||
[public-sharing]: ../embedding/public-links.md
|
||||
[row-permissions]: https://www.metabase.com/learn/metabase-basics/administration/permissions/data-sandboxing-row-permissions
|
||||
[row-permissions]: https://www.metabase.com/learn/metabase-basics/administration/permissions/row-permissions
|
||||
[row-and-column-security]: ../permissions/row-and-column-security.md
|
||||
[static-embedding]: https://www.metabase.com/learn/metabase-basics/embedding/charts-and-dashboards#enable-embedding-in-other-applications
|
||||
[static-embedding]: ../embedding/guest-embedding.md
|
||||
[troubleshooting-permissions]: ./permissions.md
|
||||
[unsupported-databases]: ../permissions/row-and-column-security.md#limitations-of-row-and-column-security
|
||||
|
||||
@@ -93,4 +93,4 @@ WARNING: sun.reflect.Reflection.getCallerClass is not supported. This will impac
|
||||
|
||||
If you see the above error, ignore it. Your Metabase is perfectly healthy and performing as it should.
|
||||
|
||||
[eclipse-memory-analyzer]: https://www.eclipse.org/mat/
|
||||
[eclipse-memory-analyzer]: https://eclipse.dev/mat/
|
||||
|
||||
@@ -33,4 +33,4 @@ If you can’t solve your problem using the troubleshooting guides:
|
||||
|
||||
- Search or ask the [Metabase community](https://discourse.metabase.com/).
|
||||
- Search for [known bugs or limitations](./known-issues.md).
|
||||
- Hire a [Metabase Expert](https://www.metabase.com/partners/){:target="\_blank"}.
|
||||
- Hire a [Metabase Expert](https://www.metabase.com/partners){:target="\_blank"}.
|
||||
|
||||
@@ -49,7 +49,7 @@ Metabase will take you to the relevant usage dashboard and plug in the item's ID
|
||||
|
||||
By default, Metabase will keep the data about [activity](./usage-analytics-reference.md#activity-log), [views](./usage-analytics-reference.md#view-log), and [query execution](./usage-analytics-reference.md#query-log) for **720 days**. Twice a day, Metabase will delete rows older than this threshold. You can change this limit by adjusting the environment variable [`MB_AUDIT_MAX_RETENTION_DAYS`](../configuring-metabase/environment-variables.md#mb_audit_max_retention_days).
|
||||
|
||||
If you're on the Metabase Open Source Edition, or on the [Metabase Cloud Starter plan](https://www.metabase.com/pricing/), Metabase doesn't collect [Activity](./usage-analytics-reference.md#activity-log) and [View](./usage-analytics-reference.md#view-log) data. If you upgrade to a Pro or Enterprise plan, either self-hosted or Cloud, you'll only see View and Activity data in Usage Analytics _starting from the time when you upgraded_.
|
||||
If you're on the Metabase Open Source Edition, or on the [Metabase Cloud Starter plan](https://www.metabase.com/pricing), Metabase doesn't collect [Activity](./usage-analytics-reference.md#activity-log) and [View](./usage-analytics-reference.md#view-log) data. If you upgrade to a Pro or Enterprise plan, either self-hosted or Cloud, you'll only see View and Activity data in Usage Analytics _starting from the time when you upgraded_.
|
||||
|
||||
## Creating custom reports
|
||||
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user