package
Version:
v0.13.0
Opens a new window with list of versions in this module.
Published: Apr 19, 2026
License: Apache-2.0
Opens a new window with license information.
Imports: 13
Opens a new window with list of imports.
Imported by: 0
Opens a new window with list of known importers.
README
¶
Extract dashboard metadata from a Metabase server.
Usage
source:
name: metabase
config:
host: http://localhost:3000
instance_label: my-metabase
username: meteor_tester
password: meteor_pass_1234
Configuration
| Key |
Type |
Required |
Description |
host |
string |
Yes |
URL of the Metabase server. |
instance_label |
string |
Yes |
Instance alias used as part of the URN. |
username |
string |
Yes (unless session_id is set) |
Username or email for authentication. |
password |
string |
No |
Password for authentication. |
session_id |
string |
No |
Existing Metabase session ID. When set, username and password are ignored. |
Entities
- Entity type:
dashboard
- URN format:
urn:metabase:{scope}:collection:{dashboard_id}
Properties
| Property |
Type |
Description |
properties.id |
int |
Dashboard ID. |
properties.collection_id |
int |
Collection ID the dashboard belongs to. |
properties.creator_id |
int |
ID of the dashboard creator. |
properties.create_time |
string |
Creation timestamp (RFC 3339). |
properties.update_time |
string |
Last update timestamp (RFC 3339). |
properties.charts |
[]object |
List of card/chart objects (see below). |
Chart sub-fields
| Field |
Type |
Description |
urn |
string |
Card URN (metabase::{instance_label}/card/{card_id}). |
name |
string |
Card name. |
source |
string |
Always metabase. |
description |
string |
Card description (if set). |
dashboard_urn |
string |
Parent dashboard URN. |
id |
int |
Card ID. |
collection_id |
int |
Collection ID. |
creator_id |
int |
Creator ID. |
database_id |
int |
Database ID backing the card. |
table_id |
int |
Table ID backing the card. |
query_average_duration |
int |
Average query duration in ms. |
display |
string |
Card display type. |
archived |
bool |
Whether the card is archived. |
upstreams |
[]string |
Upstream table URNs (if resolved). |
Edges
| Type |
Source URN |
Target URN |
Description |
derived_from |
Upstream table URN |
Dashboard URN |
One edge per unique upstream table resolved from cards. Supports postgres, mysql, bigquery, and h2 databases. |
owned_by |
Dashboard URN |
User URN |
Dashboard is owned by the user who created it. |
Contributing
Refer to the contribution guide for information on contributing to this module.
Documentation
¶
type Config struct {
Host string `json:"host" yaml:"host" mapstructure:"host" validate:"required,url"`
InstanceLabel string `json:"instance_label" yaml:"instance_label" mapstructure:"instance_label" validate:"required"`
Username string `json:"username" yaml:"username" mapstructure:"username" validate:"required_without=SessionID"`
Password string `json:"password" yaml:"password" mapstructure:"password"`
SessionID string `json:"session_id" yaml:"session_id" mapstructure:"session_id"`
}
Config holds the set of configuration for the metabase extractor
type Extractor struct {
}
Extractor manages the extraction of data
from the metabase server
New returns a pointer to an initialized Extractor Object
Extract collects the metadata from the source. The metadata is collected through the out channel
Source Files
¶
Directories
¶
Click to show internal directories.
Click to hide internal directories.