List roadmap comments
curl --request GET \
--url https://api.plazza.ca/v1/roadmapBoards/{board}/items/{item}/commentsconst options = {method: 'GET'};
fetch('https://api.plazza.ca/v1/roadmapBoards/{board}/items/{item}/comments', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.plazza.ca/v1/roadmapBoards/{board}/items/{item}/comments"
response = requests.get(url)
print(response.text){
"comments": [
{
"name": "roadmapBoards/hire/items/019a7c2e-4b1d-7c3a-9d4e-5f6a7b8c9d0e/comments/019a7c31-0e2f-7a1b-8c3d-4e5f6a7b8c9d",
"parent": null,
"source": "PLAZZA",
"body": "We’d use this every week.",
"author": {
"displayName": "Camille Tremblay",
"staff": false
},
"reactions": [
{
"emoji": "👍",
"count": 3
}
],
"replyCount": 2,
"etag": "\"1\"",
"createTime": "2026-11-05T09:12:44.031Z",
"updateTime": "2026-11-05T09:12:44.031Z",
"deleteTime": "2026-11-05T09:12:44.031Z"
}
],
"nextPageToken": "Hq8a1Z3kJ9cY2wQe7Rt0bA"
}{
"error": {
"code": 401,
"message": "Unauthorized",
"status": "UNAUTHENTICATED",
"details": [
{
"@type": "type.googleapis.com/google.rpc.ErrorInfo",
"reason": "MISSING_CREDENTIALS",
"domain": "api.plazza.ca"
},
{
"@type": "type.googleapis.com/google.rpc.LocalizedMessage",
"locale": "en",
"message": "Sign in to continue."
}
]
}
}Roadmap
List roadmap comments
An item’s top-level comments, or with a parent filter, one comment’s replies. Removed comments stay, as tombstones, so their replies keep their place.
GET
/
v1
/
roadmapBoards
/
{board}
/
items
/
{item}
/
comments
List roadmap comments
curl --request GET \
--url https://api.plazza.ca/v1/roadmapBoards/{board}/items/{item}/commentsconst options = {method: 'GET'};
fetch('https://api.plazza.ca/v1/roadmapBoards/{board}/items/{item}/comments', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));import requests
url = "https://api.plazza.ca/v1/roadmapBoards/{board}/items/{item}/comments"
response = requests.get(url)
print(response.text){
"comments": [
{
"name": "roadmapBoards/hire/items/019a7c2e-4b1d-7c3a-9d4e-5f6a7b8c9d0e/comments/019a7c31-0e2f-7a1b-8c3d-4e5f6a7b8c9d",
"parent": null,
"source": "PLAZZA",
"body": "We’d use this every week.",
"author": {
"displayName": "Camille Tremblay",
"staff": false
},
"reactions": [
{
"emoji": "👍",
"count": 3
}
],
"replyCount": 2,
"etag": "\"1\"",
"createTime": "2026-11-05T09:12:44.031Z",
"updateTime": "2026-11-05T09:12:44.031Z",
"deleteTime": "2026-11-05T09:12:44.031Z"
}
],
"nextPageToken": "Hq8a1Z3kJ9cY2wQe7Rt0bA"
}{
"error": {
"code": 401,
"message": "Unauthorized",
"status": "UNAUTHENTICATED",
"details": [
{
"@type": "type.googleapis.com/google.rpc.ErrorInfo",
"reason": "MISSING_CREDENTIALS",
"domain": "api.plazza.ca"
},
{
"@type": "type.googleapis.com/google.rpc.LocalizedMessage",
"locale": "en",
"message": "Sign in to continue."
}
]
}
}