Vulnerabilities API
Actions in the vulnerabilities namespace of the Nexigon Hub API.
vulnerabilities_IndexVersion
POST /api/v1/actions/invoke/vulnerabilities_IndexVersion Trigger indexing of every CycloneDX document referenced by the
version's artifact assets via relations.{sbom,vdr,vex}.
The hub fetches the referenced documents from the repository's S3 storage and rebuilds the index for this version. The repository must have S3 configured.
Request IndexVersionDocumentsAction
Fields (JSON object)
versionId(fromversion_id) requiredPackageVersionId string
Response IndexVersionDocumentsOutput
Fields (JSON object)
indexedrequiredWhether indexing actually ran (false when the feature flag is off or the version has no artifacts with
relations.*metadata).boolean artifactCount(fromartifact_count) requiredNumber of artifact assets whose documents were indexed.
integer documentCount(fromdocument_count) requiredTotal number of documents (SBOM + VDR + VEX) ingested.
integer
vulnerabilities_IndexPackage
POST /api/v1/actions/invoke/vulnerabilities_IndexPackage Trigger indexing of every CycloneDX document referenced by the
package's metadata via relations.{vex} (typically just VEX).
Mirrors IndexVersionDocumentsAction. Used after attaching a new
package-level VEX asset and pointing the package's metadata at it.
Request IndexPackageDocumentsAction
Fields (JSON object)
packageId(frompackage_id) requiredPackageId string
Response IndexPackageDocumentsOutput
Fields (JSON object)
indexedrequiredboolean documentCount(fromdocument_count) requiredinteger
vulnerabilities_GetVersionOverview
POST /api/v1/actions/invoke/vulnerabilities_GetVersionOverview Get the vulnerability overview for a package version: artifact list, SBOM/VDR/VEX descriptors per artifact, package-level VEX, and (when indexing is enabled) the rolled-up severity summary.
Request GetVersionVulnerabilityOverviewAction
Fields (JSON object)
versionId(fromversion_id) requiredPackageVersionId string
Response GetVersionVulnerabilityOverviewOutput
Fields (JSON object)
versionId(fromversion_id) requiredPackageVersionId stringindexingEnabled(fromindexing_enabled) requiredWhether the indexing feature is enabled for this organization.
boolean artifactsrequiredPer-artifact descriptors. Populated by walking each artifact's
relations.{sbom,vdr,vex}metadata.array<ArtifactDescriptor>
Items
ArtifactDescriptor
Fields (JSON object)
assetId(fromasset_id) requiredRepositoryAssetId
stringfilenamerequiredstring
sbomoptionalSBOM document (the first valid
relations.sbomentry).AttachedDocument
Fields (JSON object)
assetId(fromasset_id) requiredRepositoryAssetId
stringrepositoryId(fromrepository_id) requiredRepositoryId
stringfilenamerequiredstring
sizerequiredinteger (i64)
vdrsrequiredAll VDR documents referenced from
relations.vdr.array<AttachedVdrDocument>
Items
AttachedVdrDocument
Fields (JSON object)
documentrequiredAttachedDocument
Fields (JSON object)
assetId(fromasset_id) requiredRepositoryAssetId
stringrepositoryId(fromrepository_id) requiredRepositoryId
stringfilenamerequiredstring
sizerequiredinteger (i64)
sourceTool(fromsource_tool) optionalstring
severitySummary(fromseverity_summary) optionalSeveritySummary
Fields (JSON object)
criticalrequiredinteger
highrequiredinteger
mediumrequiredinteger
lowrequiredinteger
inforequiredinteger
unknownrequiredinteger
vexrequiredAll VEX documents referenced from
relations.vex.array<AttachedVexDocument>
Items
AttachedVexDocument
Fields (JSON object)
documentrequiredAttachedDocument
Fields (JSON object)
assetId(fromasset_id) requiredRepositoryAssetId
stringrepositoryId(fromrepository_id) requiredRepositoryId
stringfilenamerequiredstring
sizerequiredinteger (i64)
originrequiredVexStatementOrigin
Cases externally
OperatorStatement authored by the operator triaging in their own organization.
Value: "Operator"VendorStatement supplied by the upstream vendor of the affected component.
Value: "Vendor"ScannerDefault state assumed by a scanner (typically
in_triage).Value: "Scanner"
statementCount(fromstatement_count) optionalinteger
severitySummary(fromseverity_summary) optionalSeverity rollup from this artifact's VDRs after VEX is applied.
SeveritySummary
Fields (JSON object)
criticalrequiredinteger
highrequiredinteger
mediumrequiredinteger
lowrequiredinteger
inforequiredinteger
unknownrequiredinteger
componentCount(fromcomponent_count) optionalNumber of components extracted from this artifact's SBOM.
integer
packageVex(frompackage_vex) requiredVEX documents inherited from the parent package's
relations.vex.array<AttachedVexDocument>
Items
AttachedVexDocument
Fields (JSON object)
documentrequiredAttachedDocument
Fields (JSON object)
assetId(fromasset_id) requiredRepositoryAssetId
stringrepositoryId(fromrepository_id) requiredRepositoryId
stringfilenamerequiredstring
sizerequiredinteger (i64)
originrequiredVexStatementOrigin
Cases externally
OperatorStatement authored by the operator triaging in their own organization.
Value: "Operator"VendorStatement supplied by the upstream vendor of the affected component.
Value: "Vendor"ScannerDefault state assumed by a scanner (typically
in_triage).Value: "Scanner"
statementCount(fromstatement_count) optionalinteger
severitySummary(fromseverity_summary) optionalSeverity counts across the union of all artifact VDRs after VEX is applied. Not set when indexing is disabled.
SeveritySummary
Fields (JSON object)
criticalrequiredinteger
highrequiredinteger
mediumrequiredinteger
lowrequiredinteger
inforequiredinteger
unknownrequiredinteger
componentCount(fromcomponent_count) optionalTotal component count across all artifact SBOMs (including duplicates if the same component is referenced from several artifacts). Not set when indexing is disabled.
integer
vulnerabilities_QueryComponents
POST /api/v1/actions/invoke/vulnerabilities_QueryComponents Query the components extracted from a package version's SBOMs.
Request QueryPackageVersionComponentsAction
Fields (JSON object)
versionId(fromversion_id) requiredPackageVersionId stringartifactFilename(fromartifact_filename) optionalOptional filter: only include components from this artifact's SBOM.
string searchoptionalOptional case-insensitive substring filter over name / purl / license.
string componentType(fromcomponent_type) optionalOptional component-type filter (e.g.
library,application).string
Response QueryPackageVersionComponentsOutput
Fields (JSON object)
indexingEnabled(fromindexing_enabled) requiredboolean componentsrequiredarray<PackageVersionComponent>
Items
PackageVersionComponent
Fields (JSON object)
artifactFilename(fromartifact_filename) requiredFilename of the artifact asset whose SBOM this component came from.
string
bomRef(frombom_ref) requiredstring
purloptionalstring
namerequiredstring
versionoptionalstring
type(fromkind) requiredstring
licensesrequiredarray<string>
Items
string
supplieroptionalstring
descriptionoptionalstring
vulnSummary(fromvuln_summary) optionalVulnerability counts after VEX application.
SeveritySummary
Fields (JSON object)
criticalrequiredinteger
highrequiredinteger
mediumrequiredinteger
lowrequiredinteger
inforequiredinteger
unknownrequiredinteger
vulnerabilities_QueryFindings
POST /api/v1/actions/invoke/vulnerabilities_QueryFindings
Request QueryPackageVersionFindingsAction
Fields (JSON object)
versionId(fromversion_id) requiredPackageVersionId stringartifactFilename(fromartifact_filename) optionalOptional artifact-filename filter.
string minSeverity(frommin_severity) optionalOptional severity floor.
string
Response QueryPackageVersionFindingsOutput
Fields (JSON object)
indexingEnabled(fromindexing_enabled) requiredboolean findingsrequiredarray<PackageVersionFinding>
Items
PackageVersionFinding
Fields (JSON object)
artifactFilename(fromartifact_filename) requiredstring
componentPurl(fromcomponent_purl) requiredstring
componentName(fromcomponent_name) requiredstring
componentVersion(fromcomponent_version) optionalstring
vulnerabilityId(fromvulnerability_id) requiredstring
severityrequiredstring
cvssScore(fromcvss_score) optionalnumber
descriptionoptionalstring
sourceTool(fromsource_tool) optionalstring
effectiveState(fromeffective_state) requiredEffective VEX state. Defaults to
in_triagewhen no statement applies.string
justificationoptionalstring
detailoptionalstring
stateOrigin(fromstate_origin) optionalVexStatementOrigin
Cases externally
OperatorStatement authored by the operator triaging in their own organization.
Value: "Operator"VendorStatement supplied by the upstream vendor of the affected component.
Value: "Vendor"ScannerDefault state assumed by a scanner (typically
in_triage).Value: "Scanner"