Skip to main content

Overview

The Rate Plans List API allows you to retrieve all rate plans available through your distribution channel. Rate plans define the pricing structure for properties, including base rates, extra guest charges, and date-specific rate restrictions.

Retrieving All Rate Plans

GET /v1/ratePlans

Query Parameters

ParameterTypeRequiredDescription
propertyIdstringNoFilter rate plans by a specific property
fromDatestring (YYYY-MM-DD)NoStart date for retrieving rate restrictions
toDatestring (YYYY-MM-DD)NoEnd date for retrieving rate restrictions
When fromDate and toDate are provided, the response includes date-specific rate restrictions within that range.

Retrieving All Rate Plans

Example Request

curl -X GET "https://api.elivaas.com/api/v1/ratePlans" \
  -H "Api-Key: YOUR_API_KEY" \
  -H "Channel-Id: YOUR_CHANNEL_ID"

Example Response

[
  {
    "id": "rp_123",
    "propertyId": "prop_456",
    "name": "Standard Room Rate",
    "code": "european-plan",
    "description": "Room only - no meals included",
    "rate": 1500,
    "minimumRate": 1200,
    "extraAdultRate": 300,
    "extraChildRate": 150,
    "applicableGuest": 2,
    "applicableAdult": 2,
    "applicableChild": 1,
    "restrictions": []
  },
  {
    "id": "rp_124",
    "propertyId": "prop_456",
    "name": "Premium All-Inclusive",
    "code": "all-inclusive",
    "description": "All meals and activities included",
    "rate": 3000,
    "minimumRate": 2500,
    "extraAdultRate": 500,
    "extraChildRate": 250,
    "applicableGuest": 2,
    "applicableAdult": 2,
    "applicableChild": 1,
    "restrictions": []
  }
]

Filtering by Property

To get rate plans for a specific property:

Example Request

curl -X GET "https://api.elivaas.com/api/v1/ratePlans?propertyId=prop_456" \
  -H "Api-Key: YOUR_API_KEY" \
  -H "Channel-Id: YOUR_CHANNEL_ID"

Retrieving Rate Plans with Restrictions

To include date-specific rate adjustments, pass fromDate and toDate:

Example Request

curl -X GET "https://api.elivaas.com/api/v1/ratePlans?propertyId=prop_456&fromDate=2025-08-01&toDate=2025-08-07" \
  -H "Api-Key: YOUR_API_KEY" \
  -H "Channel-Id: YOUR_CHANNEL_ID"

Example Response with Restrictions

[
  {
    "id": "rp_123",
    "propertyId": "prop_456",
    "name": "Standard Room Rate",
    "code": "european-plan",
    "description": "Room only",
    "rate": 1500,
    "minimumRate": 1200,
    "extraAdultRate": 300,
    "extraChildRate": 150,
    "applicableGuest": 2,
    "applicableAdult": 2,
    "applicableChild": 1,
    "restrictions": [
      {
        "date": "2025-08-01",
        "rate": 1500,
        "stopSell": false
      },
      {
        "date": "2025-08-02",
        "rate": 1800,
        "stopSell": false
      },
      {
        "date": "2025-08-03",
        "rate": 1800,
        "stopSell": false
      }
    ]
  }
]

Response Fields

FieldTypeDescription
idstringUnique identifier for the rate plan
propertyIdstringIdentifier of the associated property
namestringName of the rate plan
codestringCode identifying the rate plan (e.g., “european-plan”, “all-inclusive”)
descriptionstringDescription of what the rate plan includes
rateintegerBase rate of the rate plan (per night)
minimumRateintegerMinimum rate that can be charged
extraAdultRateintegerCharge for each additional adult beyond applicableAdult
extraChildRateintegerCharge for each additional child beyond applicableChild
applicableGuestintegerNumber of guests included in the base rate
applicableAdultintegerNumber of adults included in the base rate
applicableChildintegerNumber of children included in the base rate
restrictionsarrayDate-specific rate adjustments (only populated when date range is provided)
restrictions[].datestring (date)Date for the restriction
restrictions[].ratenumberRate applicable on this specific date
restrictions[].stopSellbooleanWhether sales are stopped on this date

Understanding Rate Plans

  • The rate field is the default base rate. Actual rates on specific dates may differ based on restrictions.
  • If the number of guests exceeds applicableAdult or applicableChild, the extraAdultRate or extraChildRate is charged per additional guest.
  • When restrictions[].stopSell is true, the rate plan is not available on that date.

Authentication

All requests must include the following headers:
  • Api-Key: Your API key for authentication
  • Channel-Id: Identifier for the channel making the request

Error Handling

The API returns standard HTTP status codes:
  • 200: Success
  • 401: Unauthorized
  • 500: Internal Server Error