Skip to content

res:harmonics API (3.0.4)

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.

Download OpenAPI description
Languages
Servers
Mock server

https://apidocs.resharmonics.com/_mock/apis/resharmonics-pms/

Testing API

https://apiv3.resharmonics-dev.com/

Production API

https://apiv3.rerumapp.uk/

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.

Operations

Activities

Activities are tasks created in the PMS

Operations

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.

Operations

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.

Operations

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.

Operations

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.

Operations

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

Operations

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.

Operations

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.

Operations

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.

Operations

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.

Operations

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.

Operations

Cost Centres

Cost Centres API for managing financial products and services.

Operations

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.

Operations

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.

Operations

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.

Operations

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.

Operations

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.

Operations

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.

Operations

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.

Operations

Leads

APIs for creating Leads, leads are used to create basic opportunities in the system which can be converted to enquiries or bookings.

Operations

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.

Operations

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.

Operations

Organisations

Organisations API for managing different financial entities.

Operations

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.

Operations

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.

Operations

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.

Operations

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.

Operations

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.

Operations

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.

Operations

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.

Operations

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

Operations

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.

Operations

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.

Operations

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.

Operations

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.

Operations

Request

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 500 Internal Server Error will be triggered.

Security
OAuth2
Query
buildingIdinteger(int64)

Filter by building name

curl -i -X GET \
  'https://apidocs.resharmonics.com/_mock/apis/resharmonics-pms/api/v3/units?buildingId=0' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

OK

Bodyapplication/json
contentArray of objects(UnitListItemProjection)
pageobject(PageMetadata)
Response
application/json
{ "content": [ {} ], "page": { "size": 0, "totalElements": 0, "totalPages": 0, "number": 0 } }

Request

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 500 Internal Server Error will be triggered.

Security
OAuth2
Query
currentUserobject(RerumUserDetails)required
currentUser.​userIdinteger(int64)
currentUser.​enabledboolean
currentUser.​credentialsNonExpiredboolean
currentUser.​authoritiesArray of objects(GrantedAuthority)
currentUser.​usernamestring
currentUser.​passwordstring
currentUser.​accountNonExpiredboolean
currentUser.​accountNonLockedboolean
Bodyapplication/jsonrequired
idinteger(int64)

Unique identifier of the unit

unitAddressobject(UnitAddressDTO)required

Data Transfer Object representing a unit's address

unitAddress.​idinteger(int64)

Unique identifier of the address

unitAddress.​addressLine1string

First line of the address

unitAddress.​addressLine2string

Second line of the address

unitAddress.​addressLine3string

Third line of the address

unitAddress.​citystring

City of the address

unitAddress.​postCodestring

Postal code of the address

unitAddress.​countryobject(CountryDTO)

Data Transfer Object representing a Country entity in the Property Management System (PMS).

unitTypeobject(UnitTypeSummaryDTO)required

Type summary of the unit

unitType.​idinteger(int64)

Unique identifier of the unit type

Example: 1
unitType.​namestring

Name of the unit type

Example: "Studio Apartment"
namestringrequired

Name of the unit

shortDescriptionstringrequired

Short description of the unit

bookablebooleanrequired

Indicates if the unit is bookable

sellableFromstring(date)required

Date from which the unit is sellable

sellableTostring(date)required

Date until which the unit is sellable

addedOnstring(date)

Date when the unit was added

removedOnstring(date)

Date when the unit was removed

directionsstring

Directions to the unit

costCentrestring

Cost centre of the unit

sortOrderinteger(int32)required

Sort order of the unit

publishbooleanrequired

Indicates if the unit is published

externalIdinteger(int64)

External identifier of the unit

identifierstring

Identifier of the unit

floorinteger(int32)

Floor number of the unit

floorSpaceinteger(int32)

Floor space of the unit

shortDescriptionLang2string

Short description of the unit in second language

shortDescriptionLang3string

Short description of the unit in third language

shortDescriptionLang4string

Short description of the unit in fourth language

shortDescriptionLang5string

Short description of the unit in fifth language

directionsLang2string

Directions to the unit in second language

directionsLang3string

Directions to the unit in third language

directionsLang4string

Directions to the unit in fourth language

directionsLang5string

Directions to the unit in fifth language

primaryLockIdentifierstring

Primary lock identifier of the unit

occupancyFromstring(date)required

Date from which the unit is occupied

occupancyTostring(date)required

Date until which the unit is occupied

