Hämta en paginerad lista över instrumentpaneler som du har tillgång till att visa eller ändra
Lista instrumentpaneler
Hämta instrumentpaneler som du har tillgång till att visa. Detta inkluderar instrumentpaneler som du har skapat och instrumentpaneler som har delats med dig.
Grundläggande exempel
query ListDashboards {
dashboards(filter: { companyId: "company_123" }) {
items {
id
title
createdBy {
id
name
email
}
createdAt
updatedAt
}
pageInfo {
hasNextPage
hasPreviousPage
startCursor
endCursor
}
}
}
Avancerat exempel
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
}
}
}
Inmatningsparametrar
Parameter |
Typ |
Obligatorisk |
Beskrivning |
companyId |
String! |
✅ Ja |
Företags-ID för att filtrera instrumentpaneler |
projectId |
String |
Nej |
Valfritt projekt-ID för att filtrera instrumentpaneler |
Sorteringsalternativ
Sorteringsvärde |
Beskrivning |
title_ASC |
Sortera efter titel stigande |
title_DESC |
Sortera efter titel fallande |
createdBy_ASC |
Sortera efter skapare stigande |
createdBy_DESC |
Sortera efter skapare fallande |
updatedAt_ASC |
Sortera efter uppdateringstid stigande |
updatedAt_DESC |
Sortera efter uppdateringstid fallande (standard) |
Paginering parametrar
Parameter |
Typ |
Standard |
Beskrivning |
skip |
Int |
0 |
Antal objekt att hoppa över |
take |
Int |
20 |
Antal objekt att returnera (max 100) |
Svarsfält
Fält |
Typ |
Beskrivning |
items |
[Dashboard!]! |
Array av instrumentpanelsobjekt |
pageInfo |
PageInfo! |
Pagineringinformation |
Dashboard
Fält |
Typ |
Beskrivning |
id |
ID! |
Unik identifierare för instrumentpanelen |
title |
String! |
Visningsnamn för instrumentpanelen |
createdBy |
User! |
Användare som skapade instrumentpanelen |
dashboardUsers |
[DashboardUser!] |
Användare med tillgång till denna instrumentpanel |
createdAt |
DateTime! |
När instrumentpanelen skapades |
updatedAt |
DateTime! |
När instrumentpanelen senast ändrades |
DashboardUser
Fält |
Typ |
Beskrivning |
id |
ID! |
Unik identifierare för instrumentpanelsanvändaren |
role |
DashboardRole! |
Användarens roll (VISARE eller REDIGERARE) |
user |
User! |
Användarinformation |
Åtkomstkontroll
Instrumentpanelens synlighet
Du kan endast se instrumentpaneler där du är:
- Skaparen av instrumentpanelen
- Uttryckligen beviljad tillgång via delning av instrumentpanelen
Nödvändiga behörigheter
- Autentisering krävs: Du måste vara inloggad
- Företagsåtkomst: Du måste ha tillgång till det angivna företaget
- Projektåtkomst: Om du filtrerar efter projekt måste du ha tillgång till det projektet
Felmeddelanden
Företag hittades inte
{
"errors": [{
"message": "Company not found",
"extensions": {
"code": "COMPANY_NOT_FOUND"
}
}]
}
Projekt hittades inte
{
"errors": [{
"message": "Project not found",
"extensions": {
"code": "PROJECT_NOT_FOUND"
}
}]
}
Vanliga användningsfall
query CompanyDashboards {
dashboards(filter: { companyId: "company_123" }) {
items {
id
title
createdBy { name }
}
}
}
Lista projektspecifika instrumentpaneler
query ProjectDashboards {
dashboards(filter: {
companyId: "company_123"
projectId: "proj_456"
}) {
items {
id
title
}
}
}
Paginerad instrumentpanellista
query PaginatedDashboards {
dashboards(
filter: { companyId: "company_123" }
skip: 20
take: 10
) {
items {
id
title
}
pageInfo {
hasNextPage
hasPreviousPage
}
}
}
Bästa praxis
Prestanda
- Använd paginering för bättre prestanda med stora instrumentpanellistor
- Begär endast de fält du behöver i din applikation
- Överväg att cacha instrumentpaneler för ofta åtkomna data
Filtrering
- Filtrera alltid efter företag för att säkerställa korrekt dataisolering
- Använd projektfiltrering när du arbetar med projektspecifika instrumentpaneler
- Kombinera filter för att effektivt snäva ner resultaten
Sortering
- Standard sortering är efter
updatedAt_DESC
(senast uppdaterad först)
- Använd titelsortering för alfabetisk organisering
- Kombinera flera sorteringskriterier för komplexa ordningsbehov
Relaterade operationer