Rolebase Développeurs
Référence API

task

Représente une tâche ou un élément à faire dans Rolebase. Les tâches sont associées à des cercles, peuvent être assignées à des membres et permettent le suivi de la progression avec des statuts et des dates d'échéance.

Champs

ChampTypeDescription
iduuidIdentifiant unique de la tâche (généré automatiquement)
orgIduuidRéférence à l’organisation à laquelle cette tâche appartient
circleIduuidRéférence au cercle auquel cette tâche est associée
memberIduuidRéférence au membre assigné (optionnel)
titleStringTitre de la tâche
descriptionStringDescription détaillée de la tâche
statusTask_Status_EnumStatut actuel : Open, InProgress, InReview, Blocked ou Done
dueDateTimestampDate d’échéance de la tâche (optionnel)
createdAtTimestampDate de création de la tâche (par défaut : horodatage actuel)
archivedBooleanIndique si la tâche est archivée (par défaut : false)
privateBooleanIndique si la tâche est privée (par défaut : false)

Statut de la tâche

Le champ status accepte les valeurs d’énumération suivantes :

  • Open — La tâche est ouverte et active
  • InProgress — La tâche est en cours de réalisation
  • InReview — La tâche est en cours de révision
  • Blocked — La tâche est bloquée par une autre tâche ou un problème
  • Done — La tâche est terminée

Relations

Relations objet

  • org — L’organisation à laquelle cette tâche appartient
  • circle — Le cercle auquel cette tâche est associée
  • member — Le membre assigné à cette tâche (le cas échéant)

Relations tableau

  • logs — Journaux d’activité suivant les modifications de cette tâche

Exemples de requêtes

Lister les tâches d’une organisation

query GetTasks($orgId: uuid!) {
  task(where: { orgId: { _eq: $orgId } }) {
    id
    title
    description
    status
    dueDate
    circle {
      role {
        name
      }
    }
    member {
      name
    }
    logs {
      createdAt
      display
      changes
    }
  }
}

Obtenir une tâche spécifique

query GetTask($id: uuid!) {
  task_by_pk(id: $id) {
    id
    title
    description
    status
    dueDate
    circle {
      role {
        name
      }
    }
    member {
      name
    }
  }
}

Exemples de mutations

Créer une tâche

mutation CreateTask {
  insert_task_one(
    object: {
      orgId: "your-org-id"
      circleId: "circle-id"
      title: "Implement new feature"
      description: "Add user authentication to the app"
      status: Open
      dueDate: "2024-01-15T00:00:00Z"
      memberId: "assigned-member-id"
    }
  ) {
    id
    title
    status
  }
}

Mettre à jour une tâche

mutation UpdateTask {
  update_task_by_pk(
    pk_columns: { id: "task-id" }
    _set: { status: InProgress, description: "Updated task description" }
  ) {
    id
    status
    description
  }
}

Permissions

L’accès aux tâches est contrôlé par plusieurs facteurs :

  • Appartenance au cercle — Les participants du cercle peuvent accéder aux tâches de leur cercle
  • Paramètres de confidentialité — Les tâches privées ne sont visibles que par les membres assignés et les participants du cercle
  • Rôle dans l’organisation — Les membres de l’organisation peuvent accéder aux tâches non privées
  • Assignation — Les membres assignés ont toujours accès à leurs tâches

Les tâches peuvent être organisées en vues personnalisées à l’aide de l’entité task_view. Les journaux d’activité suivent automatiquement les modifications de statut et d’assignation des tâches.