Hanzo
OpenapiSbom

Ingest persists a CycloneDX SBOM's components keyed by image digest.

Ingest persists a CycloneDX SBOM's components keyed by image digest.

POST /v1/sbom

Addresshttps://api.hanzo.ai/v1/sbom
MethodPOST
Operationpost_sbom
AuthAuthorization: Bearer $HANZO_API_KEY

Ingest persists a CycloneDX SBOM's components keyed by image digest. Gated to a validated SuperAdmin (owner == AdminOrg) — the canonical cloud super-admin check, which the build fleet / CI carries. Re-ingest is idempotent: rows share the (digest, name, version, purl) ORDER BY, so ReplacingMergeTree keeps the latest by ingested_at (and resolve reads FINAL).

Request

6 fields, body application/json (required).

FieldInTypeRequiredDescription
documentbodyanyDocument is the raw CycloneDX bill of materials, any JSON.
formatbodystringFormat names the document format; "cyclonedx" is the only one parsed.
gitShabodystringGitSha is the commit the image was built from.
imageDigestbodystringImageDigest is the content-addressed digest (sha256:…) the components are keyed under.
imageRefbodystringImageRef is the human-readable image reference the digest was published as.
sourceRepobodystringSourceRepo is the repository the image was built from.

Response

StatusBodyMeaning
201SbomIngestedcreated

201 body — 2 fields.

FieldInTypeAlwaysDescription
componentCountbodyintegerComponentCount is how many components the CycloneDX document yielded and this call persisted.
imageDigestbodystringImageDigest is the content-addressed digest the components were keyed under.

Failure carries the platform error shape — see Errors.

Examples

hanzo sbom create

SBOM API · All Hanzo APIs · Interactive reference

How is this guide?

On this page