{ "swagger": "2.0", "info": { "title": "OPERA Cloud Room Rotation Configuration Service API", "description": "APIs to cater for Room Rotation Configuration functionality in OPERA Cloud. Api provides capability to handle Room Rotation in OPERA Cloud. Room Rotation provides room ownership options for automatic inventory rotation and prioritization for owner rooms assignment and occupancy.

Compatible with OPERA Cloud release 26.2.0.0.

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.

", "version": "26.2.0.0", "termsOfService": "https://www.oracle.com/legal/terms.html", "contact": { "email": "hospitality_apis_ww_grp@oracle.com" }, "license": { "name": "UPL", "url": "https://opensource.org/licenses/upl" } }, "schemes": [ "https" ], "basePath": "/rmr/config/v1", "produces": [ "application/json" ], "paths": { "/adjustmentReasons": { "get": { "summary": "Get Room Rotation Adjustment Reasons", "description": "Use this API to get configured Room Rotation Adjustment Reasons.

OperationId:getAdjustmentReasons

", "operationId": "getAdjustmentReasons", "parameters": [ { "name": "fetchInactive", "in": "query", "required": false, "description": "Determines wether to fetch inactive records or not.", "type": "boolean", "default": false }, { "name": "code", "in": "query", "type": "array", "collectionFormat": "multi", "description": "Rotation Adjustment Reason Codes to be searched. Multiple values can be entered by adding multiple query parameters.", "maxItems": 4000, "items": { "type": "string", "minLength": 0, "maxLength": 8 }, "required": false }, { "name": "wildCard", "in": "query", "required": false, "description": "Wildcard search on the code.", "type": "string", "minLength": 0, "maxLength": 8 }, { "name": "description", "in": "query", "required": false, "description": "Description of the code.", "type": "string", "minLength": 0, "maxLength": 2000 }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-hotelid" }, { "$ref": "#/parameters/x-externalsystem" }, { "$ref": "#/parameters/Accept-Language" } ], "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 fetching Room Rotation Adjustment Reasons.", "schema": { "$ref": "#/definitions/FetchAdjustmentReasonsDetails" } }, "204": { "description": "AdjustmentReasons not found." }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "RoomRotationConfig" ] }, "post": { "summary": "Post Room Rotation Adjustment Reasons", "description": "Use this API to post Room Rotation Adjustment Reasons.

OperationId:postAdjustmentReasons

", "operationId": "postAdjustmentReasons", "parameters": [ { "name": "CreateAdjustmentReasonsDetails", "in": "body", "required": true, "description": "Request object for creating a new Room Rotation Adjustment Reason.", "schema": { "allOf": [ { "$ref": "#/definitions/CreateAdjustmentReasonsDetails" } ] } }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-hotelid" }, { "$ref": "#/parameters/x-externalsystem" }, { "$ref": "#/parameters/Accept-Language" } ], "responses": { "201": { "headers": { "Content-Language": { "type": "string", "description": "Audience language", "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*", "x-example": "en-GB" }, "Location": { "type": "string", "description": "Location of newly created resource" } }, "description": "HATEOAS links which help the consumer to navigate to resources", "schema": { "$ref": "#/definitions/status" } }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "RoomRotationConfig" ] } }, "/adjustmentReasons/{adjustmentReasonsId}": { "put": { "summary": "Update Room Rotation Adjustment Reasons", "description": "Use this API to update Room Rotation Adjustment Reasons.

OperationId:putAdjustmentReasons

", "operationId": "putAdjustmentReasons", "parameters": [ { "name": "adjustmentReasonsId", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 8, "description": "Unique ID of Room Rotation Adjustment Reason" }, { "name": "ChangeAdjustmentReasonsDetails", "in": "body", "required": true, "description": "Request object for changing an existing Room Rotation Adjustment Reasons.", "schema": { "allOf": [ { "$ref": "#/definitions/ChangeAdjustmentReasonsDetails" } ] } }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-hotelid" }, { "$ref": "#/parameters/x-externalsystem" }, { "$ref": "#/parameters/Accept-Language" } ], "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" }, "Location": { "type": "string", "description": "Location of newly created resource" } }, "description": "Response Body.", "schema": { "$ref": "#/definitions/AdjustmentReasonsDetailsUpdated" } }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "RoomRotationConfig" ] }, "delete": { "summary": "Delete Room Rotation Adjustment Reasons", "description": "Use this API to delete Room Rotation Adjustment Reasons.

OperationId:deleteAdjustmentReasons

", "operationId": "deleteAdjustmentReasons", "parameters": [ { "name": "adjustmentReasonsId", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 8, "description": "Unique ID of Room Rotation Adjustment Reason." }, { "name": "code", "in": "query", "type": "array", "collectionFormat": "multi", "maxItems": 4000, "description": "Code of the Room Rotation Adjustment Reason. Multiple values can be entered by adding multiple query parameters.", "items": { "type": "string", "minLength": 0, "maxLength": 8 }, "required": false }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-hotelid" }, { "$ref": "#/parameters/x-externalsystem" }, { "$ref": "#/parameters/Accept-Language" } ], "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" }, "Location": { "type": "string", "description": "Location of newly created resource" } }, "description": "HATEOAS links which help the consumer to navigate to resources", "schema": { "$ref": "#/definitions/status" } }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "RoomRotationConfig" ] } }, "/hotels/{hotelId}/revenueTransactionCodes": { "get": { "summary": "Retrieve all Room Rotation Revenue Transaction Codes", "description": "Use this API to retrieve all existing Room Rotation Revenue Transaction Codes for a given hotel.

OperationId:getRevenueTransactionCodes

", "operationId": "getRevenueTransactionCodes", "parameters": [ { "name": "hotelId", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 20, "description": "Unique ID of hotel." }, { "name": "rotationRevenue", "in": "query", "required": false, "description": "Indicate to retrieve transaction codes that are marked as Rotation Revenue transaction codes. If this value is omitted, all transaction codes will be returned for the given property.", "type": "boolean" }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-hotelid" }, { "$ref": "#/parameters/x-externalsystem" }, { "$ref": "#/parameters/Accept-Language" } ], "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 retrieving revenue transaction codes for a given property", "schema": { "$ref": "#/definitions/FetchRevenueTransactionCodesDetails" } }, "204": { "description": "RevenueTransactionCodes not found." }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "RoomRotationConfig" ] }, "put": { "summary": "Update the room rotation revenue status of a set of transaction codes", "description": "Use this API to update the room rotation revenue status of a set of transaction codes.

OperationId:putRevenueTransactionCodes

", "operationId": "putRevenueTransactionCodes", "parameters": [ { "name": "hotelId", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 20, "description": "Unique ID of hotel." }, { "name": "ChangeRevenueTransactionCodesCriteria", "in": "body", "required": true, "description": "Request object for updating the rotation revenue status of a transaction code for a given property.", "schema": { "allOf": [ { "$ref": "#/definitions/ChangeRevenueTransactionCodesCriteria" } ] } }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-hotelid" }, { "$ref": "#/parameters/x-externalsystem" }, { "$ref": "#/parameters/Accept-Language" } ], "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" }, "Location": { "type": "string", "description": "Location of newly created resource" } }, "description": "Response Body.", "schema": { "$ref": "#/definitions/ChangeRevenueTransactionCodesDetails" } }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "RoomRotationConfig" ] } }, "/hotels/{hotelId}/rotationPeriod": { "get": { "summary": "Fetch Room Rotation Period", "description": "Use this API to fetch Room Rotation Period based on criteria.

OperationId:getRotationPeriod

", "operationId": "getRotationPeriod", "parameters": [ { "name": "hotelId", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 20, "description": "Unique ID of hotel." }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-hotelid" }, { "$ref": "#/parameters/x-externalsystem" }, { "$ref": "#/parameters/Accept-Language" } ], "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 Fetch Rotation Period", "schema": { "$ref": "#/definitions/fetchRotationPeriod" } }, "204": { "description": "RotationPeriod not found." }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "RoomRotationConfig" ] }, "put": { "summary": "Change Room Rotation Period", "description": "Use this API to change Room Rotation Period.

OperationId:putRotationPeriod

", "operationId": "putRotationPeriod", "parameters": [ { "name": "hotelId", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 20, "description": "Unique ID of hotel." }, { "name": "rotationPeriod", "in": "body", "required": true, "description": "Request Object for changing Rotation Period", "schema": { "allOf": [ { "$ref": "#/definitions/rotationPeriod" } ] } }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-hotelid" }, { "$ref": "#/parameters/x-externalsystem" }, { "$ref": "#/parameters/Accept-Language" } ], "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" }, "Location": { "type": "string", "description": "Location of newly created resource" } }, "description": "Response Body.", "schema": { "$ref": "#/definitions/ChangeRotationPeriodDetails" } }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "RoomRotationConfig" ] } }, "/hotels/{hotelId}/rotationRules": { "post": { "summary": "Save changes to Rotation Setup Rules and recalculate Rotation Points", "description": "This operation will create/update/delete Rotation Setup Rules sent in the request and then recalculate rotation points.

OperationId:postRoomRotationRules

", "operationId": "postRoomRotationRules", "parameters": [ { "name": "hotelId", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 20, "description": "Unique ID of hotel." }, { "name": "rotationRules", "in": "body", "required": true, "description": "Request object for saving changes to room rotation setup rules.", "schema": { "allOf": [ { "$ref": "#/definitions/roomRotationRules" } ] } }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-hotelid" }, { "$ref": "#/parameters/x-externalsystem" }, { "$ref": "#/parameters/Accept-Language" } ], "responses": { "201": { "headers": { "Content-Language": { "type": "string", "description": "Audience language", "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*", "x-example": "en-GB" }, "Location": { "type": "string", "description": "Location of newly created resource" } }, "description": "HATEOAS links which help the consumer to navigate to resources", "schema": { "$ref": "#/definitions/status" } }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "RoomRotationConfig" ] } }, "/hotels/{hotelId}/rules": { "get": { "summary": "Retrieve all Room Rotation Setup Rules", "description": "Use this API to retrieve all existing Room Rotation Setup Rules based on criteria.

OperationId:getRotationRules

", "operationId": "getRotationRules", "parameters": [ { "name": "hotelId", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 20, "description": "Unique ID of hotel." }, { "name": "limit", "in": "query", "required": false, "description": "Indicates maximum number of records a Web Service should return.", "type": "integer", "default": 25, "maximum": 200 }, { "name": "offset", "in": "query", "default": 0, "required": false, "description": "Index or initial index of the set(page) being requested. If the index goes out of the bounds of the total set count then no data will be returned.", "type": "integer" }, { "name": "setupType", "in": "query", "required": false, "type": "string", "description": "Simple type for Rotation Setup Rule(s).", "uniqueItems": true, "enum": [ "Points", "OwnerMultiplier", "RoomStatusMultiplier" ] }, { "name": "inactiveRules", "in": "query", "required": false, "description": "If set to True, only Inactive Rotation Setup Rules will be retrieved. Otherwise, only Active Rotation Setup Rules will be retrieved.", "type": "boolean", "default": false }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-hotelid" }, { "$ref": "#/parameters/x-externalsystem" }, { "$ref": "#/parameters/Accept-Language" } ], "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 retrieving rotation rules for a given property", "schema": { "$ref": "#/definitions/FetchRotationRules" } }, "204": { "description": "RotationRules not found." }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "RoomRotationConfig" ] }, "post": { "summary": "Create Room Rotation Rules", "description": "This API has been deprecated and will be replaced by

OperationId:postRoomRotationRules

", "deprecated": true, "operationId": "postRotationRules", "parameters": [ { "name": "hotelId", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 2000, "description": "Unique ID of hotel." }, { "name": "rotationRules", "in": "body", "required": true, "description": "Request object for creating Rotation Rules for a given property", "schema": { "allOf": [ { "$ref": "#/definitions/rotationRules" } ] } }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-hotelid" }, { "$ref": "#/parameters/x-externalsystem" }, { "$ref": "#/parameters/Accept-Language" } ], "responses": { "201": { "headers": { "Content-Language": { "type": "string", "description": "Audience language", "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*", "x-example": "en-GB" }, "Location": { "type": "string", "description": "Location of newly created resource" } }, "description": "HATEOAS links which help the consumer to navigate to resources", "schema": { "$ref": "#/definitions/status" } }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "RoomRotationConfig" ] } }, "/hotels/{hotelId}/rules/{ruleId}": { "delete": { "summary": "Delete an existing Room Rotation Rule", "description": "This API has been deprecated and will be replaced by

OperationId:postRoomRotationRules

", "deprecated": true, "operationId": "deleteRotationRules", "parameters": [ { "name": "ruleId", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 2000, "description": "Unique ID of Rotation Rule." }, { "name": "hotelId", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 2000, "description": "Unique ID of hotel." }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-hotelid" }, { "$ref": "#/parameters/x-externalsystem" }, { "$ref": "#/parameters/Accept-Language" } ], "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" }, "Location": { "type": "string", "description": "Location of newly created resource" } }, "description": "HATEOAS links which help the consumer to navigate to resources", "schema": { "$ref": "#/definitions/status" } }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "RoomRotationConfig" ] }, "put": { "summary": "Change Room Rotation Rules", "description": "This API has been deprecated and will be replaced by

OperationId:postRoomRotationRules

", "deprecated": true, "operationId": "putRotationRules", "parameters": [ { "name": "ruleId", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 2000, "description": "Unique Rotation Group Code." }, { "name": "hotelId", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 2000, "description": "Unique ID of hotel." }, { "name": "rotationRules", "in": "body", "required": true, "description": "Request object for changing room rotation rules.", "schema": { "allOf": [ { "$ref": "#/definitions/rotationRules" } ] } }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-hotelid" }, { "$ref": "#/parameters/x-externalsystem" }, { "$ref": "#/parameters/Accept-Language" } ], "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" }, "Location": { "type": "string", "description": "Location of newly created resource" } }, "description": "Response Body.", "schema": { "$ref": "#/definitions/status" } }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "RoomRotationConfig" ] } }, "/hotels/{hotelId}/unitGrades": { "get": { "summary": "Get Room Rotation Owner Room Grades", "description": "Use this API to Get Room Rotation Owner Room Grades.

OperationId:getUnitGrades

", "operationId": "getUnitGrades", "parameters": [ { "name": "hotelId", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 20, "description": "Unique ID of hotel." }, { "name": "hotelIds", "in": "query", "type": "array", "collectionFormat": "multi", "description": "Unique ID(s) of hotel(s).", "maxItems": 4000, "items": { "type": "string", "minLength": 1, "maxLength": 20 }, "required": false }, { "name": "fetchInactive", "in": "query", "required": false, "description": "Determines wether to fetch inactive records or not.", "type": "boolean", "default": false }, { "name": "code", "in": "query", "type": "array", "collectionFormat": "multi", "description": "Configured Owner Room Grade Codes to be searched. Multiple values can be entered by adding multiple query parameters.", "maxItems": 4000, "items": { "type": "string", "minLength": 1, "maxLength": 8 }, "required": false }, { "name": "wildCard", "in": "query", "required": false, "description": "Wildcard search on Owner Room Grade Codes.", "type": "string", "minLength": 1, "maxLength": 8 }, { "name": "description", "in": "query", "required": false, "description": "Description of Owner Room Grade Codes.", "type": "string", "minLength": 1, "maxLength": 2000 }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-hotelid" }, { "$ref": "#/parameters/x-externalsystem" }, { "$ref": "#/parameters/Accept-Language" } ], "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 fetching Room Rotation Unit Grades.", "schema": { "$ref": "#/definitions/FetchUnitGradesDetails" } }, "204": { "description": "UnitGrades not found." }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "RoomRotationConfig" ] }, "post": { "summary": "Create a new Room Rotation Owner Room Grade Code", "description": "Use this API to create a new Room Rotation Owner Room Grade Code.

OperationId:postUnitGrades

", "operationId": "postUnitGrades", "parameters": [ { "name": "hotelId", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 20, "description": "Unique ID of hotel." }, { "name": "CreateUnitGradesDetails", "in": "body", "required": true, "description": "Request object for creating a new Room Rotation Owner Room Unit Grade.", "schema": { "allOf": [ { "$ref": "#/definitions/CreateUnitGradesDetails" } ] } }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-hotelid" }, { "$ref": "#/parameters/x-externalsystem" }, { "$ref": "#/parameters/Accept-Language" } ], "responses": { "201": { "headers": { "Content-Language": { "type": "string", "description": "Audience language", "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*", "x-example": "en-GB" }, "Location": { "type": "string", "description": "Location of newly created resource" } }, "description": "HATEOAS links which help the consumer to navigate to resources", "schema": { "$ref": "#/definitions/status" } }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "RoomRotationConfig" ] } }, "/hotels/{hotelId}/unitGrades/{unitGradeCode}": { "put": { "summary": "Change an existing Room Rotation Owner Room Unit Grade", "description": "Use this API to update Room Rotation Owner Room Unit Grades.

OperationId:putUnitGrades

", "operationId": "putUnitGrades", "parameters": [ { "name": "unitGradeCode", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 8, "description": "Unique Code of Owner Room Unit Grade." }, { "name": "hotelId", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 20, "description": "Unique ID of hotel." }, { "name": "ChangeUnitGradesDetails", "in": "body", "required": true, "description": "Request object for changing an existing Room Rotation Owner Room Unit Grades.", "schema": { "allOf": [ { "$ref": "#/definitions/ChangeUnitGradesDetails" } ] } }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-hotelid" }, { "$ref": "#/parameters/x-externalsystem" }, { "$ref": "#/parameters/Accept-Language" } ], "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" }, "Location": { "type": "string", "description": "Location of newly created resource" } }, "description": "Response Body.", "schema": { "$ref": "#/definitions/UnitGradesDetailsUpdated" } }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "RoomRotationConfig" ] }, "delete": { "summary": "Delete an existing Room Rotation Owner Room Unit Grade", "description": "Use this API to delete an existing Room Rotation Owner Room Unit Grade.

OperationId:deleteUnitGrades

", "operationId": "deleteUnitGrades", "parameters": [ { "name": "unitGradeCode", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 8, "description": "Unique Code of Owner Room Unit Grade." }, { "name": "hotelId", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 20, "description": "Unique ID of hotel." }, { "name": "code", "in": "query", "type": "array", "collectionFormat": "multi", "description": "Owner Room Unit Grade Code. Multiple values can be entered by adding multiple query parameters.", "maxItems": 4000, "items": { "type": "string", "minLength": 1, "maxLength": 8 }, "required": false }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-hotelid" }, { "$ref": "#/parameters/x-externalsystem" }, { "$ref": "#/parameters/Accept-Language" } ], "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" }, "Location": { "type": "string", "description": "Location of newly created resource" } }, "description": "HATEOAS links which help the consumer to navigate to resources", "schema": { "$ref": "#/definitions/status" } }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "RoomRotationConfig" ] } }, "/overrideReasons": { "get": { "summary": "Get Room Rotation Override Reasons", "description": "Use this API to get configured Room Rotation Override Reasons

OperationId:getOverrideReasons

", "operationId": "getOverrideReasons", "parameters": [ { "name": "fetchInactive", "in": "query", "required": false, "description": "Determines wether to fetch inactive records or not.", "type": "boolean", "default": false }, { "name": "code", "in": "query", "type": "array", "collectionFormat": "multi", "description": "Room Rotation Override Reason Codes to be searched. Multiple values can be entered by adding multiple query parameters.", "maxItems": 4000, "items": { "type": "string", "minLength": 0, "maxLength": 8 }, "required": false }, { "name": "wildCard", "in": "query", "required": false, "description": "Wildcard search on the Room Rotation Override Reason code.", "type": "string", "minLength": 0, "maxLength": 8 }, { "name": "description", "in": "query", "required": false, "description": "Description of the configured Room Rotation Override Reason.", "type": "string", "minLength": 0, "maxLength": 2000 }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-hotelid" }, { "$ref": "#/parameters/x-externalsystem" }, { "$ref": "#/parameters/Accept-Language" } ], "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 fetching Room Rotation Override Reasons.", "schema": { "$ref": "#/definitions/overrideReasonsDetails" } }, "204": { "description": "OverrideReasons not found." }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "RoomRotationConfig" ] }, "post": { "summary": "Create a new Room Rotation Override Reason", "description": "Use this API to create a new Room Rotation Override Reason.

OperationId:postOverrideReasons

", "operationId": "postOverrideReasons", "parameters": [ { "name": "overrideReasonsCriteria", "in": "body", "required": true, "description": "Request object for creating a new Room Rotation Override Reason.", "schema": { "allOf": [ { "$ref": "#/definitions/overrideReasonsCriteria" } ] } }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-hotelid" }, { "$ref": "#/parameters/x-externalsystem" }, { "$ref": "#/parameters/Accept-Language" } ], "responses": { "201": { "headers": { "Content-Language": { "type": "string", "description": "Audience language", "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*", "x-example": "en-GB" }, "Location": { "type": "string", "description": "Location of newly created resource" } }, "description": "HATEOAS links which help the consumer to navigate to resources", "schema": { "$ref": "#/definitions/status" } }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "RoomRotationConfig" ] } }, "/overrideReasons/{overrideReasonsId}": { "put": { "summary": "Change an existing Room Rotation Override Reason", "description": "Use this API to update an existing Room Rotation Override Reason.

OperationId:putOverrideReasons

", "operationId": "putOverrideReasons", "parameters": [ { "name": "overrideReasonsId", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 8, "description": "Unique ID of Room Rotation Override Reason" }, { "name": "overrideReasonsToBeChanged", "in": "body", "required": true, "description": "Request object for changing an existing Room Rotation Override Reason.", "schema": { "allOf": [ { "$ref": "#/definitions/overrideReasonsToBeChanged" } ] } }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-hotelid" }, { "$ref": "#/parameters/x-externalsystem" }, { "$ref": "#/parameters/Accept-Language" } ], "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" }, "Location": { "type": "string", "description": "Location of newly created resource" } }, "description": "Response Body.", "schema": { "$ref": "#/definitions/status" } }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "RoomRotationConfig" ] }, "delete": { "summary": "Delete an existing Room Rotation Override Reason", "description": "Use this API to delete an existing Room Rotation Override Reason.

OperationId:deleteOverrideReasons

", "operationId": "deleteOverrideReasons", "parameters": [ { "name": "overrideReasonsId", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 8, "description": "Unique ID of Room Rotation Override Reason" }, { "name": "code", "in": "query", "type": "array", "collectionFormat": "multi", "description": "Code of the Room Rotation Override Reason. Multiple values can be entered by adding multiple query parameters.", "maxItems": 4000, "items": { "type": "string", "minLength": 0, "maxLength": 8 }, "required": false }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-hotelid" }, { "$ref": "#/parameters/x-externalsystem" }, { "$ref": "#/parameters/Accept-Language" } ], "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" }, "Location": { "type": "string", "description": "Location of newly created resource" } }, "description": "HATEOAS links which help the consumer to navigate to resources", "schema": { "$ref": "#/definitions/status" } }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "RoomRotationConfig" ] } }, "/profiles/{profileId}/roomOwnerReferrals": { "get": { "summary": "Get Profile Owner Referral Records.", "description": "Use this API to fetch profile Owner Referral Records.

OperationId:getRoomOwnerReferrals

", "operationId": "getRoomOwnerReferrals", "parameters": [ { "name": "profileId", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 2000, "description": "Unique ID of profile." }, { "name": "includeInactive", "in": "query", "required": false, "type": "boolean", "description": "If set to True, Inactive Room Owner Referrals will also be retrieved. Otherwise, only Active Room Owner Referrals details will be retrieved.", "default": false }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-hotelid" }, { "$ref": "#/parameters/x-externalsystem" }, { "$ref": "#/parameters/Accept-Language" } ], "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 for getRoomOwnerReferrals operation.", "schema": { "$ref": "#/definitions/roomOwnerReferralDetails" } }, "204": { "description": "getRoomOwnerReferrals not found." }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "RoomRotationConfig" ] }, "post": { "summary": "Create Room Owner Referrals", "description": "Use this API to create multiple Room Owner Referral Records.

OperationId:postRoomOwnerReferrals

", "operationId": "postRoomOwnerReferrals", "parameters": [ { "name": "profileId", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 2000, "description": "Unique ID of profile." }, { "name": "createRoomOwnerReferralDetails", "in": "body", "required": true, "description": "Request object for creating room owner referrals.", "schema": { "allOf": [ { "$ref": "#/definitions/createRoomOwnerReferralDetails" } ] } }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-hotelid" }, { "$ref": "#/parameters/x-externalsystem" }, { "$ref": "#/parameters/Accept-Language" } ], "responses": { "201": { "headers": { "Content-Language": { "type": "string", "description": "Audience language", "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*", "x-example": "en-GB" }, "Location": { "type": "string", "description": "Location of newly created resource" } }, "description": "HATEOAS links which help the consumer to navigate to resources", "schema": { "$ref": "#/definitions/status" } }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "RoomRotationConfig" ] } }, "/profiles/{profileId}/roomOwnerReferrals/{roomOwnerReferralId}": { "put": { "summary": "Change Room Owner Referral Record", "description": "Use this API to update Room Owner Referral Record.

OperationId:putRoomOwnerReferral

", "operationId": "putRoomOwnerReferral", "parameters": [ { "name": "profileId", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 2000, "description": "Unique ID of profile." }, { "name": "roomOwnerReferralId", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 2000, "description": "Unique Room Owner Referral Record." }, { "name": "changeRoomOwnerReferralDetails", "in": "body", "required": true, "description": "Request object for changing room owner referral record.", "schema": { "allOf": [ { "$ref": "#/definitions/changeRoomOwnerReferralDetails" } ] } }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-hotelid" }, { "$ref": "#/parameters/x-externalsystem" }, { "$ref": "#/parameters/Accept-Language" } ], "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" }, "Location": { "type": "string", "description": "Location of newly created resource" } }, "description": "Response Body.", "schema": { "$ref": "#/definitions/status" } }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "RoomRotationConfig" ] }, "delete": { "summary": "Delete Room Owner Referral Record", "description": "Use this API to delete Room Owner Referral Record.

OperationId:deleteRoomOwnerReferral

", "operationId": "deleteRoomOwnerReferral", "parameters": [ { "name": "profileId", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 2000, "description": "Unique ID of profile." }, { "name": "roomOwnerReferralId", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 2000, "description": "Unique Room Owner Referral Record." }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-hotelid" }, { "$ref": "#/parameters/x-externalsystem" }, { "$ref": "#/parameters/Accept-Language" } ], "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" }, "Location": { "type": "string", "description": "Location of newly created resource" } }, "description": "HATEOAS links which help the consumer to navigate to resources", "schema": { "$ref": "#/definitions/status" } }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "RoomRotationConfig" ] } }, "/profiles/{profileId}/roomOwners": { "get": { "summary": "Get Profile Room Ownership Records", "description": "Use this API to fetch profile Room Ownership Records.

OperationId:getProfileRoomOwners

", "operationId": "getProfileRoomOwners", "parameters": [ { "name": "profileId", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 2000, "description": "Unique ID of profile." }, { "name": "showInactiveRoomOwners", "in": "query", "required": false, "type": "boolean", "description": "If set to True, Inactive Room Ownership Records will also be retrieved. Otherwise, only Active Room Ownership Records will be retrieved.", "default": false }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-hotelid" }, { "$ref": "#/parameters/x-externalsystem" }, { "$ref": "#/parameters/Accept-Language" } ], "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 for getProfileRoomOwner operation.", "schema": { "$ref": "#/definitions/roomOwnershipDetails" } }, "204": { "description": "getProfileRoomOwners not found." }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "RoomRotationConfig" ] } }, "/roomOwners": { "post": { "summary": "Create Room Ownership Record", "description": "Use this API to create Create Room Ownership Record.

OperationId:postRoomOwner

", "operationId": "postRoomOwner", "parameters": [ { "name": "createRoomOwnerDetails", "in": "body", "required": true, "description": "Request object for creating room ownership record..", "schema": { "allOf": [ { "$ref": "#/definitions/createRoomOwnerDetails" } ] } }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-hotelid" }, { "$ref": "#/parameters/x-externalsystem" }, { "$ref": "#/parameters/Accept-Language" } ], "responses": { "201": { "headers": { "Content-Language": { "type": "string", "description": "Audience language", "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*", "x-example": "en-GB" }, "Location": { "type": "string", "description": "Location of newly created resource" } }, "description": "Response object to hold room ownership conflict records.", "schema": { "$ref": "#/definitions/roomOwnershipDetails" } }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "RoomRotationConfig" ] }, "put": { "summary": "Change Room Ownership Records", "description": "Use this API to update Multiple Room Ownership Records across properties.

OperationId:putRoomOwner

", "operationId": "putRoomOwner", "parameters": [ { "name": "changeRoomOwnerDetails", "in": "body", "required": true, "description": "Request object for changing room ownership record.", "schema": { "allOf": [ { "$ref": "#/definitions/changeRoomOwnerDetails" } ] } }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-hotelid" }, { "$ref": "#/parameters/x-externalsystem" }, { "$ref": "#/parameters/Accept-Language" } ], "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" }, "Location": { "type": "string", "description": "Location of newly created resource" } }, "description": "Response object to hold room ownership conflict records.", "schema": { "$ref": "#/definitions/roomOwnershipDetails" } }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "RoomRotationConfig" ] } }, "/roomOwners/{roomOwnershipId}": { "delete": { "summary": "Delete Room Ownership Record", "description": "Use this API to delete Room Ownership Record.

OperationId:deleteRoomOwner

", "operationId": "deleteRoomOwner", "parameters": [ { "name": "roomOwnershipId", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 2000, "description": "Unique Id for Room Ownership Record." }, { "name": "overrideReferralCheck", "in": "query", "required": false, "description": "Indicate to Override the Referral record Check if applicable.", "type": "boolean", "default": false }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-hotelid" }, { "$ref": "#/parameters/x-externalsystem" }, { "$ref": "#/parameters/Accept-Language" } ], "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" }, "Location": { "type": "string", "description": "Location of newly created resource" } }, "description": "HATEOAS links which help the consumer to navigate to resources", "schema": { "$ref": "#/definitions/status" } }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "RoomRotationConfig" ] } }, "/services/roomrotation/status": { "get": { "summary": "Ping", "description": "This API facilitates status check of room rotation service

OperationId:pingRoomRotationConfigService

", "operationId": "pingRoomRotationConfigService", "parameters": [ { "name": "operaPingInput", "in": "query", "required": false, "type": "string", "description": "Opera Ping request input type" }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-hotelid" }, { "$ref": "#/parameters/x-externalsystem" }, { "$ref": "#/parameters/Accept-Language" } ], "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 for Ping operation.", "schema": { "$ref": "#/definitions/pingDetail" } }, "204": { "description": "pingRoomRotationConfigService not found." }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "RoomRotationConfig" ] } } }, "parameters": { "externalData": { "name": "externalData", "type": "string", "description": "Pass this header as true, if payload needs DVM", "in": "header" }, "authKey": { "name": "authorization", "description": "Bearer token that needs to be passed which is generated post user authentication", "type": "string", "in": "header", "required": true }, "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": true }, "x-request-id": { "name": "x-request-id", "type": "string", "pattern": "~*[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}", "description": "Request Id of an incoming request", "in": "header" }, "x-originating-application": { "name": "x-originating-application", "type": "string", "description": "Customer's Integration Application Id", "in": "header" }, "x-hotelid": { "name": "x-hotelid", "type": "string", "description": "Mandatory parameter to identify the hotel code where the end user is logged in", "in": "header", "required": true }, "x-externalsystem": { "name": "x-externalsystem", "type": "string", "maxLength": 40, "description": "External system code.", "in": "header", "x-example": "EXTERNALSYSTEMCODE" }, "Accept-Language": { "name": "Accept-Language", "type": "string", "description": "Language code", "in": "header" }, "x-hubid": { "name": "x-hubid", "type": "string", "description": "x-hubid is a logical grouping of multiple properties that allows api consumers to manage data from a group of properties. This x-hubid is a valid list of hub codes configured in OPERA to which the user has access. Rest APIs without hotelId in the operation path can support hub level integration using x-hubid", "in": "header" } }, "responses": { "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/exceptionDetailType" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Resource not found", "schema": { "$ref": "#/definitions/exceptionDetailType" } }, "405": { "description": "Method not allowed" }, "406": { "description": "Not acceptable." }, "413": { "description": "Request Entity Too Large" }, "414": { "description": "Request URI Too Large" }, "415": { "description": "Unsupported Media Type" }, "500": { "description": "System Error", "schema": { "$ref": "#/definitions/exceptionDetailType" } }, "502": { "description": "Bad Gateway" }, "503": { "description": "Service Unavailable" } }, "definitions": { "FetchAdjustmentReasonsDetails": { "type": "object", "description": "Response object for creating Room Rotation Adjustment Reasons.", "properties": { "adjustmentReasons": { "description": "Collection of Room Rotation Adjustment Reasons.", "$ref": "#/definitions/roomRotationAdjustmentReasonsType" }, "links": { "$ref": "#/definitions/links" }, "warnings": { "$ref": "#/definitions/warningsType" } } }, "roomRotationAdjustmentReasonsType": { "type": "array", "description": "Room Rotation Adjustment Reason Enumeration element.", "maxItems": 4000, "items": { "$ref": "#/definitions/roomRotationAdjustmentReasonType" } }, "roomRotationAdjustmentReasonType": { "type": "object", "description": "Defines Rotation Adjustment Reason Details.", "properties": { "code": { "description": "Defines the Rotation Adjustment Reason Code.", "type": "string", "minLength": 1, "maxLength": 40 }, "description": { "description": "Description of the Rotation Adjustment Reason.", "$ref": "#/definitions/translationTextType2000" }, "displayOrder": { "description": "Rotation Adjustment Reason sequence number.", "type": "number", "minimum": 0, "maximum": 99999 }, "managedBy": { "$ref": "#/definitions/managedByOptions" } } }, "translationTextType2000": { "type": "object", "description": "Contains Multiple translated texts and language codes.", "properties": { "defaultText": { "description": "Default text with Character length from 1 to 2000.", "type": "string", "minLength": 1, "maxLength": 2000 }, "translatedTexts": { "description": "List of translated text and language codes.", "$ref": "#/definitions/translationsTextType" } } }, "translationsTextType": { "type": "array", "description": "Language code for the translation.", "maxItems": 4000, "items": { "type": "object", "properties": { "value": { "type": "string", "description": "Used for Character Strings, length 0 to 2000.", "minLength": 0, "maxLength": 2000 }, "language": { "description": "Language identification.", "type": "string", "minLength": 0, "maxLength": 20 } }, "description": "Language code for the translation." } }, "links": { "type": "array", "items": { "$ref": "#/definitions/instanceLink" } }, "instanceLink": { "type": "object", "description": "Metadata describing link description objects that MAY appear in the JSON instance representation.", "properties": { "href": { "description": "URI [RFC3986] or URI Template [RFC6570]. If the value is set to URI Template, then the \"templated\" property must be set to true.", "type": "string" }, "rel": { "description": "Name of the link relation that, in addition to the type property, can be used to retrieve link details. For example, href or profile.", "type": "string" }, "templated": { "description": "Boolean flag that specifies that \"href\" property is a URI or URI Template. If the property is a URI template, set this value to true. By default, this value is false.", "type": "boolean", "default": false }, "method": { "description": "HTTP method for requesting the target of the link.", "type": "string", "enum": [ "GET", "POST", "PUT", "DELETE", "PATCH", "OPTIONS", "HEAD" ] }, "targetSchema": { "description": "Link to the metadata of the resource, such as JSON-schema, that describes the resource expected when dereferencing the target resource..", "type": "string" }, "operationId": { "description": "The operationId of the path you can call to follow this link. This allows you to look up not only the path and method, but the description of that path and any parameters you need to supply.", "type": "string" }, "title": { "description": "Exact copy of the \"summary\" field on the linked operation.", "type": "string" } } }, "warningsType": { "type": "array", "description": "Used in conjunction with the Success element to define a business error.", "maxItems": 4000, "items": { "$ref": "#/definitions/warningType" } }, "warningType": { "type": "object", "description": "Used when a message has been successfully processed to report any warnings or business errors that occurred.", "properties": { "value": { "type": "string", "description": "Property Value" }, "shortText": { "description": "An abbreviated version of the error in textual format.", "type": "string", "maxLength": 2000 }, "code": { "description": "If present, this refers to a table of coded values exchanged between applications to identify errors or warnings.", "type": "string", "minLength": 0, "maxLength": 20 }, "docURL": { "description": "If present, this URL refers to an online description of the error that occurred.", "type": "string", "maxLength": 2000 }, "status": { "description": "If present, recommended values are those enumerated in the ErrorRS, (NotProcessed Incomplete Complete Unknown) however, the data type is designated as string data, recognizing that trading partners may identify additional status conditions not included in the enumeration.", "type": "string", "maxLength": 2000 }, "tag": { "description": "If present, this attribute may identify an unknown or misspelled tag that caused an error in processing. It is recommended that the Tag attribute use XPath notation to identify the location of a tag in the event that more than one tag of the same name is present in the document. Alternatively, the tag name alone can be used to identify missing data [Type=ReqFieldMissing].", "type": "string", "maxLength": 2000 }, "recordId": { "description": "If present, this attribute allows for batch processing and the identification of the record that failed amongst a group of records. This value may contain a concatenation of a unique failed transaction ID with specific record(s) associated with that transaction.", "type": "string", "maxLength": 2000 }, "type": { "description": "The Warning element MUST contain the Type attribute that uses a recommended set of values to indicate the warning type. The validating XSD can expect to accept values that it has NOT been explicitly coded for and process them by using Type =\"Unknown\".", "type": "string", "minLength": 0, "maxLength": 20 }, "language": { "description": "Language identification.", "type": "string", "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*" }, "rph": { "description": "Reference Place Holder used as an index for this warning.", "type": "string", "minLength": 1, "maxLength": 8 } } }, "exceptionDetailType": { "title": "Error Detail", "description": "Complex type that contains error details for a REST call.", "type": "object", "properties": { "type": { "type": "string", "description": "Absolute URI [RFC3986] that identifies the problem type. When dereferenced, it SHOULD provide a human-readable summary of the problem (for example, using HTML)." }, "title": { "type": "string", "description": "Short, human-readable summary of the problem. The summary SHOULD NOT change for subsequent occurrences of the problem, except for purposes of localization." }, "status": { "type": "integer", "description": "HTTP status code for this occurrence of the problem, set by the origin server." }, "detail": { "type": "string", "description": "Human-readable description specific to this occurrence of the problem." }, "instance": { "type": "string", "description": "Absolute URI that identifies the specific occurrence of the problem. It may or may not provide additional information if dereferenced." }, "o:errorCode": { "type": "string", "description": "Application error code, which is different from HTTP error code." }, "o:errorPath": { "type": "string", "description": "Path to the problem at the resource or property level." }, "o:errorDetails": { "description": "Details of the error message, consisting of a hierarchical tree structure.", "type": "array", "items": { "$ref": "#/definitions/errorInstance" } }, "links": { "$ref": "#/definitions/links" } }, "required": [ "type", "title" ] }, "errorInstance": { "title": "Error Instance Details", "description": "Complex type that contains error instance details for a REST call.", "type": "object", "properties": { "type": { "type": "string", "description": "Absolute URI [RFC3986] that identifies the problem type. When dereferenced, it SHOULD provide a human-readable summary of the problem (for example, using HTML)." }, "title": { "type": "string", "description": "Short, human-readable summary of the problem. The summary SHOULD NOT change for subsequent occurrences of the problem, except for purposes of localization." }, "status": { "type": "integer", "description": "HTTP status code for this occurrence of the problem, set by the origin server." }, "detail": { "type": "string", "description": "Human-readable description specific to this occurrence of the problem." }, "instance": { "type": "string", "description": "Absolute URI that identifies the specific occurrence of the problem. It may or may not provide additional information if dereferenced." }, "o:errorCode": { "type": "string", "description": "Application error code, which is different from HTTP error code." }, "o:errorPath": { "type": "string", "description": "Path to the problem at the resource or property level." } }, "required": [ "type", "title" ] }, "CreateAdjustmentReasonsDetails": { "type": "object", "description": "Request object for fetching Room Rotation Adjustment Reasons.", "properties": { "adjustmentReasons": { "description": "Room Rotation Adjustment Reasons to be created.", "$ref": "#/definitions/roomRotationAdjustmentReasonsType" }, "links": { "$ref": "#/definitions/links" }, "warnings": { "$ref": "#/definitions/warningsType" } } }, "status": { "type": "object", "description": "Response Body.", "properties": { "warnings": { "$ref": "#/definitions/warningsType" }, "links": { "$ref": "#/definitions/links" } } }, "ChangeAdjustmentReasonsDetails": { "type": "object", "description": "Request object for changing Room Rotation Adjustment Reasons.", "properties": { "adjustmentReasons": { "description": "Room Rotation Adjustment Reasons to be updated.", "$ref": "#/definitions/roomRotationAdjustmentReasonsType" }, "links": { "$ref": "#/definitions/links" }, "warnings": { "$ref": "#/definitions/warningsType" } } }, "AdjustmentReasonsDetailsUpdated": { "type": "object", "description": "Response Body.", "properties": { "links": { "$ref": "#/definitions/links" }, "warnings": { "$ref": "#/definitions/warningsType" } } }, "changeRoomOwnerDetails": { "type": "object", "description": "Request object for changing room ownership records.", "properties": { "roomOwners": { "description": "Criteria to change the room ownership records", "$ref": "#/definitions/roomOwnershipsList" }, "overrideOwnerExclusive": { "description": "Indicate to override the Owner Exclusive flag in room ownership records with overlapping dates", "type": "boolean", "default": false }, "warnings": { "$ref": "#/definitions/warningsType" } } }, "uniqueID_Type": { "type": "object", "description": "An identifier used to uniquely reference an object in a system (e.g. an airline reservation reference, customer profile reference, booking confirmation number, or a reference to a previous availability quote).", "properties": { "id": { "description": "A unique identifying value assigned by the creating system. The ID attribute may be used to reference a primary-key value within a database or in a particular implementation.", "type": "string", "minLength": 0, "maxLength": 80 }, "type": { "description": "A reference to the type of object defined by the UniqueID element.", "type": "string", "minLength": 0, "maxLength": 40 } } }, "FetchRevenueTransactionCodesDetails": { "type": "object", "description": "Response object for retrieving revenue transaction codes for a given property", "properties": { "revenueTransactionCodes": { "description": "Revenue transaction codes for a given property value.", "$ref": "#/definitions/rotationRevenueTransactionCodesType" }, "warnings": { "$ref": "#/definitions/warningsType" } } }, "rotationRevenueTransactionCodesType": { "type": "array", "description": "A revenue transaction code.", "maxItems": 4000, "items": { "$ref": "#/definitions/rotationRevenueTransactionCodeType" } }, "rotationRevenueTransactionCodeType": { "type": "object", "description": "A revenue transaction code", "properties": { "hotelId": { "description": "Hotel code of revenue transaction code.", "type": "string", "minLength": 0, "maxLength": 20 }, "transactionCode": { "description": "Unique ID for the Transaction Code.", "type": "string", "minLength": 0, "maxLength": 20 }, "rotationRevenue": { "description": "Indicates that the transaction code is marked as a rotation revenue transaction code.", "type": "boolean", "default": false }, "description": { "description": "Description of the Transaction Code.", "type": "string", "minLength": 0, "maxLength": 2000 } } }, "ChangeRevenueTransactionCodesCriteria": { "type": "object", "description": "Request object for updating the rotation revenue status of a transaction code for a given property.", "properties": { "revenueTransactionCodes": { "description": "Revenue transaction codes for a given property value.", "$ref": "#/definitions/rotationRevenueTransactionCodesChangeType" }, "warnings": { "$ref": "#/definitions/warningsType" } } }, "rotationRevenueTransactionCodesChangeType": { "type": "object", "description": "Two collections of transaction codes for a resort. One collection lists codes to be changed to Rotation Revenue transaction codes and the other to be changed to non Rotation Revenue Transaction codes.", "properties": { "hotelId": { "description": "Hotel code of revenue transaction code.", "type": "string", "minLength": 0, "maxLength": 20 }, "rotationRevenueTransactionCodes": { "description": "List of transaction codes to be updated to rotation revenue transaction codes.", "$ref": "#/definitions/transactionCodesType" }, "nonRotationRevenueTransactionCodes": { "description": "List of transaction codes to be updated to non rotation revenue transaction codes.", "$ref": "#/definitions/transactionCodesType" } } }, "transactionCodesType": { "type": "array", "description": "Revenue transaction code.", "maxItems": 4000, "items": { "type": "string", "minLength": 0, "maxLength": 20 } }, "ChangeRevenueTransactionCodesDetails": { "type": "object", "description": "Response Body.", "properties": { "success": { "description": "Refer to Generic common types document.", "$ref": "#/definitions/successType" }, "warnings": { "description": "Refer to Generic common types document.", "$ref": "#/definitions/warningsType" }, "errors": { "description": "Refer to Generic common types document.", "$ref": "#/definitions/errorsType" }, "echoToken": { "description": "A reference for additional message identification, assigned by the requesting host system. When a request message includes an echo token the corresponding response message MUST include an echo token with an identical value.", "type": "string", "minLength": 0, "maxLength": 128 }, "timeStamp": { "description": "Indicates the creation date and time of the message in UTC using the following format specified by ISO 8601; YYYY-MM-DDThh:mm:ssZ with time values using the 24 hour clock (e.g. 20 November 2003, 1:59:38 pm UTC becomes 2003-11-20T13:59:38Z).", "type": "string", "format": "date-time" }, "version": { "description": "For all Opera versioned messages, the version of the message is indicated by a Opera Version value.", "type": "string", "minLength": 0, "maxLength": 40 }, "correlationId": { "description": "Allow end-to-end correlation of log messages with the corresponding Web service message throughout the processing of the Web service message.", "type": "string", "minLength": 0, "maxLength": 80 }, "retryAllowed": { "description": "Indicates if the operation supports the ability to retry the request.", "type": "boolean", "default": false }, "enforceAllowed": { "description": "Indicates if the operation supports the ability to force the retry request through OPERA services in the case where the external system continues to fail.", "type": "boolean", "default": false }, "useLocalAllowed": { "description": "This attribute carries the user selected confirmation value on confirmation popup.", "type": "boolean", "default": false } } }, "successType": { "type": "object", "description": "Returning an empty element of this type indicates the successful processing of an message. This is used in conjunction with the Warning Type to report any warnings or business errors.", "properties": {} }, "errorsType": { "type": "array", "description": "An error that occurred during the processing of a message.", "maxItems": 99, "items": { "$ref": "#/definitions/errorType" } }, "errorType": { "type": "object", "description": "Standard way to indicate that an error occurred during the processing of an message. If the message successfully processes, but there are business errors, those errors should be passed in the warning element.", "properties": { "value": { "type": "string", "description": "Property Value" }, "shortText": { "description": "An abbreviated version of the error in textual format.", "type": "string" }, "code": { "description": "If present, this refers to a table of coded values exchanged between applications to identify errors or warnings.", "type": "string", "minLength": 0, "maxLength": 20 }, "docURL": { "description": "If present, this URL refers to an online description of the error that occurred.", "type": "string" }, "status": { "description": "If present, recommended values are those enumerated in the ErrorRS, (NotProcessed Incomplete Complete Unknown) however, the data type is designated as string data, recognizing that trading partners may identify additional status conditions not included in the enumeration.", "type": "string" }, "tag": { "description": "If present, this attribute may identify an unknown or misspelled tag that caused an error in processing. It is recommended that the Tag attribute use XPath notation to identify the location of a tag in the event that more than one tag of the same name is present in the document. Alternatively, the tag name alone can be used to identify missing data [Type=ReqFieldMissing].", "type": "string" }, "recordId": { "description": "If present, this attribute allows for batch processing and the identification of the record that failed amongst a group of records. This value may contain a concatenation of a unique failed transaction ID with specific record(s) associated with that transaction.", "type": "string" }, "type": { "description": "The Warning element MUST contain the Type attribute that uses a recommended set of values to indicate the warning type. The validating XSD can expect to accept values that it has NOT been explicitly coded for and process them by using Type =\"Unknown\".", "type": "string", "minLength": 0, "maxLength": 20 }, "language": { "description": "Language identification.", "type": "string", "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*" }, "nodeList": { "description": "An XPath expression that selects all the nodes whose data caused this error. Further, this expression should have an additional constraint which contains the data of the node. This will provide the offending data back to systems that cannot maintain the original message.", "type": "string" } } }, "createRoomOwnerDetails": { "type": "object", "description": "Request object for creating room ownership records.", "properties": { "roomOwner": { "description": "Details to create room ownership records", "$ref": "#/definitions/roomOwnershipType" }, "overrideOwnerExclusive": { "description": "Indicate to override the Owner Exclusive flag in room ownership records with overlapping dates", "type": "boolean", "default": false }, "warnings": { "$ref": "#/definitions/warningsType" } } }, "codeListType": { "type": "array", "maxItems": 4000, "items": { "type": "string", "minLength": 0, "maxLength": 20 } }, "rotationPeriodFrequencyType": { "type": "string", "description": "Simple type for Rotation Period Type.", "enum": [ "Monthly", "Quarterly", "SemiAnnually", "Annually", "Never" ] }, "rotationPeriod": { "type": "object", "description": "Request Object for changing Rotation Period.", "properties": { "rotationPeriod": { "description": "Rotation Period data (Start date/Period Frequency) to be changed", "$ref": "#/definitions/rotationPeriodType" }, "warnings": { "$ref": "#/definitions/warningsType" } } }, "rotationPeriodType": { "type": "object", "description": "Rotation Period Frequency and Start Date Details for a Property", "properties": { "hotelId": { "description": "Hotel code for Room Rotation Period.", "type": "string", "minLength": 0, "maxLength": 20 }, "startDate": { "description": "Represents Effective start date for the Room Rotation Period Setup.", "type": "string", "format": "date" }, "periodFrequency": { "description": "Represents the frequency in which a Rotation Period resets for the Room Rotation Period Setup.", "$ref": "#/definitions/rotationPeriodFrequencyType" }, "forceRecalculate": { "description": "Represents if Rotation points/rules recalculation job should be re-triggered.", "type": "boolean", "default": false } } }, "ChangeRotationPeriodDetails": { "type": "object", "description": "Response Body.", "properties": { "success": { "description": "Refer to Generic common types document.", "$ref": "#/definitions/successType" }, "warnings": { "description": "Refer to Generic common types document.", "$ref": "#/definitions/warningsType" }, "errors": { "description": "Refer to Generic common types document.", "$ref": "#/definitions/errorsType" }, "echoToken": { "description": "A reference for additional message identification, assigned by the requesting host system. When a request message includes an echo token the corresponding response message MUST include an echo token with an identical value.", "type": "string", "minLength": 0, "maxLength": 128 }, "timeStamp": { "description": "Indicates the creation date and time of the message in UTC using the following format specified by ISO 8601; YYYY-MM-DDThh:mm:ssZ with time values using the 24 hour clock (e.g. 20 November 2003, 1:59:38 pm UTC becomes 2003-11-20T13:59:38Z).", "type": "string", "format": "date-time" }, "version": { "description": "For all Opera versioned messages, the version of the message is indicated by a Opera Version value.", "type": "string", "minLength": 0, "maxLength": 40 }, "correlationId": { "description": "Allow end-to-end correlation of log messages with the corresponding Web service message throughout the processing of the Web service message.", "type": "string", "minLength": 0, "maxLength": 80 }, "retryAllowed": { "description": "Indicates if the operation supports the ability to retry the request.", "type": "boolean", "default": false }, "enforceAllowed": { "description": "Indicates if the operation supports the ability to force the retry request through OPERA services in the case where the external system continues to fail.", "type": "boolean", "default": false }, "useLocalAllowed": { "description": "This attribute carries the user selected confirmation value on confirmation popup.", "type": "boolean", "default": false }, "links": { "$ref": "#/definitions/links" } } }, "rotationRulesResultType": { "type": "object", "description": "Collection of Room Rotation Setup Rules Results.", "properties": { "rotationRules": { "description": "Information representing Room Rotation Setup Rules.", "$ref": "#/definitions/rotationRulesType" }, "masterInfo": { "description": "Collection of RateCodes, RoomTypes, Out of Order Reasons", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/masterInfoType" } }, "totalPages": { "description": "Evaluated total page count based on the requested max fetch count.", "type": "integer" }, "offset": { "description": "Index or initial index of the set(page) being requested. If the index goes out of the bounds of the total set count then no data will be returned.", "type": "integer", "default": 0 }, "limit": { "description": "Indicates maximum number of records a Web Service should return.", "type": "integer", "default": 25 }, "hasMore": { "description": "Indicates whether all the records are included in the response or not. Absence of the attribute values should be consider as all rows fetched in the response.", "type": "boolean" }, "totalResults": { "description": "Total number of rows queried", "type": "integer" }, "count": { "description": "Total number of rows returned", "type": "integer" } } }, "rotationRulesType": { "type": "object", "description": "Collection of Room Rotation Setup Rules elements.", "properties": { "hotelId": { "description": "Hotel code for Room Rotation Setup Rules.", "type": "string", "minLength": 0, "maxLength": 20 }, "setupType": { "description": "Represents Setup type for Room Rotation Setup Rule.", "$ref": "#/definitions/rotationRuleSetupType" }, "rule": { "description": "Description of the Room Rotation Setup Rule.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/rotationRuleType" } } } }, "rotationRuleSetupType": { "type": "string", "description": "Simple type for Rotation Rule Setup.", "enum": [ "Points", "OwnerMultiplier", "RoomStatusMultiplier" ] }, "rotationRuleType": { "type": "object", "properties": { "status": { "description": "Represents Record Status of Room Rotation Setup Rule.", "$ref": "#/definitions/rotationRuleStatusType" }, "setupType": { "description": "Represents Setup type for Room Rotation Setup Rule.", "$ref": "#/definitions/rotationRuleSetupType" }, "ruleId": { "description": "Unique ID for Room Rotation Setup Rule.", "type": "number" }, "startDate": { "description": "Represents start date for Room Rotation Setup Rule.", "type": "string", "format": "date" }, "endDate": { "description": "Represents end date for Room Rotation Setup Rule.", "type": "string", "format": "date" }, "daysOfWeek": { "description": "Represents the days for which the Room Rotation Setup Rule are applicable.", "$ref": "#/definitions/daysOfWeekAttrType" }, "calculationRule": { "description": "Represents the calculation type applicable for Rotation Point Rules.", "$ref": "#/definitions/rotationRuleCalculationRuleType" }, "referral": { "description": "Indicates that this Rotation Setup Rule is to be used for Owner Referral Reservations.", "type": "boolean" }, "points": { "description": "Represents total points for a Rotation Setup Rule. (To be used with Rotation Point Rules)", "type": "number" }, "multiplier": { "description": "Represents multiplier value to be used for an Owner Multiplier Rule or an Out of Order / Service Multiplier rule.", "type": "number" }, "reasons": { "description": "Represents Out Of Order/Service reasons in which an Owner Multiplier Rule is applicable for.", "$ref": "#/definitions/codeListType" }, "rateCodes": { "description": "Represents Rate Codes in which the Rotation Setup Rule is applicable for (Either for Rotation Point Rules, or Owner Multiplier Rules).", "$ref": "#/definitions/codeListType" }, "roomTypes": { "description": "Represents Room Types in which the Room Rotation Setup Rule is applicable for (At least 1 Room Type is required).", "$ref": "#/definitions/codeListType" } } }, "daysOfWeekAttrType": { "type": "object", "description": "Days of the Week", "properties": { "sunday": { "type": "boolean", "default": false }, "monday": { "type": "boolean", "default": false }, "tuesday": { "type": "boolean", "default": false }, "wednesday": { "type": "boolean", "default": false }, "thursday": { "type": "boolean", "default": false }, "friday": { "type": "boolean", "default": false }, "saturday": { "type": "boolean", "default": false } } }, "rotationRuleCalculationRuleType": { "type": "string", "description": "Simple type for Rotation Setup Rule Calculation Rule.", "enum": [ "PerRevenue", "PerNight", "PerStay" ] }, "masterInfoType": { "type": "object", "properties": { "codeInfo": { "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/codeInfoType" } }, "codeType": { "$ref": "#/definitions/masterType" } } }, "codeInfoType": { "type": "object", "description": "", "properties": { "description": { "type": "string", "minLength": 0, "maxLength": 80 }, "hotelId": { "type": "string", "minLength": 0, "maxLength": 20 }, "code": { "type": "string", "minLength": 0, "maxLength": 20 } } }, "masterType": { "type": "string", "enum": [ "Country", "State", "AddressType", "PhoneType", "RateCategory", "CalculationRule", "PostingRythym", "BillingInstruction", "TransactionCode", "DisplaySet", "MailingActions", "DistanceType", "District", "Territory", "FiscalRegion", "InventoryItem", "Package", "RoomFeaturePreference", "SpecialPreference", "Promotion", "Department", "ReservationPreference", "FacilityTask", "RoomType", "RateCode", "OutOfOrderReason", "Block" ] }, "rotationRules": { "type": "object", "description": "Request object for creating room rotation setup rules.", "properties": { "rotationRules": { "description": "Collection of Room Rotation Setup Rules to be created.", "$ref": "#/definitions/rotationRulesType" }, "warnings": { "$ref": "#/definitions/warningsType" } } }, "FetchUnitGradesDetails": { "type": "object", "description": "Response object for fetching Room Rotation Owner Room Grade Codes.", "properties": { "unitGrades": { "description": "Collection of Room Rotation Owner Room Grade Codes.", "$ref": "#/definitions/roomRotationUnitGradesType" }, "links": { "$ref": "#/definitions/links" }, "warnings": { "$ref": "#/definitions/warningsType" } } }, "roomRotationUnitGradesType": { "type": "array", "description": "Room Rotation Owner Room Grade Enumeration element.", "maxItems": 4000, "items": { "$ref": "#/definitions/roomRotationUnitGradeType" } }, "roomRotationUnitGradeType": { "type": "object", "description": "Defines Owner Room Grade Code Details.", "properties": { "code": { "description": "Defines the Owner Room Grade Code.", "type": "string", "minLength": 1, "maxLength": 40 }, "description": { "description": "Description of the Owner Room Grade Code.", "$ref": "#/definitions/translationTextType2000" }, "displayOrder": { "description": "Owner Room Grade Code sequence number.", "type": "number", "minimum": 0, "maximum": 99999 }, "hotelId": { "description": "Hotel of the Owner Room Grade Code.", "type": "string", "minLength": 0, "maxLength": 20 }, "managedBy": { "$ref": "#/definitions/managedByOptions" } } }, "CreateUnitGradesDetails": { "type": "object", "description": "Request object for creating a new Room Rotation Owner Room Grade Code.", "properties": { "unitGrades": { "description": "Room Rotation Owner Room Grade Codes to be created.", "$ref": "#/definitions/roomRotationUnitGradesType" }, "links": { "$ref": "#/definitions/links" }, "warnings": { "$ref": "#/definitions/warningsType" } } }, "ChangeUnitGradesDetails": { "type": "object", "description": "Request object for changing an existing Room Rotation Owner Room Grade Codes.", "properties": { "unitGrades": { "description": "Room Rotation Owner Room Grade Codes to be changed.", "$ref": "#/definitions/roomRotationUnitGradesType" }, "links": { "$ref": "#/definitions/links" }, "warnings": { "$ref": "#/definitions/warningsType" } } }, "UnitGradesDetailsUpdated": { "type": "object", "description": "Response Body.", "properties": { "links": { "$ref": "#/definitions/links" }, "warnings": { "$ref": "#/definitions/warningsType" } } }, "overrideReasonsDetails": { "type": "object", "description": "Response object for fetching Room Rotation Override Reasons.", "properties": { "overrideReasons": { "description": "Collection of Room Rotation Override Reasons.", "$ref": "#/definitions/roomRotationOverrideReasonsType" }, "links": { "$ref": "#/definitions/links" }, "warnings": { "$ref": "#/definitions/warningsType" } } }, "roomRotationOverrideReasonsType": { "type": "array", "description": "Room Rotation Override Reason Enumeration element.", "maxItems": 4000, "items": { "$ref": "#/definitions/roomRotationOverrideReasonType" } }, "roomRotationOverrideReasonType": { "type": "object", "description": "Defines Rotation Override Reason Details.", "properties": { "code": { "description": "Defines the Rotation Override Reason Code.", "type": "string", "minLength": 1, "maxLength": 40 }, "description": { "description": "Description of the Rotation Override Reason.", "$ref": "#/definitions/translationTextType2000" }, "displayOrder": { "description": "Rotation Override Reason sequence number.", "type": "number", "minimum": 0, "maximum": 99999 }, "managedBy": { "$ref": "#/definitions/managedByOptions" } } }, "overrideReasonsCriteria": { "type": "object", "description": "Request object for creating a new Room Rotation Override Reason.", "properties": { "overrideReasons": { "description": "Room Rotation Override Reasons to be created.", "$ref": "#/definitions/roomRotationOverrideReasonsType" }, "warnings": { "$ref": "#/definitions/warningsType" } } }, "overrideReasonsToBeChanged": { "type": "object", "description": "Request object for changing an existing Room Rotation Override Reason.", "properties": { "overrideReasons": { "description": "Room Rotation Override Reason to be changed.", "$ref": "#/definitions/roomRotationOverrideReasonsType" }, "warnings": { "$ref": "#/definitions/warningsType" } } }, "rotationRuleStatusType": { "type": "string", "description": "Simple type for Rotation Setup Rule System Status.", "enum": [ "Changed", "Deleted", "New", "Queried" ] }, "roomOwnershipDetails": { "type": "object", "description": "Response object containing room ownership details.", "properties": { "roomOwnerships": { "description": "Room ownership details for the profile.", "$ref": "#/definitions/roomOwnershipsList" }, "links": { "$ref": "#/definitions/links" }, "warnings": { "$ref": "#/definitions/warningsType" } } }, "roomOwnershipsList": { "description": "Room Ownership records.", "type": "object", "properties": { "roomOwnershipInfo": { "description": "Collection of Detailed information on Room Ownership records.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/roomOwnershipType" } }, "hasMore": { "description": "Indicates whether all the records are included in the response or not. Absence of the attribute values should be consider as all rows fetched in the response.", "type": "boolean" }, "totalResults": { "description": "Total number of rows queried", "type": "integer" }, "count": { "description": "Total number of rows returned", "type": "integer" } } }, "roomOwnershipType": { "type": "object", "description": "Define the search criteria for retrieving room ownership records", "properties": { "hotelId": { "description": "Hotel Code of Room Ownership record.", "type": "string", "minLength": 0, "maxLength": 20 }, "roomOwnershipId": { "description": "Unique Id for Room Ownership record.", "type": "integer" }, "contractNumber": { "description": "Contract number for Room Ownership record.", "type": "string", "maxLength": 50 }, "startDate": { "description": "Start Date of the Room Ownership record.", "type": "string", "format": "date" }, "endDate": { "description": "End Date of the Room Ownership record.", "type": "string", "format": "date" }, "roomId": { "description": "Room Id of Room Ownership record.", "type": "string", "minLength": 0, "maxLength": 20 }, "roomCategory": { "description": "Room Category of the Room Ownership record.", "type": "string", "minLength": 0, "maxLength": 20 }, "roomType": { "description": "Room Type of the Room Ownership record.", "type": "string", "minLength": 0, "maxLength": 20 }, "profileId": { "description": "Profile ID of the Room Ownership record.", "$ref": "#/definitions/uniqueID_Type" }, "profileName": { "description": "Name of owner profile.", "$ref": "#/definitions/profileNameType" }, "status": { "description": "Status of the Room Ownership record. (Active or Inactive)", "type": "string" }, "ownerExclusive": { "type": "boolean", "description": "Whether Room is available for the exclusive use of its designated owner and owner referrals, or if it is available in general availability." } } }, "profileNameType": { "type": "object", "description": "This provides name information for a person.", "properties": { "name": { "description": "Family name, last name or Company Name.", "type": "string", "minLength": 0, "maxLength": 40 }, "fullName": { "description": "Full display Name.", "type": "string", "minLength": 0, "maxLength": 200 }, "namePrefix": { "description": "Salutation of honorific (e.g. Mr., Mrs., Ms., Miss, Dr.)", "type": "string", "minLength": 0, "maxLength": 40 }, "givenName": { "description": "Given name, first name or names.", "type": "string", "minLength": 0, "maxLength": 40 }, "middleName": { "description": "The middle name of the person name.", "type": "string", "minLength": 0, "maxLength": 40 }, "nameTitle": { "description": "Degree or honors (e.g., Ph.D., M.D.)", "type": "string", "minLength": 0, "maxLength": 80 }, "nameType": { "description": "Type of name of the individual, such as former, nickname, alternate or alias name.", "$ref": "#/definitions/personNameTypeType" } } }, "personNameTypeType": { "type": "string", "description": "Person's name in an external system.", "enum": [ "Primary", "Alternate", "Incognito", "External", "Phonetic" ] }, "FetchRotationRules": { "type": "object", "description": "Response object for retrieving rotation setup rules for a given property", "properties": { "rotationRulesResult": { "description": "Retrieve Rotation Setup Rules for a given property.", "$ref": "#/definitions/rotationRulesResultType" }, "links": { "$ref": "#/definitions/links" }, "warnings": { "$ref": "#/definitions/warningsType" } } }, "fetchRotationPeriod": { "type": "object", "description": "Response Object for Fetch Rotation Period", "properties": { "hotelId": { "description": "Property code for Room Rotation Period.", "type": "string", "minLength": 0, "maxLength": 20 }, "startDate": { "description": "Represents Effective start date for the Room Rotation Period Setup.", "type": "string", "format": "date" }, "periodFrequency": { "description": "Represents Effective Period reset frequency for the Room Rotation Period Setup.", "$ref": "#/definitions/rotationPeriodFrequencyType" }, "currentPeriodStartDate": { "description": "The start date for the property's current Rotation Period.", "type": "string", "format": "date" }, "links": { "$ref": "#/definitions/links" }, "warnings": { "$ref": "#/definitions/warningsType" } } }, "roomRotationRules": { "type": "object", "description": "Request object for saving changes to room type rotation rules.", "properties": { "forceRecalculate": { "description": "Indicates if Rotation points recalculation job should be re-triggered.", "type": "boolean", "default": false }, "rotationRules": { "type": "array", "description": "Defines collection of Room Rotation Setup Rules.", "maxItems": 4000, "items": { "$ref": "#/definitions/rotationRuleType" } }, "warnings": { "$ref": "#/definitions/warningsType" } } }, "roomOwnerReferralDetails": { "type": "object", "description": "Response object containing Room Owner Referral details.", "properties": { "roomOwnerReferrals": { "description": "Room Owner Referral details.", "$ref": "#/definitions/roomOwnerReferralList" }, "hasOwnershipRecords": { "type": "boolean", "description": "Flag to indicate if the associated profile has any active Room Ownership records attached to it." }, "links": { "$ref": "#/definitions/links" }, "warnings": { "$ref": "#/definitions/warningsType" } } }, "roomOwnerReferralList": { "description": "Room Owner Referral records.", "type": "object", "properties": { "roomOwnerReferrals": { "description": "Collection of Detailed information on Room Owner's Referral records.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/roomOwnerReferralType" } } } }, "roomOwnerReferralType": { "type": "object", "description": "Define the search criteria for retrieving Room Owner Referral records", "properties": { "hotelId": { "description": "Hotel Code of Room Owner Referral record.", "type": "string", "minLength": 0, "maxLength": 20 }, "roomOwnerId": { "description": "Unique Id for Room Ownership record.", "type": "number" }, "roomOwnerReferralId": { "description": "Unique Id for Room Owner Referral record.", "type": "number" }, "referral": { "description": "Type of referral to the room owner/target profile.", "$ref": "#/definitions/referralType" }, "startDate": { "description": "Start Date of the Room Owner Referral record.", "type": "string", "format": "date" }, "endDate": { "description": "End Date of the Room Owner Referral record.", "type": "string", "format": "date" }, "roomId": { "description": "Room Id of Room Owner Referral record.", "type": "string" }, "profileName": { "description": "Profile Name of the Room Owner Referral record.", "$ref": "#/definitions/profileNameType" }, "profileAddress": { "description": "Address details for the profile on the Room Owner Referral record", "$ref": "#/definitions/addressType" }, "profileId": { "description": "Profile ID of the Room Owner Referral record.", "$ref": "#/definitions/uniqueID_Type" }, "inactive": { "description": "Status of the Room Owner Referral record.", "type": "boolean" }, "inactiveDate": { "description": "Date in which the room owner referral record was marked as inactive.", "type": "string", "format": "date" } } }, "createRoomOwnerReferralDetails": { "type": "object", "description": "Request object for creating Room Owner Referral records.", "properties": { "roomOwnerReferrals": { "description": "Details to create Room Owner Referral records.", "$ref": "#/definitions/roomOwnerReferralList" }, "warnings": { "$ref": "#/definitions/warningsType" } } }, "changeRoomOwnerReferralDetails": { "type": "object", "description": "Request object for changing Room Owner Referral records.", "properties": { "roomOwnerReferral": { "description": "Criteria to change the Room Owner Referral record.", "$ref": "#/definitions/roomOwnerReferralType" }, "warnings": { "$ref": "#/definitions/warningsType" } } }, "addressType": { "type": "object", "description": "Provides address information.", "properties": { "isValidated": { "description": "Indicator to define if the Address is validated by the Address Validation System.", "type": "boolean", "default": false }, "addressLine": { "description": "When the address is unformatted (FormattedInd=\"false\") these lines will contain free form address details. When the address is formatted and street number and street name must be sent independently, the street number will be sent using StreetNmbr, and the street name will be sent in the first AddressLine occurrence.", "type": "array", "maxItems": 4, "items": { "type": "string", "minLength": 0, "maxLength": 80 } }, "cityName": { "description": "City (e.g., Dublin), town, or postal station (i.e., a postal service territory, often used in a military address).", "type": "string", "minLength": 0, "maxLength": 40 }, "postalCode": { "description": "Post Office Code number.", "type": "string", "minLength": 0, "maxLength": 15 }, "cityExtension": { "description": "Post Office City Extension Code number. City Extension mainly used for UK addresses.", "type": "string", "minLength": 0, "maxLength": 20 }, "county": { "description": "County or District Name (e.g., Fairfax). This is read only.", "type": "string", "minLength": 0, "maxLength": 20 }, "state": { "description": "State or Province name (e.g., Texas).", "type": "string", "minLength": 0, "maxLength": 20 }, "country": { "description": "Country name (e.g., Ireland).", "$ref": "#/definitions/countryNameType" }, "language": { "description": "Language identification.", "type": "string", "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*" }, "type": { "description": "Defines the type of address (e.g. home, business, other).", "type": "string", "minLength": 0, "maxLength": 20 }, "typeDescription": { "description": "Describes the type code", "type": "string", "minLength": 0, "maxLength": 2000 }, "primaryInd": { "description": "When true, indicates a primary information.", "type": "boolean" }, "barCode": { "description": "The postal barcode for the address.", "type": "string", "minLength": 0, "maxLength": 100 }, "createDateTime": { "description": "Time stamp of the creation.", "type": "string", "format": "date-time" }, "creatorId": { "description": "ID of creator. The creator could be a software system identifier or an identifier of an employee responsible for the creation.", "type": "string", "minLength": 0, "maxLength": 200 }, "lastModifyDateTime": { "description": "Time stamp of last modification.", "type": "string", "format": "date-time" }, "lastModifierId": { "description": "Identifies the last software system or person to modify a record.", "type": "string", "minLength": 0, "maxLength": 200 } } }, "countryNameType": { "type": "object", "description": "Code for a country or a nationality.", "properties": { "value": { "type": "string", "description": "Used for Character Strings, length 0 to 200.", "minLength": 0, "maxLength": 200 }, "code": { "description": "Code for a country or a nationality.", "type": "string", "minLength": 0, "maxLength": 20 } } }, "referralType": { "description": "Indicates the type of referral for a Profile to the Room Owner.", "type": "string", "enum": [ "Owner", "OwnerReferral" ] }, "managedByOptions": { "description": "Describes of the Configuration is Managed by Enterprise or Property.", "type": "string", "enum": [ "EnterpriseManaged", "PropertyManaged", "EnterpriseEnforced", "PropertyOverridden" ] }, "operaVersionNumberType": { "type": "string", "description": "Current Opera Version Number", "minLength": 0, "maxLength": 40 }, "pingDetail": { "type": "object", "description": "Response for Ping operation.", "properties": { "operaVersion": { "description": "Opera version number.", "$ref": "#/definitions/operaVersionNumberType" }, "links": { "$ref": "#/definitions/links" }, "warnings": { "$ref": "#/definitions/warningsType" } } } }, "tags": [ { "name": "RoomRotationConfig", "description": "The REST APIs allow you to perform all actions related to Room Rotation from configuring point calculations for owner rooms, adjustment options for room prioritization and automatic assignment based on owner room utilization." } ], "externalDocs": { "description": "Find out more about Oracle Hospitality", "url": "https://docs.oracle.com/en/industries/hospitality/integration_platforms.html" } }