feat: funciones Go para API Metabase y tipo MetabaseClient

Añade funciones Go stub para la API de Metabase en dominio infra:
auth, CRUD de cards, dashboards y users, execute_query y execute_card.
Incluye tipo MetabaseClient y helper HTTP compartido.
Todas las funciones son impuras con stubs not-implemented.
This commit is contained in:
2026-03-28 20:32:24 +01:00
parent 49eecd0c87
commit 9e6bea681f
40 changed files with 1640 additions and 0 deletions
@@ -0,0 +1,57 @@
---
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]
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 |