---
title: "POST /api/icps/{id}/publish"
method: POST
path: "/api/icps/{id}/publish"
tags: ["icps"]
---

# POST /api/icps/{id}/publish

`POST /api/icps/{id}/publish`

## Request

- Base URL: `https://app.heykairon.com` (the document declares no server; this is the origin it was published from)
- URL: `https://app.heykairon.com/api/icps/{id}/publish`
- Auth: API key in header `x-api-key`

## Path parameters

- `id` string, required

## Request body

- PublishIcpDto
  - `ifDraftUpdatedAt` string, date-time: The `draft.updatedAt` you showed the operator. Publish then refuses (ICP_DRAFT_CHANGED) if the draft changed after, instead of publishing edits they did not see.

## Response `200`

---

[API](https://skmtc.dev/heykairon/apis/kairon-api.md) · [All operations](https://skmtc.dev/heykairon/apis/kairon-api/llms.txt) · [OpenAPI document](https://skmtc.dev/heykairon/apis/kairon-api/revisions/35de550d5938?raw)
