Post a comment or a threaded reply. Mentions are stored as rows and notify from those rows.
Post a comment or a threaded reply. Mentions are stored as rows and notify from those rows.
POST
https://app.softsolz.uk/api/v1/services/tasks/tasks/{id}/commentsRecent Requests
Kept only in this browserTimeStatusTook
Send a request with Try it to see it here.
Path Params
idstringrequiredHeaders
AuthorizationstringrequiredBearer token: `Bearer sk_live_...` (or `sk_test_...` for sandbox). A login token will not work here.
Body Params
bodystringrequiredThe comment text.
assignment_idintegerOmit for task-level discussion; set for the private reviewer-to-assignee thread.
parent_comment_idintegerThe comment being replied to.
mentionsarray of integersUser ids mentioned.
Response
Response Body
idintegerComment id.task_idintegerTask the comment belongs to.assignment_idinteger | nullNull means task-level and visible to everyone on the task. Set means the private thread between one assignee and their reviewers.parent_comment_idinteger | nullThe comment this replies to.author_idinteger | nullWho wrote it.bodystringThe comment text.mentionsarray of integersUser ids mentioned. Stored as rows when the comment is written, never re-parsed from the text.created_atstringWhen.Request
curl --request POST \ --url https://app.softsolz.uk/api/v1/services/tasks/tasks/{id}/comments \ --header 'Authorization: Bearer sk_live_your_key' \ --header 'Content-Type: application/json' \ --data '{ "body": "Please redo section 4.", "mentions": [ 31 ]}'Credentials
Sent as a Bearer token and used in the samples above and in Try it. Kept only in this browser tab until you close it. Use an sk_test_ key to stay in your sandbox.
Response · 201
{ "data": { "id": 3300, "task_id": 42, "assignment_id": null, "parent_comment_id": null, "author_id": 8, "body": "Please redo section 4.", "mentions": [ 31 ], "created_at": "2026-09-02T10:00:00.000Z" }}