List a task's comments
Every comment on the card, oldest first.
GET
/tasks/{task}/commentsAuthorization
AuthorizationBearer token · headerrequired`MEDIAN_KEY` from Settings under API, or an MCP OAuth access token. A key acts as the organization; a token acts as the person who approved it.
Path parameters
taskstringrequiredA task key like "MED-12", its number, its id, or a link to the card.
Responses
200The comments.
commentsTaskComment[]Show propertiesHide properties
Array of
TaskCommentidstringauthorobjectShow propertiesHide properties
userIdstring`api` for a Median key.
namestringimageUrlstring | nullagentobject | nullThe coding agent that wrote it, when one did.
Show propertiesHide properties
namestringlabelstringbodystringmentionsobject[]Show propertiesHide properties
Array of
objectuserIdstringnamestringcreatedAtintegereditedAtinteger | null401The bearer token is missing, revoked, or expired.
errorobjectShow propertiesHide properties
codestringmessagestring404Not one of yours, or not there at all.
errorobjectShow propertiesHide properties
codestringmessagestring429Too many requests. Wait the seconds in `Retry-After`. Limits depend on the plan. See [rate limits](/api/errors-and-limits#rate-limits).
errorobjectShow propertiesHide properties
codestringmessagestringRequest
curl -X GET "https://api.median.sh/v1/tasks/string/comments" \
-H "Authorization: Bearer YOUR_TOKEN"const response = await fetch("https://api.median.sh/v1/tasks/string/comments", {
method: "GET",
headers: {
"Authorization": "Bearer YOUR_TOKEN"
}
});Response
{
"comments": [
{
"id": "string",
"author": {
"userId": "string",
"name": "string",
"imageUrl": "string"
},
"agent": {
"name": "string",
"label": "string"
},
"body": "string",
"mentions": [
{
"userId": "string",
"name": "string"
}
],
"createdAt": 0,
"editedAt": 0
}
]
}{
"error": {
"code": "string",
"message": "string"
}
}{
"error": {
"code": "string",
"message": "string"
}
}{
"error": {
"code": "string",
"message": "string"
}
}