Help us shape the future of Go! Take the 2026 Go Developer Survey

client

package module
v0.0.0-...-f48c57c Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Oct 20, 2026 License: MIT Imports: 11 Imported by: 0

Documentation

Overview

Package client provides a typed Go client for the OCIDex HTTP API. Types in this package are generated from web/openapi.json via oapi-codegen. Run `make generate-client` to regenerate after API surface changes.

The package is its own module, github.com/pfenerty/ocidex/pkg/client, tagged pkg/client/vX.Y.Z and versioned under semver independently of the server (ADR-052). Its major version tracks the HTTP API's /api/vN prefix.

Package client provides primitives to interact with the openapi HTTP API.

Code generated by github.com/oapi-codegen/oapi-codegen/v2 version v2.8.0 DO NOT EDIT.

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrNotFound  = errors.New("not found") // HTTP 404
	ErrForbidden = errors.New("forbidden") // HTTP 403
	ErrConflict  = errors.New("conflict")  // HTTP 409
)

Sentinel errors returned by Client methods. Use errors.Is to check.

Functions

func New

func New(cfg Config) *httpClient

New creates a Client from cfg. Returns *httpClient; callers assign to Client as needed.

Types

type APIError

type APIError struct {
	Status int
	Detail string
}

APIError is returned for non-2xx responses not covered by the named sentinels.

func (*APIError) Error

func (e *APIError) Error() string

type ActivityEntry

type ActivityEntry struct {
	ArtifactId     *string   `json:"artifactId,omitempty"`
	ArtifactName   *string   `json:"artifactName,omitempty"`
	ArtifactType   *string   `json:"artifactType,omitempty"`
	CreatedAt      time.Time `json:"createdAt"`
	Digest         *string   `json:"digest,omitempty"`
	NamespaceId    string    `json:"namespaceId"`
	NamespaceName  string    `json:"namespaceName"`
	SbomId         string    `json:"sbomId"`
	SourceId       *string   `json:"sourceId,omitempty"`
	SourceKind     *string   `json:"sourceKind,omitempty"`
	SourceName     *string   `json:"sourceName,omitempty"`
	SubjectVersion *string   `json:"subjectVersion,omitempty"`
}

ActivityEntry defines model for ActivityEntry.

type AffectedArtifact

type AffectedArtifact struct {
	AffectedPurlCount int64   `json:"affectedPurlCount"`
	AffectedSbomCount int64   `json:"affectedSbomCount"`
	Group             *string `json:"group,omitempty"`
	Id                string  `json:"id"`
	Name              string  `json:"name"`
}

AffectedArtifact defines model for AffectedArtifact.

type AffectedComponent

type AffectedComponent struct {
	AffectedVersionCount int64   `json:"affectedVersionCount"`
	FixedVersion         *string `json:"fixedVersion,omitempty"`
	Group                *string `json:"group,omitempty"`
	Name                 string  `json:"name"`
}

AffectedComponent defines model for AffectedComponent.

type ArtifactDetail

type ArtifactDetail struct {
	// Schema A URL to the JSON Schema for this object.
	Schema              *string      `json:"$schema,omitempty"`
	Cpe                 *string      `json:"cpe,omitempty"`
	CreatedAt           time.Time    `json:"createdAt"`
	Group               *string      `json:"group,omitempty"`
	Id                  string       `json:"id"`
	Name                string       `json:"name"`
	Purl                *string      `json:"purl,omitempty"`
	SbomCount           int64        `json:"sbomCount"`
	SigningStatus       string       `json:"signingStatus"`
	SufficientSbomCount int64        `json:"sufficientSbomCount"`
	Type                string       `json:"type"`
	VersionCount        int64        `json:"versionCount"`
	Vulns               *VulnSummary `json:"vulns,omitempty"`
	Watched             bool         `json:"watched"`
}

ArtifactDetail defines model for ArtifactDetail.

type ArtifactFilter

type ArtifactFilter struct {
	// Type is a CycloneDX component type, e.g. container or application.
	Type string
	// Name matches the artifact name.
	Name string
	// IncludeInsufficient also returns artifacts whose SBOMs are not enriched
	// enough to be trusted, which the server hides unless asked.
	IncludeInsufficient bool
}

ArtifactFilter narrows an artifact listing. A zero value lists artifacts with sufficiently enriched SBOMs, which is what the server returns by default.

type ArtifactRelation

type ArtifactRelation struct {
	ArtifactGroup  *string    `json:"artifactGroup,omitempty"`
	ArtifactId     string     `json:"artifactId"`
	ArtifactName   string     `json:"artifactName"`
	ArtifactType   string     `json:"artifactType"`
	CurrentVersion *string    `json:"currentVersion,omitempty"`
	Digest         *string    `json:"digest,omitempty"`
	Flavor         *string    `json:"flavor,omitempty"`
	IsCurrent      *bool      `json:"isCurrent,omitempty"`
	MatchedVersion *string    `json:"matchedVersion,omitempty"`
	ObservedAt     *time.Time `json:"observedAt,omitempty"`
	SbomId         string     `json:"sbomId"`
	SubjectVersion *string    `json:"subjectVersion,omitempty"`
}

ArtifactRelation defines model for ArtifactRelation.

type ArtifactSummary

type ArtifactSummary struct {
	Group               *string      `json:"group,omitempty"`
	Id                  string       `json:"id"`
	Name                string       `json:"name"`
	SbomCount           int64        `json:"sbomCount"`
	SigningStatus       string       `json:"signingStatus"`
	SufficientSbomCount int64        `json:"sufficientSbomCount"`
	Type                string       `json:"type"`
	Vulns               *VulnSummary `json:"vulns,omitempty"`
}

ArtifactSummary defines model for ArtifactSummary.

type ArtifactTypeCountEntry

type ArtifactTypeCountEntry struct {
	ArtifactCount int64  `json:"artifact_count"`
	Type          string `json:"type"`
}

ArtifactTypeCountEntry defines model for ArtifactTypeCountEntry.

type ArtifactVersionSummary

type ArtifactVersionSummary struct {
	Architectures *[]string  `json:"architectures"`
	BuildDate     *time.Time `json:"buildDate,omitempty"`
	CreatedAt     time.Time  `json:"createdAt"`
	ImageVersion  *string    `json:"imageVersion,omitempty"`
	Revision      *string    `json:"revision,omitempty"`

	// SbomCount Total number of SBOMs ingested for this version
	SbomCount int64  `json:"sbomCount"`
	SbomId    string `json:"sbomId"`

	// SigningStatus Signing status derived from provenance enrichment
	SigningStatus ArtifactVersionSummarySigningStatus `json:"signingStatus"`
	SourceUrl     *string                             `json:"sourceUrl,omitempty"`
	Sufficient    bool                                `json:"sufficient"`
	VersionKey    string                              `json:"versionKey"`
	Vulns         *VulnSummary                        `json:"vulns,omitempty"`
}

ArtifactVersionSummary defines model for ArtifactVersionSummary.

type ArtifactVersionSummarySigningStatus

type ArtifactVersionSummarySigningStatus string

ArtifactVersionSummarySigningStatus Signing status derived from provenance enrichment

const (
	ArtifactMissing    ArtifactVersionSummarySigningStatus = "artifact_missing"
	Signed             ArtifactVersionSummarySigningStatus = "signed"
	Unsigned           ArtifactVersionSummarySigningStatus = "unsigned"
	VerificationFailed ArtifactVersionSummarySigningStatus = "verification_failed"
	Verified           ArtifactVersionSummarySigningStatus = "verified"
)

Defines values for ArtifactVersionSummarySigningStatus.

func (ArtifactVersionSummarySigningStatus) Valid

Valid indicates whether the value is a known member of the ArtifactVersionSummarySigningStatus enum.

type ArtifactVulnEntry

type ArtifactVulnEntry struct {
	AffectedPackageCount int64                  `json:"affectedPackageCount"`
	AffectedVersionCount int64                  `json:"affectedVersionCount"`
	AffectedVersions     *[]ArtifactVulnVersion `json:"affectedVersions"`
	CanonicalId          string                 `json:"canonicalId"`
	CvssScore            *float32               `json:"cvssScore,omitempty"`
	Id                   string                 `json:"id"`
	Severity             string                 `json:"severity"`
	Summary              *string                `json:"summary,omitempty"`
}

ArtifactVulnEntry defines model for ArtifactVulnEntry.

type ArtifactVulnVersion

type ArtifactVulnVersion struct {
	AffectedPackageCount int64     `json:"affectedPackageCount"`
	PackageNames         *[]string `json:"packageNames"`
	SbomId               string    `json:"sbomId"`
	Version              string    `json:"version"`
}

ArtifactVulnVersion defines model for ArtifactVulnVersion.

type CategoryCountEntry

type CategoryCountEntry struct {
	Category       string `json:"category"`
	ComponentCount int64  `json:"component_count"`
}

CategoryCountEntry defines model for CategoryCountEntry.

type ChangeCounts

type ChangeCounts struct {
	Added      int64 `json:"added"`
	Downgraded int64 `json:"downgraded"`
	Modified   int64 `json:"modified"`
	Removed    int64 `json:"removed"`
	Upgraded   int64 `json:"upgraded"`
}

ChangeCounts defines model for ChangeCounts.

type ChangeSummary

type ChangeSummary struct {
	Added      int64 `json:"added"`
	Downgraded int64 `json:"downgraded"`
	Modified   int64 `json:"modified"`
	Removed    int64 `json:"removed"`
	Upgraded   int64 `json:"upgraded"`
}

ChangeSummary defines model for ChangeSummary.

type Changelog

type Changelog struct {
	// Schema A URL to the JSON Schema for this object.
	Schema                 *string           `json:"$schema,omitempty"`
	ArtifactId             string            `json:"artifactId"`
	AvailableArchitectures *[]string         `json:"availableArchitectures"`
	AvailableFlavors       *[]string         `json:"availableFlavors"`
	Entries                *[]ChangelogEntry `json:"entries"`
	HasSemver              bool              `json:"hasSemver"`
	Pagination             PageMeta          `json:"pagination"`
	ResolvedMode           string            `json:"resolvedMode"`
}

Changelog defines model for Changelog.

type ChangelogEntry

type ChangelogEntry struct {
	// Schema A URL to the JSON Schema for this object.
	Schema  *string          `json:"$schema,omitempty"`
	Changes *[]ComponentDiff `json:"changes"`
	From    SBOMRef          `json:"from"`
	Summary ChangeSummary    `json:"summary"`
	To      SBOMRef          `json:"to"`
}

ChangelogEntry defines model for ChangelogEntry.

type Client

type Client interface {
	ListRegistries(ctx context.Context, opts PageOpts) (Page[RegistryResponse], error)
	GetRegistry(ctx context.Context, id string) (RegistryResponse, error)
	GetRegistryByName(ctx context.Context, name string) (RegistryResponse, error)
	CreateRegistry(ctx context.Context, body CreateRegistryInputBody) (CreateRegistryResponseBody, error)
	UpdateRegistry(ctx context.Context, id string, body UpdateRegistryInputBody) (RegistryResponse, error)
	DeleteRegistry(ctx context.Context, id string) error
	ScanRegistry(ctx context.Context, id string) (ScanRegistryOutputBody, error)
	PreviewRegistryConfig(ctx context.Context, body PreviewRegistryConfigInputBody) (RegistryPreview, error)
	GetRegistryPreview(ctx context.Context, id string) (RegistryPreview, error)
	TestRegistryConnection(ctx context.Context, body TestRegistryConnectionInputBody) (TestRegistryConnectionOutputBody, error)
	RegenerateWebhookSecret(ctx context.Context, id string) (RegenerateWebhookSecretOutputBody, error)

	ListNamespaces(ctx context.Context) ([]NamespaceResponse, error)
	GetNamespace(ctx context.Context, id string) (NamespaceResponse, error)
	GetNamespaceByName(ctx context.Context, name string) (NamespaceResponse, error)
	CreateNamespace(ctx context.Context, body CreateNamespaceInputBody) (NamespaceResponse, error)
	UpdateNamespace(ctx context.Context, id string, body UpdateNamespaceInputBody) (NamespaceResponse, error)
	DeleteNamespace(ctx context.Context, id string) error

	ListSources(ctx context.Context, namespaceID string) ([]SourceResponse, error)
	GetSource(ctx context.Context, id string) (SourceResponse, error)
	CreateSource(ctx context.Context, body CreateSourceInputBody) (SourceResponse, error)
	UpdateSource(ctx context.Context, id string, body UpdateSourceInputBody) (SourceResponse, error)
	DeleteSource(ctx context.Context, id string) error

	CreateAPIKey(ctx context.Context, body CreateAPIKeyInputBody) (CreateAPIKeyOutputBody, error)
	ListAPIKeys(ctx context.Context) ([]KeyMetaResponse, error)
	DeleteAPIKey(ctx context.Context, id string) error
	GetCurrentUser(ctx context.Context) (MeOutputBody, error)

	ListClusters(ctx context.Context, namespaceID string) ([]ClusterResponse, error)
	GetCluster(ctx context.Context, id string) (ClusterResponse, error)
	CreateCluster(ctx context.Context, body CreateClusterInputBody) (ClusterResponse, error)
	UpdateCluster(ctx context.Context, id string, body UpdateClusterInputBody) (ClusterResponse, error)
	DeleteCluster(ctx context.Context, id string) error
	PutInventory(ctx context.Context, clusterID string, workloads []InventoryWorkload) (PutInventoryOutputBody, error)
	ListClusterWorkloads(ctx context.Context, clusterID string) ([]ClusterWorkloadResponse, WorkloadCoverageResponse, error)

	IngestSBOM(ctx context.Context, data []byte, params IngestSbomParams) (IngestSBOMOutputBody, error)
	GetSBOM(ctx context.Context, id string, includeRaw bool) (SBOMDetail, error)
	ListSBOMs(ctx context.Context, filter SBOMFilter, opts PageOpts) (CursorPage[SBOMSummary], error)
	DeleteSBOM(ctx context.Context, id string) error
	DiffSBOMs(ctx context.Context, fromID, toID string) (ChangelogEntry, error)
	GetDiffTree(ctx context.Context, fromID, toID string) (DiffTree, error)

	ListArtifacts(ctx context.Context, filter ArtifactFilter, opts PageOpts) (CursorPage[ArtifactSummary], error)
	GetArtifact(ctx context.Context, id string) (ArtifactDetail, error)
	GetArtifactChangelog(ctx context.Context, id string, params GetArtifactChangelogParams) (Changelog, error)
	GetArtifactLicenseSummary(ctx context.Context, id string) (GetArtifactLicenseSummaryOutputBody, error)
	ListArtifactSBOMs(ctx context.Context, id string, opts PageOpts) (CursorPage[SBOMSummary], error)
	ListArtifactVersions(ctx context.Context, id string, opts PageOpts) (Page[ArtifactVersionSummary], error)

	LookupArtifact(ctx context.Context, params LookupArtifactParams) (ArtifactDetail, error)
	LookupSBOM(ctx context.Context, params LookupSbomParams) (SBOMDetail, error)
	LookupLicense(ctx context.Context, spdxID string) (LicenseCount, error)

	// Vulnerabilities. Resolved by artifact (severity histogram), by component
	// occurrence (the advisories hitting it), or by advisory id.
	GetArtifactVulnSummary(ctx context.Context, artifactID string) (VulnSummary, error)
	GetComponentVulns(ctx context.Context, componentID string) ([]ComponentVulnEntry, error)
	GetVulnerability(ctx context.Context, vulnID string, opts PageOpts) (GetVulnerabilityOutputBody, error)

	SearchComponents(ctx context.Context, filter ComponentFilter, opts PageOpts) (Page[ComponentSummary], error)
	SearchDistinctComponents(ctx context.Context, filter DistinctComponentFilter, opts PageOpts) (Page[DistinctComponentSummary], error)
	GetComponent(ctx context.Context, id string) (ComponentDetail, error)
	GetComponentVersions(ctx context.Context, params GetComponentVersionsParams) (GetComponentVersionsOutputBody, error)
	ListComponentPurlTypes(ctx context.Context) ([]string, error)
	ListSBOMComponents(ctx context.Context, sbomID string) ([]ComponentSummary, error)
	GetSBOMDependencies(ctx context.Context, sbomID string) (DependencyGraph, error)

	ListJobs(ctx context.Context, filter JobFilter, opts PageOpts) (Page[ScanJobResponse], error)
	GetJob(ctx context.Context, id string) (ScanJobResponse, error)
	RetryJob(ctx context.Context, id string) error

	GetDashboardStats(ctx context.Context) (DashboardStatsOutputBody, error)

	// GetOpenAPISpec returns the running server's own OpenAPI document, for
	// callers that need the full surface rather than the typed methods above.
	GetOpenAPISpec(ctx context.Context) (json.RawMessage, error)
}

Client is the interface for the OCIDex HTTP API. The concrete implementation is httpClient, constructed via New. Consumers may substitute a FakeClient for testing.

type ClusterImageResponse

type ClusterImageResponse struct {
	ArtifactId   *string `json:"artifact_id,omitempty"`
	ArtifactName *string `json:"artifact_name,omitempty"`
	ArtifactType *string `json:"artifact_type,omitempty"`
	ImageDigest  *string `json:"image_digest,omitempty"`
	ImageRef     string  `json:"image_ref"`
	LastSeenAt   string  `json:"last_seen_at"`

	// MatchState exact = digest matched an SBOM; index = matched a multi-arch image index, so the exact platform is unknown; unknown = real digest with no ingested SBOM (coverage gap); unresolvable = no digest could be read from the container (agent/runtime gap)
	MatchState ClusterImageResponseMatchState `json:"match_state"`

	// NamespaceCount Kubernetes namespaces the image appears in
	NamespaceCount int64 `json:"namespace_count"`

	// PodCount Running pods those workload-containers add up to
	PodCount        int64               `json:"pod_count"`
	SampleNamespace *string             `json:"sample_namespace,omitempty"`
	SampleWorkload  *string             `json:"sample_workload,omitempty"`
	SbomId          *string             `json:"sbom_id,omitempty"`
	SubjectVersion  *string             `json:"subject_version,omitempty"`
	Vulns           *WorkloadVulnCounts `json:"vulns,omitempty"`

	// WorkloadCount Workload-containers running this image
	WorkloadCount int64 `json:"workload_count"`
}

ClusterImageResponse defines model for ClusterImageResponse.

type ClusterImageResponseMatchState

type ClusterImageResponseMatchState string

ClusterImageResponseMatchState exact = digest matched an SBOM; index = matched a multi-arch image index, so the exact platform is unknown; unknown = real digest with no ingested SBOM (coverage gap); unresolvable = no digest could be read from the container (agent/runtime gap)

const (
	ClusterImageResponseMatchStateExact        ClusterImageResponseMatchState = "exact"
	ClusterImageResponseMatchStateIndex        ClusterImageResponseMatchState = "index"
	ClusterImageResponseMatchStateUnknown      ClusterImageResponseMatchState = "unknown"
	ClusterImageResponseMatchStateUnresolvable ClusterImageResponseMatchState = "unresolvable"
)

Defines values for ClusterImageResponseMatchState.

func (ClusterImageResponseMatchState) Valid

Valid indicates whether the value is a known member of the ClusterImageResponseMatchState enum.

type ClusterResponse

type ClusterResponse struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string `json:"$schema,omitempty"`

	// AutoIngest Submit a scan job for every running image with no SBOM whose host resolves to a registry in this cluster's namespace, on every accepted snapshot.
	AutoIngest  bool    `json:"auto_ingest"`
	CreatedAt   string  `json:"created_at"`
	Description *string `json:"description,omitempty"`
	Id          string  `json:"id"`

	// LastSeenAt When an agent last pushed a snapshot. Empty means no agent has ever reported: a cluster showing no workloads for this reason is not a cluster running nothing.
	LastSeenAt  *string `json:"last_seen_at,omitempty"`
	Name        string  `json:"name"`
	NamespaceId string  `json:"namespace_id"`

	// NamespaceName Owning namespace name; populated on list responses
	NamespaceName *string `json:"namespace_name,omitempty"`
	UpdatedAt     string  `json:"updated_at"`
}

ClusterResponse defines model for ClusterResponse.

type ClusterWorkloadResponse

type ClusterWorkloadResponse struct {
	ArtifactId    *string `json:"artifact_id,omitempty"`
	ArtifactName  *string `json:"artifact_name,omitempty"`
	ArtifactType  *string `json:"artifact_type,omitempty"`
	ClusterId     string  `json:"cluster_id"`
	ContainerName string  `json:"container_name"`
	FirstSeenAt   string  `json:"first_seen_at"`
	Id            string  `json:"id"`
	ImageDigest   *string `json:"image_digest,omitempty"`
	ImageRef      string  `json:"image_ref"`
	K8sNamespace  string  `json:"k8s_namespace"`
	LastSeenAt    string  `json:"last_seen_at"`

	// MatchState exact = digest matched an SBOM; index = matched a multi-arch image index, so the exact platform is unknown; unknown = real digest with no ingested SBOM (coverage gap); unresolvable = no digest could be read from the container (agent/runtime gap)
	MatchState     ClusterWorkloadResponseMatchState `json:"match_state"`
	PodCount       int32                             `json:"pod_count"`
	SbomId         *string                           `json:"sbom_id,omitempty"`
	SubjectVersion *string                           `json:"subject_version,omitempty"`
	Vulns          *WorkloadVulnCounts               `json:"vulns,omitempty"`
	WorkloadKind   string                            `json:"workload_kind"`
	WorkloadName   string                            `json:"workload_name"`
}

ClusterWorkloadResponse defines model for ClusterWorkloadResponse.

type ClusterWorkloadResponseMatchState

type ClusterWorkloadResponseMatchState string

ClusterWorkloadResponseMatchState exact = digest matched an SBOM; index = matched a multi-arch image index, so the exact platform is unknown; unknown = real digest with no ingested SBOM (coverage gap); unresolvable = no digest could be read from the container (agent/runtime gap)

const (
	ClusterWorkloadResponseMatchStateExact        ClusterWorkloadResponseMatchState = "exact"
	ClusterWorkloadResponseMatchStateIndex        ClusterWorkloadResponseMatchState = "index"
	ClusterWorkloadResponseMatchStateUnknown      ClusterWorkloadResponseMatchState = "unknown"
	ClusterWorkloadResponseMatchStateUnresolvable ClusterWorkloadResponseMatchState = "unresolvable"
)

Defines values for ClusterWorkloadResponseMatchState.

func (ClusterWorkloadResponseMatchState) Valid

Valid indicates whether the value is a known member of the ClusterWorkloadResponseMatchState enum.

type ComponentDetail

type ComponentDetail struct {
	// Schema A URL to the JSON Schema for this object.
	Schema             *string             `json:"$schema,omitempty"`
	BomRef             *string             `json:"bomRef,omitempty"`
	Confidence         *string             `json:"confidence,omitempty"`
	Copyright          *string             `json:"copyright,omitempty"`
	Cpe                *string             `json:"cpe,omitempty"`
	CriticalCount      *int64              `json:"criticalCount,omitempty"`
	DescendantChanges  *ChangeCounts       `json:"descendantChanges,omitempty"`
	Description        *string             `json:"description,omitempty"`
	ExternalReferences *[]ExternalRefEntry `json:"externalReferences"`
	FoundBy            *string             `json:"foundBy,omitempty"`
	FromBaseImage      *bool               `json:"fromBaseImage,omitempty"`
	Group              *string             `json:"group,omitempty"`
	Hashes             *[]HashEntry        `json:"hashes"`
	HighCount          *int64              `json:"highCount,omitempty"`
	Id                 string              `json:"id"`
	IsDirect           bool                `json:"isDirect"`
	Layer              *int64              `json:"layer,omitempty"`
	LayerId            *string             `json:"layerId,omitempty"`
	Licenses           *[]LicenseSummary   `json:"licenses"`
	LowCount           *int64              `json:"lowCount,omitempty"`
	MaxSeverity        *string             `json:"maxSeverity,omitempty"`
	MediumCount        *int64              `json:"mediumCount,omitempty"`
	Name               string              `json:"name"`
	Publisher          *string             `json:"publisher,omitempty"`
	Purl               *string             `json:"purl,omitempty"`
	SbomId             string              `json:"sbomId"`
	Scope              *string             `json:"scope,omitempty"`
	SourcePackage      *string             `json:"sourcePackage,omitempty"`
	Type               string              `json:"type"`
	UnknownCount       *int64              `json:"unknownCount,omitempty"`
	Version            *string             `json:"version,omitempty"`
	VulnCount          *int64              `json:"vulnCount,omitempty"`
}

ComponentDetail defines model for ComponentDetail.

type ComponentDiff

type ComponentDiff struct {
	Direction       string  `json:"direction"`
	Group           *string `json:"group,omitempty"`
	Name            string  `json:"name"`
	NodeRef         *string `json:"nodeRef,omitempty"`
	PreviousVersion *string `json:"previousVersion,omitempty"`
	Purl            *string `json:"purl,omitempty"`
	Type            string  `json:"type"`
	Version         *string `json:"version,omitempty"`
}

ComponentDiff defines model for ComponentDiff.

type ComponentFilter

type ComponentFilter struct {
	Name string
	// Purl matches the package URL exactly (ADR-042 R6) — the cross-SBOM key
	// for a component, whose rows are otherwise SBOM-scoped.
	Purl    string
	Group   string
	Version string
}

ComponentFilter narrows a component occurrence search. The server requires Name or Purl: this endpoint answers "where does this component appear", one row per SBOM it appears in. DistinctComponentFilter is the browse counterpart.

type ComponentSummary

