---
title: "Submit Request To Book"
method: POST
path: "/bookings/requests"
tags: ["Bookings"]
---

# Submit Request To Book

`POST /bookings/requests`

## Request

- Base URL: `http://localhost:8000`
- URL: `http://localhost:8000/bookings/requests`
- Auth: HTTP bearer

Submit an authenticated Request to Book for a non-PMS property.

## Headers

- `API-Version` '1'

## Request body

- BookingRequestCreate: Payload submitted by an authenticated guest.
  - `property_id` integer, required
  - `room_type_id` integer, nullable
  - `check_in` string, date, required
  - `check_out` string, date, required
  - `adults` integer
  - `children` integer
  - `accommodation_type` 'cabin' | 'site', required
  - `equipment_type` string, nullable
  - `equipment_length` string, nullable
  - `equipment_details` string, nullable
  - `first_name` string, required
  - `last_name` string, required
  - `email` string, email, required
  - `phone` string, required
  - `notes` string, nullable
  - `source_channel` string
  - `source_campaign` string, nullable
  - `source_locale` string, nullable
  - `source_metadata` object, nullable

## Response `201`

Request submitted successfully

- BookingRequestSubmitResponse: Response after successful request submission.
  - `request_id` integer, required
  - `reference_id` string, required
  - `status` string, required
  - `submitted_at` string, date-time, required
  - `message` string, required

## Other responses

- `400`: Invalid room type or payload
- `401`: Authentication required
- `403`: Property is not eligible for request-to-book
- `404`: Property not found
- `422`: Validation Error

---

[API](https://skmtc.dev/totalparks/apis/total-parks-public-api.md) · [All operations](https://skmtc.dev/totalparks/apis/total-parks-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/totalparks/apis/total-parks-public-api/revisions/dcb4c822e2c6?raw)
