OPERA Cloud Distribution Content

Oracle Hospitality Distribution Content is for distribution partners to retrieve property Channel content information. Compatible with OPERA Cloud release 26.2.0.0. 5 operation(s) documented; base path /content/v1. Harvested verbatim from Oracle's public hospitality-api-docs repository (Swagger 2.0, release 26.2.0.0).

OpenAPI Specification

oracle-hospitality-distribution-v1-content.json Raw ↑
{
  "swagger": "2.0",
  "info": {
    "title": "OPERA Cloud Distribution Content",
    "description": "Oracle Hospitality Distribution Content is for distribution partners to retrieve property Channel content information.<br /><br /> Compatible with OPERA Cloud release 26.2.0.0<br /><br /><p> This document and all content within is available under the Universal Permissive License v 1.0 (https://oss.oracle.com/licenses/upl). Copyright (c) 2020, 2026 Oracle and/or its affiliates.</p>",
    "version": "26.2.0.0",
    "contact": {
      "email": "hospitality_apis_ww_grp@oracle.com"
    },
    "license": {
      "name": "UPL",
      "url": "https://opensource.org/licenses/upl"
    },
    "termsOfService": "https://www.oracle.com/legal/terms.html"
  },
  "basePath": "/content/v1",
  "schemes": [
    "https"
  ],
  "produces": [
    "application/json; charset=utf-8"
  ],
  "paths": {
    "/hotels": {
      "get": {
        "summary": "Properties Summary",
        "description": "Retrieve list of property information for all properties actively mapped to a single channel code.  <p><strong>OperationId:</strong>getPropertiesSummary</p>",
        "operationId": "getPropertiesSummary",
        "tags": [
          "Content"
        ],
        "parameters": [
          {
            "$ref": "#/parameters/authorization"
          },
          {
            "$ref": "#/parameters/x-channelCode"
          },
          {
            "$ref": "#/parameters/x-app-key"
          },
          {
            "$ref": "#/parameters/x-request-id"
          },
          {
            "$ref": "#/parameters/connectionStatusLastChangedFrom"
          },
          {
            "$ref": "#/parameters/connectionStatusLastChangedTo"
          },
          {
            "$ref": "#/parameters/connectionStatus"
          },
          {
            "$ref": "#/parameters/fetchInstructions"
          },
          {
            "$ref": "#/parameters/limit"
          },
          {
            "$ref": "#/parameters/offset"
          },
          {
            "$ref": "#/parameters/x-originating-application"
          }
        ],
        "responses": {
          "200": {
            "headers": {
              "Content-Language": {
                "type": "string",
                "description": "Audience language",
                "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*",
                "x-example": "en-GB"
              }
            },
            "description": "Response object for property info",
            "schema": {
              "$ref": "#/definitions/PropertyInfoSummaryResponse"
            }
          },
          "400": {
            "description": "Request data provided is invalid",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "405": {
            "description": "Not Allowed",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "406": {
            "description": "Not Acceptable",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "413": {
            "description": "Payload Too Large",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "414": {
            "description": "URI Too Long",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "415": {
            "description": "Unsupported Media Type",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "500": {
            "description": "Internal Server Error",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "502": {
            "description": "Bad Gateway",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "503": {
            "description": "Service Unavailable",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          }
        }
      }
    },
    "/hotels/{hotelCode}": {
      "get": {
        "summary": "Property Information",
        "description": "Retrieve property information for a single property. <p><strong>OperationId:</strong>getPropertyInfo</p>",
        "operationId": "getPropertyInfo",
        "tags": [
          "Content"
        ],
        "parameters": [
          {
            "$ref": "#/parameters/authorization"
          },
          {
            "$ref": "#/parameters/x-channelCode"
          },
          {
            "$ref": "#/parameters/x-app-key"
          },
          {
            "$ref": "#/parameters/x-request-id"
          },
          {
            "$ref": "#/parameters/HotelCode"
          },
          {
            "$ref": "#/parameters/x-originating-application"
          }
        ],
        "responses": {
          "200": {
            "headers": {
              "Content-Language": {
                "type": "string",
                "description": "Audience language",
                "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*",
                "x-example": "en-GB"
              }
            },
            "description": "Response object for property info",
            "schema": {
              "$ref": "#/definitions/PropertyInfoResponse"
            }
          },
          "400": {
            "description": "Request data provided is invalid",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "405": {
            "description": "Not Allowed",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "406": {
            "description": "Not Acceptable",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "413": {
            "description": "Payload Too Large",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "414": {
            "description": "URI Too Long",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "415": {
            "description": "Unsupported Media Type",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "500": {
            "description": "Internal Server Error",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "502": {
            "description": "Bad Gateway",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "503": {
            "description": "Service Unavailable",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          }
        }
      }
    },
    "/hotels/{hotelCode}/roomTypes": {
      "get": {
        "summary": "Room Types Information",
        "description": "Retrieve room types information for a single property. <p><strong>OperationId:</strong>getRoomTypesInfo</p>",
        "operationId": "getRoomTypesInfo",
        "tags": [
          "Content"
        ],
        "parameters": [
          {
            "$ref": "#/parameters/authorization"
          },
          {
            "$ref": "#/parameters/x-channelCode"
          },
          {
            "$ref": "#/parameters/x-app-key"
          },
          {
            "$ref": "#/parameters/x-request-id"
          },
          {
            "$ref": "#/parameters/HotelCode"
          },
          {
            "$ref": "#/parameters/includeRoomAmenities"
          },
          {
            "$ref": "#/parameters/roomType"
          },
          {
            "$ref": "#/parameters/limit"
          },
          {
            "$ref": "#/parameters/offset"
          },
          {
            "$ref": "#/parameters/x-originating-application"
          }
        ],
        "responses": {
          "200": {
            "headers": {
              "Content-Language": {
                "type": "string",
                "description": "Audience language",
                "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*",
                "x-example": "en-GB"
              }
            },
            "description": "Response object for roomTypes info",
            "schema": {
              "$ref": "#/definitions/RoomTypesResponse"
            }
          },
          "400": {
            "description": "Request data provided is invalid",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "405": {
            "description": "Not Allowed",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "406": {
            "description": "Not Acceptable",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "413": {
            "description": "Payload Too Large",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "414": {
            "description": "URI Too Long",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "415": {
            "description": "Unsupported Media Type",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "500": {
            "description": "Internal Server Error",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "502": {
            "description": "Bad Gateway",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "503": {
            "description": "Service Unavailable",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          }
        }
      }
    },
    "/hotels/{hotelCode}/ratePlans": {
      "get": {
        "summary": "Rate Plans Information",
        "description": "Retrieve rate plans information for a single property. <p><strong>OperationId:</strong>getRatePlans</p>",
        "operationId": "getRatePlansInfo",
        "tags": [
          "Content"
        ],
        "parameters": [
          {
            "$ref": "#/parameters/authorization"
          },
          {
            "$ref": "#/parameters/x-channelCode"
          },
          {
            "$ref": "#/parameters/x-app-key"
          },
          {
            "$ref": "#/parameters/x-request-id"
          },
          {
            "$ref": "#/parameters/HotelCode"
          },
          {
            "$ref": "#/parameters/includeNegotiatedRates"
          },
          {
            "$ref": "#/parameters/ratePlanCode"
          },
          {
            "$ref": "#/parameters/fetchInstructionsRatePlans"
          },
          {
            "$ref": "#/parameters/limit"
          },
          {
            "$ref": "#/parameters/offset"
          },
          {
            "$ref": "#/parameters/x-originating-application"
          }
        ],
        "responses": {
          "200": {
            "headers": {
              "Content-Language": {
                "type": "string",
                "description": "Audience language",
                "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*",
                "x-example": "en-GB"
              }
            },
            "description": "Response object for property info",
            "schema": {
              "$ref": "#/definitions/RatePlansResponse"
            }
          },
          "400": {
            "description": "Request data provided is invalid",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "405": {
            "description": "Not Allowed",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "406": {
            "description": "Not Acceptable",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "413": {
            "description": "Payload Too Large",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "414": {
            "description": "URI Too Long",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "415": {
            "description": "Unsupported Media Type",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "500": {
            "description": "Internal Server Error",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "502": {
            "description": "Bad Gateway",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "503": {
            "description": "Service Unavailable",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          }
        }
      }
    },
    "/hotels/{hotelCode}/rateRooms": {
      "get": {
        "summary": "Rate Rooms Information",
        "description": "Retrieve rate plan and room type mapping information for a single property. <p><strong>OperationId:</strong>getRateRooms</p>",
        "operationId": "getRateRooms",
        "tags": [
          "Content"
        ],
        "parameters": [
          {
            "$ref": "#/parameters/authorization"
          },
          {
            "$ref": "#/parameters/x-channelCode"
          },
          {
            "$ref": "#/parameters/x-app-key"
          },
          {
            "$ref": "#/parameters/x-request-id"
          },
          {
            "$ref": "#/parameters/HotelCode"
          },
          {
            "$ref": "#/parameters/includeInactive"
          },
          {
            "$ref": "#/parameters/roomType"
          },
          {
            "$ref": "#/parameters/ratePlanCode"
          },
          {
            "$ref": "#/parameters/limit"
          },
          {
            "$ref": "#/parameters/offset"
          },
          {
            "$ref": "#/parameters/x-originating-application"
          }
        ],
        "responses": {
          "200": {
            "headers": {
              "Content-Language": {
                "type": "string",
                "description": "Audience language",
                "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*",
                "x-example": "en-GB"
              }
            },
            "description": "Response object for property info",
            "schema": {
              "$ref": "#/definitions/RateRoomsResponse"
            }
          },
          "400": {
            "description": "Request data provided is invalid",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "401": {
            "description": "Unauthorized",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "403": {
            "description": "Forbidden",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "404": {
            "description": "Not Found",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "405": {
            "description": "Not Allowed",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "406": {
            "description": "Not Acceptable",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "413": {
            "description": "Payload Too Large",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "414": {
            "description": "URI Too Long",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "415": {
            "description": "Unsupported Media Type",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "500": {
            "description": "Internal Server Error",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "502": {
            "description": "Bad Gateway",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          },
          "503": {
            "description": "Service Unavailable",
            "schema": {
              "$ref": "#/definitions/ExceptionDetail"
            }
          }
        }
      }
    }
  },
  "parameters": {
    "x-request-id": {
      "name": "x-request-id",
      "type": "string",
      "description": "Unique tracing key e.g. 4664ab3423434a45",
      "in": "header",
      "x-example": "4664ab3423434a45"
    },
    "HotelCode": {
      "name": "hotelCode",
      "in": "path",
      "description": "Hotel Code",
      "type": "string",
      "minLength": 1,
      "maxLength": 50,
      "required": true,
      "x-example": "XUSXXYY99"
    },
    "fetchInstructionsRatePlans": {
      "name": "fetchInstructions",
      "in": "query",
      "type": "string",
      "description": "The optional additional information to be included in the response",
      "required": false,
      "enum": [
        "Policy"
      ]
    },
    "roomType": {
      "name": "roomType",
      "in": "query",
      "description": "Room Type",
      "type": "string",
      "minLength": 1,
      "maxLength": 20,
      "required": false,
      "x-example": "XA1K"
    },
    "connectionStatusLastChangedTo": {
      "name": "connectionStatusLastChangedTo",
      "in": "query",
      "description": "Channel connection status last changed before this time",
      "type": "string",
      "format": "date-time",
      "required": false,
      "x-example": "2022-01-02T11:30:22.234Z"
    },
    "ratePlanCode": {
      "name": "ratePlanCode",
      "in": "query",
      "description": "Rate Plan code",
      "type": "string",
      "minLength": 1,
      "maxLength": 20,
      "required": false,
      "x-example": "XDAILY"
    },
    "includeInactive": {
      "name": "includeInactive",
      "in": "query",
      "description": "If true include inactive rateRooms. Default is False",
      "type": "boolean",
      "required": false,
      "default": false,
      "x-example": false
    },
    "fetchInstructions": {
      "name": "fetchInstructions",
      "in": "query",
      "type": "string",
      "description": "The optional summary sections to be included in the response",
      "required": false,
      "enum": [
        "ConnectionInformation"
      ]
    },
    "offset": {
      "name": "offset",
      "description": "Non-negative integer values that specifies the index of the first item to be returned. The offset index begins at 0. By default, the offset is 0, which returns all items starting from the first item in the collection",
      "type": "integer",
      "in": "query",
      "required": false,
      "minimum": 0,
      "x-example": 1,
      "default": 0
    },
    "connectionStatus": {
      "name": "connectionStatus",
      "in": "query",
      "type": "string",
      "description": "Channel connection status",
      "required": false,
      "enum": [
        "TEST",
        "ACTIVE",
        "MAINTENANCE"
      ]
    },
    "limit": {
      "name": "limit",
      "description": "Integer, the maximal number of item entities to be returned",
      "type": "integer",
      "in": "query",
      "required": false,
      "x-example": 40,
      "minimum": 1,
      "maximum": 100,
      "default": 20
    },
    "includeNegotiatedRates": {
      "name": "includeNegotiatedRates",
      "in": "query",
      "description": "Set this true to include Negotiated rate plans along with public rate plans. Default is False",
      "type": "boolean",
      "required": false,
      "default": false,
      "x-example": false
    },
    "connectionStatusLastChangedFrom": {
      "name": "connectionStatusLastChangedFrom",
      "in": "query",
      "description": "Channel connection status last changed after this time",
      "type": "string",
      "format": "date-time",
      "required": false,
      "x-example": "2022-01-02T11:30:22.234Z"
    },
    "x-channelCode": {
      "name": "x-channelCode",
      "in": "header",
      "description": "Channel code",
      "type": "string",
      "minLength": 1,
      "maxLength": 50,
      "required": true,
      "x-example": "CH1"
    },
    "authorization": {
      "name": "authorization",
      "description": "Bearer token that needs to be passed which is generated post user\n  authentication",
      "type": "string",
      "in": "header",
      "required": true
    },
    "includeRoomAmenities": {
      "name": "includeRoomAmenities",
      "in": "query",
      "description": "If true include room amenities along with each room type. Default is False",
      "type": "boolean",
      "required": false,
      "default": false,
      "x-example": false
    },
    "x-app-key": {
      "name": "x-app-key",
      "description": "Client or Partner's Application Key",
      "type": "string",
      "pattern": "^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89aAbB][a-f0-9]{3}-[a-f0-9]{12}$",
      "in": "header",
      "required": false
    },
    "x-originating-application": {
      "name": "x-originating-application",
      "type": "string",
      "description": "Customer's Integration Application Id",
      "in": "header"
    }
  },
  "definitions": {
    "RoomTypesResponse": {
      "description": "Room Types Response",
      "type": "object",
      "properties": {
        "roomTypes": {
          "description": "Collection of the returned Room Types for given channel",
          "type": "array",
          "items": {
            "$ref": "#/definitions/ContentRoomType"
          }
        },
        "count": {
          "type": "integer",
          "example": 50
        },
        "hasMore": {
          "type": "boolean",
          "example": true
        },
        "limit": {
          "type": "integer",
          "example": 100
        },
        "offset": {
          "type": "integer",
          "example": 25
        },
        "totalResults": {
          "type": "integer",
          "example": 500
        }
      }
    },
    "ContentRoomType": {
      "type": "object",
      "description": "Room Type information",
      "properties": {
        "hotelRoomType": {
          "type": "string",
          "example": "A1K",
          "description": "A room type code for a hotel."
        },
        "roomType": {
          "type": "string",
          "example": "XA1K",
          "description": "A code for a room type for a requested channel."
        },
        "description": {
          "type": "array",
          "items": {
            "type": "string",
            "example": "Deluxe King Room on my Channel"
          }
        },
        "roomName": {
          "type": "string",
          "example": 102
        },
        "roomCategory": {
          "type": "string",
          "example": "SUITE"
        },
        "roomAmenities": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/ContentRoomAmenity"
          }
        },
        "roomViewCode": {
          "type": "string"
        },
        "roomViewType": {
          "type": "string"
        },
        "roomPrimaryBedType": {
          "type": "string"
        },
        "nonSmokingInd": {
          "type": "boolean",
          "example": true
        },
        "occupancy": {
          "type": "object",
          "$ref": "#/definitions/Occupancy"
        },
        "numberOfUnits": {
          "type": "integer",
          "description": "number of rooms requested",
          "example": 1
        }
      }
    },
    "ContentRoomAmenity": {
      "type": "object",
      "properties": {
        "roomAmenity": {
          "type": "string"
        },
        "description": {
          "type": "string"
        },
        "quantity": {
          "type": "integer"
        },
        "includeInRate": {
          "type": "boolean"
        },
        "confirmable": {
          "type": "boolean"
        }
      }
    },
    "Occupancy": {
      "type": "object",
      "properties": {
        "minOccupancy": {
          "description": "Assigned Type: ota2-0500:NonNegativeInteger",
          "type": "integer",
          "format": "int32",
          "minimum": 0,
          "exclusiveMinimum": false,
          "example": 2
        },
        "maxOccupancy": {
          "description": "Assigned Type: ota2-0500:NonNegativeInteger",
          "type": "integer",
          "format": "int32",
          "minimum": 0,
          "exclusiveMinimum": false,
          "example": 8
        },
        "maxAdultOccupancy": {
          "description": "Assigned Type: ota2-0500:NonNegativeInteger",
          "type": "integer",
          "format": "int32",
          "minimum": 0,
          "exclusiveMinimum": false,
          "example": 4
        },
        "maxChildOccupancy": {
          "description": "Assigned Type: ota2-0500:NonNegativeInteger",
          "type": "integer",
          "format": "int32",
          "minimum": 0,
          "exclusiveMinimum": false,
          "example": 3
        }
      }
    },
    "RateRoomsResponse": {
      "description": "Rate Rooms Response",
      "type": "object",
      "properties": {
        "rateRooms": {
          "description": "Collection of the returned RateRooms for given channel",
          "type": "array",
          "items": {
            "$ref": "#/definitions/ContentRateRoom"
          }
        },
        "count": {
          "type": "integer",
          "example": 50
        },
        "hasMore": {
          "type": "boolean",
          "example": true
        },
        "limit": {
          "type": "integer",
          "example": 100
        },
        "offset": {
          "type": "integer",
          "example": 25
        },
        "totalResults": {
          "type": "integer",
          "example": 500
        }
      }
    },
    "ContentRateRoom": {
      "type": "object",
      "properties": {
        "ratePlanCode": {
          "type": "string",
          "example": "XDAILY",
          "description": "A code for a rate plan for a requested channel."
        },
        "hotelRatePlanCode": {
          "type": "string",
          "example": "DAILY",
          "description": "A rate plan code for a hotel."
        },
        "roomType": {
          "type": "string",
          "example": "XA1K",
          "description": "A code for a room type for a requested channel."
        },
        "hotelRoomType": {
          "type": "string",
          "example": "A1K",
          "description": "A room type code for a hotel."
        },
        "active": {
          "type": "boolean",
          "example": true,
          "description": "It represent if the rate room is active or inactive. Default value is true."
        },
        "occupancy": {
          "type": "object",
          "description": "It holds list of elements that defines room type occupancy information.",
          "$ref": "#/definitions/Occupancy"
        }
      }
    },
    "RatePlansResponse": {
      "description": "Rate Plans Response",
      "type": "object",
      "properties": {
        "ratePlans": {
          "description": "Collection of the returned Rate Plans for a given channel",
          "type": "array",
          "items": {
            "$ref": "#/definitions/ContentRatePlan"
          }
        },
        "count": {
          "type": "integer",
          "example": 50
        },
        "hasMore": {
          "type": "boolean",
          "example": true
        },
        "limit": {
          "type": "integer",
          "example": 100
        },
        "offset": {
          "type": "integer",
          "example": 25
        },
        "totalResults": {
          "type": "integer",
          "example": 500
        }
      }
    },
    "ContentRatePlan": {
      "type": "object",
      "properties": {
        "hotelRatePlanCode": {
          "type": "string",
          "example": "DAILY",
          "description": "A rate plan code for a hotel."
        },
        "ratePlanCode": {
          "type": "string",
          "example": "XDAILY",
          "description": "A code for a rate plan for a requested channel."
        },
        "active": {
          "type": "boolean",
          "example": true,
          "description": "It represent if the rate is active or inactive."
        },
        "taxInclusive": {
          "description": "It represents whether rate is tax Inclusive or not.",
          "type": "boolean",
          "example": true
        },
        "currencyCode": {
          "type": "string",
          "description": "currency code",
          "pattern": "[a-zA-Z]{3}",
          "example": "USD"
        },
        "negotiated": {
          "description": "if the rate plan is negotiated or not",
          "type": "boolean"
        },
        "ratePlanType": {
          "type": "string",
          "description": "Code of the Channel Rate Plan Type",
          "example": 10
        },
        "ratePlanName": {
          "description": "Rate Plan Name",
          "type": "string"
        },
        "identificationRequired": {
          "type": "boolean",
          "description": "Indicates if an ID is required during the Check-In for this rate booking"
        },
        "ratePlanLevel": {
          "type": "string",
          "description": "The rate level associated with the rate code"
        },
        "ratePlanCategory": {
          "type": "string",
          "description": "The rate category associated with the rate plan code"
        },
        "gdsDescription": {
          "type": "object",
          "$ref": "#/definitions/Description"
        },
        "mealPlan": {
          "description": "Type of meal plan the rate plan includes",
          "type": "object",
          "$ref": "#/definitions/OfferMealPlan"
        },
        "cancellationPolicies": {
          "description": "Cancellation policy schedule(s) and de

# --- truncated at 32 KB (58 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/oracle-hospitality/refs/heads/main/openapi/oracle-hospitality-distribution-v1-content.json