type ComponentSummary struct {
	BomRef            *string       `json:"bomRef,omitempty"`
	CriticalCount     *int64        `json:"criticalCount,omitempty"`
	DescendantChanges *ChangeCounts `json:"descendantChanges,omitempty"`
	Group             *string       `json:"group,omitempty"`
	HighCount         *int64        `json:"highCount,omitempty"`
	Id                string        `json:"id"`
	IsDirect          bool          `json:"isDirect"`
	LowCount          *int64        `json:"lowCount,omitempty"`
	MaxSeverity       *string       `json:"maxSeverity,omitempty"`
	MediumCount       *int64        `json:"mediumCount,omitempty"`
	Name              string        `json:"name"`
	Purl              *string       `json:"purl,omitempty"`
	SbomId            string        `json:"sbomId"`
	Type              string        `json:"type"`
	UnknownCount      *int64        `json:"unknownCount,omitempty"`
	Version           *string       `json:"version,omitempty"`
	VulnCount         *int64        `json:"vulnCount,omitempty"`
}

ComponentSummary defines model for ComponentSummary.

type ComponentVersionEntry

type ComponentVersionEntry struct {
	Architecture   *string `json:"architecture,omitempty"`
	ArtifactId     *string `json:"artifactId,omitempty"`
	ArtifactName   *string `json:"artifactName,omitempty"`
	CriticalCount  *int64  `json:"criticalCount,omitempty"`
	Group          *string `json:"group,omitempty"`
	HighCount      *int64  `json:"highCount,omitempty"`
	Id             string  `json:"id"`
	LowCount       *int64  `json:"lowCount,omitempty"`
	MaxSeverity    *string `json:"maxSeverity,omitempty"`
	MediumCount    *int64  `json:"mediumCount,omitempty"`
	Name           string  `json:"name"`
	Purl           *string `json:"purl,omitempty"`
	SbomCreatedAt  string  `json:"sbomCreatedAt"`
	SbomDigest     *string `json:"sbomDigest,omitempty"`
	SbomId         string  `json:"sbomId"`
	SubjectVersion *string `json:"subjectVersion,omitempty"`
	Type           string  `json:"type"`
	UnknownCount   *int64  `json:"unknownCount,omitempty"`
	Version        *string `json:"version,omitempty"`
	VulnCount      int64   `json:"vulnCount"`
}

ComponentVersionEntry defines model for ComponentVersionEntry.

type ComponentVulnEntry

type ComponentVulnEntry struct {
	CanonicalId      string   `json:"canonicalId"`
	CvssScore        *float32 `json:"cvssScore,omitempty"`
	FixState         *string  `json:"fixState,omitempty"`
	FixedVersion     *string  `json:"fixedVersion,omitempty"`
	Id               string   `json:"id"`
	MatchedViaSource bool     `json:"matchedViaSource"`
	Severity         string   `json:"severity"`
	Summary          *string  `json:"summary,omitempty"`
}

ComponentVulnEntry defines model for ComponentVulnEntry.

type Config

type Config struct {
	BaseURL    string       // API base URL, e.g. "http://localhost:8080"; no trailing slash
	APIKey     string       // Bearer token (ocidex_<token>); empty for unauthenticated
	HTTPClient *http.Client // nil uses http.DefaultClient
}

Config holds options for constructing a Client.

type ConflictError

type ConflictError struct {
	Detail     string
	Candidates []LookupCandidate
}

ConflictError is returned when an ADR-042 resolver matched more than one visible candidate. Candidates lists them so the caller can retry one rung further down the qualifier ladder. It unwraps to ErrConflict, so callers that only test errors.Is(err, ErrConflict) keep working.

func (*ConflictError) Error

func (e *ConflictError) Error() string

func (*ConflictError) Unwrap

func (e *ConflictError) Unwrap() error

type CreateAPIKeyInputBody

type CreateAPIKeyInputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string `json:"$schema,omitempty"`

	// Capabilities Capabilities this key may exercise, intersected with the owner's live namespace roles. Empty means all of them.
	Capabilities *[]CreateAPIKeyInputBodyCapabilities `json:"capabilities,omitempty"`

	// Name Human-readable label for this key
	Name string `json:"name"`
}

CreateAPIKeyInputBody defines model for CreateAPIKeyInputBody.

type CreateAPIKeyInputBodyCapabilities

type CreateAPIKeyInputBodyCapabilities string

CreateAPIKeyInputBodyCapabilities defines model for CreateAPIKeyInputBody.Capabilities.

const (
	DeleteArtifact  CreateAPIKeyInputBodyCapabilities = "delete_artifact"
	DeleteNamespace CreateAPIKeyInputBodyCapabilities = "delete_namespace"
	Ingest          CreateAPIKeyInputBodyCapabilities = "ingest"
	ManageCluster   CreateAPIKeyInputBodyCapabilities = "manage_cluster"
	ManageMember    CreateAPIKeyInputBodyCapabilities = "manage_member"
	ManageSource    CreateAPIKeyInputBodyCapabilities = "manage_source"
	PushInventory   CreateAPIKeyInputBodyCapabilities = "push_inventory"
	ReadPrivate     CreateAPIKeyInputBodyCapabilities = "read_private"
	ReadSecret      CreateAPIKeyInputBodyCapabilities = "read_secret"
	TriggerScan     CreateAPIKeyInputBodyCapabilities = "trigger_scan"
)

Defines values for CreateAPIKeyInputBodyCapabilities.

func (CreateAPIKeyInputBodyCapabilities) Valid

Valid indicates whether the value is a known member of the CreateAPIKeyInputBodyCapabilities enum.

type CreateAPIKeyOutputBody

type CreateAPIKeyOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string `json:"$schema,omitempty"`

	// Key Full API key — shown once, store securely
	Key string `json:"key"`
}

CreateAPIKeyOutputBody defines model for CreateAPIKeyOutputBody.

type CreateApiKeyJSONRequestBody

type CreateApiKeyJSONRequestBody = CreateAPIKeyInputBody

CreateApiKeyJSONRequestBody defines body for CreateApiKey for application/json ContentType.

type CreateClusterInputBody

type CreateClusterInputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema      *string `json:"$schema,omitempty"`
	Description *string `json:"description,omitempty"`

	// Name Cluster name, unique within the namespace
	Name string `json:"name"`

	// NamespaceId Owning namespace UUID
	NamespaceId openapi_types.UUID `json:"namespace_id"`
}

CreateClusterInputBody defines model for CreateClusterInputBody.

type CreateClusterJSONRequestBody

type CreateClusterJSONRequestBody = CreateClusterInputBody

CreateClusterJSONRequestBody defines body for CreateCluster for application/json ContentType.

type CreateNamespaceInputBody

type CreateNamespaceInputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string `json:"$schema,omitempty"`

	// Name Human-readable namespace name
	Name string `json:"name"`

	// Visibility Namespace visibility; defaults to private
	Visibility *CreateNamespaceInputBodyVisibility `json:"visibility,omitempty"`
}

CreateNamespaceInputBody defines model for CreateNamespaceInputBody.

type CreateNamespaceInputBodyVisibility

type CreateNamespaceInputBodyVisibility string

CreateNamespaceInputBodyVisibility Namespace visibility; defaults to private

const (
	CreateNamespaceInputBodyVisibilityPrivate CreateNamespaceInputBodyVisibility = "private"
	CreateNamespaceInputBodyVisibilityPublic  CreateNamespaceInputBodyVisibility = "public"
)

Defines values for CreateNamespaceInputBodyVisibility.

func (CreateNamespaceInputBodyVisibility) Valid

Valid indicates whether the value is a known member of the CreateNamespaceInputBodyVisibility enum.

type CreateNamespaceJSONRequestBody

type CreateNamespaceJSONRequestBody = CreateNamespaceInputBody

CreateNamespaceJSONRequestBody defines body for CreateNamespace for application/json ContentType.

type CreateRegistryInputBody

type CreateRegistryInputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string `json:"$schema,omitempty"`

	// AuthToken Token or PAT for registry authentication; omit for anonymous access
	AuthToken *string `json:"auth_token,omitempty"`

	// AuthUsername Username for registry authentication; omit for anonymous access
	AuthUsername *string `json:"auth_username,omitempty"`

	// IncludeUntagged Scan untagged manifests via registry-specific APIs (supported: zot, harbor, ghcr)
	IncludeUntagged *bool `json:"include_untagged,omitempty"`

	// Insecure Allow HTTP (non-TLS) connections
	Insecure bool `json:"insecure"`

	// ManagedBy External system that owns this registry's configuration (e.g. kubernetes); set by that system's controller, not by hand
	ManagedBy *string `json:"managed_by,omitempty"`

	// ManagedRef Identifier within the managing system, e.g. '<namespace>/<name>' of the OCIRegistry resource
	ManagedRef *string `json:"managed_ref,omitempty"`

	// MaxTagAgeDays Skip tags whose image is older than this many days; needs the created order. 0 = no age limit
	MaxTagAgeDays *int64 `json:"max_tag_age_days,omitempty"`

	// Name Human-readable registry name
	Name string `json:"name"`

	// Namespace Namespace to create the registry in, created on first use; omit to give the registry a namespace of its own named after it
	Namespace *string `json:"namespace,omitempty"`

	// PollIntervalMinutes Minutes between polls
	PollIntervalMinutes *int64 `json:"poll_interval_minutes,omitempty"`

	// Repositories Explicit repositories to walk; bypasses /v2/_catalog discovery when non-empty
	Repositories *[]string `json:"repositories,omitempty"`

	// RepositoryPatterns Glob patterns for repositories to ingest; empty = all
	RepositoryPatterns *[]string `json:"repository_patterns,omitempty"`

	// ScanMode Scanning mode
	ScanMode *CreateRegistryInputBodyScanMode `json:"scan_mode,omitempty"`

	// TagLimit Newest tags kept per repository (ADR-0053); 0 = unlimited. Defaults to 50
	TagLimit *int64 `json:"tag_limit,omitempty"`

	// TagOrder How 'newest' is decided; auto (the default) = semver when tag_patterns contains semver, created otherwise
	TagOrder *CreateRegistryInputBodyTagOrder `json:"tag_order,omitempty"`

	// TagPatterns Glob patterns or 'semver' for tags to ingest; empty = all
	TagPatterns *[]string `json:"tag_patterns,omitempty"`

	// TrustIdentity Regex matched against the Fulcio certificate SAN; required when verification_mode is keyless
	TrustIdentity *string `json:"trust_identity,omitempty"`

	// TrustIssuer Expected OIDC issuer URL; required when verification_mode is keyless
	TrustIssuer *string `json:"trust_issuer,omitempty"`

	// TrustPublicKey PEM-encoded EC public key; required when verification_mode is public_key
	TrustPublicKey *string `json:"trust_public_key,omitempty"`

	// Type Registry type
	Type CreateRegistryInputBodyType `json:"type"`

	// Url Registry address (e.g. zot:5000)
	Url string `json:"url"`

	// VerificationMode Signature verification mode; defaults to none
	VerificationMode *CreateRegistryInputBodyVerificationMode `json:"verification_mode,omitempty"`

	// Visibility Registry visibility
	Visibility *CreateRegistryInputBodyVisibility `json:"visibility,omitempty"`

	// WebhookSecret Bearer token required on incoming webhooks; omit to disable auth
	WebhookSecret *string `json:"webhook_secret,omitempty"`
}

CreateRegistryInputBody defines model for CreateRegistryInputBody.

type CreateRegistryInputBodyScanMode

type CreateRegistryInputBodyScanMode string

CreateRegistryInputBodyScanMode Scanning mode

const (
	CreateRegistryInputBodyScanModeBoth    CreateRegistryInputBodyScanMode = "both"
	CreateRegistryInputBodyScanModePoll    CreateRegistryInputBodyScanMode = "poll"
	CreateRegistryInputBodyScanModeWebhook CreateRegistryInputBodyScanMode = "webhook"
)

Defines values for CreateRegistryInputBodyScanMode.

func (CreateRegistryInputBodyScanMode) Valid

Valid indicates whether the value is a known member of the CreateRegistryInputBodyScanMode enum.

type CreateRegistryInputBodyTagOrder

type CreateRegistryInputBodyTagOrder string

CreateRegistryInputBodyTagOrder How 'newest' is decided; auto (the default) = semver when tag_patterns contains semver, created otherwise

const (
	CreateRegistryInputBodyTagOrderAuto    CreateRegistryInputBodyTagOrder = "auto"
	CreateRegistryInputBodyTagOrderCreated CreateRegistryInputBodyTagOrder = "created"
	CreateRegistryInputBodyTagOrderLexical CreateRegistryInputBodyTagOrder = "lexical"
	CreateRegistryInputBodyTagOrderSemver  CreateRegistryInputBodyTagOrder = "semver"
)

Defines values for CreateRegistryInputBodyTagOrder.

func (CreateRegistryInputBodyTagOrder) Valid

Valid indicates whether the value is a known member of the CreateRegistryInputBodyTagOrder enum.

type CreateRegistryInputBodyType

type CreateRegistryInputBodyType string

CreateRegistryInputBodyType Registry type

const (
	CreateRegistryInputBodyTypeDocker  CreateRegistryInputBodyType = "docker"
	CreateRegistryInputBodyTypeGeneric CreateRegistryInputBodyType = "generic"
	CreateRegistryInputBodyTypeGhcr    CreateRegistryInputBodyType = "ghcr"
	CreateRegistryInputBodyTypeHarbor  CreateRegistryInputBodyType = "harbor"
	CreateRegistryInputBodyTypeZot     CreateRegistryInputBodyType = "zot"
)

Defines values for CreateRegistryInputBodyType.

func (CreateRegistryInputBodyType) Valid

Valid indicates whether the value is a known member of the CreateRegistryInputBodyType enum.

type CreateRegistryInputBodyVerificationMode

type CreateRegistryInputBodyVerificationMode string

CreateRegistryInputBodyVerificationMode Signature verification mode; defaults to none

const (
	CreateRegistryInputBodyVerificationModeKeyless   CreateRegistryInputBodyVerificationMode = "keyless"
	CreateRegistryInputBodyVerificationModeNone      CreateRegistryInputBodyVerificationMode = "none"
	CreateRegistryInputBodyVerificationModePublicKey CreateRegistryInputBodyVerificationMode = "public_key"
)

Defines values for CreateRegistryInputBodyVerificationMode.

func (CreateRegistryInputBodyVerificationMode) Valid

Valid indicates whether the value is a known member of the CreateRegistryInputBodyVerificationMode enum.

type CreateRegistryInputBodyVisibility

type CreateRegistryInputBodyVisibility string

CreateRegistryInputBodyVisibility Registry visibility

const (
	CreateRegistryInputBodyVisibilityPrivate CreateRegistryInputBodyVisibility = "private"
	CreateRegistryInputBodyVisibilityPublic  CreateRegistryInputBodyVisibility = "public"
)

Defines values for CreateRegistryInputBodyVisibility.

func (CreateRegistryInputBodyVisibility) Valid

Valid indicates whether the value is a known member of the CreateRegistryInputBodyVisibility enum.

type CreateRegistryJSONRequestBody

type CreateRegistryJSONRequestBody = CreateRegistryInputBody

CreateRegistryJSONRequestBody defines body for CreateRegistry for application/json ContentType.

type CreateRegistryResponseBody

type CreateRegistryResponseBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema    *string `json:"$schema,omitempty"`
	CreatedAt string  `json:"created_at"`
	Enabled   bool    `json:"enabled"`
	HasAuth   bool    `json:"has_auth"`
	HasSecret bool    `json:"has_secret"`
	Id        string  `json:"id"`

	// IncludeUntagged Scan untagged manifests via registry-specific APIs (supported: zot, harbor, ghcr)
	IncludeUntagged bool       `json:"include_untagged"`
	Insecure        bool       `json:"insecure"`
	LastPolledAt    *string    `json:"last_polled_at,omitempty"`
	LastWalk        *WalkStats `json:"last_walk,omitempty"`

	// ManagedBy External system that owns this registry's configuration (e.g. kubernetes); absent when managed through this API
	ManagedBy *string `json:"managed_by,omitempty"`

	// ManagedRef Identifier within the managing system, e.g. '<namespace>/<name>' of the OCIRegistry resource
	ManagedRef *string `json:"managed_ref,omitempty"`

	// MaxTagAgeDays Tags whose image is older than this many days are skipped; 0 = no age limit
	MaxTagAgeDays       int64  `json:"max_tag_age_days"`
	Name                string `json:"name"`
	PollIntervalMinutes int64  `json:"poll_interval_minutes"`

	// Repositories Explicit repositories to walk; overrides catalog discovery when non-empty
	Repositories *[]string `json:"repositories"`

	// RepositoryPatterns Glob patterns for repositories to ingest; empty = all
	RepositoryPatterns *[]string `json:"repository_patterns"`
	ScanMode           string    `json:"scan_mode"`

	// TagLimit Newest tags kept per repository (ADR-0053); 0 = unlimited
	TagLimit int64 `json:"tag_limit"`

	// TagOrder How 'newest' is decided; auto = semver when tag_patterns contains semver, created otherwise
	TagOrder CreateRegistryResponseBodyTagOrder `json:"tag_order"`

	// TagPatterns Glob patterns or 'semver' for tags to ingest; empty = all
	TagPatterns *[]string `json:"tag_patterns"`

	// TrustIdentity Regex matched against the Fulcio certificate SAN; required for keyless verification mode
	TrustIdentity *string `json:"trust_identity,omitempty"`

	// TrustIssuer Expected OIDC issuer URL; required for keyless verification mode
	TrustIssuer *string `json:"trust_issuer,omitempty"`

	// TrustPublicKey PEM-encoded EC public key for public_key verification mode
	TrustPublicKey *string `json:"trust_public_key,omitempty"`
	Type           string  `json:"type"`
	UpdatedAt      string  `json:"updated_at"`
	Url            string  `json:"url"`

	// VerificationMode Signature verification mode
	VerificationMode CreateRegistryResponseBodyVerificationMode `json:"verification_mode"`

	// Visibility Registry visibility: public or private
	Visibility string `json:"visibility"`

	// WebhookSecret Generated webhook secret — shown once only. Store it securely; it cannot be retrieved again.
	WebhookSecret *string `json:"webhook_secret,omitempty"`
	WebhookUrl    string  `json:"webhook_url"`
}

CreateRegistryResponseBody defines model for CreateRegistryResponseBody.

type CreateRegistryResponseBodyTagOrder

type CreateRegistryResponseBodyTagOrder string

CreateRegistryResponseBodyTagOrder How 'newest' is decided; auto = semver when tag_patterns contains semver, created otherwise

const (
	CreateRegistryResponseBodyTagOrderAuto    CreateRegistryResponseBodyTagOrder = "auto"
	CreateRegistryResponseBodyTagOrderCreated CreateRegistryResponseBodyTagOrder = "created"
	CreateRegistryResponseBodyTagOrderLexical CreateRegistryResponseBodyTagOrder = "lexical"
	CreateRegistryResponseBodyTagOrderSemver  CreateRegistryResponseBodyTagOrder = "semver"
)

Defines values for CreateRegistryResponseBodyTagOrder.

func (CreateRegistryResponseBodyTagOrder) Valid

Valid indicates whether the value is a known member of the CreateRegistryResponseBodyTagOrder enum.

type CreateRegistryResponseBodyVerificationMode

type CreateRegistryResponseBodyVerificationMode string

CreateRegistryResponseBodyVerificationMode Signature verification mode

const (
	CreateRegistryResponseBodyVerificationModeKeyless   CreateRegistryResponseBodyVerificationMode = "keyless"
	CreateRegistryResponseBodyVerificationModeNone      CreateRegistryResponseBodyVerificationMode = "none"
	CreateRegistryResponseBodyVerificationModePublicKey CreateRegistryResponseBodyVerificationMode = "public_key"
)

Defines values for CreateRegistryResponseBodyVerificationMode.

func (CreateRegistryResponseBodyVerificationMode) Valid

Valid indicates whether the value is a known member of the CreateRegistryResponseBodyVerificationMode enum.

type CreateSourceInputBody

type CreateSourceInputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string `json:"$schema,omitempty"`

	// Name Source name, unique within the namespace
	Name string `json:"name"`

	// NamespaceId Owning namespace UUID
	NamespaceId openapi_types.UUID `json:"namespace_id"`
}

CreateSourceInputBody defines model for CreateSourceInputBody.

type CreateSourceJSONRequestBody

type CreateSourceJSONRequestBody = CreateSourceInputBody

CreateSourceJSONRequestBody defines body for CreateSource for application/json ContentType.

type CursorMeta

type CursorMeta struct {
	// HasMore Whether more results exist after this page
	HasMore bool `json:"hasMore"`

	// Limit The limit that was applied
	Limit int32 `json:"limit"`

	// NextCursor Opaque cursor to fetch the next page; null when hasMore is false
	NextCursor *string `json:"nextCursor,omitempty"`
}

CursorMeta defines model for CursorMeta.

type CursorPage

type CursorPage[T any] struct {
	Data       []T
	Pagination CursorMeta
}

CursorPage is a paginated result from a cursor-based list endpoint. CursorMeta is the generated type from types.go.

type DBStatus

type DBStatus struct {
	LatencyMs int64 `json:"latency_ms"`
	Ok        bool  `json:"ok"`
}

DBStatus defines model for DBStatus.

type DailyCountEntry

type DailyCountEntry struct {
	Count int64  `json:"count"`
	Day   string `json:"day"`
}

DailyCountEntry defines model for DailyCountEntry.

type DashboardStatsOutputBody

type DashboardStatsOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema                *string                   `json:"$schema,omitempty"`
	ArtifactCount         int64                     `json:"artifact_count"`
	ArtifactTypes         *[]ArtifactTypeCountEntry `json:"artifact_types"`
	IngestionTimeline     *[]DailyCountEntry        `json:"ingestion_timeline"`
	LicenseCategories     *[]CategoryCountEntry     `json:"license_categories"`
	LicenseCount          int64                     `json:"license_count"`
	PackageCount          int64                     `json:"package_count"`
	PackageGrowthTimeline *[]DailyCountEntry        `json:"package_growth_timeline"`
	SbomCount             int64                     `json:"sbom_count"`
	TopPackages           *[]PackageSummaryEntry    `json:"top_packages"`
	VersionCount          int64                     `json:"version_count"`
	VersionGrowthTimeline *[]DailyCountEntry        `json:"version_growth_timeline"`
	VulnCount             int64                     `json:"vuln_count"`
	VulnSeverity          VulnSeverityEntry         `json:"vuln_severity"`

	// Warming No snapshot is available yet and every count is a zero placeholder; render a loading state and retry
	Warming bool `json:"warming"`
}

DashboardStatsOutputBody defines model for DashboardStatsOutputBody.

type DependencyEdge

type DependencyEdge struct {
	From string `json:"from"`
	To   string `json:"to"`
}

DependencyEdge defines model for DependencyEdge.

type DependencyGraph

type DependencyGraph struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string             `json:"$schema,omitempty"`
	Edges  *[]DependencyEdge   `json:"edges"`
	Nodes  *[]ComponentSummary `json:"nodes"`
	Roots  *[]string           `json:"roots"`
}

DependencyGraph defines model for DependencyGraph.

type DiffSbomsParams

type DiffSbomsParams struct {
	// From UUID of the source SBOM
	From openapi_types.UUID `form:"from" json:"from"`

	// To UUID of the target SBOM
	To openapi_types.UUID `form:"to" json:"to"`
}

DiffSbomsParams defines parameters for DiffSboms.

type DiffTree

type DiffTree struct {
	// Schema A URL to the JSON Schema for this object.
	Schema  *string             `json:"$schema,omitempty"`
	Changes *[]ComponentDiff    `json:"changes"`
	Edges   *[]DependencyEdge   `json:"edges"`
	From    SBOMRef             `json:"from"`
	Nodes   *[]ComponentSummary `json:"nodes"`
	Roots   *[]string           `json:"roots"`
	Summary ChangeSummary       `json:"summary"`
	To      SBOMRef             `json:"to"`
}

DiffTree defines model for DiffTree.

type DiffTreeParams

type DiffTreeParams struct {
	// From UUID of the source SBOM
	From openapi_types.UUID `form:"from" json:"from"`

	// To UUID of the target SBOM
	To openapi_types.UUID `form:"to" json:"to"`
}

DiffTreeParams defines parameters for DiffTree.

type DiscoverArtifact

type DiscoverArtifact struct {
	Group        *string    `json:"group,omitempty"`
	Id           string     `json:"id"`
	LastSeenAt   *time.Time `json:"lastSeenAt,omitempty"`
	Name         string     `json:"name"`
	Purl         *string    `json:"purl,omitempty"`
	SbomCount    int64      `json:"sbomCount"`
	Score        float64    `json:"score"`
	Type         string     `json:"type"`
	UsageCount   int64      `json:"usageCount"`
	VersionCount int64      `json:"versionCount"`
}

DiscoverArtifact defines model for DiscoverArtifact.

type DiscoverLicense

type DiscoverLicense struct {
	Category       string  `json:"category"`
	ComponentCount int64   `json:"componentCount"`
	Id             string  `json:"id"`
	Name           string  `json:"name"`
	SpdxId         *string `json:"spdxId,omitempty"`
}

DiscoverLicense defines model for DiscoverLicense.

type DiscoverRecent

type DiscoverRecent struct {
	ArtifactId     string    `json:"artifactId"`
	CreatedAt      time.Time `json:"createdAt"`
	Digest         *string   `json:"digest,omitempty"`
	Flavor         *string   `json:"flavor,omitempty"`
	Group          *string   `json:"group,omitempty"`
	Name           string    `json:"name"`
	SbomId         string    `json:"sbomId"`
	SubjectVersion *string   `json:"subjectVersion,omitempty"`
	Type           string    `json:"type"`
}

DiscoverRecent defines model for DiscoverRecent.

type DiscoverVuln