pricePerExtraGuestnumber

Price per extra guest for the unit

standardOccupancyinteger(int32)

Standard occupancy of the unit

cleanStatusstring

Clean status of the unit

Enum"CLEAN""DIRTY""INSPECTED"
lastCleanedstring(date-time)

Date and time when the unit was last cleaned

inactiveboolean

Indicates if the unit is inactive

lastInspectedstring(date-time)

Date and time when the unit was last inspected

occupiedboolean

Indicates if the unit is occupied

thirdPartyUrlstring

Third party URL of the unit

unitCostCentreobject(CostCentreDTO)required

Data Transfer Object representing a cost centre

unitCostCentre.​idinteger(int64)

Unique identifier of the cost centre

unitCostCentre.​codestring

Code of the cost centre

unitCostCentre.​namestring

Name of the cost centre

unitCostCentre.​exportNamestring

Export name of the cost centre

organisationIdinteger(int64)required

Organisation ID of the unit

apartmentThumbnailUrlstring

Thumbnail URL of the apartment

curl -i -X POST \
  'https://apidocs.resharmonics.com/_mock/apis/resharmonics-pms/api/v3/units?userId=0&enabled=true&credentialsNonExpired=true&authorities=%5Bobject+Object%5D&username=string&password=string&accountNonExpired=true&accountNonLocked=true' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "id": 0,
    "unitAddress": {
      "id": 0,
      "addressLine1": "string",
      "addressLine2": "string",
      "addressLine3": "string",
      "city": "string",
      "postCode": "string",
      "country": {
        "id": 0,
        "name": "string",
        "sortOrder": 0,
        "countryCodeAlpha2": "string",
        "countryCodeAlpha3": "string",
        "countryCodeNumeric": "string"
      }
    },
    "unitType": {
      "id": 1,
      "name": "Studio Apartment"
    },
    "name": "string",
    "shortDescription": "string",
    "bookable": true,
    "sellableFrom": "2019-08-24",
    "sellableTo": "2019-08-24",
    "addedOn": "2019-08-24",
    "removedOn": "2019-08-24",
    "directions": "string",
    "costCentre": "string",
    "sortOrder": 0,
    "publish": true,
    "externalId": 0,
    "identifier": "string",
    "floor": 0,
    "floorSpace": 0,
    "shortDescriptionLang2": "string",
    "shortDescriptionLang3": "string",
    "shortDescriptionLang4": "string",
    "shortDescriptionLang5": "string",
    "directionsLang2": "string",
    "directionsLang3": "string",
    "directionsLang4": "string",
    "directionsLang5": "string",
    "primaryLockIdentifier": "string",
    "occupancyFrom": "2019-08-24",
    "occupancyTo": "2019-08-24",
    "pricePerExtraGuest": 0,
    "standardOccupancy": 0,
    "cleanStatus": "CLEAN",
    "lastCleaned": "2019-08-24T14:15:22Z",
    "inactive": true,
    "lastInspected": "2019-08-24T14:15:22Z",
    "occupied": true,
    "thirdPartyUrl": "string",
    "unitCostCentre": {
      "id": 0,
      "code": "string",
      "name": "string",
      "exportName": "string"
    },
    "organisationId": 0,
    "apartmentThumbnailUrl": "string"
  }'

Responses

Created

Bodyapplication/json
idinteger(int64)

Unique identifier of the unit

unitAddressobject(UnitAddressDTO)required

Data Transfer Object representing a unit's address

unitAddress.​idinteger(int64)

Unique identifier of the address

unitAddress.​addressLine1string

First line of the address

unitAddress.​addressLine2string

Second line of the address

unitAddress.​addressLine3string

Third line of the address

unitAddress.​citystring

City of the address

unitAddress.​postCodestring

Postal code of the address

unitAddress.​countryobject(CountryDTO)

Data Transfer Object representing a Country entity in the Property Management System (PMS).

unitTypeobject(UnitTypeSummaryDTO)required

Type summary of the unit

unitType.​idinteger(int64)

Unique identifier of the unit type

Example: 1
unitType.​namestring

Name of the unit type

Example: "Studio Apartment"
namestringrequired

Name of the unit

shortDescriptionstringrequired

Short description of the unit

bookablebooleanrequired

Indicates if the unit is bookable

sellableFromstring(date)required

Date from which the unit is sellable

sellableTostring(date)required

Date until which the unit is sellable

