Metabase
Metabase is an open-source business intelligence and data visualization platform. Connect to explore, query, and visualize data from multiple sources.
Power end-to-end data operations for your Metabase API with Nexla. Our bi-directional Metabase connector is purpose-built for Metabase, making it simple to ingest data, sync it across systems, and deliver it anywhere — all with no coding required. Nexla turns API-sourced data into ready-to-use, reusable data products and makes it easy to send data to Metabase or any other destination. With comprehensive monitoring, lineage tracking, and access controls, Nexla keeps your Metabase workflows fast, secure, and fully governed.
Features
Type: API
- Seamless API Integration: Connect to any endpoint as source or destination without coding, with automatic data product creation
- Visual Composition & Chaining: Build complex integrations using visual templates, chain API calls, and compose workflows with data validation and filtering
- API Proxy: Expose curated slices of your data securely with a secure and customizable API proxy that validates and transforms data on the fly
- Request optimization with intelligent batching, retry, and caching to minimize API calls and costs
Prerequisites
Before creating a Metabase credential, you need the base URL of your Metabase instance and a Metabase API key. Metabase authenticates API requests with an API key that is sent in the X-API-Key request header. Each API key is assigned to a permission group, and it inherits all of the data and collection permissions granted to that group.
To create a Metabase API key, follow these steps:
-
Sign in to your Metabase instance as a user with administrator privileges.
-
Click the gear (grid) icon in the upper right corner, and select Admin settings.
-
Open the Settings tab, then select Authentication from the left menu.
-
Locate the API Keys section and click Manage.
-
Click Create API Key.
-
Enter a descriptive Key name (e.g., "Nexla Integration").
-
Assign the key to a Group. The group determines the data and collection permissions the key will have, so choose a group whose permissions match the resources you intend to access through Nexla.
-
Click Create.
-
Copy the generated API key immediately and store it securely. Metabase will not display the key again, and a lost key cannot be recovered — you would need to regenerate a new one.
Your Metabase base URL is the root URL where you access your Metabase instance (for example, https://metabase.example.com). For detailed information about API keys and available endpoints, see the Metabase API Keys documentation and the Metabase API reference.
Authenticate
Credentials required
Authenticate using a Metabase API key via X-API-Key header.
| Field | Required | Secret | Description |
|---|---|---|---|
| API Key Value | Yes | Yes | An encoded string value used as a secret token to authenticate API requests |
| Base URL | Yes | No | Root URL of your Metabase instance (e.g., https://metabase.example.com). |
Create a credential in Nexla
-
After selecting the data source/destination type, click the Add Credential tile to open the Add New Credential overlay.
-
Enter a name for the credential in the Credential Name field and a short, meaningful description in the Credential Description field.
-
Enter the root URL of your Metabase instance in the Base URL field (e.g.,
https://metabase.example.com). This value is used to construct the API endpoint URLs for all requests to your Metabase instance. -
Enter your Metabase API key in the API Key Value field. This is the key you generated in Prerequisites. The API key is sent in the
X-API-Keyheader for all API requests and must be kept confidential.The API key inherits the permissions of the group it was assigned to in Metabase. If the key is compromised, delete it in your Metabase Admin settings and generate a new one.
For detailed information about API keys, authentication, and available endpoints, see the Metabase API Keys documentation and the Metabase API reference.
-
Click the Save button at the bottom of the overlay. The newly added credential will now appear in a tile on the Authenticate screen during data source/destination creation.
Use as a data source
To create a new data flow, navigate to the Integrate section, and click the New Data Flow button. Select the Metabase connector tile, then select the credential that will be used to connect to the Metabase instance, and click Next; or, create a new Metabase credential for use in this flow.
Endpoint templates
Nexla provides pre-built templates that can be used to rapidly configure data sources to ingest data from common Metabase endpoints. Select the endpoint from which this source will fetch data from the Endpoint pulldown menu. Available endpoint templates are listed in the expandable boxes below.
Once the selected endpoint template has been configured, click the Test button to the right of the endpoint selection menu to retrieve a sample of the data that will be fetched. Sample data will be displayed in the Endpoint Test Result panel on the right, allowing you to verify that the source is configured correctly before saving.
Manual configuration
Metabase data sources can also be manually configured to ingest data from any valid Metabase API endpoint, including endpoints not covered by the pre-built templates, chained API calls, or custom request parameters. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, endpoint URL, date/time and lookup macros, path to data, metadata, and request headers.
Once all of the relevant settings have been configured, click the Create button in the upper right corner of the screen to save and create the new Metabase data source. Nexla will now begin ingesting data from the configured endpoint and will organize any data that it finds into one or more Nexsets.
Use as a destination
Click the + icon on the Nexset that will be sent to the Metabase destination, and select the Send to Destination option from the menu. Select the Metabase connector from the list of available destination connectors, then select the credential that will be used to connect to the Metabase instance, and click Next; or, create a new Metabase credential for use in this flow.
Endpoint templates
Nexla provides pre-built templates that can be used to rapidly configure destinations to send data to common Metabase endpoints. Select the endpoint to which data will be sent from the Endpoint pulldown menu. Then, click on the template in the list below to expand it, and follow the instructions to configure additional endpoint settings.
Manual configuration
Metabase destinations can also be manually configured to send data to any valid Metabase API endpoint. Select the Advanced tab at the top of the configuration screen, and follow the instructions in Connect to Any API to configure the API method, data format, endpoint URL, request headers, attribute exclusions, record batching, and response webhooks.
Metabase APIs typically expect JSON format for most operations. For update operations, include the ID of the object to be updated at the end of the URL.
Save & activate
Once all endpoint settings have been configured, click the Done button in the upper right corner of the screen to save and create the destination. To send the data to the configured Metabase endpoint, open the destination resource menu, and select Activate.
The Nexset data will not be sent to the Metabase endpoint until the destination is activated. Destinations can be activated immediately or at a later time, providing full control over data movement.