Code Review API

Query code review findings and events via the Nullify API

Existing endpoints retain the /sast prefix for backwards compatibility. New wrappers will be introduced over time without breaking the current contract.

Base URL

All endpoints share the base URL: https://api.<TENANT>.nullify.ai. Replace <TENANT> with your tenant slug (for example https://api.acme.nullify.ai).

Events

Receive a stream of notable code-review activity (new findings, fixes, suppressions, branch summaries):

Get SAST Events

get

Returns SAST events after a specified timestamp or event ID. All events are returned if no timestamp or event ID is provided. A maximum of 100 events can be returned per request.

Query parameters
nextTokenstring · nullableOptional
limitinteger · nullableOptional
fromTimestring · nullableOptional
eventTypestring[]Optional
fileOwnerNamestring[]Optional
sortstring · nullableOptional
azureOrganizationIdstringOptional

The Azure organization ID

bitbucketWorkspaceIdstringOptional

The Bitbucket workspace ID

githubOwnerIdinteger · int64Optional

The Github owner ID

gitlabGroupIdinteger · int64Optional

The GitLab group ID

installationIdstringOptional

The Nullify installation ID

azureRepositoryIdstring[]Optional
githubRepositoryIdinteger · int64[]Optional
githubTeamIdinteger · int64Optional
bitbucketRepositoryIdstring[]Optional
Responses
chevron-right
200

OK

application/json
nextTokenstringRequired
numItemsintegerRequired
versionstringRequired
get
/sast/events

List Findings

List active findings with filtering by repository, severity, or status:

Get SAST Findings

get

Returns a filtered set of SAST findings based on query parameters

Query parameters
nextTokenstring · nullableOptional
limitinteger · nullableOptional
priorityLabelstring · nullableOptional
severitystring · nullableOptional
fileOwnerNamestring[]Optional
hasPullRequestboolean · nullableOptional
branchstring · nullableOptional
workflowstring · nullableOptional
repositoryIdsstring[]Optional

if not provided, all repositories will be included

isResolvedboolean · nullableOptional

combination of isFixed, isFalsePositive, isAllowlisted and isArchived

isFixedboolean · nullableOptional
isFalsePositiveboolean · nullableOptional
isAllowlistedboolean · nullableOptional
isArchivedboolean · nullableOptional
sortBystring · nullableOptional
sortstring · nullableOptional
azureOrganizationIdstringOptional

The Azure organization ID

bitbucketWorkspaceIdstringOptional

The Bitbucket workspace ID

githubOwnerIdinteger · int64Optional

The Github owner ID

gitlabGroupIdinteger · int64Optional

The GitLab group ID

installationIdstringOptional

The Nullify installation ID

azureRepositoryIdstring[]Optional
githubRepositoryIdinteger · int64[]Optional
githubTeamIdinteger · int64Optional
bitbucketRepositoryIdstring[]Optional
Responses
chevron-right
200

OK

application/json
nextTokenstringRequired
numItemsintegerRequired
versionstringRequired
get
/sast/findings

Get a Finding

Retrieve full context for a single finding, including reachability evidence and ownership metadata:

Get Finding

get

Returns a given finding with explanation and impact

Path parameters
findingIdstringRequired
Query parameters
azureOrganizationIdstringOptional

The Azure organization ID

bitbucketWorkspaceIdstringOptional

The Bitbucket workspace ID

githubOwnerIdinteger · int64Optional

The Github owner ID

gitlabGroupIdinteger · int64Optional

The GitLab group ID

installationIdstringOptional

The Nullify installation ID

azureRepositoryIdstring[]Optional
githubRepositoryIdinteger · int64[]Optional
githubTeamIdinteger · int64Optional
bitbucketRepositoryIdstring[]Optional
Responses
chevron-right
200

OK

application/json
presignedUrlstringRequired
versionstringRequired
get
/sast/findings/{findingId}

Allowlist a Finding

Apply a policy exception when you accept the risk for a finding:

Allowlist Finding

post

Allowlists a finding

Path parameters
findingIdstringRequired
Query parameters
azureOrganizationIdstringOptional

The Azure organization ID

bitbucketWorkspaceIdstringOptional

The Bitbucket workspace ID

githubOwnerIdinteger · int64Optional

The Github owner ID

gitlabGroupIdinteger · int64Optional

The GitLab group ID

installationIdstringOptional

The Nullify installation ID

azureRepositoryIdstring[]Optional
githubRepositoryIdinteger · int64[]Optional
githubTeamIdinteger · int64Optional
bitbucketRepositoryIdstring[]Optional
Body
allowlistReasonstringRequired

The reason for allowlisting the finding

allowlistTypestring · enumRequiredPossible values:
Responses
chevron-right
200

OK

application/json
linkstringRequired

A link to the pull request

titlestringRequired

The title of the pull request

versionstringRequired
post
/sast/findings/{findingId}/allowlist

Trigger Autofix

Request a remediation patch for supported languages:

Post Finding AutoFix

post

Creates a pull request to fix a given finding

Path parameters
findingIdstringRequired
Query parameters
azureOrganizationIdstringOptional

The Azure organization ID

bitbucketWorkspaceIdstringOptional

The Bitbucket workspace ID

githubOwnerIdinteger · int64Optional

The Github owner ID

gitlabGroupIdinteger · int64Optional

The GitLab group ID

installationIdstringOptional

The Nullify installation ID

azureRepositoryIdstring[]Optional
githubRepositoryIdinteger · int64[]Optional
githubTeamIdinteger · int64Optional
bitbucketRepositoryIdstring[]Optional
Body
messagestringRequired
originCampaignIdstringRequired
reasoningstringRequired
Responses
chevron-right
200

OK

application/json
autoFixStatestring · enumRequiredPossible values:
errorstringRequired
versionstringRequired
post
/sast/findings/{findingId}/autofix/fix

Finding Events

Review every decision applied to a finding (status changes, tickets, suppressions):

Get Finding Events

get

Returns a list of events for a given finding.

Path parameters
findingIdstringRequired
Query parameters
azureOrganizationIdstringOptional

The Azure organization ID

bitbucketWorkspaceIdstringOptional

The Bitbucket workspace ID

githubOwnerIdinteger · int64Optional

The Github owner ID

gitlabGroupIdinteger · int64Optional

The GitLab group ID

installationIdstringOptional

The Nullify installation ID

azureRepositoryIdstring[]Optional
githubRepositoryIdinteger · int64[]Optional
githubTeamIdinteger · int64Optional
bitbucketRepositoryIdstring[]Optional
Responses
chevron-right
200

OK

application/json
numItemsintegerRequired
versionstringRequired
get
/sast/findings/{findingId}/events

Attach manual pentester evidence to an existing code review finding:

Update SAST Finding With Pentest Result

post

Update SAST finding with pentest result

Path parameters
findingIdstringRequired
Query parameters
azureOrganizationIdstringOptional

The Azure organization ID

bitbucketWorkspaceIdstringOptional

The Bitbucket workspace ID

githubOwnerIdinteger · int64Optional

The Github owner ID

gitlabGroupIdinteger · int64Optional

The GitLab group ID

installationIdstringOptional

The Nullify installation ID

azureRepositoryIdstring[]Optional
githubRepositoryIdinteger · int64[]Optional
githubTeamIdinteger · int64Optional
bitbucketRepositoryIdstring[]Optional
Body
Responses
post
/sast/findings/{findingId}/pentest

No content

Last updated