Oracle Hospitality · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Oracle Hospitality Availability API
35 actions
35 updates
phrasing
extends
openapi/oracle-hospitality-availability-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 35 · first 16 shown; the file carries all of them
$.info
$.paths['/availability/summary'].get
$.paths['/hotels/{hotelId}/channels/{channelCode}/rooms/{roomTypeCode}/inventorySnapshot'].get
$.paths['/hotels/{hotelId}/generalAvailabilitySimulator'].get
$.paths['/hotels/{hotelId}/inventorySnapshot'].get
$.paths['/hotels/{hotelId}/rateParity'].get
$.paths['/availability'].get
$.paths['/availability/searches'].post
$.paths['/hotels'].get
$.paths['/hotels/{hotelId}/analyzeRateAvailability'].get
$.paths['/hotels/{hotelId}/analyzeRateAvailability/searches'].post
$.paths['/hotels/{hotelId}/availability'].get
$.paths['/hotels/{hotelId}/availability/alternate'].get
$.paths['/hotels/{hotelId}/availability/alternate/searches'].post
$.paths['/hotels/{hotelId}/availability/searches'].post
$.paths['/hotels/{hotelId}/availableUpsells'].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 Oracle Hospitality Availability API
version: 1.0.0
extends: openapi/oracle-hospitality-availability-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: 34
- target: $.paths['/availability/summary'].get
update:
x-apievangelist-phrasing:
intent: Compare rate parity across hotels in a region
effect: read
questions:
- Are my rates consistent across channels for all hotels in a chain or region?
- Can I check rate parity for several hotels at once over the next few days?
instructions:
- text: Show the regional rate parity summary for hotels {hotelIds} over the next {numberOfDays} days.
slots:
hotelIds: query.hotelIds
numberOfDays: query.numberOfDays
- text: Check multi-hotel parity for rate plan {ratePlanCode} on channel {channelCode} across chain {chainCode}.
slots:
ratePlanCode: query.ratePlanCode
channelCode: query.channelCode
chainCode: query.chainCode
method: generated
generated: '2026-09-26'
- target: $.paths['/hotels/{hotelId}/channels/{channelCode}/rooms/{roomTypeCode}/inventorySnapshot'].get
update:
x-apievangelist-phrasing:
intent: Get channel inventory snapshot for one room type
effect: read
questions:
- What availability and restrictions does a booking channel see for one specific room type?
- Can I snapshot a single room type's channel inventory for weekends only?
instructions:
- text: Snapshot channel {channelCode} inventory for room type {roomTypeCode} at hotel {hotelId} from {fromDate}.
slots:
channelCode: path.channelCode
roomTypeCode: path.roomTypeCode
hotelId: path.hotelId
fromDate: query.fromDate
- text: Show restrictions and availability for room {roomTypeCode} on {channelCode} at {hotelId}, {fromDate} to {endDate}.
slots:
roomTypeCode: path.roomTypeCode
channelCode: path.channelCode
hotelId: path.hotelId
fromDate: query.fromDate
endDate: query.endDate
method: generated
generated: '2026-09-26'
- target: $.paths['/hotels/{hotelId}/generalAvailabilitySimulator'].get
update:
x-apievangelist-phrasing:
intent: Simulate what a booking channel would see
effect: read
questions:
- How can I preview the availability and rates a channel would return for a sample stay?
- Can I simulate a booking request with a promotion code or corporate IATA to test channel results?
instructions:
- text: Run the availability simulator at hotel {hotelId} for arrival {arrival}, {nights} nights, {adults} adults.
slots:
hotelId: path.hotelId
arrival: query.arrival
nights: query.nights
adults: query.adults
- text: Simulate channel {bookingChannelCode} results at {hotelId} with promotion {promotionCode}.
slots:
bookingChannelCode: query.bookingChannelCode
hotelId: path.hotelId
promotionCode: query.promotionCode
method: generated
generated: '2026-09-26'
- target: $.paths['/hotels/{hotelId}/inventorySnapshot'].get
update:
x-apievangelist-phrasing:
intent: Get a hotel's channel inventory snapshot
effect: read
questions:
- What rooms and restrictions are all my booking channels seeing for a hotel right now?
- Can I snapshot channel availability across several booking channels for a date range?
instructions:
- text: Snapshot channel inventory for all room types at hotel {hotelId} starting {fromDate}.
slots:
hotelId: path.hotelId
fromDate: query.fromDate
- text: Show inventory for channels {bookingChannelCodes} at {hotelId} from {fromDate} to {endDate}.
slots:
bookingChannelCodes: query.bookingChannelCodes
hotelId: path.hotelId
fromDate: query.fromDate
endDate: query.endDate
method: generated
generated: '2026-09-26'
- target: $.paths['/hotels/{hotelId}/rateParity'].get
update:
x-apievangelist-phrasing:
intent: Check a hotel's channel rate parity
effect: read
questions:
- Is my hotel's rate the same on every booking channel?
- Can I compare channel rates for one room type and rate plan at a single property?
instructions:
- text: Check rate parity at hotel {hotelId} for the next {numberOfDays} days.
slots:
hotelId: path.hotelId
numberOfDays: query.numberOfDays
- text: Compare parity for room {roomType} and rate plan {ratePlanCode} on channel {channelCode} at {hotelId}.
slots:
roomType: query.roomType
ratePlanCode: query.ratePlanCode
channelCode: query.channelCode
hotelId: path.hotelId
method: generated
generated: '2026-09-26'
- target: $.paths['/availability'].get
update:
x-apievangelist-phrasing:
intent: Check availability across multiple hotels
effect: read
questions:
- Which of my hotels have rooms available for given dates and party size?
- Can a central reservations office query availability for several hotels at once with query parameters?
instructions:
- text: Check availability at hotels {hotelIds} from {roomStayStartDate} to {roomStayEndDate} for {adults} adults.
slots:
hotelIds: query.hotelIds
roomStayStartDate: query.roomStayStartDate
roomStayEndDate: query.roomStayEndDate
adults: query.adults
- text: Using CRO {cro}, list multi-hotel availability for rate plan {ratePlanCode} via query string.
slots:
cro: query.cro
ratePlanCode: query.ratePlanCode
method: generated
generated: '2026-09-26'
- target: $.paths['/availability/searches'].post
update:
x-apievangelist-phrasing:
intent: Search multi-hotel availability with a POST body
effect: read
questions:
- Can I send multi-hotel availability criteria in a POST request body instead of a long query string?
- What's the POST search for checking room availability across a CRO's hotels?
instructions:
- text: POST a multi-hotel availability search for hotels {hotelIds}, {roomStayStartDate} to {roomStayEndDate}.
slots:
hotelIds: requestBody.hotelIds
roomStayStartDate: requestBody.roomStayStartDate
roomStayEndDate: requestBody.roomStayEndDate
- text: Submit a body-based availability search across CRO {cro} hotels for membership level {membershipLevel}.
slots:
cro: requestBody.cro
membershipLevel: requestBody.membershipLevel
method: generated
generated: '2026-09-26'
- target: $.paths['/hotels'].get
update:
x-apievangelist-phrasing:
intent: Search hotels for the sales process
effect: read
questions:
- Which hotels in a city can I offer a guest for their dates?
- Can I search hotels by amenity or nearby attraction during a sales call?
- How do I find alternate hotels in a region when the first choice is full?
instructions:
- text: Find hotels in {city} with availability from {startDate} to {endDate}.
slots:
city: query.city
startDate: query.startDate
endDate: query.endDate
- text: Search hotels in region {regionCode} offering amenity {hotelAmenity}.
slots:
regionCode: query.regionCode
hotelAmenity: query.hotelAmenity
method: generated
generated: '2026-09-26'
- target: $.paths['/hotels/{hotelId}/analyzeRateAvailability'].get
update:
x-apievangelist-phrasing:
intent: Analyze why a rate is closed
effect: read
questions:
- Why is a rate code showing closed for a room type on certain dates?
- Can I see the restriction reasons behind an unavailable rate using query parameters?
instructions:
- text: Analyze why rate {ratePlanCode} is closed for room {roomType} at hotel {hotelId} from {startDate} to {endDate}.
slots:
ratePlanCode: query.ratePlanCode
roomType: query.roomType
hotelId: path.hotelId
startDate: query.startDate
endDate: query.endDate
- text: Explain the closed-rate reasons for {ratePlanCode} at {hotelId} for {duration} nights.
slots:
ratePlanCode: query.ratePlanCode
hotelId: path.hotelId
duration: query.duration
method: generated
generated: '2026-09-26'
- target: $.paths['/hotels/{hotelId}/analyzeRateAvailability/searches'].post
update:
x-apievangelist-phrasing:
intent: Analyze closed rates with a POST search body
effect: read
questions:
- Can I submit the closed-rate analysis criteria as a POST body rather than query parameters?
- Is there a POST search version of the rate availability analysis for a hotel?
instructions:
- text: POST a rate availability analysis for {ratePlanCode} at hotel {hotelId}, {startDate} to {endDate}.
slots:
ratePlanCode: requestBody.ratePlanCode
hotelId: path.hotelId
startDate: requestBody.startDate
endDate: requestBody.endDate
- text: Submit a body-based closed-rate analysis for block {blockId} at {hotelId}.
slots:
blockId: requestBody.blockId
hotelId: path.hotelId
method: generated
generated: '2026-09-26'
- target: $.paths['/hotels/{hotelId}/availability'].get
update:
x-apievangelist-phrasing:
intent: Get room and rate availability for one hotel
effect: read
questions:
- What room types and rates are available at a hotel for my dates?
- Can I check a single property's availability including closed rates, via query parameters?
instructions:
- text: Show available rooms and rates at hotel {hotelId} from {roomStayStartDate} to {roomStayEndDate}.
slots:
hotelId: path.hotelId
roomStayStartDate: query.roomStayStartDate
roomStayEndDate: query.roomStayEndDate
- text: Check availability at {hotelId} for {adults} adults and {children} children on rate plan {ratePlanCode}.
slots:
hotelId: path.hotelId
adults: query.adults
children: query.children
ratePlanCode: query.ratePlanCode
method: generated
generated: '2026-09-26'
- target: $.paths['/hotels/{hotelId}/availability/alternate'].get
update:
x-apievangelist-phrasing:
intent: Find alternate dates for a closed rate
effect: read
questions:
- If a rate is closed on my dates, which nearby dates are open?
- Can I look up alternate stay dates for a room type via query parameters?
instructions:
- text: Find alternate dates at hotel {hotelId} for rate {ratePlanCode} around {startDate}.
slots:
hotelId: path.hotelId
ratePlanCode: query.ratePlanCode
startDate: query.startDate
- text: Suggest open dates for room {roomType} at {hotelId} for a {duration}-night stay.
slots:
roomType: query.roomType
hotelId: path.hotelId
duration: query.duration
method: generated
generated: '2026-09-26'
- target: $.paths['/hotels/{hotelId}/availability/alternate/searches'].post
update:
x-apievangelist-phrasing:
intent: Search alternate dates with a POST body
effect: read
questions:
- Can I send alternate-date search criteria for a closed rate in a POST body?
- Is there a POST search to find alternate dates for a block or a specific room id?
instructions:
- text: POST an alternate-date search at hotel {hotelId} for rate {ratePlanCode} starting {startDate}.
slots:
hotelId: path.hotelId
ratePlanCode: requestBody.ratePlanCode
startDate: requestBody.startDate
- text: Submit a body-based alternate-date search for room {roomId} at {hotelId}.
slots:
roomId: requestBody.roomId
hotelId: path.hotelId
method: generated
generated: '2026-09-26'
- target: $.paths['/hotels/{hotelId}/availability/searches'].post
update:
x-apievangelist-phrasing:
intent: Search one hotel's availability with a POST body
effect: read
questions:
- Can I send single-hotel availability criteria in a POST request body?
- What's the POST search for a property's rooms and rates when my criteria are too long for a URL?
instructions:
- text: POST an availability search for hotel {hotelId} from {roomStayStartDate} to {roomStayEndDate}.
slots:
hotelId: path.hotelId
roomStayStartDate: requestBody.roomStayStartDate
roomStayEndDate: requestBody.roomStayEndDate
- text: Submit a body-based availability search at {hotelId} for membership {membershipType}.
slots:
hotelId: path.hotelId
membershipType: requestBody.membershipType
method: generated
generated: '2026-09-26'
- target: $.paths['/hotels/{hotelId}/availableUpsells'].get
update:
x-apievangelist-phrasing:
intent: Find available upsells for a stay
effect: read
questions:
- Which room upgrades can I offer a guest on their reservation?
- Can I list upsell options for a date range at a hotel?
instructions:
- text: Find upsell offers for reservation {reservationId} at hotel {hotelId}.
slots:
reservationId: query.reservationId
hotelId: path.hotelId
- text: List available upsells at {hotelId} from {startDate} to {endDate} for room {roomType}.
slots:
hotelId: path.hotelId
startDate: query.startDate
endDate: query.endDate
roomType: query.roomType
method: generated
generated: '2026-09-26'
- target: $.paths['/hotels/{hotelId}/guarantees'].get
update:
x-apievangelist-phrasing:
intent: Look up reservation guarantee options
effect: read
questions:
- Which guarantee types can I use for a booking arriving on a given date?
- Can I see guarantee codes and estimated deposit amounts for a rate plan?
instructions:
- text: List guarantee options at hotel {hotelId} for arrival {arrivalDate}.
slots:
hotelId: path.hotelId
arrivalDate: query.arrivalDate
- text: Get guarantees for rate {ratePlanCode} at {hotelId} arriving {arrivalDate}, with estimated amounts.
slots:
ratePlanCode: query.ratePlanCode
hotelId: path.hotelId
arrivalDate: query.arrivalDate
method: generated
generated: '2026-09-26'
- target: $.paths['/hotels/{hotelId}/hurdles'].get
update:
x-apievangelist-phrasing:
intent: Get a hotel's hurdle rates
effect: read
questions:
- What hurdle rates are set for my hotel on a given date?
- Can I filter hurdle rates by room type code?
instructions:
- text: Show hurdle rates at hotel {hotelId} for {hurdleDate}.
slots:
hotelId: path.hotelId
hurdleDate: query.hurdleDate
- text: List hurdle rates for room types {roomTypesCode} at {hotelId}.
slots:
roomTypesCode: query.roomTypesCode
hotelId: path.hotelId
method: generated
generated: '2026-09-26'
- target: $.paths['/hotels/{hotelId}/hurdles'].put
update:
x-apievangelist-phrasing:
intent: Change existing hurdle rates
effect: write
questions:
- How do I raise an existing hurdle rate for peak dates?
- Can I modify hurdle rates that are already set for a hotel?
instructions:
- text: Update the existing hurdle rates at hotel {hotelId}.
slots:
hotelId: path.hotelId
- text: Change hurdle rates at {hotelId} to {hurdleRates}.
slots:
hotelId: path.hotelId
hurdleRates: requestBody.hurdleRates
method: generated
generated: '2026-09-26'
- target: $.paths['/hotels/{hotelId}/hurdles'].post
update:
x-apievangelist-phrasing:
intent: Create new hurdle rates
effect: write
questions:
- How do I set a new minimum acceptable rate (hurdle) for dates that have none?
- What's needed to add hurdle rates for a hotel?
instructions:
- text: Create hurdle rates {hurdleRates} at hotel {hotelId}.
slots:
hurdleRates: requestBody.hurdleRates
hotelId: path.hotelId
- text: Add new hurdle rates for next month at {hotelId}.
slots:
hotelId: path.hotelId
method: generated
generated: '2026-09-26'
- target: $.paths['/hotels/{hotelId}/hurdles'].delete
update:
x-apievangelist-phrasing:
intent: Delete hurdle rates
effect: destructive
questions:
- How do I remove a hurdle rate for a date?
- Can I delete hurdle rates for one room type or yield category?
instructions:
- text: Delete hurdle rates at hotel {hotelId} for {hurdleDate}.
slots:
hotelId: path.hotelId
hurdleDate: query.hurdleDate
- text: Remove hurdle rates for room {roomType} at {hotelId} from {hurdleRangeStart} to {hurdleRangeEnd}.
slots:
roomType: query.roomType
hotelId: path.hotelId
hurdleRangeStart: query.hurdleRangeStart
hurdleRangeEnd: query.hurdleRangeEnd
method: generated
generated: '2026-09-26'
- target: $.paths['/hotels/{hotelId}/rates'].get
update:
x-apievangelist-phrasing:
intent: Get details for several rate plans at a hotel
effect: read
questions:
- Can I pull rate plan information for a list of rate codes in one call?
- Where do I see the details of all the rate plans a hotel sells?
instructions:
- text: Get rate plan information at hotel {hotelId} for codes {ratePlanCodeList}.
slots:
hotelId: path.hotelId
ratePlanCodeList: query.ratePlanCodeList
- text: Show the rate plans configured at {hotelId}.
slots:
hotelId: path.hotelId
method: generated
generated: '2026-09-26'
- target: $.paths['/hotels/{hotelId}/rates/{ratePlanCode}'].get
update:
x-apievangelist-phrasing:
intent: Get information for one rate plan
effect: read
questions:
- What are the details and rules of a specific rate plan code?
- How do I look up one rate plan by its code at a hotel?
instructions:
- text: Show rate plan {ratePlanCode} at hotel {hotelId}.
slots:
ratePlanCode: path.ratePlanCode
hotelId: path.hotelId
- text: Get the details of rate code {ratePlanCode} for {hotelId}.
slots:
ratePlanCode: path.ratePlanCode
hotelId: path.hotelId
method: generated
generated: '2026-09-26'
- target: $.paths['/hotels/{hotelId}/restrictions'].get
update:
x-apievangelist-phrasing:
intent: Get restrictions for a date range
effect: read
questions:
- What stay restrictions, like closed to arrival or minimum stay, are active at my hotel?
- Can I see restrictions for one booking channel or rate plan over a date range?
instructions:
- text: List restrictions at hotel {hotelId} from {restrictionSearchCriteriaStartDate} to {end}.
slots:
hotelId: path.hotelId
restrictionSearchCriteriaStartDate: query.restrictionSearchCriteriaStartDate
end: query.end
- text: Show restrictions for rate plan {ratePlanCode} on channel {bookingChannelCode} at {hotelId}.
slots:
ratePlanCode: query.ratePlanCode
bookingChannelCode: query.bookingChannelCode
hotelId: path.hotelId
method: generated
generated: '2026-09-26'
- target: $.paths['/hotels/{hotelId}/restrictions'].put
update:
x-apievangelist-phrasing:
intent: Clear all restrictions for a hotel on a date
effect: destructive
questions:
- How do I wipe every restriction at a hotel for one day?
- Can I reset a date to have no restrictions at all?
instructions:
- text: Clear all restrictions at hotel {hotelId} on {date}.
slots:
hotelId: path.hotelId
date: requestBody.date
- text: Remove every restriction for {hotelId} on that date.
slots:
hotelId: path.hotelId
method: generated
generated: '2026-09-26'
- target: $.paths['/hotels/{hotelId}/restrictions'].post
update:
x-apievangelist-phrasing:
intent: Create a restriction
effect: write
questions:
- How do I close a rate to arrival or set a minimum length of stay?
- What do I send to add a new restriction for a hotel?
instructions:
- text: Create restriction {restriction} at hotel {hotelId}.
slots:
restriction: requestBody.restriction
hotelId: path.hotelId
- text: Add a closed-to-arrival restriction at {hotelId} for this weekend.
slots:
hotelId: path.hotelId
method: generated
generated: '2026-09-26'
- target: $.paths['/hotels/{hotelId}/restrictions/{restrictionId}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a restriction
effect: destructive
questions:
- How do I remove one restriction I set by mistake?
- Can I delete a restriction only for certain dates or a room type?
instructions:
- text: Delete restriction {restrictionId} at hotel {hotelId}.
slots:
restrictionId: path.restrictionId
hotelId: path.hotelId
- text: Remove restriction {restrictionId} at {hotelId} from {restrictionStartDate} to {restrictionEndDate}.
slots:
restrictionId: path.restrictionId
hotelId: path.hotelId
restrictionStartDate: query.restrictionStartDate
restrictionEndDate: query.restrictionEndDate
method: generated
generated: '2026-09-26'
- target: $.paths['/hotels/{hotelId}/restrictionsHistory'].get
update:
x-apievangelist-phrasing:
intent: Get the change history of restrictions
effect: read
questions:
- Who changed a restriction at my hotel, and when?
- Can I audit restriction changes by user or restriction type over a period?
instructions:
- text: Show restriction history at hotel {hotelId} from {startDate} to {endDate}.
slots:
hotelId: path.hotelId
startDate: query.startDate
endDate: query.endDate
- text: List restriction changes made by user {userId} at {hotelId}.
slots:
userId: query.userId
hotelId: path.hotelId
method: generated
generated: '2026-09-26'
- target: $.paths['/hotels/{hotelId}/validateGuarantees'].put
update:
x-apievangelist-phrasing:
intent: Validate guarantee criteria for a reservation
effect: read
questions:
- Can I validate a set of guarantee criteria against a hotel's rules before booking?
- Is there a request-body version of the guarantee lookup for validating criteria?
instructions:
- text: Validate guarantee criteria {criteria} at hotel {hotelId}.
slots:
criteria: requestBody.criteria
hotelId: path.hotelId
- text: Check that this guarantee request is valid at {hotelId}.
slots:
hotelId: path.hotelId
method: generated
generated: '2026-09-26'
- target: $.paths['/hurdles'].get
update:
x-apievangelist-phrasing:
intent: Get hurdle rates across multiple properties
effect: read
questions:
- What are the hurdle rates for several of my hotels on the same date?
- Can I compare hurdle rates across properties in one call?
instructions:
- text: Show hurdle rates for hotels {hotelIds} on {hurdleDate}.
slots:
hotelIds: query.hotelIds
hurdleDate: query.hurdleDate
- text: Compare multi-property hurdle rates from {hurdleRangeStart} to {hurdleRangeEnd}.
slots:
hurdleRangeStart: query.hurdleRangeStart
hurdleRangeEnd: query.hurdleRangeEnd
method: generated
generated: '2026-09-26'
- target: $.paths['/services/availability/status'].get
update:
x-apievangelist-phrasing:
intent: Get the availability service version
effect: read
questions:
- Which version of the availability service is running?
- Is the availability service up and responding?
instructions:
- text: Report the availability service status and version.
- text: Ping the availability service on behalf of hotel {hotelId}.
slots:
hotelId: header.x-hotelid
method: generated
generated: '2026-09-26'
- target: $.paths['/upsert/hotels/{hotelId}/hurdles'].put
update:
x-apievangelist-phrasing:
intent: Create or change hurdle rates
effect: write
questions:
- Is there an upsert for hurdle rates so I don't need to know if they already exist?
- Can I create-or-update a batch of hurdle rates in one call?
instructions:
- text: Upsert hurdle rates {hurdleRates} at hotel {hotelId}.
slots:
hurdleRates: requestBody.hurdleRates
hotelId: path.hotelId
- text: Create or change hurdle rates at {hotelId}, whichever applies.
slots:
hotelId: path.hotelId
method: generated
generated: '2026-09-26'
- target: $.paths['/hotels/{hotelId}/rates/coupons/{couponCode}'].get
update:
x-apievangelist-phrasing:
intent: Validate a coupon code
effect: read
questions:
- Is a guest's coupon code valid at a hotel?
- How do I check a coupon code on its own, without a promotion code?
instructions:
- text: Validate coupon {couponCode} at hotel {hotelId}.
slots:
couponCode: path.couponCode
hotelId: path.hotelId
- text: Check whether coupon code {couponCode} works at {hotelId}.
slots:
couponCode: path.couponCode
hotelId: path.hotelId
method: generated
generated: '2026-09-26'
- target: $.paths['/hotels/{hotelId}/rates/promotions/{promotionCode}'].get
update:
x-apievangelist-phrasing:
intent: Validate a promotion code
effect: read
questions:
- Is a promotion code valid at my hotel?
- How do I check a promo code on its own, without a coupon?
instructions:
- text: Validate promotion {promotionCode} at hotel {hotelId}.
slots:
promotionCode: path.promotionCode
hotelId: path.hotelId
- text: Check whether promo code {promotionCode} is accepted at {hotelId}.
slots:
promotionCode: path.promotionCode
hotelId: path.hotelId
method: generated
generated: '2026-09-26'
- target: $.paths['/hotels/{hotelId}/rates/promotionsCoupons'].get
update:
x-apievangelist-phrasing:
intent: Validate a promotion and coupon together
effect: read
questions:
- Does a coupon code work together with a specific promotion code?
- Can I validate a promotion-and-coupon pair for a stay's dates?
instructions:
- text: Validate promotion {promotionCode} with coupon {couponCode} at hotel {hotelId}.
slots:
promotionCode: query.promotionCode
couponCode: query.couponCode
hotelId: path.hotelId
- text: Check promo {promotionCode} plus coupon {couponCode} at {hotelId} from {startDate} to {endDate}.
slots:
promotionCode: query.promotionCode
couponCode: query.couponCode
hotelId: path.hotelId
startDate: query.startDate
endDate: query.endDate
method: generated
generated: '2026-09-26'