API-Dokumentation

Mit der REST-API von DragApp interagieren Sie programmatisch mit Ihren Boards, Spalten, Karten, Tags und E-Mail-Sequenzen. Bauen Sie Integrationen, automatisieren Sie Workflows und synchronisieren Sie Drag mit Ihren bestehenden Tools.


Authentifizierung

Die DragApp-API authentifiziert Anfragen mit API-Schlüsseln. Übergeben Sie Ihren API-Schlüssel im Header Autorisierung Header jeder Anfrage.

Ihren API-Schlüssel finden Sie in den Einstellungen in Drag. Wenn Sie noch kein Konto haben, hier registrieren.

Beispielanfrage
curl --request GET \
  --url https://app.dragapp.com/v2/board \
  --header 'Authorization: YOUR_API_KEY'

Bewahren Sie Ihren API-Schlüssel sicher auf. Teilen Sie ihn nicht öffentlich und committen Sie ihn nicht in die Versionskontrolle.


Basis-URL

Alle Endpunkte sind relativ zu dieser Basis-URL:

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

Antwortformat

Alle Antworten liefern JSON mit einheitlicher Struktur. Codes im 200er-Bereich bedeuten Erfolg. Codes im 400er-Bereich weisen auf einen Fehler in der Anfrage hin.

Erfolg
{
  "message": "Success message",
  "error": false,
  "code": 200,
  "data": { ... }
}
Fehler
{
  "message": "Error message",
  "code": 400,
  "error": true
}

HTTP-Statuscodes

CodeBeschreibung
200OK. Anfrage erfolgreich.
400Bad Request. Ungültige Parameter.
401Nicht autorisiert. API-Schlüssel ungültig oder fehlt.
403Zugriff verweigert. Unzureichende Berechtigungen.
404Not Found. Die Ressource existiert nicht.
429Rate Limited. Zu viele Anfragen.
500Serverfehler. Bei uns ist etwas schiefgelaufen.

Boards

Boards sind die Container der obersten Ebene in Drag. Jedes Board entspricht einem gemeinsamen Postfach oder einem Aufgaben-Workspace in Gmail.

GET/v2/board
Alle Boards auflisten
GET/v2/board/:id
Ein einzelnes Board abrufen
POST/v2/board
Ein Board erstellen

Board erstellen

Erstellt ein Board in Ihrem Gmail.

Parameter

NamestringErforderlich

Name des Boards

Beispiel: „Support-Board“

NutzerlistOptional

Liste der Nutzer-E-Mails

Beispiel: ["aj@dragapp.com"]

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

Boards auflisten

Alle Board-Typen auflisten.

Keine Parameter.

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

Board abrufen

Details eines einzelnen Boards abrufen.

Keine Body-Parameter. Übergeben Sie die Board-ID im URL-Pfad.

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

Spalten

Spalten stehen für die Phasen Ihres Kanban-Boards (z. B. Zu erledigen, In Arbeit, Erledigt). Jede Spalte gehört zu einem Board.

GET/v2/board/:boardId/columns
Alle Spalten eines Boards auflisten
GET/v2/board/:boardId/column/:id
Eine einzelne Spalte abrufen
GET/v2/board/:boardId/column/:columnId/cards
Alle Karten einer Spalte auflisten
POST/v2/board/:boardId/column
Eine Spalte erstellen

Spalte erstellen

Erstellt eine Spalte in einem Board.

Parameter

NamestringErforderlich

Name der Spalte

Beispiel: „Zu erledigen“

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

Spalten auflisten

Alle Spalten eines Boards auflisten.

Keine Body-Parameter.

Antwort
{
  "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" }
  ]
}

Karten in Spalte auflisten

Alle Karten einer Spalte auflisten. Unterstützt Paginierung.

Parameter

pagenumberErforderlich

Seitenzahl

Beispiel: 1

limitstringOptional

Anzahl der Karten pro Seite

Beispiel: "10"

Antwort
{
  "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": "[{}]"
    }
  ]
}

Karten

Karten stehen für einzelne Aufgaben oder E-Mail-Konversationen auf einem Board. Karten können Notizen, Kommentare, Unteraufgaben, Tags und Zuständige haben.

GET/v2/card/:id
Kartendetails abrufen
POST/v2/card
Eine Karte erstellen
PUT/v2/card/:cardId
Eine Karte aktualisieren
POST/v2/card/move-card
Karte in eine andere Spalte oder ein anderes Board verschieben
DELETE/v2/card/:cardId
Eine Karte archivieren
POST/v2/card/:cardId/note
Einer Karte eine Notiz hinzufügen
POST/v2/card/:cardId/tags
Einer Karte ein Tag hinzufügen
POST/v2/card/:cardId/sub-task
Einer Karte eine Unteraufgabe hinzufügen

Karte erstellen

Erstellt eine Karte auf einem Board.

Parameter

BoardIdnumberErforderlich

Board, auf dem die Karte eingefügt werden soll

Beispiel: 20841

ColumnIdnumberErforderlich

Board-Spalte, in die die Karte eingefügt werden soll

Beispiel: 1094

CardTitlestringErforderlich

Kartentitel

Beispiel: „Planungsaufgabe“

NotizstringOptional

Notiz, die der Karte hinzugefügt wird

KommentarstringOptional

Kommentar, der zur Karte hinzugefügt werden soll

UnteraufgabestringOptional

Unteraufgabe, die der Karte hinzugefügt wird

ZuständiglistOptional

