Artifact
Included from Basic tier
An artifact is a named, labelled piece of stored content attached to an
estate node: steps collect artifacts while a run executes, and callers
store them directly through the API. What this page describes is the
metadata record — the content itself lives in the blob store, and a
retention purge can remove the bytes while the row remains (purged_at).
Served by the v2 ArtifactService (ListArtifacts — the estate-wide
index, UploadArtifact) and NodeArtifactService (ListNodeArtifacts,
GetArtifact, GetArtifactDownloadTarget).
Artifact
Artifact is one artifact metadata record — the v1 artifact serialization typed, plus the owning node path the estate index pivots on.
| Field | Type | Meaning |
|---|---|---|
byte_size | integer/string | The stored content's size in bytes; unset when the content metadata is unknown (an upstream-written row, or a purged one). |
code | string | The record's code. |
content_type | string | The stored content's media type; unset when unknown. |
created_at | timestamp | When the record was created. |
created_by | string | Username of the creating identity. |
description | string | Free-text description. |
file_count | integer/string | The number of files a collected step artifact's archive carries; unset for artifacts stored as raw content. |
id | string | The record's identity. |
image | ImageArtifact | An image record's facts (below); unset for every other kind. |
kind | string | The artifact's kind: "" (a file archive or raw content) or image — a typed image record whose only bytes are an optional SBOM. |
labels | array of string | Labels stored on the artifact, part of its resolution identity. |
node_path | string | The owning node's path. |
purged_at | timestamp | Set when retention purged the artifact's content: the metadata row remains, the bytes are gone. |
step_id | string | The storing step's id; empty for artifacts stored directly on a node. |
ArtifactFilter
ArtifactFilter is the typed estate-index vocabulary. All fields combine with AND; empty fields do not restrict.
| Field | Type | Meaning |
|---|---|---|
kind | string | Keep artifacts of this kind: image for the typed image records. |
node_path_start | string | Keep artifacts whose node path starts with this string (the v1 filter[node_path_start] contract): "/projects/web" matches the project and everything under it. |
NodeArtifact
NodeArtifact is one artifact metadata record — the v1 artifact serialization typed with its scope references.
| Field | Type | Meaning |
|---|---|---|
byte_size | integer/string | The stored content's size in bytes; unset when the content metadata is unknown (an upstream-written row, or a purged one). |
code | string | The record's code. |
content_type | string | The stored content's media type; unset when unknown. |
created_at | timestamp | When the record was created. |
created_by | string | Username of the creating identity. |
description | string | Free-text description. |
file_count | integer/string | The number of files a collected step artifact's archive carries; unset for artifacts stored as raw content. |
id | string | The record's identity. |
image | ImageArtifact | An image record's facts (below); unset for every other kind. |
kind | string | The artifact's kind: "" (a file archive or raw content) or image — a typed image record whose only bytes are an optional SBOM. |
labels | array of string | Labels stored on the artifact, part of its resolution identity. |
node_path | string | The owning node's path. |
purged_at | timestamp | Set when retention purged the artifact's content: the metadata row remains, the bytes are gone. |
step_id | string | The storing step's id; empty for artifacts stored directly on a node. |
ImageArtifact
ImageArtifact is the record of a built image: what was built, where it is, and under which run and commit — never the image's bytes, which live in the registry the record names.
| Field | Type | Meaning |
|---|---|---|
detail | map of string | Backend facts: platform, base image, size… |
digest | string | The content digest the backend reports (sha256:…), or the backend's unique resource id prefixed id: where it reports none. |
identifier | string | The backend's image reference: a registry reference with tag, an AMI id, a gallery image version resource id. |
provider | string | The build-provider code the producing step dispatched with. |
registry | string | The registry code the image was pushed to; the identifier is relative to that record's host and repository. |
source_commit | string | The sealed commit the producing run executed. |
Related pages
opschain docs artifacts— the component page: how steps collect and store artifacts, and how retention treats them.opschain docs retention— the purge clocks behindpurged_at.opschain docs resources/step— the storing step.opschain docs image-builds— the build providers and registries behind an image record.