---
title: "Create Booking"
method: POST
path: "/api/book"
tags: ["booking"]
---

# Create Booking

`POST /api/book`

## 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/book`
- Auth: none declared

Create a booking via Duffel.

Open to guests — cash Duffel tickets are sellable without a
Pointify account because Duffel holds the passenger record and
Stripe collects payment separately. Authenticated callers are
still identified via `optional_auth` so downstream analytics +
loyalty-card auto-sync still work; guests pass per-passenger
loyalty numbers inline on the booking payload instead.

The agent-assisted `/book/agent` variant below keeps
`require_auth` + a tier gate because that path charges against a
paid subscription and must know the caller.

## Request body

- BookingRequest
  - `offer_id` string, required
  - `passengers` PassengerInfo[], required
    - `first_name` string, required
    - `last_name` string, required
    - `middle_name` string, nullable
    - `date_of_birth` string, nullable
    - `email` string, nullable
    - `phone` string, nullable
    - `passport_number` string, nullable
    - `passport_expiry` string, nullable
    - `passport_country` string, nullable
    - `nationality` string, nullable
    - `gender` string, nullable
    - `title` string, nullable
    - `type` string, nullable
    - `infant_passenger_id` string, nullable
    - `known_traveler_number` string, nullable
    - `redress_number` string, nullable
    - `loyalty_programme_accounts` LoyaltyProgrammeAccount[]
      - `airline_iata_code` string, required
      - `account_number` string, required
  - `payment_amount` string, required
  - `payment_currency` string
  - `idempotency_key` string, nullable
  - `user_id` string, nullable
  - `seat_service_ids` 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)
