---
name: metabase_list_dashboards
kind: function
lang: go
domain: infra
version: "1.0.0"
purity: impure
signature: "func MetabaseListDashboards(client MetabaseClient, filter string) ([]map[string]any, error)"
description: "Lista dashboards de Metabase con filtro opcional. Retorna array de dashboards resumidos (sin dashcards). Endpoint: GET /api/dashboard."
tags: [metabase, dashboard, list, api]
uses_functions: []
uses_types: [MetabaseClient_go_infra]
returns: []
returns_optional: false
error_type: "error_go_core"
imports: [fmt]
params:
  - name: client
    desc: "cliente MetabaseClient autenticado"
  - name: filter
    desc: "filtro opcional (all, mine, archived o vacio para todas)"
output: "slice de maps con resumen de cada dashboard (sin dashcards completas)"
tested: false
tests: []
test_file_path: ""
file_path: "functions/infra/metabase_list_dashboards.go"
---

## Ejemplo

```go
// Listar todos los dashboards
dashboards, err := MetabaseListDashboards(client, "all")

// Solo mis dashboards
dashboards, err := MetabaseListDashboards(client, "mine")

// Dashboards archivados
dashboards, err := MetabaseListDashboards(client, "archived")
```

## Notas

### Parametros para un LLM

| Parametro | Tipo | Requerido | Descripcion |
|-----------|------|-----------|-------------|
| client | MetabaseClient | si | Cliente autenticado |
| filter | string | no | "all", "mine", "archived". Vacio = todas |

Retorna dashboards resumidos (sin cards). Para ver las cards de un dashboard, usar MetabaseGetDashboard.

### Campos principales de cada dashboard

| Campo | Tipo | Descripcion |
|-------|------|-------------|
| id | float64 | ID del dashboard |
| name | string | Nombre |
| description | string | Descripcion |
| collection_id | float64 | Coleccion contenedora |
| creator_id | float64 | ID del creador |
| archived | bool | Archivado |
| created_at | string | Fecha creacion |