addedOnstring(date)

Date when the unit was added

removedOnstring(date)

Date when the unit was removed

directionsstring

Directions to the unit

costCentrestring

Cost centre of the unit

sortOrderinteger(int32)required

Sort order of the unit

publishbooleanrequired

Indicates if the unit is published

externalIdinteger(int64)

External identifier of the unit

identifierstring

Identifier of the unit

floorinteger(int32)

Floor number of the unit

floorSpaceinteger(int32)

Floor space of the unit

shortDescriptionLang2string

Short description of the unit in second language

shortDescriptionLang3string

Short description of the unit in third language

shortDescriptionLang4string

Short description of the unit in fourth language

shortDescriptionLang5string

Short description of the unit in fifth language

directionsLang2string

Directions to the unit in second language

directionsLang3string

Directions to the unit in third language

directionsLang4string

Directions to the unit in fourth language

directionsLang5string

Directions to the unit in fifth language

primaryLockIdentifierstring

Primary lock identifier of the unit

occupancyFromstring(date)required

Date from which the unit is occupied

occupancyTostring(date)required

Date until which the unit is occupied

pricePerExtraGuestnumber

Price per extra guest for the unit

standardOccupancyinteger(int32)

Standard occupancy of the unit

cleanStatusstring

Clean status of the unit

Enum"CLEAN""DIRTY""INSPECTED"
lastCleanedstring(date-time)

Date and time when the unit was last cleaned

inactiveboolean

Indicates if the unit is inactive

lastInspectedstring(date-time)

Date and time when the unit was last inspected

occupiedboolean

Indicates if the unit is occupied

thirdPartyUrlstring

Third party URL of the unit

unitCostCentreobject(CostCentreDTO)required

Data Transfer Object representing a cost centre

unitCostCentre.​idinteger(int64)

Unique identifier of the cost centre

unitCostCentre.​codestring

Code of the cost centre

unitCostCentre.​namestring

Name of the cost centre

unitCostCentre.​exportNamestring

Export name of the cost centre

organisationIdinteger(int64)required

Organisation ID of the unit

apartmentThumbnailUrlstring

Thumbnail URL of the apartment

Response
application/json
{ "id": 0, "unitAddress": { "id": 0, "addressLine1": "string", "addressLine2": "string", "addressLine3": "string", "city": "string", "postCode": "string", "country": {} }, "unitType": { "id": 1, "name": "Studio Apartment" }, "name": "string", "shortDescription": "string", "bookable": true, "sellableFrom": "2019-08-24", "sellableTo": "2019-08-24", "addedOn": "2019-08-24", "removedOn": "2019-08-24", "directions": "string", "costCentre": "string", "sortOrder": 0, "publish": true, "externalId": 0, "identifier": "string", "floor": 0, "floorSpace": 0, "shortDescriptionLang2": "string", "shortDescriptionLang3": "string", "shortDescriptionLang4": "string", "shortDescriptionLang5": "string", "directionsLang2": "string", "directionsLang3": "string", "directionsLang4": "string", "directionsLang5": "string", "primaryLockIdentifier": "string", "occupancyFrom": "2019-08-24", "occupancyTo": "2019-08-24", "pricePerExtraGuest": 0, "standardOccupancy": 0, "cleanStatus": "CLEAN", "lastCleaned": "2019-08-24T14:15:22Z", "inactive": true, "lastInspected": "2019-08-24T14:15:22Z", "occupied": true, "thirdPartyUrl": "string", "unitCostCentre": { "id": 0, "code": "string", "name": "string", "exportName": "string" }, "organisationId": 0, "apartmentThumbnailUrl": "string" }

Request

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 404 Not Found error will be returned. In case of an unexpected system error, a 500 Internal Server Error will be triggered.

Security
OAuth2
Path
idinteger(int64)required

Unit ID

curl -i -X GET \
  'https://apidocs.resharmonics.com/_mock/apis/resharmonics-pms/api/v3/units/{id}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

OK

Bodyapplication/json
idinteger(int64)

Unique identifier of the unit

unitAddressobject(UnitAddressDTO)required

Data Transfer Object representing a unit's address

unitAddress.​idinteger(int64)

Unique identifier of the address

unitAddress.​addressLine1string

First line of the address

unitAddress.​addressLine2string

Second line of the address

unitAddress.​addressLine3string

Third line of the address

unitAddress.​citystring

City of the address

unitAddress.​postCodestring

