{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "https://raw.githubusercontent.com/api-evangelist/airbnb/refs/heads/main/json-schema/airbnb-reservation-schema.json", "title": "Reservation", "type": "object", "properties": { "id": { "type": "string", "description": "The unique identifier of the reservation." }, "confirmation_code": { "type": "string", "description": "The human-readable confirmation code for the reservation." }, "status": { "type": "string", "description": "The current status of the reservation.", "enum": [ "pending", "accepted", "denied", "cancelled", "checked_in", "checked_out" ] }, "listing_id": { "type": "string", "description": "The identifier of the listing that was booked." }, "guest": { "$ref": "#/components/schemas/Guest" }, "check_in": { "type": "string", "format": "date", "description": "The guest check-in date." }, "check_out": { "type": "string", "format": "date", "description": "The guest check-out date." }, "nights": { "type": "integer", "description": "The total number of nights in the reservation.", "minimum": 1 }, "guests_count": { "type": "integer", "description": "The number of guests included in the reservation.", "minimum": 1 }, "total_price": { "type": "number", "format": "double", "description": "The total price of the reservation in the listing currency." }, "currency": { "type": "string", "description": "The ISO 4217 currency code for the reservation pricing.", "pattern": "^[A-Z]{3}$" }, "host_payout": { "type": "number", "format": "double", "description": "The amount to be paid out to the host after fees." }, "created_at": { "type": "string", "format": "date-time", "description": "The timestamp when the reservation was created." }, "updated_at": { "type": "string", "format": "date-time", "description": "The timestamp when the reservation was last updated." } } }