type DiscoverVuln struct {
	AffectedArtifactCount int64      `json:"affectedArtifactCount"`
	AffectedSbomCount     int64      `json:"affectedSbomCount"`
	CanonicalId           string     `json:"canonicalId"`
	CvssScore             *float32   `json:"cvssScore,omitempty"`
	Id                    string     `json:"id"`
	PublishedAt           *time.Time `json:"publishedAt,omitempty"`
	Severity              string     `json:"severity"`
	Summary               *string    `json:"summary,omitempty"`
}

DiscoverVuln defines model for DiscoverVuln.

type DiscoveryOutputBody

type DiscoveryOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string `json:"$schema,omitempty"`

	// GeneratedAt When this snapshot was computed; absent while warming
	GeneratedAt *string `json:"generated_at,omitempty"`

	// LicenseSpread License distribution across public content, by distinct package identity
	LicenseSpread *[]DiscoverLicense `json:"license_spread"`

	// RecentArtifacts Most recently updated public artifacts, one row per artifact
	RecentArtifacts *[]DiscoverRecent `json:"recent_artifacts"`

	// TopArtifacts Artifacts ranked by how widely they are used, how many versions are tracked, and how recently they were seen
	TopArtifacts *[]DiscoverArtifact `json:"top_artifacts"`

	// TopVulnerabilities Vulnerabilities ranked by how many public artifacts they affect
	TopVulnerabilities *[]DiscoverVuln `json:"top_vulnerabilities"`

	// Warming No snapshot is available yet, so every section is empty because nothing is known — not because the catalog is empty; render a loading state and retry
	Warming bool `json:"warming"`
}

DiscoveryOutputBody defines model for DiscoveryOutputBody.

type DistinctComponentFilter

type DistinctComponentFilter struct {
	Name     string
	Group    string
	Type     string
	PurlType string
	Sort     string
	SortDir  string
}

DistinctComponentFilter narrows the deduplicated component listing. Every field is optional; a zero value browses everything visible.

type DistinctComponentSummary

type DistinctComponentSummary struct {
	Group        *string     `json:"group,omitempty"`
	Name         string      `json:"name"`
	PurlTypes    *[]string   `json:"purlTypes,omitempty"`
	SbomCount    int64       `json:"sbomCount"`
	Type         string      `json:"type"`
	VersionCount int64       `json:"versionCount"`
	Vulns        VulnSummary `json:"vulns"`
}

DistinctComponentSummary defines model for DistinctComponentSummary.

type EnrichmentJobResponse

type EnrichmentJobResponse struct {
	// ArtifactName Name of the artifact, for display
	ArtifactName *string `json:"artifact_name,omitempty"`
	Attempts     int32   `json:"attempts"`
	CreatedAt    string  `json:"created_at"`

	// EnricherName Which enricher this job runs
	EnricherName EnrichmentJobResponseEnricherName `json:"enricher_name"`
	FinishedAt   *string                           `json:"finished_at,omitempty"`

	// Id Job UUID
	Id            string  `json:"id"`
	LastAttemptAt *string `json:"last_attempt_at,omitempty"`
	LastError     *string `json:"last_error,omitempty"`

	// SbomDigest Digest of the SBOM's image, for display
	SbomDigest *string `json:"sbom_digest,omitempty"`

	// SbomId SBOM being enriched
	SbomId    *string                    `json:"sbom_id,omitempty"`
	StartedAt *string                    `json:"started_at,omitempty"`
	State     EnrichmentJobResponseState `json:"state"`

	// WorkerId Pod hostname that is processing this job
	WorkerId *string `json:"worker_id,omitempty"`
}

EnrichmentJobResponse defines model for EnrichmentJobResponse.

type EnrichmentJobResponseEnricherName

type EnrichmentJobResponseEnricherName string

EnrichmentJobResponseEnricherName Which enricher this job runs

const (
	EnrichmentJobResponseEnricherNameOciMetadata EnrichmentJobResponseEnricherName = "oci-metadata"
	EnrichmentJobResponseEnricherNameProvenance  EnrichmentJobResponseEnricherName = "provenance"
	EnrichmentJobResponseEnricherNameUser        EnrichmentJobResponseEnricherName = "user"
)

Defines values for EnrichmentJobResponseEnricherName.

func (EnrichmentJobResponseEnricherName) Valid

Valid indicates whether the value is a known member of the EnrichmentJobResponseEnricherName enum.

type EnrichmentJobResponseState

type EnrichmentJobResponseState string

EnrichmentJobResponseState defines model for EnrichmentJobResponse.State.

const (
	EnrichmentJobResponseStateFailed    EnrichmentJobResponseState = "failed"
	EnrichmentJobResponseStateQueued    EnrichmentJobResponseState = "queued"
	EnrichmentJobResponseStateRunning   EnrichmentJobResponseState = "running"
	EnrichmentJobResponseStateSucceeded EnrichmentJobResponseState = "succeeded"
)

Defines values for EnrichmentJobResponseState.

func (EnrichmentJobResponseState) Valid

func (e EnrichmentJobResponseState) Valid() bool

Valid indicates whether the value is a known member of the EnrichmentJobResponseState enum.

type EnrichmentJobSummaryRow

type EnrichmentJobSummaryRow struct {
	Count        int64  `json:"count"`
	EnricherName string `json:"enricher_name"`
	State        string `json:"state"`
}

EnrichmentJobSummaryRow defines model for EnrichmentJobSummaryRow.

type EnrichmentJobsSummaryOutputBody

type EnrichmentJobsSummaryOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string                    `json:"$schema,omitempty"`
	Data   *[]EnrichmentJobSummaryRow `json:"data"`
}

EnrichmentJobsSummaryOutputBody defines model for EnrichmentJobsSummaryOutputBody.

type EnrichmentStatus

type EnrichmentStatus struct {
	Enabled   bool  `json:"enabled"`
	QueueSize int64 `json:"queue_size"`
	Workers   int64 `json:"workers"`
}

EnrichmentStatus defines model for EnrichmentStatus.

type ErrorDetail

type ErrorDetail struct {
	// Location Where the error occurred, e.g. 'body.items[3].tags' or 'path.thing-id'
	Location *string `json:"location,omitempty"`

	// Message Error message text
	Message *string `json:"message,omitempty"`

	// Value The value at the given location
	Value interface{} `json:"value,omitempty"`
}

ErrorDetail defines model for ErrorDetail.

type ErrorModel

type ErrorModel struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string `json:"$schema,omitempty"`

	// Detail A human-readable explanation specific to this occurrence of the problem.
	Detail *string `json:"detail,omitempty"`

	// Errors Optional list of individual error details
	Errors *[]ErrorDetail `json:"errors,omitempty"`

	// Instance A URI reference that identifies the specific occurrence of the problem.
	Instance *string `json:"instance,omitempty"`

	// Status HTTP status code
	Status *int64 `json:"status,omitempty"`

	// Title A short, human-readable summary of the problem type. This value should not change between occurrences of the error.
	Title *string `json:"title,omitempty"`

	// Type A URI reference to human-readable documentation for the error.
	Type *string `json:"type,omitempty"`
}

ErrorModel defines model for ErrorModel.

type ExternalRefEntry

type ExternalRefEntry struct {
	Comment *string `json:"comment,omitempty"`
	Type    string  `json:"type"`
	Url     string  `json:"url"`
}

ExternalRefEntry defines model for ExternalRefEntry.

type FakeClient

type FakeClient struct {
	// Registry + auth
	ListRegistriesFn          func(ctx context.Context, opts PageOpts) (Page[RegistryResponse], error)
	GetRegistryFn             func(ctx context.Context, id string) (RegistryResponse, error)
	GetRegistryByNameFn       func(ctx context.Context, name string) (RegistryResponse, error)
	CreateRegistryFn          func(ctx context.Context, body CreateRegistryInputBody) (CreateRegistryResponseBody, error)
	UpdateRegistryFn          func(ctx context.Context, id string, body UpdateRegistryInputBody) (RegistryResponse, error)
	DeleteRegistryFn          func(ctx context.Context, id string) error
	ScanRegistryFn            func(ctx context.Context, id string) (ScanRegistryOutputBody, error)
	PreviewRegistryConfigFn   func(ctx context.Context, body PreviewRegistryConfigInputBody) (RegistryPreview, error)
	GetRegistryPreviewFn      func(ctx context.Context, id string) (RegistryPreview, error)
	TestRegistryConnectionFn  func(ctx context.Context, body TestRegistryConnectionInputBody) (TestRegistryConnectionOutputBody, error)
	RegenerateWebhookSecretFn func(ctx context.Context, id string) (RegenerateWebhookSecretOutputBody, error)

	// Namespace + source
	ListNamespacesFn     func(ctx context.Context) ([]NamespaceResponse, error)
	GetNamespaceFn       func(ctx context.Context, id string) (NamespaceResponse, error)
	GetNamespaceByNameFn func(ctx context.Context, name string) (NamespaceResponse, error)
	CreateNamespaceFn    func(ctx context.Context, body CreateNamespaceInputBody) (NamespaceResponse, error)
	UpdateNamespaceFn    func(ctx context.Context, id string, body UpdateNamespaceInputBody) (NamespaceResponse, error)
	DeleteNamespaceFn    func(ctx context.Context, id string) error

	ListSourcesFn  func(ctx context.Context, namespaceID string) ([]SourceResponse, error)
	GetSourceFn    func(ctx context.Context, id string) (SourceResponse, error)
	CreateSourceFn func(ctx context.Context, body CreateSourceInputBody) (SourceResponse, error)
	UpdateSourceFn func(ctx context.Context, id string, body UpdateSourceInputBody) (SourceResponse, error)
	DeleteSourceFn func(ctx context.Context, id string) error

	CreateAPIKeyFn   func(ctx context.Context, body CreateAPIKeyInputBody) (CreateAPIKeyOutputBody, error)
	ListAPIKeysFn    func(ctx context.Context) ([]KeyMetaResponse, error)
	DeleteAPIKeyFn   func(ctx context.Context, id string) error
	GetCurrentUserFn func(ctx context.Context) (MeOutputBody, error)

	// Cluster inventory
	ListClustersFn         func(ctx context.Context, namespaceID string) ([]ClusterResponse, error)
	GetClusterFn           func(ctx context.Context, id string) (ClusterResponse, error)
	CreateClusterFn        func(ctx context.Context, body CreateClusterInputBody) (ClusterResponse, error)
	UpdateClusterFn        func(ctx context.Context, id string, body UpdateClusterInputBody) (ClusterResponse, error)
	DeleteClusterFn        func(ctx context.Context, id string) error
	PutInventoryFn         func(ctx context.Context, clusterID string, workloads []InventoryWorkload) (PutInventoryOutputBody, error)
	ListClusterWorkloadsFn func(ctx context.Context, clusterID string) ([]ClusterWorkloadResponse, WorkloadCoverageResponse, error)

	// SBOM + artifact
	IngestSBOMFn                func(ctx context.Context, data []byte, params IngestSbomParams) (IngestSBOMOutputBody, error)
	GetSBOMFn                   func(ctx context.Context, id string, includeRaw bool) (SBOMDetail, error)
	ListSBOMsFn                 func(ctx context.Context, filter SBOMFilter, opts PageOpts) (CursorPage[SBOMSummary], error)
	DeleteSBOMFn                func(ctx context.Context, id string) error
	DiffSBOMsFn                 func(ctx context.Context, fromID, toID string) (ChangelogEntry, error)
	GetDiffTreeFn               func(ctx context.Context, fromID, toID string) (DiffTree, error)
	ListArtifactsFn             func(ctx context.Context, filter ArtifactFilter, opts PageOpts) (CursorPage[ArtifactSummary], error)
	GetArtifactFn               func(ctx context.Context, id string) (ArtifactDetail, error)
	GetArtifactChangelogFn      func(ctx context.Context, id string, params GetArtifactChangelogParams) (Changelog, error)
	GetArtifactLicenseSummaryFn func(ctx context.Context, id string) (GetArtifactLicenseSummaryOutputBody, error)
	ListArtifactSBOMsFn         func(ctx context.Context, id string, opts PageOpts) (CursorPage[SBOMSummary], error)
	ListArtifactVersionsFn      func(ctx context.Context, id string, opts PageOpts) (Page[ArtifactVersionSummary], error)

	// Name-keyed resolvers (ADR-042)
	LookupArtifactFn func(ctx context.Context, params LookupArtifactParams) (ArtifactDetail, error)
	LookupSBOMFn     func(ctx context.Context, params LookupSbomParams) (SBOMDetail, error)
	LookupLicenseFn  func(ctx context.Context, spdxID string) (LicenseCount, error)

	// Vulnerabilities
	GetArtifactVulnSummaryFn func(ctx context.Context, artifactID string) (VulnSummary, error)
	GetComponentVulnsFn      func(ctx context.Context, componentID string) ([]ComponentVulnEntry, error)
	GetVulnerabilityFn       func(ctx context.Context, vulnID string, opts PageOpts) (GetVulnerabilityOutputBody, error)

	// Component + job + stats
	SearchComponentsFn         func(ctx context.Context, filter ComponentFilter, opts PageOpts) (Page[ComponentSummary], error)
	SearchDistinctComponentsFn func(ctx context.Context, filter DistinctComponentFilter, opts PageOpts) (Page[DistinctComponentSummary], error)
	GetComponentFn             func(ctx context.Context, id string) (ComponentDetail, error)
	GetComponentVersionsFn     func(ctx context.Context, params GetComponentVersionsParams) (GetComponentVersionsOutputBody, error)
	ListComponentPurlTypesFn   func(ctx context.Context) ([]string, error)
	ListSBOMComponentsFn       func(ctx context.Context, sbomID string) ([]ComponentSummary, error)
	GetSBOMDependenciesFn      func(ctx context.Context, sbomID string) (DependencyGraph, error)

	ListJobsFn          func(ctx context.Context, filter JobFilter, opts PageOpts) (Page[ScanJobResponse], error)
	GetJobFn            func(ctx context.Context, id string) (ScanJobResponse, error)
	RetryJobFn          func(ctx context.Context, id string) error
	GetDashboardStatsFn func(ctx context.Context) (DashboardStatsOutputBody, error)

	GetOpenAPISpecFn func(ctx context.Context) (json.RawMessage, error)
}

FakeClient is a test double that implements Client. Set function fields to stub individual methods; unset fields return zero values and nil error.

func (*FakeClient) CreateAPIKey

func (*FakeClient) CreateCluster

func (f *FakeClient) CreateCluster(ctx context.Context, body CreateClusterInputBody) (ClusterResponse, error)

func (*FakeClient) CreateNamespace

func (f *FakeClient) CreateNamespace(ctx context.Context, body CreateNamespaceInputBody) (NamespaceResponse, error)

func (*FakeClient) CreateRegistry

func (*FakeClient) CreateSource

func (f *FakeClient) CreateSource(ctx context.Context, body CreateSourceInputBody) (SourceResponse, error)

func (*FakeClient) DeleteAPIKey

func (f *FakeClient) DeleteAPIKey(ctx context.Context, id string) error

func (*FakeClient) DeleteCluster

func (f *FakeClient) DeleteCluster(ctx context.Context, id string) error

func (*FakeClient) DeleteNamespace

func (f *FakeClient) DeleteNamespace(ctx context.Context, id string) error

func (*FakeClient) DeleteRegistry

func (f *FakeClient) DeleteRegistry(ctx context.Context, id string) error

func (*FakeClient) DeleteSBOM

func (f *FakeClient) DeleteSBOM(ctx context.Context, id string) error

func (*FakeClient) DeleteSource

func (f *FakeClient) DeleteSource(ctx context.Context, id string) error

func (*FakeClient) DiffSBOMs

func (f *FakeClient) DiffSBOMs(ctx context.Context, fromID, toID string) (ChangelogEntry, error)

func (*FakeClient) GetArtifact

func (f *FakeClient) GetArtifact(ctx context.Context, id string) (ArtifactDetail, error)

func (*FakeClient) GetArtifactChangelog

func (f *FakeClient) GetArtifactChangelog(ctx context.Context, id string, params GetArtifactChangelogParams) (Changelog, error)

func (*FakeClient) GetArtifactLicenseSummary

func (f *FakeClient) GetArtifactLicenseSummary(ctx context.Context, id string) (GetArtifactLicenseSummaryOutputBody, error)

func (*FakeClient) GetArtifactVulnSummary

func (f *FakeClient) GetArtifactVulnSummary(ctx context.Context, artifactID string) (VulnSummary, error)

func (*FakeClient) GetCluster

func (f *FakeClient) GetCluster(ctx context.Context, id string) (ClusterResponse, error)

func (*FakeClient) GetComponent

func (f *FakeClient) GetComponent(ctx context.Context, id string) (ComponentDetail, error)

func (*FakeClient) GetComponentVersions

func (*FakeClient) GetComponentVulns

func (f *FakeClient) GetComponentVulns(ctx context.Context, componentID string) ([]ComponentVulnEntry, error)

func (*FakeClient) GetCurrentUser

func (f *FakeClient) GetCurrentUser(ctx context.Context) (MeOutputBody, error)

func (*FakeClient) GetDashboardStats

func (f *FakeClient) GetDashboardStats(ctx context.Context) (DashboardStatsOutputBody, error)

func (*FakeClient) GetDiffTree

func (f *FakeClient) GetDiffTree(ctx context.Context, fromID, toID string) (DiffTree, error)

func (*FakeClient) GetJob

func (f *FakeClient) GetJob(ctx context.Context, id string) (ScanJobResponse, error)

func (*FakeClient) GetNamespace

func (f *FakeClient) GetNamespace(ctx context.Context, id string) (NamespaceResponse, error)

func (*FakeClient) GetNamespaceByName

func (f *FakeClient) GetNamespaceByName(ctx context.Context, name string) (NamespaceResponse, error)

func (*FakeClient) GetOpenAPISpec

func (f *FakeClient) GetOpenAPISpec(ctx context.Context) (json.RawMessage, error)

func (*FakeClient) GetRegistry

func (f *FakeClient) GetRegistry(ctx context.Context, id string) (RegistryResponse, error)

func (*FakeClient) GetRegistryByName

func (f *FakeClient) GetRegistryByName(ctx context.Context, name string) (RegistryResponse, error)

func (*FakeClient) GetRegistryPreview

func (f *FakeClient) GetRegistryPreview(ctx context.Context, id string) (RegistryPreview, error)

func (*FakeClient) GetSBOM

func (f *FakeClient) GetSBOM(ctx context.Context, id string, includeRaw bool) (SBOMDetail, error)

func (*FakeClient) GetSBOMDependencies

func (f *FakeClient) GetSBOMDependencies(ctx context.Context, sbomID string) (DependencyGraph, error)

func (*FakeClient) GetSource

func (f *FakeClient) GetSource(ctx context.Context, id string) (SourceResponse, error)

func (*FakeClient) GetVulnerability

func (f *FakeClient) GetVulnerability(ctx context.Context, vulnID string, opts PageOpts) (GetVulnerabilityOutputBody, error)

func (*FakeClient) IngestSBOM

func (f *FakeClient) IngestSBOM(ctx context.Context, data []byte, params IngestSbomParams) (IngestSBOMOutputBody, error)

func (*FakeClient) ListAPIKeys

func (f *FakeClient) ListAPIKeys(ctx context.Context) ([]KeyMetaResponse, error)

func (*FakeClient) ListArtifactSBOMs

func (f *FakeClient) ListArtifactSBOMs(ctx context.Context, id string, opts PageOpts) (CursorPage[SBOMSummary], error)

func (*FakeClient) ListArtifactVersions

func (f *FakeClient) ListArtifactVersions(ctx context.Context, id string, opts PageOpts) (Page[ArtifactVersionSummary], error)

func (*FakeClient) ListArtifacts

func (f *FakeClient) ListArtifacts(ctx context.Context, filter ArtifactFilter, opts PageOpts) (CursorPage[ArtifactSummary], error)

func (*FakeClient) ListClusterWorkloads

func (f *FakeClient) ListClusterWorkloads(ctx context.Context, clusterID string) ([]ClusterWorkloadResponse, WorkloadCoverageResponse, error)

func (*FakeClient) ListClusters

func (f *FakeClient) ListClusters(ctx context.Context, namespaceID string) ([]ClusterResponse, error)

func (*FakeClient) ListComponentPurlTypes

func (f *FakeClient) ListComponentPurlTypes(ctx context.Context) ([]string, error)

func (*FakeClient) ListJobs

func (f *FakeClient) ListJobs(ctx context.Context, filter JobFilter, opts PageOpts) (Page[ScanJobResponse], error)

func (*FakeClient) ListNamespaces

func (f *FakeClient) ListNamespaces(ctx context.Context) ([]NamespaceResponse, error)

func (*FakeClient) ListRegistries

func (f *FakeClient) ListRegistries(ctx context.Context, opts PageOpts) (Page[RegistryResponse], error)

func (*FakeClient) ListSBOMComponents

func (f *FakeClient) ListSBOMComponents(ctx context.Context, sbomID string) ([]ComponentSummary, error)

func (*FakeClient) ListSBOMs

func (f *FakeClient) ListSBOMs(ctx context.Context, filter SBOMFilter, opts PageOpts) (CursorPage[SBOMSummary], error)

func (*FakeClient) ListSources

func (f *FakeClient) ListSources(ctx context.Context, namespaceID string) ([]SourceResponse, error)

func (*FakeClient) LookupArtifact

func (f *FakeClient) LookupArtifact(ctx context.Context, params LookupArtifactParams) (ArtifactDetail, error)

func (*FakeClient) LookupLicense

func (f *FakeClient) LookupLicense(ctx context.Context, spdxID string) (LicenseCount, error)

func (*FakeClient) LookupSBOM

func (f *FakeClient) LookupSBOM(ctx context.Context, params LookupSbomParams) (SBOMDetail, error)

func (*FakeClient) PreviewRegistryConfig

func (f *FakeClient) PreviewRegistryConfig(ctx context.Context, body PreviewRegistryConfigInputBody) (RegistryPreview, error)

func (*FakeClient) PutInventory

func (f *FakeClient) PutInventory(ctx context.Context, clusterID string, workloads []InventoryWorkload) (PutInventoryOutputBody, error)

func (*FakeClient) RegenerateWebhookSecret

func (f *FakeClient) RegenerateWebhookSecret(ctx context.Context, id string) (RegenerateWebhookSecretOutputBody, error)

func (*FakeClient) RetryJob

func (f *FakeClient) RetryJob(ctx context.Context, id string) error

func (*FakeClient) ScanRegistry

func (f *FakeClient) ScanRegistry(ctx context.Context, id string) (ScanRegistryOutputBody, error)

func (*FakeClient) SearchComponents

func (f *FakeClient) SearchComponents(ctx context.Context, filter ComponentFilter, opts PageOpts) (Page[ComponentSummary], error)

func (*FakeClient) SearchDistinctComponents

func (f *FakeClient) SearchDistinctComponents(ctx context.Context, filter DistinctComponentFilter, opts PageOpts) (Page[DistinctComponentSummary], error)

func (*FakeClient) UpdateCluster

func (f *FakeClient) UpdateCluster(ctx context.Context, id string, body UpdateClusterInputBody) (ClusterResponse, error)

func (*FakeClient) UpdateNamespace

func (f *FakeClient) UpdateNamespace(ctx context.Context, id string, body UpdateNamespaceInputBody) (NamespaceResponse, error)

func (*FakeClient) UpdateRegistry

func (f *FakeClient) UpdateRegistry(ctx context.Context, id string, body UpdateRegistryInputBody) (RegistryResponse, error)

func (*FakeClient) UpdateSource

func (f *FakeClient) UpdateSource(ctx context.Context, id string, body UpdateSourceInputBody) (SourceResponse, error)

type GetArtifactChangelogParams

type GetArtifactChangelogParams struct {
	// SubjectVersion Filter by subject version
	SubjectVersion *string `form:"subject_version,omitempty" json:"subject_version,omitempty"`

	// Arch Architecture to show timeline for (e.g. amd64)
	Arch *string `form:"arch,omitempty" json:"arch,omitempty"`

	// Flavor Flavor to show timeline for (e.g. standard, fips)
	Flavor *string `form:"flavor,omitempty" json:"flavor,omitempty"`

	// Mode Sort/filter mode: 'semver' (semver versions, semver order), 'all' (every version, build-time order). Empty auto-selects semver when available.
	Mode *GetArtifactChangelogParamsMode `form:"mode,omitempty" json:"mode,omitempty"`

	// Limit Maximum number of changelog entries per page
	Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`

	// Offset Number of entries to skip, counting from the newest
	Offset *int32 `form:"offset,omitempty" json:"offset,omitempty"`
}

GetArtifactChangelogParams defines parameters for GetArtifactChangelog.

type GetArtifactChangelogParamsMode

type GetArtifactChangelogParamsMode string

GetArtifactChangelogParamsMode defines parameters for GetArtifactChangelog.

const (
	GetArtifactChangelogParamsModeAll    GetArtifactChangelogParamsMode = "all"
	GetArtifactChangelogParamsModeSemver GetArtifactChangelogParamsMode = "semver"
)

Defines values for GetArtifactChangelogParamsMode.

func (GetArtifactChangelogParamsMode) Valid

Valid indicates whether the value is a known member of the GetArtifactChangelogParamsMode enum.

type GetArtifactContainsOutputBody

type GetArtifactContainsOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema   *string             `json:"$schema,omitempty"`
	Contains *[]ArtifactRelation `json:"contains"`
}

GetArtifactContainsOutputBody defines model for GetArtifactContainsOutputBody.

type GetArtifactLicenseSummaryOutputBody

type GetArtifactLicenseSummaryOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema   *string         `json:"$schema,omitempty"`
	Licenses *[]LicenseCount `json:"licenses"`
}

GetArtifactLicenseSummaryOutputBody defines model for GetArtifactLicenseSummaryOutputBody.

type GetArtifactUsagesOutputBody

type GetArtifactUsagesOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string             `json:"$schema,omitempty"`
	Usages *[]ArtifactRelation `json:"usages"`
}

GetArtifactUsagesOutputBody defines model for GetArtifactUsagesOutputBody.

type GetArtifactVulnSummaryOutputBody

type GetArtifactVulnSummaryOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema  *string     `json:"$schema,omitempty"`
	Summary VulnSummary `json:"summary"`
}

GetArtifactVulnSummaryOutputBody defines model for GetArtifactVulnSummaryOutputBody.

type GetComponentVersionsOutputBody

type GetComponentVersionsOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string `json:"$schema,omitempty"`

	// ArtifactCount Distinct artifacts whose SBOMs contain this component, across every page
	ArtifactCount int64          `json:"artifactCount"`
	Pagination    PaginationMeta `json:"pagination"`

	// VersionCount Distinct versions under this identity, across every page
	VersionCount int64                    `json:"versionCount"`
	Versions     *[]ComponentVersionEntry `json:"versions"`
}

GetComponentVersionsOutputBody defines model for GetComponentVersionsOutputBody.

type GetComponentVersionsParams

type GetComponentVersionsParams struct {
	// Limit Maximum number of results per page
	Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`

	// Offset Number of results to skip
	Offset *int32 `form:"offset,omitempty" json:"offset,omitempty"`

	// Name Component name
	Name string `form:"name" json:"name"`

	// Group Filter by component group
	Group *string `form:"group,omitempty" json:"group,omitempty"`

	// Version Filter by component version
	Version *string `form:"version,omitempty" json:"version,omitempty"`

	// Type Filter by component type
	Type *string `form:"type,omitempty" json:"type,omitempty"`
}