Postal code of the address

unitAddress.​countryobject(CountryDTO)

Data Transfer Object representing a Country entity in the Property Management System (PMS).

unitTypeobject(UnitTypeSummaryDTO)required

Type summary of the unit

unitType.​idinteger(int64)

Unique identifier of the unit type

Example: 1
unitType.​namestring

Name of the unit type

Example: "Studio Apartment"
namestringrequired

Name of the unit

shortDescriptionstringrequired

Short description of the unit

bookablebooleanrequired

Indicates if the unit is bookable

sellableFromstring(date)required

Date from which the unit is sellable

sellableTostring(date)required

Date until which the unit is sellable

addedOnstring(date)

Date when the unit was added

removedOnstring(date)

Date when the unit was removed

directionsstring

Directions to the unit

costCentrestring

Cost centre of the unit

sortOrderinteger(int32)required

Sort order of the unit

publishbooleanrequired

Indicates if the unit is published

externalIdinteger(int64)

External identifier of the unit

identifierstring

Identifier of the unit

floorinteger(int32)

Floor number of the unit

floorSpaceinteger(int32)

Floor space of the unit

shortDescriptionLang2string

Short description of the unit in second language

shortDescriptionLang3string

Short description of the unit in third language

shortDescriptionLang4string

Short description of the unit in fourth language

shortDescriptionLang5string

Short description of the unit in fifth language

directionsLang2string

Directions to the unit in second language

directionsLang3string

Directions to the unit in third language

directionsLang4string

Directions to the unit in fourth language

directionsLang5string

Directions to the unit in fifth language

primaryLockIdentifierstring

Primary lock identifier of the unit

occupancyFromstring(date)required

Date from which the unit is occupied

occupancyTostring(date)required

Date until which the unit is occupied

pricePerExtraGuestnumber

Price per extra guest for the unit

standardOccupancyinteger(int32)

Standard occupancy of the unit

cleanStatusstring

Clean status of the unit

Enum"CLEAN""DIRTY""INSPECTED"
lastCleanedstring(date-time)

Date and time when the unit was last cleaned

inactiveboolean

Indicates if the unit is inactive

lastInspectedstring(date-time)

Date and time when the unit was last inspected

occupiedboolean

Indicates if the unit is occupied

thirdPartyUrlstring

Third party URL of the unit

unitCostCentreobject(CostCentreDTO)required

Data Transfer Object representing a cost centre

unitCostCentre.​idinteger(int64)

Unique identifier of the cost centre

unitCostCentre.​codestring

Code of the cost centre

unitCostCentre.​namestring

Name of the cost centre

unitCostCentre.​exportNamestring

Export name of the cost centre

organisationIdinteger(int64)required

Organisation ID of the unit

apartmentThumbnailUrlstring

Thumbnail URL of the apartment

Response
application/json
{ "id": 0, "unitAddress": { "id": 0, "addressLine1": "string", "addressLine2": "string", "addressLine3": "string", "city": "string", "postCode": "string", "country": {} }, "unitType": { "id": 1, "name": "Studio Apartment" }, "name": "string", "shortDescription": "string", "bookable": true, "sellableFrom": "2019-08-24", "sellableTo": "2019-08-24", "addedOn": "2019-08-24", "removedOn": "2019-08-24", "directions": "string", "costCentre": "string", "sortOrder": 0, "publish": true, "externalId": 0, "identifier": "string", "floor": 0, "floorSpace": 0, "shortDescriptionLang2": "string", "shortDescriptionLang3": "string", "shortDescriptionLang4": "string", "shortDescriptionLang5": "string", "directionsLang2": "string", "directionsLang3": "string", "directionsLang4": "string", "directionsLang5": "string", "primaryLockIdentifier": "string", "occupancyFrom": "2019-08-24", "occupancyTo": "2019-08-24", "pricePerExtraGuest": 0, "standardOccupancy": 0, "cleanStatus": "CLEAN", "lastCleaned": "2019-08-24T14:15:22Z", "inactive": true, "lastInspected": "2019-08-24T14:15:22Z", "occupied": true, "thirdPartyUrl": "string", "unitCostCentre": { "id": 0, "code": "string", "name": "string", "exportName": "string" }, "organisationId": 0, "apartmentThumbnailUrl": "string" }

Request

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 404 Not Found error will be returned. In case of an unexpected system error, a 500 Internal Server Error will be triggered.

