GitScrum / Docs

Tâches

Créez, mettez à jour, filtrez, complétez et gérez les tâches. La ressource principale pour les éléments de travail du projet.

REST API — Tous les endpoints nécessitent une authentification par Bearer token. Incluez Authorization: Bearer {token} dans chaque requête. Les tokens sont gérés dans Paramètres GitScrum → API. Base URL: https://services.gitscrum.com — Tous les chemins de requête dans cette documentation sont relatifs à cette URL de base.

Les tâches sont les éléments de travail principaux dans GitScrum. Chaque tâche appartient à un projet et peut être assignée à des utilisateurs, organisée en sprints, liée à des user stories, étiquetée et suivie à travers les colonnes Kanban.

Lister les tâches (Filtre)

Retourne une liste paginée des tâches correspondant aux filtres spécifiés.

GET /tasks?company_slug={slug}&project_slug={slug}

Paramètres de requête

ParamètreTypeRequisDescription
company_slugstringOuiIdentifiant du workspace
project_slugstringOuiIdentifiant du projet
statusstringNonFiltre par statut : todo, in-progress, done
sprintstringNonSlug du sprint
user_storystringNonSlug de la user story
usersstringNonNoms d'utilisateur séparés par des virgules
labelsstringNonTitres de labels séparés par des virgules
typestringNonTitre du type de tâche
effortstringNonTitre du niveau d'effort
workflowstringNonTitre de la colonne Kanban
is_blockerbooleanNonFiltrer les tâches bloquantes
is_archivedbooleanNonFiltrer les tâches archivées
unassignedbooleanNonUniquement les tâches non assignées
created_atstringNonPlage de dates YYYY-MM-DD=YYYY-MM-DD
closed_atstringNonPlage de dates YYYY-MM-DD=YYYY-MM-DD
per_pageintegerNonRésultats par page (1–100, défaut 50)

Exemple de requête

curl -X GET "https://services.gitscrum.com/tasks?company_slug=acme&project_slug=web-app&status=in-progress&per_page=10" \
  -H "Authorization: Bearer {token}"

Exemple de réponse

{
  "data": [
    {
      "uuid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
      "code": "WEB-42",
      "title": "Implement user authentication",
      "slug": "implement-user-authentication",
      "description": "Add JWT-based authentication flow",
      "state": 0,
      "workflow": {
        "id": 2,
        "title": "In Progress"
      },
      "type": {
        "id": 1,
        "title": "Feature",
        "color": "4A90D9"
      },
      "effort": {
        "id": 3,
        "title": "High"
      },
      "users": [
        {
          "username": "johndoe",
          "name": "John Doe"
        }
      ],
      "labels": [],
      "settings": {
        "is_blocker": false,
        "is_bug": false,
        "is_draft": false,
        "is_archived": false
      },
      "due_date": "2026-02-15",
      "created_at": "2026-01-20T10:30:00Z"
    }
  ],
  "meta": {
    "current_page": 1,
    "per_page": 10,
    "total": 42
  }
}

Obtenir une tâche

Retourne les détails complets d'une tâche.

GET /tasks/{uuid}?company_slug={slug}&project_slug={slug}

Paramètres de chemin

ParamètreTypeDescription
uuidstringUUID de la tâche

Obtenir une tâche par code

Récupère une tâche en utilisant son code lisible.

GET /tasks/by-code/{code}?company_slug={slug}&project_slug={slug}

Paramètres de chemin

ParamètreTypeDescription
codestringCode de la tâche (ex. : PROJ-123)

Mes tâches

Retourne les tâches assignées à l'utilisateur authentifié à travers tous les workspaces.

GET /tasks/all-workspaces

Tâches du jour

Retourne les tâches assignées à l'utilisateur authentifié dont l'échéance est aujourd'hui.

GET /tasks/my-today

Créer une tâche

Crée une nouvelle tâche dans le projet spécifié.

POST /tasks

Corps de la requête

ChampTypeRequisDescription
titlestringOuiTitre de la tâche
company_slugstringOuiIdentifiant du workspace
project_slugstringOuiIdentifiant du projet
descriptionstringNonDescription de la tâche (markdown)
columnstringNonNom de la colonne Kanban (ex. : "In Progress")
workflow_idintegerNonID de la colonne Kanban (alternative à column)
type_idintegerNonID du type de tâche
effort_idintegerNonID du niveau d'effort/priorité
sprint_slugstringNonSprint auquel assigner la tâche
userstoryslugstringNonUser story à lier
usernamesarrayNonNoms d'utilisateur à assigner
label_idsarrayNonIDs des labels à attacher
due_datestringNonDate limite (YYYY-MM-DD)
start_datestringNonDate de début (YYYY-MM-DD)
estimated_minutesintegerNonEstimation de temps en minutes
is_blockerbooleanNonMarquer comme bloquant
is_bugbooleanNonMarquer comme bug
parent_idstringNonUUID de la tâche parent (crée une sous-tâche)

Exemple de requête

