---
title: "Publish Loop"
method: POST
path: "/loops/{loop_id}/publish"
---

# Publish Loop

`POST /loops/{loop_id}/publish`

## Request

- Base URL: `https://api-docs.session-exchange.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api-docs.session-exchange.com/loops/{loop_id}/publish`
- Auth: none declared

Mediated promotion (specs/improvement-loop/v0.2 §S5). The loop NEVER
writes a bundle; the collector (promoter) verifies the gates and SIGNS the
champion with the vault/k8s key the loop cannot reach. This records a signed
publish authorization + emits loop.published; the actual bundle delivery to
the skills repo is an external/CI step that carries this signature, which the
bundle store verifies before serving (verify-before-serve).

## Path parameters

- `loop_id` string, required

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/session-exchange/apis/a4sx.md) · [All operations](https://skmtc.dev/session-exchange/apis/a4sx/llms.txt) · [OpenAPI document](https://skmtc.dev/session-exchange/apis/a4sx/revisions/abaefc33dfc7?raw)
