Skip to navigation

Update an issue

Close an issue, mark it a false positive, reopen it, or change its endpoint. A status or duplicate change is also applied to the issue’s linked GitHub, Linear and Notion tickets.

Closing. Send closedDisposition with every close that is not a plain fix. Reopening clears the disposition and the rest of the close record. false-positive is a status, so it never carries a disposition.

Duplicates. Send status: "closed", closedDisposition: "duplicate" and duplicateOf naming another issue in the workspace. duplicateOf is refused with any other disposition, and the original cannot itself be a duplicate. Closing an issue that has duplicates as a duplicate moves them onto the new original. Reopening the issue or changing its disposition clears the link.

Endpoint. Setting endpointId also sets the issue’s application; null clears both.

Errors: 400 for an invalid value, no update fields, or an inconsistent duplicate; 403 in workspaces where Pensar owns the verdict (move the issue to in-review instead); 404 when the issue, duplicateOf original or endpoint is not in the workspace; 409 when another finding in the same pentest has the same name and endpoint.

Requires the issues:write API key scope.

Authentication

AuthorizationBearer

A workspace API key, sent as Authorization: Bearer.

OR
x-api-keystring

A workspace API key, sent as x-api-key.

Path parameters

issueIdstringRequired

Issue UUID or label, e.g. VULN-000123.

Request

This endpoint expects an object.
statusenumOptional
Allowed values:
closedDispositionenumOptional

Structured close verdict. Send one whenever a close is not a plain fix; a finding closed without one reads as resolved.

Allowed values:
duplicateOfstringOptional

The original issue, as a UUID or label. Required with, and only with, closedDisposition: "duplicate".

closedReasonstringOptional

Free-text reason for closing.

closedCommentsstringOptional
endpointIdstring or nullOptionalformat: "uuid"

Endpoint in this workspace to associate. Also sets the issue’s application. null clears both; omit to leave unchanged.

userFlaggedFalsePositivebooleanOptionalDeprecated

Use status: "false-positive".

userFlaggedFalsePositiveReasonstringOptionalDeprecated

Use closedReason.

Response

The updated issue.
successboolean
issueobject

Errors

400
Bad Request Error
401
Unauthorized Error
403
Forbidden Error
404
Not Found Error
409
Conflict Error