curl -X POST "https://services.gitscrum.com/tasks" \
  -H "Authorization: Bearer {token}" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "Add password reset flow",
    "company_slug": "acme",
    "project_slug": "web-app",
    "column": "To Do",
    "type_id": 1,
    "usernames": ["johndoe"],
    "due_date": "2026-02-28",
    "estimated_minutes": 120
  }'

Exemple de réponse

{
  "data": {
    "uuid": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
    "code": "WEB-43",
    "title": "Add password reset flow",
    "state": 0,
    "workflow": {
      "id": 1,
      "title": "To Do"
    },
    "due_date": "2026-02-28",
    "estimated_minutes": 120,
    "created_at": "2026-02-07T14:00:00Z"
  }
}

Mettre à jour une tâche

Met à jour une tâche existante. Permet de modifier le titre, la description, les dates, le workflow, le type, l'effort, le sprint, la user story, le bloqueur, le bug, le brouillon, l'archivage et les champs d'estimation de temps.

PUT /tasks/{uuid}

Corps de la requête

Accepte les mêmes champs optionnels que Créer une tâche, plus companyslug et projectslug.

Exemple de requête

curl -X PUT "https://services.gitscrum.com/tasks/b2c3d4e5-f6a7-8901-bcde-f12345678901" \
  -H "Authorization: Bearer {token}" \
  -H "Content-Type: application/json" \
  -d '{
    "company_slug": "acme",
    "project_slug": "web-app",
    "column": "In Progress",
    "is_blocker": true
  }'

Supprimer une tâche

Supprime définitivement une tâche. Cette action est irréversible.

DELETE /tasks/{uuid}?company_slug={slug}&project_slug={slug}

Paramètres de chemin

ParamètreTypeDescription
uuidstringUUID de la tâche
curl -X DELETE "https://services.gitscrum.com/tasks/b2c3d4e5-f6a7-8901-bcde-f12345678901?company_slug=acme&project_slug=web-app" \
  -H "Authorization: Bearer {token}"

Marquer une tâche comme terminée

Bascule l'état d'achèvement d'une tâche.

PUT /tasks/{uuid}/done?company_slug={slug}&project_slug={slug}

Paramètres de chemin

ParamètreTypeDescription
uuidstringUUID de la tâche

Mettre à jour l'estimation

Met à jour les story points ou l'estimation d'une tâche.

PUT /tasks/{uuid}/estimative?company_slug={slug}&project_slug={slug}

Paramètres de chemin

ParamètreTypeDescription
uuidstringUUID de la tâche

Corps de la requête

ChampTypeRequisDescription
estimativestringOuiValeur de story points ou estimation

Déplacer vers un tableau

Déplace une tâche vers un tableau de projet différent.

PUT /tasks/{uuid}/project_board?company_slug={slug}&project_slug={slug}

Paramètres de chemin

ParamètreTypeDescription
uuidstringUUID de la tâche

Corps de la requête

ChampTypeRequisDescription
board_uuidstringOuiUUID du tableau cible

Dupliquer une tâche

Crée une copie de la tâche spécifiée.

POST /tasks/{uuid}/duplicate?company_slug={slug}&project_slug={slug}

Déplacer une tâche vers un projet

Déplace une tâche vers un projet différent.

POST /tasks/{uuid}/move?company_slug={slug}&project_slug={slug}

Corps de la requête

ChampTypeRequisDescription
newprojectslugstringOuiSlug du projet cible
newworkflowidintegerOuiID de la colonne Kanban cible

Sous-tâches

Lister les sous-tâches

Retourne les sous-tâches d'une tâche parent.

GET /tasks/{uuid}/sub-tasks?company_slug={slug}&project_slug={slug}

Lier une sous-tâche

Lie une tâche existante comme sous-tâche.

POST /tasks/{uuid}/sub-tasks/{subtask_uuid}?company_slug={slug}&project_slug={slug}

Délier une sous-tâche

Supprime la relation de sous-tâche sans supprimer la tâche.

DELETE /tasks/{uuid}/sub-tasks/{subtask_uuid}?company_slug={slug}&project_slug={slug}

Sous-tâches disponibles

Recherche les tâches pouvant être liées comme sous-tâches.

GET /tasks/{uuid}/available-subtasks?company_slug={slug}&project_slug={slug}

Tâches associées

Retourne les tâches associées à la tâche spécifiée.

GET /tasks/{uuid}/related-tasks?company_slug={slug}&project_slug={slug}

Responsables

Assigner un membre

Assigne un utilisateur à une tâche.

POST /task-assignees

Corps de la requête

ChampTypeRequisDescription
task_uuidstringOuiUUID de la tâche
usernamestringOuiNom d'utilisateur à assigner
company_slugstringOuiIdentifiant du workspace
project_slugstringOuiIdentifiant du projet

Désassigner un membre

Retire un utilisateur d'une tâche.

DELETE /task-assignees

Corps de la requête

ChampTypeRequisDescription
task_uuidstringOuiUUID de la tâche
usernamestringOuiNom d'utilisateur à désassigner
company_slugstringOuiIdentifiant du workspace
project_slugstringOuiIdentifiant du projet

Checklists

Lister les checklists

Retourne les checklists d'une tâche.

