# Generated by API Evangelist (build-phrasing.py). Our phrasing, not observed demand. overlay: 1.0.0 info: title: API Evangelist conversational phrasing for OPERA Cloud Service Room Rotation API version: 1.0.0 extends: openapi/oracle-hospitality-roomrotation-api-openapi.yml actions: - target: $.info update: x-apievangelist-phrasing: method: generated generated: '2026-09-26' generator: build-phrasing.py label: Generated by API Evangelist operations: 10 - target: $.paths['/hotels/{hotelId}/departureStartDate/{departureStartDate}/departureEndDate/{departureEndDate}/reservationRotationPoints'].get update: x-apievangelist-phrasing: intent: List reservations with their rotation points effect: read questions: - How many rotation points did each departing reservation earn for its room owner? - Can I filter rotation points by guest surname or room type? instructions: - text: List rotation points for rooms {roomIds} at hotel {hotelId} departing {departureStartDate} to {departureEndDate}. slots: roomIds: query.roomIds hotelId: path.hotelId departureStartDate: path.departureStartDate departureEndDate: path.departureEndDate - text: Show rotation points for guest {surname} departing {departureStartDate} to {departureEndDate} at hotel {hotelId}. slots: surname: query.surname departureStartDate: path.departureStartDate departureEndDate: path.departureEndDate hotelId: path.hotelId method: generated generated: '2026-09-26' - target: $.paths['/hotels/{hotelId}/departureStartDate/{departureStartDate}/departureEndDate/{departureEndDate}/reservationRotationPoints/searches'].post update: x-apievangelist-phrasing: intent: Search reservation rotation points with a body effect: read questions: - Is there a POST search for reservation rotation points? - Can I send room and floor filters for rotation points in a request body? instructions: - text: Run a POST search of rotation points for rooms {roomIds} at hotel {hotelId}, departures {departureStartDate} to {departureEndDate}. slots: roomIds: requestBody.roomIds hotelId: path.hotelId departureStartDate: path.departureStartDate departureEndDate: path.departureEndDate - text: Search rotation points by confirmation {confirmationNumber} via the searches endpoint. slots: confirmationNumber: requestBody.confirmationNumber method: generated generated: '2026-09-26' - target: $.paths['/hotels/{hotelId}/reservations/{reservationId}/rooms/{roomId}/reservationRotationPointsDetails'].get update: x-apievangelist-phrasing: intent: Get a reservation's rotation point details effect: read questions: - How were the rotation points on one reservation calculated and adjusted? - Can I see the adjustment log for a reservation's rotation points? instructions: - text: Show rotation point details for reservation {reservationId} in room {roomId} at hotel {hotelId}. slots: reservationId: path.reservationId roomId: path.roomId hotelId: path.hotelId - text: Include the adjustment log for reservation {reservationId} room {roomId}. slots: reservationId: path.reservationId roomId: path.roomId method: generated generated: '2026-09-26' - target: $.paths['/hotels/{hotelId}/reservations/{reservationId}/rooms/{roomId}/reservationRotationPointsDetails'].put update: x-apievangelist-phrasing: intent: Adjust a reservation's rotation points effect: write questions: - How do I correct the rotation points credited for one reservation? - Can I modify rotation points for a specific reservation and room? instructions: - text: Adjust rotation points for reservation {reservationId} in room {roomId} at hotel {hotelId}. slots: reservationId: path.reservationId roomId: path.roomId hotelId: path.hotelId - text: Set reservation {reservationId} room {roomId} points to {reservationRotationPointsDetailsList}. slots: reservationId: path.reservationId roomId: path.roomId reservationRotationPointsDetailsList: requestBody.reservationRotationPointsDetailsList method: generated generated: '2026-09-26' - target: $.paths['/hotels/{hotelId}/roomRotationPoints'].get update: x-apievangelist-phrasing: intent: Get rotation points per room effect: read questions: - What's each owned unit's rotation point balance on a given date? - Which rooms have the fewest rotation points right now? instructions: - text: Show room rotation points at hotel {hotelId} as of {roomRotationPointsDate}. slots: hotelId: path.hotelId roomRotationPointsDate: query.roomRotationPointsDate - text: Get rotation points for rooms {roomIds} on {roomRotationPointsDate}. slots: roomIds: query.roomIds roomRotationPointsDate: query.roomRotationPointsDate method: generated generated: '2026-09-26' - target: $.paths['/hotels/{hotelId}/roomRotationPoints'].put update: x-apievangelist-phrasing: intent: Adjust rotation points by room number effect: write questions: - How do I update the balance forward points on individual rooms? - Can I adjust rotation points room by room rather than per reservation? instructions: - text: Adjust room rotation points at hotel {hotelId} with {roomRotationPointsAdjustmentInfoTypeList}. slots: hotelId: path.hotelId roomRotationPointsAdjustmentInfoTypeList: requestBody.roomRotationPointsAdjustmentInfoTypeList - text: Reset the balance forward points on rooms at hotel {hotelId}. slots: hotelId: path.hotelId method: generated generated: '2026-09-26' - target: $.paths['/profiles/{profileId}/roomOwnerships'].get update: x-apievangelist-phrasing: intent: Get the rooms a profile owns effect: read questions: - Which rooms does this guest own or refer through the rental program? - Can I see only available rooms tied to an owner's profile? instructions: - text: Show the room ownerships for profile {profileId}. slots: profileId: path.profileId - text: List rooms owned by profile {profileId} at hotels {hotelIds}, including referrals. slots: profileId: path.profileId hotelIds: query.hotelIds method: generated generated: '2026-09-26' - target: $.paths['/roomOwners'].get update: x-apievangelist-phrasing: intent: Find room owners effect: read questions: - Who owns a particular room in the rental pool? - Can I look up room owners by contract number? instructions: - text: Find owners of rooms {roomIds} at hotels {hotelIds}. slots: roomIds: query.roomIds hotelIds: query.hotelIds - text: Look up room owner {surname} at hotels {hotelIds}. slots: surname: query.surname hotelIds: query.hotelIds method: generated generated: '2026-09-26' - target: $.paths['/roomOwners/searches'].post update: x-apievangelist-phrasing: intent: Search room owners with a body effect: read questions: - Is there a POST search for room owners with filters in the body? - Can I search owners by contract date range in a request body? instructions: - text: Run a POST room owner search at hotels {hotelIds} for contract {contractNumber}. slots: hotelIds: requestBody.hotelIds contractNumber: requestBody.contractNumber - text: Search room owners via the searches endpoint at {hotelIds}, including inactive ones. slots: hotelIds: requestBody.hotelIds method: generated generated: '2026-09-26' - target: $.paths['/services/roomrotation/status'].get update: x-apievangelist-phrasing: intent: Check the room rotation service status effect: read questions: - Is the room rotation service up? - How can I health-check the owner rotation service? instructions: - text: Ping the room rotation service for hotel {hotel}. slots: hotel: header.x-hotelid - text: Ping room rotation with input {operaPingInput}. slots: operaPingInput: query.operaPingInput method: generated generated: '2026-09-26'