Przejdź do głównej zawartości

API: Komentarze

Komentarze to wątki dyskusji przy zadaniu. Każdy członek obszaru roboczego może je czytać i pisać; reakcje emoji są liczone na użytkownika i na emoji.

GET /api/workspaces/{workspaceId}/tasks/{taskId}/comments

Zwraca komentarze zadania, od najnowszych:

[
{
"id": "019f8a12-…",
"body": "Looks good — ship it.",
"author": {
"userId": "019f7488-…",
"firstName": "Ada",
"lastName": "Lovelace",
"avatarUrl": "/api/avatars/019f7488-…?v=…",
"inactive": false
},
"createdAt": "2026-07-22T09:50:16Z",
"reactions": [
{ "emoji": "👍", "count": 2, "mine": true }
]
}
]

reactions jest agregowane na emoji; mine ma wartość true, gdy wywołujący użytkownik zareagował tym emoji. author.inactive oznacza treści, których autor usunął swoje konto — klienty wyświetlają zlokalizowaną etykietę „Nieaktywny użytkownik”.

POST /api/workspaces/{workspaceId}/tasks/{taskId}/comments
{ "body": "Looks good — ship it." }

Zwraca 201 z { "id": "…" }. Treść nie może być pusta i jest ograniczona do 2000 znaków (w przeciwnym razie 400).

DELETE /api/workspaces/{workspaceId}/tasks/{taskId}/comments/{commentId}

Zwraca 204. Usuwać mogą tylko autor komentarza i właściciel obszaru roboczego (w przeciwnym razie 403).

PUT /api/workspaces/{workspaceId}/tasks/{taskId}/comments/{commentId}/reactions/{emoji}
DELETE /api/workspaces/{workspaceId}/tasks/{taskId}/comments/{commentId}/reactions/{emoji}

PUT ustawia reakcję wywołującego użytkownika, DELETE ją usuwa; oba są idempotentne i zwracają 204. Segment ścieżki {emoji} to samo emoji zakodowane w URL. Obsługiwane reakcje: 👍 ❤️ 😄 🎉 👀 🚀 — wszystko inne odpowiada 400.