Create Reservation

How to use the Create Reservation function to initiate new bookings through the CiiRUS-API.

Overview

The Create Reservation function allows you to create and add new Bookings using the CiiRUS-API. This guide provides instructions on the required parameters and values to successfully generate bookings for available units within your Inventory. With this feature, you can integrate booking functionality into your application.

Partners can choose between two options when creating reservations:

  1. Simplified Method (Recommended)
    1. Partners provide the basic reservation information and allow the CiiRUS system to calculate all charges, including taxes. The full financial breakdown is returned in the response.
  2. Custom Financials Method
    1. Partners may choose to supply a financials object with specific charges (e.g., rent, extras, etc.). As taxes cannot be controlled via the API when using this method, only include base charges — tax totals will be calculated systematically and returned in the response.

🗨️

For Option 2, we recommend first retrieving a quote using the Quote endpoint. The response provides a full breakdown of the reservation cost, which can then be used to assist with populating the reservation request accurately.

Endpoints Available

MethodEndpointDescription
POSTv2024.07.31/reservationsUse this endpoint to create a reservation.

Body Parameters

ParameterRequired / OptionalDescriptionData Type
"unit_id"RequiredUnique Identifier for Unit in Inventory for the reservation.int
"reference"OptionalOptional external reference number for the reservation.string
"type"RequiredIndicates the type of reservation, such as "confirmed".string
"details"RequiredAn object containing specific details related to the reservation.object
"financials"OptionalAn object containing financial details related to the booking.object
"total_amount"OptionalThe total amount of the booking, including all charges. Used only if "financials" is included.int

"details" Object Body Parameters

ParameterRequired / OptionalDescriptionData Type
"arrival"RequiredThe arrival date for the reservation.date-time
"departure"RequiredThe departure date for the reservation.date-time
"added"OptionalThe date-time the reservation is being created.date-time
"guests"RequiredAn object containing specific details related to the guest(s) associated with the reservation.array[objects]
"number_of_adults"OptionalThe number of adults included in the bookingint
"number_of_children"OptionalThe number of children included in the bookingint
"number_of_pets"OptionalThe number of pets included in the bookingint
"category_id"OptionalAn array containing details about additional Party Membersint
"comments"OptionalObject holding reservation comments.array[objects]

"guests" Object Body Parameters

ParameterRequired / OptionalDescriptionData Type
"id"OptionalCRM ID of the lead guest.int
"type"RequiredThe type of guest, "lead_guest".string
"title"OptionalThe title of the lead guest.string
"first_name"RequiredThe first name of the lead guest.string
"last_name"RequiredThe last name of the lead guest.string
"age"OptionalThe age of the lead guest.string
"phone_numbers"OptionalThe phone number(s) of the lead guest.array[strings]
"email_addresses"OptionalThe email address(es) of the lead guest.array[strings]
"address"OptionalThe mailing address of the lead guest.array[objects]
"notes"OptionalAdditional notes to add against the Lead Guest.string
"allow_marketing_emails"OptionalIndicates whether the Lead Guest allows marketing emails.boolean
"airbnb_guest_id"OptionalUnique identifier for an Airbnb guest.string

"address" Object Body Parameters

ParameterRequired / OptionalDescriptionData Type
"address_line_1"The first line of the lead guest's mailing address.stringstring
"address_line_2"The second line of the lead guest's mailing address.stringstring
"city"The City of the lead guest's mailing address.stringstring
"state_province"The State or Province of the lead guest's mailing address.stringstring
"country"The Country of the lead guest's mailing address.stringstring
"postal_code"The ZIP or Postal Code of the lead guest's mailing address.stringstring

"comments" Object Body Parameters

ParameterRequired / OptionalDescriptionData Type
"text"OptionalThe text of the commentstring
"type"OptionalThe type of comment. See Valid Enumerations for more details.string

"financials" Object Body Parameters

ParameterRequired / OptionalDescriptionData Type
"quote_as_super_site_user_id"OptionalAllows quoting as a specific user.int
"length_of_stay"OptionalIndicates if length-of-stay pricing is used.boolean
"pool_heat"OptionalIndicates if pool heat is desired/included.boolean
"discount_code"OptionalOptional Discount Code, provided by the Supplier.string
"charges"OptionalIndividual reservation charges.array[objects]
"total_amount"OptionalThe total value of the reservation.int
"payment_schedule"OptionalPayment breakdown with due dates.array[objects]