Security
OAuth2
Path
idinteger(int64)required
Query
currentUserobject(RerumUserDetails)required
currentUser.​userIdinteger(int64)
currentUser.​enabledboolean
currentUser.​credentialsNonExpiredboolean
currentUser.​authoritiesArray of objects(GrantedAuthority)
currentUser.​usernamestring
currentUser.​passwordstring
currentUser.​accountNonExpiredboolean
currentUser.​accountNonLockedboolean
Bodyapplication/jsonrequired
idinteger(int64)

Unique identifier of the unit

unitAddressobject(UnitAddressDTO)required

Data Transfer Object representing a unit's address

unitAddress.​idinteger(int64)

Unique identifier of the address

unitAddress.​addressLine1string

First line of the address

unitAddress.​addressLine2string

Second line of the address

unitAddress.​addressLine3string

Third line of the address

unitAddress.​citystring

City of the address

unitAddress.​postCodestring

Postal code of the address

unitAddress.​countryobject(CountryDTO)

Data Transfer Object representing a Country entity in the Property Management System (PMS).

unitTypeobject(UnitTypeSummaryDTO)required

Type summary of the unit

unitType.​idinteger(int64)

Unique identifier of the unit type

Example: 1
unitType.​namestring

Name of the unit type

Example: "Studio Apartment"
namestringrequired

Name of the unit

shortDescriptionstringrequired

Short description of the unit

bookablebooleanrequired

Indicates if the unit is bookable

sellableFromstring(date)required

Date from which the unit is sellable

sellableTostring(date)required

Date until which the unit is sellable

addedOnstring(date)

Date when the unit was added

removedOnstring(date)

Date when the unit was removed

directionsstring

Directions to the unit

costCentrestring

Cost centre of the unit

sortOrderinteger(int32)required

Sort order of the unit

publishbooleanrequired

Indicates if the unit is published

externalIdinteger(int64)

External identifier of the unit

identifierstring

Identifier of the unit

floorinteger(int32)

Floor number of the unit

floorSpaceinteger(int32)

Floor space of the unit

shortDescriptionLang2string

Short description of the unit in second language

shortDescriptionLang3string

Short description of the unit in third language

shortDescriptionLang4string

Short description of the unit in fourth language

shortDescriptionLang5string

Short description of the unit in fifth language

directionsLang2string

Directions to the unit in second language

directionsLang3string

Directions to the unit in third language

directionsLang4string

Directions to the unit in fourth language

directionsLang5string

Directions to the unit in fifth language

primaryLockIdentifierstring

Primary lock identifier of the unit

occupancyFromstring(date)required

Date from which the unit is occupied

occupancyTostring(date)required

Date until which the unit is occupied

pricePerExtraGuestnumber

Price per extra guest for the unit

standardOccupancyinteger(int32)

Standard occupancy of the unit

cleanStatusstring

Clean status of the unit

Enum"CLEAN""DIRTY""INSPECTED"
lastCleanedstring(date-time)

Date and time when the unit was last cleaned

inactiveboolean

Indicates if the unit is inactive

lastInspectedstring(date-time)

Date and time when the unit was last inspected

occupiedboolean

Indicates if the unit is occupied

thirdPartyUrlstring

Third party URL of the unit

unitCostCentreobject(CostCentreDTO)required

Data Transfer Object representing a cost centre

unitCostCentre.​idinteger(int64)

Unique identifier of the cost centre

unitCostCentre.​codestring

Code of the cost centre

unitCostCentre.​namestring

Name of the cost centre

unitCostCentre.​exportNamestring

Export name of the cost centre

organisationIdinteger(int64)required

Organisation ID of the unit

apartmentThumbnailUrlstring

Thumbnail URL of the apartment

