---
title: "Confirm Booking Proposal"
method: PUT
path: "/api/v1/booking-proposals/{observation_id}/confirm"
tags: ["booking-proposals"]
---

# Confirm Booking Proposal

`PUT /api/v1/booking-proposals/{observation_id}/confirm`

## Path parameters

- `observation_id` string, uuid, required

## Request body

- ConfirmProposalRequest — Optional human edits applied when confirming a proposal. Anything omitted keeps the model's value. A supplied ``property_id`` must come with its ``property_code``.
  - `property_id` string, uuid, nullable
  - `property_code` string, nullable
  - `requested_checkin` string, date, nullable
  - `requested_checkout` string, date, nullable
  - `party_size` integer, nullable

## Response `200`

Successful Response

- ConfirmProposalResponse — Result of confirming a proposal. ``confirmed_observation_id`` is the new authoritative ``human_confirmed`` observation (None if the same confirmation was already recorded).
  - `confirmed_observation_id` string, uuid, nullable, required

## Other responses

- `404` — Proposal or log not found
- `422` — Validation Error

## Changes

> 25 revisions in range; 1 not diffed.

- **2026-09-03** `d65b8fefae34` — 2 info
  - added the optional property `detail/items/ctx` to the response with the `422` status
  - added the optional property `detail/items/input` to the response with the `422` status

[Change history](https://skmtc.dev/getanana/apis/cleon-api/changes/api/v1/booking-proposals/:observation_id/confirm/put.md)

---

[API](https://skmtc.dev/getanana/apis/cleon-api.md) · [All operations](https://skmtc.dev/getanana/apis/cleon-api/llms.txt) · [OpenAPI document](https://skmtc.dev/getanana/apis/cleon-api/revisions/704de2d43c75?raw)
