Documentation de l'API

L'API REST DragApp vous permet d'interagir par programmation avec vos tableaux, colonnes, cartes, étiquettes et séquences d'e-mails. Créez des intégrations, automatisez vos flux de travail et synchronisez Drag avec vos outils existants.


Authentification

L'API DragApp utilise des clés d'API pour authentifier les requêtes. Incluez votre clé d'API dans l'en-tête Autorisation en en-tête de chaque requête.

Votre clé API est disponible dans les Paramètres de Drag. Si vous n'avez pas de compte, inscrivez-vous ici.

Exemple de requête
curl --request GET \
  --url https://app.dragapp.com/v2/board \
  --header 'Authorization: YOUR_API_KEY'

Gardez votre clé d'API en lieu sûr. Ne la partagez pas publiquement et ne la publiez pas dans un système de gestion de versions.


URL de base

Tous les endpoints sont relatifs à cette URL de base :

https://app.dragapp.com/v2/

Format de réponse

Toutes les réponses renvoient du JSON avec une structure cohérente. Les codes de la plage 200 indiquent une réussite. Les codes de la plage 400 indiquent une erreur dans la requête.

Succès
{
  "message": "Success message",
  "error": false,
  "code": 200,
  "data": { ... }
}
Erreur
{
  "message": "Error message",
  "code": 400,
  "error": true
}

Codes de statut HTTP

CodeDescription
200OK. La requête a réussi.
400Requête incorrecte. Paramètres non valides.
401Non autorisé. Clé API invalide ou manquante.
403Accès interdit. Autorisations insuffisantes.
404Introuvable. La ressource n'existe pas.
429Limite atteinte. Trop de requêtes.
500Erreur du serveur. Un problème est survenu de notre côté.

Tableaux

Les tableaux sont les conteneurs de premier niveau dans Drag. Chaque tableau correspond à une boîte de réception partagée ou à un espace de tâches dans Gmail.

GET/v2/board
Liste tous les tableaux
GET/v2/board/:id
Obtenir un tableau
POST/v2/board
Créer un tableau

Créer un tableau

Crée un tableau dans votre Gmail.

Paramètres

NomstringObligatoire

Nom du tableau

Exemple : "Tableau Support"

UtilisateurslistFacultatif

Liste des e-mails des utilisateurs

Exemple : ["aj@dragapp.com"]

Réponse
{
  "message": "Board created successfully",
  "error": false,
  "code": 200,
  "data": {
    "Id": 404303,
    "BoardName": "Testing V2 Board"
  }
}

Lister les tableaux

Liste tous les types de tableaux.

Aucun paramètre.

Réponse
{
  "message": "Board list",
  "error": false,
  "code": 200,
  "data": [
    {
      "Id": 162461,
      "Name": "A's Inbox",
      "Owner": "aj@dragapp.com",
      "Users": "akdev013@gmail.com"
    }
  ]
}

Obtenir un tableau

Récupère les détails d'un tableau.

Aucun paramètre dans le corps. Passez l'ID du tableau dans le chemin de l'URL.

Réponse
{
  "message": "Board details",
  "error": false,
  "code": 200,
  "data": {
    "Id": 162461,
    "Name": "A's Inbox",
    "Owner": "aj@dragapp.com",
    "Users": "akdev013@gmail.com"
  }
}

Colonnes

Les colonnes représentent les étapes de votre tableau Kanban (par ex. À faire, En cours, Terminé). Chaque colonne appartient à un tableau.

GET/v2/board/:boardId/columns
Liste toutes les colonnes d'un tableau
GET/v2/board/:boardId/column/:id
Obtenir une colonne
GET/v2/board/:boardId/column/:columnId/cards
Liste toutes les cartes d'une colonne
POST/v2/board/:boardId/column
Créer une colonne

Créer une colonne

Crée une colonne dans un tableau.

Paramètres

NomstringObligatoire

Nom de la colonne

Exemple : "À faire"

Réponse
{
  "message": "Column created successfully",
  "error": false,
  "code": 200,
  "data": {
    "Success": "Column created successfully."
  }
}

Lister les colonnes

Liste toutes les colonnes d'un tableau.

Aucun paramètre dans le corps.

Réponse
{
  "message": "Columns list",
  "error": false,
  "code": 200,
  "data": [
    { "Id": 158415, "ColumnId": "Label_1", "Name": "To Do" },
    { "Id": 158416, "ColumnId": "Label_2", "Name": "Doing" },
    { "Id": 158417, "ColumnId": "Label_3", "Name": "Done" }
  ]
}

Lister les cartes de la colonne

Liste toutes les cartes d'une colonne. Prend en charge la pagination.

Paramètres

pagenumberObligatoire

Numéro de page

Exemple : 1

limitstringFacultatif

Nombre de cartes par page

Exemple : "10"