"charges" Object Body Parameters

ParameterRequired / OptionalDescriptionData Type
"item"OptionalThe name of the charge item.string
"id"OptionalThe unique identifier for the charge itemstring
"code"OptionalThe code associated with the charge itemstring
"applies_to_id"OptionalThe identifier specifying the charge item it applies tostring
"quantity"OptionalThe quantity of the charge itemint
"type"OptionalThe type of the charge item (see Valid Enumerations for more details.)string

"payment_schedule" Object Body Parameters

ParameterRequired / OptionalDescriptionData Type
"amount"OptionalScheduled amountint
"due_date"OptionalDue date of the payment.date-time

Response Definition

Response ItemDescriptionData Type
"id"Unique identifier for the reservation.int
"unit_id"Unique identifier for the unit associated with the reservation.int
"reference"Status of the reservation (e.g., "confirmed").string
"type"Denotes the source of the booking, like "TestSource".string
"management_company_user_id"Unique identifier for the Supplier associated with the reservation.int
"details"An object containing details about the associated reservation.object
"financials"An object containing financial details related to the reservation.object
"last_modified"Timestamp of the last modification.date-time

"details" Object

Response ItemDescriptionData Type
"arrival"Date and time of the guest's arrival.date-time
"departure"Date and time of the guest's departure.date-time
"added"Timestamp when the reservation was added.date-time
"scenario"Reservation Scenario ID.int
"comments"An array of comment objects.array[objects]
"guests"An array containing details about the guests.array[objects]
"number_of_adults"Number of adults in the reservation.int
"number_of_children"Number of children in the reservation.int
"number_of_pets"Number of pets in the reservation.int
"category"Reservation category code (e.g., "TOR").string
"category_id"Internal ID for the category.int
"category_description"Human-readable description of the category.string
"secure_details"An object containing access codes and secure info.array[objects]
"early_check_in"Indicates if early check-in has been allowed.boolean
"late_check_out"Indicates if late check-out has been allowed.boolean
"arrival_departure_info"Additional arrival/departure instructionsstring
"owner_reservation"Indicates whether the booking is an owner reservation or not.boolean
"unit_name"The supplier configured name of the reserved unit.string

"comments" Array

Response ItemDescriptionData Type
"text"The text content of the comment.string
"type"The type of comment type, e.g., "general".string

"guests" Array

Response ItemDescriptionData Type
"id"Unique identifier for the lead guest.int
"type"Guest type, like "lead_guest".string
"first_name"The first name of the lead guest.string
"last_name"The last name of the lead guest.string
"phone_numbers"The phone number(s) of the lead guest.array[string]
"email_addresses"The email address(es) of the lead guest.array[string]
"customer_address"The mailing address of the lead guest.array[objects]

"customer_address" Object

Response ItemDescriptionData Type
"address_line_1"The first line of the lead guest's mailing address.string
"address_line_2"The second line of the lead guest's mailing address.string
"city"The City of the lead guest's mailing address.string
"state_province"The State or Province of the lead guest's mailing address.string
"country"The Country of the lead guest's mailing address.string
"postal_code"The ZIP or Postal Code of the lead guest's mailing address.string

"secure_details" Object

Response ItemDescriptionData Type
"lock_box_code"Lockbox code for unit access, if applicable.string
"gate_code"Gate access code, if applicable, and configured by the Supplier.string
"alarm_code"Alarm code for unit access, if applicable, and configured by the Supplier.string
"wifi_ssid"WiFi network name, if applicable, and configured by the Supplier.string
"wifi_password"WiFi password, if applicable, and configured by the Supplier.string
"lobby_code"Lobby access code, if applicable, and configured by the Supplier.string
"fitness_room_code"Fitness room access code, if applicable, and configured by the Supplier.string
"pool_access_code"Pool access code, if applicable, and configured by the Supplier.string
"beach_access_code"Beach access code, if applicable, and configured by the Supplier.string

"financials" Object

Response ItemDescriptionData Type
"currency"The currency used for the reservation.string
"merchant_of_record"Identifies who the merchant of record is.string
"merchant_of_record_user"The ID of the user who is the merchant of record.int
"charges"An array of financial charge items.array[objects]
"payments"An array of payments that were made for the reservation.array[objects]
"payment_schedule"An array of scheduled payments.array[objects]
"total_paid"The total amount paid for the reservation to date.int
"total_value"The total booking value including taxes.int