GetComponentVersionsParams defines parameters for GetComponentVersions.

type GetComponentVulnsOutputBody

type GetComponentVulnsOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string               `json:"$schema,omitempty"`
	Data   *[]ComponentVulnEntry `json:"data"`
}

GetComponentVulnsOutputBody defines model for GetComponentVulnsOutputBody.

type GetRegistryTrustSummaryOutputBody

type GetRegistryTrustSummaryOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string               `json:"$schema,omitempty"`
	Data   *[]RegistryTrustCount `json:"data"`
}

GetRegistryTrustSummaryOutputBody defines model for GetRegistryTrustSummaryOutputBody.

type GetSbomParams

type GetSbomParams struct {
	// Include Set to 'raw' to include the raw BOM JSON
	Include *string `form:"include,omitempty" json:"include,omitempty"`
}

GetSbomParams defines parameters for GetSbom.

type GetVulnerabilityOutputBody

type GetVulnerabilityOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema               *string              `json:"$schema,omitempty"`
	AffectedArtifacts    *[]AffectedArtifact  `json:"affectedArtifacts"`
	AffectedComponents   *[]AffectedComponent `json:"affectedComponents"`
	ComponentsPagination PaginationMeta       `json:"componentsPagination"`

	// NamespaceCount Namespaces visible to the caller that hold at least one affected SBOM
	NamespaceCount int64          `json:"namespaceCount"`
	Pagination     PaginationMeta `json:"pagination"`
	Vulnerability  VulnDetail     `json:"vulnerability"`
}

GetVulnerabilityOutputBody defines model for GetVulnerabilityOutputBody.

type GetVulnerabilityParams

type GetVulnerabilityParams struct {
	// Limit Maximum number of results per page
	Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`

	// Offset Number of results to skip
	Offset *int32 `form:"offset,omitempty" json:"offset,omitempty"`
}

GetVulnerabilityParams defines parameters for GetVulnerability.

type HashEntry

type HashEntry struct {
	Algorithm string `json:"algorithm"`
	Value     string `json:"value"`
}

HashEntry defines model for HashEntry.

type HealthCheckOutputBody

type HealthCheckOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string `json:"$schema,omitempty"`

	// Status Health status
	Status string `json:"status"`
}

HealthCheckOutputBody defines model for HealthCheckOutputBody.

type IdentityResponse

type IdentityResponse struct {
	CreatedAt time.Time `json:"created_at"`

	// DisplayName Label for the issuer
	DisplayName string `json:"display_name"`

	// Email Address this issuer released, if any
	Email *string `json:"email,omitempty"`

	// Id Identity UUID
	Id string `json:"id"`

	// Provider Issuer key: 'github', or 'oidc:<name>'
	Provider string `json:"provider"`

	// Subject The issuer's stable identifier for this account
	Subject string `json:"subject"`
}

IdentityResponse defines model for IdentityResponse.

type IngestClusterUnknownImagesJSONRequestBody

type IngestClusterUnknownImagesJSONRequestBody = IngestUnknownInputBody

IngestClusterUnknownImagesJSONRequestBody defines body for IngestClusterUnknownImages for application/json ContentType.

type IngestSBOMOutputBody

type IngestSBOMOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string `json:"$schema,omitempty"`

	// ComponentCount Number of components in the SBOM
	ComponentCount int64 `json:"componentCount"`

	// Id UUID of the created SBOM
	Id string `json:"id"`

	// SerialNumber SBOM serial number
	SerialNumber *string `json:"serialNumber,omitempty"`

	// SpecVersion CycloneDX spec version
	SpecVersion string `json:"specVersion"`

	// Status Ingestion status
	Status string `json:"status"`
}

IngestSBOMOutputBody defines model for IngestSBOMOutputBody.

type IngestSbomParams

type IngestSbomParams struct {
	// Source Ingest channel this SBOM arrived through, as a source UUID or <namespace>/<name>. Required — the source's namespace owns the SBOM.
	Source *string `form:"source,omitempty" json:"source,omitempty"`

	// Version Image version/tag (overrides BOM-extracted value for subject_version and imageVersion)
	Version *string `form:"version,omitempty" json:"version,omitempty"`

	// Architecture Image architecture (e.g. amd64, arm64)
	Architecture *string `form:"architecture,omitempty" json:"architecture,omitempty"`

	// BuildDate Image build date (RFC3339 or date string)
	BuildDate *string `form:"build_date,omitempty" json:"build_date,omitempty"`

	// SubjectType CycloneDX component type of the subject (e.g. application, library, file)
	SubjectType *string `form:"subject_type,omitempty" json:"subject_type,omitempty"`

	// SubjectName Subject name (e.g. ocidex)
	SubjectName *string `form:"subject_name,omitempty" json:"subject_name,omitempty"`

	// SubjectGroup Subject group/namespace (e.g. github.com/pfenerty)
	SubjectGroup *string `form:"subject_group,omitempty" json:"subject_group,omitempty"`

	// SubjectPurl Subject package URL (e.g. pkg:golang/github.com/pfenerty/ocidex@v1.2.3)
	SubjectPurl *string `form:"subject_purl,omitempty" json:"subject_purl,omitempty"`

	// Digest sha256 of the artifact file itself, not of this SBOM document. Required for a non-container subject.
	Digest *string `form:"digest,omitempty" json:"digest,omitempty"`
}

IngestSbomParams defines parameters for IngestSbom.

type IngestUnknownInputBody

type IngestUnknownInputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string `json:"$schema,omitempty"`

	// ImageDigests Limit the run to these running image digests. Omit to ingest every unknown image the cluster reports.
	ImageDigests *[]string `json:"image_digests,omitempty"`
}

IngestUnknownInputBody defines model for IngestUnknownInputBody.

type IngestUnknownOutputBody

type IngestUnknownOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string `json:"$schema,omitempty"`

	// Considered Unknown images looked at; the counts below account for all of them
	Considered int64 `json:"considered"`

	// Failed Submission errored against a reachable registry — transient, unlike the skips
	Failed int64 `json:"failed"`

	// Queued Scan jobs enqueued. A multi-arch image expands into one job per platform, so this can exceed the image count.
	Queued int64 `json:"queued"`

	// SkippedNoRegistry No registry in this cluster's namespace is configured for the image's host
	SkippedNoRegistry int64 `json:"skipped_no_registry"`

	// SkippedPatternExcluded The registry's repository patterns exclude this repository
	SkippedPatternExcluded int64 `json:"skipped_pattern_excluded"`

	// SkippedRegistryDisabled The host matches a registry that is switched off
	SkippedRegistryDisabled int64 `json:"skipped_registry_disabled"`

	// SkippedUnparseableRef The reported reference carries no host to resolve against
	SkippedUnparseableRef int64 `json:"skipped_unparseable_ref"`
}

IngestUnknownOutputBody defines model for IngestUnknownOutputBody.

type InventoryWorkload

type InventoryWorkload struct {
	ContainerName string `json:"container_name"`

	// ImageDigest Normalized digest from status.containerStatuses[].imageID. Omit when the agent could not extract one — that is reported as 'unresolvable', not silently dropped.
	ImageDigest *string `json:"image_digest,omitempty"`

	// ImageRef Image reference, for display only. Never used as an identity: a tag is mutable.
	ImageRef string `json:"image_ref"`

	// K8sNamespace Kubernetes namespace the workload runs in
	K8sNamespace string `json:"k8s_namespace"`

	// PodCount Running pods carrying this container at this digest
	PodCount int32 `json:"pod_count"`

	// WorkloadKind Owning workload kind (Deployment, StatefulSet, DaemonSet, Job, CronJob, Pod)
	WorkloadKind string `json:"workload_kind"`
	WorkloadName string `json:"workload_name"`
}

InventoryWorkload defines model for InventoryWorkload.

type JobFilter

type JobFilter struct {
	// State is one of queued, running, succeeded, or failed.
	State string
}

JobFilter narrows a scan job listing. A zero value lists every state.

type KeyMetaResponse

type KeyMetaResponse struct {
	// Capabilities Capabilities this key may exercise, before intersection with the owner's live namespace roles
	Capabilities *[]string `json:"capabilities"`
	CreatedAt    time.Time `json:"created_at"`

	// Id Key UUID
	Id         string     `json:"id"`
	LastUsedAt *time.Time `json:"last_used_at,omitempty"`
	Name       string     `json:"name"`

	// Prefix First 8 characters of the key
	Prefix string `json:"prefix"`
}

KeyMetaResponse defines model for KeyMetaResponse.

type LicenseCount

type LicenseCount struct {
	// Schema A URL to the JSON Schema for this object.
	Schema         *string `json:"$schema,omitempty"`
	Category       string  `json:"category"`
	ComponentCount int64   `json:"componentCount"`
	Id             string  `json:"id"`
	Name           string  `json:"name"`
	SpdxId         *string `json:"spdxId,omitempty"`
	Url            *string `json:"url,omitempty"`
}

LicenseCount defines model for LicenseCount.

type LicenseSummary

type LicenseSummary struct {
	Id     string  `json:"id"`
	Name   string  `json:"name"`
	SpdxId *string `json:"spdxId,omitempty"`
	Url    *string `json:"url,omitempty"`
}

LicenseSummary defines model for LicenseSummary.

type LinkIdentityJSONRequestBody

type LinkIdentityJSONRequestBody = StartIdentityLinkInputBody

LinkIdentityJSONRequestBody defines body for LinkIdentity for application/json ContentType.

type ListAPIKeysOutputBody

type ListAPIKeysOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string            `json:"$schema,omitempty"`
	Keys   *[]KeyMetaResponse `json:"keys"`
}

ListAPIKeysOutputBody defines model for ListAPIKeysOutputBody.

type ListArtifactSBOMsOutputBody

type ListArtifactSBOMsOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema     *string        `json:"$schema,omitempty"`
	Data       *[]SBOMSummary `json:"data"`
	Pagination CursorMeta     `json:"pagination"`
}

ListArtifactSBOMsOutputBody defines model for ListArtifactSBOMsOutputBody.

type ListArtifactSbomsParams

type ListArtifactSbomsParams struct {
	// Limit Maximum number of results per page
	Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`

	// Cursor Opaque cursor from a previous response's nextCursor; omit for the first page
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`

	// SubjectVersion Filter by subject version
	SubjectVersion *string `form:"subject_version,omitempty" json:"subject_version,omitempty"`

	// ImageVersion Filter by image version
	ImageVersion *string `form:"image_version,omitempty" json:"image_version,omitempty"`
}

ListArtifactSbomsParams defines parameters for ListArtifactSboms.

type ListArtifactVersionsOutputBody

type ListArtifactVersionsOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string                   `json:"$schema,omitempty"`
	Data   *[]ArtifactVersionSummary `json:"data"`

	// HasSemver Whether the artifact has any semver-parseable version
	HasSemver  bool           `json:"hasSemver"`
	Pagination PaginationMeta `json:"pagination"`

	// ResolvedMode Concrete sort mode applied after auto-resolution
	ResolvedMode ListArtifactVersionsOutputBodyResolvedMode `json:"resolvedMode"`
}

ListArtifactVersionsOutputBody defines model for ListArtifactVersionsOutputBody.

type ListArtifactVersionsOutputBodyResolvedMode

type ListArtifactVersionsOutputBodyResolvedMode string

ListArtifactVersionsOutputBodyResolvedMode Concrete sort mode applied after auto-resolution

const (
	ListArtifactVersionsOutputBodyResolvedModeAll    ListArtifactVersionsOutputBodyResolvedMode = "all"
	ListArtifactVersionsOutputBodyResolvedModeSemver ListArtifactVersionsOutputBodyResolvedMode = "semver"
)

Defines values for ListArtifactVersionsOutputBodyResolvedMode.

func (ListArtifactVersionsOutputBodyResolvedMode) Valid

Valid indicates whether the value is a known member of the ListArtifactVersionsOutputBodyResolvedMode enum.

type ListArtifactVersionsParams

type ListArtifactVersionsParams struct {
	// Limit Maximum number of results per page
	Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`

	// Offset Number of results to skip
	Offset *int32 `form:"offset,omitempty" json:"offset,omitempty"`

	// Mode Sort/filter mode: 'semver' (semver versions, semver order), 'all' (every version, build-time order). Empty auto-selects semver when available.
	Mode *ListArtifactVersionsParamsMode `form:"mode,omitempty" json:"mode,omitempty"`

	// Sort Column to sort by, applied on top of mode. Empty keeps the mode's own ordering.
	Sort *ListArtifactVersionsParamsSort `form:"sort,omitempty" json:"sort,omitempty"`

	// Dir Sort direction; defaults to desc (worst first) when sort is set.
	Dir *ListArtifactVersionsParamsDir `form:"dir,omitempty" json:"dir,omitempty"`
}

ListArtifactVersionsParams defines parameters for ListArtifactVersions.

type ListArtifactVersionsParamsDir

type ListArtifactVersionsParamsDir string

ListArtifactVersionsParamsDir defines parameters for ListArtifactVersions.

const (
	ListArtifactVersionsParamsDirAsc  ListArtifactVersionsParamsDir = "asc"
	ListArtifactVersionsParamsDirDesc ListArtifactVersionsParamsDir = "desc"
)

Defines values for ListArtifactVersionsParamsDir.

func (ListArtifactVersionsParamsDir) Valid

Valid indicates whether the value is a known member of the ListArtifactVersionsParamsDir enum.

type ListArtifactVersionsParamsMode

type ListArtifactVersionsParamsMode string

ListArtifactVersionsParamsMode defines parameters for ListArtifactVersions.

const (
	ListArtifactVersionsParamsModeAll    ListArtifactVersionsParamsMode = "all"
	ListArtifactVersionsParamsModeSemver ListArtifactVersionsParamsMode = "semver"
)

Defines values for ListArtifactVersionsParamsMode.

func (ListArtifactVersionsParamsMode) Valid

Valid indicates whether the value is a known member of the ListArtifactVersionsParamsMode enum.

type ListArtifactVersionsParamsSort

type ListArtifactVersionsParamsSort string

ListArtifactVersionsParamsSort defines parameters for ListArtifactVersions.

const (
	ListArtifactVersionsParamsSortSeverity ListArtifactVersionsParamsSort = "severity"
)

Defines values for ListArtifactVersionsParamsSort.

func (ListArtifactVersionsParamsSort) Valid

Valid indicates whether the value is a known member of the ListArtifactVersionsParamsSort enum.

type ListArtifactVulnsOutputBody

type ListArtifactVulnsOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema        *string              `json:"$schema,omitempty"`
	Data          *[]ArtifactVulnEntry `json:"data"`
	Pagination    PaginationMeta       `json:"pagination"`
	TotalVersions int64                `json:"totalVersions"`
	VersionScope  int32                `json:"versionScope"`
}

ListArtifactVulnsOutputBody defines model for ListArtifactVulnsOutputBody.

type ListArtifactVulnsParams

type ListArtifactVulnsParams struct {
	// Severity Filter by severity
	Severity *ListArtifactVulnsParamsSeverity `form:"severity,omitempty" json:"severity,omitempty"`

	// Vuln Filter to a single advisory, by canonical id or native OSV id
	Vuln *string `form:"vuln,omitempty" json:"vuln,omitempty"`

	// Sort Column to sort by. Unset means worst first: severity, then CVSS.
	Sort *ListArtifactVulnsParamsSort `form:"sort,omitempty" json:"sort,omitempty"`

	// Dir Sort direction (default asc). Applies to sort only — with sort unset the worst-first default ordering ignores it.
	Dir *ListArtifactVulnsParamsDir `form:"dir,omitempty" json:"dir,omitempty"`

	// VersionScope How many of the artifact's most recent versions to scan
	VersionScope *int32 `form:"versionScope,omitempty" json:"versionScope,omitempty"`

	// Limit Maximum number of results per page
	Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`

	// Offset Number of results to skip
	Offset *int32 `form:"offset,omitempty" json:"offset,omitempty"`
}

ListArtifactVulnsParams defines parameters for ListArtifactVulns.

type ListArtifactVulnsParamsDir

type ListArtifactVulnsParamsDir string

ListArtifactVulnsParamsDir defines parameters for ListArtifactVulns.

const (
	ListArtifactVulnsParamsDirAsc  ListArtifactVulnsParamsDir = "asc"
	ListArtifactVulnsParamsDirDesc ListArtifactVulnsParamsDir = "desc"
)

Defines values for ListArtifactVulnsParamsDir.

func (ListArtifactVulnsParamsDir) Valid

func (e ListArtifactVulnsParamsDir) Valid() bool

Valid indicates whether the value is a known member of the ListArtifactVulnsParamsDir enum.

type ListArtifactVulnsParamsSeverity

type ListArtifactVulnsParamsSeverity string

ListArtifactVulnsParamsSeverity defines parameters for ListArtifactVulns.

const (
	ListArtifactVulnsParamsSeverityCRITICAL ListArtifactVulnsParamsSeverity = "CRITICAL"
	ListArtifactVulnsParamsSeverityHIGH     ListArtifactVulnsParamsSeverity = "HIGH"
	ListArtifactVulnsParamsSeverityLOW      ListArtifactVulnsParamsSeverity = "LOW"
	ListArtifactVulnsParamsSeverityMEDIUM   ListArtifactVulnsParamsSeverity = "MEDIUM"
	ListArtifactVulnsParamsSeverityUNKNOWN  ListArtifactVulnsParamsSeverity = "UNKNOWN"
)

Defines values for ListArtifactVulnsParamsSeverity.

func (ListArtifactVulnsParamsSeverity) Valid

Valid indicates whether the value is a known member of the ListArtifactVulnsParamsSeverity enum.

type ListArtifactVulnsParamsSort

type ListArtifactVulnsParamsSort string

ListArtifactVulnsParamsSort defines parameters for ListArtifactVulns.

const (
	ListArtifactVulnsParamsSortAffectedPackageCount ListArtifactVulnsParamsSort = "affected_package_count"
	ListArtifactVulnsParamsSortAffectedVersionCount ListArtifactVulnsParamsSort = "affected_version_count"
	ListArtifactVulnsParamsSortCanonicalId          ListArtifactVulnsParamsSort = "canonical_id"
	ListArtifactVulnsParamsSortCvssScore            ListArtifactVulnsParamsSort = "cvss_score"
	ListArtifactVulnsParamsSortSeverity             ListArtifactVulnsParamsSort = "severity"
)

Defines values for ListArtifactVulnsParamsSort.

func (ListArtifactVulnsParamsSort) Valid

Valid indicates whether the value is a known member of the ListArtifactVulnsParamsSort enum.

type ListArtifactsOutputBody

type ListArtifactsOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema     *string            `json:"$schema,omitempty"`
	Data       *[]ArtifactSummary `json:"data"`
	Pagination CursorMeta         `json:"pagination"`
}

ListArtifactsOutputBody defines model for ListArtifactsOutputBody.

type ListArtifactsParams

type ListArtifactsParams struct {
	// Limit Maximum number of results per page
	Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`

	// Cursor Opaque cursor from a previous response's nextCursor; omit for the first page
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`

	// Type Filter by artifact type
	Type *string `form:"type,omitempty" json:"type,omitempty"`

	// Name Filter by artifact name
	Name *string `form:"name,omitempty" json:"name,omitempty"`

	// Sufficient Filter to artifacts with sufficiently enriched SBOMs; pass 'false' to include all (default: true)
	Sufficient *string `form:"sufficient,omitempty" json:"sufficient,omitempty"`

	// Sort Column to sort by. Empty orders by name. Changing it invalidates any cursor already held.
	Sort *ListArtifactsParamsSort `form:"sort,omitempty" json:"sort,omitempty"`

	// Dir Sort direction; defaults to desc (worst first) when sort is set.
	Dir *ListArtifactsParamsDir `form:"dir,omitempty" json:"dir,omitempty"`
}

ListArtifactsParams defines parameters for ListArtifacts.

type ListArtifactsParamsDir

type ListArtifactsParamsDir string

ListArtifactsParamsDir defines parameters for ListArtifacts.

const (
	ListArtifactsParamsDirAsc  ListArtifactsParamsDir = "asc"
	ListArtifactsParamsDirDesc ListArtifactsParamsDir = "desc"
)

Defines values for ListArtifactsParamsDir.

func (ListArtifactsParamsDir) Valid

func (e ListArtifactsParamsDir) Valid() bool

Valid indicates whether the value is a known member of the ListArtifactsParamsDir enum.

type ListArtifactsParamsSort

type ListArtifactsParamsSort string

ListArtifactsParamsSort defines parameters for ListArtifacts.

const (
	ListArtifactsParamsSortSeverity ListArtifactsParamsSort = "severity"
)

Defines values for ListArtifactsParamsSort.

func (ListArtifactsParamsSort) Valid

func (e ListArtifactsParamsSort) Valid() bool

Valid indicates whether the value is a known member of the ListArtifactsParamsSort enum.

type ListClusterImagesOutputBody

type ListClusterImagesOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema     *string                  `json:"$schema,omitempty"`
	Coverage   WorkloadCoverageResponse `json:"coverage"`
	Data       *[]ClusterImageResponse  `json:"data"`
	Pagination PaginationMeta           `json:"pagination"`
}

ListClusterImagesOutputBody defines model for ListClusterImagesOutputBody.

type ListClusterImagesParams

type ListClusterImagesParams struct {
	// K8sNamespace Filter to one Kubernetes namespace
	K8sNamespace *string `form:"k8s_namespace,omitempty" json:"k8s_namespace,omitempty"`

	// MatchState Filter by SBOM match state
	MatchState *ListClusterImagesParamsMatchState `form:"match_state,omitempty" json:"match_state,omitempty"`

	// Q Substring match over workload name, container name and image reference
	Q *string `form:"q,omitempty" json:"q,omitempty"`

	// Sort Column to sort by. vuln_count orders by severity, worst first, and sorts unassessed images last in either direction. Unset means image reference order.
	Sort *ListClusterImagesParamsSort `form:"sort,omitempty" json:"sort,omitempty"`

	// Dir Sort direction (default asc). Applies to sort only — with sort unset the default ordering ignores it.
	Dir *ListClusterImagesParamsDir `form:"dir,omitempty" json:"dir,omitempty"`

	// Limit Maximum number of results per page
	Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`

	// Offset Number of results to skip
	Offset *int32 `form:"offset,omitempty" json:"offset,omitempty"`
}

ListClusterImagesParams defines parameters for ListClusterImages.

type ListClusterImagesParamsDir

type ListClusterImagesParamsDir string

ListClusterImagesParamsDir defines parameters for ListClusterImages.

const (
	ListClusterImagesParamsDirAsc  ListClusterImagesParamsDir = "asc"
	ListClusterImagesParamsDirDesc ListClusterImagesParamsDir = "desc"
)

Defines values for ListClusterImagesParamsDir.

func (ListClusterImagesParamsDir) Valid

func (e ListClusterImagesParamsDir) Valid() bool

Valid indicates whether the value is a known member of the ListClusterImagesParamsDir enum.

type ListClusterImagesParamsMatchState

type ListClusterImagesParamsMatchState string

ListClusterImagesParamsMatchState defines parameters for ListClusterImages.

const (
	ListClusterImagesParamsMatchStateExact        ListClusterImagesParamsMatchState = "exact"
	ListClusterImagesParamsMatchStateIndex        ListClusterImagesParamsMatchState = "index"
	ListClusterImagesParamsMatchStateUnknown      ListClusterImagesParamsMatchState = "unknown"
	ListClusterImagesParamsMatchStateUnresolvable ListClusterImagesParamsMatchState = "unresolvable"
)

Defines values for ListClusterImagesParamsMatchState.

func (ListClusterImagesParamsMatchState) Valid

Valid indicates whether the value is a known member of the ListClusterImagesParamsMatchState enum.

type ListClusterImagesParamsSort

type ListClusterImagesParamsSort string

ListClusterImagesParamsSort defines parameters for ListClusterImages.