Réponse
{
  "message": "Column cards",
  "error": false,
  "code": 200,
  "data": [
    {
      "DragTaskId": 200442,
      "TaskName": "Task",
      "ReadUnreadStatus": 1,
      "ColumnId": "Label_1",
      "BoardId": 404302,
      "DueDate": null,
      "Assignees": null,
      "ThreadOwnerEmail": "aj@dragapp.com",
      "CreatedAt": "2023-10-31T04:38:31.000Z",
      "Status": "1",
      "CustomFields": "[{}]"
    }
  ]
}

Cartes

Les cartes représentent des tâches individuelles ou des conversations e-mail sur un tableau. Elles peuvent contenir des notes, des commentaires, des sous-tâches, des étiquettes et des responsables.

GET/v2/card/:id
Obtenir les détails d'une carte
POST/v2/card
Créer une carte
PUT/v2/card/:cardId
Mettre à jour une carte
POST/v2/card/move-card
Déplacer la carte vers une autre colonne ou un autre tableau
DELETE/v2/card/:cardId
Archive une carte
POST/v2/card/:cardId/note
Ajouter une note à une carte
POST/v2/card/:cardId/tags
Ajoute une étiquette à une carte
POST/v2/card/:cardId/sub-task
Ajouter une sous-tâche à une carte

Créer une carte

Crée une carte sur un tableau.

Paramètres

BoardIdnumberObligatoire

Tableau où vous voulez ajouter la carte

Exemple : 20841

ColumnIdnumberObligatoire

Colonne du tableau où vous voulez ajouter la carte

Exemple : 1094

CardTitlestringObligatoire

Titre de la carte

Exemple : "Tâche de planification"

RemarquestringFacultatif

Note à ajouter sur la carte

CommentairestringFacultatif

Commentaire à ajouter sur la carte

Sous-tâchestringFacultatif

Sous-tâche à ajouter à la carte

ResponsablelistFacultatif

E-mail du responsable, ou null pour retirer l'attribution

Exemple : ["aj@dragapp.com"]

ReadStatusnumberFacultatif

Lu = 1, Non lu = 0. Valeur par défaut : Lu.

Exemple : 1

Réponse
{
  "Error": false,
  "Success": "Task Added Successfully",
  "taskId": 200433
}

Mettre à jour la carte

Met à jour une carte existante.

Paramètres

BoardIdnumberObligatoire

Tableau où se trouve la carte

Exemple : 20841

ColumnIdnumberObligatoire

Colonne du tableau où se trouve la carte

Exemple : 1094

CardTitlestringObligatoire

Titre de la carte

Exemple : "Tâche de planification"

RemarquestringFacultatif

Note pour la carte

CommentairestringFacultatif

Commentaire pour la carte

Sous-tâchestringFacultatif

Sous-tâche de la carte

ResponsablelistFacultatif

E-mail du responsable, ou null pour retirer l'attribution

Exemple : ["aj@dragapp.com"]

Réponse
{
  "message": "Card updated successfully.",
  "error": false,
  "code": 200,
  "data": "2451"
}

Déplacer la carte

Déplacer une carte vers une autre colonne ou un autre tableau.

Paramètres

IdstringObligatoire

Carte à déplacer

Exemple : "18ac0539048b4d0d"

NewBoardIdnumberFacultatif

Tableau vers lequel vous voulez déplacer la carte

Exemple : 1094

NewColumnIdnumberObligatoire

Colonne du tableau vers laquelle vous voulez déplacer la carte

Exemple : 1094

NewPositionnumberObligatoire

Position dans la colonne où vous voulez déplacer la carte

Exemple : 0

Réponse
{
  "message": "Card moved successfully.",
  "error": false,
  "code": 200,
  "data": "success"
}

Ajouter une note

Ajoute une note à une carte.

Paramètres

CorpsstringObligatoire

Note à ajouter sur la carte

Réponse
{
  "message": "Note added to card successfully.",
  "error": false,
  "code": 200,
  "data": { "CardId": "200429" }
}

Ajouter une étiquette à la carte

Ajoute une étiquette à une carte.

Paramètres

TagIdstringObligatoire

Étiquette à ajouter à la carte

Exemple : "77155"

Réponse
{
  "message": "Added tag to card successfully.",
  "error": false,
  "code": 200,
  "data": { "CardId": "200429" }
}

Ajouter une sous-tâche

Ajoute une sous-tâche à une carte.

Paramètres

CorpsstringObligatoire

Sous-tâche à ajouter à la carte

Exemple : "Sous-tâche 1"

Réponse
{
  "message": "SubTask added to card successfully.",
  "error": false,
  "code": 200,
  "data": { "CardId": "200429" }
}

Archiver la carte

Archiver (supprimer) une carte.

Aucun paramètre dans le corps. Passez l'ID de la carte dans le chemin de l'URL.

Réponse
{
  "message": "Card archived successfully.",
  "error": false,
  "code": 200,
  "data": { "id": "43813" }
}

Commentaires

Les commentaires sont des messages internes de l'équipe joints aux cartes.

POST/v2/comment
Ajouter un commentaire à une carte
GET/v2/comment/:commentId
Obtenir un commentaire
PUT/v2/comment/:commentId
Mettre à jour un commentaire
DELETE/v2/comment/:commentId
Supprimer un commentaire

Ajouter un commentaire

