---
title: "Create a new booking."
method: POST
path: "/v2/bookings"
tags: ["Bookings"]
---

# Create a new booking.

`POST /v2/bookings`

## Request body

- BookingEditModel — Model for creating or updating a booking.
  - `arrival` string, date-time — Arrival date in property time zone in yyyy-MM-dd format, e.g. 2024-10-31.
  - `check_in` string, nullable — Check-in time in property time zone in 24 hour HH:mm format, e.g. 16:00. Not supported for blocks.
  - `check_in_end` string, nullable — Check-in end time in property time zone in 24 hour HH:mm format, e.g. 21:00 (optional). Not supported for blocks.
  - `check_out` string, nullable — Check-out time in property time zone in 24 hour HH:mm format, e.g. 09:00. Not supported for blocks.
  - `cleaning_date` string, date-time, nullable — Scheduled cleaning date and time in property time zone.
  - `departure` string, date-time — Departure date in property time zone in yyyy-MM-dd format, e.g. 2024-10-31.
  - `guest_id` integer, nullable — The contact related to this booking. Required for bookings, not allowed for blocked-off times.
  - `is_block` boolean — If this booking is a simple blocked-off time booking (true), or a full guest booking (false).
  - `notes` string, nullable — Internal notes for this booking.
  - `property_id` integer — The Id of the property for this booking.
  - `title` string, nullable — Title or label for this booking. Typically used for blocked-off times.

## Response `200`

A model representing the booking created.

- BookingViewModel
  - `id` integer — The ID of this record.
  - `fields` FieldValueModel[] — A collection of field names and values.
    - `code` string
    - `value` string
  - `tags` string[] — A collection of tag names.
  - `adults` integer
  - `agreements` BookingLeaseModel[]
    - `date` string, date-time
    - `name` string
    - `url` string
  - `arrival` string, date-time — Arrival date in property time zone.
  - `booked_utc` string, date-time, nullable
  - `canceled_utc` string, date-time, nullable
  - `cancellation_policy_description` string
  - `cancellation_policy_id` integer, nullable
  - `charges` BookingChargeModel[]
    - `amount` number
    - `commission_amount` number
    - `description` string
    - `expense_id` integer, nullable
    - `is_channel_managed` boolean
    - `is_commission_all` boolean
    - `is_expense_all` boolean
    - `is_taxable` boolean
    - `owner_amount` number
    - `owner_commission_percent` number
    - `position` integer
    - `rate` number
    - `rate_is_percent` boolean
    - `surcharge_id` integer, nullable
    - `tax_id` integer, nullable
    - `type` 'rent' | 'surcharge' | 'tax' | 'tax_other' | 'surcharge_other'
  - `check_in` string — Check-in time in property time zone in 24 hour HH:mm format, e.g. 16:00.
  - `check_in_end` string — Check-in end time in property time zone in 24 hour HH:mm format, e.g. 21:00 (optional).
  - `check_out` string — Check-out time in property time zone in 24 hour HH:mm format, e.g. 09:00.
  - `children` integer
  - `cleaning_date` string, date-time, nullable — Scheduled cleaning date and time in property time zone.
  - `created_utc` string, date-time — The date this booking was created in the system.
  - `currency_code` string
  - `departure` string, date-time — Departure date in property time zone.
  - `door_codes` BookingDoorCodeModel[]
    - `code` string
    - `lock_names` string
  - `form_key` string — Public form key for reference in guest form URL's.
  - `guest` GuestPartialModel — Partial details about the guest. For full details, use the guests endpoint.
    - `id` integer — The ID of this record.
    - `first_name` string
    - `last_name` string
  - `guest_id` integer, nullable
  - `infants` integer
  - `is_block` boolean — If this booking is a simple blocked-off time booking (true), or a full guest booking (false).
  - `listing_site` string
  - `notes` string
  - `owner_id` integer, nullable
  - `pending_until_utc` string, date-time, nullable
  - `pets` integer
  - `platform_email_address` string — A proxy email address provided by the OTA specifically for this booking.
  - `platform_reservation_number` string — The OTA reservation number, if applicable.
  - `property` PropertyPartialModel — Partial details about the property. For full details, use the properties endpoint.
    - `id` integer — The ID of this record.
    - `external_name` string
    - `internal_code` string
    - `name` string
    - `public_url` string
  - `property_id` integer
  - `quote_id` integer, nullable
  - `status` 'active' | 'canceled' | 'pending'
  - `thread_ids` integer[]
  - `title` string
  - `total_amount` number, nullable
  - `total_host_fees` number, nullable
  - `total_owed` number, nullable
  - `total_paid` number, nullable
  - `total_refunded` number, nullable
  - `travel_insurance` BookingTravelInsuranceModel
    - `can_purchase` boolean
    - `is_purchased` boolean
    - `purchase_url` string
  - `type` 'booking' | 'block' | 'quote_hold' | 'linked_availability' | 'owner'
  - `updated_utc` string, date-time, nullable — The date this booking was last updated in the system.

---

[API](https://skmtc.net/ownerrez/apis/ownerrez-api.md) · [All operations](https://skmtc.net/ownerrez/apis/ownerrez-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/ownerrez/ownerrez-api/versions/fa0c0f146039/schema)
