Skip to content

Aggregated comments across all project components

GET
/projects/{projectId}/comments

Returns paginated comments from all components in the project, with triage status counts. Different row shape from component comments — includes component_id/component_name but omits some triage attribution fields. Uses Project#paginated_comments (NOT CommentQueryService).

Authorizations

tokenAuth

Personal access token authentication. Send via Authorization header: Authorization: Token vulcan_xxx. Tokens are SHA-256 hashed server-side (never stored in plaintext). Scopes: read (GET), write (mutations), admin (everything). Create tokens via Settings → API Tokens in the web UI.

Type
HTTP (token)

Parameters

Query Parameters

triage_status

Filter comments by triage disposition. Defaults to "pending" — the triage table opens on undispositioned comments. Use "all" to return comments in any status.

Type
string
Valid values
"all""pending""concur""concur_with_comment""non_concur""duplicate""informational""needs_clarification""withdrawn""addressed_by"
Example"pending"
Default
"pending"
page

Page number for paginated results (1-based).

Type
integer
Example1
Minimum
1
Default
1
per_page

Number of items to return per page.

Type
integer
Example25
Minimum
1
Maximum
1000
Default
25
section

Filter by requirement section (fixtext, check_content, etc.).

Type
string
Example"fixtext"
component_id

Filter to a specific component within the project.

Type
integer
author_id

Filter by comment author.

Type
integer
q

Text search within comment content.

Type
string
resolved

Filter by resolved state (true/false/all).

Type
string
Valid values
"true""false""all"
Example"false"

Responses

Paginated project comment rows with status counts

application/json
JSON
{
  
"rows": [
  
  
{
  
  
  
"id": 26,
  
  
  
"rule_displayed_name": "PHOS-03-000038",
  
  
  
"component_id": 1,
  
  
  
"component_name": "Photon OS 3",
  
  
  
"triage_status": "pending",
  
  
  
"comment": "This requirement needs clarification.",
  
  
  
"responses_count": 0,
  
  
  
"reactions": {
  
  
  
  
"up": 0,
  
  
  
  
"down": 0,
  
  
  
  
"mine": null
  
  
  
}
  
  
}
  
],
  
"pagination": {
  
  
"page": 1,
  
  
"per_page": 25,
  
  
"total": 3
  
},
  
"status_counts": {
  
  
"pending": 1,
  
  
"concur": 1,
  
  
"informational": 1
  
}
}

Playground

Server
Authorization
Variables
Key
Value

Samples

Powered by VitePress OpenAPI

Part of the MITRE Security Automation Framework (SAF)