Project release comments are the discussion thread on a project release. They are the same object as release comments on a workspace release, served under the project route.
A comment can reply to another comment through parent_id, and you can mark a thread resolved with is_resolved.
Comments have no permissions of their own. Every request checks your access to the parent release in its project:
Reading comments needs view access to the release. Without it, list and get return 404, the same answer as for a release that doesn't exist.
Creating a comment needs view and edit access to the release. Without view access you get 404. With view access but no edit access you get 403.
Updating or deleting a comment needs edit access to the release, and returns 403 without it. The API doesn't check who wrote the comment, so anyone who can edit the release can edit or delete any of its comments.
Every route also checks that the release belongs to the project in the path and that the comment belongs to the release. A mismatch at either level returns 404.
These routes need the project releases entitlement on your plan, and return 402 payment_required without it. The workspace comment routes at /api/v2/workspaces/{slug}/releases/{release_id}/comments/ don't serve project releases and return 404 for them.
In v1, comments on a project release were served on the workspace route, /api/v1/workspaces/{slug}/releases/{release_id}/comments/. In v2 they live under the project route. See Migrating from v1.
Project release comments overview
Project release comments are the discussion thread on a project release. They are the same object as release comments on a workspace release, served under the project route.
A comment can reply to another comment through
parent_id, and you can mark a thread resolved withis_resolved.Learn more about project releases
The project release comment object
Attributes
idstring (uuid)Unique identifier for the comment.
release_idstring (uuid)The release the comment is on.
comment_idstring (uuid)The id of the description record that holds the comment body.
comment_htmlstringThe comment body as HTML.
parent_idstring (uuid)The comment this one replies to.
nullfor a top-level comment.edited_atstring (date-time)When the body was last changed.
nulluntil an update changescomment_html.is_resolvedbooleanWhether the comment is marked resolved.
is_hiddenbooleanWhether the comment has been hidden by moderation. Read-only.
created_atstring (date-time)When the comment was created.
updated_atstring (date-time)When the comment was last updated.
created_by_idstring (uuid)The user who wrote the comment.
updated_by_idstring (uuid)The user who last updated the comment.
Endpoints
GET/api/v2/workspaces/{slug}/projects/{project_id}/releases/{release_id}/comments/GET/api/v2/workspaces/{slug}/projects/{project_id}/releases/{release_id}/comments/{pk}/POST/api/v2/workspaces/{slug}/projects/{project_id}/releases/{release_id}/comments/PATCH/api/v2/workspaces/{slug}/projects/{project_id}/releases/{release_id}/comments/{pk}/DELETE/api/v2/workspaces/{slug}/projects/{project_id}/releases/{release_id}/comments/{pk}/Access follows the release
Comments have no permissions of their own. Every request checks your access to the parent release in its project:
404, the same answer as for a release that doesn't exist.404. With view access but no edit access you get403.403without it. The API doesn't check who wrote the comment, so anyone who can edit the release can edit or delete any of its comments.Every route also checks that the release belongs to the project in the path and that the comment belongs to the release. A mismatch at either level returns
404.These routes need the project releases entitlement on your plan, and return
402 payment_requiredwithout it. The workspace comment routes at/api/v2/workspaces/{slug}/releases/{release_id}/comments/don't serve project releases and return404for them.Response shaping
Every project release comment read accepts
?fields=for sparse responses. See Sparse fields. Errors follow the shared problem+json contract.Changed from v1
In v1, comments on a project release were served on the workspace route,
/api/v1/workspaces/{slug}/releases/{release_id}/comments/. In v2 they live under the project route. See Migrating from v1.