Recupera un elenco paginato di dashboard a cui hai accesso per visualizzare o modificare


Elenco dei Dashboard

Recupera i dashboard a cui hai accesso per visualizzare. Questo include i dashboard che hai creato e i dashboard che ti sono stati condivisi.

Esempio di Base

query ListDashboards {
  dashboards(filter: { companyId: "company_123" }) {
    items {
      id
      title
      createdBy {
        id
        name
        email
      }
      createdAt
      updatedAt
    }
    pageInfo {
      hasNextPage
      hasPreviousPage
      startCursor
      endCursor
    }
  }
}

Esempio Avanzato

query ListDashboardsAdvanced {
  dashboards(
    filter: { 
      companyId: "company_123"
      projectId: "proj_456"  # Optional: filter by project
    }
    sort: [updatedAt_DESC, title_ASC]
    skip: 0
    take: 10
  ) {
    items {
      id
      title
      createdBy {
        id
        name
        email
      }
      dashboardUsers {
        id
        role
        user {
          id
          name
          email
        }
      }
      createdAt
      updatedAt
    }
    pageInfo {
      hasNextPage
      hasPreviousPage
      startCursor
      endCursor
    }
  }
}

Parametri di Input

DashboardFilterInput

Parametro Tipo Richiesto Descrizione
companyId String! ✅ Sì ID dell'azienda per filtrare i dashboard
projectId String No ID del progetto opzionale per filtrare i dashboard

Opzioni di Ordinamento

Valore di Ordinamento Descrizione
title_ASC Ordina per titolo in ordine crescente
title_DESC Ordina per titolo in ordine decrescente
createdBy_ASC Ordina per creatore in ordine crescente
createdBy_DESC Ordina per creatore in ordine decrescente
updatedAt_ASC Ordina per tempo di aggiornamento in ordine crescente
updatedAt_DESC Ordina per tempo di aggiornamento in ordine decrescente (predefinito)

Parametri di Paginazione

Parametro Tipo Predefinito Descrizione
skip Int 0 Numero di elementi da saltare
take Int 20 Numero di elementi da restituire (max 100)

Campi di Risposta

DashboardPagination

Campo Tipo Descrizione
items [Dashboard!]! Array di oggetti dashboard
pageInfo PageInfo! Informazioni sulla paginazione

Dashboard

Campo Tipo Descrizione
id ID! Identificatore unico per il dashboard
title String! Nome visualizzato del dashboard
createdBy User! Utente che ha creato il dashboard
dashboardUsers [DashboardUser!] Utenti con accesso a questo dashboard
createdAt DateTime! Quando è stato creato il dashboard
updatedAt DateTime! Quando è stato modificato l'ultimo dashboard

DashboardUser

Campo Tipo Descrizione
id ID! Identificatore unico per l'utente del dashboard
role DashboardRole! Ruolo dell'utente (VISUALIZZATORE o EDITORE)
user User! Informazioni sull'utente

Controllo Accessi

Visibilità del Dashboard

Puoi vedere solo i dashboard in cui sei:

  • Il creatore del dashboard
  • Esplicitamente autorizzato tramite condivisione del dashboard

Permessi Richiesti

  • Autenticazione Richiesta: Devi essere connesso
  • Accesso all'Azienda: Devi avere accesso all'azienda specificata
  • Accesso al Progetto: Se filtri per progetto, devi avere accesso a quel progetto

Risposte di Errore

Azienda Non Trovata

{
  "errors": [{
    "message": "Company not found",
    "extensions": {
      "code": "COMPANY_NOT_FOUND"
    }
  }]
}

Progetto Non Trovato

{
  "errors": [{
    "message": "Project not found", 
    "extensions": {
      "code": "PROJECT_NOT_FOUND"
    }
  }]
}

Casi d'Uso Comuni

Elenco di Tutti i Dashboard dell'Azienda

query CompanyDashboards {
  dashboards(filter: { companyId: "company_123" }) {
    items {
      id
      title
      createdBy { name }
    }
  }
}

Elenco dei Dashboard Specifici per Progetto

query ProjectDashboards {
  dashboards(filter: { 
    companyId: "company_123"
    projectId: "proj_456"
  }) {
    items {
      id
      title
    }
  }
}

Elenco Paginato dei Dashboard

query PaginatedDashboards {
  dashboards(
    filter: { companyId: "company_123" }
    skip: 20
    take: 10
  ) {
    items {
      id
      title
    }
    pageInfo {
      hasNextPage
      hasPreviousPage
    }
  }
}

Migliori Pratiche

Prestazioni

  • Usa la paginazione per migliori prestazioni con elenchi di dashboard grandi
  • Richiedi solo i campi di cui hai bisogno nella tua applicazione
  • Considera di memorizzare in cache gli elenchi di dashboard per dati frequentemente accessibili

Filtraggio

  • Filtra sempre per azienda per garantire un'adeguata isolamento dei dati
  • Usa il filtraggio per progetto quando lavori con dashboard specifici per progetto
  • Combina i filtri per restringere i risultati in modo efficiente

Ordinamento

  • L'ordinamento predefinito è per updatedAt_DESC (più recentemente aggiornato per primo)
  • Usa l'ordinamento per titolo per un'organizzazione alfabetica
  • Combina più criteri di ordinamento per esigenze di ordinamento complesse

Operazioni Correlate

Assistente AI

Le risposte sono generate utilizzando l'IA e potrebbero contenere errori.

Come posso aiutarti?

Chiedimi qualsiasi cosa su Blue o su questa documentazione.

Invia per inviare • Maiusc+Invio per una nuova riga • ⌘I per aprire