---
title: "Get build details"
method: GET
path: "/builds/{id}"
---

# Get build details

`GET /builds/{id}`

## Path parameters

- `id` string, required

## Response `200`

Build details

- Build
  - `id` string, required — Build job identifier
  - `status` 'queued' | 'building' | 'pushing' | 'ready' | 'failed' | 'cancelled', required — Build job status
  - `tags` Tags — User-defined key-value tags.
  - `queue_position` integer, nullable — Position in build queue (only when status is queued)
  - `image_digest` string, nullable — Digest of built image (only when status is ready)
  - `image_ref` string, nullable — Full image reference (only when status is ready)
  - `error` string, nullable — Error message (only when status is failed)
  - `provenance` BuildProvenance
    - `base_image_digest` string — Pinned base image digest used
    - `source_hash` string — SHA256 hash of source tarball
    - `lockfile_hashes` object — Map of lockfile names to SHA256 hashes
    - `buildkit_version` string — BuildKit version used
    - `timestamp` string, date-time — Build completion timestamp
  - `created_at` string, date-time, required — Build creation timestamp
  - `started_at` string, date-time, nullable — Build start timestamp
  - `completed_at` string, date-time, nullable — Build completion timestamp
  - `duration_ms` integer, nullable — Build duration in milliseconds
  - `builder_instance_id` string, nullable — Instance ID of the builder VM (for debugging)

## Other responses

- `404` — Build not found
- `500` — Internal server error

---

[API](https://skmtc.net/kernel/apis/hypeman-api.md) · [All operations](https://skmtc.net/kernel/apis/hypeman-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/kernel/hypeman-api/versions/b4642bb950dc/schema)
