---
title: "Hold Seat"
method: POST
path: "/api/booking/seat-hold"
tags: ["booking", "seats"]
---

# Hold Seat

`POST /api/booking/seat-hold`

## Request

- Base URL: `https://api.pointifytravels.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.pointifytravels.com/api/booking/seat-hold`
- Auth: none declared

Hold a seat for this offer + passenger slot.

UPSERT on (offer_id, passenger_slot, segment_id) — changing which
seat a passenger sits in for a given leg replaces the prior hold
atomically. `status` always resets to 'held' because a user who
just picked a seat hasn't ticketed it yet.

## Request body

- SeatHoldInput
  - `offer_id` string, required
  - `passenger_slot` integer, required
  - `row` integer, required
  - `column` string, required
  - `service_id` string, required
  - `segment_id` string, required
  - `price_cents` integer
  - `currency` string

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/pointifytravels/apis/pointify-deal-engine.md) · [All operations](https://skmtc.dev/pointifytravels/apis/pointify-deal-engine/llms.txt) · [OpenAPI document](https://skmtc.dev/pointifytravels/apis/pointify-deal-engine/revisions/4350142a4216?raw)
