# res:harmonics API The Res:Harmonics Public API provides seamless access to powerful tools for managing and automating property operations. Designed for developers and businesses, the API enables integration with Res:Harmonics’ platform to manage bookings, availability, rates, and guest experiences in real-time. With comprehensive documentation and robust endpoints, users can customise workflows, synchronise systems, and build tailored solutions to enhance operational efficiency. Whether you’re running serviced apartments, Build-to-Rent schemes, or co-living spaces, the Res:Harmonics API is your gateway to streamlined property management. Version: 3.0.4 License: License of API ## Servers Testing API ``` https://apiv3.resharmonics-dev.com ``` Production API ``` https://apiv3.rerumapp.uk ``` ## Security ### OAuth2 Testing API - OAuth2 security scheme for API access. Use client credentials to obtain a token. Type: oauth2 ### X-Auth-Token Type: apiKey In: header Name: X-Auth-Token ## Download OpenAPI description [res:harmonics API](https://apidocs.resharmonics.com/_spec/apis/resharmonics-pms.yaml) ## Access Groups Access Group entities from the Property Management System (PMS), used to map access groups from integrated access control systems, providing detailed information and management capabilities for access control within buildings and facilities. ### Retrieve list of Access Groups - [GET /api/v3/accessGroups](https://apidocs.resharmonics.com/apis/resharmonics-pms/access-groups/listallaccessgroups.md): Retrieve list of Access Groups based on search parameters such as building ID and name. Supports pagination. ### Create Access Group - [POST /api/v3/accessGroups](https://apidocs.resharmonics.com/apis/resharmonics-pms/access-groups/createaccessgroup.md): Create a new Access Group within the Property Management System (PMS). This endpoint allows you to add a new access group, which can be used to manage access control within buildings and facilities. ### Retrieve Access Group - [GET /api/v3/accessGroups/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/access-groups/getunitaccessgroupbyid_1.md): Retrieve an Access Group by Id. This endpoint allows you to fetch detailed information about a specific Access Group using its unique identifier. The response includes all relevant details of the Access Group. ### Update Access Group - [PUT /api/v3/accessGroups/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/access-groups/updateaccessgroup.md): Update an Access Group within the Property Management System (PMS). The Access Group must exist to be updated. This endpoint allows you to modify the details of an existing access group, ensuring that access control information is kept up-to-date. ## Activities Activities are tasks created in the PMS ### Retrieve a list of all activities. - [GET /api/v3/activities](https://apidocs.resharmonics.com/apis/resharmonics-pms/activities/getnewactivities.md) ### Retrieve the specified activity note - [GET /api/v3/activities/notes/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/activities/getactivitynote.md) ### Retrieve an activity specified by activity id. - [GET /api/v3/activities/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/activities/retrieveactivity.md) ### Retrieve the notes for an activity specified by activity identifier. - [GET /api/v3/activities/{id}/notes](https://apidocs.resharmonics.com/apis/resharmonics-pms/activities/getactivitynotes.md) ### Create a note on an activity specified by activity identifier. - [POST /api/v3/activities/{id}/notes](https://apidocs.resharmonics.com/apis/resharmonics-pms/activities/createactivitynotes.md) ### Update the status of an activity specified by activity id. - [PUT /api/v3/activities/{id}/status](https://apidocs.resharmonics.com/apis/resharmonics-pms/activities/updateactivitystatus_1.md) ## Area Area Entity from the Property Management System (PMS). Areas are part of the geography of the PMS and are used to define the location of properties, including their hierarchical structure within cities and regions. ### Retrieve list of areas - [GET /api/v3/areas](https://apidocs.resharmonics.com/apis/resharmonics-pms/area/listallareas.md): Retrieve a list of areas within the Property Management System (PMS). This endpoint allows you to fetch details about various geographical areas, including their hierarchical structure within cities and regions. Areas are used to define the location of properties and are essential for organizing and managing properties effectively within the PMS. ### Create a new area - [POST /api/v3/areas](https://apidocs.resharmonics.com/apis/resharmonics-pms/area/createarea.md): Creates a new area within the Property Management System (PMS) with the provided details. Areas help in organizing properties, defining operational zones, and generating location-based insights. This endpoint is useful for adding new areas to the system for better management and reporting. The request body should contain the necessary details for the new area. If the creation is successful, the newly created area's details will be returned. In case of an unexpected system error, a will be triggered. ### Retrieve an area by Id - [GET /api/v3/areas/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/area/getareabyid.md): Retrieve the details of a specific area within the Property Management System (PMS) using its unique identifier. This endpoint allows you to fetch comprehensive information about a particular geographical area, including its hierarchical structure within cities and regions. Areas are essential for organizing and managing properties effectively within the PMS. ### Update an existing area - [PUT /api/v3/areas/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/area/updatearea.md): Updates an existing area within the Property Management System (PMS) with the provided details. Areas help in organizing properties, defining operational zones, and generating location-based insights. This endpoint is useful for modifying existing areas to reflect changes in geographical areas or operational zones. The request body should contain the updated details for the area. If the specified city ID does not exist, a error will be returned. In case of an unexpected system error, a will be triggered. ### Delete a area by Id - [DELETE /api/v3/areas/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/area/deleteareabyid.md): Deletes a specific area within the Property Management System (PMS) using its unique ID. Areas help in organizing properties, defining operational zones, and generating location-based insights. This endpoint is useful for removing areas that are no longer relevant or needed in the system. The area will be marked as deleted rather than permanently removed to maintain historical data integrity. If the specified area ID does not exist, a error will be returned. In case of an unexpected system error, a will be triggered. ## Availabilities Used to search for availability and pricing, including chargeable for specific dates. This endpoint allows users to query the availability of properties within the property management system (PMS), taking into account various parameters such as date ranges, unit types, guest counts, and promotional codes. It provides detailed information on available units, their rates, and any applicable restrictions or conditions. ### Retrieve real-time room availability - [GET /api/v3/availabilities](https://apidocs.resharmonics.com/apis/resharmonics-pms/availabilities/availabilitysearch.md): Retrieve real-time room availability and corresponding pricing based on specified criteria such as date range, room type, occupancy, and applicable rate plans ### Retrieve intervals of availability - [GET /api/v3/availabilities/unit/{unitId}/intervals](https://apidocs.resharmonics.com/apis/resharmonics-pms/availabilities/findavailabilityintervalsperunit.md): Retrieve intervals of availability for a unit specified by unit id ## Billing Frequencies Billing Frequency entity from the Property Management System (PMS), used to define the intervals at which billing occurs. This helps in organizing and managing financial operations efficiently within the PMS. Billing frequencies are essential for ensuring timely and accurate billing processes, which are crucial for maintaining financial stability and customer satisfaction within the PMS. ### Retrieve all billing frequencies - [GET /api/v3/billingFrequencies](https://apidocs.resharmonics.com/apis/resharmonics-pms/billing-frequencies/getbillingfrequencies.md): Retrieve a list of all billing frequencies within the Property Management System (PMS). This endpoint allows you to fetch details about different billing intervals, which help in organizing and managing various financial operations efficiently within the PMS. ### Retrieve billing frequency with specified id - [GET /api/v3/billingFrequencies/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/billing-frequencies/getbillingfrequencybyid.md): Retrieve the details of a specific billing frequency within the Property Management System (PMS) using its unique identifier. This endpoint allows you to fetch comprehensive information about a particular billing interval, including its characteristics and associated behaviors. Billing frequencies are essential for organizing and managing various financial operations efficiently within the PMS. ## Booking Types Booking Type entity from the Property Management System (PMS), used to categorize bookings and define different behaviors. Booking types help in organizing and managing various booking categories within the PMS, ensuring efficient handling of reservations and associated operations. ### Retrieve all booking types - [GET /api/v3/bookingTypes](https://apidocs.resharmonics.com/apis/resharmonics-pms/booking-types/getbookingtypes.md): Retrieve a list of all booking types within the Property Management System (PMS). This endpoint allows you to fetch details about different booking categories, which help in organizing and managing various reservations and associated operations efficiently within the PMS. ### Retrieve booking type with specified id - [GET /api/v3/bookingTypes/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/booking-types/getbookingtypebyid.md): Retrieve the details of a specific booking type within the Property Management System (PMS) using its unique identifier. This endpoint allows you to fetch comprehensive information about a particular booking category, including its characteristics and associated behaviors. Booking types are essential for organizing and managing various reservations and operations efficiently within the PMS. ## Bookings Bookings entity from the PMS, the booking is the main entity for a reservation, it contains all the information about the reservation, combined with a list of room stays which represent the individual stays in the units ### Search for bookings - [GET /api/v3/bookings](https://apidocs.resharmonics.com/apis/resharmonics-pms/bookings/listallbookings.md): Search for bookings via a variety of optional filters within the Property Management System (PMS). This endpoint allows you to filter bookings based on date ranges, statuses, unit IDs, booking contact IDs, and other criteria, providing a flexible way to retrieve specific booking information as needed. ### Create a booking/enquiry - [POST /api/v3/bookings](https://apidocs.resharmonics.com/apis/resharmonics-pms/bookings/createbooking.md): This endpoint is used to create a new booking with room stays in a ENQUIRY status. If 'reserveForMinutes' is specified the availability will be held for the number of minutes specified. Once the booking is created use the 'updateStatuses' endpoint to change the status to PENDING, CONFIRMED or CHECKED_IN. ### Create a payment record against a booking. - [POST /api/v3/bookings/{bookingId}/payments](https://apidocs.resharmonics.com/apis/resharmonics-pms/bookings/reconcilebookingpayments.md): Creates a payment record against a booking. The payment record will be reconciled against any outstanding invoices. Where necessary invoices will be auto posted. The payDueBefore parameter can be used to specify invoices up to a certain date to be paid. If there is insufficient outstanding on invoices, the payment is rejected. ### Update roomstay statuses on a specified booking. - [PUT /api/v3/bookings/{bookingId}/updateStatuses](https://apidocs.resharmonics.com/apis/resharmonics-pms/bookings/updatebookingstatus.md): This endpoint allows you to update the statuses of room stays associated with a specific booking within the Property Management System (PMS). Room stay statuses can include various states such as CONFIRMED, CHECKED_IN, CHECKED_OUT, etc. Updating these statuses helps in managing the booking lifecycle and ensuring accurate tracking of room occupancy and availability. ### Retrieve a booking and its associated data. - [GET /api/v3/bookings/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/bookings/getbookingdtobyidentifier.md): Retrieve detailed information about a specific booking within the Property Management System (PMS). This includes all associated data such as room stays, invoices, notes, and tags. This endpoint ensures comprehensive access to all relevant booking details, facilitating efficient management and tracking of reservations. ### Get custom fields for a booking - [GET /api/v3/bookings/{id}/customFields](https://apidocs.resharmonics.com/apis/resharmonics-pms/bookings/getcustomfieldsforbooking.md): Retrieve all custom fields associated with a specific booking record in the booking module of the PMS. The response includes a list of custom fields, each containing details such as field name, type, and value. This endpoint is useful for accessing additional information stored in custom fields that are not part of the standard booking attributes. ### Retrieve the financial summary for a specified booking - [GET /api/v3/bookings/{id}/financialSummary](https://apidocs.resharmonics.com/apis/resharmonics-pms/bookings/getbookingpricebreakdown.md): Retrieve a detailed financial summary for a specific booking within the Property Management System (PMS). This includes all charges, payments, and adjustments related to the booking, providing a comprehensive overview of the booking's financial status. This endpoint ensures that all financial transactions linked to the booking are accessible, facilitating efficient financial management and tracking. ### Retrieve list of all notes for specified booking - [GET /api/v3/bookings/{id}/notes](https://apidocs.resharmonics.com/apis/resharmonics-pms/bookings/getnotesbybookingid.md): Retrieve a comprehensive list of all notes associated with a specific booking within the Property Management System (PMS). Notes provide detailed information about the booking, including comments, updates, and additional context. This endpoint ensures that all notes linked to the booking are accessible, facilitating efficient management and tracking of reservations. ### Record a note against a specified booking - [POST /api/v3/bookings/{id}/notes](https://apidocs.resharmonics.com/apis/resharmonics-pms/bookings/createbookingnote.md): Record a note against a specified booking within the Property Management System (PMS). This endpoint allows you to add comments, updates, or additional information related to a booking. Notes provide detailed context and history for the booking, ensuring comprehensive tracking and management of reservations. ### Retrieve list of all room stays for specified booking - [GET /api/v3/bookings/{id}/roomStays](https://apidocs.resharmonics.com/apis/resharmonics-pms/bookings/getroomstaysbybookingid.md): Retrieve a comprehensive list of all room stays associated with a specific booking within the Property Management System (PMS). This endpoint provides detailed information about each room stay, including the status, duration, and associated unit. It ensures that all room stays linked to the booking are accessible, facilitating efficient management and tracking of reservations. ### Retrieve list of all invoices for specified booking - [GET /api/v3/bookings/{id}/salesInvoices](https://apidocs.resharmonics.com/apis/resharmonics-pms/bookings/getinvoicesbybookingid.md): Retrieve a comprehensive list of all invoices associated with a specific booking within the Property Management System (PMS). This endpoint provides detailed financial information related to the booking, including all charges, payments, and adjustments. It ensures that all financial transactions linked to the booking are accessible, facilitating efficient financial management and tracking. ### Retrieve list of all tags for specified booking - [GET /api/v3/bookings/{id}/tags](https://apidocs.resharmonics.com/apis/resharmonics-pms/bookings/gettagsbybookingid.md): Retrieve a comprehensive list of all tags associated with a specific booking within the Property Management System (PMS). Tags provide additional metadata and categorization for bookings, allowing for better organization and filtering. This endpoint ensures that all tags linked to the booking are accessible, facilitating efficient management and tracking of reservations. ## Building Represents the Building entity within the Property Management System (PMS). This includes comprehensive property details such as the building's name, address, facilities, operational attributes, and any associated metadata. The Building entity is essential for managing and integrating property data, ensuring accurate and up-to-date information for operational and administrative purposes. ### Retrieve list of buildings - [GET /api/v3/buildings](https://apidocs.resharmonics.com/apis/resharmonics-pms/building/listallbuildings.md): Retrieve a list of all buildings managed within the PMS. The response includes essential information for each building, such as its unique ID, name, address, facilities, and operational status. Optional query parameters can be included to refine the results, such as filtering by city, operational status, or specific attributes. This endpoint is particularly useful for displaying a catalogue of properties, managing building records, or integrating building data with external systems. ### Create a new building - [POST /api/v3/buildings](https://apidocs.resharmonics.com/apis/resharmonics-pms/building/createbuilding.md): Create a new building record in the property module of the PMS. The request body should contain the necessary details for the building, such as name, address, facilities, and operational attributes. Upon successful creation, the response will include the newly created building's details. ### Retrieve a building by ID - [GET /api/v3/buildings/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/building/getbuildingbyid.md): Fetch detailed information about a specific building within the PMS using its unique identifier. The response includes details such as the building's name, address, facilities, operational status, and any associated metadata. This endpoint is typically used to view or manage property-specific information. ### Update an existing building - [PUT /api/v3/buildings/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/building/updatebuilding.md): Update an existing building record in the property module of the PMS. The request body should contain the updated details for the building, such as name, address, facilities, and operational attributes. Upon successful update, the response will include the updated building's details. ### Delete a building by ID - [DELETE /api/v3/buildings/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/building/deletebuildingbyid.md): Delete a specific building record from the property module of the PMS using its unique identifier. This operation will remove the building and all associated data from the system. If the specified building ID does not exist, a not found error will be returned. ### Get access Codes for a building - [GET /api/v3/buildings/{id}/accessCodes](https://apidocs.resharmonics.com/apis/resharmonics-pms/building/getaccesscodeforbuilding.md): Retrieve all access codes associated with a specific building record in the property module of the PMS. ### Get custom fields for a building - [GET /api/v3/buildings/{id}/customFields](https://apidocs.resharmonics.com/apis/resharmonics-pms/building/getcustomfieldsforbuilding.md): Retrieve all custom fields associated with a specific building record in the property module of the PMS. The response includes a list of custom fields, each containing details such as field name, type, and value. This endpoint is useful for accessing additional information stored in custom fields that are not part of the standard building attributes. ## Channels Represents sales channels within the Property Management System (PMS), allowing users to categorize different sales channels or booking mediums. Sales channels capture details such as the channel operator, commission, and other criteria. This functionality enhances searchability, reporting, and segmentation by enabling property managers to create and manage custom channels tailored to their operational needs. Channels can be used for filtering, grouping, and applying business logic to different entities across the PMS, supporting improved organization and data management. ### Retrieve all Channels - [GET /api/v3/channels](https://apidocs.resharmonics.com/apis/resharmonics-pms/channels/listchannels.md): Fetch a list of all channels within the Property Management System (PMS). This endpoint is useful for retrieving detailed information about channels, including their names and descriptions. The response includes a list of channels, which can be used for categorizing and organizing various system entities. If no channels are found, an empty list will be returned. In case of an unexpected system error, a will be triggered. ### Retrieve a specific Channel - [GET /api/v3/channels/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/channels/getchannelbyid.md): Fetch a specific channel within the Property Management System (PMS). This endpoint is useful for retrieving detailed information about a specific channel, including its name and description. If the channel is not found, a response will be triggered. In case of an unexpected system error, a will be triggered. ## City Represents the City entity within the PMS, including details such as the city's name, geographic location, and any associated properties or operational data. This entity is used to categorise and manage properties by location, enabling filtering and reporting based on city-level information. ### Retrieve list of cities - [GET /api/v3/cities](https://apidocs.resharmonics.com/apis/resharmonics-pms/city/listallcities.md): Fetch a comprehensive list of cities available within the PMS. The response includes details for each city, such as its name, unique identifier, address, facilities, and operational status. Optional query parameters can be used to filter the results by criteria such as location, status, or associated city. This endpoint is useful for managing property inventories and facilitating searches across multiple cities. ### Create a new city - [POST /api/v3/cities](https://apidocs.resharmonics.com/apis/resharmonics-pms/city/createcity.md): Creates a new city within the Property Management System (PMS) with the provided details. Cities help in organizing properties, defining operational zones, and generating location-based insights. This endpoint is useful for adding new regions to the system for better management and reporting. The request body should contain the necessary details for the new city. If the creation is successful, the newly created city's details will be returned. In case of an unexpected system error, a will be triggered. ### Retrieve a city by id - [GET /api/v3/cities/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/city/getcitybyid.md): Fetch detailed information about a specific city within the PMS using its unique identifier. The response includes the city's name, associated properties, and any relevant metadata. This endpoint is commonly used to retrieve location-specific data to support property management and reporting functions. ### Update an existing city - [PUT /api/v3/cities/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/city/updatecity.md): Updates an existing city within the Property Management System (PMS) with the provided details. Cities help in organizing properties, defining operational zones, and generating location-based insights. This endpoint is useful for modifying existing citys to reflect changes in geographical areas or operational zones. The request body should contain the updated details for the city. If the specified city ID does not exist, a error will be returned. In case of an unexpected system error, a will be triggered. ### Delete a city by Id - [DELETE /api/v3/cities/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/city/deletecitybyid.md): Deletes a specific city within the Property Management System (PMS) using its unique ID. Cities help in organizing properties, defining operational zones, and generating location-based insights. This endpoint is useful for removing cities that are no longer relevant or needed in the system. The city will be marked as deleted rather than permanently removed to maintain historical data integrity. If the specified city ID does not exist, a error will be returned. In case of an unexpected system error, a will be triggered. ## Companies Represents the Company entities within the PMS, which include detailed information about organisations associated with properties, bookings, or other business operations. The Company entity contains attributes such as the company name, contact information, address, industry type, and relationships with contacts or accounts. It is used to manage corporate accounts, track business partnerships, and enable streamlined handling of organisation-level interactions within the system. ### Retrieve list of companies by search filters - [GET /api/v3/companies](https://apidocs.resharmonics.com/apis/resharmonics-pms/companies/listcompanies.md): Retrieve a paginated list of companies from the PMS based on specified search filters. Optional query parameters include company name, email address, telephone number, referrer, industry, market segment, and account ID. Each filter allows partial matches using wildcards for greater flexibility in searching. If no filters are provided, the endpoint returns all available companies. The response contains key details for each company, such as name, contact information, and industry, presented in a paginated format to facilitate navigation. This endpoint is ideal for managing corporate accounts, identifying business partnerships, and integrating company information with other systems. Pagination controls can be used to manage the size and order of results. ### Create a new company - [POST /api/v3/companies](https://apidocs.resharmonics.com/apis/resharmonics-pms/companies/createcompany.md): Create a new company record in the PMS by providing the company details in the request body. The input JSON payload should include information such as the company's name, contact details, industry, and other relevant attributes. The authenticated user is associated with the creation for audit purposes. Upon successful creation, the response returns the full details of the newly created company, including its unique identifier. This endpoint is essential for adding new organisations to the system for management and operational purposes. ### Retrieve company specified by company ID - [GET /api/v3/companies/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/companies/getcompanybyid.md): Retrieve detailed information about a specific company in the PMS by providing its unique company ID. The response includes comprehensive data such as the company's name, contact information, address, industry, and any associated metadata. If the specified company ID does not exist, a 'Not Found' error will be returned. This endpoint is useful for viewing and managing individual company records, enabling efficient retrieval of corporate account details. ### Update a company record - [PUT /api/v3/companies/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/companies/updatecompany.md): Update an existing company record in the PMS by providing the company's unique ID and updated details in the request body. The input JSON payload should include the fields to be updated, such as the company's name, contact information, industry, or other attributes. The system verifies the existence of the company before applying the updates, and any attempt to update a non-existent company will result in a 'Not Found' error. Upon successful update, the response returns the full details of the updated company. This endpoint ensures efficient management of company records while maintaining data integrity. ### Get contacts for a company - [GET /api/v3/companies/{id}/contacts](https://apidocs.resharmonics.com/apis/resharmonics-pms/companies/getcontactsforcompany.md): Retrieve all contacts associated with a specific company record in the CRM module of the PMS. The response includes a list of contact summary records, each containing details such as id, first name and last name. This endpoint is useful for accessing all company related contacts where only basic contact information is required. ### Get custom fields for a company - [GET /api/v3/companies/{id}/customFields](https://apidocs.resharmonics.com/apis/resharmonics-pms/companies/getcustomfieldsforcompany.md): Retrieve all custom fields associated with a specific company record in the CRM module of the PMS. The response includes a list of custom fields, each containing details such as field name, type, and value. This endpoint is useful for accessing additional information stored in custom fields that are not part of the standard company attributes. ## Contacts Represents the Contacts entity within the PMS CRM module, encompassing information about individuals or organisations associated with properties. This entity includes details such as names, contact information (e.g., phone numbers, email addresses), roles, and relationship to specific properties or bookings. It is used for managing customer relationships, tracking communication history, and facilitating operations such as guest management or corporate account handling. ### Returns a list of contacts - [GET /api/v3/contacts](https://apidocs.resharmonics.com/apis/resharmonics-pms/contacts/retrievecontacts.md): Retrieve a paginated list of contacts from the CRM module of the PMS. This endpoint supports optional query parameters to filter the results, including email address, first name, last name, telephone number, and account ID. If no filters are provided, the endpoint returns all available contacts in the system. The response includes a paginated list of contact records with key details, such as names and contact information, making it suitable for displaying contact directories or integrating with external systems. Pagination parameters can also be used to control the size and order of the result set. ### Create a contact - [POST /api/v3/contacts](https://apidocs.resharmonics.com/apis/resharmonics-pms/contacts/createcontact.md): Create a new contact record in the CRM module of the PMS. This endpoint accepts a JSON payload containing the contact's details, such as name, contact information (e.g., email, phone), role, and any related metadata. The authenticated user's details are used to associate the creation with an authorised account. Upon successful creation, the response returns the newly created contact's data, including its unique identifier. This endpoint is essential for adding new individuals or organisations to the contact database for guest management or operational purposes. ### Retrieve contact using contact ID - [GET /api/v3/contacts/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/contacts/getcontactbyid.md): Fetch detailed information about a specific contact in the CRM module of the PMS using their unique contact ID. The response includes key details such as the contact's name, contact information (e.g., email, phone), role, associated organisation, and any linked properties or bookings. This endpoint is essential for accessing and managing individual contact records for guest management, corporate accounts, or operational purposes. ### Update a contact record - [PUT /api/v3/contacts/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/contacts/updatecontact.md): Update an existing contact record in the CRM module of the PMS. This endpoint requires the contact's unique ID as a path variable and a JSON payload containing the updated contact details, such as name, contact information, role, or related metadata. The system verifies the existence of the contact and applies locking mechanisms to prevent concurrent modifications during the update process. Upon successful completion, the updated contact record is saved, and the response includes the latest contact details. This endpoint is essential for maintaining up-to-date contact information and ensuring data integrity in the CRM module. ### Get custom fields for a contact - [GET /api/v3/contacts/{id}/customFields](https://apidocs.resharmonics.com/apis/resharmonics-pms/contacts/getcustomfieldsforcontact.md): Retrieve all custom fields associated with a specific contact record in the CRM module of the PMS. The response includes a list of custom fields, each containing details such as field name, type, and value. This endpoint is useful for accessing additional information stored in custom fields that are not part of the standard contact attributes. ### Get notes from a contact record - [GET /api/v3/contacts/{id}/notes](https://apidocs.resharmonics.com/apis/resharmonics-pms/contacts/getcontactnotes.md): Retrieve all notes associated with a specific contact record in the CRM module of the PMS. The response includes a list of notes, each containing details such as the note's content, creation date, author, and any associated tags or categories. This endpoint is useful for tracking communication history, documenting interactions, and maintaining a comprehensive record of engagements with contacts. ## Cost Centres Cost Centres API for managing financial products and services. ### Retrieve list of all cost centres - [GET /api/v3/costCentres](https://apidocs.resharmonics.com/apis/resharmonics-pms/cost-centres/listallproducts.md): Fetch a comprehensive list of cost centres available within the PMS. The response includes details for each cost centre, such as its name, unique identifier, and operational status. This endpoint is useful for managing financial products and services. ### Retrieve cost centre by id - [GET /api/v3/costCentres/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/cost-centres/getbyid_1.md): Fetch a specific cost centre by its unique identifier. The response includes details such as the name, code, and export name of the cost centre. This endpoint is useful for retrieving detailed information about a specific cost centre. ## Country Provides endpoints for managing Country entities within the Property Management System (PMS). These operations include retrieving country details, creating new country records, and updating existing country information. Country entities store essential geographical and regulatory data, such as country names, ISO codes, and associated regional settings. This functionality supports property localisation, tax configurations, currency settings, and compliance with international regulations. ### Retrieve list of countries - [GET /api/v3/countries](https://apidocs.resharmonics.com/apis/resharmonics-pms/country/listallcountries.md): Retrieve a paginated list of countries stored within the Property Management System (PMS). This endpoint supports optional filtering by country name using the query parameter, which allows partial matching for flexible searches. The response includes key country details such as country name, ISO codes, and other relevant metadata. This endpoint is useful for managing country-specific configurations, including localisation, tax settings, and currency associations. If no search criteria are provided, all available country records will be returned in a paginated format. ### Retrieve a country by ID - [GET /api/v3/countries/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/country/getcountrybyid.md): Fetch detailed information about a specific country within the Property Management System (PMS) by providing its unique ID. The response includes essential country details such as the country's name, ISO codes, and any associated metadata. This endpoint is commonly used for retrieving country-specific settings related to localisation, tax regulations, and currency configurations. If the specified country ID does not exist, a error will be returned. In case of an unexpected system error, a will be triggered. ## Developments Represents the Developments entity within the Property Management System (PMS), which is used to manage real estate developments, property projects, or grouped property assets. A development typically consists of multiple buildings or units and includes key details such as location, associated properties, construction status, and project timelines. This entity supports large-scale property management by enabling structured organisation, tracking of development progress, and integration with booking, pricing, and operational workflows. ### Retrieve list of developments - [GET /api/v3/developments](https://apidocs.resharmonics.com/apis/resharmonics-pms/developments/listalldevelopments.md): Retrieve a paginated list of developments within the Property Management System (PMS). This endpoint supports optional filtering by development name, area ID, or area name, allowing flexible search criteria. Each development represents a property project or a group of buildings and includes key details such as name, location, and associated properties. The response provides a structured list of developments, which is useful for managing large-scale property assets, tracking project status, and integrating with booking and operational workflows. If no filters are applied, all available developments will be returned in a paginated format. ### Create a new development - [POST /api/v3/developments](https://apidocs.resharmonics.com/apis/resharmonics-pms/developments/createdevelopment.md): Create a new development within the Property Management System (PMS). This endpoint allows you to add a new development with its associated properties, location, and other relevant details. The request body should contain the development information in the form of a DevelopmentDTO. If the creation is successful, the response will include the newly created development's details. In case of validation errors or system issues, appropriate error responses will be returned. ### Retrieve a development by ID - [GET /api/v3/developments/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/developments/getdevelopmentbyid.md): Fetch detailed information about a specific development within the Property Management System (PMS) using its unique ID. The response includes key details such as the development's name, associated buildings, location, status, and other relevant metadata. This endpoint is useful for retrieving structured property development data, supporting asset management, and integrating with booking and operational workflows. If the specified development ID does not exist, a error will be returned. In case of an unexpected system error, a will be triggered. ### Update an existing development - [PUT /api/v3/developments/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/developments/updatedevelopment.md): Update the details of an existing development within the Property Management System (PMS). This endpoint allows you to modify the development's properties, location, and other relevant details. The request body should contain the updated information in the form of a DevelopmentDTO. If the specified development ID does not exist, a error will be returned. In case of validation errors or system issues, appropriate error responses will be returned. ### Delete a development by ID - [DELETE /api/v3/developments/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/developments/deletedevelopmentbyid.md): Delete an existing development within the Property Management System (PMS) using its unique ID. This endpoint allows you to remove a development and all its associated data from the system. If the specified development ID does not exist, a error will be returned. In case of system errors during the deletion process, a will be triggered. ### Retrieve features and facilities for a development - [GET /api/v3/developments/{id}/featuresFacilities](https://apidocs.resharmonics.com/apis/resharmonics-pms/developments/getfeaturefacilities_1.md): Fetch a list of features and facilities associated with a specific development using its unique ID. This endpoint returns detailed information about amenities, facilities, and special features available within the development. The response is paginated and includes both standard and custom features that characterize the development. If the specified development ID does not exist, a error will be returned. In case of system errors during retrieval, a will be triggered. ### Update (replace) feature facilities for a development - [PUT /api/v3/developments/{id}/featuresFacilities](https://apidocs.resharmonics.com/apis/resharmonics-pms/developments/updatefeaturefacilities_1.md): Update the list of feature facilities associated with a specific development using its unique ID. This endpoint allows you to replace the existing feature facilities with a new set of facilities, updating the development's amenities and services. The request body should contain a list of feature facility IDs to be linked. If the specified development ID does not exist, a error will be returned. In case of system errors during the update process, a will be triggered. ### Link (add) feature facilities to a development - [POST /api/v3/developments/{id}/featuresFacilities/link](https://apidocs.resharmonics.com/apis/resharmonics-pms/developments/linkfacilitiestodevelopment.md): Link existing feature facilities to a specific development using its unique ID. This endpoint allows you to associate multiple feature facilities with a development, enhancing its amenities and services. The request body should contain a list of feature facility IDs to be linked. If the specified development ID does not exist, a error will be returned. In case of system errors during the linking process, a will be triggered. ### Unlink (remove) feature facilities from a development - [POST /api/v3/developments/{id}/featuresFacilities/unlink](https://apidocs.resharmonics.com/apis/resharmonics-pms/developments/deletefeaturefacilities_1.md): Unlink existing feature facilities from a specific development using its unique ID. This endpoint allows you to remove multiple feature facilities from a development, updating its amenities and services. The request body should contain a list of feature facility IDs to be unlinked. If the specified development ID does not exist, a error will be returned. In case of system errors during the unlinking process, a will be triggered. ### Retrieve development images - [GET /api/v3/developments/{id}/images](https://apidocs.resharmonics.com/apis/resharmonics-pms/developments/getdevelopmentimages.md): Fetch a paginated list of images associated with a specific development using its unique ID. This endpoint allows you to retrieve images that are linked to the development, which can include photos of the property, architectural designs, or other relevant visuals. The response includes image details such as file name, size, and type. If the specified development ID does not exist, a error will be returned. In case of system errors during retrieval, a will be triggered. ### Upload a new development image - [POST /api/v3/developments/{id}/images/upload](https://apidocs.resharmonics.com/apis/resharmonics-pms/developments/createnewdevelopmentimage.md): Upload a new image for a specific development using its unique ID. This endpoint allows you to add images that are linked to the development, which can include photos of the property, architectural designs, or other relevant visuals. The uploaded file should be provided as a multipart file in the request. If the specified development ID does not exist, a error will be returned. In case of system errors during the upload process, a will be triggered. ### Delete a development image by ID - [DELETE /api/v3/developments/{id}/images/{imageId}](https://apidocs.resharmonics.com/apis/resharmonics-pms/developments/deletedevelopmentimage.md): Delete an existing image associated with a specific development using its unique ID. This endpoint allows you to remove an image that is linked to the development. If the specified development or image ID does not exist, a error will be returned. In case of system errors during the deletion process, a will be triggered. ## Extras Represents Extras within the Property Management System (PMS), which are additional services or products that can be added to a booking. Extras may include amenities such as parking, breakfast, airport transfers, housekeeping services, or any custom add-ons offered by the property. These entities are used to enhance guest experiences, provide personalised services, and generate additional revenue streams. Extras can be configured with pricing, availability rules, and booking conditions to ensure seamless integration with reservation workflows. ### Search for chargeable extras - [GET /api/v3/extras](https://apidocs.resharmonics.com/apis/resharmonics-pms/extras/searchallextras.md): Retrieve a paginated list of chargeable extras within the Property Management System (PMS). Chargeable extras represent additional services or products that can be added to bookings, such as parking, meals, or cleaning services. This endpoint allows filtering by billing frequency, building ID, and whether the extra is available through the Internet Booking Engine (IBE). The response includes details about each extra, such as pricing, availability, and applicable billing rules. If an invalid billing frequency is provided, a error will be returned. If no filters are applied, all available chargeable extras will be returned in a paginated format, making it easier to manage and integrate additional services into property operations. ### Retrieve compulsory chargeable extras for a rate ID - [GET /api/v3/extras/{rateId}](https://apidocs.resharmonics.com/apis/resharmonics-pms/extras/retrievecompulsoryextrasforrateid.md): Fetch a list of compulsory chargeable extras associated with a specific rate code within the Property Management System (PMS). Compulsory extras are additional services or fees that must be included when booking a rate, such as cleaning fees, resort fees, or mandatory meal plans. This endpoint requires the as a path variable and a date range ( and ) as query parameters to determine the applicable extras for the specified period. The response includes details about each extra, including pricing, validity dates, and availability. This functionality is useful for ensuring that mandatory add-ons are applied correctly in booking workflows and pricing calculations. If the rate code does not exist or is invalid, an appropriate error response will be returned. ### Record a payment against an extra attached to a room stay - [POST /api/v3/extras/{roomStayExtraId}/payment](https://apidocs.resharmonics.com/apis/resharmonics-pms/extras/updateextrapayment.md): Registers a payment for a chargeable extra linked to a specific room stay within the Property Management System (PMS). This endpoint requires the as a path variable to identify the extra and a payment request body containing the payment details. It verifies the existence of the room stay extra and checks for any associated sales invoices. If an outstanding balance remains, the payment is processed and recorded. The response includes financial details related to the transaction, such as the payment reference and updated invoice status. If the extra does not exist, the invoice is already paid, or there are no invoices to process, a error will be returned. ## Feature Facility Represents Feature Facility entities within the Property Management System (PMS). Feature Facilities are used to categorize and manage various facilities associated with properties, such as amenities, services, and operational features. This functionality helps in organizing properties, defining operational capabilities, and generating facility-based insights. Feature Facilities can be used to enhance guest experiences, optimize resource allocation, and support strategic decision-making. ### Retrieve list of feature facilities - [GET /api/v3/featureFacilities](https://apidocs.resharmonics.com/apis/resharmonics-pms/feature-facility/retrievefeaturefacilities.md): Fetch a comprehensive list of feature facilities available within the PMS. The response includes details for each feature facility, such as its name, unique identifier, and operational status. This endpoint is useful for managing property inventories and facilitating searches across multiple feature facilities. ## Guest Stays Represents Guest Stay entities within the Property Management System (PMS), which track individual guest stays associated with a room stay. A Guest Stay captures key details such as guest information, check-in and check-out dates, separate to the booked room, and stay status. This entity is essential for managing guest experiences, tracking physical occupancy, and facilitating seamless accommodation operations. ### Retrieve Guest Stays from defined parameters. - [GET /api/v3/guestStays](https://apidocs.resharmonics.com/apis/resharmonics-pms/guest-stays/listallgueststays.md): Retrieve a paginated list of guest stays within the Property Management System (PMS) based on specified search criteria. This endpoint allows filtering by date range ( and ), unit ID, contact ID, guest details (email, first name, last name), status (, , by default), and booking reference. Guest Stays represent individual guest reservations linked to a room stay and include key details such as guest identity, booking status, and associated property information. The response provides a paginated list of Guest Stay records, making it useful for tracking occupancy, managing guest check-ins and check-outs, and retrieving stay details for reporting or operational purposes. If no filters are provided, all guest stays within the default parameters will be returned. ### Retrieve Guest Stay by ID - [GET /api/v3/guestStays/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/guest-stays/getgueststaybyid.md): Fetch detailed information about a specific Guest Stay within the Property Management System (PMS) using its unique ID. A Guest Stay represents an individual guest's reservation linked to a room stay and includes key details such as check-in and check-out dates, assigned unit, guest information, booking reference, and stay status. This endpoint is useful for retrieving stay-specific data for guest management, reporting, or operational workflows. If the specified Guest Stay ID does not exist, a error will be returned. In case of an unexpected system error, a will be triggered. ## Industries Represents Industry entities within the Property Management System (PMS), which categorise businesses, corporate clients, and organisations based on their industry sector. Industry entities are used to segment accounts, track market trends, and apply industry-specific pricing, policies, or reporting structures. This functionality supports better organisation, enhanced analytics, and streamlined management of corporate bookings and partnerships. ### Retrieve all industries - [GET /api/v3/industries](https://apidocs.resharmonics.com/apis/resharmonics-pms/industries/listindustries.md): Fetch a list of all industries stored within the Property Management System (PMS). Industries represent business sectors and are used for categorising corporate clients, segmenting accounts, and applying industry-specific pricing, policies, or reporting structures. The response includes details of each industry, providing a structured way to organise and manage business relationships within the PMS. This endpoint is useful for analytics, market segmentation, and corporate account management. If an unexpected system error occurs, a will be triggered. ### Retrieve industry by ID - [GET /api/v3/industries/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/industries/getindustrybyid.md): Fetch detailed information about a specific industry within the Property Management System (PMS) using its unique ID. Industries are used to categorise corporate clients, segment accounts, and manage industry-specific pricing, policies, or reporting structures. The response includes key details about the industry, making it useful for analytics, business segmentation, and corporate account management. If the specified industry ID does not exist, a error will be returned. In case of an unexpected system error, a will be triggered. ## Issues Represents Issues within the Property Management System (PMS), which track and manage property-related concerns, maintenance requests, and guest service requests. Issues can include general maintenance tasks, housekeeping requests, guest complaints, or operational incidents that require resolution. This functionality supports efficient task assignment, workflow automation, and real-time issue tracking to ensure prompt resolution and enhance guest satisfaction. Issues can be associated with properties, units, bookings, or specific guest stays, enabling seamless communication between staff and management. ### Retrieve a list of issues - [GET /api/v3/issues](https://apidocs.resharmonics.com/apis/resharmonics-pms/issues/retrieveissues.md): Fetch a paginated list of issues within the Property Management System (PMS), representing property management tasks, maintenance requests, or guest service concerns. This endpoint allows filtering by multiple parameters, including issue details (ID, subject, status, type, priority), assignment details (assignee user or team), date ranges (reported date, response target date, resolution target date, last updated date), and related entities (booking, unit, or building). The response includes key issue details, making it useful for tracking operational tasks, managing maintenance workflows, and ensuring efficient resolution. If no filters are applied, all available issues will be returned in a paginated format. In case of an unexpected system error, a will be triggered. ### Create new issue - [POST /api/v3/issues](https://apidocs.resharmonics.com/apis/resharmonics-pms/issues/createentity.md): Create a new issue within the Property Management System (PMS) to track property-related concerns, maintenance requests, or guest service requests. This endpoint accepts a JSON payload containing issue details, including description, priority, category, associated property or unit, and reporter information. The created issue is linked to relevant entities such as a property, unit, booking, or guest stay to facilitate efficient resolution. The response returns the newly created issue with a unique identifier. If any referenced object IDs do not exist in the PMS, a error will be returned due to data integrity violations. In case of an unexpected error, a will be triggered. ### Retrieve a list of all issue priorities - [GET /api/v3/issues/issuePriorities](https://apidocs.resharmonics.com/apis/resharmonics-pms/issues/getissuepriority.md): Fetch a list of all available issue priorities within the Property Management System (PMS). Issue priorities help classify and manage the urgency of property-related concerns, maintenance requests, or guest service issues. Priorities can include different levels, such as 'Low', 'Medium', 'High', or custom-defined priority levels, ensuring that critical issues are addressed promptly. This endpoint provides structured priority data to facilitate efficient issue management, resource allocation, and response time tracking. The response includes a list of issue priorities along with relevant metadata. If an unexpected system error occurs, a will be triggered. ### Retrieve an issue priority by ID - [GET /api/v3/issues/issuePriorities/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/issues/getissuepriority_1.md): Fetch detailed information about a specific issue priority within the Property Management System (PMS) using its unique ID. Issue priorities define the urgency of property-related concerns, maintenance requests, or guest service issues, ensuring efficient task management and resolution. The response includes key details such as the priority level and its associated metadata. If the specified priority ID does not exist, a error will be returned. In case of an unexpected system error, a will be triggered. ### Retrieve a list of all issue statuses - [GET /api/v3/issues/issueStatuses](https://apidocs.resharmonics.com/apis/resharmonics-pms/issues/getissuestatuses.md): Fetch a list of all possible issue statuses within the Property Management System (PMS). Issue statuses indicate the current progress of property-related concerns, maintenance requests, or guest service issues. Common statuses include , , , and , ensuring clear tracking of an issue's lifecycle. This endpoint provides structured status data to help streamline issue management, prioritisation, and resolution workflows. The response includes a list of predefined issue statuses. If an unexpected system error occurs, a will be triggered. ### Retrieve a list of all issue types - [GET /api/v3/issues/issueTypes](https://apidocs.resharmonics.com/apis/resharmonics-pms/issues/getissuetypes.md): Fetch a list of all available issue types within the Property Management System (PMS). Issue types categorise different kinds of property-related concerns, maintenance requests, or guest service issues, such as housekeeping, technical repairs, complaints, or general inquiries. This endpoint provides a structured way to classify and manage operational issues, ensuring efficient tracking and resolution. The response includes a list of issue types, each containing relevant metadata. If an unexpected system error occurs, a will be triggered. ### Retrieve issue entity by ID - [GET /api/v3/issues/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/issues/retrieveentity.md): Fetch detailed information about a specific issue within the Property Management System (PMS) using its unique ID. Issues represent property management concerns, maintenance requests, or guest service requests. The response includes key details such as issue type, description, status, priority, associated property or unit, and reporting details. This endpoint is useful for tracking ongoing issues, managing maintenance workflows, and ensuring timely resolution. If the specified issue ID does not exist, a error will be returned. ### Update issue entity - [PUT /api/v3/issues/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/issues/updateentity.md): Modify an existing issue within the Property Management System (PMS) by providing updated details in the request body. The update process requires a valid issue ID and allows modifications to fields such as issue status, priority, category, or resolution notes. Issues are typically associated with properties, units, bookings, or guest stays, ensuring efficient tracking and management. To prevent data conflicts, a locking mechanism is applied during updates. The response includes the updated issue details. If the issue ID does not exist, a error will be returned. In case of an unexpected error, a will be triggered. ### Retrieve a list of notes on an issue - [GET /api/v3/issues/{id}/notes](https://apidocs.resharmonics.com/apis/resharmonics-pms/issues/getissuenotes.md): Fetch all notes associated with a specific issue within the Property Management System (PMS) using its unique ID. Issue notes provide a historical record of updates, comments, and actions taken on maintenance requests, guest concerns, or operational issues. The response includes details such as note content, author, timestamp, and any relevant metadata. This endpoint is useful for tracking communication, ensuring accountability, and maintaining an audit trail for issue resolution. If the issue ID does not exist, a error will be returned. In case of an unexpected system error, a will be triggered. ### Create an issue note - [POST /api/v3/issues/{id}/notes](https://apidocs.resharmonics.com/apis/resharmonics-pms/issues/createissuenote.md): Add a new note to a specific issue within the Property Management System (PMS) using the issue's unique ID. Issue notes serve as a communication log, allowing users to document updates, comments, or actions taken on maintenance requests, guest concerns, or operational issues. The request body must contain the note details, including its content and any relevant metadata. If the specified issue ID does not exist, a error will be returned. Upon successful creation, the response includes the newly added note. This endpoint ensures proper documentation of issue progress and facilitates collaboration between team members. ### Update the status of an issue by ID - [PUT /api/v3/issues/{id}/status](https://apidocs.resharmonics.com/apis/resharmonics-pms/issues/updateactivitystatus.md): Modify the status of a specific issue within the Property Management System (PMS) using its unique issue ID. The request body must include a valid status update (, , , or ). This endpoint ensures proper issue tracking and workflow management by allowing users to update the issue's progress. - : Marks the issue as newly created and pending action. - : Indicates work has begun on resolving the issue. - : Confirms the issue has been addressed but not yet closed. - : Marks the issue as fully completed and closed. The response includes the updated issue details. If the issue ID does not exist, a error will be returned. In case of an unexpected system error, a will be triggered. ## Leads APIs for creating Leads, leads are used to create basic opportunities in the system which can be converted to enquiries or bookings. ### Create a full lead - [POST /api/v3/leads](https://apidocs.resharmonics.com/apis/resharmonics-pms/leads/createfulllead.md): Creates a lead with all details provided in the request body. Returns a BookingSummaryDTO containing the ID and reference of the created lead. ## Market Segments Represents Market Segment entities within the Property Management System (PMS), which categorise customer groups based on booking patterns, demographics, or business classifications. Market segments help in defining pricing strategies, targeted marketing campaigns, and reporting insights. They are commonly used to differentiate corporate clients, leisure travelers, government bookings, wholesalers, and other key customer groups. This functionality enables property managers to optimise revenue, personalise guest experiences, and improve operational decision-making. ### Retrieve all market segments - [GET /api/v3/marketSegments](https://apidocs.resharmonics.com/apis/resharmonics-pms/market-segments/listmarketsegments.md): Fetch a list of all available market segments within the Property Management System (PMS). Market segments categorise customer groups based on booking patterns, demographics, or business classifications such as corporate, leisure, government, or wholesale. This segmentation helps optimise pricing strategies, personalise guest experiences, and generate meaningful reports for revenue management and marketing. The response includes a list of all defined market segments, each with relevant metadata. If an unexpected system error occurs, a will be triggered. ### Retrieve market segment by ID - [GET /api/v3/marketSegments/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/market-segments/getmarketsegmentbyid.md): Fetch detailed information about a specific market segment within the Property Management System (PMS) using its unique ID. Market segments categorise customer groups based on booking behaviors, demographics, or business classifications such as corporate, leisure, government, or wholesale. This endpoint is useful for retrieving segment-specific data for reporting, pricing strategies, and targeted marketing efforts. The response includes details about the market segment, including its classification and associated metadata. If the specified market segment ID does not exist, a error will be returned. In case of an unexpected system error, a will be triggered. ## Nationalities Represents Nationality entities within the Property Management System (PMS), used to categorise guests, customers, or corporate clients based on their country of nationality. Nationality data supports compliance with regulatory requirements, enhances reporting and analytics, and enables targeted marketing or pricing strategies. This functionality helps property managers track guest demographics, improve customer segmentation, and personalise services based on nationality-specific preferences. ### Retrieve all nationalities - [GET /api/v3/nationalities](https://apidocs.resharmonics.com/apis/resharmonics-pms/nationalities/getnationalities.md): Fetch a list of all available nationalities within the Property Management System (PMS). Nationality entities help categorise guests, customers, or corporate clients based on their country of nationality. This data is useful for compliance with regulatory requirements, demographic reporting, targeted marketing, and personalised service offerings. The response includes a list of all defined nationalities along with relevant metadata. If an unexpected system error occurs, a will be triggered. ### Retrieve nationality by ID - [GET /api/v3/nationalities/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/nationalities/getnationalitybyid.md): Fetch detailed information about a specific nationality within the Property Management System (PMS) using its unique ID. Nationality entities help categorise guests, customers, or corporate clients based on their country of nationality, supporting compliance, reporting, and personalised services. The response includes relevant metadata such as country name and ISO codes. If the specified nationality ID does not exist, a error will be returned. In case of an unexpected system error, a will be triggered. ## Organisations Organisations API for managing different financial entities. ### Retrieve list of all organisations - [GET /api/v3/organisations](https://apidocs.resharmonics.com/apis/resharmonics-pms/organisations/listallorganisations.md): Fetch a comprehensive list of organisations available within the PMS. The response includes details for each cost centre, such as its name, unique identifier, and operational status. This endpoint is useful for managing organations to different financial elements in the system. ### Retrieve organisation by id - [GET /api/v3/organisations/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/organisations/getbyid.md): Fetch a specific organisation by its unique identifier. The response includes details such as the name, other details. This endpoint is useful for retrieving detailed information about a specific cost centre. ## Rates Endpoints for managing and querying rates and pricing within the PMS. These endpoints enable the creation, updating, retrieval, and deletion of rate records associated with properties, room types, and booking policies. Rate management functionality includes support for dynamic pricing, seasonal adjustments, promotional offers, and rate plans (e.g., refundable, non-refundable). Additionally, these endpoints facilitate integration with revenue management systems, allowing for real-time updates and querying of rates based on availability, occupancy, and other parameters. This suite of endpoints is essential for optimising pricing strategies and ensuring accurate and efficient rate handling. ### Search for rates by specified criteria - [GET /api/v3/rates](https://apidocs.resharmonics.com/apis/resharmonics-pms/rates/getallratesindaterange.md): Retrieve a list of rates that match the specified criteria, such as date range, unit type, rate ID, company ID, or rate code. The optional parameters and allow for filtering rates within a specific date range, while , , , and can further narrow the search. Results are returned in a paginated format, making it easier to navigate through large datasets. This endpoint is useful for querying rates for specific units, validating pricing for bookings, or integrating rate information with external systems. If no filters are provided, the endpoint returns all rates within the default date range. ### Retrieve rate segments for a specified rate ID and date range - [GET /api/v3/rates/{rateId}/segments](https://apidocs.resharmonics.com/apis/resharmonics-pms/rates/getsnapshotofrate.md): Retrieve list of rate summaries for a rate specified by rate ID between two dates. This groupstogether rates with similar names and returns the rate segments for the specified date range. Allowing for easy comparison of rates with different lengths of stay and amounts. ## Referrers Represents Referrer entities within the Property Management System (PMS), which track sources of referrals for guests, bookings, or corporate clients. Referrers help identify the origin of reservations, whether from marketing campaigns, travel agencies, corporate partnerships, or other sources. This functionality enables property managers to analyse booking trends, measure the effectiveness of referral channels, and optimise marketing strategies. Referrer data can also be used for loyalty programs, commission tracking, and targeted promotions. ### Retrieve list of all referrers - [GET /api/v3/referrers](https://apidocs.resharmonics.com/apis/resharmonics-pms/referrers/listreferrers.md): Fetch a list of all available referrers within the Property Management System (PMS). Referrers track sources of referrals for guests, bookings, or corporate clients, helping to identify the origin of reservations. This data is useful for analysing booking trends, measuring the effectiveness of referral channels, and optimising marketing strategies. The response includes a list of all defined referrers, each with relevant metadata. If an unexpected system error occurs, a will be triggered. ### Retrieve a specific referrer by its ID - [GET /api/v3/referrers/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/referrers/getreferrerbyid.md): Fetch details of a specific referrer within the Property Management System (PMS) using its unique ID. This endpoint returns the referrer information, which includes metadata about the source of referrals. If the referrer is not found, a error will be returned. In case of an unexpected system error, a will be triggered. ## Region Represents Region entities within the Property Management System (PMS). Regions are used to categorize geographical areas for better management and reporting. This functionality helps in organizing properties, defining operational zones, and generating location-based insights. Regions can be used to optimize resource allocation, enhance guest experiences, and support strategic decision-making. ### Retrieve list of regions - [GET /api/v3/regions](https://apidocs.resharmonics.com/apis/resharmonics-pms/region/listallregions.md): Fetch a paginated list of regions within the Property Management System (PMS). Regions help in organizing properties, defining operational zones, and generating location-based insights. The response includes a list of regions with relevant metadata. If an unexpected system error occurs, a will be triggered. ### Create a new region - [POST /api/v3/regions](https://apidocs.resharmonics.com/apis/resharmonics-pms/region/createregion.md): Creates a new region within the Property Management System (PMS) with the provided details. Regions help in organizing properties, defining operational zones, and generating location-based insights. This endpoint is useful for adding new regions to the system for better management and reporting. The request body should contain the necessary details for the new region. If the creation is successful, the newly created region's details will be returned. In case of an unexpected system error, a will be triggered. ### Retrieve a region by Id - [GET /api/v3/regions/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/region/getregionbyid.md): Fetch detailed information about a specific region within the Property Management System (PMS) using its unique ID. Regions help in organizing properties, defining operational zones, and generating location-based insights. This endpoint is useful for retrieving region-specific data for reporting, resource allocation, and strategic decision-making. The response includes details about the region, including its classification and associated metadata. If the specified region ID does not exist, a error will be returned. In case of an unexpected system error, a will be triggered. ### Update an existing region - [PUT /api/v3/regions/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/region/updateregion.md): Updates an existing region within the Property Management System (PMS) with the provided details. Regions help in organizing properties, defining operational zones, and generating location-based insights. This endpoint is useful for modifying existing regions to reflect changes in geographical areas or operational zones. The request body should contain the updated details for the region. If the specified region ID does not exist, a error will be returned. In case of an unexpected system error, a will be triggered. ### Delete a region by Id - [DELETE /api/v3/regions/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/region/deleteregionbyid.md): Deletes a specific region within the Property Management System (PMS) using its unique ID. Regions help in organizing properties, defining operational zones, and generating location-based insights. This endpoint is useful for removing regions that are no longer relevant or needed in the system. The region will be marked as deleted rather than permanently removed to maintain historical data integrity. If the specified region ID does not exist, a error will be returned. In case of an unexpected system error, a will be triggered. ## Room Stays Room stays are the specific stays in rooms under a booking, linking pricing, room, guests, and rates. This entity is part of the Property Management System (PMS) and is used to manage and track the details of each stay, including the duration, associated guests, and any additional services or charges. Room stays help in organizing bookings, ensuring accurate billing, and enhancing the overall guest experience. ### Retrieve Room Stays from defined parameters. - [GET /api/v3/roomStays](https://apidocs.resharmonics.com/apis/resharmonics-pms/room-stays/listallroomstays.md): Fetch a paginated list of room stays based on various filters such as date, status, and booking details. The response includes a list of room stays with relevant metadata. If an unexpected system error occurs, a will be triggered. ### Lock a specified roomstay - [PATCH /api/v3/roomStays/roomStays/{id}/lock](https://apidocs.resharmonics.com/apis/resharmonics-pms/room-stays/roomstayapilockroomstay.md): Locks the room stay identified by the given ID, preventing further modifications. This operation is useful for ensuring that the details of a room stay are finalized and cannot be altered. If the specified room stay ID does not exist, a error will be returned. In case of an unexpected system error, a will be triggered. ### Retrieve Room Stay by id - [GET /api/v3/roomStays/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/room-stays/getroomstaybyid.md): Fetch detailed information about a specific room stay within the Property Management System (PMS) using its unique ID. Room stays help in organizing bookings, ensuring accurate billing, and enhancing the overall guest experience. This endpoint is useful for retrieving room stay-specific data for reporting, resource allocation, and strategic decision-making. The response includes details about the room stay, including its duration, associated guests, and any additional services or charges. If the specified room stay ID does not exist, a error will be returned. In case of an unexpected system error, a will be triggered. ### Retrieve activities for specified room stay - [GET /api/v3/roomStays/{id}/activities](https://apidocs.resharmonics.com/apis/resharmonics-pms/room-stays/getactivitiesbyroomstayid.md): Fetch a list of all activities associated with a specific room stay. This endpoint is useful for retrieving detailed information about activities related to a room stay. If the specified room stay ID does not exist, a error will be returned. In case of an unexpected system error, a will be triggered. ### Retrieve extras for specified room stay - [GET /api/v3/roomStays/{id}/chargeableExtras](https://apidocs.resharmonics.com/apis/resharmonics-pms/room-stays/getroomstayextrasbyroomstayid.md): Fetch a list of all chargeable extras associated with a specific room stay. This endpoint is useful for retrieving detailed information about additional services or charges applied to a room stay. If the specified room stay ID does not exist, a error will be returned. In case of an unexpected system error, a will be triggered. ### Get custom fields for a room stay - [GET /api/v3/roomStays/{id}/customFields](https://apidocs.resharmonics.com/apis/resharmonics-pms/room-stays/getcustomfieldsforroomstay.md): Retrieve all custom fields associated with a specific room stay record. The response includes a list of custom fields, each containing details such as field name, type, and value. This endpoint is useful for accessing additional information stored in custom fields that are not part of the standard room stay attributes. ### Retrieve guest stays for specified room stay - [GET /api/v3/roomStays/{id}/guestStays](https://apidocs.resharmonics.com/apis/resharmonics-pms/room-stays/getgueststaysbyroomstayid.md): Fetch a list of all guest stays associated with a specific room stay. This endpoint is useful for retrieving detailed information about guests staying in a room. If the specified room stay ID does not exist, a error will be returned. In case of an unexpected system error, a will be triggered. ### Retrieve list of all invoice items for specified room stay - [GET /api/v3/roomStays/{id}/salesInvoiceItems](https://apidocs.resharmonics.com/apis/resharmonics-pms/room-stays/getinvoicesbyroomstayid.md): Fetch a list of all invoice items associated with a specific room stay. This endpoint is useful for retrieving detailed billing information for a room stay, including charges for services and any additional fees. If the specified room stay ID does not exist, a error will be returned. In case of an unexpected system error, a will be triggered. ## Sales Invoices Operations related to Sales Invoice entity from the Property Management System (PMS), including retrieval, creation, updating, and deletion of sales invoices. This API provides endpoints to manage sales invoices, which are essential for tracking sales transactions, generating financial reports, and ensuring accurate billing. The operations include retrieving a list of all sales invoices, fetching details of a specific invoice, creating new invoices, updating existing invoices, and marking invoices as posted or exported to external finance systems. These functionalities help in maintaining the financial integrity and operational efficiency of the PMS. ### Retrieve a list of all invoices - [GET /api/v3/salesInvoices](https://apidocs.resharmonics.com/apis/resharmonics-pms/sales-invoices/findsalesinvoices.md): Fetch a list of all sales invoices within the Property Management System (PMS). This endpoint is useful for retrieving detailed information about sales transactions, including invoice dates, associated organizations, and statuses. The response includes paginated results of sales invoices, which can be filtered by date range, organization ID, and status. If no invoices match the specified criteria, an empty list will be returned. In case of an unexpected system error, a will be triggered. ### Retrieve a single invoice item - [GET /api/v3/salesInvoices/salesInvoiceItems/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/sales-invoices/findinvoiceitem.md): Fetch detailed information about a specific sales invoice item within the Property Management System (PMS) using its unique ID. Sales invoice items are essential for tracking individual components of sales transactions, including item descriptions, quantities, and prices. This endpoint is useful for retrieving item-specific data for reporting, auditing, and financial analysis. If the specified sales invoice item ID does not exist, a error will be returned. In case of an unexpected system error, a will be triggered. ### Retrieve a single invoice - [GET /api/v3/salesInvoices/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/sales-invoices/findinvoice.md): Fetch detailed information about a specific sales invoice within the Property Management System (PMS) using its unique ID. Sales invoices are essential for tracking sales transactions, generating financial reports, and ensuring accurate billing. This endpoint is useful for retrieving invoice-specific data for reporting, auditing, and financial analysis. The response includes details about the sales invoice, including its date, associated organization, status, and line items. If the specified sales invoice ID does not exist, a error will be returned. In case of an unexpected system error, a will be triggered. ### Get custom fields for a sales invoices - [GET /api/v3/salesInvoices/{id}/customFields](https://apidocs.resharmonics.com/apis/resharmonics-pms/sales-invoices/getcustomfieldsforsalesinvoice.md): Retrieve all custom fields associated with a specific sales invoice record in the finance module of the PMS. The response includes a list of custom fields, each containing details such as field name, type, and value. This endpoint is useful for accessing additional information stored in custom fields that are not part of the standard sales invoice attributes. ### Update an invoice as Exported to an external finance system - [PATCH /api/v3/salesInvoices/{id}/exported](https://apidocs.resharmonics.com/apis/resharmonics-pms/sales-invoices/markasexported.md): Mark a specific sales invoice as exported to an external finance system using its unique ID. This operation is essential for synchronizing the invoice status with external financial systems, ensuring that the invoice is recognized as exported. The request body should include the external ID and the exported date. If the specified sales invoice ID does not exist, a error will be returned. If the invoice is not in the 'POSTED' status, a error will be returned. In case of an unexpected system error, a will be triggered. ### Mark invoice as posted - [PUT /api/v3/salesInvoices/{id}/post](https://apidocs.resharmonics.com/apis/resharmonics-pms/sales-invoices/marksalesinvoiceposted.md): Mark a specific sales invoice as posted using its unique ID. This operation is essential for updating the invoice status to 'POSTED', indicating that the invoice has been finalized and is ready for further processing. If the specified sales invoice ID does not exist, a error will be returned. If the invoice is already in the 'POSTED' status, a error will be returned. In case of an unexpected system error, a will be triggered. ### Retrieve all sales invoice items for a specific invoice - [GET /api/v3/salesInvoices/{id}/salesInvoiceItems](https://apidocs.resharmonics.com/apis/resharmonics-pms/sales-invoices/findinvoiceitems.md): Fetch all sales invoice items associated with a specific sales invoice using its unique ID. This endpoint is useful for retrieving detailed information about the items within a sales invoice, including item descriptions, quantities, and prices. If the specified sales invoice ID does not exist, a error will be returned. In case of an unexpected system error, a will be triggered. ## Tags Represents Tag entities within the Property Management System (PMS), allowing users to categorise and organise various system entities with custom tag information. Tags provide a flexible way to label and classify properties, bookings, guests, accounts, and other records based on specific criteria. This functionality enhances searchability, reporting, and segmentation by enabling property managers to create and manage custom tags tailored to their operational needs. Tags can be used for filtering, grouping, and applying business logic to different entities across the PMS, supporting improved organisation and data management. ### Retrieve all Tags - [GET /api/v3/tags](https://apidocs.resharmonics.com/apis/resharmonics-pms/tags/listtags.md): Fetch a list of all tags within the Property Management System (PMS). This endpoint is useful for retrieving detailed information about tags, including their names and descriptions. The response includes a list of tags, which can be used for categorizing and organizing various system entities. If no tags are found, an empty list will be returned. In case of an unexpected system error, a will be triggered. ### Retrieve tags using specified ID - [GET /api/v3/tags/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/tags/gettagtbyid.md): Fetch detailed information about a specific tag within the Property Management System (PMS) using its unique ID. Tags are essential for categorizing and organizing various system entities, such as properties, bookings, guests, accounts, and other records. This endpoint is useful for retrieving tag-specific data for reporting, auditing, and data management purposes. The response includes details about the tag, including its name and description. If the specified tag ID does not exist, a error will be returned. In case of an unexpected system error, a will be triggered. ## Teams Represents the Team entity within the Property Management System (PMS), which is used to manage groups of users or staff members associated with specific roles, responsibilities, or properties. The Team entity includes details such as team name, members, assigned tasks, and permissions. This functionality is essential for organising operational workflows, assigning responsibilities across properties, and ensuring efficient collaboration between staff members. Teams can be linked to specific properties, bookings, or tasks, enabling streamlined management and accountability in day-to-day operations. ### Search for Team entities - [GET /api/v3/teams](https://apidocs.resharmonics.com/apis/resharmonics-pms/teams/searchteams.md): Retrieve a paginated list of teams within the Property Management System (PMS) based on optional search criteria. You can filter the results by team name using a query parameter (), which supports partial matches with wildcards. The response includes a paginated list of team records, each containing basic details such as the team's name and key attributes. This endpoint is useful for browsing and managing multiple teams, enabling efficient search and navigation across large datasets. If no search criteria are provided, all teams will be returned in the response. ### Retrieve team entity by ID - [GET /api/v3/teams/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/teams/findteam.md): Fetch detailed information about a specific team within the Property Management System (PMS) by providing its unique ID. The response includes information such as the team's name, members, assigned roles, permissions, and any associated properties or tasks. This endpoint is useful for managing team configurations, reviewing responsibilities, or retrieving team-specific details for operational purposes. If the team ID does not exist, an appropriate error response will be returned. ## Unit Access Groups Represents Unit Access Groups within the Property Management System (PMS), allowing access control and permission management for unit entities. Unit Access Groups link units to Access Groups which are the access control groups defined in external acces control systems. Contacts are linked to Access Groups for the duration of their stay based on unit they are staying in ### Retrieve list of Unit Access Groups - [GET /api/v3/unitAccessGroups](https://apidocs.resharmonics.com/apis/resharmonics-pms/unit-access-groups/listallunitaccessgroups.md): Fetch a list of all unit access groups within the Property Management System (PMS). This endpoint is useful for retrieving detailed information about unit access groups, including their associated units and access group names. The response includes a paginated list of unit access groups, which can be used for managing access control and permissions. If no unit access groups are found, an empty list will be returned. In case of an unexpected system error, a will be triggered. ### Update a unit access group - [PUT /api/v3/unitAccessGroups](https://apidocs.resharmonics.com/apis/resharmonics-pms/unit-access-groups/updateunitaccessgroup.md): Update an existing unit access group within the Property Management System (PMS). This endpoint allows the modification of details for a specific unit access group, including its associated unit and access group information. The request body must include the updated details of the unit access group. The response includes the updated unit access group details. If the specified unit access group ID does not exist, a error will be returned. In case of validation errors, a error will be returned. In case of an unexpected system error, a will be triggered. ### Create a new Access Group - [POST /api/v3/unitAccessGroups](https://apidocs.resharmonics.com/apis/resharmonics-pms/unit-access-groups/createunitaccessgroup.md): Create a new unit access group within the Property Management System (PMS). This endpoint allows the creation of a new unit access group, which links a unit to an access group. The request body must include details of the unit and the access group. The response includes the newly created unit access group details. In case of validation errors, a error will be returned. In case of an unexpected system error, a will be triggered. ### Retrieve an Unit Access Group by Id - [GET /api/v3/unitAccessGroups/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/unit-access-groups/getunitaccessgroupbyid.md): Fetch detailed information about a specific unit access group within the Property Management System (PMS) using its unique ID. Unit access groups are essential for managing access control and permissions for unit entities. This endpoint is useful for retrieving unit access group-specific data for reporting, auditing, and data management purposes. The response includes details about the unit access group, including its associated unit and access group names. If the specified unit access group ID does not exist, a error will be returned. In case of an unexpected system error, a will be triggered. ## Unit Contracts Manages unit contracts which define the relationship between property units and their contractual agreements. Provides endpoints for searching contracts, retrieving contract details, and accessing associated units. Used for managing lease agreements, rental terms, and property assignments within the system. ### Search unit contracts - [GET /api/v3/unitContracts](https://apidocs.resharmonics.com/apis/resharmonics-pms/unit-contracts/searchunitcontracts.md): Search for unit contracts with optional filtering by unit ID and building ID ### Get unit contract by ID - [GET /api/v3/unitContracts/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/unit-contracts/getunitcontract.md): Retrieve detailed information about a specific unit contract ### Get units for contract - [GET /api/v3/unitContracts/{id}/units](https://apidocs.resharmonics.com/apis/resharmonics-pms/unit-contracts/getunits.md): Retrieve all units associated with a specific unit contract ## Unit Locations Represents Unit Location entities within the Property Management System (PMS), each location is associated with a specific unit which and can have multiple internal locations such as bathrooms, living spaces etcThis API allows for the management of unit locations, including retrieval, creation, and updates. ### Retrieve unit locations - [GET /api/v3/unitLocations](https://apidocs.resharmonics.com/apis/resharmonics-pms/unit-locations/getunitlocations.md): Fetches a paginated list of unit locations within the Property Management System (PMS). This endpoint allows filtering by unit ID, building ID to retrieve specific unit locations and also, unit location last updated date time. Unit locations represent different areas or spaces within a unit (e.g., bathrooms, living spaces). The response includes location details such as type, description, and associated metadata. If no locations are found for the specified filters, an empty page will be returned. Results are paginated to handle large datasets efficiently. ### Retrieve unit location by ID - [GET /api/v3/unitLocations/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/unit-locations/getunitlocationbyid.md): Fetches a specific unit location by its unique identifier. This endpoint provides detailed information about a particular unit location, including its type, associated unit, and other relevant metadata. If the specified unit location ID does not exist, a not found error will be returned. ## Unit Types Represents Unit Type entities within the Property Management System (PMS), defining the classification and characteristics of different units within a property. Unit Types help categorise accommodations based on factors such as size, layout, amenities, and occupancy capacity (e.g., studio, one-bedroom apartment, deluxe suite). This functionality is essential for inventory management, pricing strategies, availability searches, and reporting. Unit Types enable property managers to streamline booking processes, optimise revenue, and ensure accurate property listings across platforms. ### Get all unit types - [GET /api/v3/unitTypes](https://apidocs.resharmonics.com/apis/resharmonics-pms/unit-types/getallunittypes.md): Fetch a list of all unit types within the Property Management System (PMS). This endpoint is useful for retrieving detailed information about unit types, including their classification and characteristics such as size, layout, amenities, and occupancy capacity. The response includes a paginated list of unit types, which can be used for inventory management, pricing strategies, availability searches, and reporting. If no unit types are found, an empty list will be returned. In case of an unexpected system error, a will be triggered. ### Create a new unit type - [POST /api/v3/unitTypes](https://apidocs.resharmonics.com/apis/resharmonics-pms/unit-types/createunittype.md): Create a new unit type within the Property Management System (PMS). This endpoint allows you to define a new unit type with its classification and characteristics such as size, layout, amenities, and occupancy capacity. The request body should contain the details of the unit type to be created. If the creation is successful, the newly created unit type will be returned. In case of validation errors or unexpected system errors, appropriate error responses will be triggered. ### Retrieve a unit type by Id - [GET /api/v3/unitTypes/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/unit-types/getunittypebyid.md): Fetch detailed information about a specific unit type within the Property Management System (PMS) using its unique ID. Unit types are essential for categorizing accommodations based on factors such as size, layout, amenities, and occupancy capacity. This endpoint is useful for retrieving unit type-specific data for inventory management, pricing strategies, availability searches, and reporting. The response includes details about the unit type, including its classification and characteristics. If the specified unit type ID does not exist, a error will be returned. In case of an unexpected system error, a will be triggered. ### Update an existing unit type - [PUT /api/v3/unitTypes/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/unit-types/updateunittype.md): Update an existing unit type within the Property Management System (PMS). This endpoint allows you to modify the details of a unit type, including its classification and characteristics such as size, layout, amenities, and occupancy capacity. The request body should contain the updated details of the unit type. If the update is successful, the updated unit type will be returned. In case of validation errors or unexpected system errors, appropriate error responses will be triggered. ### Delete a unit type by ID - [DELETE /api/v3/unitTypes/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/unit-types/deleteunittypebyid.md): Delete a specific unit type within the Property Management System (PMS) using its unique ID. This endpoint allows you to remove a unit type, including all associated data. If the deletion is successful, a response will be returned. If the specified unit type ID does not exist, a error will be returned. In case of unexpected system errors during the deletion process, a will be triggered. ### Retrieve features and facilities for a unit type - [GET /api/v3/unitTypes/{id}/featuresFacilities](https://apidocs.resharmonics.com/apis/resharmonics-pms/unit-types/getfeaturefacilities.md): Fetch the list of features and facilities associated with a specific unit type within the Property Management System (PMS). This endpoint provides detailed information about the amenities and characteristics available for a particular unit type. The response includes a comprehensive list of features and facilities that help define the unit type's offerings. If the specified unit type ID does not exist, a error will be returned. In case of an unexpected system error, a will be triggered. ### Update (replace) feature facilities for a unit type - [PUT /api/v3/unitTypes/{id}/featuresFacilities](https://apidocs.resharmonics.com/apis/resharmonics-pms/unit-types/updatefeaturefacilities.md): Update the list of feature facilities associated with a specific unit type using its unique ID. This endpoint allows you to replace the existing feature facilities with a new set of facilities, updating the unit type's amenities and services. The request body should contain a list of feature facility IDs to be linked. If the specified unit type ID does not exist, a error will be returned. In case of system errors during the update process, a will be triggered. ### Link (add) feature facilities to a unit type - [POST /api/v3/unitTypes/{id}/featuresFacilities/link](https://apidocs.resharmonics.com/apis/resharmonics-pms/unit-types/linkfacilitiestounittype.md): Link existing feature facilities to a specific unit type using its unique ID. This endpoint allows you to associate multiple feature facilities with a unit type, enhancing its amenities and services. The request body should contain a list of feature facility IDs to be linked. If the specified unit type ID does not exist, a error will be returned. In case of system errors during the linking process, a will be triggered. ### Unlink (remove) feature facilities from a unit type - [POST /api/v3/unitTypes/{id}/featuresFacilities/unlink](https://apidocs.resharmonics.com/apis/resharmonics-pms/unit-types/deletefeaturefacilities.md): Unlink existing feature facilities from a specific unit type using its unique ID. This endpoint allows you to remove multiple feature facilities from a unit type, updating its amenities and services. The request body should contain a list of feature facility IDs to be unlinked. If the specified unit type ID does not exist, a error will be returned. In case of system errors during the unlinking process, a will be triggered. ## Units Represents Unit entities within the Property Management System (PMS), which are individual accommodations available for booking within a property. Units can include apartments, hotel rooms, serviced residences, or other types of rentable spaces. Each Unit is associated with a Unit Type, property, and relevant metadata such as availability, capacity, amenities, and pricing. This functionality supports efficient inventory management, booking operations, and property administration, enabling property managers to track occupancy, apply pricing strategies, and manage unit-specific details. Units are integral to availability searches, booking workflows, and reporting analytics within the PMS. ### Retrieve list of units - [GET /api/v3/units](https://apidocs.resharmonics.com/apis/resharmonics-pms/units/listallproperties.md): Fetch a list of all units within the Property Management System (PMS). This endpoint is useful for retrieving detailed information about units, including their availability, capacity, amenities, and pricing. The response includes a paginated list of units, which can be used for inventory management, booking operations, and property administration. If no units are found, an empty list will be returned. In case of an unexpected system error, a will be triggered. ### Create a new unit - [POST /api/v3/units](https://apidocs.resharmonics.com/apis/resharmonics-pms/units/createunit.md): Create a new unit within the Property Management System (PMS). This endpoint allows property managers to add new units, which can include apartments, hotel rooms, or other types of rentable spaces. The request body should contain the necessary details for the unit, such as its type, capacity, amenities, and pricing. Upon successful creation, the response will include the details of the newly created unit. In case of an unexpected system error, a will be triggered. ### Retrieve a unit by Id - [GET /api/v3/units/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/units/getunitbyid.md): Fetch detailed information about a specific unit within the Property Management System (PMS) using its unique ID. Units are essential for categorizing accommodations based on factors such as availability, capacity, amenities, and pricing. This endpoint is useful for retrieving unit-specific data for inventory management, booking operations, and property administration. The response includes details about the unit, including its classification and characteristics. If the specified unit ID does not exist, a error will be returned. In case of an unexpected system error, a will be triggered. ### Update a unit by Id - [PUT /api/v3/units/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/units/updateunit.md): Update the details of a specific unit within the Property Management System (PMS) using its unique ID. This endpoint allows property managers to modify unit attributes such as availability, capacity, amenities, and pricing. The request body should contain the updated details for the unit. Upon successful update, the response will include the updated unit information. If the specified unit ID does not exist, a error will be returned. In case of an unexpected system error, a will be triggered. ### Delete a unit by Id - [DELETE /api/v3/units/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/units/deleteunitbyid.md): Delete a specific unit within the Property Management System (PMS) using its unique ID. This endpoint allows property managers to remove units that are no longer needed, such as apartments, hotel rooms, or other types of rentable spaces. Upon successful deletion, a response will be returned. If the specified unit ID does not exist, a error will be returned. In case of an unexpected system error, a will be triggered. ### Retrieve list of unit access groups - [GET /api/v3/units/{id}/accessGroups](https://apidocs.resharmonics.com/apis/resharmonics-pms/units/getunitunitaccessgroups.md): Fetch a list of all access groups associated with a specific unit within the Property Management System (PMS) using its unique ID. Access groups define the permissions and access levels for different users or roles within the unit. This endpoint is useful for retrieving detailed information about the access groups assigned to a unit, including their names, descriptions, and associated permissions. The response includes a list of access groups, which can be used for managing user access, security settings, and role-based permissions. If no access groups are found for the specified unit ID, an empty list will be returned. In case of an unexpected system error, a will be triggered. ### Get custom fields for a unit - [GET /api/v3/units/{id}/customFields](https://apidocs.resharmonics.com/apis/resharmonics-pms/units/getcustomfieldsforunt.md): Retrieve all custom fields associated with a specific unit record in the property module of the PMS. The response includes a list of custom fields, each containing details such as field name, type, and value. This endpoint is useful for accessing additional information stored in custom fields that are not part of the standard unit attributes. ### Retrieve contracts for a specific unit - [GET /api/v3/units/{unitId}/unitContracts](https://apidocs.resharmonics.com/apis/resharmonics-pms/units/getunitcontracts.md): Fetch a paginated list of contracts associated with a specific unit within the Property Management System (PMS). This endpoint allows property managers to retrieve detailed information about the contracts related to a unit, including contract terms, start and end dates, and associated parties. If no contracts are found for the specified unit ID, an empty page will be returned. Results are paginated to handle large datasets efficiently. ### Retrieve internal locations for a specific unit - [GET /api/v3/units/{unitId}/unitLocations](https://apidocs.resharmonics.com/apis/resharmonics-pms/units/getunitinternallocations.md): Fetch a paginated list of internal locations associated with a specific unit within the Property Management System (PMS). Internal locations represent different areas or spaces within a unit, such as bathrooms, living spaces, etc. This endpoint allows property managers to retrieve detailed information about the internal locations of a unit, including their types, descriptions, and associated metadata. If no internal locations are found for the specified unit ID, an empty page will be returned. Results are paginated to handle large datasets efficiently. ## Users Represents User entities within the Property Management System (PMS), managing authentication, authorisation, and role-based access control. Users can include property managers, front desk staff, housekeeping teams, administrators, and external partners, each with specific permissions and roles. This functionality enables secure access management, user activity tracking, and assignment of responsibilities within the PMS. User entities store essential details such as usernames, roles, contact information, and access privileges, ensuring proper security measures and operational control. The Users API facilitates user creation, role management, authentication, and administrative oversight. ### Search for User entities - [GET /api/v3/users](https://apidocs.resharmonics.com/apis/resharmonics-pms/users/searchusers.md): This endpoint allows searching for user entities based on various criteria such as username, first name, and last name. It returns a paginated list of user projections in JSON format. The search parameters are optional and can be combined to narrow down the search results. ### Retrieve user entity by id - [GET /api/v3/users/{id}](https://apidocs.resharmonics.com/apis/resharmonics-pms/users/finduser.md): This endpoint retrieves a user entity based on the provided user ID. It returns the user details in JSON format. The user ID must be specified in the URL path.