---
title: "Promote a verified reconciliation image for a system runner pool"
method: POST
path: "/api/v1/ci/runner_pools/{id}/promote_reconciliation_runtime"
tags: ["ci"]
---

# Promote a verified reconciliation image for a system runner pool

`POST /api/v1/ci/runner_pools/{id}/promote_reconciliation_runtime`

## Request

- Base URL: `https://composal.com` (the document declares no server; this is the origin it was published from)
- URL: `https://composal.com/api/v1/ci/runner_pools/{id}/promote_reconciliation_runtime`
- Auth: HTTP bearer

Platform administrators only. Verifies deployed retained-image support and rejects concurrent pool configuration changes.

## Path parameters

- `id` string, required

## Request body

- object
  - `expected_image_version` string, required
  - `image_version` string, required

## Response `200`

Verified runtime promoted for future reconciliation generations

- object
  - `runner_pool_id` string, required
  - `runtime` object, required
    - `image_id` string, required
    - `image_version` string, required
    - `runtime_kind` string, required
    - `retained_reconciliation_images` boolean, required

## Other responses

- `401`: Unauthorized
- `403`: Platform administrator required
- `404`: Not found
- `409`: Runtime verification or expected configuration no longer matches
- `422`: Unprocessable entity
- `502`: Bad gateway

---

[API](https://skmtc.dev/composal/apis/vex-api.md) - [All operations](https://skmtc.dev/composal/apis/vex-api/llms.txt) - [OpenAPI document](https://skmtc.dev/composal/apis/vex-api/revisions/74298a24e040?raw)