curl -i -X PUT \
  'https://apidocs.resharmonics.com/_mock/apis/resharmonics-pms/api/v3/units/{id}?userId=0&enabled=true&credentialsNonExpired=true&authorities=%5Bobject+Object%5D&username=string&password=string&accountNonExpired=true&accountNonLocked=true' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "id": 0,
    "unitAddress": {
      "id": 0,
      "addressLine1": "string",
      "addressLine2": "string",
      "addressLine3": "string",
      "city": "string",
      "postCode": "string",
      "country": {
        "id": 0,
        "name": "string",
        "sortOrder": 0,
        "countryCodeAlpha2": "string",
        "countryCodeAlpha3": "string",
        "countryCodeNumeric": "string"
      }
    },
    "unitType": {
      "id": 1,
      "name": "Studio Apartment"
    },
    "name": "string",
    "shortDescription": "string",
    "bookable": true,
    "sellableFrom": "2019-08-24",
    "sellableTo": "2019-08-24",
    "addedOn": "2019-08-24",
    "removedOn": "2019-08-24",
    "directions": "string",
    "costCentre": "string",
    "sortOrder": 0,
    "publish": true,
    "externalId": 0,
    "identifier": "string",
    "floor": 0,
    "floorSpace": 0,
    "shortDescriptionLang2": "string",
    "shortDescriptionLang3": "string",
    "shortDescriptionLang4": "string",
    "shortDescriptionLang5": "string",
    "directionsLang2": "string",
    "directionsLang3": "string",
    "directionsLang4": "string",
    "directionsLang5": "string",
    "primaryLockIdentifier": "string",
    "occupancyFrom": "2019-08-24",
    "occupancyTo": "2019-08-24",
    "pricePerExtraGuest": 0,
    "standardOccupancy": 0,
    "cleanStatus": "CLEAN",
    "lastCleaned": "2019-08-24T14:15:22Z",
    "inactive": true,
    "lastInspected": "2019-08-24T14:15:22Z",
    "occupied": true,
    "thirdPartyUrl": "string",
    "unitCostCentre": {
      "id": 0,
      "code": "string",
      "name": "string",
      "exportName": "string"
    },
    "organisationId": 0,
    "apartmentThumbnailUrl": "string"
  }'

Responses

OK

Bodyapplication/json
idinteger(int64)

Unique identifier of the unit

unitAddressobject(UnitAddressDTO)required

Data Transfer Object representing a unit's address

unitAddress.​idinteger(int64)

Unique identifier of the address

unitAddress.​addressLine1string

First line of the address

unitAddress.​addressLine2string

Second line of the address

unitAddress.​addressLine3string

Third line of the address

unitAddress.​citystring

City of the address

unitAddress.​postCodestring

Postal code of the address

unitAddress.​countryobject(CountryDTO)

Data Transfer Object representing a Country entity in the Property Management System (PMS).

unitTypeobject(UnitTypeSummaryDTO)required

Type summary of the unit

unitType.​idinteger(int64)

Unique identifier of the unit type

Example: 1
unitType.​namestring

Name of the unit type

Example: "Studio Apartment"
namestringrequired

Name of the unit

shortDescriptionstringrequired

Short description of the unit

bookablebooleanrequired

Indicates if the unit is bookable

sellableFromstring(date)required

Date from which the unit is sellable

sellableTostring(date)required

Date until which the unit is sellable

addedOnstring(date)

Date when the unit was added

removedOnstring(date)

Date when the unit was removed

directionsstring

Directions to the unit

costCentrestring

Cost centre of the unit

sortOrderinteger(int32)required

Sort order of the unit

publishbooleanrequired

Indicates if the unit is published

externalIdinteger(int64)

External identifier of the unit

identifierstring

Identifier of the unit

floorinteger(int32)

Floor number of the unit

floorSpaceinteger(int32)

Floor space of the unit

shortDescriptionLang2string

Short description of the unit in second language

shortDescriptionLang3string

Short description of the unit in third language

shortDescriptionLang4string

Short description of the unit in fourth language

shortDescriptionLang5string

Short description of the unit in fifth language

directionsLang2string

Directions to the unit in second language

directionsLang3string

Directions to the unit in third language

directionsLang4string

Directions to the unit in fourth language

directionsLang5string

Directions to the unit in fifth language

primaryLockIdentifierstring

Primary lock identifier of the unit

occupancyFromstring(date)required

Date from which the unit is occupied

occupancyTostring(date)required

Date until which the unit is occupied

pricePerExtraGuestnumber

Price per extra guest for the unit

standardOccupancyinteger(int32)

Standard occupancy of the unit

cleanStatusstring

Clean status of the unit

Enum"CLEAN""DIRTY""INSPECTED"
lastCleanedstring(date-time)

Date and time when the unit was last cleaned

inactiveboolean

Indicates if the unit is inactive

lastInspectedstring(date-time)

Date and time when the unit was last inspected

occupiedboolean

Indicates if the unit is occupied

thirdPartyUrlstring

Third party URL of the unit

unitCostCentreobject(CostCentreDTO)required

Data Transfer Object representing a cost centre