const (
	ListClusterImagesParamsSortImageRef      ListClusterImagesParamsSort = "image_ref"
	ListClusterImagesParamsSortLastSeenAt    ListClusterImagesParamsSort = "last_seen_at"
	ListClusterImagesParamsSortMatchState    ListClusterImagesParamsSort = "match_state"
	ListClusterImagesParamsSortPodCount      ListClusterImagesParamsSort = "pod_count"
	ListClusterImagesParamsSortVulnCount     ListClusterImagesParamsSort = "vuln_count"
	ListClusterImagesParamsSortWorkloadCount ListClusterImagesParamsSort = "workload_count"
)

Defines values for ListClusterImagesParamsSort.

func (ListClusterImagesParamsSort) Valid

Valid indicates whether the value is a known member of the ListClusterImagesParamsSort enum.

type ListClusterNamespacesOutputBody

type ListClusterNamespacesOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string                   `json:"$schema,omitempty"`
	Data   *[]NamespaceFacetResponse `json:"data"`
}

ListClusterNamespacesOutputBody defines model for ListClusterNamespacesOutputBody.

type ListClusterUnknownImagesOutputBody

type ListClusterUnknownImagesOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string                 `json:"$schema,omitempty"`
	Data   *[]UnknownImageResponse `json:"data"`

	// Hosts The entire gap grouped by registry scope, biggest first; independent of the page returned
	Hosts      *[]UnknownHostResponse   `json:"hosts"`
	Pagination PaginationMeta           `json:"pagination"`
	Reasons    UnknownImageReasonCounts `json:"reasons"`
}

ListClusterUnknownImagesOutputBody defines model for ListClusterUnknownImagesOutputBody.

type ListClusterUnknownImagesParams

type ListClusterUnknownImagesParams struct {
	// Limit Maximum number of results per page
	Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`

	// Offset Number of results to skip
	Offset *int32 `form:"offset,omitempty" json:"offset,omitempty"`
}

ListClusterUnknownImagesParams defines parameters for ListClusterUnknownImages.

type ListClusterVulnsOutputBody

type ListClusterVulnsOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema     *string                  `json:"$schema,omitempty"`
	Coverage   WorkloadCoverageResponse `json:"coverage"`
	Data       *[]RunningVulnResponse   `json:"data"`
	Pagination PaginationMeta           `json:"pagination"`
}

ListClusterVulnsOutputBody defines model for ListClusterVulnsOutputBody.

type ListClusterVulnsParams

type ListClusterVulnsParams struct {
	// Severity Filter by severity
	Severity *ListClusterVulnsParamsSeverity `form:"severity,omitempty" json:"severity,omitempty"`

	// Sort Column to sort by. Unset means worst first: severity, then CVSS.
	Sort *ListClusterVulnsParamsSort `form:"sort,omitempty" json:"sort,omitempty"`

	// Dir Sort direction (default asc). Applies to sort only — with sort unset the worst-first default ordering ignores it.
	Dir *ListClusterVulnsParamsDir `form:"dir,omitempty" json:"dir,omitempty"`

	// Limit Maximum number of results per page
	Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`

	// Offset Number of results to skip
	Offset *int32 `form:"offset,omitempty" json:"offset,omitempty"`
}

ListClusterVulnsParams defines parameters for ListClusterVulns.

type ListClusterVulnsParamsDir

type ListClusterVulnsParamsDir string

ListClusterVulnsParamsDir defines parameters for ListClusterVulns.

const (
	ListClusterVulnsParamsDirAsc  ListClusterVulnsParamsDir = "asc"
	ListClusterVulnsParamsDirDesc ListClusterVulnsParamsDir = "desc"
)

Defines values for ListClusterVulnsParamsDir.

func (ListClusterVulnsParamsDir) Valid

func (e ListClusterVulnsParamsDir) Valid() bool

Valid indicates whether the value is a known member of the ListClusterVulnsParamsDir enum.

type ListClusterVulnsParamsSeverity

type ListClusterVulnsParamsSeverity string

ListClusterVulnsParamsSeverity defines parameters for ListClusterVulns.

const (
	ListClusterVulnsParamsSeverityCRITICAL ListClusterVulnsParamsSeverity = "CRITICAL"
	ListClusterVulnsParamsSeverityHIGH     ListClusterVulnsParamsSeverity = "HIGH"
	ListClusterVulnsParamsSeverityLOW      ListClusterVulnsParamsSeverity = "LOW"
	ListClusterVulnsParamsSeverityMEDIUM   ListClusterVulnsParamsSeverity = "MEDIUM"
)

Defines values for ListClusterVulnsParamsSeverity.

func (ListClusterVulnsParamsSeverity) Valid

Valid indicates whether the value is a known member of the ListClusterVulnsParamsSeverity enum.

type ListClusterVulnsParamsSort

type ListClusterVulnsParamsSort string

ListClusterVulnsParamsSort defines parameters for ListClusterVulns.

const (
	ListClusterVulnsParamsSortCanonicalId   ListClusterVulnsParamsSort = "canonical_id"
	ListClusterVulnsParamsSortCvssScore     ListClusterVulnsParamsSort = "cvss_score"
	ListClusterVulnsParamsSortSeverity      ListClusterVulnsParamsSort = "severity"
	ListClusterVulnsParamsSortWorkloadCount ListClusterVulnsParamsSort = "workload_count"
)

Defines values for ListClusterVulnsParamsSort.

func (ListClusterVulnsParamsSort) Valid

func (e ListClusterVulnsParamsSort) Valid() bool

Valid indicates whether the value is a known member of the ListClusterVulnsParamsSort enum.

type ListClusterWorkloadsOutputBody

type ListClusterWorkloadsOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema     *string                    `json:"$schema,omitempty"`
	Coverage   WorkloadCoverageResponse   `json:"coverage"`
	Data       *[]ClusterWorkloadResponse `json:"data"`
	Pagination PaginationMeta             `json:"pagination"`
}

ListClusterWorkloadsOutputBody defines model for ListClusterWorkloadsOutputBody.

type ListClusterWorkloadsParams

type ListClusterWorkloadsParams struct {
	// K8sNamespace Filter to one Kubernetes namespace
	K8sNamespace *string `form:"k8s_namespace,omitempty" json:"k8s_namespace,omitempty"`

	// MatchState Filter by SBOM match state
	MatchState *ListClusterWorkloadsParamsMatchState `form:"match_state,omitempty" json:"match_state,omitempty"`

	// Q Substring match over workload name, container name and image reference
	Q *string `form:"q,omitempty" json:"q,omitempty"`

	// Sort Column to sort by. vuln_count orders by severity, worst first, and sorts unmatched workloads last in either direction. Unset means namespace, then workload, then container.
	Sort *ListClusterWorkloadsParamsSort `form:"sort,omitempty" json:"sort,omitempty"`

	// Dir Sort direction (default asc). Applies to sort only — with sort unset the default ordering ignores it.
	Dir *ListClusterWorkloadsParamsDir `form:"dir,omitempty" json:"dir,omitempty"`

	// Limit Maximum number of results per page
	Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`

	// Offset Number of results to skip
	Offset *int32 `form:"offset,omitempty" json:"offset,omitempty"`
}

ListClusterWorkloadsParams defines parameters for ListClusterWorkloads.

type ListClusterWorkloadsParamsDir

type ListClusterWorkloadsParamsDir string

ListClusterWorkloadsParamsDir defines parameters for ListClusterWorkloads.

const (
	ListClusterWorkloadsParamsDirAsc  ListClusterWorkloadsParamsDir = "asc"
	ListClusterWorkloadsParamsDirDesc ListClusterWorkloadsParamsDir = "desc"
)

Defines values for ListClusterWorkloadsParamsDir.

func (ListClusterWorkloadsParamsDir) Valid

Valid indicates whether the value is a known member of the ListClusterWorkloadsParamsDir enum.

type ListClusterWorkloadsParamsMatchState

type ListClusterWorkloadsParamsMatchState string

ListClusterWorkloadsParamsMatchState defines parameters for ListClusterWorkloads.

const (
	ListClusterWorkloadsParamsMatchStateExact        ListClusterWorkloadsParamsMatchState = "exact"
	ListClusterWorkloadsParamsMatchStateIndex        ListClusterWorkloadsParamsMatchState = "index"
	ListClusterWorkloadsParamsMatchStateUnknown      ListClusterWorkloadsParamsMatchState = "unknown"
	ListClusterWorkloadsParamsMatchStateUnresolvable ListClusterWorkloadsParamsMatchState = "unresolvable"
)

Defines values for ListClusterWorkloadsParamsMatchState.

func (ListClusterWorkloadsParamsMatchState) Valid

Valid indicates whether the value is a known member of the ListClusterWorkloadsParamsMatchState enum.

type ListClusterWorkloadsParamsSort

type ListClusterWorkloadsParamsSort string

ListClusterWorkloadsParamsSort defines parameters for ListClusterWorkloads.

const (
	ListClusterWorkloadsParamsSortContainerName ListClusterWorkloadsParamsSort = "container_name"
	ListClusterWorkloadsParamsSortImageRef      ListClusterWorkloadsParamsSort = "image_ref"
	ListClusterWorkloadsParamsSortK8sNamespace  ListClusterWorkloadsParamsSort = "k8s_namespace"
	ListClusterWorkloadsParamsSortLastSeenAt    ListClusterWorkloadsParamsSort = "last_seen_at"
	ListClusterWorkloadsParamsSortMatchState    ListClusterWorkloadsParamsSort = "match_state"
	ListClusterWorkloadsParamsSortPodCount      ListClusterWorkloadsParamsSort = "pod_count"
	ListClusterWorkloadsParamsSortVulnCount     ListClusterWorkloadsParamsSort = "vuln_count"
	ListClusterWorkloadsParamsSortWorkloadName  ListClusterWorkloadsParamsSort = "workload_name"
)

Defines values for ListClusterWorkloadsParamsSort.

func (ListClusterWorkloadsParamsSort) Valid

Valid indicates whether the value is a known member of the ListClusterWorkloadsParamsSort enum.

type ListClustersOutputBody

type ListClustersOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string            `json:"$schema,omitempty"`
	Data   *[]ClusterResponse `json:"data"`
}

ListClustersOutputBody defines model for ListClustersOutputBody.

type ListClustersParams

type ListClustersParams struct {
	// NamespaceId Limit to clusters in one namespace
	NamespaceId *string `form:"namespace_id,omitempty" json:"namespace_id,omitempty"`
}

ListClustersParams defines parameters for ListClusters.

type ListComponentPurlTypesOutputBody

type ListComponentPurlTypesOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string   `json:"$schema,omitempty"`
	Types  *[]string `json:"types"`
}

ListComponentPurlTypesOutputBody defines model for ListComponentPurlTypesOutputBody.

type ListComponentsByLicenseOutputBody

type ListComponentsByLicenseOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema     *string             `json:"$schema,omitempty"`
	Data       *[]ComponentSummary `json:"data"`
	Pagination PaginationMeta      `json:"pagination"`
}

ListComponentsByLicenseOutputBody defines model for ListComponentsByLicenseOutputBody.

type ListComponentsByLicenseParams

type ListComponentsByLicenseParams struct {
	// Limit Maximum number of results per page
	Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`

	// Offset Number of results to skip
	Offset *int32 `form:"offset,omitempty" json:"offset,omitempty"`
}

ListComponentsByLicenseParams defines parameters for ListComponentsByLicense.

type ListEnrichmentJobsOutputBody

type ListEnrichmentJobsOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema     *string                  `json:"$schema,omitempty"`
	Data       *[]EnrichmentJobResponse `json:"data"`
	Pagination PaginationMeta           `json:"pagination"`
}

ListEnrichmentJobsOutputBody defines model for ListEnrichmentJobsOutputBody.

type ListEnrichmentJobsParams

type ListEnrichmentJobsParams struct {
	// Limit Maximum number of results per page
	Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`

	// Offset Number of results to skip
	Offset *int32 `form:"offset,omitempty" json:"offset,omitempty"`

	// State Filter by job state
	State *ListEnrichmentJobsParamsState `form:"state,omitempty" json:"state,omitempty"`

	// EnricherName Filter by enricher
	EnricherName *ListEnrichmentJobsParamsEnricherName `form:"enricher_name,omitempty" json:"enricher_name,omitempty"`
}

ListEnrichmentJobsParams defines parameters for ListEnrichmentJobs.

type ListEnrichmentJobsParamsEnricherName

type ListEnrichmentJobsParamsEnricherName string

ListEnrichmentJobsParamsEnricherName defines parameters for ListEnrichmentJobs.

const (
	ListEnrichmentJobsParamsEnricherNameOciMetadata ListEnrichmentJobsParamsEnricherName = "oci-metadata"
	ListEnrichmentJobsParamsEnricherNameProvenance  ListEnrichmentJobsParamsEnricherName = "provenance"
	ListEnrichmentJobsParamsEnricherNameUser        ListEnrichmentJobsParamsEnricherName = "user"
)

Defines values for ListEnrichmentJobsParamsEnricherName.

func (ListEnrichmentJobsParamsEnricherName) Valid

Valid indicates whether the value is a known member of the ListEnrichmentJobsParamsEnricherName enum.

type ListEnrichmentJobsParamsState

type ListEnrichmentJobsParamsState string

ListEnrichmentJobsParamsState defines parameters for ListEnrichmentJobs.

const (
	ListEnrichmentJobsParamsStateFailed    ListEnrichmentJobsParamsState = "failed"
	ListEnrichmentJobsParamsStateQueued    ListEnrichmentJobsParamsState = "queued"
	ListEnrichmentJobsParamsStateRunning   ListEnrichmentJobsParamsState = "running"
	ListEnrichmentJobsParamsStateSucceeded ListEnrichmentJobsParamsState = "succeeded"
)

Defines values for ListEnrichmentJobsParamsState.

func (ListEnrichmentJobsParamsState) Valid

Valid indicates whether the value is a known member of the ListEnrichmentJobsParamsState enum.

type ListIdentitiesOutputBody

type ListIdentitiesOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema     *string             `json:"$schema,omitempty"`
	Identities *[]IdentityResponse `json:"identities"`
}

ListIdentitiesOutputBody defines model for ListIdentitiesOutputBody.

type ListLicensesOutputBody

type ListLicensesOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema     *string         `json:"$schema,omitempty"`
	Data       *[]LicenseCount `json:"data"`
	Pagination PaginationMeta  `json:"pagination"`
}

ListLicensesOutputBody defines model for ListLicensesOutputBody.

type ListLicensesParams

type ListLicensesParams struct {
	// Limit Maximum number of results per page
	Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`

	// Offset Number of results to skip
	Offset *int32 `form:"offset,omitempty" json:"offset,omitempty"`

	// SpdxId Filter by SPDX identifier
	SpdxId *string `form:"spdx_id,omitempty" json:"spdx_id,omitempty"`

	// Name Filter by license name
	Name *string `form:"name,omitempty" json:"name,omitempty"`

	// Category Filter by license category
	Category *string `form:"category,omitempty" json:"category,omitempty"`
}

ListLicensesParams defines parameters for ListLicenses.

type ListMyActivityOutputBody

type ListMyActivityOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema     *string          `json:"$schema,omitempty"`
	Data       *[]ActivityEntry `json:"data"`
	Pagination CursorMeta       `json:"pagination"`
}

ListMyActivityOutputBody defines model for ListMyActivityOutputBody.

type ListMyActivityParams

type ListMyActivityParams struct {
	// Limit Maximum number of results per page
	Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`

	// Cursor Opaque cursor from a previous response's nextCursor; omit for the first page
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`
}

ListMyActivityParams defines parameters for ListMyActivity.

type ListMyArtifactsParams

type ListMyArtifactsParams struct {
	// Limit Maximum number of results per page
	Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`

	// Cursor Opaque cursor from a previous response's nextCursor; omit for the first page
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`

	// Type Filter by artifact type
	Type *string `form:"type,omitempty" json:"type,omitempty"`

	// Name Filter by artifact name
	Name *string `form:"name,omitempty" json:"name,omitempty"`

	// Sufficient Filter to artifacts with sufficiently enriched SBOMs; pass 'false' to include all (default: true)
	Sufficient *string `form:"sufficient,omitempty" json:"sufficient,omitempty"`

	// Sort Column to sort by. Empty orders by name. Changing it invalidates any cursor already held.
	Sort *ListMyArtifactsParamsSort `form:"sort,omitempty" json:"sort,omitempty"`

	// Dir Sort direction; defaults to desc (worst first) when sort is set.
	Dir *ListMyArtifactsParamsDir `form:"dir,omitempty" json:"dir,omitempty"`
}

ListMyArtifactsParams defines parameters for ListMyArtifacts.

type ListMyArtifactsParamsDir

type ListMyArtifactsParamsDir string

ListMyArtifactsParamsDir defines parameters for ListMyArtifacts.

const (
	ListMyArtifactsParamsDirAsc  ListMyArtifactsParamsDir = "asc"
	ListMyArtifactsParamsDirDesc ListMyArtifactsParamsDir = "desc"
)

Defines values for ListMyArtifactsParamsDir.

func (ListMyArtifactsParamsDir) Valid

func (e ListMyArtifactsParamsDir) Valid() bool

Valid indicates whether the value is a known member of the ListMyArtifactsParamsDir enum.

type ListMyArtifactsParamsSort

type ListMyArtifactsParamsSort string

ListMyArtifactsParamsSort defines parameters for ListMyArtifacts.

const (
	ListMyArtifactsParamsSortSeverity ListMyArtifactsParamsSort = "severity"
)

Defines values for ListMyArtifactsParamsSort.

func (ListMyArtifactsParamsSort) Valid

func (e ListMyArtifactsParamsSort) Valid() bool

Valid indicates whether the value is a known member of the ListMyArtifactsParamsSort enum.

type ListMyDriftFeedParams

type ListMyDriftFeedParams struct {
	// Limit Maximum number of results per page
	Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`

	// Cursor Opaque cursor from a previous response's nextCursor; omit for the first page
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`
}

ListMyDriftFeedParams defines parameters for ListMyDriftFeed.

type ListMyRegistriesParams

type ListMyRegistriesParams struct {
	// Limit Maximum number of results per page
	Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`

	// Offset Number of results to skip
	Offset *int32 `form:"offset,omitempty" json:"offset,omitempty"`
}

ListMyRegistriesParams defines parameters for ListMyRegistries.

type ListMyVulnerabilitiesParams

type ListMyVulnerabilitiesParams struct {
	// Limit Maximum number of results per page
	Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`

	// Offset Number of results to skip
	Offset *int32 `form:"offset,omitempty" json:"offset,omitempty"`

	// Q Filter by vulnerability id (CVE/GHSA/OSV), substring match against the canonical id and its aliases
	Q *string `form:"q,omitempty" json:"q,omitempty"`

	// Severity Filter by severity
	Severity *ListMyVulnerabilitiesParamsSeverity `form:"severity,omitempty" json:"severity,omitempty"`

	// Sort Sort field
	Sort *ListMyVulnerabilitiesParamsSort `form:"sort,omitempty" json:"sort,omitempty"`

	// SortDir Sort direction (asc or desc)
	SortDir *ListMyVulnerabilitiesParamsSortDir `form:"sort_dir,omitempty" json:"sort_dir,omitempty"`
}

ListMyVulnerabilitiesParams defines parameters for ListMyVulnerabilities.

type ListMyVulnerabilitiesParamsSeverity

type ListMyVulnerabilitiesParamsSeverity string

ListMyVulnerabilitiesParamsSeverity defines parameters for ListMyVulnerabilities.

const (
	ListMyVulnerabilitiesParamsSeverityCRITICAL ListMyVulnerabilitiesParamsSeverity = "CRITICAL"
	ListMyVulnerabilitiesParamsSeverityHIGH     ListMyVulnerabilitiesParamsSeverity = "HIGH"
	ListMyVulnerabilitiesParamsSeverityLOW      ListMyVulnerabilitiesParamsSeverity = "LOW"
	ListMyVulnerabilitiesParamsSeverityMEDIUM   ListMyVulnerabilitiesParamsSeverity = "MEDIUM"
)

Defines values for ListMyVulnerabilitiesParamsSeverity.

func (ListMyVulnerabilitiesParamsSeverity) Valid

Valid indicates whether the value is a known member of the ListMyVulnerabilitiesParamsSeverity enum.

type ListMyVulnerabilitiesParamsSort

type ListMyVulnerabilitiesParamsSort string

ListMyVulnerabilitiesParamsSort defines parameters for ListMyVulnerabilities.

const (
	ListMyVulnerabilitiesParamsSortAffectedPurlCount ListMyVulnerabilitiesParamsSort = "affected_purl_count"
	ListMyVulnerabilitiesParamsSortAffectedSbomCount ListMyVulnerabilitiesParamsSort = "affected_sbom_count"
	ListMyVulnerabilitiesParamsSortCanonicalId       ListMyVulnerabilitiesParamsSort = "canonical_id"
	ListMyVulnerabilitiesParamsSortCvssScore         ListMyVulnerabilitiesParamsSort = "cvss_score"
	ListMyVulnerabilitiesParamsSortPublishedAt       ListMyVulnerabilitiesParamsSort = "published_at"
	ListMyVulnerabilitiesParamsSortSeverity          ListMyVulnerabilitiesParamsSort = "severity"
)

Defines values for ListMyVulnerabilitiesParamsSort.

func (ListMyVulnerabilitiesParamsSort) Valid

Valid indicates whether the value is a known member of the ListMyVulnerabilitiesParamsSort enum.

type ListMyVulnerabilitiesParamsSortDir

type ListMyVulnerabilitiesParamsSortDir string

ListMyVulnerabilitiesParamsSortDir defines parameters for ListMyVulnerabilities.

const (
	ListMyVulnerabilitiesParamsSortDirAsc  ListMyVulnerabilitiesParamsSortDir = "asc"
	ListMyVulnerabilitiesParamsSortDirDesc ListMyVulnerabilitiesParamsSortDir = "desc"
)

Defines values for ListMyVulnerabilitiesParamsSortDir.

func (ListMyVulnerabilitiesParamsSortDir) Valid

Valid indicates whether the value is a known member of the ListMyVulnerabilitiesParamsSortDir enum.

type ListMyWatchFeedOutputBody

type ListMyWatchFeedOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema     *string       `json:"$schema,omitempty"`
	Data       *[]WatchEvent `json:"data"`
	Pagination CursorMeta    `json:"pagination"`
}

ListMyWatchFeedOutputBody defines model for ListMyWatchFeedOutputBody.

type ListMyWatchFeedParams

type ListMyWatchFeedParams struct {
	// Limit Maximum number of results per page
	Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`

	// Cursor Opaque cursor from a previous response's nextCursor; omit for the first page
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`
}

ListMyWatchFeedParams defines parameters for ListMyWatchFeed.

type ListMyWatchesOutputBody

type ListMyWatchesOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema     *string       `json:"$schema,omitempty"`
	Data       *[]WatchEntry `json:"data"`
	Pagination CursorMeta    `json:"pagination"`
}

ListMyWatchesOutputBody defines model for ListMyWatchesOutputBody.

type ListMyWatchesParams

type ListMyWatchesParams struct {
	// Limit Maximum number of results per page
	Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`

	// Cursor Opaque cursor from a previous response's nextCursor; omit for the first page
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`
}

ListMyWatchesParams defines parameters for ListMyWatches.

type ListNamespaceMembersOutputBody

type ListNamespaceMembersOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string                    `json:"$schema,omitempty"`
	Data   *[]NamespaceMemberResponse `json:"data"`
}

ListNamespaceMembersOutputBody defines model for ListNamespaceMembersOutputBody.

type ListNamespacesOutputBody

type ListNamespacesOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string              `json:"$schema,omitempty"`
	Data   *[]NamespaceResponse `json:"data"`
}

ListNamespacesOutputBody defines model for ListNamespacesOutputBody.

type ListProvidersOutputBody

type ListProvidersOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema    *string             `json:"$schema,omitempty"`
	Providers *[]ProviderResponse `json:"providers"`
}

ListProvidersOutputBody defines model for ListProvidersOutputBody.

type ListRecentDriftOutputBody

type ListRecentDriftOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema     *string             `json:"$schema,omitempty"`
	Data       *[]RecentDriftEntry `json:"data"`
	Pagination CursorMeta          `json:"pagination"`
}

ListRecentDriftOutputBody defines model for ListRecentDriftOutputBody.

type ListRecentDriftParams

type ListRecentDriftParams struct {
	// Limit Maximum number of results per page
	Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`

	// Cursor Opaque cursor from a previous response's nextCursor; omit for the first page
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`
}

ListRecentDriftParams defines parameters for ListRecentDrift.

type ListRegistriesOutputBody

type ListRegistriesOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema     *string             `json:"$schema,omitempty"`
	Data       *[]RegistryResponse `json:"data"`
	Pagination PaginationMeta      `json:"pagination"`
}

ListRegistriesOutputBody defines model for ListRegistriesOutputBody.

type ListRegistriesParams

