List build history for a custom template ref
import requests
url = "https://api.13-215-85-171.sslip.io/v1/templates/refs/{ref}/builds"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)curl --request GET \
--url https://api.13-215-85-171.sslip.io/v1/templates/refs/{ref}/builds \
--header 'Authorization: Bearer <token>'{
"builds": [
{
"build_id": "<string>",
"template_id": "<string>",
"name": "<string>",
"tags": [
"<string>"
],
"status": "waiting",
"build_backend": "native",
"source_type": "declarative",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"source_digest": "<string>",
"context_digest": "<string>",
"dockerfile_digest": "<string>",
"triggered_by": "<string>",
"queued_at": "2023-11-07T05:31:56Z",
"started_at": "2023-11-07T05:31:56Z",
"finished_at": "2023-11-07T05:31:56Z",
"duration_ms": 123,
"failure_phase": "<string>",
"cache_summary": {
"final_artifact_hits": 123,
"final_artifact_misses": 123,
"final_artifact_bypasses": 123,
"final_artifact_stores": 123,
"layer_hits": 123,
"layer_misses": 123,
"layer_bypasses": 123,
"layer_stores": 123,
"file_blob_hits": 123,
"file_blob_misses": 123,
"file_blob_bypasses": 123,
"file_blob_stores": 123
},
"artifact_availability": {
"status": "available",
"reason": "<string>"
},
"promotability": {
"status": "promotable",
"promotable": true,
"reason": "<string>"
},
"retention_expires_at": "2023-11-07T05:31:56Z",
"artifact_ids": [
"<string>"
]
}
],
"next_cursor": "<string>"
}{
"error": "<string>",
"code": "invalid_request",
"error_detail": {
"code": "unauthorized",
"message": "<string>",
"phase": "auth",
"retryable": true,
"suggested_action": "<string>",
"step_index": 123,
"attempt": 123,
"max_attempts": 123,
"cache_subject": "<string>",
"build_id": "<string>",
"request_id": "<string>",
"details": {}
},
"request_id": "<string>",
"build_id": "<string>"
}{
"error": "Missing or invalid bearer credential",
"code": "unauthorized",
"request_id": "req_123"
}{
"error": "<string>",
"code": "invalid_request",
"error_detail": {
"code": "unauthorized",
"message": "<string>",
"phase": "auth",
"retryable": true,
"suggested_action": "<string>",
"step_index": 123,
"attempt": 123,
"max_attempts": 123,
"cache_subject": "<string>",
"build_id": "<string>",
"request_id": "<string>",
"details": {}
},
"request_id": "<string>",
"build_id": "<string>"
}{
"error": "<string>",
"code": "invalid_request",
"error_detail": {
"code": "unauthorized",
"message": "<string>",
"phase": "auth",
"retryable": true,
"suggested_action": "<string>",
"step_index": 123,
"attempt": 123,
"max_attempts": 123,
"cache_subject": "<string>",
"build_id": "<string>",
"request_id": "<string>",
"details": {}
},
"request_id": "<string>",
"build_id": "<string>"
}Templates
List build history for a custom template ref
Returns durable build attempts for the logical template resolved by ref, including failed attempts that never produced artifacts and historical builds whose tags have since moved. If the template’s canonical ref itself ends with builds, the subresource remains one segment deeper, for example /v1/templates/refs/acme/builds/builds.
GET
/
v1
/
templates
/
refs
/
{ref}
/
builds
List build history for a custom template ref
import requests
url = "https://api.13-215-85-171.sslip.io/v1/templates/refs/{ref}/builds"
headers = {"Authorization": "Bearer <token>"}
response = requests.get(url, headers=headers)
print(response.text)curl --request GET \
--url https://api.13-215-85-171.sslip.io/v1/templates/refs/{ref}/builds \
--header 'Authorization: Bearer <token>'{
"builds": [
{
"build_id": "<string>",
"template_id": "<string>",
"name": "<string>",
"tags": [
"<string>"
],
"status": "waiting",
"build_backend": "native",
"source_type": "declarative",
"created_at": "2023-11-07T05:31:56Z",
"updated_at": "2023-11-07T05:31:56Z",
"source_digest": "<string>",
"context_digest": "<string>",
"dockerfile_digest": "<string>",
"triggered_by": "<string>",
"queued_at": "2023-11-07T05:31:56Z",
"started_at": "2023-11-07T05:31:56Z",
"finished_at": "2023-11-07T05:31:56Z",
"duration_ms": 123,
"failure_phase": "<string>",
"cache_summary": {
"final_artifact_hits": 123,
"final_artifact_misses": 123,
"final_artifact_bypasses": 123,
"final_artifact_stores": 123,
"layer_hits": 123,
"layer_misses": 123,
"layer_bypasses": 123,
"layer_stores": 123,
"file_blob_hits": 123,
"file_blob_misses": 123,
"file_blob_bypasses": 123,
"file_blob_stores": 123
},
"artifact_availability": {
"status": "available",
"reason": "<string>"
},
"promotability": {
"status": "promotable",
"promotable": true,
"reason": "<string>"
},
"retention_expires_at": "2023-11-07T05:31:56Z",
"artifact_ids": [
"<string>"
]
}
],
"next_cursor": "<string>"
}{
"error": "<string>",
"code": "invalid_request",
"error_detail": {
"code": "unauthorized",
"message": "<string>",
"phase": "auth",
"retryable": true,
"suggested_action": "<string>",
"step_index": 123,
"attempt": 123,
"max_attempts": 123,
"cache_subject": "<string>",
"build_id": "<string>",
"request_id": "<string>",
"details": {}
},
"request_id": "<string>",
"build_id": "<string>"
}{
"error": "Missing or invalid bearer credential",
"code": "unauthorized",
"request_id": "req_123"
}{
"error": "<string>",
"code": "invalid_request",
"error_detail": {
"code": "unauthorized",
"message": "<string>",
"phase": "auth",
"retryable": true,
"suggested_action": "<string>",
"step_index": 123,
"attempt": 123,
"max_attempts": 123,
"cache_subject": "<string>",
"build_id": "<string>",
"request_id": "<string>",
"details": {}
},
"request_id": "<string>",
"build_id": "<string>"
}{
"error": "<string>",
"code": "invalid_request",
"error_detail": {
"code": "unauthorized",
"message": "<string>",
"phase": "auth",
"retryable": true,
"suggested_action": "<string>",
"step_index": 123,
"attempt": 123,
"max_attempts": 123,
"cache_subject": "<string>",
"build_id": "<string>",
"request_id": "<string>",
"details": {}
},
"request_id": "<string>",
"build_id": "<string>"
}Authorizations
API key passed as Bearer token
Path Parameters
Canonical custom template ref.
Query Parameters
Available options:
waiting, building, ready, error, cancelled Template build backend. native is retained for declarative/OCI build requests and historical filters; Dockerfile build requests use buildkit.
Available options:
native, buildkit Available options:
declarative, dockerfile, oci_import, template_base Required range:
1 <= x <= 100