The collection of artifacts that influenced the build including sources,
dependencies, build tools, base images, and so on. This is considered to be
incomplete unless metadata.completeness.materials is true. Unset or null is
equivalent to empty.
The collection of artifacts that influenced the build including sources,
dependencies, build tools, base images, and so on. This is considered to be
incomplete unless metadata.completeness.materials is true. Unset or null is
equivalent to empty.
The collection of artifacts that influenced the build including sources,
dependencies, build tools, base images, and so on. This is considered to be
incomplete unless metadata.completeness.materials is true. Unset or null is
equivalent to empty.
The collection of artifacts that influenced the build including sources,
dependencies, build tools, base images, and so on. This is considered to be
incomplete unless metadata.completeness.materials is true. Unset or null is
equivalent to empty.
The collection of artifacts that influenced the build including sources,
dependencies, build tools, base images, and so on. This is considered to be
incomplete unless metadata.completeness.materials is true. Unset or null is
equivalent to empty.
Identifies the configuration used for the build.
When combined with materials, this SHOULD fully describe the build,
such that re-running this recipe results in bit-for-bit identical output
(if the build is reproducible).
Identifies the configuration used for the build.
When combined with materials, this SHOULD fully describe the build,
such that re-running this recipe results in bit-for-bit identical output
(if the build is reproducible).
Identifies the configuration used for the build.
When combined with materials, this SHOULD fully describe the build,
such that re-running this recipe results in bit-for-bit identical output
(if the build is reproducible).
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-09-04 UTC."],[],[],null,["# Interface SlsaProvenanceOrBuilder (2.73.0)\n\nVersion latestkeyboard_arrow_down\n\n- [2.73.0 (latest)](/java/docs/reference/grafeas/latest/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.71.0](/java/docs/reference/grafeas/2.71.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.69.0](/java/docs/reference/grafeas/2.69.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.68.0](/java/docs/reference/grafeas/2.68.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.65.0](/java/docs/reference/grafeas/2.65.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.64.0](/java/docs/reference/grafeas/2.64.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.63.0](/java/docs/reference/grafeas/2.63.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.61.0](/java/docs/reference/grafeas/2.61.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.60.0](/java/docs/reference/grafeas/2.60.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.59.0](/java/docs/reference/grafeas/2.59.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.58.0](/java/docs/reference/grafeas/2.58.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.57.0](/java/docs/reference/grafeas/2.57.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.56.0](/java/docs/reference/grafeas/2.56.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.55.0](/java/docs/reference/grafeas/2.55.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.54.0](/java/docs/reference/grafeas/2.54.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.53.0](/java/docs/reference/grafeas/2.53.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.52.0](/java/docs/reference/grafeas/2.52.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.50.0](/java/docs/reference/grafeas/2.50.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.49.0](/java/docs/reference/grafeas/2.49.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.48.0](/java/docs/reference/grafeas/2.48.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.47.0](/java/docs/reference/grafeas/2.47.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.46.0](/java/docs/reference/grafeas/2.46.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.45.0](/java/docs/reference/grafeas/2.45.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.44.0](/java/docs/reference/grafeas/2.44.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.43.0](/java/docs/reference/grafeas/2.43.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.42.0](/java/docs/reference/grafeas/2.42.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.41.0](/java/docs/reference/grafeas/2.41.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.40.0](/java/docs/reference/grafeas/2.40.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.38.0](/java/docs/reference/grafeas/2.38.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.37.0](/java/docs/reference/grafeas/2.37.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.36.0](/java/docs/reference/grafeas/2.36.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.35.0](/java/docs/reference/grafeas/2.35.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.34.0](/java/docs/reference/grafeas/2.34.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.33.0](/java/docs/reference/grafeas/2.33.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.32.0](/java/docs/reference/grafeas/2.32.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.31.0](/java/docs/reference/grafeas/2.31.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.30.0](/java/docs/reference/grafeas/2.30.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.29.0](/java/docs/reference/grafeas/2.29.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.28.0](/java/docs/reference/grafeas/2.28.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.25.0](/java/docs/reference/grafeas/2.25.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.24.0](/java/docs/reference/grafeas/2.24.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.23.0](/java/docs/reference/grafeas/2.23.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.22.0](/java/docs/reference/grafeas/2.22.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.21.0](/java/docs/reference/grafeas/2.21.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.20.0](/java/docs/reference/grafeas/2.20.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.19.0](/java/docs/reference/grafeas/2.19.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.18.0](/java/docs/reference/grafeas/2.18.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.17.0](/java/docs/reference/grafeas/2.17.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.16.0](/java/docs/reference/grafeas/2.16.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.15.0](/java/docs/reference/grafeas/2.15.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.14.0](/java/docs/reference/grafeas/2.14.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.13.0](/java/docs/reference/grafeas/2.13.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.12.0](/java/docs/reference/grafeas/2.12.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.10.0](/java/docs/reference/grafeas/2.10.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.9.0](/java/docs/reference/grafeas/2.9.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.8.0](/java/docs/reference/grafeas/2.8.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.7.0](/java/docs/reference/grafeas/2.7.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.6.0](/java/docs/reference/grafeas/2.6.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.5.0](/java/docs/reference/grafeas/2.5.0/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.4.5](/java/docs/reference/grafeas/2.4.5/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.3.1](/java/docs/reference/grafeas/2.3.1/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.2.3](/java/docs/reference/grafeas/2.2.3/io.grafeas.v1.SlsaProvenanceOrBuilder)\n- [2.1.3](/java/docs/reference/grafeas/2.1.3/io.grafeas.v1.SlsaProvenanceOrBuilder) \n\n public interface SlsaProvenanceOrBuilder extends MessageOrBuilder\n\nImplements\n----------\n\n[MessageOrBuilder](https://cloud.google.com/java/docs/reference/protobuf/latest/com.google.protobuf.MessageOrBuilder.html)\n\nMethods\n-------\n\n### getBuilder()\n\n public abstract SlsaProvenance.SlsaBuilder getBuilder()\n\nrequired\n\n`.grafeas.v1.SlsaProvenance.SlsaBuilder builder = 1;`\n\n### getBuilderOrBuilder()\n\n public abstract SlsaProvenance.SlsaBuilderOrBuilder getBuilderOrBuilder()\n\nrequired\n\n`.grafeas.v1.SlsaProvenance.SlsaBuilder builder = 1;`\n\n### getMaterials(int index)\n\n public abstract SlsaProvenance.Material getMaterials(int index)\n\nThe collection of artifacts that influenced the build including sources,\ndependencies, build tools, base images, and so on. This is considered to be\nincomplete unless metadata.completeness.materials is true. Unset or null is\nequivalent to empty.\n\n`repeated .grafeas.v1.SlsaProvenance.Material materials = 4;`\n\n### getMaterialsCount()\n\n public abstract int getMaterialsCount()\n\nThe collection of artifacts that influenced the build including sources,\ndependencies, build tools, base images, and so on. This is considered to be\nincomplete unless metadata.completeness.materials is true. Unset or null is\nequivalent to empty.\n\n`repeated .grafeas.v1.SlsaProvenance.Material materials = 4;`\n\n### getMaterialsList()\n\n public abstract List\u003cSlsaProvenance.Material\u003e getMaterialsList()\n\nThe collection of artifacts that influenced the build including sources,\ndependencies, build tools, base images, and so on. This is considered to be\nincomplete unless metadata.completeness.materials is true. Unset or null is\nequivalent to empty.\n\n`repeated .grafeas.v1.SlsaProvenance.Material materials = 4;`\n\n### getMaterialsOrBuilder(int index)\n\n public abstract SlsaProvenance.MaterialOrBuilder getMaterialsOrBuilder(int index)\n\nThe collection of artifacts that influenced the build including sources,\ndependencies, build tools, base images, and so on. This is considered to be\nincomplete unless metadata.completeness.materials is true. Unset or null is\nequivalent to empty.\n\n`repeated .grafeas.v1.SlsaProvenance.Material materials = 4;`\n\n### getMaterialsOrBuilderList()\n\n public abstract List\u003c? extends SlsaProvenance.MaterialOrBuilder\u003e getMaterialsOrBuilderList()\n\nThe collection of artifacts that influenced the build including sources,\ndependencies, build tools, base images, and so on. This is considered to be\nincomplete unless metadata.completeness.materials is true. Unset or null is\nequivalent to empty.\n\n`repeated .grafeas.v1.SlsaProvenance.Material materials = 4;`\n\n### getMetadata()\n\n public abstract SlsaProvenance.SlsaMetadata getMetadata()\n\n`.grafeas.v1.SlsaProvenance.SlsaMetadata metadata = 3;`\n\n### getMetadataOrBuilder()\n\n public abstract SlsaProvenance.SlsaMetadataOrBuilder getMetadataOrBuilder()\n\n`.grafeas.v1.SlsaProvenance.SlsaMetadata metadata = 3;`\n\n### getRecipe()\n\n public abstract SlsaProvenance.SlsaRecipe getRecipe()\n\nIdentifies the configuration used for the build.\nWhen combined with materials, this SHOULD fully describe the build,\nsuch that re-running this recipe results in bit-for-bit identical output\n(if the build is reproducible).\n\n`.grafeas.v1.SlsaProvenance.SlsaRecipe recipe = 2;`\n\n### getRecipeOrBuilder()\n\n public abstract SlsaProvenance.SlsaRecipeOrBuilder getRecipeOrBuilder()\n\nIdentifies the configuration used for the build.\nWhen combined with materials, this SHOULD fully describe the build,\nsuch that re-running this recipe results in bit-for-bit identical output\n(if the build is reproducible).\n\n`.grafeas.v1.SlsaProvenance.SlsaRecipe recipe = 2;`\n\n### hasBuilder()\n\n public abstract boolean hasBuilder()\n\nrequired\n\n`.grafeas.v1.SlsaProvenance.SlsaBuilder builder = 1;`\n\n### hasMetadata()\n\n public abstract boolean hasMetadata()\n\n`.grafeas.v1.SlsaProvenance.SlsaMetadata metadata = 3;`\n\n### hasRecipe()\n\n public abstract boolean hasRecipe()\n\nIdentifies the configuration used for the build.\nWhen combined with materials, this SHOULD fully describe the build,\nsuch that re-running this recipe results in bit-for-bit identical output\n(if the build is reproducible).\n\n`.grafeas.v1.SlsaProvenance.SlsaRecipe recipe = 2;`"]]