type ListRegistriesParams struct {
	// Limit Maximum number of results per page
	Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`

	// Offset Number of results to skip
	Offset *int32 `form:"offset,omitempty" json:"offset,omitempty"`
}

ListRegistriesParams defines parameters for ListRegistries.

type ListSBOMComponentsOutputBody

type ListSBOMComponentsOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema     *string             `json:"$schema,omitempty"`
	Components *[]ComponentSummary `json:"components"`
	Pagination CursorMeta          `json:"pagination"`
}

ListSBOMComponentsOutputBody defines model for ListSBOMComponentsOutputBody.

type ListSBOMDriftHistoryOutputBody

type ListSBOMDriftHistoryOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema     *string                   `json:"$schema,omitempty"`
	Data       *[]ProvenanceDriftSummary `json:"data"`
	Pagination CursorMeta                `json:"pagination"`
}

ListSBOMDriftHistoryOutputBody defines model for ListSBOMDriftHistoryOutputBody.

type ListSBOMVulnsOutputBody

type ListSBOMVulnsOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema     *string          `json:"$schema,omitempty"`
	Data       *[]SBOMVulnEntry `json:"data"`
	Pagination PaginationMeta   `json:"pagination"`
}

ListSBOMVulnsOutputBody defines model for ListSBOMVulnsOutputBody.

type ListSBOMsOutputBody

type ListSBOMsOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema     *string        `json:"$schema,omitempty"`
	Data       *[]SBOMSummary `json:"data"`
	Pagination CursorMeta     `json:"pagination"`
}

ListSBOMsOutputBody defines model for ListSBOMsOutputBody.

type ListSbomComponentsParams

type ListSbomComponentsParams struct {
	// Limit Maximum number of results per page
	Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`

	// Cursor Opaque cursor from a previous response's nextCursor; omit for the first page
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`

	// Sort Column to sort by. Empty orders by name. Changing it invalidates any cursor already held.
	Sort *ListSbomComponentsParamsSort `form:"sort,omitempty" json:"sort,omitempty"`

	// Dir Sort direction; defaults to desc (worst first) when sort is set.
	Dir *ListSbomComponentsParamsDir `form:"dir,omitempty" json:"dir,omitempty"`
}

ListSbomComponentsParams defines parameters for ListSbomComponents.

type ListSbomComponentsParamsDir

type ListSbomComponentsParamsDir string

ListSbomComponentsParamsDir defines parameters for ListSbomComponents.

const (
	ListSbomComponentsParamsDirAsc  ListSbomComponentsParamsDir = "asc"
	ListSbomComponentsParamsDirDesc ListSbomComponentsParamsDir = "desc"
)

Defines values for ListSbomComponentsParamsDir.

func (ListSbomComponentsParamsDir) Valid

Valid indicates whether the value is a known member of the ListSbomComponentsParamsDir enum.

type ListSbomComponentsParamsSort

type ListSbomComponentsParamsSort string

ListSbomComponentsParamsSort defines parameters for ListSbomComponents.

const (
	ListSbomComponentsParamsSortSeverity ListSbomComponentsParamsSort = "severity"
)

Defines values for ListSbomComponentsParamsSort.

func (ListSbomComponentsParamsSort) Valid

Valid indicates whether the value is a known member of the ListSbomComponentsParamsSort enum.

type ListSbomDriftHistoryParams

type ListSbomDriftHistoryParams struct {
	// Limit Maximum number of results per page
	Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`

	// Cursor Opaque cursor from a previous response's nextCursor; omit for the first page
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`
}

ListSbomDriftHistoryParams defines parameters for ListSbomDriftHistory.

type ListSbomVulnsParams

type ListSbomVulnsParams struct {
	// Severity Filter by severity
	Severity *ListSbomVulnsParamsSeverity `form:"severity,omitempty" json:"severity,omitempty"`

	// Sort Column to sort by. Unset means worst first: severity, then CVSS.
	Sort *ListSbomVulnsParamsSort `form:"sort,omitempty" json:"sort,omitempty"`

	// Dir Sort direction (default asc). Applies to sort only — with sort unset the worst-first default ordering ignores it.
	Dir *ListSbomVulnsParamsDir `form:"dir,omitempty" json:"dir,omitempty"`

	// Limit Maximum number of results per page
	Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`

	// Offset Number of results to skip
	Offset *int32 `form:"offset,omitempty" json:"offset,omitempty"`
}

ListSbomVulnsParams defines parameters for ListSbomVulns.

type ListSbomVulnsParamsDir

type ListSbomVulnsParamsDir string

ListSbomVulnsParamsDir defines parameters for ListSbomVulns.

const (
	ListSbomVulnsParamsDirAsc  ListSbomVulnsParamsDir = "asc"
	ListSbomVulnsParamsDirDesc ListSbomVulnsParamsDir = "desc"
)

Defines values for ListSbomVulnsParamsDir.

func (ListSbomVulnsParamsDir) Valid

func (e ListSbomVulnsParamsDir) Valid() bool

Valid indicates whether the value is a known member of the ListSbomVulnsParamsDir enum.

type ListSbomVulnsParamsSeverity

type ListSbomVulnsParamsSeverity string

ListSbomVulnsParamsSeverity defines parameters for ListSbomVulns.

const (
	ListSbomVulnsParamsSeverityCRITICAL ListSbomVulnsParamsSeverity = "CRITICAL"
	ListSbomVulnsParamsSeverityHIGH     ListSbomVulnsParamsSeverity = "HIGH"
	ListSbomVulnsParamsSeverityLOW      ListSbomVulnsParamsSeverity = "LOW"
	ListSbomVulnsParamsSeverityMEDIUM   ListSbomVulnsParamsSeverity = "MEDIUM"
	ListSbomVulnsParamsSeverityUNKNOWN  ListSbomVulnsParamsSeverity = "UNKNOWN"
)

Defines values for ListSbomVulnsParamsSeverity.

func (ListSbomVulnsParamsSeverity) Valid

Valid indicates whether the value is a known member of the ListSbomVulnsParamsSeverity enum.

type ListSbomVulnsParamsSort

type ListSbomVulnsParamsSort string

ListSbomVulnsParamsSort defines parameters for ListSbomVulns.

const (
	ListSbomVulnsParamsSortAffectedPackageCount ListSbomVulnsParamsSort = "affected_package_count"
	ListSbomVulnsParamsSortCanonicalId          ListSbomVulnsParamsSort = "canonical_id"
	ListSbomVulnsParamsSortCvssScore            ListSbomVulnsParamsSort = "cvss_score"
	ListSbomVulnsParamsSortSeverity             ListSbomVulnsParamsSort = "severity"
)

Defines values for ListSbomVulnsParamsSort.

func (ListSbomVulnsParamsSort) Valid

func (e ListSbomVulnsParamsSort) Valid() bool

Valid indicates whether the value is a known member of the ListSbomVulnsParamsSort enum.

type ListSbomsParams

type ListSbomsParams struct {
	// Limit Maximum number of results per page
	Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`

	// Cursor Opaque cursor from a previous response's nextCursor; omit for the first page
	Cursor *string `form:"cursor,omitempty" json:"cursor,omitempty"`

	// SerialNumber Filter by serial number
	SerialNumber *string `form:"serial_number,omitempty" json:"serial_number,omitempty"`

	// Digest Filter by image digest
	Digest *string `form:"digest,omitempty" json:"digest,omitempty"`
}

ListSbomsParams defines parameters for ListSboms.

type ListScanJobsOutputBody

type ListScanJobsOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema     *string            `json:"$schema,omitempty"`
	Data       *[]ScanJobResponse `json:"data"`
	Pagination PaginationMeta     `json:"pagination"`
}

ListScanJobsOutputBody defines model for ListScanJobsOutputBody.

type ListScanJobsParams

type ListScanJobsParams struct {
	// Limit Maximum number of results per page
	Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`

	// Offset Number of results to skip
	Offset *int32 `form:"offset,omitempty" json:"offset,omitempty"`

	// State Filter by job state
	State *ListScanJobsParamsState `form:"state,omitempty" json:"state,omitempty"`
}

ListScanJobsParams defines parameters for ListScanJobs.

type ListScanJobsParamsState

type ListScanJobsParamsState string

ListScanJobsParamsState defines parameters for ListScanJobs.

const (
	ListScanJobsParamsStateFailed    ListScanJobsParamsState = "failed"
	ListScanJobsParamsStatePruned    ListScanJobsParamsState = "pruned"
	ListScanJobsParamsStateQueued    ListScanJobsParamsState = "queued"
	ListScanJobsParamsStateRunning   ListScanJobsParamsState = "running"
	ListScanJobsParamsStateSucceeded ListScanJobsParamsState = "succeeded"
)

Defines values for ListScanJobsParamsState.

func (ListScanJobsParamsState) Valid

func (e ListScanJobsParamsState) Valid() bool

Valid indicates whether the value is a known member of the ListScanJobsParamsState enum.

type ListSourcesOutputBody

type ListSourcesOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string           `json:"$schema,omitempty"`
	Data   *[]SourceResponse `json:"data"`
}

ListSourcesOutputBody defines model for ListSourcesOutputBody.

type ListSourcesParams

type ListSourcesParams struct {
	// NamespaceId Limit to sources in this namespace
	NamespaceId *string `form:"namespace_id,omitempty" json:"namespace_id,omitempty"`
}

ListSourcesParams defines parameters for ListSources.

type ListTopVulnerabilitiesOutputBody

type ListTopVulnerabilitiesOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema     *string         `json:"$schema,omitempty"`
	Data       *[]TopVulnEntry `json:"data"`
	Pagination PaginationMeta  `json:"pagination"`
}

ListTopVulnerabilitiesOutputBody defines model for ListTopVulnerabilitiesOutputBody.

type ListTopVulnerabilitiesParams

