---
title: "Reservation data model"
url: "https://docs.unified.to/property/reservation/model"
description: "The Reservation data model object in Unified's Reservation API: 31 fields, including created_at, updated_at and listing_id, with types and enum values."
date: "2026-10-29T08:41:27.988Z"
updated: "2026-10-29T08:41:27.988Z"
---
# Reservation data model

Updated: October 29, 2026

 View field support, webhooks, and list parameters for each integration on the [Supported Integrations](https://docs.unified.to/property/integrations.md) page. 

| Field                         | Type                 | Required | Description                                                                                                                                                  |
| ----------------------------- | -------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ |
| id                            | string               | No       | unique identifier for the reservation                                                                                                                        |
| created\_at                   | string (date-time)   | No       | when the reservation was created (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)                                                                                    |
| updated\_at                   | string (date-time)   | No       | when the reservation was last updated (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)                                                                               |
| listing\_id                   | string               | No       | pointer to the Property Listing that is booked                                                                                                               |
| unittype\_ids                 | string\[\]           | No       | Property Unittypes (room types) that are booked                                                                                                              |
| guest\_id                     | string               | No       | pointer to the Property Guest who made the reservation                                                                                                       |
| guest\_name                   | string               | No       | the primary guest full name                                                                                                                                  |
| guest\_email                  | string               | No       | the primary guest email address                                                                                                                              |
| guest\_phone                  | string               | No       | the primary guest telephone number                                                                                                                           |
| status                        | enum                 | No       | the reservation status Values: INQUIRY, PENDING, CONFIRMED, CANCELLED, CHECKED\_IN, CHECKED\_OUT, NO\_SHOW, OTHER                                            |
| source                        | string               | No       | the booking channel, eg. Airbnb, Booking.com or direct                                                                                                       |
| confirmation\_code            | string               | No       | the booking channel confirmation code                                                                                                                        |
| start\_at                     | string (date-time)   | No       | the arrival (check-in) date (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)                                                                                         |
| end\_at                       | string (date-time)   | No       | the departure (check-out) date (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)                                                                                      |
| estimated\_arrival\_time      | string               | No       | the guest estimated arrival time (HH:mm, local time)                                                                                                         |
| estimated\_departure\_time    | string               | No       | the guest estimated departure time (HH:mm, local time)                                                                                                       |
| nights                        | number               | No       | number of nights                                                                                                                                             |
| guests                        | number               | No       | total number of guests                                                                                                                                       |
| adults                        | number               | No       | number of adults                                                                                                                                             |
| children                      | number               | No       | number of children                                                                                                                                           |
| infants                       | number               | No       | number of infants                                                                                                                                            |
| pets                          | number               | No       | number of pets                                                                                                                                               |
| currency                      | string               | No       | ISO 4217 currency code                                                                                                                                       |
| total\_amount                 | number               | No       | the total price of the reservation                                                                                                                           |
| paid\_amount                  | number               | No       | the amount already paid                                                                                                                                      |
| balance\_amount               | number               | No       | the remaining balance                                                                                                                                        |
| line\_items                   | PropertyLineitem\[\] | No       | price breakdown (base price, fees, taxes, discounts)                                                                                                         |
| line\_items\[\].type          | enum                 | No       | base price, fee, tax, discount or deposit Values: BASE, FEE, TAX, DISCOUNT, DEPOSIT, OTHER                                                                   |
| line\_items\[\].name          | string               | No       | the line item name, eg. Cleaning fee                                                                                                                         |
| line\_items\[\].description   | string               | No       | free-text description of the line item                                                                                                                       |
| line\_items\[\].amount        | number               | No       | the line item amount (discounts are negative)                                                                                                                |
| line\_items\[\].is\_mandatory | boolean              | No       | whether the line item is mandatory                                                                                                                           |
| notes                         | string               | No       | free-text notes about the reservation                                                                                                                        |
| cancelled\_at                 | string (date-time)   | No       | when the reservation was cancelled (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)                                                                                  |
| web\_url                      | string               | No       | the reservation URL                                                                                                                                          |
| metadata                      | PropertyMetadata\[\] | No       | custom field values                                                                                                                                          |
| metadata\[\].id               | string               | No       | the custom field identifier                                                                                                                                  |
| metadata\[\].slug             | string               | No       | the custom field key                                                                                                                                         |
| metadata\[\].value            | object               | No       | the custom field value                                                                                                                                       |
| metadata\[\].namespace        | string               | No       | the scope or origin of the custom field                                                                                                                      |
| metadata\[\].format           | enum                 | No       | the data type of the value Values: TEXT, NUMBER, DATE, BOOLEAN, FILE, TEXTAREA, SINGLE\_SELECT, MULTIPLE\_SELECT, MEASUREMENT, PRICE, YES\_NO, CURRENCY, URL |
| metadata\[\].extra\_data      | object               | No       | additional data about the custom field                                                                                                                       |

## TypeScript

```typescript
export type PropertyReservation = {
	id?: string; // unique identifier for the reservation
	created_at?: string-time; // when the reservation was created (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
	updated_at?: string-time; // when the reservation was last updated (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
	listing_id?: string; // pointer to the Property Listing that is booked
	unittype_ids?: string[]; // Property Unittypes (room types) that are booked
	guest_id?: string; // pointer to the Property Guest who made the reservation
	guest_name?: string; // the primary guest full name
	guest_email?: string; // the primary guest email address
	guest_phone?: string; // the primary guest telephone number
	status?: 'INQUIRY' | 'PENDING' | 'CONFIRMED' | 'CANCELLED' | 'CHECKED_IN' | 'CHECKED_OUT' | 'NO_SHOW' | 'OTHER'; // the reservation status
	source?: string; // the booking channel, eg. Airbnb, Booking.com or direct
	confirmation_code?: string; // the booking channel confirmation code
	start_at?: string-time; // the arrival (check-in) date (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
	end_at?: string-time; // the departure (check-out) date (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
	estimated_arrival_time?: string; // the guest estimated arrival time (HH:mm, local time)
	estimated_departure_time?: string; // the guest estimated departure time (HH:mm, local time)
	nights?: number; // number of nights
	guests?: number; // total number of guests
	adults?: number; // number of adults
	children?: number; // number of children
	infants?: number; // number of infants
	pets?: number; // number of pets
	currency?: string; // ISO 4217 currency code
	total_amount?: number; // the total price of the reservation
	paid_amount?: number; // the amount already paid
	balance_amount?: number; // the remaining balance
	line_items?: []; // price breakdown (base price, fees, taxes, discounts)
	notes?: string; // free-text notes about the reservation
	cancelled_at?: string-time; // when the reservation was cancelled (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)
	web_url?: string; // the reservation URL
	metadata?: []; // custom field values
	raw?: any; // raw data from the integration
} 
```

## Zod

```typescript
import { z } from 'zod';

export const ZodPropertyReservation = z.object({
	id: z.string().optional().describe("unique identifier for the reservation"),
	created_at: z.string-time().optional().describe("when the reservation was created (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"),
	updated_at: z.string-time().optional().describe("when the reservation was last updated (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"),
	listing_id: z.string().optional().describe("pointer to the Property Listing that is booked"),
	unittype_ids: z.array().optional().describe("Property Unittypes (room types) that are booked"),
	guest_id: z.string().optional().describe("pointer to the Property Guest who made the reservation"),
	guest_name: z.string().optional().describe("the primary guest full name"),
	guest_email: z.string().optional().describe("the primary guest email address"),
	guest_phone: z.string().optional().describe("the primary guest telephone number"),
	status: z.enum("INQUIRY", "PENDING", "CONFIRMED", "CANCELLED", "CHECKED_IN", "CHECKED_OUT", "NO_SHOW", "OTHER").optional().describe("the reservation status"),
	source: z.string().optional().describe("the booking channel, eg. Airbnb, Booking.com or direct"),
	confirmation_code: z.string().optional().describe("the booking channel confirmation code"),
	start_at: z.string-time().optional().describe("the arrival (check-in) date (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"),
	end_at: z.string-time().optional().describe("the departure (check-out) date (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"),
	estimated_arrival_time: z.string().optional().describe("the guest estimated arrival time (HH:mm, local time)"),
	estimated_departure_time: z.string().optional().describe("the guest estimated departure time (HH:mm, local time)"),
	nights: z.number().optional().describe("number of nights"),
	guests: z.number().optional().describe("total number of guests"),
	adults: z.number().optional().describe("number of adults"),
	children: z.number().optional().describe("number of children"),
	infants: z.number().optional().describe("number of infants"),
	pets: z.number().optional().describe("number of pets"),
	currency: z.string().optional().describe("ISO 4217 currency code"),
	total_amount: z.number().optional().describe("the total price of the reservation"),
	paid_amount: z.number().optional().describe("the amount already paid"),
	balance_amount: z.number().optional().describe("the remaining balance"),
	line_items: z.array().optional().describe("price breakdown (base price, fees, taxes, discounts)"),
	notes: z.string().optional().describe("free-text notes about the reservation"),
	cancelled_at: z.string-time().optional().describe("when the reservation was cancelled (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"),
	web_url: z.string().optional().describe("the reservation URL"),
	metadata: z.array().optional().describe("custom field values"),

});
```

## Python

```python
import dataclasses

@dataclasses.dataclass
class PropertyReservationStatus(str, Enum):
	INQUIRY = 'INQUIRY'
	PENDING = 'PENDING'
	CONFIRMED = 'CONFIRMED'
	CANCELLED = 'CANCELLED'
	CHECKED_IN = 'CHECKED_IN'
	CHECKED_OUT = 'CHECKED_OUT'
	NO_SHOW = 'NO_SHOW'
	OTHER = 'OTHER'

@dataclasses.dataclass
class PropertyReservation:
	"""unique identifier for the reservation"""
	id: Optional[str]
	"""when the reservation was created (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"""
	created_at: Optional[str]
	"""when the reservation was last updated (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"""
	updated_at: Optional[str]
	"""pointer to the Property Listing that is booked"""
	listing_id: Optional[str]
	"""Property Unittypes (room types) that are booked"""
	unittype_ids: Optional[List[List[str]]]
	"""pointer to the Property Guest who made the reservation"""
	guest_id: Optional[str]
	"""the primary guest full name"""
	guest_name: Optional[str]
	"""the primary guest email address"""
	guest_email: Optional[str]
	"""the primary guest telephone number"""
	guest_phone: Optional[str]
	"""the reservation status"""
	status: Optional[PropertyReservationStatus]
	"""the booking channel, eg. Airbnb, Booking.com or direct"""
	source: Optional[str]
	"""the booking channel confirmation code"""
	confirmation_code: Optional[str]
	"""the arrival (check-in) date (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"""
	start_at: Optional[str]
	"""the departure (check-out) date (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"""
	end_at: Optional[str]
	"""the guest estimated arrival time (HH:mm, local time)"""
	estimated_arrival_time: Optional[str]
	"""the guest estimated departure time (HH:mm, local time)"""
	estimated_departure_time: Optional[str]
	"""number of nights"""
	nights: Optional[int]
	"""total number of guests"""
	guests: Optional[int]
	"""number of adults"""
	adults: Optional[int]
	"""number of children"""
	children: Optional[int]
	"""number of infants"""
	infants: Optional[int]
	"""number of pets"""
	pets: Optional[int]
	"""ISO 4217 currency code"""
	currency: Optional[str]
	"""the total price of the reservation"""
	total_amount: Optional[int]
	"""the amount already paid"""
	paid_amount: Optional[int]
	"""the remaining balance"""
	balance_amount: Optional[int]
	"""price breakdown (base price, fees, taxes, discounts)"""
	line_items: Optional[PropertyPropertyReservationLine_items]
	"""free-text notes about the reservation"""
	notes: Optional[str]
	"""when the reservation was cancelled (ISO-8601 / YYYY-MM-DDTHH:MM:SSZ format)"""
	cancelled_at: Optional[str]
	"""the reservation URL"""
	web_url: Optional[str]
	"""custom field values"""
	metadata: Optional[PropertyPropertyReservationMetadata]

```
