# 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 Room Rotation Configuration Service Room… version: 1.0.0 extends: openapi/oracle-hospitality-roomrotationconfig-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: 30 - target: $.paths['/adjustmentReasons'].get update: x-apievangelist-phrasing: intent: List room rotation adjustment reasons effect: read questions: - What adjustment reasons are configured for room rotation points? - Can I search rotation adjustment reasons by code or include inactive ones? instructions: - text: List the room rotation adjustment reasons. - text: Find rotation adjustment reasons matching code {code}. slots: code: query.code method: generated generated: '2026-09-26' - target: $.paths['/adjustmentReasons'].post update: x-apievangelist-phrasing: intent: Create room rotation adjustment reasons effect: write questions: - How do I add a new reason for adjusting room rotation points? - Can I set up several rotation adjustment reason codes at once? instructions: - text: Create rotation adjustment reasons {reasons}. slots: reasons: requestBody.adjustmentReasons - text: Add a new room rotation adjustment reason code. method: generated generated: '2026-09-26' - target: $.paths['/adjustmentReasons/{adjustmentReasonsId}'].put update: x-apievangelist-phrasing: intent: Update a room rotation adjustment reason effect: write questions: - How do I edit the description of an existing rotation adjustment reason? - Can I change a rotation adjustment reason after it has been created? instructions: - text: Update rotation adjustment reason {reason_id}. slots: reason_id: path.adjustmentReasonsId - text: Change adjustment reason {reason_id} to {reasons}. slots: reason_id: path.adjustmentReasonsId reasons: requestBody.adjustmentReasons method: generated generated: '2026-09-26' - target: $.paths['/adjustmentReasons/{adjustmentReasonsId}'].delete update: x-apievangelist-phrasing: intent: Delete a room rotation adjustment reason effect: destructive questions: - How do I remove a rotation adjustment reason we no longer use? - Can I delete an adjustment reason by its code? instructions: - text: Delete rotation adjustment reason {reason_id}. slots: reason_id: path.adjustmentReasonsId - text: Remove adjustment reason {reason_id} with code {code}. slots: reason_id: path.adjustmentReasonsId code: query.code method: generated generated: '2026-09-26' - target: $.paths['/hotels/{hotelId}/revenueTransactionCodes'].get update: x-apievangelist-phrasing: intent: List room rotation revenue transaction codes effect: read questions: - Which transaction codes count as room rotation revenue at my hotel? - Can I list only the transaction codes flagged for rotation revenue? instructions: - text: List room rotation revenue transaction codes for hotel {hotel}. slots: hotel: path.hotelId - text: Show transaction codes at hotel {hotel} where rotation revenue is {flag}. slots: hotel: path.hotelId flag: query.rotationRevenue method: generated generated: '2026-09-26' - target: $.paths['/hotels/{hotelId}/revenueTransactionCodes'].put update: x-apievangelist-phrasing: intent: Set rotation revenue status on transaction codes effect: write questions: - How do I mark transaction codes as counting toward room rotation revenue? - Can I change the rotation revenue flag on several transaction codes at once? instructions: - text: Update rotation revenue status of transaction codes at hotel {hotel}. slots: hotel: path.hotelId - text: Set rotation revenue flags {codes} for hotel {hotel}. slots: codes: requestBody.revenueTransactionCodes hotel: path.hotelId method: generated generated: '2026-09-26' - target: $.paths['/hotels/{hotelId}/rotationPeriod'].get update: x-apievangelist-phrasing: intent: Get a hotel's room rotation period effect: read questions: - What is the current room rotation period configured for a property? - When does the room rotation period start and end at my hotel? instructions: - text: Show the room rotation period for hotel {hotel}. slots: hotel: path.hotelId - text: Fetch hotel {hotel}'s rotation period settings. slots: hotel: path.hotelId method: generated generated: '2026-09-26' - target: $.paths['/hotels/{hotelId}/rotationPeriod'].put update: x-apievangelist-phrasing: intent: Change a hotel's room rotation period effect: write questions: - How do I change the room rotation period for a property? - Can I reset the rotation period dates at my hotel? instructions: - text: Change the room rotation period for hotel {hotel}. slots: hotel: path.hotelId - text: Set hotel {hotel}'s rotation period to {period}. slots: hotel: path.hotelId period: requestBody.rotationPeriod method: generated generated: '2026-09-26' - target: $.paths['/hotels/{hotelId}/rotationRules'].post update: x-apievangelist-phrasing: intent: Save rotation setup rules and recalculate points effect: write questions: - How do I create, change or delete rotation setup rules and recalculate rotation points in one step? - Can I force a recalculation of rotation points after saving rule changes? instructions: - text: Save rotation setup rules {rules} for hotel {hotel} and recalculate points. slots: rules: requestBody.rotationRules hotel: path.hotelId - text: Apply rotation rule changes at hotel {hotel} with force recalculate {force}. slots: hotel: path.hotelId force: requestBody.forceRecalculate method: generated generated: '2026-09-26' - target: $.paths['/hotels/{hotelId}/rules'].get update: x-apievangelist-phrasing: intent: List room rotation setup rules effect: read questions: - What room rotation setup rules are configured for my hotel? - Can I include inactive rotation rules or filter by setup type? instructions: - text: List the room rotation setup rules for hotel {hotel}. slots: hotel: path.hotelId - text: Show rotation rules of setup type {setup_type} at hotel {hotel}. slots: setup_type: query.setupType hotel: path.hotelId method: generated generated: '2026-09-26' - target: $.paths['/hotels/{hotelId}/rules'].post update: x-apievangelist-phrasing: intent: Create rotation rules (deprecated endpoint) effect: write questions: - Is there an older deprecated endpoint that only creates room rotation rules without recalculating? - Can I still create rotation rules through the deprecated create-rules call? instructions: - text: Create rotation rules for hotel {hotel} using the deprecated create endpoint. slots: hotel: path.hotelId - text: Add legacy rotation rules {rules} at hotel {hotel}. slots: rules: requestBody.rotationRules hotel: path.hotelId method: generated generated: '2026-09-26' - target: $.paths['/hotels/{hotelId}/rules/{ruleId}'].put update: x-apievangelist-phrasing: intent: Change a rotation rule (deprecated endpoint) effect: write questions: - How do I edit one rotation rule by its ID using the deprecated call? - Can I still update a single legacy rotation rule directly? instructions: - text: Change rotation rule {rule_id} at hotel {hotel} via the deprecated endpoint. slots: rule_id: path.ruleId hotel: path.hotelId - text: Update legacy rule {rule_id} for hotel {hotel} to {rules}. slots: rule_id: path.ruleId hotel: path.hotelId rules: requestBody.rotationRules method: generated generated: '2026-09-26' - target: $.paths['/hotels/{hotelId}/rules/{ruleId}'].delete update: x-apievangelist-phrasing: intent: Delete a rotation rule (deprecated endpoint) effect: destructive questions: - How do I delete a single room rotation rule by its ID? - Can I remove a legacy rotation rule with the deprecated delete call? instructions: - text: Delete rotation rule {rule_id} at hotel {hotel}. slots: rule_id: path.ruleId hotel: path.hotelId - text: Remove legacy rule {rule_id} from hotel {hotel}. slots: rule_id: path.ruleId hotel: path.hotelId method: generated generated: '2026-09-26' - target: $.paths['/hotels/{hotelId}/unitGrades'].get update: x-apievangelist-phrasing: intent: List owner room unit grades effect: read questions: - What owner room grades are set up for room rotation? - Can I search owner room unit grades by code or description across hotels? instructions: - text: List owner room unit grades for hotel {hotel}. slots: hotel: path.hotelId - text: Find unit grades matching code {code} at hotel {hotel}. slots: code: query.code hotel: path.hotelId method: generated generated: '2026-09-26' - target: $.paths['/hotels/{hotelId}/unitGrades'].post update: x-apievangelist-phrasing: intent: Create an owner room unit grade effect: write questions: - How do I add a new owner room grade code for room rotation? - Can I create unit grades for a specific property? instructions: - text: Create an owner room unit grade at hotel {hotel}. slots: hotel: path.hotelId - text: Add unit grades {grades} for hotel {hotel}. slots: grades: requestBody.unitGrades hotel: path.hotelId method: generated generated: '2026-09-26' - target: $.paths['/hotels/{hotelId}/unitGrades/{unitGradeCode}'].put update: x-apievangelist-phrasing: intent: Change an owner room unit grade effect: write questions: - How do I edit an existing owner room unit grade? - Can I change the description of a unit grade code? instructions: - text: Update unit grade {grade_code} at hotel {hotel}. slots: grade_code: path.unitGradeCode hotel: path.hotelId - text: Change owner room grade {grade_code} at hotel {hotel} to {grades}. slots: grade_code: path.unitGradeCode hotel: path.hotelId grades: requestBody.unitGrades method: generated generated: '2026-09-26' - target: $.paths['/hotels/{hotelId}/unitGrades/{unitGradeCode}'].delete update: x-apievangelist-phrasing: intent: Delete an owner room unit grade effect: destructive questions: - How do I remove an owner room unit grade we no longer use? - Can I delete a unit grade code from one property? instructions: - text: Delete unit grade {grade_code} at hotel {hotel}. slots: grade_code: path.unitGradeCode hotel: path.hotelId - text: Remove owner room grade {grade_code} from hotel {hotel}. slots: grade_code: path.unitGradeCode hotel: path.hotelId method: generated generated: '2026-09-26' - target: $.paths['/overrideReasons'].get update: x-apievangelist-phrasing: intent: List room rotation override reasons effect: read questions: - Which reasons are configured for overriding the room rotation order? - Can I find rotation override reasons by description? instructions: - text: List the room rotation override reasons. - text: Find rotation override reasons with description {description}. slots: description: query.description method: generated generated: '2026-09-26' - target: $.paths['/overrideReasons'].post update: x-apievangelist-phrasing: intent: Create a room rotation override reason effect: write questions: - How do I add a reason code for overriding room rotation? - Can I create new override reasons for skipping an owner's room? instructions: - text: Create rotation override reasons {reasons}. slots: reasons: requestBody.overrideReasons - text: Add a new room rotation override reason. method: generated generated: '2026-09-26' - target: $.paths['/overrideReasons/{overrideReasonsId}'].put update: x-apievangelist-phrasing: intent: Change a room rotation override reason effect: write questions: - How do I edit an existing rotation override reason? - Can I update the description on an override reason? instructions: - text: Update rotation override reason {reason_id}. slots: reason_id: path.overrideReasonsId - text: Change override reason {reason_id} to {reasons}. slots: reason_id: path.overrideReasonsId reasons: requestBody.overrideReasons method: generated generated: '2026-09-26' - target: $.paths['/overrideReasons/{overrideReasonsId}'].delete update: x-apievangelist-phrasing: intent: Delete a room rotation override reason effect: destructive questions: - How do I remove a rotation override reason? - Can I delete an override reason using its code? instructions: - text: Delete rotation override reason {reason_id}. slots: reason_id: path.overrideReasonsId - text: Remove override reason {reason_id} with code {code}. slots: reason_id: path.overrideReasonsId code: query.code method: generated generated: '2026-09-26' - target: $.paths['/profiles/{profileId}/roomOwnerReferrals'].get update: x-apievangelist-phrasing: intent: List a profile's room owner referrals effect: read questions: - Which referral records exist for a room owner's profile? - Can I include inactive owner referrals for a profile? instructions: - text: List room owner referrals for profile {profile_id}. slots: profile_id: path.profileId - text: Show all owner referral records, active or not, for profile {profile_id}. slots: profile_id: path.profileId method: generated generated: '2026-09-26' - target: $.paths['/profiles/{profileId}/roomOwnerReferrals'].post update: x-apievangelist-phrasing: intent: Create room owner referrals effect: write questions: - How do I record that a room owner referred guests to the property? - Can I add several owner referral records to a profile at once? instructions: - text: Create room owner referrals for profile {profile_id}. slots: profile_id: path.profileId - text: Add referrals {referrals} to owner profile {profile_id}. slots: referrals: requestBody.roomOwnerReferrals profile_id: path.profileId method: generated generated: '2026-09-26' - target: $.paths['/profiles/{profileId}/roomOwnerReferrals/{roomOwnerReferralId}'].put update: x-apievangelist-phrasing: intent: Change a room owner referral effect: write questions: - How do I correct an existing room owner referral record? - Can I update a single owner referral by its ID? instructions: - text: Update referral {referral_id} on profile {profile_id}. slots: referral_id: path.roomOwnerReferralId profile_id: path.profileId - text: Change owner referral {referral_id} for profile {profile_id} to {referral}. slots: referral_id: path.roomOwnerReferralId profile_id: path.profileId referral: requestBody.roomOwnerReferral method: generated generated: '2026-09-26' - target: $.paths['/profiles/{profileId}/roomOwnerReferrals/{roomOwnerReferralId}'].delete update: x-apievangelist-phrasing: intent: Delete a room owner referral effect: destructive questions: - How do I remove a room owner referral that was entered by mistake? - Can I delete one referral record from an owner profile? instructions: - text: Delete referral {referral_id} from profile {profile_id}. slots: referral_id: path.roomOwnerReferralId profile_id: path.profileId - text: Remove owner referral record {referral_id} on profile {profile_id}. slots: referral_id: path.roomOwnerReferralId profile_id: path.profileId method: generated generated: '2026-09-26' - target: $.paths['/profiles/{profileId}/roomOwners'].get update: x-apievangelist-phrasing: intent: List a profile's room ownership records effect: read questions: - Which rooms does an owner profile own for room rotation? - Can I include inactive room ownership records for a profile? instructions: - text: List room ownership records for profile {profile_id}. slots: profile_id: path.profileId - text: Show rooms owned by profile {profile_id}, including inactive owners {inactive}. slots: profile_id: path.profileId inactive: query.showInactiveRoomOwners method: generated generated: '2026-09-26' - target: $.paths['/roomOwners'].put update: x-apievangelist-phrasing: intent: Update room ownership records across properties effect: write questions: - How do I update several room ownership records across properties at once? - Can I override owner exclusivity when changing room ownership? instructions: - text: Update room ownership records {owners}. slots: owners: requestBody.roomOwners - text: Change room owners {owners} with override exclusive set to {override}. slots: owners: requestBody.roomOwners override: requestBody.overrideOwnerExclusive method: generated generated: '2026-09-26' - target: $.paths['/roomOwners'].post update: x-apievangelist-phrasing: intent: Create a room ownership record effect: write questions: - How do I register an owner for a condo or rotation room? - Can I create a room ownership record that overrides owner exclusivity? instructions: - text: Create room ownership record {owner}. slots: owner: requestBody.roomOwner - text: Add a new room owner {owner} overriding exclusivity {override}. slots: owner: requestBody.roomOwner override: requestBody.overrideOwnerExclusive method: generated generated: '2026-09-26' - target: $.paths['/roomOwners/{roomOwnershipId}'].delete update: x-apievangelist-phrasing: intent: Delete a room ownership record effect: destructive questions: - How do I remove an owner from a room ownership record? - Can I delete room ownership even if referrals exist? instructions: - text: Delete room ownership record {ownership_id}. slots: ownership_id: path.roomOwnershipId - text: Remove ownership {ownership_id} and skip the referral check {skip}. slots: ownership_id: path.roomOwnershipId skip: query.overrideReferralCheck method: generated generated: '2026-09-26' - target: $.paths['/services/roomrotation/status'].get update: x-apievangelist-phrasing: intent: Check the room rotation config service status effect: read questions: - Is the room rotation configuration service responding? - How do I health-check room rotation config? instructions: - text: Ping the room rotation config service. - text: Check room rotation service status for hotel {hotel}. slots: hotel: header.x-hotelid method: generated generated: '2026-09-26'