Paramètres

CardIdstringObligatoire

Carte à laquelle vous voulez ajouter le commentaire

Exemple : "77155"

CorpsstringObligatoire

Commentaire à ajouter sur la carte

Réponse
{
  "message": "Comment created successfully.",
  "error": false,
  "code": 200,
  "data": {
    "Error": false,
    "Success": "Comment added successfully",
    "CommentDetails": {
      "CommentId": 549007,
      "UserId": 1000075,
      "Comment": "Hello comment added",
      "EntityId": "200428",
      "CreatedAt": "2023-10-29T11:29:35.000Z"
    }
  }
}

Mettre à jour le commentaire

Paramètres

CorpsstringObligatoire

Commentaire à mettre à jour

Réponse
{
  "message": "Comment updated successfully.",
  "error": false,
  "code": 200,
  "data": {
    "Error": false,
    "Success": "Comment updated successfully",
    "CommentDetails": {
      "CommentId": 549002,
      "Comment": "updating 1 existing comment",
      "EntityId": "200428",
      "CreatedAt": "2023-10-08T12:32:26.000Z"
    }
  }
}

Étiquettes

Les étiquettes sont des marqueurs de couleur que l'on applique aux cartes pour les classer et les filtrer.

GET/v2/tag
Lister les étiquettes d'un tableau
POST/v2/tag
Créer une étiquette
DELETE/v2/tag
Supprimer une étiquette

Lister les étiquettes

Liste toutes les étiquettes d'un tableau.

Paramètres

BoardIdnumberObligatoire

Tableau dont vous voulez récupérer les étiquettes

Exemple : 20841

Réponse
{
  "message": "Tag list fetched successfully.",
  "error": false,
  "code": 200,
  "data": [
    { "Id": 77163, "Name": "Tag 1", "Color": "8", "BoardId": 20841 },
    { "Id": 77164, "Name": "Tag 2", "Color": "1", "BoardId": 20841 }
  ]
}

Créer une étiquette

Paramètres

BoardIdnumberObligatoire

Tableau où vous voulez créer l'étiquette

Exemple : 20841

NomstringObligatoire

Nom de l'étiquette

Exemple : "En attente"

CouleurnumberObligatoire

Couleur de l'étiquette

Réponse
{
  "message": "Tag crated successfully.",
  "error": false,
  "code": 200,
  "data": {
    "Id": 77162,
    "Name": "Tag 3 API 2",
    "Color": "11",
    "Description": null,
    "BoardId": 3007,
    "UserId": 1000075
  }
}

Supprimer l'étiquette

Paramètres

BoardIdnumberObligatoire

Tableau où l'étiquette a été créée

Exemple : 20841

TagIdnumberObligatoire

ID d'étiquette

Exemple : 77162

Réponse
{
  "message": "Tag deleted successfully.",
  "error": false,
  "code": 200,
  "data": { "Id": 77162 }
}

Séquences d'e-mails

Les séquences d'e-mails sont des enchaînements automatisés d'e-mails de relance que vous pouvez programmer et suivre.

GET/v2/email-sequence
Liste toutes les séquences d'e-mails
GET/v2/email-sequence/:id
Obtenir une séquence d'e-mails

Tout lister

Aucun paramètre.

Réponse
{
  "EmailTemplateId": 153783,
  "UserId": 1000075,
  "Name": "Welcome Email Sequence",
  "CreatedAt": "2023-11-02T15:59:00.000Z",
  "Content": "<p>Hello {{firstName}}, ...</p>",
  "Subject": "Welcome Email",
  "EmailFollowupId": 8393,
  "TotalViewCount": 0,
  "LastSent": null,
  "OwnerName": "A J",
  "OwnerEmail": "aj@dragapp.com"
}

Obtenir une séquence d'e-mails

Récupère une séquence d'e-mails avec toutes ses étapes de relance.

Aucun paramètre dans le corps. Passez l'ID de la séquence dans le chemin de l'URL.

Réponse
{
  "Id": "153783",
  "Name": "Welcome Email Sequence",
  "CreatedAt": "2023-11-02T15:59:00.000Z",
  "EmailFollowups": [
    {
      "EmailFollowupId": 8393,
      "Subject": "Welcome Email",
      "Content": "<p>Hello {{firstName}}, ...</p>",
      "Days": 1,
      "Duration": "days",
      "Hours": 3,
      "Minutes": 30,
      "Sequence": 1
    },
    {
      "EmailFollowupId": 8394,
      "Subject": "Re: Welcome Email",
      "Days": 1,
      "Duration": "days",
      "Sequence": 2
    }
  ]
}

Limites de requêtes

Des limites de requêtes s'appliquent à tous les endpoints de l'API. Si vous recevez un 429 comme code de statut, réduisez la fréquence de vos requêtes et réessayez avec un backoff exponentiel.


SDK et outils


Besoin d'aide ?

Centre d'aide: guides, tutoriels et FAQ

Documentation de l'API intégrée à l'application: référence interactive de l'API dans votre compte DragApp

support@dragapp.com: contactez directement l'équipe