Los proyectos en Blue forman el marco fundamental para organizar usuarios y datos.


Listar todos los Proyectos

La consulta projectList permite recuperar proyectos con potentes opciones de filtrado, ordenamiento y paginación.

Ejemplo Básico

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
    }
  }
}

Ejemplo Avanzado con Filtrado y Ordenamiento

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
    }
  }
}

Campos del Proyecto

La siguiente tabla describe todos los campos disponibles para cada proyecto en el ProjectListQuery:

Campo Tipo Descripción
id ID! Identificador único para el proyecto
uid String! Identificador único amigable para el usuario del proyecto
slug String! Nombre del proyecto amigable para URL
name String! Nombre para mostrar del proyecto
description String Breve descripción del proyecto
archived Boolean Booleano que indica si el proyecto está archivado
color String Color asociado con el proyecto para identificación visual
icon String Icono asociado con el proyecto para identificación visual
image Image Objeto de imagen de portada del proyecto
createdAt DateTime! Marca de tiempo cuando se creó el proyecto
updatedAt DateTime! Marca de tiempo cuando se actualizó por última vez el proyecto
allowNotification Boolean! Booleano que indica si las notificaciones están habilitadas para el proyecto
position Float! Valor numérico que representa la posición del proyecto en una lista
unseenActivityCount Int! Número de actividades no vistas en el proyecto
todoListsMaxPosition Float! Valor máximo de posición para listas de tareas en el proyecto
lastAccessedAt DateTime Marca de tiempo cuando se accedió por última vez al proyecto
isTemplate Boolean! Booleano que indica si el proyecto es una plantilla
isOfficialTemplate Boolean! Booleano que indica si esta es una plantilla oficial de Blue
automationsCount(isActive: Boolean) Int! Número de automatizaciones asociadas con el proyecto
totalFileCount Int Número total de archivos en el proyecto
totalFileSize Float Tamaño total de todos los archivos en el proyecto (en bytes)
todoAlias String Alias personalizado para "tarea" utilizado en el proyecto
category ProjectCategory! Categoría del proyecto (CRM, MARKETING, etc.)
hideEmailFromRoles [UserAccessLevel!] Array de roles que deben ocultar direcciones de correo electrónico
hideStatusUpdate Boolean Booleano para ocultar actualizaciones de estado
company Company! Detalles completos del objeto de la empresa
accessLevel(userId: String) UserAccessLevel Obtener el nivel de acceso del usuario para el proyecto específico
folder Folder Carpeta que contiene este proyecto
features [ProjectFeature!] Array de características del proyecto habilitadas
sequenceCustomField CustomField Campo personalizado utilizado para numeración secuencial
coverConfig TodoCoverConfig Configuración para imágenes de portada de tareas
hideRecordCount Boolean Si se deben ocultar los recuentos de registros
showTimeSpentInTodoList Boolean Si se debe mostrar el tiempo dedicado en listas de tareas
showTimeSpentInProject Boolean Si se debe mostrar el tiempo dedicado en el proyecto
todoFields [TodoField] Definiciones de campos de tareas personalizados

Nota: Puedes solicitar cualquier combinación de estos campos en tu consulta GraphQL.

Campos de Paginación

El objeto pageInfo proporciona detalles de paginación para los resultados de la consulta:

Campo Tipo Descripción
totalPages Int Número total de páginas de resultados
totalItems Int Número total de proyectos que coinciden con la consulta
page Int Número de página actual
perPage Int Número de elementos por página
hasNextPage Boolean! Booleano que indica si hay una siguiente página de resultados
hasPreviousPage Boolean! Booleano que indica si hay una página anterior de resultados

Parámetros de Consulta

Opciones de Filtrado (ProjectListFilter)

Parámetro Tipo Requerido Descripción
companyIds [String!]! ✅ Sí Array de IDs de empresas o slugs para buscar dentro
ids [String!] No Filtrar por IDs de proyectos específicos
archived Boolean No Filtrar por estado archivado (true/false)
isTemplate Boolean No Filtrar proyectos plantilla (true/false)
search String No Buscar proyectos por nombre (sin distinguir mayúsculas y minúsculas)
folderId String No Filtrar por ID de carpeta. Usa null para proyectos de nivel raíz
inProject Boolean No Filtrar por membresía de usuario. Ver nota a continuación

Nota sobre el filtro inProject:

  • true o undefined: Devuelve proyectos de los que el usuario es miembro
  • false: Devuelve proyectos en los que el usuario NO está (requiere permiso de propietario de la empresa)
  • El filtrado por carpeta (folderId) solo funciona cuando inProject no está false

Opciones de Ordenamiento (ProjectSort)

Valor Descripción
id_ASC Ordenar por ID ascendente
id_DESC Ordenar por ID descendente
name_ASC Ordenar por nombre ascendente (A-Z)
name_DESC Ordenar por nombre descendente (Z-A)
createdAt_ASC Ordenar por fecha de creación (más antiguo primero)
createdAt_DESC Ordenar por fecha de creación (más reciente primero)
updatedAt_ASC Ordenar por última actualización (más antigua primero)
updatedAt_DESC Ordenar por última actualización (más reciente primero)
position_ASC Ordenar por posición ascendente*
position_DESC Ordenar por posición descendente*

*El ordenamiento por posición solo está disponible cuando se visualizan proyectos de los que el usuario es miembro (inProject !== false)

Parámetros de Paginación

Parámetro Tipo Predeterminado Descripción
skip Int 0 Número de registros a omitir
take Int 20 Número de registros a devolver

Notas Importantes

  1. Comportamiento predeterminado para proyectos no miembros (inProject: false):

    • Excluye proyectos archivados a menos que el filtro archived esté explícitamente establecido
    • Excluye proyectos plantilla a menos que el filtro isTemplate esté explícitamente establecido
  2. Limitaciones del filtrado por carpeta:

    • Solo funciona al mostrar proyectos del usuario
    • No se puede usar con inProject: false
    • Usa folderId: null para obtener proyectos que no estén en ninguna carpeta
  3. Retroceso de ordenamiento:

    • El ordenamiento por posición se ignora al visualizar proyectos no miembros
    • Se retrocede al ordenamiento por nombre en tales casos
  4. Parámetros obsoletos:

    • orderBy, after, before, first, last están obsoletos
    • Usa sort, skip, y take en su lugar

Asistente IA

Las respuestas son generadas por IA y pueden contener errores.

¿Cómo puedo ayudarte?

Pregúntame cualquier cosa sobre Blue o esta documentación.

Enter para enviar • Shift+Enter para nueva línea • ⌘I para abrir