Création de projets en utilisant l'API Blue.


Créer un nouveau projet

Pour créer un nouveau projet, vous pouvez utiliser la mutation suivante :

mutation {
  createProject(
    input: {
      name: "YOUR PROJECT NEW NAME"
      companyId: "YOUR COMPANY ID OR SLUG"
      description: "Project description"
      color: "#3B82F6"
      icon: "briefcase"
      category: GENERAL
    }
  ) {
    id
    name
    slug
    description
    color
    icon
    category
  }
}
icon: lightbulb

N'oubliez pas d'inclure les en-têtes requis dans votre demande :

- `X-Bloo-Token-ID` : Votre ID de jeton API
- `X-Bloo-Token-Secret` : Votre secret de jeton API
- `X-Bloo-Company-ID` : Votre ID d'entreprise
- `Content-Type: application/json`

Exemple de réponse

En cas de succès, la mutation renverra les détails du projet nouvellement créé :

{
  "data": {
    "createProject": {
      "id": "newly-created-project-id",
      "name": "YOUR PROJECT NEW NAME",
      "slug": "your-project-new-name",
      "description": "Project description",
      "color": "#3B82F6",
      "icon": "briefcase",
      "category": "GENERAL"
    }
  }
}

Créer à partir d'un modèle

Pour créer un projet à partir d'un modèle existant, vous pouvez ajouter un templateId optionnel à la mutation.

mutation {
  createProject(
    input: {
      templateId: "YOUR TEMPLATE ID OR SLUG"
      name: "YOUR PROJECT NEW NAME"
      companyId: "YOUR COMPANY ID OR SLUG"
    }
  ) {
    id
  }
}
Créer un projet à partir d'un modèle ne créera pas le projet instantanément. Au lieu de cela, votre création de projet sera mise en file d'attente.

Exemple avancé avec modèle

Voici un exemple complet montrant toutes les options disponibles lors de la création à partir d'un modèle :

mutation {
  createProject(
    input: {
      templateId: "marketing-template"
      name: "Q1 Marketing Campaign"
      companyId: "acme-corp"
      description: "Marketing initiatives for Q1 2024"
      color: "#10B981"
      icon: "megaphone"
      category: MARKETING
      coverConfig: {
        enabled: true
        fit: COVER
        imageSelectionType: FIRST
        source: DESCRIPTION
      }
    }
  ) {
    id
    name
    slug
    description
    color
    icon
    category
  }
}
icon: warning
Le paramètre `coverConfig` ne fonctionne actuellement que lors de la création d'un projet à partir d'un modèle. Pour les projets créés de zéro, vous devrez utiliser la mutation `editProject` après la création pour configurer les images de couverture des tâches.

Vérifier l'état de création

Pour vérifier l'état de votre création de projet dans la file d'attente, vous pouvez utiliser la requête suivante :

query {
  copyProjectStatus {
    newProjectName
    isTemplate
    isActive
    queuePosition
    totalQueues
  }
}

Cette requête renverra l'état de votre création de projet dans la file d'attente.

Paramètres d'entrée

CreateProjectInput

Paramètre Type Requis Description
name String ✅ Oui Le nom du projet. Les URL seront supprimées du nom.
companyId String ✅ Oui L'ID ou le slug de l'entreprise où le projet sera créé.
description String Non Une description du projet.
color String Non Couleur du projet au format hexadécimal (par exemple, "#3B82F6").
icon String Non Identifiant d'icône pour le projet (par exemple, "briefcase", "rocket").
category ProjectCategory Non Catégorie du projet. Par défaut, cela sera GENERAL si non spécifié.
templateId String Non ID d'un projet existant à utiliser comme modèle.
coverConfig TodoCoverConfigInput Non Configuration pour les images de couverture des tâches (fonctionne actuellement uniquement avec la création basée sur un modèle).

Valeurs de ProjectCategory

Valeur Description
CRM Projets de gestion de la relation client
CROSS_FUNCTIONAL Projets d'équipe interfonctionnelle
CUSTOMER_SUCCESS Initiatives de succès client
DESIGN Projets de design et créatifs
ENGINEERING Projets d'ingénierie et de développement
GENERAL Projets généraux (par défaut)
HR Projets de ressources humaines
IT Projets de technologie de l'information
MARKETING Campagnes et initiatives de marketing
OPERATIONS Projets d'opérations et de logistique
PRODUCT Projets de gestion de produit
SALES Projets de vente et de développement commercial

TodoCoverConfigInput

Si vous souhaitez configurer le fonctionnement des images de couverture des tâches dans votre projet, vous pouvez fournir le paramètre coverConfig :

Paramètre Type Requis Description
enabled Boolean ✅ Oui Indique si les images de couverture sont activées pour les tâches
fit ImageFit ✅ Oui Comment les images doivent s'adapter à la zone de couverture
imageSelectionType ImageSelectionType ✅ Oui Quelle image sélectionner parmi les options disponibles
source ImageSource ✅ Oui D'où tirer les images
sourceId String Non Identifiant de source spécifique (par exemple, ID de champ personnalisé)

Valeurs de ImageFit : COVER, CONTAIN, FILL, SCALE_DOWN

Valeurs de ImageSelectionType : FIRST (première image), LAST (dernière image)

Valeurs de ImageSource : DESCRIPTION (depuis la description de la tâche), COMMENTS (depuis les commentaires), CUSTOM_FIELD (depuis un champ personnalisé)

Champs de réponse

La mutation createProject renvoie un objet Projet avec les champs disponibles suivants :

Champ Type Description
id ID! Identifiant unique pour le projet
name String! Nom du projet
slug String! Identifiant de projet compatible avec les URL
description String Description du projet
color String Couleur du projet au format hexadécimal
icon String Identifiant d'icône
category ProjectCategory Valeur enum de catégorie de projet
companyId String! ID de l'entreprise
createdAt DateTime! Horodatage de création
updatedAt DateTime! Horodatage de dernière mise à jour
archived Boolean! Indique si le projet est archivé
isTemplate Boolean! Indique si c'est un projet modèle

Remarque : Vous pouvez demander n'importe quelle combinaison de ces champs dans votre réponse.

Remarques importantes

  • Vous devez avoir un accès de niveau OWNER, ADMIN ou MEMBER à l'entreprise pour créer des projets
  • Lors de la création à partir d'un modèle, le modèle ne peut pas avoir plus de 250 000 tâches
  • L'utilisateur créant est automatiquement assigné comme OWNER du projet
  • Les noms de projet sont automatiquement dépouillés des espaces
  • Le paramètre coverConfig ne fonctionne actuellement que lors de la création à partir d'un modèle

Réponses d'erreur

Entreprise non trouvée

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

Modèle non trouvé

{
  "errors": [{
    "message": "Template not found",
    "extensions": {
      "code": "NOT_FOUND"
    }
  }]
}

Modèle trop volumineux

{
  "errors": [{
    "message": "Template cannot have more than 250000 todos",
    "extensions": {
      "code": "VALIDATION_ERROR"
    }
  }]
}

Permission refusée

{
  "errors": [{
    "message": "You do not have permission to create projects in this company",
    "extensions": {
      "code": "FORBIDDEN"
    }
  }]
}

Assistant IA

Les réponses sont générées par l'IA et peuvent contenir des erreurs.

Comment puis-je vous aider ?

Posez-moi toutes vos questions sur Blue ou cette documentation.

Entrez pour envoyer • Maj+Entrée pour une nouvelle ligne • ⌘I pour ouvrir