Buildpack Specification

The Buildpack API (currently 0.12) defines the contract between an individual buildpack and the lifecycle. It specifies the on-disk layout of a buildpack (buildpack.toml, bin/detect, bin/build), the build plan provides/requires graph, layer types (launch/build/cache), launch.toml and build.toml outputs, target declarations (os/arch/distros), SBOM emission, and the CNB_* environment variable contract.

Buildpack Specification is one of 7 APIs that buildpacks-io publishes on the APIs.io network.

This API exposes 4 JSON Schema definitions.

Tagged areas include Cloud Native Buildpacks, Buildpack API, Specification, and CNCF. The published artifact set on APIs.io includes API documentation, a JSON-LD context, and 4 JSON Schemas.

API entry from apis.yml

apis.yml Raw ↑
aid: buildpacks-io:buildpack-spec
name: Buildpack Specification
tags:
- Cloud Native Buildpacks
- Buildpack API
- Specification
- CNCF
humanURL: https://github.com/buildpacks/spec/blob/main/buildpack.md
properties:
- url: https://github.com/buildpacks/spec/blob/main/buildpack.md
  type: Documentation
- url: https://github.com/buildpacks/spec
  type: Repository
- url: json-schema/buildpacks-buildpack-toml-schema.json
  type: JSONSchema
- url: json-schema/buildpacks-build-plan-schema.json
  type: JSONSchema
- url: json-schema/buildpacks-launch-toml-schema.json
  type: JSONSchema
- url: json-structure/buildpacks-io-structure.json
  type: JSONStructure
- url: json-ld/buildpacks-io-context.jsonld
  type: JSONLD
description: The Buildpack API (currently 0.12) defines the contract between an individual buildpack and
  the lifecycle. It specifies the on-disk layout of a buildpack (buildpack.toml, bin/detect, bin/build),
  the build plan provides/requires graph, layer types (launch/build/cache), launch.toml and build.toml
  outputs, target declarations (os/arch/distros), SBOM emission, and the CNB_* environment variable contract.