How AI is applied across API Evangelist and APIs.io. Read my AI disclosure →
API Evangelist API Evangelist
Discovery
Learnings
Guidance
Toolbox
Alignment
API Evangelist LLC

SPDX

SPDX (Software Package Data Exchange) is an open, ISO/IEC 5962 standard for communicating software bill-of-materials information, including components, licenses, and copyrights. It supports license compliance and supply-chain security.

SPDX (Software Package Data Exchange), standardized as ISO/IEC 5962, is an open format for describing a software bill of materials — the components inside a piece of software, along with their licenses, copyrights, and security references. Stewarded by the Linux Foundation, it gives supply-chain and legal tooling a common, machine-readable way to answer “what is actually in this thing?”

  • Bill of materials - Enumerates every package and dependency so consumers know exactly what they are shipping and running.
  • License and copyright data - Carries standardized SPDX license identifiers, making compliance checkable rather than guessed at.
  • An ISO standard - Formalized as ISO/IEC 5962, which gives it standing in procurement and regulated environments.
  • Multiple serializations - Documents can be expressed in tag-value, JSON, YAML, RDF, and spreadsheet forms to fit different pipelines.

In API operations SPDX matters because APIs ship as software with real dependency trees, and an SBOM is increasingly expected as evidence of supply-chain hygiene. I treat the presence of an SPDX (or CycloneDX) document as a maturity signal in the same family as a published security.txt — a cheap, machine-checkable artifact that tells consumers and their agents an organization takes provenance and security seriously.

Open source tools that implement this standard

Harvested from this standard's own governing organisation, with the license read from each repository rather than assumed. The role is what the tool does to the specification, from the shared vocabulary — so an agent holding one of these documents can resolve straight from a goal to a tool.

Tool Role License What it does
Grype scans Apache-2.0 Scans container images, filesystems and SBOMs for known vulnerabilities, reading OSV and other vulnerability sources.
Syft generates Apache-2.0 Generates a software bill of materials from container images and filesystems, emitting SPDX or CycloneDX — the most widely used...
SPDX Python Tools validates Apache-2.0 Parses, validates and creates SPDX documents in Python, covering SPDX 2 and 3.
SPDX Go Tools parses Apache-2.0 Go packages for reading, writing and validating SPDX documents.
SPDX Java Tools parses Apache-2.0 Command-line tools for converting, comparing and validating SPDX documents on the JVM.
NTIA Conformance Checker validates Apache-2.0 Checks an SPDX SBOM against the NTIA minimum elements and CISA guidance — whether it satisfies the baseline regulators actually...
SPDX Java Library parses Apache-2.0 The Java object model for SPDX, underneath the SPDX Java tooling.
All API tooling →

Referenced on the API Evangelist blog

Where this standard shows up across sixteen years of my writing at apievangelist.com — how it fits into API design, governance, and the agentic turn.