"charges" Array

Response ItemDescriptionData Type
"item"The name of the charge item.string
"code"The code associated with the charge item.string
"applies_to_id"The identifier specifying the charge item it applies to.string
"quantity"The quantity of the charge item.int
"type"The type of the charge item.string
"value"The amount of the charge itemint

"payments" Array

Response ItemDescriptionData Type

"payment_schedule" Array

Response ItemDescriptionData Type
"value"The total payment value.int
"value_due"The amount still due for payment.int
"payment_type"The type of payment (e.g., "scheduled_payment")string
"payment_status"The status of the payment (e.g., "due")string
"due_date"The due date for the payment.string

Sample Request (Option 1)

curl --location 'https://api.ciiruspartners.com/v2024.07.31/reservations' \
--header 'Content-Type: application/json' \
--header 'Authorization: Basic {APIUsername:APIPassword}' \
--data '{
    "unit_id": 219264,
    "management_company_user_id": 42330,
    "details": {
        "arrival": "2025-07-07T16:00:00",
        "departure": "2025-07-10T10:00:00",        
        "guests": [
            {
                "type": "lead_guest",
                "first_name": "Test",
                "last_name": "Guest"
            }
        ]
    }

}'

Sample Request (Option 2)

Sample Response

{
    "id": 41853135,
    "unit_id": 219264,
    "reference": "",
    "type": "confirmed",
    "management_company_user_id": 42330,
    "details": {
        "arrival": "2025-07-07T16:00:00",
        "departure": "2025-07-10T10:00:00",
        "added": "2025-04-15T15:12:05.837",
        "scenario": 12,
        "comments": [
            {
                "text": "",
                "type": "general"
            }
        ],
        "guests": [
            {
                "id": 7966921,
                "type": "lead_guest",
                "first_name": "Test",
                "last_name": "Guest",
                "phone_numbers": [
                    ""
                ],
                "email_addresses": [
                    ""
                ],
                "customer_address": {
                    "address_line_1": "",
                    "address_line_2": "",
                    "city": "",
                    "state_province": "",
                    "country": "",
                    "postal_code": ""
                }
            }
        ],
        "number_of_adults": 1,
        "number_of_children": 0,
        "category": "TOR",
        "category_id": 16,
        "category_description": "Tour Operator Reservation",
        "secure_details": {
            "lock_box_code": "",
            "gate_code": "0606",
            "alarm_code": "0505",
            "wifi_ssid": "454547ffgg",
            "wifi_password": "0808",
            "lobby_code": "",
            "fitness_room_code": "",
            "pool_access_code": "",
            "beach_access_code": ""
        },
        "early_check_in": true,
        "late_check_out": false,
        "arrival_departure_info": "",
        "owner_reservation": false,
        "unit_name": "Test Property 1"
    },
    "financials": {
        "currency": "USD",
        "merchant_of_record": "agent",
        "merchant_of_record_user": 66673,
        "charges": [
            {
                "item": "Rental Rate Tax 1",
                "code": "Rent",
                "applies_to_id": "Rent",
                "quantity": 1,
                "type": "tax_one",
                "value": 3900000000
            },
            {
                "item": "Rental Rate Tax 2",
                "code": "Rent",
                "applies_to_id": "Rent",
                "quantity": 1,
                "type": "tax_two",
                "value": 3600000000
            },
            {
                "item": "Clean Fee",
                "code": "Clean",
                "applies_to_id": "Clean",
                "quantity": 1,
                "type": "clean_fee",
                "value": 28000000000
            },
            {
                "item": "Clean Fee Tax 1",
                "code": "Clean",
                "applies_to_id": "Clean",
                "quantity": 1,
                "type": "tax_one",
                "value": 1820000000
            },
            {
                "item": "Clean Fee Tax 2",
                "code": "Clean",
                "applies_to_id": "Clean",
                "quantity": 1,
                "type": "tax_two",
                "value": 1680000000
            }
        ],
        "payments": [],
        "payment_schedule": [
            {
                "value": 31500000000,
                "value_due": 31500000000,
                "payment_type": "scheduled_payment",
                "payment_status": "due",
                "due_date": "2025-06-09T00:00:00"
            }
        ],
        "total_paid": 0,
        "total_value": 99000000000
    },
    "last_modified": "2025-04-15T19:12:05.143"
}