Rate Plans

Get a list of Rates Plans.

get/rates/v1/rate-plans

Request

  • Base URL
    https://api.cloudbeds.com
  • URL
    https://api.cloudbeds.com/rates/v1/rate-plans
  • Auth
    OAuth 2
    Authorization code: https://api.cloudbeds.com/auth/oauth/authorize
    Token URL: https://api.cloudbeds.com/auth/oauth/token scopes: read:rate

Query parameters

offsetinteger

The number of items to skip before starting to collect the result set. Used for pagination.

limitinteger

The maximum number of items to return in the response. Default is 100.

filtersstring

Filter the list. Each clause is written field:operator:value, and multiple clauses are separated by a semicolon (;) — not a comma, which the sort parameter uses. Clauses are combined with AND; grouping and OR are not supported here. Supported fields: isActive (equals), isDerived (equals), promoCode (contains), status (equals, in), policyId (equals, in), segmentId (equals, in), derivedRatePlanId (equals, in, is_null, is_not_null). A status filter takes one of active, expired, no-intervals, disabled; with in, several separated by a comma. It is applied before limit and offset, so a page and its total both describe the rate plans in those statuses. The in operator takes a comma-separated list of up to 100 IDs (policyId:in:1,2,3); is_null and is_not_null take no value (derivedRatePlanId:is_null). derivedRatePlanId takes 0 for the property base rate, alone or in a list (derivedRatePlanId:in:0,12), and 0 matches plans with no parent plan. derivedRatePlanId:is_null matches plans with no parent plan, which includes plans derived from the base rate; derivedRatePlanId:is_not_null matches plans whose parent is another rate plan. None of these checks isDerived, so add isDerived:equals:true to keep derived plans only. policyId, segmentId and derivedRatePlanId are filters only and cannot be sorted on.

sortstring

Sort the list. Supported fields: createdAt, updatedAt, isActive, status. Multiple fields are separated by a comma (,), and each may carry a direction written as field:asc or field:desc; a field given on its own sorts ascending. status sorts in the order active, expired, no-intervals, disabled (reversed for desc). When omitted, the list is returned newest first (createdAt descending).

includeTotalboolean

Return the total number of items matching the request, ignoring limit and offset. Boolean values are accepted case-insensitively, so true, TRUE, True and 1 all enable it.

Headers

x-property-idstring required
Example:1,2,3

A numeric, comma-separated string representing the property IDs, sent in the header.

Response

List of Rates Plans.

limitinteger required
offsetinteger required
totalinteger nullable

Total number of items matching the request; present only when includeTotal is requested.

Example response

{
  "data": [
    {
      "propertyId": "9876",
      "isActive": true,
      "status": "active",
      "derivedRatePlanId": "456",
      "isDerived": true,
      "derivedType": "fixed",
      "derivedValue": 150.5,
      "addons": [
        {
          "id": "1234567",
          "addonId": "4674899",
          "settings": "package_inclusive"
        }
      ],
      "promoCode": "SUMMER2023",
      "sources": [
        "source1",
        "source2"
      ],
      "name": {
        "en": "Standard Rate",
        "es": "Tarifa Estándar"
      },
      "description": {
        "en": "Our standard rate plan",
        "es": "Nuestro plan de tarifas estándar"
      },
      "namePrivate": {
        "en": "Standard Internal",
        "es": "Estándar Interno"
      },
      "terms": {
        "en": "Standard terms apply",
        "es": "Se aplican términos estándar"
      },
      "intervals": [
        {
          "name": "BaseRate1",
          "ratePlanId": 123,
          "roomTypeId": 456,
          "startDate": "2025-07-03",
          "endDate": "2025-07-10",
          "minLos": 1,
          "days": [
            60,
            50,
            50,
            50,
            50,
            65.99,
            65.99
          ],
          "adultDays": {
            "1": {
              "3": 20,
              "4": 20
            },
            "5": {
              "3": 35,
              "4": 35
            }
          },
          "childDays": {
            "1": {
              "1": 5,
              "2": 10
            },
            "5": {
              "1": 10,
              "2": 15
            }
          },
          "cutOff": 3,
          "lastMinuteBooking": 1,
          "limitToNumberOfRooms": 5,
          "agePolicyPricing": [
            {
              "ageGroupId": 7,
              "extraGuestsType": "per_age_group",
              "days": [
                {
                  "dayOfWeek": 1,
                  "priceAmount": "12.00",
                  "priceCurrency": "USD"
                }
              ]
            }
          ]
        }
      ],
      "createdAt": "2023-10-01T12:00:00+00:00",
      "updatedAt": "2023-10-01T12:00:00+00:00",
      "policyId": "9888000",
      "segmentId": "789",
      "mealPlans": [
        "breakfast",
        "dinner"
      ]
    }
  ]
}

Changes

No recorded changes to this operation across all 1 revision of this API.