Oracle Hospitality · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for OPERA Cloud Distribution Shop API
7 actions
7 updates
phrasing
extends
openapi/oracle-hospitality-shop-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.
What the actions change
x-apievangelist-phrasing
Targets 7
$.info
$.paths['/hotels'].get
$.paths['/hotels/{hotelCode}/offers'].get
$.paths['/hotels/{hotelCode}/offer'].get
$.paths['/hotels/{hotelCode}/addons'].get
$.paths['/hotels/{hotelCode}/calendar'].get
$.paths['/hotels/{hotelCode}/alternateOffers'].get
OpenAPI Overlay
# 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 Distribution Shop API
version: 1.0.0
extends: openapi/oracle-hospitality-shop-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: 6
- target: $.paths['/hotels'].get
update:
x-apievangelist-phrasing:
intent: Compare availability and rates across hotels
effect: read
questions:
- Which of our hotels have rooms available for my dates, and at what rate range?
- Can I search several properties at once for two adults and only see the ones with availability?
- Is it possible to limit a multi-hotel search to a minimum and maximum rate?
instructions:
- text: Check availability at hotels {hotelCodes} from {arrivalDate} to {departureDate}.
slots:
hotelCodes: query.hotelCodes
arrivalDate: query.arrivalDate
departureDate: query.departureDate
- text: Show rate ranges across properties {hotelCodes} for {adults} adults arriving {arrivalDate} and leaving {departureDate}, available ones only.
slots:
hotelCodes: query.hotelCodes
adults: query.adults
arrivalDate: query.arrivalDate
departureDate: query.departureDate
method: generated
generated: '2026-09-26'
- target: $.paths['/hotels/{hotelCode}/offers'].get
update:
x-apievangelist-phrasing:
intent: List room offers at one hotel
effect: read
questions:
- What rooms and rates can a guest book at this hotel for my stay dates?
- Can I filter a hotel's offers by room type or promotion code?
- How do I page through a long list of offers for one property?
instructions:
- text: List available offers at hotel {hotelCode} from {arrivalDate} to {departureDate}.
slots:
hotelCode: path.hotelCode
arrivalDate: query.arrivalDate
departureDate: query.departureDate
- text: Show offers for room types {roomTypes} at hotel {hotelCode} arriving {arrivalDate}, departing {departureDate}.
slots:
roomTypes: query.roomTypes
hotelCode: path.hotelCode
arrivalDate: query.arrivalDate
departureDate: query.departureDate
- text: Find offers with promo code {promotionCodes} at property {hotelCode} for {arrivalDate} to {departureDate}.
slots:
promotionCodes: query.promotionCodes
hotelCode: path.hotelCode
arrivalDate: query.arrivalDate
departureDate: query.departureDate
method: generated
generated: '2026-09-26'
- target: $.paths['/hotels/{hotelCode}/offer'].get
update:
x-apievangelist-phrasing:
intent: Get one specific room offer
effect: read
questions:
- What is the exact price for one room type and rate plan combination on my dates?
- Can I look up a single offer by its booking code?
instructions:
- text: Get the offer for room type {roomType} on rate plan {ratePlanCode} at hotel {hotelCode} from {arrivalDate} to {departureDate}.
slots:
roomType: query.roomType
ratePlanCode: query.ratePlanCode
hotelCode: path.hotelCode
arrivalDate: query.arrivalDate
departureDate: query.departureDate
- text: Retrieve the single offer for booking code {bookingCode} at hotel {hotelCode}, {arrivalDate} to {departureDate}.
slots:
bookingCode: query.bookingCode
hotelCode: path.hotelCode
arrivalDate: query.arrivalDate
departureDate: query.departureDate
method: generated
generated: '2026-09-26'
- target: $.paths['/hotels/{hotelCode}/addons'].get
update:
x-apievangelist-phrasing:
intent: List add-on packages for a stay
effect: read
questions:
- What add-ons like breakfast or parking packages can a guest buy at this hotel?
- Can I see grouped package offerings for particular stay dates?
instructions:
- text: List add-on packages at hotel {hotelCode} for a stay from {arrivalDate} to {departureDate}.
slots:
hotelCode: path.hotelCode
arrivalDate: query.arrivalDate
departureDate: query.departureDate
- text: Show package group {packageGroupCodes} add-ons at property {hotelCode} for {arrivalDate} to {departureDate}.
slots:
packageGroupCodes: query.packageGroupCodes
hotelCode: path.hotelCode
arrivalDate: query.arrivalDate
departureDate: query.departureDate
method: generated
generated: '2026-09-26'
- target: $.paths['/hotels/{hotelCode}/calendar'].get
update:
x-apievangelist-phrasing:
intent: Show lowest rates on a calendar for a hotel
effect: read
questions:
- What is the cheapest nightly rate at this hotel for each day over the next two months?
- How many days can a hotel rate calendar cover?
- Why does the rate calendar only check the top channel rates when I don't filter?
instructions:
- text: Show the lowest-rate calendar for hotel {hotelCode} for arrivals from {arrivalDateFrom} to {arrivalDateTo}.
slots:
hotelCode: path.hotelCode
arrivalDateFrom: query.arrivalDateFrom
arrivalDateTo: query.arrivalDateTo
- text: Build a {lengthOfStay}-night lowest price calendar at property {hotelCode} between {arrivalDateFrom} and {arrivalDateTo}.
slots:
lengthOfStay: query.lengthOfStay
hotelCode: path.hotelCode
arrivalDateFrom: query.arrivalDateFrom
arrivalDateTo: query.arrivalDateTo
method: generated
generated: '2026-09-26'
- target: $.paths['/hotels/{hotelCode}/alternateOffers'].get
update:
x-apievangelist-phrasing:
intent: Suggest alternate dates with availability
effect: read
questions:
- If my dates are sold out, which nearby arrival dates still have offers?
- Can I see alternate offers a few days either side of the requested arrival?
instructions:
- text: Find alternate offers at hotel {hotelCode} around arrival {arrivalDate}.
slots:
hotelCode: path.hotelCode
arrivalDate: query.arrivalDate
- text: Show alternate dates within {alternateDays} days of {arrivalDate} for a {lengthOfStay}-night stay at property {hotelCode}.
slots:
alternateDays: query.alternateDays
arrivalDate: query.arrivalDate
lengthOfStay: query.lengthOfStay
hotelCode: path.hotelCode
method: generated
generated: '2026-09-26'