Skip to main content

Rates

Overview

The Rates module empowers external connectivity partners to programmatically manage and distribute the financial configuration of a hotel’s inventory. While the Availability API manages how many physical units remain, the Rates API dictates how much those specific units cost across different dates and occupancy levels.

Every time a manager alters pricing strategies locally within the Property Management System (PMS), such as applying a weekend markup or a seasonal discount, a dynamic rate modification notification is generated. This payload is transmitted to the endpoint to guarantee absolute pricing parity across all distributing Booking Engines and Online Travel Agencies (OTAs).

Update Rates Endpoint

API Specification

  • HTTP Method: POST
  • Secure URL Path: {{base_url}}/cm/api/{{code}}/changes/rate

Request Headers

  • api-key: {{api_key}} Authorization token assigned to the connecting system. The API key is provided by GuestPro.
  • Content-Type: application/json Explicitly defines the payload structure.

Payload Construction and Schema Definition

(Under Development)

Expected System Responses

Successful Execution

The external system must respond with an HTTP 200 OK or 201 Created.

{
"status": "success",
"message": "Rates have been successfully validated and updated."
}

Failure Execution

When the external system provides a response other than success codes (200, 201), the external system delivers the following error response structure.

{
"status": "error",
"message": "<<error_detail>>"
}

Full Request Body

{
"data": [
{
"type": "changes_notification",
"attributes": {
"hotel_code": "{{your_hotel_code}}",
"request_id": "3911470b-1a95-48a5-b726-2ac187bdc662",
"changes": [
{
"type": "rate_changes",
"attributes": {
"date_from": "2026-12-01",
"date_to": "2026-12-02",
"rate_plan_id": "{{rateplanse_id}}",
"room_type_id": "{{room_type_id}}",
"rates": [
{
"currency": "USD",
"occupancy": 2,
"rate": "125.00"
}
],
"extra_adult": 20,
"extra_child": 10,
"extra_infant": 0
}
}
]
}
}
]
}