E-Mail der zuständigen Person, oder null, um die Zuweisung aufzuheben

Beispiel: ["aj@dragapp.com"]

ReadStatusnumberOptional

Gelesen = 1, Ungelesen = 0. Standard ist Gelesen.

Beispiel: 1

Antwort
{
  "Error": false,
  "Success": "Task Added Successfully",
  "taskId": 200433
}

Karte aktualisieren

Eine bestehende Karte aktualisieren.

Parameter

BoardIdnumberErforderlich

Board, auf dem sich die Karte befindet

Beispiel: 20841

ColumnIdnumberErforderlich

Board-Spalte, in der sich die Karte befindet

Beispiel: 1094

CardTitlestringErforderlich

Kartentitel

Beispiel: „Planungsaufgabe“

NotizstringOptional

Notiz für die Karte

KommentarstringOptional

Kommentar für die Karte

UnteraufgabestringOptional

Unteraufgabe für die Karte

ZuständiglistOptional

E-Mail der zuständigen Person, oder null, um die Zuweisung aufzuheben

Beispiel: ["aj@dragapp.com"]

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

Karte verschieben

Verschiebt eine Karte in eine andere Spalte oder ein anderes Board.

Parameter

IdstringErforderlich

Zu verschiebende Karte

Beispiel: "18ac0539048b4d0d"

NewBoardIdnumberOptional

Board, auf das die Karte verschoben werden soll

Beispiel: 1094

NewColumnIdnumberErforderlich

Board-Spalte, in die die Karte verschoben werden soll

Beispiel: 1094

NewPositionnumberErforderlich

Position in der Spalte, an die Sie die Karte verschieben möchten

Beispiel: 0

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

Notiz hinzufügen

Einer Karte eine Notiz hinzufügen.

Parameter

TextstringErforderlich

Notiz, die der Karte hinzugefügt wird

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

Tag zur Karte hinzufügen

Einer Karte ein Tag hinzufügen.

Parameter

TagIdstringErforderlich

Tag, das der Karte hinzugefügt wird

Beispiel: "77155"

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

Unteraufgabe hinzufügen

Einer Karte eine Unteraufgabe hinzufügen.

Parameter

TextstringErforderlich

Unteraufgabe, die der Karte hinzugefügt wird

Beispiel: „Unteraufgabe 1“

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

Karte archivieren

Eine Karte archivieren (löschen).

Keine Body-Parameter. Übergeben Sie die Karten-ID im URL-Pfad.

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

Kommentare

Kommentare sind interne Teamnachrichten, die an Karten hängen.

POST/v2/comment
Einer Karte einen Kommentar hinzufügen
GET/v2/comment/:commentId
Einen Kommentar abrufen
PUT/v2/comment/:commentId
Einen Kommentar aktualisieren
DELETE/v2/comment/:commentId
Einen Kommentar löschen

Kommentar hinzufügen

Parameter

CardIdstringErforderlich

Karte, zu der der Kommentar hinzugefügt werden soll

Beispiel: "77155"

TextstringErforderlich

Kommentar, der zur Karte hinzugefügt werden soll

Antwort
{
  "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"
    }
  }
}

Kommentar aktualisieren

Parameter

TextstringErforderlich

Zu aktualisierender Kommentar

Antwort
{
  "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"
    }
  }
}

Tags

Tags sind farbige Markierungen, die Karten zur Kategorisierung und Filterung zugewiesen werden können.

GET/v2/tag
Tags eines Boards auflisten
POST/v2/tag
Ein Tag erstellen
DELETE/v2/tag
Ein Tag löschen

Tags auflisten

Alle Tags eines Boards auflisten.

Parameter

BoardIdnumberErforderlich

Board, von dem die Tags abgerufen werden sollen

Beispiel: 20841

Antwort
{
  "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 }
  ]
}

Tag erstellen

Parameter

BoardIdnumberErforderlich

Board, auf dem der Tag erstellt werden soll

Beispiel: 20841

NamestringErforderlich

Name des Tags

Beispiel: „Ausstehend“

FarbenumberErforderlich

Farbe des Tags

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

Tag löschen

Parameter

BoardIdnumberErforderlich

Board, auf dem der Tag erstellt wurde

Beispiel: 20841

TagIdnumberErforderlich

Tag-ID

Beispiel: 77162

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

E-Mail-Sequenzen

E-Mail-Sequenzen sind automatisierte Follow-up-Ketten, die sich planen und nachverfolgen lassen.

GET/v2/email-sequence
Alle E-Mail-Sequenzen auflisten
GET/v2/email-sequence/:id
Eine E-Mail-Sequenz abrufen

Alle auflisten

Keine Parameter.

Antwort
{
  "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"
}

E-Mail-Sequenz abrufen

Eine einzelne E-Mail-Sequenz mit allen Follow-up-Schritten abrufen.

Keine Body-Parameter. Übergeben Sie die Sequenz-ID im URL-Pfad.

Antwort
{
  "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
    }
  ]
}

Rate Limits

Für alle API-Endpunkte gelten Rate Limits. Wenn Sie eine 429 als Statuscode erhalten, reduzieren Sie die Häufigkeit Ihrer Anfragen und versuchen Sie es mit exponentiellem Backoff erneut.


SDKs & Tools


Brauchen Sie Hilfe?

Help Center: Leitfäden, Tutorials und FAQs

API-Dokumentation direkt in der App: interaktive API-Referenz in Ihrem DragApp-Konto

support@dragapp.com: direkter Kontakt zum Team