Skip to content
developers
Open TestCollab

Add issue comment

POST/issuecomments

Adds a new comment on an issue

Use resource IDs from your own project. Keep the API token in your server or CI environment.

example.ts
import { createConfiguration, IssueCommentsApi } from '@testcollab/sdk';
const config = createConfiguration(process.env.TESTCOLLAB_TOKEN!);
const api = new IssueCommentsApi(config);
const result = await api.addIssueComment({
"issueCommentPayload": {
"comment": "example",
"issue": 123,
"project": 123
}
});
console.log(result);
Field Type Required Description
comment string Yes —
issue number Yes —
project number Yes —
mentions Array of string No Array of user IDs

200 — Created IssueComment

Field Type Required Description
id number Yes —
issue number No —
project number No —
mentions User Collection No —
mentions[].id number Yes —
mentions[].name string Yes —
mentions[].about_me string No —
mentions[].email string Yes If email is modified then a confirmation should be sent
mentions[].avatar Upload No —
mentions[].avatar.id number Yes —
mentions[].avatar.name string Yes —
mentions[].avatar.hash string Yes —
mentions[].avatar.ext string Yes —
mentions[].avatar.mime string Yes —
mentions[].avatar.size string Yes —
mentions[].avatar.url string Yes —
mentions[].avatar.created_by number No —
mentions[].avatar.created_at string Yes —
mentions[].avatar.updated_at string Yes —
mentions[].username string No —
mentions[].last_active string No —
mentions[].confirmed boolean No —
mentions[].rank string No Values: User, Administrator.
mentions[].projects Project User Minified Collection No —
mentions[].projects[].id number Yes —
mentions[].projects[].user number Yes —
mentions[].projects[].project number Yes —
mentions[].projects[].role number Yes —
mentions[].projects[].created_at string Yes —
mentions[].projects[].updated_at string Yes —
mentions[].created_at string No —
mentions[].is_guest number No —
comment string Yes —
created_by User Minified Yes —
created_by.id number Yes —
created_by.username string No —
created_by.name string Yes —
created_by.avatar Upload No —
created_by.avatar.id number Yes —
created_by.avatar.name string Yes —
created_by.avatar.hash string Yes —
created_by.avatar.ext string Yes —
created_by.avatar.mime string Yes —
created_by.avatar.size string Yes —
created_by.avatar.url string Yes —
created_by.avatar.created_by number No —
created_by.avatar.created_at string Yes —
created_by.avatar.updated_at string Yes —
created_by.is_guest number No —
updated_by User Minified No —
updated_by.id number Yes —
updated_by.username string No —
updated_by.name string Yes —
updated_by.avatar Upload No —
updated_by.avatar.id number Yes —
updated_by.avatar.name string Yes —
updated_by.avatar.hash string Yes —
updated_by.avatar.ext string Yes —
updated_by.avatar.mime string Yes —
updated_by.avatar.size string Yes —
updated_by.avatar.url string Yes —
updated_by.avatar.created_by number No —
updated_by.avatar.created_at string Yes —
updated_by.avatar.updated_at string Yes —
updated_by.is_guest number No —
created_at string No —
updated_at string No —
Illustrative response
{
"id": 123,
"issue": 123,
"project": 123,
"mentions": [],
"comment": "example",
"created_by": {
"id": 123,
"username": "example",
"name": "example",
"avatar": {
"id": 123,
"name": "example",
"hash": "example",
"ext": "example",
"mime": "example",
"size": "example",
"url": "example",
"created_by": 123,
"created_at": "example"
},
"is_guest": 123
},
"updated_by": {
"id": 123,
"username": "example",
"name": "example",
"avatar": {
"id": 123,
"name": "example",
"hash": "example",
"ext": "example",
"mime": "example",
"size": "example",
"url": "example",
"created_by": 123,
"created_at": "example"
},
"is_guest": 123
},
"created_at": "example",
"updated_at": "example"
}
Status Meaning
400 bad input parameter
401 Unauthorized
403 Forbidden
404 Not found
500 Internal server error