type ListTopVulnerabilitiesParams struct {
	// Limit Maximum number of results per page
	Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`

	// Offset Number of results to skip
	Offset *int32 `form:"offset,omitempty" json:"offset,omitempty"`

	// Q Filter by vulnerability id (CVE/GHSA/OSV), substring match against the canonical id and its aliases
	Q *string `form:"q,omitempty" json:"q,omitempty"`

	// Severity Filter by severity
	Severity *ListTopVulnerabilitiesParamsSeverity `form:"severity,omitempty" json:"severity,omitempty"`

	// Sort Sort field
	Sort *ListTopVulnerabilitiesParamsSort `form:"sort,omitempty" json:"sort,omitempty"`

	// SortDir Sort direction (asc or desc)
	SortDir *ListTopVulnerabilitiesParamsSortDir `form:"sort_dir,omitempty" json:"sort_dir,omitempty"`
}

ListTopVulnerabilitiesParams defines parameters for ListTopVulnerabilities.

type ListTopVulnerabilitiesParamsSeverity

type ListTopVulnerabilitiesParamsSeverity string

ListTopVulnerabilitiesParamsSeverity defines parameters for ListTopVulnerabilities.

const (
	ListTopVulnerabilitiesParamsSeverityCRITICAL ListTopVulnerabilitiesParamsSeverity = "CRITICAL"
	ListTopVulnerabilitiesParamsSeverityHIGH     ListTopVulnerabilitiesParamsSeverity = "HIGH"
	ListTopVulnerabilitiesParamsSeverityLOW      ListTopVulnerabilitiesParamsSeverity = "LOW"
	ListTopVulnerabilitiesParamsSeverityMEDIUM   ListTopVulnerabilitiesParamsSeverity = "MEDIUM"
)

Defines values for ListTopVulnerabilitiesParamsSeverity.

func (ListTopVulnerabilitiesParamsSeverity) Valid

Valid indicates whether the value is a known member of the ListTopVulnerabilitiesParamsSeverity enum.

type ListTopVulnerabilitiesParamsSort

type ListTopVulnerabilitiesParamsSort string

ListTopVulnerabilitiesParamsSort defines parameters for ListTopVulnerabilities.

const (
	ListTopVulnerabilitiesParamsSortAffectedPurlCount ListTopVulnerabilitiesParamsSort = "affected_purl_count"
	ListTopVulnerabilitiesParamsSortAffectedSbomCount ListTopVulnerabilitiesParamsSort = "affected_sbom_count"
	ListTopVulnerabilitiesParamsSortCanonicalId       ListTopVulnerabilitiesParamsSort = "canonical_id"
	ListTopVulnerabilitiesParamsSortCvssScore         ListTopVulnerabilitiesParamsSort = "cvss_score"
	ListTopVulnerabilitiesParamsSortPublishedAt       ListTopVulnerabilitiesParamsSort = "published_at"
	ListTopVulnerabilitiesParamsSortSeverity          ListTopVulnerabilitiesParamsSort = "severity"
)

Defines values for ListTopVulnerabilitiesParamsSort.

func (ListTopVulnerabilitiesParamsSort) Valid

Valid indicates whether the value is a known member of the ListTopVulnerabilitiesParamsSort enum.

type ListTopVulnerabilitiesParamsSortDir

type ListTopVulnerabilitiesParamsSortDir string

ListTopVulnerabilitiesParamsSortDir defines parameters for ListTopVulnerabilities.

const (
	ListTopVulnerabilitiesParamsSortDirAsc  ListTopVulnerabilitiesParamsSortDir = "asc"
	ListTopVulnerabilitiesParamsSortDirDesc ListTopVulnerabilitiesParamsSortDir = "desc"
)

Defines values for ListTopVulnerabilitiesParamsSortDir.

func (ListTopVulnerabilitiesParamsSortDir) Valid

Valid indicates whether the value is a known member of the ListTopVulnerabilitiesParamsSortDir enum.

type ListUsersOutputBody

type ListUsersOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string         `json:"$schema,omitempty"`
	Users  *[]UserResponse `json:"users"`
}

ListUsersOutputBody defines model for ListUsersOutputBody.

type ListVulnWorkloadsOutputBody

type ListVulnWorkloadsOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string                    `json:"$schema,omitempty"`
	Data   *[]RunningWorkloadResponse `json:"data"`
}

ListVulnWorkloadsOutputBody defines model for ListVulnWorkloadsOutputBody.

type ListVulnerabilityWorkloadsParams

type ListVulnerabilityWorkloadsParams struct {
	// ClusterId Limit to one cluster. Omitted, the answer spans every cluster the caller can see.
	ClusterId *string `form:"cluster_id,omitempty" json:"cluster_id,omitempty"`
	Limit     *int32  `form:"limit,omitempty" json:"limit,omitempty"`
}

ListVulnerabilityWorkloadsParams defines parameters for ListVulnerabilityWorkloads.

type LookupArtifactParams

type LookupArtifactParams struct {
	// Name Exact artifact name, e.g. ghcr.io/pfenerty/ocidex
	Name string `form:"name" json:"name"`

	// Type Optional artifact type qualifier; omit or leave empty to match any type
	Type *string `form:"type,omitempty" json:"type,omitempty"`

	// Group Optional artifact group qualifier; omit or leave empty to match any group
	Group *string `form:"group,omitempty" json:"group,omitempty"`
}

LookupArtifactParams defines parameters for LookupArtifact.

type LookupCandidate

type LookupCandidate struct {
	// Id Canonical UUID of the matching resource
	Id string `json:"id"`

	// Qualifiers Qualifier values that distinguish this candidate, keyed by resolver query parameter
	Qualifiers map[string]string `json:"qualifiers"`
}

LookupCandidate defines model for LookupCandidate.

type LookupConflictError

type LookupConflictError struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string `json:"$schema,omitempty"`

	// Candidates Matching resources; retry one rung further down the qualifier ladder to select one
	Candidates *[]LookupCandidate `json:"candidates"`

	// Detail Explanation of the ambiguity
	Detail string `json:"detail"`

	// Status HTTP status code
	Status int64 `json:"status"`

	// Title Short, human-readable summary
	Title string `json:"title"`
}

LookupConflictError defines model for LookupConflictError.

type LookupLicenseParams

type LookupLicenseParams struct {
	// SpdxId SPDX license identifier, e.g. Apache-2.0
	SpdxId string `form:"spdxId" json:"spdxId"`
}

LookupLicenseParams defines parameters for LookupLicense.

type LookupSbomParams

type LookupSbomParams struct {
	// Artifact Exact artifact name, e.g. ghcr.io/pfenerty/ocidex; required unless digest is given
	Artifact *string `form:"artifact,omitempty" json:"artifact,omitempty"`

	// Version Artifact version, e.g. 1.2.3; required unless digest is given
	Version *string `form:"version,omitempty" json:"version,omitempty"`

	// Arch Optional architecture qualifier; omit or leave empty to match any architecture
	Arch *string `form:"arch,omitempty" json:"arch,omitempty"`

	// Flavor Optional image flavor qualifier (ADR-020); omit or leave empty to match any flavor
	Flavor *string `form:"flavor,omitempty" json:"flavor,omitempty"`

	// Digest SBOM digest. Unique by construction, so this form never returns 409; supply it instead of artifact and version
	Digest *string `form:"digest,omitempty" json:"digest,omitempty"`

	// Include Set to 'raw' to include the raw BOM JSON
	Include *string `form:"include,omitempty" json:"include,omitempty"`
}

LookupSbomParams defines parameters for LookupSbom.

type MeOutputBody

type MeOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string `json:"$schema,omitempty"`

	// DisplayName Name to show for this user; supplied by whichever issuer last signed them in
	DisplayName string `json:"display_name"`

	// Id User UUID
	Id string `json:"id"`

	// Memberships The caller's namespace memberships, for UI emphasis only
	Memberships *[]MyMembership `json:"memberships"`

	// Role User role: admin, member, or viewer
	Role string `json:"role"`
}

MeOutputBody defines model for MeOutputBody.

type MyMembership

type MyMembership struct {
	// NamespaceId Namespace UUID
	NamespaceId string `json:"namespace_id"`

	// Role The caller's role in that namespace
	Role MyMembershipRole `json:"role"`
}

MyMembership defines model for MyMembership.

type MyMembershipRole

type MyMembershipRole string

MyMembershipRole The caller's role in that namespace

const (
	MyMembershipRoleDeveloper  MyMembershipRole = "developer"
	MyMembershipRoleMaintainer MyMembershipRole = "maintainer"
	MyMembershipRoleOwner      MyMembershipRole = "owner"
	MyMembershipRoleSecurity   MyMembershipRole = "security"
	MyMembershipRoleViewer     MyMembershipRole = "viewer"
)

Defines values for MyMembershipRole.

func (MyMembershipRole) Valid

func (e MyMembershipRole) Valid() bool

Valid indicates whether the value is a known member of the MyMembershipRole enum.

type NATSStatus

type NATSStatus struct {
	Enabled bool   `json:"enabled"`
	Url     string `json:"url"`
}

NATSStatus defines model for NATSStatus.

type NamespaceFacetResponse

type NamespaceFacetResponse struct {
	K8sNamespace string `json:"k8s_namespace"`

	// WorkloadCount Containers reported in this namespace
	WorkloadCount int64 `json:"workload_count"`
}

NamespaceFacetResponse defines model for NamespaceFacetResponse.

type NamespaceMemberResponse

type NamespaceMemberResponse struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string `json:"$schema,omitempty"`

	// Capabilities Capabilities the role grants, for display
	Capabilities *[]string `json:"capabilities"`
	CreatedAt    string    `json:"created_at"`

	// Role The member's role in this namespace
	Role NamespaceMemberResponseRole `json:"role"`

	// UserId UUID of the member
	UserId string `json:"user_id"`

	// Username GitHub username of the member
	Username string `json:"username"`
}

NamespaceMemberResponse defines model for NamespaceMemberResponse.

type NamespaceMemberResponseRole

type NamespaceMemberResponseRole string

NamespaceMemberResponseRole The member's role in this namespace

const (
	NamespaceMemberResponseRoleDeveloper  NamespaceMemberResponseRole = "developer"
	NamespaceMemberResponseRoleMaintainer NamespaceMemberResponseRole = "maintainer"
	NamespaceMemberResponseRoleOwner      NamespaceMemberResponseRole = "owner"
	NamespaceMemberResponseRoleSecurity   NamespaceMemberResponseRole = "security"
	NamespaceMemberResponseRoleViewer     NamespaceMemberResponseRole = "viewer"
)

Defines values for NamespaceMemberResponseRole.

func (NamespaceMemberResponseRole) Valid

Valid indicates whether the value is a known member of the NamespaceMemberResponseRole enum.

type NamespaceResponse

type NamespaceResponse struct {
	// Schema A URL to the JSON Schema for this object.
	Schema    *string `json:"$schema,omitempty"`
	CreatedAt string  `json:"created_at"`
	Id        string  `json:"id"`
	Name      string  `json:"name"`

	// OwnerId UUID of the namespace owner
	OwnerId *string `json:"owner_id,omitempty"`

	// OwnerUsername GitHub username of the namespace owner
	OwnerUsername *string `json:"owner_username,omitempty"`
	UpdatedAt     string  `json:"updated_at"`

	// Visibility Namespace visibility: public or private
	Visibility NamespaceResponseVisibility `json:"visibility"`
}

NamespaceResponse defines model for NamespaceResponse.

type NamespaceResponseVisibility

type NamespaceResponseVisibility string

NamespaceResponseVisibility Namespace visibility: public or private

const (
	NamespaceResponseVisibilityPrivate NamespaceResponseVisibility = "private"
	NamespaceResponseVisibilityPublic  NamespaceResponseVisibility = "public"
)

Defines values for NamespaceResponseVisibility.

func (NamespaceResponseVisibility) Valid

Valid indicates whether the value is a known member of the NamespaceResponseVisibility enum.

type PackageSummaryEntry

type PackageSummaryEntry struct {
	Group        *string `json:"group,omitempty"`
	Name         string  `json:"name"`
	SbomCount    int64   `json:"sbom_count"`
	Type         string  `json:"type"`
	VersionCount int64   `json:"version_count"`
}

PackageSummaryEntry defines model for PackageSummaryEntry.

type Page

type Page[T any] struct {
	Data       []T
	Pagination PaginationMeta
}

Page is a paginated result from a list endpoint. PaginationMeta is the generated type from types.go.

func (Page[T]) HasMore

func (p Page[T]) HasMore() bool

HasMore reports whether there are more results after this page.

func (Page[T]) NextOffset

func (p Page[T]) NextOffset() int32

NextOffset returns the offset to pass for the next page.

type PageMeta

type PageMeta struct {
	Limit  int32 `json:"limit"`
	Offset int32 `json:"offset"`
	Total  int64 `json:"total"`
}

PageMeta defines model for PageMeta.

type PageOpts

type PageOpts struct {
	Limit  int32
	Offset int32
}

PageOpts controls pagination for list endpoints. Zero values use server defaults (limit=50, offset=0).

type PaginationMeta

type PaginationMeta struct {
	// Limit The limit that was applied
	Limit int32 `json:"limit"`

	// Offset The offset that was applied
	Offset int32 `json:"offset"`

	// Total Total number of matching results
	Total int64 `json:"total"`
}

PaginationMeta defines model for PaginationMeta.

type PreviewRegistryConfigInputBody

type PreviewRegistryConfigInputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string `json:"$schema,omitempty"`

	// AuthToken Token or PAT for registry authentication; omit for anonymous access
	AuthToken *string `json:"auth_token,omitempty"`

	// AuthUsername Username for registry authentication; omit for anonymous access
	AuthUsername *string `json:"auth_username,omitempty"`

	// IncludeUntagged Scan untagged manifests via registry-specific APIs (supported: zot, harbor, ghcr)
	IncludeUntagged *bool `json:"include_untagged,omitempty"`

	// Insecure Allow HTTP (non-TLS) connections
	Insecure bool `json:"insecure"`

	// MaxTagAgeDays Skip tags whose image is older than this many days; needs the created order
	MaxTagAgeDays *int64 `json:"max_tag_age_days,omitempty"`

	// Repositories Explicit repositories to walk; bypasses /v2/_catalog discovery when non-empty
	Repositories *[]string `json:"repositories,omitempty"`

	// RepositoryPatterns Glob patterns for repositories to ingest; empty = all
	RepositoryPatterns *[]string `json:"repository_patterns,omitempty"`

	// TagLimit Newest tags kept per repository; 0 = unlimited. Defaults to 50
	TagLimit *int64 `json:"tag_limit,omitempty"`

	// TagOrder How 'newest' is decided; defaults to auto
	TagOrder *PreviewRegistryConfigInputBodyTagOrder `json:"tag_order,omitempty"`

	// TagPatterns Glob patterns or 'semver' for tags to ingest; empty = all
	TagPatterns *[]string `json:"tag_patterns,omitempty"`

	// Type Registry type
	Type PreviewRegistryConfigInputBodyType `json:"type"`

	// Url Registry address (e.g. zot:5000)
	Url string `json:"url"`
}

PreviewRegistryConfigInputBody defines model for PreviewRegistryConfigInputBody.

type PreviewRegistryConfigInputBodyTagOrder

type PreviewRegistryConfigInputBodyTagOrder string

PreviewRegistryConfigInputBodyTagOrder How 'newest' is decided; defaults to auto

const (
	PreviewRegistryConfigInputBodyTagOrderAuto    PreviewRegistryConfigInputBodyTagOrder = "auto"
	PreviewRegistryConfigInputBodyTagOrderCreated PreviewRegistryConfigInputBodyTagOrder = "created"
	PreviewRegistryConfigInputBodyTagOrderLexical PreviewRegistryConfigInputBodyTagOrder = "lexical"
	PreviewRegistryConfigInputBodyTagOrderSemver  PreviewRegistryConfigInputBodyTagOrder = "semver"
)

Defines values for PreviewRegistryConfigInputBodyTagOrder.

func (PreviewRegistryConfigInputBodyTagOrder) Valid

Valid indicates whether the value is a known member of the PreviewRegistryConfigInputBodyTagOrder enum.

type PreviewRegistryConfigInputBodyType

type PreviewRegistryConfigInputBodyType string

PreviewRegistryConfigInputBodyType Registry type

const (
	PreviewRegistryConfigInputBodyTypeDocker  PreviewRegistryConfigInputBodyType = "docker"
	PreviewRegistryConfigInputBodyTypeGeneric PreviewRegistryConfigInputBodyType = "generic"
	PreviewRegistryConfigInputBodyTypeGhcr    PreviewRegistryConfigInputBodyType = "ghcr"
	PreviewRegistryConfigInputBodyTypeHarbor  PreviewRegistryConfigInputBodyType = "harbor"
	PreviewRegistryConfigInputBodyTypeZot     PreviewRegistryConfigInputBodyType = "zot"
)

Defines values for PreviewRegistryConfigInputBodyType.

func (PreviewRegistryConfigInputBodyType) Valid

Valid indicates whether the value is a known member of the PreviewRegistryConfigInputBodyType enum.

type PreviewRegistryConfigJSONRequestBody

type PreviewRegistryConfigJSONRequestBody = PreviewRegistryConfigInputBody

PreviewRegistryConfigJSONRequestBody defines body for PreviewRegistryConfig for application/json ContentType.

type ProvenanceDriftSummary

type ProvenanceDriftSummary struct {
	DetectedAt     time.Time `json:"detectedAt"`
	Id             *string   `json:"id,omitempty"`
	NewStatus      string    `json:"newStatus"`
	PreviousStatus string    `json:"previousStatus"`
	Reason         string    `json:"reason"`
}

ProvenanceDriftSummary defines model for ProvenanceDriftSummary.

type ProviderResponse

type ProviderResponse struct {
	// DisplayName Label for a sign-in button
	DisplayName string `json:"display_name"`

	// LoginPath Path on the API to begin a sign-in through this issuer
	LoginPath string `json:"login_path"`

	// Name Issuer key: 'github', or 'oidc:<name>'
	Name string `json:"name"`
}

ProviderResponse defines model for ProviderResponse.

type PutClusterInventoryJSONRequestBody

type PutClusterInventoryJSONRequestBody = PutInventoryInputBody

PutClusterInventoryJSONRequestBody defines body for PutClusterInventory for application/json ContentType.

type PutInventoryInputBody

type PutInventoryInputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string `json:"$schema,omitempty"`

	// Workloads The complete set of running container images. Omitted entries are pruned.
	Workloads *[]InventoryWorkload `json:"workloads"`
}

PutInventoryInputBody defines model for PutInventoryInputBody.

type PutInventoryOutputBody

type PutInventoryOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string `json:"$schema,omitempty"`

	// Accepted Workload rows in the snapshot
	Accepted int64 `json:"accepted"`

	// Pruned Rows deleted because the snapshot no longer reports them
	Pruned int64 `json:"pruned"`

	// SeenAt Timestamp recorded on the cluster
	SeenAt string `json:"seen_at"`
}

PutInventoryOutputBody defines model for PutInventoryOutputBody.

type ReadinessCheckOutputBody

type ReadinessCheckOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string `json:"$schema,omitempty"`

	// Reason Reason for unavailability
	Reason *string `json:"reason,omitempty"`

	// Status Readiness status
	Status string `json:"status"`
}

ReadinessCheckOutputBody defines model for ReadinessCheckOutputBody.

type RecentDriftEntry

type RecentDriftEntry struct {
	ArtifactId     *string   `json:"artifactId,omitempty"`
	ArtifactName   *string   `json:"artifactName,omitempty"`
	ArtifactType   *string   `json:"artifactType,omitempty"`
	DetectedAt     time.Time `json:"detectedAt"`
	Id             *string   `json:"id,omitempty"`
	NewStatus      string    `json:"newStatus"`
	PreviousStatus string    `json:"previousStatus"`
	Reason         string    `json:"reason"`
	RegistryId     *string   `json:"registryId,omitempty"`
	RegistryName   *string   `json:"registryName,omitempty"`
	SbomId         string    `json:"sbomId"`
}

RecentDriftEntry defines model for RecentDriftEntry.

type RegenerateWebhookSecretOutputBody

type RegenerateWebhookSecretOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string `json:"$schema,omitempty"`

	// WebhookSecret New webhook secret — shown once only. The previous secret is immediately invalidated.
	WebhookSecret string `json:"webhook_secret"`
}

RegenerateWebhookSecretOutputBody defines model for RegenerateWebhookSecretOutputBody.

type RegistryPreview

type RegistryPreview struct {
	// Schema A URL to the JSON Schema for this object.
	Schema         *string        `json:"$schema,omitempty"`
	EstimatedSboms int64          `json:"estimated_sboms"`
	Repositories   *[]RepoPreview `json:"repositories"`
	Selected       int64          `json:"selected"`
	SkippedByLimit int64          `json:"skipped_by_limit"`
}

RegistryPreview defines model for RegistryPreview.

type RegistryResponse

type RegistryResponse struct {
	// Schema A URL to the JSON Schema for this object.
	Schema    *string `json:"$schema,omitempty"`
	CreatedAt string  `json:"created_at"`
	Enabled   bool    `json:"enabled"`
	HasAuth   bool    `json:"has_auth"`
	HasSecret bool    `json:"has_secret"`
	Id        string  `json:"id"`

	// IncludeUntagged Scan untagged manifests via registry-specific APIs (supported: zot, harbor, ghcr)
	IncludeUntagged bool       `json:"include_untagged"`
	Insecure        bool       `json:"insecure"`
	LastPolledAt    *string    `json:"last_polled_at,omitempty"`
	LastWalk        *WalkStats `json:"last_walk,omitempty"`

	// ManagedBy External system that owns this registry's configuration (e.g. kubernetes); absent when managed through this API
	ManagedBy *string `json:"managed_by,omitempty"`

	// ManagedRef Identifier within the managing system, e.g. '<namespace>/<name>' of the OCIRegistry resource
	ManagedRef *string `json:"managed_ref,omitempty"`

	// MaxTagAgeDays Tags whose image is older than this many days are skipped; 0 = no age limit
	MaxTagAgeDays       int64  `json:"max_tag_age_days"`
	Name                string `json:"name"`
	PollIntervalMinutes int64  `json:"poll_interval_minutes"`

	// Repositories Explicit repositories to walk; overrides catalog discovery when non-empty
	Repositories *[]string `json:"repositories"`

	// RepositoryPatterns Glob patterns for repositories to ingest; empty = all
	RepositoryPatterns *[]string `json:"repository_patterns"`
	ScanMode           string    `json:"scan_mode"`

	// TagLimit Newest tags kept per repository (ADR-0053); 0 = unlimited
	TagLimit int64 `json:"tag_limit"`

	// TagOrder How 'newest' is decided; auto = semver when tag_patterns contains semver, created otherwise
	TagOrder RegistryResponseTagOrder `json:"tag_order"`

	// TagPatterns Glob patterns or 'semver' for tags to ingest; empty = all
	TagPatterns *[]string `json:"tag_patterns"`

	// TrustIdentity Regex matched against the Fulcio certificate SAN; required for keyless verification mode
	TrustIdentity *string `json:"trust_identity,omitempty"`

	// TrustIssuer Expected OIDC issuer URL; required for keyless verification mode
	TrustIssuer *string `json:"trust_issuer,omitempty"`

	// TrustPublicKey PEM-encoded EC public key for public_key verification mode
	TrustPublicKey *string `json:"trust_public_key,omitempty"`
	Type           string  `json:"type"`
	UpdatedAt      string  `json:"updated_at"`
	Url            string  `json:"url"`

	// VerificationMode Signature verification mode
	VerificationMode RegistryResponseVerificationMode `json:"verification_mode"`

	// Visibility Registry visibility: public or private
	Visibility string `json:"visibility"`
	WebhookUrl string `json:"webhook_url"`
}

RegistryResponse defines model for RegistryResponse.

type RegistryResponseTagOrder

type RegistryResponseTagOrder string

RegistryResponseTagOrder How 'newest' is decided; auto = semver when tag_patterns contains semver, created otherwise

const (
	RegistryResponseTagOrderAuto    RegistryResponseTagOrder = "auto"
	RegistryResponseTagOrderCreated RegistryResponseTagOrder = "created"
	RegistryResponseTagOrderLexical RegistryResponseTagOrder = "lexical"
	RegistryResponseTagOrderSemver  RegistryResponseTagOrder = "semver"
)

Defines values for RegistryResponseTagOrder.

func (RegistryResponseTagOrder) Valid

func (e RegistryResponseTagOrder) Valid() bool

Valid indicates whether the value is a known member of the RegistryResponseTagOrder enum.

type RegistryResponseVerificationMode

type RegistryResponseVerificationMode string

RegistryResponseVerificationMode Signature verification mode

const (
	RegistryResponseVerificationModeKeyless   RegistryResponseVerificationMode = "keyless"
	RegistryResponseVerificationModeNone      RegistryResponseVerificationMode = "none"
	RegistryResponseVerificationModePublicKey RegistryResponseVerificationMode = "public_key"
)

Defines values for RegistryResponseVerificationMode.

func (RegistryResponseVerificationMode) Valid

Valid indicates whether the value is a known member of the RegistryResponseVerificationMode enum.

type RegistryTrustCount

type RegistryTrustCount struct {
	Count         int64  `json:"count"`
	RegistryId    string `json:"registryId"`
	SigningStatus string `json:"signingStatus"`
}

RegistryTrustCount defines model for RegistryTrustCount.

type RegistryWebhookInputBody

type RegistryWebhookInputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema    *string `json:"$schema,omitempty"`
	Digest    string  `json:"digest"`
	Manifest  string  `json:"manifest"`
	MediaType string  `json:"mediaType"`
	Name      string  `json:"name"`
	Reference string  `json:"reference"`
}

RegistryWebhookInputBody defines model for RegistryWebhookInputBody.

type RegistryWebhookJSONRequestBody

type RegistryWebhookJSONRequestBody = RegistryWebhookInputBody

RegistryWebhookJSONRequestBody defines body for RegistryWebhook for application/json ContentType.

type RegistryWebhookParams

type RegistryWebhookParams struct {
	Authorization *string `json:"Authorization,omitempty"`
}

RegistryWebhookParams defines parameters for RegistryWebhook.

type RepoPreview

type RepoPreview struct {
	// Error Why this repository could not be previewed; the others still are
	Error *string `json:"error,omitempty"`

	// EstimatedSboms (selected tags x platforms) + untagged manifests; an estimate, since tags can share digests and platforms vary
	EstimatedSboms int64 `json:"estimated_sboms"`

	// Matched Tags that pass the filter
	Matched int64 `json:"matched"`

	// Platforms Platforms of the newest selected tag, the sample the estimate multiplies by
	Platforms  int64  `json:"platforms"`
	Repository string `json:"repository"`

	// Selected Tags inside the window
	Selected int64 `json:"selected"`

	// SkippedByAge Matching tags older than max_tag_age_days, or with no build date while it is set
	SkippedByAge int64 `json:"skipped_by_age"`

	// SkippedByLimit Matching tags past tag_limit
	SkippedByLimit int64 `json:"skipped_by_limit"`

	// Untagged Untagged manifests inside the untagged window (include_untagged only)
	Untagged int64 `json:"untagged"`
}

RepoPreview defines model for RepoPreview.

type RetryAllFailedEnrichmentJobsOutputBody

type RetryAllFailedEnrichmentJobsOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string `json:"$schema,omitempty"`

	// Count Number of rows transitioned from 'failed' to 'queued'
	Count int64 `json:"count"`
}

RetryAllFailedEnrichmentJobsOutputBody defines model for RetryAllFailedEnrichmentJobsOutputBody.

type RetryAllFailedEnrichmentJobsParams

type RetryAllFailedEnrichmentJobsParams struct {
	// EnricherName Limit the reset to a single enricher; omit to reset all
	EnricherName *RetryAllFailedEnrichmentJobsParamsEnricherName `form:"enricher_name,omitempty" json:"enricher_name,omitempty"`
}

RetryAllFailedEnrichmentJobsParams defines parameters for RetryAllFailedEnrichmentJobs.

type RetryAllFailedEnrichmentJobsParamsEnricherName

type RetryAllFailedEnrichmentJobsParamsEnricherName string

RetryAllFailedEnrichmentJobsParamsEnricherName defines parameters for RetryAllFailedEnrichmentJobs.

const (
	RetryAllFailedEnrichmentJobsParamsEnricherNameOciMetadata RetryAllFailedEnrichmentJobsParamsEnricherName = "oci-metadata"
	RetryAllFailedEnrichmentJobsParamsEnricherNameProvenance  RetryAllFailedEnrichmentJobsParamsEnricherName = "provenance"
	RetryAllFailedEnrichmentJobsParamsEnricherNameUser        RetryAllFailedEnrichmentJobsParamsEnricherName = "user"
)

Defines values for RetryAllFailedEnrichmentJobsParamsEnricherName.

func (RetryAllFailedEnrichmentJobsParamsEnricherName) Valid

Valid indicates whether the value is a known member of the RetryAllFailedEnrichmentJobsParamsEnricherName enum.

type RetryAllFailedScanJobsOutputBody

type RetryAllFailedScanJobsOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string `json:"$schema,omitempty"`

	// Count Number of rows transitioned from 'failed' to 'queued'
	Count int64 `json:"count"`
}

RetryAllFailedScanJobsOutputBody defines model for RetryAllFailedScanJobsOutputBody.

type RunningVulnResponse

type RunningVulnResponse struct {
	// CanonicalId The id this finding is keyed and linked by, normally a CVE. Aliased advisories are collapsed into one row.
	CanonicalId string   `json:"canonical_id"`
	CvssScore   *float32 `json:"cvss_score,omitempty"`

	// Id Native advisory id of the representative record (OSV, GHSA, …)
	Id       string  `json:"id"`
	Severity *string `json:"severity,omitempty"`
	Summary  *string `json:"summary,omitempty"`

	// WorkloadCount Distinct running workloads affected in this cluster
	WorkloadCount int64 `json:"workload_count"`
}

RunningVulnResponse defines model for RunningVulnResponse.

type RunningWorkloadResponse

type RunningWorkloadResponse struct {
	ArtifactId    *string `json:"artifact_id,omitempty"`
	ArtifactName  *string `json:"artifact_name,omitempty"`
	ArtifactType  *string `json:"artifact_type,omitempty"`
	ClusterId     string  `json:"cluster_id"`
	ClusterName   string  `json:"cluster_name"`
	ContainerName string  `json:"container_name"`
	FirstSeenAt   string  `json:"first_seen_at"`
	Id            string  `json:"id"`
	ImageDigest   *string `json:"image_digest,omitempty"`
	ImageRef      string  `json:"image_ref"`
	K8sNamespace  string  `json:"k8s_namespace"`
	LastSeenAt    string  `json:"last_seen_at"`

	// MatchState exact = digest matched an SBOM; index = matched a multi-arch image index, so the exact platform is unknown; unknown = real digest with no ingested SBOM (coverage gap); unresolvable = no digest could be read from the container (agent/runtime gap)
	MatchState     RunningWorkloadResponseMatchState `json:"match_state"`
	PodCount       int32                             `json:"pod_count"`
	SbomId         *string                           `json:"sbom_id,omitempty"`
	SubjectVersion *string                           `json:"subject_version,omitempty"`
	Vulns          *WorkloadVulnCounts               `json:"vulns,omitempty"`
	WorkloadKind   string                            `json:"workload_kind"`
	WorkloadName   string                            `json:"workload_name"`
}

RunningWorkloadResponse defines model for RunningWorkloadResponse.

type RunningWorkloadResponseMatchState

type RunningWorkloadResponseMatchState string

RunningWorkloadResponseMatchState exact = digest matched an SBOM; index = matched a multi-arch image index, so the exact platform is unknown; unknown = real digest with no ingested SBOM (coverage gap); unresolvable = no digest could be read from the container (agent/runtime gap)

const (
	RunningWorkloadResponseMatchStateExact        RunningWorkloadResponseMatchState = "exact"
	RunningWorkloadResponseMatchStateIndex        RunningWorkloadResponseMatchState = "index"
	RunningWorkloadResponseMatchStateUnknown      RunningWorkloadResponseMatchState = "unknown"
	RunningWorkloadResponseMatchStateUnresolvable RunningWorkloadResponseMatchState = "unresolvable"
)

Defines values for RunningWorkloadResponseMatchState.

func (RunningWorkloadResponseMatchState) Valid

Valid indicates whether the value is a known member of the RunningWorkloadResponseMatchState enum.

type SBOMDetail

type SBOMDetail struct {
	// Schema A URL to the JSON Schema for this object.
	Schema          *string                 `json:"$schema,omitempty"`
	Architecture    *string                 `json:"architecture,omitempty"`
	ArtifactId      *string                 `json:"artifactId,omitempty"`
	BuildDate       *time.Time              `json:"buildDate,omitempty"`
	ComponentCount  *int64                  `json:"componentCount,omitempty"`
	CreatedAt       time.Time               `json:"createdAt"`
	Digest          *string                 `json:"digest,omitempty"`
	Enrichments     *map[string]interface{} `json:"enrichments,omitempty"`
	Flavor          *string                 `json:"flavor,omitempty"`
	Id              string                  `json:"id"`
	ImageVersion    *string                 `json:"imageVersion,omitempty"`
	PackageCount    int64                   `json:"packageCount"`
	ProvenanceDrift *ProvenanceDriftSummary `json:"provenanceDrift,omitempty"`
	RawBom          interface{}             `json:"rawBom,omitempty"`
	Revision        *string                 `json:"revision,omitempty"`
	SerialNumber    *string                 `json:"serialNumber,omitempty"`
	SigningStatus   string                  `json:"signingStatus"`
	SourceUrl       *string                 `json:"sourceUrl,omitempty"`
	SpecVersion     string                  `json:"specVersion"`
	SubjectVersion  *string                 `json:"subjectVersion,omitempty"`
	Sufficient      bool                    `json:"sufficient"`
	Version         int32                   `json:"version"`
	VulnSummary     *VulnSummary            `json:"vulnSummary,omitempty"`
}

SBOMDetail defines model for SBOMDetail.

type SBOMFilter

type SBOMFilter struct {
	// SerialNumber is the CycloneDX serial number, unique per document.
	SerialNumber string
	// Digest is the subject's digest, shared by every version of one artifact.
	Digest string
}

SBOMFilter narrows a SBOM listing. A zero value lists everything visible.

type SBOMRef

type SBOMRef struct {
	Architecture   *string    `json:"architecture,omitempty"`
	BuildDate      *time.Time `json:"buildDate,omitempty"`
	CreatedAt      time.Time  `json:"createdAt"`
	Flavor         *string    `json:"flavor,omitempty"`
	Id             string     `json:"id"`
	SubjectVersion *string    `json:"subjectVersion,omitempty"`
}

SBOMRef defines model for SBOMRef.

type SBOMSummary

type SBOMSummary struct {
	Architecture   *string    `json:"architecture,omitempty"`
	ArtifactId     *string    `json:"artifactId,omitempty"`
	BuildDate      *time.Time `json:"buildDate,omitempty"`
	ComponentCount *int64     `json:"componentCount,omitempty"`
	CreatedAt      time.Time  `json:"createdAt"`
	Digest         *string    `json:"digest,omitempty"`
	Flavor         *string    `json:"flavor,omitempty"`
	Id             string     `json:"id"`
	ImageVersion   *string    `json:"imageVersion,omitempty"`
	Revision       *string    `json:"revision,omitempty"`
	SerialNumber   *string    `json:"serialNumber,omitempty"`
	SourceUrl      *string    `json:"sourceUrl,omitempty"`
	SpecVersion    string     `json:"specVersion"`
	SubjectVersion *string    `json:"subjectVersion,omitempty"`
	Sufficient     bool       `json:"sufficient"`
	Version        int32      `json:"version"`
}

SBOMSummary defines model for SBOMSummary.

type SBOMVulnEntry

type SBOMVulnEntry struct {
	AffectedPackageCount int64              `json:"affectedPackageCount"`
	AffectedPackages     *[]SBOMVulnPackage `json:"affectedPackages"`
	CanonicalId          string             `json:"canonicalId"`
	CvssScore            *float32           `json:"cvssScore,omitempty"`
	Id                   string             `json:"id"`
	Severity             string             `json:"severity"`
	Summary              *string            `json:"summary,omitempty"`
}

SBOMVulnEntry defines model for SBOMVulnEntry.

type SBOMVulnPackage

type SBOMVulnPackage struct {
	FixState         *string `json:"fixState,omitempty"`
	FixedVersion     *string `json:"fixedVersion,omitempty"`
	Group            *string `json:"group,omitempty"`
	MatchedViaSource bool    `json:"matchedViaSource"`
	Name             string  `json:"name"`
	Purl             string  `json:"purl"`
	Version          *string `json:"version,omitempty"`
}

SBOMVulnPackage defines model for SBOMVulnPackage.

type ScanJobResponse

type ScanJobResponse struct {
	// Schema A URL to the JSON Schema for this object.
	Schema     *string `json:"$schema,omitempty"`
	Attempts   int32   `json:"attempts"`
	CreatedAt  string  `json:"created_at"`
	Digest     string  `json:"digest"`
	FinishedAt *string `json:"finished_at,omitempty"`

	// Id Job UUID
	Id            string  `json:"id"`
	LastAttemptAt *string `json:"last_attempt_at,omitempty"`
	LastError     *string `json:"last_error,omitempty"`

	// NatsMsgId NATS deduplication message ID
	NatsMsgId *string `json:"nats_msg_id,omitempty"`

	// RegistryId Source registry UUID
	RegistryId *string `json:"registry_id,omitempty"`
	Repository string  `json:"repository"`

	// SbomId Resulting SBOM UUID on success
	SbomId    *string              `json:"sbom_id,omitempty"`
	StartedAt *string              `json:"started_at,omitempty"`
	State     ScanJobResponseState `json:"state"`
	Tag       *string              `json:"tag,omitempty"`

	// WorkerId Pod hostname that is processing this job
	WorkerId *string `json:"worker_id,omitempty"`
}

ScanJobResponse defines model for ScanJobResponse.

type ScanJobResponseState

type ScanJobResponseState string

ScanJobResponseState defines model for ScanJobResponse.State.

const (
	ScanJobResponseStateFailed    ScanJobResponseState = "failed"
	ScanJobResponseStatePruned    ScanJobResponseState = "pruned"
	ScanJobResponseStateQueued    ScanJobResponseState = "queued"
	ScanJobResponseStateRunning   ScanJobResponseState = "running"
	ScanJobResponseStateSucceeded ScanJobResponseState = "succeeded"
)

Defines values for ScanJobResponseState.

func (ScanJobResponseState) Valid

func (e ScanJobResponseState) Valid() bool

Valid indicates whether the value is a known member of the ScanJobResponseState enum.

type ScanJobsStatus

type ScanJobsStatus struct {
	Failed24h    int64 `json:"failed_24h"`
	Queued       int64 `json:"queued"`
	Running      int64 `json:"running"`
	Succeeded24h int64 `json:"succeeded_24h"`
}

ScanJobsStatus defines model for ScanJobsStatus.

type ScanRegistryOutputBody

type ScanRegistryOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string `json:"$schema,omitempty"`

	// Message Confirmation that ad-hoc scan has been initiated
	Message string `json:"message"`
}

ScanRegistryOutputBody defines model for ScanRegistryOutputBody.

type ScanRegistryParams

type ScanRegistryParams struct {
	// Force Re-scan every image, including digests already ingested. Default false: already-scanned digests are skipped.
	Force *bool `form:"force,omitempty" json:"force,omitempty"`
}

ScanRegistryParams defines parameters for ScanRegistry.

type ScannerStatus

type ScannerStatus struct {
	Enabled       bool `json:"enabled"`
	PollerEnabled bool `json:"poller_enabled"`
}

ScannerStatus defines model for ScannerStatus.

type SearchComponentsOutputBody

type SearchComponentsOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema     *string             `json:"$schema,omitempty"`
	Data       *[]ComponentSummary `json:"data"`
	Pagination PaginationMeta      `json:"pagination"`
}

SearchComponentsOutputBody defines model for SearchComponentsOutputBody.

type SearchComponentsParams

type SearchComponentsParams struct {
	// Limit Maximum number of results per page
	Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`

	// Offset Number of results to skip
	Offset *int32 `form:"offset,omitempty" json:"offset,omitempty"`

	// Name Component name to search for; required unless purl is given
	Name *string `form:"name,omitempty" json:"name,omitempty"`

	// Purl Exact package URL, e.g. pkg:npm/lodash@4.17.21; the cross-SBOM key for a component (ADR-042 R6)
	Purl *string `form:"purl,omitempty" json:"purl,omitempty"`

	// Group Filter by component group
	Group *string `form:"group,omitempty" json:"group,omitempty"`

	// Version Filter by component version
	Version *string `form:"version,omitempty" json:"version,omitempty"`
}

SearchComponentsParams defines parameters for SearchComponents.

type SearchDistinctComponentsOutputBody

type SearchDistinctComponentsOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema     *string                     `json:"$schema,omitempty"`
	Data       *[]DistinctComponentSummary `json:"data"`
	Pagination PaginationMeta              `json:"pagination"`
}

SearchDistinctComponentsOutputBody defines model for SearchDistinctComponentsOutputBody.

type SearchDistinctComponentsParams

type SearchDistinctComponentsParams struct {
	// Limit Maximum number of results per page
	Limit *int32 `form:"limit,omitempty" json:"limit,omitempty"`

	// Offset Number of results to skip
	Offset *int32 `form:"offset,omitempty" json:"offset,omitempty"`

	// Name Filter by component name
	Name *string `form:"name,omitempty" json:"name,omitempty"`

	// Group Filter by component group
	Group *string `form:"group,omitempty" json:"group,omitempty"`

	// Type Filter by component type
	Type *string `form:"type,omitempty" json:"type,omitempty"`

	// PurlType Filter by purl type
	PurlType *string `form:"purl_type,omitempty" json:"purl_type,omitempty"`

	// Sort Sort field: name, version_count, sbom_count, or severity (worst first, ranked critical to unknown). Unrecognised values fall back to name.
	Sort *string `form:"sort,omitempty" json:"sort,omitempty"`

	// SortDir Sort direction (asc or desc)
	SortDir *string `form:"sort_dir,omitempty" json:"sort_dir,omitempty"`
}

SearchDistinctComponentsParams defines parameters for SearchDistinctComponents.

type SetNamespaceMemberInputBody

type SetNamespaceMemberInputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string `json:"$schema,omitempty"`

	// Role Role to grant in this namespace
	Role SetNamespaceMemberInputBodyRole `json:"role"`
}

