Oracle Hospitality · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for OPERA Cloud Service Room Rotation API

11 actions 11 updates phrasing extends openapi/oracle-hospitality-roomrotation-api-openapi.yml
Generated by API Evangelist Written by API Evangelist tooling for Oracle Hospitality's API. It is a proposal applied on top of the contract, not a document Oracle Hospitality publishes.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 11

$.info
$.paths['/hotels/{hotelId}/departureStartDate/{departureStartDate}/departureEndDate/{departureEndDate}/reservationRotationPoints'].get
$.paths['/hotels/{hotelId}/departureStartDate/{departureStartDate}/departureEndDate/{departureEndDate}/reservationRotationPoints/searches'].post
$.paths['/hotels/{hotelId}/reservations/{reservationId}/rooms/{roomId}/reservationRotationPointsDetails'].get
$.paths['/hotels/{hotelId}/reservations/{reservationId}/rooms/{roomId}/reservationRotationPointsDetails'].put
$.paths['/hotels/{hotelId}/roomRotationPoints'].get
$.paths['/hotels/{hotelId}/roomRotationPoints'].put
$.paths['/profiles/{profileId}/roomOwnerships'].get
$.paths['/roomOwners'].get
$.paths['/roomOwners/searches'].post
$.paths['/services/roomrotation/status'].get

OpenAPI Overlay

Raw ↑
# 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'