unitCostCentre.​idinteger(int64)

Unique identifier of the cost centre

unitCostCentre.​codestring

Code of the cost centre

unitCostCentre.​namestring

Name of the cost centre

unitCostCentre.​exportNamestring

Export name of the cost centre

organisationIdinteger(int64)required

Organisation ID of the unit

apartmentThumbnailUrlstring

Thumbnail URL of the apartment

Response
application/json
{ "id": 0, "unitAddress": { "id": 0, "addressLine1": "string", "addressLine2": "string", "addressLine3": "string", "city": "string", "postCode": "string", "country": {} }, "unitType": { "id": 1, "name": "Studio Apartment" }, "name": "string", "shortDescription": "string", "bookable": true, "sellableFrom": "2019-08-24", "sellableTo": "2019-08-24", "addedOn": "2019-08-24", "removedOn": "2019-08-24", "directions": "string", "costCentre": "string", "sortOrder": 0, "publish": true, "externalId": 0, "identifier": "string", "floor": 0, "floorSpace": 0, "shortDescriptionLang2": "string", "shortDescriptionLang3": "string", "shortDescriptionLang4": "string", "shortDescriptionLang5": "string", "directionsLang2": "string", "directionsLang3": "string", "directionsLang4": "string", "directionsLang5": "string", "primaryLockIdentifier": "string", "occupancyFrom": "2019-08-24", "occupancyTo": "2019-08-24", "pricePerExtraGuest": 0, "standardOccupancy": 0, "cleanStatus": "CLEAN", "lastCleaned": "2019-08-24T14:15:22Z", "inactive": true, "lastInspected": "2019-08-24T14:15:22Z", "occupied": true, "thirdPartyUrl": "string", "unitCostCentre": { "id": 0, "code": "string", "name": "string", "exportName": "string" }, "organisationId": 0, "apartmentThumbnailUrl": "string" }

Request

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 204 No Content response will be returned. If the specified unit ID does not exist, a 404 Not Found error will be returned. In case of an unexpected system error, a 500 Internal Server Error will be triggered.

Security
OAuth2
Path
idinteger(int64)required
curl -i -X DELETE \
  'https://apidocs.resharmonics.com/_mock/apis/resharmonics-pms/api/v3/units/{id}' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

OK

Retrieve list of unit access groups

Request

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 500 Internal Server Error will be triggered.

Security
OAuth2
Path
idinteger(int64)required

Unit ID

curl -i -X GET \
  'https://apidocs.resharmonics.com/_mock/apis/resharmonics-pms/api/v3/units/{id}/accessGroups' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

OK

Bodyapplication/json
contentArray of objects(UnitAccessGroupDTO)
pageobject(PageMetadata)
Response
application/json
{ "content": [ {} ], "page": { "size": 0, "totalElements": 0, "totalPages": 0, "number": 0 } }

Request

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.

Security
OAuth2
Path
idinteger(int64)required
curl -i -X GET \
  'https://apidocs.resharmonics.com/_mock/apis/resharmonics-pms/api/v3/units/{id}/customFields' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

OK

Bodyapplication/json
contentArray of objects(CustomFieldDTO)
pageobject(PageMetadata)
Response
application/json
{ "content": [ {} ], "page": { "size": 0, "totalElements": 0, "totalPages": 0, "number": 0 } }

Retrieve contracts for a specific unit

Request

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.

Security
OAuth2
Path
unitIdinteger(int64)required

Unit ID

curl -i -X GET \
  'https://apidocs.resharmonics.com/_mock/apis/resharmonics-pms/api/v3/units/{unitId}/unitContracts' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

OK

Bodyapplication/json
contentArray of objects(UnitContractDTO)
pageobject(PageMetadata)
Response
application/json
{ "content": [ {} ], "page": { "size": 0, "totalElements": 0, "totalPages": 0, "number": 0 } }

Retrieve internal locations for a specific unit

Request

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.

Security
OAuth2
Path
unitIdinteger(int64)required

Unit ID

curl -i -X GET \
  'https://apidocs.resharmonics.com/_mock/apis/resharmonics-pms/api/v3/units/{unitId}/unitLocations' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Responses

OK

Bodyapplication/json
contentArray of objects(UnitInternalLocationDTO)
pageobject(PageMetadata)
Response
application/json
{ "content": [ {} ], "page": { "size": 0, "totalElements": 0, "totalPages": 0, "number": 0 } }

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.

Operations