SetNamespaceMemberInputBody defines model for SetNamespaceMemberInputBody.

type SetNamespaceMemberInputBodyRole

type SetNamespaceMemberInputBodyRole string

SetNamespaceMemberInputBodyRole Role to grant in this namespace

const (
	SetNamespaceMemberInputBodyRoleDeveloper  SetNamespaceMemberInputBodyRole = "developer"
	SetNamespaceMemberInputBodyRoleMaintainer SetNamespaceMemberInputBodyRole = "maintainer"
	SetNamespaceMemberInputBodyRoleOwner      SetNamespaceMemberInputBodyRole = "owner"
	SetNamespaceMemberInputBodyRoleSecurity   SetNamespaceMemberInputBodyRole = "security"
	SetNamespaceMemberInputBodyRoleViewer     SetNamespaceMemberInputBodyRole = "viewer"
)

Defines values for SetNamespaceMemberInputBodyRole.

func (SetNamespaceMemberInputBodyRole) Valid

Valid indicates whether the value is a known member of the SetNamespaceMemberInputBodyRole enum.

type SetNamespaceMemberJSONRequestBody

type SetNamespaceMemberJSONRequestBody = SetNamespaceMemberInputBody

SetNamespaceMemberJSONRequestBody defines body for SetNamespaceMember for application/json ContentType.

type SourceResponse

type SourceResponse struct {
	// Schema A URL to the JSON Schema for this object.
	Schema    *string `json:"$schema,omitempty"`
	CreatedAt string  `json:"created_at"`
	Id        string  `json:"id"`

	// Kind Ingest channel kind
	Kind        SourceResponseKind `json:"kind"`
	Name        string             `json:"name"`
	NamespaceId string             `json:"namespace_id"`

	// NamespaceName Owning namespace name; populated on list responses
	NamespaceName *string `json:"namespace_name,omitempty"`
	UpdatedAt     string  `json:"updated_at"`
}

SourceResponse defines model for SourceResponse.

type SourceResponseKind

type SourceResponseKind string

SourceResponseKind Ingest channel kind

const (
	OciRegistry SourceResponseKind = "oci_registry"
	Upload      SourceResponseKind = "upload"
)

Defines values for SourceResponseKind.

func (SourceResponseKind) Valid

func (e SourceResponseKind) Valid() bool

Valid indicates whether the value is a known member of the SourceResponseKind enum.

type StartIdentityLinkInputBody

type StartIdentityLinkInputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string `json:"$schema,omitempty"`

	// Provider Issuer key to link, as returned by GET /api/v1/auth/providers
	Provider string `json:"provider"`
}

StartIdentityLinkInputBody defines model for StartIdentityLinkInputBody.

type StartIdentityLinkOutputBody

type StartIdentityLinkOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string `json:"$schema,omitempty"`

	// AuthorizeUrl Navigate the browser here to continue linking
	AuthorizeUrl string `json:"authorize_url"`
}

StartIdentityLinkOutputBody defines model for StartIdentityLinkOutputBody.

type SystemStatusOutputBody

type SystemStatusOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema     *string          `json:"$schema,omitempty"`
	Db         DBStatus         `json:"db"`
	Enrichment EnrichmentStatus `json:"enrichment"`
	Nats       NATSStatus       `json:"nats"`
	ScanJobs   ScanJobsStatus   `json:"scan_jobs"`
	Scanner    ScannerStatus    `json:"scanner"`
}

SystemStatusOutputBody defines model for SystemStatusOutputBody.

type TestRegistryConnectionInputBody

type TestRegistryConnectionInputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string `json:"$schema,omitempty"`

	// AuthToken Token or PAT for registry authentication
	AuthToken *string `json:"auth_token,omitempty"`

	// AuthUsername Username for registry authentication
	AuthUsername *string `json:"auth_username,omitempty"`

	// Insecure Use HTTP instead of HTTPS
	Insecure bool `json:"insecure"`

	// Url Registry address (e.g. zot:5000)
	Url string `json:"url"`
}

TestRegistryConnectionInputBody defines model for TestRegistryConnectionInputBody.

type TestRegistryConnectionJSONRequestBody

type TestRegistryConnectionJSONRequestBody = TestRegistryConnectionInputBody

TestRegistryConnectionJSONRequestBody defines body for TestRegistryConnection for application/json ContentType.

type TestRegistryConnectionOutputBody

type TestRegistryConnectionOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string `json:"$schema,omitempty"`

	// Message Human-readable result (e.g. HTTP 200 or error text)
	Message string `json:"message"`

	// Reachable Whether the registry responded
	Reachable bool `json:"reachable"`
}

TestRegistryConnectionOutputBody defines model for TestRegistryConnectionOutputBody.

type TopVulnEntry

type TopVulnEntry struct {
	AffectedPurlCount int64      `json:"affectedPurlCount"`
	AffectedSbomCount int64      `json:"affectedSbomCount"`
	Aliases           *[]string  `json:"aliases"`
	CanonicalId       string     `json:"canonicalId"`
	CvssScore         *float32   `json:"cvssScore,omitempty"`
	Id                string     `json:"id"`
	PublishedAt       *time.Time `json:"publishedAt,omitempty"`
	Severity          string     `json:"severity"`
	Summary           *string    `json:"summary,omitempty"`
}

TopVulnEntry defines model for TopVulnEntry.

type UnknownHostResponse

type UnknownHostResponse struct {
	// Host Normalized registry host the images in this group name, and the address a registry for it would use
	Host       string `json:"host"`
	ImageCount int64  `json:"image_count"`
	PodCount   int64  `json:"pod_count"`

	// Reason The worst remedy seen for this group; ready and unparseable_ref name no registry to configure and are not grouped here
	Reason UnknownHostResponseReason `json:"reason"`

	// RegistryId Registry that serves this group, when one was matched at all
	RegistryId   *string `json:"registry_id,omitempty"`
	RegistryName *string `json:"registry_name,omitempty"`

	// Repositories Distinct repositories a registry would have to cover to close this group's gap, sorted; capped, so compare against repository_count
	Repositories *[]string `json:"repositories"`

	// RepositoryCount Distinct repository total, which may exceed the length of repositories
	RepositoryCount int64 `json:"repository_count"`

	// Scope The group: the host plus any leading repository segments that belong to the registry rather than the image, e.g. ghcr.io/pfenerty
	Scope         string `json:"scope"`
	WorkloadCount int64  `json:"workload_count"`
}

UnknownHostResponse defines model for UnknownHostResponse.

type UnknownHostResponseReason

type UnknownHostResponseReason string

UnknownHostResponseReason The worst remedy seen for this group; ready and unparseable_ref name no registry to configure and are not grouped here

const (
	UnknownHostResponseReasonNoRegistry       UnknownHostResponseReason = "no_registry"
	UnknownHostResponseReasonPatternExcluded  UnknownHostResponseReason = "pattern_excluded"
	UnknownHostResponseReasonRegistryDisabled UnknownHostResponseReason = "registry_disabled"
)

Defines values for UnknownHostResponseReason.

func (UnknownHostResponseReason) Valid

func (e UnknownHostResponseReason) Valid() bool

Valid indicates whether the value is a known member of the UnknownHostResponseReason enum.

type UnknownImageReasonCounts

type UnknownImageReasonCounts struct {
	// NoRegistry No registry in the namespace is configured for the image's host
	NoRegistry int64 `json:"no_registry"`

	// PatternExcluded The registry's repository patterns exclude this repository
	PatternExcluded int64 `json:"pattern_excluded"`

	// Ready A registry in the namespace serves the image and accepts its repository
	Ready int64 `json:"ready"`

	// RegistryDisabled The host matches a registry that is switched off
	RegistryDisabled int64 `json:"registry_disabled"`

	// UnparseableRef The reported reference carries no host to resolve against
	UnparseableRef int64 `json:"unparseable_ref"`
}

UnknownImageReasonCounts defines model for UnknownImageReasonCounts.

type UnknownImageResponse

type UnknownImageResponse struct {
	ImageDigest string `json:"image_digest"`
	ImageRef    string `json:"image_ref"`
	PodCount    int64  `json:"pod_count"`

	// Reason Why this image can or cannot be ingested
	Reason UnknownImageResponseReason `json:"reason"`

	// RegistryHost Host parsed out of image_ref; empty when the reference carries none
	RegistryHost *string `json:"registry_host,omitempty"`

	// RegistryId Registry that serves this group, when one was matched at all
	RegistryId         *string `json:"registry_id,omitempty"`
	RegistryName       *string `json:"registry_name,omitempty"`
	Repository         *string `json:"repository,omitempty"`
	SampleK8sNamespace *string `json:"sample_k8s_namespace,omitempty"`
	SampleWorkloadName *string `json:"sample_workload_name,omitempty"`

	// WorkloadCount Containers running this image
	WorkloadCount int64 `json:"workload_count"`
}

UnknownImageResponse defines model for UnknownImageResponse.

type UnknownImageResponseReason

type UnknownImageResponseReason string

UnknownImageResponseReason Why this image can or cannot be ingested

const (
	UnknownImageResponseReasonNoRegistry       UnknownImageResponseReason = "no_registry"
	UnknownImageResponseReasonPatternExcluded  UnknownImageResponseReason = "pattern_excluded"
	UnknownImageResponseReasonReady            UnknownImageResponseReason = "ready"
	UnknownImageResponseReasonRegistryDisabled UnknownImageResponseReason = "registry_disabled"
	UnknownImageResponseReasonUnparseableRef   UnknownImageResponseReason = "unparseable_ref"
)

Defines values for UnknownImageResponseReason.

func (UnknownImageResponseReason) Valid

func (e UnknownImageResponseReason) Valid() bool

Valid indicates whether the value is a known member of the UnknownImageResponseReason enum.

type UpdateClusterInputBody

type UpdateClusterInputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string `json:"$schema,omitempty"`

	// AutoIngest Auto-ingest unknown running images on every accepted snapshot. Omit to leave unchanged.
	AutoIngest  *bool   `json:"auto_ingest,omitempty"`
	Description *string `json:"description,omitempty"`
	Name        string  `json:"name"`
}

UpdateClusterInputBody defines model for UpdateClusterInputBody.

type UpdateClusterJSONRequestBody

type UpdateClusterJSONRequestBody = UpdateClusterInputBody

UpdateClusterJSONRequestBody defines body for UpdateCluster for application/json ContentType.

type UpdateNamespaceInputBody

type UpdateNamespaceInputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string `json:"$schema,omitempty"`

	// Name New namespace name; omit to keep the current one
	Name *string `json:"name,omitempty"`

	// Visibility New visibility; omit to keep the current one
	Visibility *UpdateNamespaceInputBodyVisibility `json:"visibility,omitempty"`
}

UpdateNamespaceInputBody defines model for UpdateNamespaceInputBody.

type UpdateNamespaceInputBodyVisibility

type UpdateNamespaceInputBodyVisibility string

UpdateNamespaceInputBodyVisibility New visibility; omit to keep the current one

const (
	UpdateNamespaceInputBodyVisibilityPrivate UpdateNamespaceInputBodyVisibility = "private"
	UpdateNamespaceInputBodyVisibilityPublic  UpdateNamespaceInputBodyVisibility = "public"
)

Defines values for UpdateNamespaceInputBodyVisibility.

func (UpdateNamespaceInputBodyVisibility) Valid

Valid indicates whether the value is a known member of the UpdateNamespaceInputBodyVisibility enum.

type UpdateNamespaceJSONRequestBody

type UpdateNamespaceJSONRequestBody = UpdateNamespaceInputBody

UpdateNamespaceJSONRequestBody defines body for UpdateNamespace for application/json ContentType.

type UpdateRegistryInputBody

type UpdateRegistryInputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema       *string `json:"$schema,omitempty"`
	AuthToken    *string `json:"auth_token,omitempty"`
	AuthUsername *string `json:"auth_username,omitempty"`
	Enabled      bool    `json:"enabled"`

	// IncludeUntagged Scan untagged manifests via registry-specific APIs (supported: zot, harbor, ghcr)
	IncludeUntagged *bool `json:"include_untagged,omitempty"`
	Insecure        bool  `json:"insecure"`

	// ManagedBy External system that owns this registry's configuration; omit to leave the existing marker untouched
	ManagedBy *string `json:"managed_by,omitempty"`

	// ManagedRef Identifier within the managing system; omit to leave the existing value untouched
	ManagedRef *string `json:"managed_ref,omitempty"`

	// MaxTagAgeDays Skip tags whose image is older than this many days; 0 clears it. Omit to keep the current value
	MaxTagAgeDays *int64 `json:"max_tag_age_days,omitempty"`
	Name          string `json:"name"`

	// PollIntervalMinutes Minutes between polls
	PollIntervalMinutes *int64    `json:"poll_interval_minutes,omitempty"`
	Repositories        *[]string `json:"repositories,omitempty"`
	RepositoryPatterns  *[]string `json:"repository_patterns,omitempty"`

	// ScanMode Scanning mode
	ScanMode *UpdateRegistryInputBodyScanMode `json:"scan_mode,omitempty"`

	// TagLimit Newest tags kept per repository; 0 = unlimited. Omit to keep the current value
	TagLimit *int64 `json:"tag_limit,omitempty"`

	// TagOrder How 'newest' is decided; auto = semver when tag_patterns contains semver, created otherwise. Omit to keep the current value
	TagOrder    *UpdateRegistryInputBodyTagOrder `json:"tag_order,omitempty"`
	TagPatterns *[]string                        `json:"tag_patterns,omitempty"`

	// TrustIdentity Regex matched against the Fulcio certificate SAN; required when verification_mode is keyless
	TrustIdentity *string `json:"trust_identity,omitempty"`

	// TrustIssuer Expected OIDC issuer URL; required when verification_mode is keyless
	TrustIssuer *string `json:"trust_issuer,omitempty"`

	// TrustPublicKey PEM-encoded EC public key; required when verification_mode is public_key
	TrustPublicKey *string                     `json:"trust_public_key,omitempty"`
	Type           UpdateRegistryInputBodyType `json:"type"`
	Url            string                      `json:"url"`

	// VerificationMode Signature verification mode; defaults to none
	VerificationMode *UpdateRegistryInputBodyVerificationMode `json:"verification_mode,omitempty"`

	// Visibility Registry visibility
	Visibility *UpdateRegistryInputBodyVisibility `json:"visibility,omitempty"`
}

UpdateRegistryInputBody defines model for UpdateRegistryInputBody.

type UpdateRegistryInputBodyScanMode

type UpdateRegistryInputBodyScanMode string

UpdateRegistryInputBodyScanMode Scanning mode

const (
	UpdateRegistryInputBodyScanModeBoth    UpdateRegistryInputBodyScanMode = "both"
	UpdateRegistryInputBodyScanModePoll    UpdateRegistryInputBodyScanMode = "poll"
	UpdateRegistryInputBodyScanModeWebhook UpdateRegistryInputBodyScanMode = "webhook"
)

Defines values for UpdateRegistryInputBodyScanMode.

func (UpdateRegistryInputBodyScanMode) Valid

Valid indicates whether the value is a known member of the UpdateRegistryInputBodyScanMode enum.

type UpdateRegistryInputBodyTagOrder

type UpdateRegistryInputBodyTagOrder string

UpdateRegistryInputBodyTagOrder How 'newest' is decided; auto = semver when tag_patterns contains semver, created otherwise. Omit to keep the current value

const (
	UpdateRegistryInputBodyTagOrderAuto    UpdateRegistryInputBodyTagOrder = "auto"
	UpdateRegistryInputBodyTagOrderCreated UpdateRegistryInputBodyTagOrder = "created"
	UpdateRegistryInputBodyTagOrderLexical UpdateRegistryInputBodyTagOrder = "lexical"
	UpdateRegistryInputBodyTagOrderSemver  UpdateRegistryInputBodyTagOrder = "semver"
)

Defines values for UpdateRegistryInputBodyTagOrder.

func (UpdateRegistryInputBodyTagOrder) Valid

Valid indicates whether the value is a known member of the UpdateRegistryInputBodyTagOrder enum.

type UpdateRegistryInputBodyType

type UpdateRegistryInputBodyType string

UpdateRegistryInputBodyType defines model for UpdateRegistryInputBody.Type.

const (
	UpdateRegistryInputBodyTypeDocker  UpdateRegistryInputBodyType = "docker"
	UpdateRegistryInputBodyTypeGeneric UpdateRegistryInputBodyType = "generic"
	UpdateRegistryInputBodyTypeGhcr    UpdateRegistryInputBodyType = "ghcr"
	UpdateRegistryInputBodyTypeHarbor  UpdateRegistryInputBodyType = "harbor"
	UpdateRegistryInputBodyTypeZot     UpdateRegistryInputBodyType = "zot"
)

Defines values for UpdateRegistryInputBodyType.

func (UpdateRegistryInputBodyType) Valid

Valid indicates whether the value is a known member of the UpdateRegistryInputBodyType enum.

type UpdateRegistryInputBodyVerificationMode

type UpdateRegistryInputBodyVerificationMode string

UpdateRegistryInputBodyVerificationMode Signature verification mode; defaults to none

const (
	UpdateRegistryInputBodyVerificationModeKeyless   UpdateRegistryInputBodyVerificationMode = "keyless"
	UpdateRegistryInputBodyVerificationModeNone      UpdateRegistryInputBodyVerificationMode = "none"
	UpdateRegistryInputBodyVerificationModePublicKey UpdateRegistryInputBodyVerificationMode = "public_key"
)

Defines values for UpdateRegistryInputBodyVerificationMode.

func (UpdateRegistryInputBodyVerificationMode) Valid

Valid indicates whether the value is a known member of the UpdateRegistryInputBodyVerificationMode enum.

type UpdateRegistryInputBodyVisibility

type UpdateRegistryInputBodyVisibility string

UpdateRegistryInputBodyVisibility Registry visibility

const (
	UpdateRegistryInputBodyVisibilityPrivate UpdateRegistryInputBodyVisibility = "private"
	UpdateRegistryInputBodyVisibilityPublic  UpdateRegistryInputBodyVisibility = "public"
)

Defines values for UpdateRegistryInputBodyVisibility.

func (UpdateRegistryInputBodyVisibility) Valid

Valid indicates whether the value is a known member of the UpdateRegistryInputBodyVisibility enum.

type UpdateRegistryJSONRequestBody

type UpdateRegistryJSONRequestBody = UpdateRegistryInputBody

UpdateRegistryJSONRequestBody defines body for UpdateRegistry for application/json ContentType.

type UpdateSourceInputBody

type UpdateSourceInputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string `json:"$schema,omitempty"`

	// Name New source name
	Name string `json:"name"`
}

UpdateSourceInputBody defines model for UpdateSourceInputBody.

type UpdateSourceJSONRequestBody

type UpdateSourceJSONRequestBody = UpdateSourceInputBody

UpdateSourceJSONRequestBody defines body for UpdateSource for application/json ContentType.

type UpdateUserRoleInputBody

type UpdateUserRoleInputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string `json:"$schema,omitempty"`

	// Role New role
	Role UpdateUserRoleInputBodyRole `json:"role"`
}

UpdateUserRoleInputBody defines model for UpdateUserRoleInputBody.

type UpdateUserRoleInputBodyRole

type UpdateUserRoleInputBodyRole string

UpdateUserRoleInputBodyRole New role

const (
	UpdateUserRoleInputBodyRoleAdmin  UpdateUserRoleInputBodyRole = "admin"
	UpdateUserRoleInputBodyRoleMember UpdateUserRoleInputBodyRole = "member"
	UpdateUserRoleInputBodyRoleViewer UpdateUserRoleInputBodyRole = "viewer"
)

Defines values for UpdateUserRoleInputBodyRole.

func (UpdateUserRoleInputBodyRole) Valid

Valid indicates whether the value is a known member of the UpdateUserRoleInputBodyRole enum.

type UpdateUserRoleJSONRequestBody

type UpdateUserRoleJSONRequestBody = UpdateUserRoleInputBody

UpdateUserRoleJSONRequestBody defines body for UpdateUserRole for application/json ContentType.

type UserResponse

type UserResponse struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string `json:"$schema,omitempty"`

	// DisplayName Name to show for this user; supplied by whichever issuer last signed them in
	DisplayName string `json:"display_name"`
	Id          string `json:"id"`
	Role        string `json:"role"`
}

UserResponse defines model for UserResponse.

type VersionOutputBody

type VersionOutputBody struct {
	// Schema A URL to the JSON Schema for this object.
	Schema *string `json:"$schema,omitempty"`

	// Build Version of the running server build: a release tag, a Go module version, or 'dev'
	Build string `json:"build"`

	// Version API version
	Version string `json:"version"`
}

VersionOutputBody defines model for VersionOutputBody.

type VulnDetail

type VulnDetail struct {
	Aliases     *[]string        `json:"aliases"`
	CanonicalId string           `json:"canonicalId"`
	CvssScore   *float32         `json:"cvssScore,omitempty"`
	CvssVector  *string          `json:"cvssVector,omitempty"`
	Details     *string          `json:"details,omitempty"`
	Id          string           `json:"id"`
	ModifiedAt  *time.Time       `json:"modifiedAt,omitempty"`
	PublishedAt *time.Time       `json:"publishedAt,omitempty"`
	References  *[]VulnReference `json:"references,omitempty"`
	Severity    string           `json:"severity"`
	Summary     *string          `json:"summary,omitempty"`
}

VulnDetail defines model for VulnDetail.

type VulnReference

type VulnReference struct {
	Type string `json:"type"`
	Url  string `json:"url"`
}

VulnReference defines model for VulnReference.

type VulnSeverityEntry

type VulnSeverityEntry struct {
	Critical int64 `json:"critical"`
	High     int64 `json:"high"`
	Low      int64 `json:"low"`
	Medium   int64 `json:"medium"`
	Unknown  int64 `json:"unknown"`
}

VulnSeverityEntry defines model for VulnSeverityEntry.

type VulnSummary

type VulnSummary struct {
	Critical int64 `json:"critical"`
	High     int64 `json:"high"`
	Low      int64 `json:"low"`
	Medium   int64 `json:"medium"`
	Total    int64 `json:"total"`
	Unknown  int64 `json:"unknown"`
}

VulnSummary defines model for VulnSummary.

type WalkStats

type WalkStats struct {
	// At When the walk finished
	At time.Time `json:"at"`

	// Error Why the walk failed, if it did
	Error *string `json:"error,omitempty"`

	// Matched Tags that passed the filter
	Matched int64 `json:"matched"`

	// Queued Scan jobs the walk submitted (already-ingested digests are not)
	Queued int64 `json:"queued"`

	// Repositories Repositories the walk visited
	Repositories int64 `json:"repositories"`

	// Selected Tags inside the window
	Selected int64 `json:"selected"`

	// SkippedByAge Matching tags older than max_tag_age_days
	SkippedByAge int64 `json:"skipped_by_age"`

	// SkippedByLimit Matching tags past tag_limit
	SkippedByLimit int64 `json:"skipped_by_limit"`
}

WalkStats defines model for WalkStats.

type WatchEntry

type WatchEntry struct {
	ArtifactId string    `json:"artifactId"`
	Group      *string   `json:"group,omitempty"`
	Name       string    `json:"name"`
	Purl       *string   `json:"purl,omitempty"`
	SbomCount  int64     `json:"sbomCount"`
	Type       string    `json:"type"`
	WatchedAt  time.Time `json:"watchedAt"`
}

WatchEntry defines model for WatchEntry.

type WatchEvent

type WatchEvent struct {
	ArtifactId      string         `json:"artifactId"`
	ArtifactName    string         `json:"artifactName"`
	ArtifactType    string         `json:"artifactType"`
	CvssScore       *float32       `json:"cvssScore,omitempty"`
	Id              string         `json:"id"`
	Kind            WatchEventKind `json:"kind"`
	NewStatus       *string        `json:"newStatus,omitempty"`
	OccurredAt      time.Time      `json:"occurredAt"`
	PreviousStatus  *string        `json:"previousStatus,omitempty"`
	PreviousVersion *string        `json:"previousVersion,omitempty"`
	Reason          *string        `json:"reason,omitempty"`
	SbomId          string         `json:"sbomId"`
	Severity        *string        `json:"severity,omitempty"`
	Summary         *string        `json:"summary,omitempty"`
	Version         *string        `json:"version,omitempty"`
	VulnerabilityId *string        `json:"vulnerabilityId,omitempty"`
}

WatchEvent defines model for WatchEvent.

type WatchEventKind

type WatchEventKind string

WatchEventKind defines model for WatchEvent.Kind.

const (
	Drift         WatchEventKind = "drift"
	NewVersion    WatchEventKind = "new_version"
	Vulnerability WatchEventKind = "vulnerability"
)

Defines values for WatchEventKind.

func (WatchEventKind) Valid

func (e WatchEventKind) Valid() bool

Valid indicates whether the value is a known member of the WatchEventKind enum.

type WorkloadCoverageResponse

type WorkloadCoverageResponse struct {
	Matched int64 `json:"matched"`

	// Pods Running pods those workload-containers add up to. Reported beside total, not instead of it: total is the unit the match states partition
	Pods  int64 `json:"pods"`
	Total int64 `json:"total"`

	// Unknown Valid digests with no ingested SBOM: a coverage gap
	Unknown int64 `json:"unknown"`

	// Unresolvable Containers whose imageID yielded no digest: an agent or runtime gap
	Unresolvable int64 `json:"unresolvable"`
}

WorkloadCoverageResponse defines model for WorkloadCoverageResponse.

type WorkloadVulnCounts

type WorkloadVulnCounts struct {
	Critical int64 `json:"critical"`
	High     int64 `json:"high"`
	Low      int64 `json:"low"`
	Medium   int64 `json:"medium"`
}

WorkloadVulnCounts defines model for WorkloadVulnCounts.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL