For the complete documentation index, see llms.txt. This page is also available as Markdown.

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
findingIdstring · 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

Filter by Azure repository IDs

githubRepositoryIdinteger · int64[]Optional

Filter by GitHub repository IDs

githubTeamIdinteger · int64Optional

Filter by GitHub team ID

bitbucketRepositoryIdstring[]Optional

Filter by Bitbucket repository IDs

Responses
200

OK

application/json
nextTokenstringRequired
numItemsintegerRequired
versionstringOptional
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
aiGeneratedboolean · nullableOptional

true = AI code-review only, false = rule-only, omitted = both

isLatestboolean · nullableOptional
autoFixStatestring · nullableOptional

filter by AutoFixState (e.g. 'none' for findings with no cached fix)

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

Filter by Azure repository IDs

githubRepositoryIdinteger · int64[]Optional

Filter by GitHub repository IDs

githubTeamIdinteger · int64Optional

Filter by GitHub team ID

bitbucketRepositoryIdstring[]Optional

Filter by Bitbucket repository IDs

Responses
200

OK

application/json
nextTokenstringRequired
numItemsintegerRequired
versionstringOptional
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

Filter by Azure repository IDs

githubRepositoryIdinteger · int64[]Optional

Filter by GitHub repository IDs

githubTeamIdinteger · int64Optional

Filter by GitHub team ID

bitbucketRepositoryIdstring[]Optional

Filter by Bitbucket repository IDs

Responses
200

OK

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

Update a Finding

Override a finding's priority or severity. The request accepts priorityOverride (URGENT, IMPORTANT, MEDIUM, LOW) and severityOverride (CRITICAL, HIGH, MEDIUM, LOW):

Update Finding

patch

Update a given finding with the fields provided

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

Filter by Azure repository IDs

githubRepositoryIdinteger · int64[]Optional

Filter by GitHub repository IDs

githubTeamIdinteger · int64Optional

Filter by GitHub team ID

bitbucketRepositoryIdstring[]Optional

Filter by Bitbucket repository IDs

Body
priorityOverridestring · enum · nullableOptionalPossible values:
severityOverridestring · enum · nullableOptionalPossible values:
Responses
200

OK

application/json
versionstringOptional
patch/sast/findings/{findingId}

Get Triage Details

Retrieve the AI triage reasoning and reachability assessment for a finding:

Get Triaged Finding

get

Returns the triage data for a specific 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

Filter by Azure repository IDs

githubRepositoryIdinteger · int64[]Optional

Filter by GitHub repository IDs

githubTeamIdinteger · int64Optional

Filter by GitHub team ID

bitbucketRepositoryIdstring[]Optional

Filter by Bitbucket repository IDs

Responses
200

OK

application/json
presignedUrlstringRequired
versionstringOptional
get/sast/findings/{findingId}/triage

Allowlist a Finding

Apply a policy exception when you accept the risk for a finding. Supply an allowlistReason and an allowlistType (AI, UserFixed, UserAssumeRisk, UserFalsePositive, or UserOther):

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

Filter by Azure repository IDs

githubRepositoryIdinteger · int64[]Optional

Filter by GitHub repository IDs

githubTeamIdinteger · int64Optional

Filter by GitHub team ID

bitbucketRepositoryIdstring[]Optional

Filter by Bitbucket repository IDs

Body
allowlistReasonstringRequired

The reason for allowlisting the finding

allowlistTypestring · enumRequiredPossible values:
Responses
200

OK

application/json
linkstringOptional

A link to the pull request

titlestringOptional

The title of the pull request

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

Remove a Finding from the Allowlist

Re-activate alerting for a previously allowlisted finding:

Unallowlist Finding

post

Unallowlists 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

Filter by Azure repository IDs

githubRepositoryIdinteger · int64[]Optional

Filter by GitHub repository IDs

githubTeamIdinteger · int64Optional

Filter by GitHub team ID

bitbucketRepositoryIdstring[]Optional

Filter by Bitbucket repository IDs

Body
unallowlistReasonstringRequired

The reason for unallowlisting the finding

Responses
204

No Content

No content

post/sast/findings/{findingId}/unallowlist

No content

Allowlist Findings in Bulk

Allowlist multiple findings in a single call. The body adds a findingIds array alongside the standard allowlistReason and allowlistType:

Allowlist Batch of SAST Findings

post

Allowlist a list of SAST findings, by findingsID

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

Filter by Azure repository IDs

githubRepositoryIdinteger · int64[]Optional

Filter by GitHub repository IDs

githubTeamIdinteger · int64Optional

Filter by GitHub team ID

bitbucketRepositoryIdstring[]Optional

Filter by Bitbucket repository IDs

Body
allowlistReasonstringRequired

The reason for allowing the finding

allowlistTypestring · enumRequiredPossible values:
findingIdsstring[] · nullableRequired

The ID of the finding to allowlist

Responses
204

No Content

No content

post/sast/findings/allowlist

No content

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

Filter by Azure repository IDs

githubRepositoryIdinteger · int64[]Optional

Filter by GitHub repository IDs

githubTeamIdinteger · int64Optional

Filter by GitHub team ID

bitbucketRepositoryIdstring[]Optional

Filter by Bitbucket repository IDs

Body
forceboolean · nullableOptional
messagestringOptional
originCampaignIdstringOptional
Responses
200

OK

application/json
autoFixStatestring · enumRequiredPossible values:
errorstringOptional
versionstringOptional
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

Filter by Azure repository IDs

githubRepositoryIdinteger · int64[]Optional

Filter by GitHub repository IDs

githubTeamIdinteger · int64Optional

Filter by GitHub team ID

bitbucketRepositoryIdstring[]Optional

Filter by Bitbucket repository IDs

Responses
200

OK

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

List Repositories

Enumerate the repositories Code Review is scanning, along with their scan status:

Get Repositories

get

Returns a map of repository stats. The map is sorted by repositoryID and contains a list of repository stats for each repositoryID.

Query parameters
nextTokenstring · nullableOptional
limitinteger · 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

Filter by Azure repository IDs

githubRepositoryIdinteger · int64[]Optional

Filter by GitHub repository IDs

githubTeamIdinteger · int64Optional

Filter by GitHub team ID

bitbucketRepositoryIdstring[]Optional

Filter by Bitbucket repository IDs

Responses
200

OK

application/json
nextTokenstringRequired
numItemsintegerRequired
versionstringRequired
get/sast/repositories

Last updated