Projekten i Blue utgör den grundläggande ramen för att organisera användare och data.
Lista alla projekt
Frågan projectList gör att du kan hämta projekt med kraftfulla filtrerings-, sorterings- och pagineringsalternativ.
Grundläggande exempel
query ProjectListQuery {
projectList(filter: { companyIds: ["ENTER COMPANY ID"] }) {
items {
id
uid
slug
name
description
archived
color
icon
createdAt
updatedAt
allowNotification
position
unseenActivityCount
todoListsMaxPosition
lastAccessedAt
isTemplate
automationsCount
totalFileCount
totalFileSize
todoAlias
}
pageInfo {
totalPages
totalItems
page
perPage
hasNextPage
hasPreviousPage
}
}
}
Avancerat exempel med filtrering och sortering
query FilteredProjectList {
projectList(
filter: {
companyIds: ["company-123", "company-456"]
archived: false
isTemplate: false
search: "marketing"
inProject: true
folderId: null # Get root-level projects only
}
sort: [position_ASC, name_ASC]
skip: 0
take: 50
) {
items {
id
name
slug
position
archived
}
totalCount
pageInfo {
totalItems
hasNextPage
}
}
}
Projektfält
Följande tabell beskriver alla tillgängliga fält för varje projekt i ProjectListQuery:
| Fält | Typ | Beskrivning |
|---|---|---|
| id | ID! | Unik identifierare för projektet |
| uid | String! | Användarvänlig unik identifierare för projektet |
| slug | String! | URL-vänligt namn på projektet |
| name | String! | Visningsnamn för projektet |
| description | String | Kort beskrivning av projektet |
| archived | Boolean | Boolean som indikerar om projektet är arkiverat |
| color | String | Färg kopplad till projektet för visuell identifiering |
| icon | String | Ikon kopplad till projektet för visuell identifiering |
| image | Image | Projektets omslagsbildsobjekt |
| createdAt | DateTime! | Tidsstämpel när projektet skapades |
| updatedAt | DateTime! | Tidsstämpel när projektet senast uppdaterades |
| allowNotification | Boolean! | Boolean som indikerar om aviseringar är aktiverade för projektet |
| position | Float! | Numeriskt värde som representerar projektets position i en lista |
| unseenActivityCount | Int! | Antal osedda aktiviteter i projektet |
| todoListsMaxPosition | Float! | Maximalt positionsvärde för att-do-listor i projektet |
| lastAccessedAt | DateTime | Tidsstämpel när projektet senast nåddes |
| isTemplate | Boolean! | Boolean som indikerar om projektet är en mall |
| isOfficialTemplate | Boolean! | Boolean som indikerar om detta är en officiell Blue-mall |
| automationsCount(isActive: Boolean) | Int! | Antal automatiseringar kopplade till projektet |
| totalFileCount | Int | Totalt antal filer i projektet |
| totalFileSize | Float | Total storlek av alla filer i projektet (i byte) |
| todoAlias | String | Anpassad alias för "att göra" som används i projektet |
| category | ProjectCategory! | Projektkategori (CRM, MARKETING, etc.) |
| hideEmailFromRoles | [UserAccessLevel!] | Array av roller som ska dölja e-postadresser |
| hideStatusUpdate | Boolean | Boolean för att dölja statusuppdateringar |
| company | Company! | Fullständiga företagsobjektsdetaljer |
| accessLevel(userId: String) | UserAccessLevel | Hämta användarens åtkomstnivå för det specifika projektet |
| folder | Folder | Mapp som innehåller detta projekt |
| features | [ProjectFeature!] | Array av aktiverade projektfunktioner |
| sequenceCustomField | CustomField | Anpassat fält som används för sekvensnumrering |
| coverConfig | TodoCoverConfig | Konfiguration för att göra omslagsbilder |
| hideRecordCount | Boolean | Om man ska dölja rekordantal |
| showTimeSpentInTodoList | Boolean | Om man ska visa tid som spenderats i att göra-listor |
| showTimeSpentInProject | Boolean | Om man ska visa tid som spenderats i projektet |
| todoFields | [TodoField] | Anpassade definitioner av att göra-fält |
Notera: Du kan begära vilken kombination av dessa fält som helst i din GraphQL-fråga.
Pagineringsfält
Objektet pageInfo ger pagineringsdetaljer för frågeresultaten:
| Fält | Typ | Beskrivning |
|---|---|---|
| totalPages | Int | Totalt antal sidor av resultat |
| totalItems | Int | Totalt antal projekt som matchar frågan |
| page | Int | Aktuellt sidnummer |
| perPage | Int | Antal objekt per sida |
| hasNextPage | Boolean! | Boolean som indikerar om det finns en nästa sida av resultat |
| hasPreviousPage | Boolean! | Boolean som indikerar om det finns en föregående sida av resultat |
Frågeparametrar
Filteralternativ (ProjectListFilter)
| Parameter | Typ | Obligatorisk | Beskrivning |
|---|---|---|---|
companyIds |
[String!]! | ✅ Ja | Array av företags-ID:n eller slugs att söka inom |
ids |
[String!] | Nej | Filtrera efter specifika projekt-ID:n |
archived |
Boolean | Nej | Filtrera efter arkiverad status (sant/falskt) |
isTemplate |
Boolean | Nej | Filtrera mallprojekt (sant/falskt) |
search |
String | Nej | Sök projekt efter namn (skiftlägesokänsligt) |
folderId |
String | Nej | Filtrera efter mapp-ID. Använd null för projekt på rot-nivå |
inProject |
Boolean | Nej | Filtrera efter användarmedlemskap. Se notis nedan |
Notis om inProject filter:
trueellerundefined: Returnerar projekt som användaren är medlem ifalse: Returnerar projekt som användaren INTE är med i (kräver företagsägarens behörighet)- Mappfiltrering (
folderId) fungerar endast närinProjectinte ärfalse
Sorteringsalternativ (ProjectSort)
| Värde | Beskrivning |
|---|---|
id_ASC |
Sortera efter ID stigande |
id_DESC |
Sortera efter ID fallande |
name_ASC |
Sortera efter namn stigande (A-Z) |
name_DESC |
Sortera efter namn fallande (Z-A) |
createdAt_ASC |
Sortera efter skapelsedatum (äldst först) |
createdAt_DESC |
Sortera efter skapelsedatum (nyast först) |
updatedAt_ASC |
Sortera efter senaste uppdatering (äldst först) |
updatedAt_DESC |
Sortera efter senaste uppdatering (nyast först) |
position_ASC |
Sortera efter position stigande* |
position_DESC |
Sortera efter position fallande* |
*Positionssortering är endast tillgänglig när man visar projekt som användaren är medlem i (inProject !== false)
Pagineringsparametrar
| Parameter | Typ | Standard | Beskrivning |
|---|---|---|---|
skip |
Int | 0 | Antal poster att hoppa över |
take |
Int | 20 | Antal poster att returnera |
Viktiga noteringar
-
Standardbeteende för icke-medlemsprojekt (
inProject: false):- Exkluderar arkiverade projekt om inte
archivedfilter är uttryckligen inställt - Exkluderar mallprojekt om inte
isTemplatefilter är uttryckligen inställt
- Exkluderar arkiverade projekt om inte
-
Begränsningar för mappfiltrering:
- Fungerar endast när man visar användarens projekt
- Kan inte användas med
inProject: false - Använd
folderId: nullför att hämta projekt som inte ligger i någon mapp
-
Sorteringsåterställning:
- Positionssortering ignoreras när man visar icke-medlemsprojekt
- Återgår till namnsortering i sådana fall
-
Avskrivna parametrar:
orderBy,after,before,first,lastär avskrivna- Använd
sort,skip, ochtakeistället