Safeguard Docs
Enterprise Software Supply Chain Manager (ESSCM)IntegrationsExisting SBOM

Existing SBOM

Upload and analyze existing SBOMs from other tools

The /v1 REST endpoints on this page are not yet available โ€” every path under https://api.safeguard.sh/v1/ returns 404 today. They describe the intended shape only. See API Reference for what is supported now.

Existing SBOM Integration

Upload existing Software Bills of Materials created by other tools for enrichment, vulnerability analysis, and continuous monitoring.

Overview

Import SBOMs to:

  • Analyze SBOMs from vendors
  • Enrich with additional vulnerability data
  • Monitor for new vulnerabilities over time
  • Validate SBOM quality and completeness
  • Convert between SBOM formats

Supported Formats

CycloneDX

VersionJSONXMLStatus
1.6โœ…โœ…Full Support
1.5โœ…โœ…Full Support
1.4โœ…โœ…Full Support
1.3โœ…โœ…Full Support

SPDX

VersionJSONTag-ValueRDFStatus
2.3โœ…โœ…โœ…Full Support
2.2โœ…โœ…โœ…Full Support

Other Formats

FormatStatus
Syft JSONโœ… Converted to CycloneDX
Trivy JSONโœ… Converted to CycloneDX
Grype JSONโœ… Vulnerability data imported

Upload Process

Step 1: Navigate to Integrations

  1. Go to the Integrations page
  2. Click Connect on the Upload SBOM card

Step 2: Enter Project Details

FieldDescription
Project NameName for this SBOM
VersionVersion identifier
DescriptionOptional description
FormatSelect SPDX or CycloneDX (auto-detected if not specified)

Step 3: Upload SBOM File

  1. Drag and drop your SBOM file, or click Browse
  2. Supported formats: .json, .xml, .spdx, .rdf
  3. Maximum file size: 100MB

Step 4: Review and Submit

  1. Review detected format and component count
  2. Click Upload SBOM
  3. Safeguard processes and enriches the SBOM

What Happens After Upload

1. Validation

Safeguard validates the SBOM for:

  • Format compliance (valid JSON/XML)
  • Schema validation (CycloneDX/SPDX spec)
  • Required fields present
  • Component data quality

2. Enrichment

The SBOM is enriched with:

  • Vulnerability data - CVE matching for all components
  • EPSS scores - Exploit probability predictions
  • KEV status - CISA Known Exploited Vulnerabilities
  • License information - License identification and compliance
  • Supplier data - Package maintainer information

3. Analysis

Griffin AI analyzes:

  • Attestation scoring - Component integrity assessment
  • Risk scoring - Overall risk calculation
  • Reachability - Vulnerability exploitability analysis
  • Dependency health - Maintenance and community metrics

CLI

The CLI does not upload SBOMs to the platform; upload them through the UI as described above. It can check and scan one locally:

# Check the document against its specification
safeguard validate sbom.json

# Scan it for vulnerabilities, writing results under ./output
safeguard scan --sbom sbom.json

API Upload

Upload via REST API:

curl -X POST https://api.safeguard.sh/v1/sbom/upload \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name": "My Application",
    "version": "1.0.0",
    "format": "cyclonedx",
    "content": "<base64-encoded-sbom>"
  }'

Or upload as multipart:

curl -X POST https://api.safeguard.sh/v1/sbom/upload \
  -H "Authorization: Bearer $API_KEY" \
  -F "name=My Application" \
  -F "version=1.0.0" \
  -F "file=@sbom.json"

Format Conversion

Convert between SBOM formats:

In the UI

  1. Open a project
  2. Click Export
  3. Select desired format
  4. Download converted SBOM

SBOM Quality Assessment

After upload, view SBOM quality metrics:

MetricDescription
Completeness ScorePercentage of required fields populated
Component CoverageHow many components have full data
PURL AccuracyPackage URL correctness
Version SpecificityVersion information quality
License CoverageComponents with license data

Vendor SBOM Import

When importing SBOMs from software vendors:

Best Practices

  1. Verify authenticity - Ensure SBOM came from the vendor
  2. Check signatures - Verify digital signatures if present
  3. Document source - Record where the SBOM originated
  4. Version mapping - Map SBOM to your software inventory

Automated Import

Set up automated SBOM import from vendors:

  1. Configure vendor in Portal โ†’ Vendor Management
  2. Enable automatic SBOM collection
  3. SBOMs are imported as vendors provide them

Continuous Monitoring

Uploaded SBOMs are continuously monitored:

  • Daily scans - Check for new vulnerabilities
  • KEV updates - Alert on newly exploited CVEs
  • Dependency updates - Track when newer versions are available
  • License changes - Monitor for license modifications

Troubleshooting

"Invalid SBOM format"

  • Verify file is valid JSON or XML
  • Check SBOM matches claimed format (CycloneDX vs SPDX)
  • Validate against official schema

"No components found"

  • SBOM may be empty
  • Components may be in unexpected location
  • Check SBOM structure matches specification

"Unknown package references"

  • Package URLs (PURLs) may be malformed
  • Custom packages may not be in public databases
  • Safeguard still tracks but cannot enrich unknown packages

Best Practices

SBOM Collection

  • Request SBOMs in standard formats (CycloneDX or SPDX)
  • Prefer JSON over XML for easier processing
  • Require minimum component information (name, version, PURL)

Organization

  • Use consistent naming conventions
  • Map SBOMs to your asset inventory
  • Maintain version history

Compliance

  • Store SBOMs for audit requirements
  • Track SBOM sources and dates
  • Document vendor SBOM commitments

Next Steps

On this page