GET /task-checklists?task_uuid={uuid}&company_slug={slug}&project_slug={slug}

Créer un élément de checklist

Crée un nouvel élément de checklist. Incluez parent_id pour créer un sous-élément.

POST /task-checklists

Corps de la requête

ChampTypeRequisDescription
titlestringOuiTexte de l'élément
task_uuidstringOuiUUID de la tâche
company_slugstringOuiIdentifiant du workspace
project_slugstringOuiIdentifiant du projet
parent_idintegerNonID de l'élément de checklist parent (pour les sous-éléments)

Mettre à jour un élément de checklist

Met à jour le titre d'un élément de checklist.

PUT /task-checklists/{id}

Corps de la requête

ChampTypeRequisDescription
titlestringOuiTexte mis à jour
company_slugstringOuiIdentifiant du workspace

Basculer un élément de checklist

Marque un élément de checklist comme fait ou non fait.

PUT /task-checklists/{id}/toggle

Supprimer un élément de checklist

Supprime un élément de checklist.

DELETE /task-checklists/{id}?company_slug={slug}&project_slug={slug}

Labels de tâche

Lister les labels de la tâche

Retourne les labels attachés à une tâche.

GET /task-labels?task_uuid={uuid}&company_slug={slug}&project_slug={slug}

Lister les labels disponibles

Retourne les labels non encore assignés à la tâche.

GET /task-labels/not-added?task_uuid={uuid}&company_slug={slug}&project_slug={slug}

Créer et attacher un label

Crée un nouveau label et l'attache à la tâche.

POST /task-labels

Corps de la requête

ChampTypeRequisDescription
titlestringOuiNom du label
colorstringOuiCouleur hexadécimale sans #
task_uuidstringOuiUUID de la tâche
company_slugstringOuiIdentifiant du workspace
project_slugstringOuiIdentifiant du projet

Attacher un label

Attache un label existant à une tâche.

POST /task-labels/{label_id}/attach

Corps de la requête

ChampTypeRequisDescription
task_uuidstringOuiUUID de la tâche
company_slugstringOuiIdentifiant du workspace
project_slugstringOuiIdentifiant du projet

Détacher un label

Retire un label d'une tâche.

DELETE /task-labels/{label_id}/detach

Corps de la requête

ChampTypeRequisDescription
task_uuidstringOuiUUID de la tâche
company_slugstringOuiIdentifiant du workspace
project_slugstringOuiIdentifiant du projet

Importer des tâches

Aperçu de l'importation

Téléverse un fichier CSV et retourne un aperçu des données à importer.

POST /tasks/import/preview

Corps de la requête (multipart/form-data)

ChampTypeRequisDescription
filefileOuiFichier CSV
company_slugstringOuiIdentifiant du workspace
project_slugstringOuiIdentifiant du projet

Confirmer l'importation

Confirme l'importation et crée les tâches à partir des données prévisualisées.

POST /tasks/import/confirm

Corps de la requête

ChampTypeRequisDescription
company_slugstringOuiIdentifiant du workspace
project_slugstringOuiIdentifiant du projet
dataarrayOuiDonnées d'importation mappées depuis l'aperçu

Exporter les tâches

Comptage des tâches

Retourne le nombre total de tâches pour l'exportation.

GET /{company_slug}/{project_slug}/tasks/count

Exporter en Excel

Télécharge les tâches sous forme de fichier Excel.

GET /{company_slug}/{project_slug}/tasks/excel

Favoris

Lister les favoris

Retourne toutes les tâches favorites de l'utilisateur authentifié.

GET /favorites?company_slug={slug}

Basculer en favori

Ajoute ou retire une tâche des favoris.

POST /favorites/{task_uuid}

Corps de la requête

ChampTypeRequisDescription
company_slugstringOuiIdentifiant du workspace
project_slugstringOuiIdentifiant du projet

Notifications

Retourne les notifications liées aux tâches pour l'utilisateur authentifié.

GET /tasks/notifications

Référence des champs

ChampTypeDescription
uuidstringIdentifiant unique
codestringCode lisible (ex. : WEB-42)
titlestringTitre de la tâche
slugstringIdentifiant URL-friendly
descriptionstringDescription de la tâche (markdown)
stateinteger0 = ouvert, 1 = fermé
estimativestringStory points ou label d'estimation
estimated_minutesintegerEstimation de temps en minutes
totaltrackedminutesintegerTemps total suivi en minutes
parent_idstringUUID de la tâche parent (si sous-tâche)
typeobjectType de tâche (id, title, color)
effortobjectNiveau d'effort (id, title)
workflowobjectColonne Kanban (id, title)
labelsarrayLabels attachés
userobjectCréateur
usersarrayUtilisateurs assignés
settingsobjectisblocker, isbug, isdraft, isarchived
statsobjectStatistiques de la tâche
companyobjectRéférence au workspace
projectobjectRéférence au projet
boardobjectRéférence au tableau
sprintobjectRéférence au sprint
user_storyobjectUser story liée
start_datestringDate de début
due_datestringDate limite
created_atstringHorodatage de création