Oracle Hospitality · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for Oracle Hospitality Profile Membership API
46 actions
46 updates
phrasing
extends
openapi/oracle-hospitality-profilemembership-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 46 · first 16 shown; the file carries all of them
$.info
$.paths['/externalSystems/{extSystemCode}/chains/{chainCode}/enrollments'].post
$.paths['/externalSystems/{extSystemCode}/profiles/{externalProfileId}/profileAwards'].put
$.paths['/externalSystems/{extSystemCode}/profiles/{externalProfileId}/memberships'].get
$.paths['/airline/transactions'].get
$.paths['/availableAwardsBasedOnType'].get
$.paths['/awards'].delete
$.paths['/awardsToGrant'].get
$.paths['/enrollments'].post
$.paths['/hotels/{hotelId}/memberships/{membershipId}'].get
$.paths['/issueOtherAwards'].post
$.paths['/memberHistory'].get
$.paths['/membershipClaims'].get
$.paths['/membershipClaims'].post
$.paths['/membershipClaims/{claimId}'].get
$.paths['/membershipClaims/{claimId}'].put
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 Profile Membership API
version: 1.0.0
extends: openapi/oracle-hospitality-profilemembership-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: 45
- target: $.paths['/externalSystems/{extSystemCode}/chains/{chainCode}/enrollments'].post
update:
x-apievangelist-phrasing:
intent: Enroll a guest in an external system's loyalty program
effect: write
questions:
- How do I enroll a guest profile into a membership program run by an external loyalty system?
- Can a chain push a new loyalty enrollment through an external system code rather than directly in OPERA?
instructions:
- text: Enroll the guest into the membership program of external system {ext_system} for chain {chain}.
slots:
ext_system: path.extSystemCode
chain: path.chainCode
- text: Send enrollment details {enrollment} to external system {ext_system} under chain {chain}.
slots:
enrollment: requestBody.enrollmentInfo
ext_system: path.extSystemCode
chain: path.chainCode
method: generated
generated: '2026-09-26'
- target: $.paths['/externalSystems/{extSystemCode}/profiles/{externalProfileId}/profileAwards'].put
update:
x-apievangelist-phrasing:
intent: Redeem an award on an external system's profile
effect: write
questions:
- How do I redeem a loyalty award for a guest identified by an external system's profile ID?
- Can an external loyalty system redeem an award held on a profile it knows by its own ID?
instructions:
- text: Redeem an award on external profile {external_profile} in external system {ext_system}.
slots:
external_profile: path.externalProfileId
ext_system: path.extSystemCode
- text: Redeem award {award} for external system {ext_system} profile {external_profile}.
slots:
award: requestBody.memberAward
ext_system: path.extSystemCode
external_profile: path.externalProfileId
method: generated
generated: '2026-09-26'
- target: $.paths['/externalSystems/{extSystemCode}/profiles/{externalProfileId}/memberships'].get
update:
x-apievangelist-phrasing:
intent: Get memberships for an external system's profile
effect: read
questions:
- What loyalty memberships does a guest have when I only know the external system's profile ID?
- Can I filter an external profile's memberships by membership type and a date span of up to 90 days?
instructions:
- text: Show the memberships on external profile {external_profile} from external system {ext_system}.
slots:
external_profile: path.externalProfileId
ext_system: path.extSystemCode
- text: Get the {membership_type} membership for external profile {external_profile} in system {ext_system}.
slots:
membership_type: query.membershipType
external_profile: path.externalProfileId
ext_system: path.extSystemCode
method: generated
generated: '2026-09-26'
- target: $.paths['/airline/transactions'].get
update:
x-apievangelist-phrasing:
intent: Check status of airline membership transactions
effect: read
questions:
- Which membership transactions has the airline partner processed so far?
- Can I look up airline-processed transactions by batch ID or import date?
instructions:
- text: Show the airline transaction status for batch {batch_id}.
slots:
batch_id: query.batchId
- text: List airline-processed membership transactions imported on {import_date}.
slots:
import_date: query.importDate
method: generated
generated: '2026-09-26'
- target: $.paths['/availableAwardsBasedOnType'].get
update:
x-apievangelist-phrasing:
intent: Find loyalty awards available by award type
effect: read
questions:
- Which rate, product or room upgrade awards can a member choose from?
- Can I find awards that cost fewer than a given number of points for a stay?
- What room upgrade awards are available from one room category to another?
instructions:
- text: Find available awards based on {award_based_on} for membership type {membership_type}.
slots:
award_based_on: query.awardBasedOn
membership_type: query.membershipType
- text: Show rate awards at hotel {hotel} for arrival {arrival} and departure {departure}.
slots:
hotel: query.rateCriteriaHotelId
arrival: query.arrivalDate
departure: query.departureDate
- text: List awards available for under {points} points.
slots:
points: query.pointsBelow
method: generated
generated: '2026-09-26'
- target: $.paths['/awards'].delete
update:
x-apievangelist-phrasing:
intent: Cancel an award granted to a member
effect: destructive
questions:
- How do I cancel a loyalty award that was already granted to a member?
- Can I set how many points to charge back when an award is cancelled?
instructions:
- text: Cancel award {award_number}.
slots:
award_number: query.awardNumber
- text: Cancel award {award_number} with {cancel_points} cancellation points.
slots:
award_number: query.awardNumber
cancel_points: query.actualCancelPoints
method: generated
generated: '2026-09-26'
- target: $.paths['/awardsToGrant'].get
update:
x-apievangelist-phrasing:
intent: List awards that can be granted to a member
effect: read
questions:
- Which awards could I grant to this member right now?
- Can I narrow grantable awards by the points required or the rate code?
instructions:
- text: Show the awards I can grant to membership {membership_id}.
slots:
membership_id: query.membershipId
- text: List grantable awards requiring {points} points at hotel {hotel}.
slots:
points: query.totalPointsRequired
hotel: query.grantAwardInfoHotelId
method: generated
generated: '2026-09-26'
- target: $.paths['/enrollments'].post
update:
x-apievangelist-phrasing:
intent: Enroll a guest profile in a membership program
effect: write
questions:
- How do I sign an existing guest profile up for our loyalty program in OPERA?
- Can I enroll a guest into a membership program directly without going through an external system code?
instructions:
- text: Enroll the guest into the membership program using {enrollment}.
slots:
enrollment: requestBody.enrollmentInfo
- text: Create a loyalty enrollment for this guest profile in OPERA.
method: generated
generated: '2026-09-26'
- target: $.paths['/hotels/{hotelId}/memberships/{membershipId}'].get
update:
x-apievangelist-phrasing:
intent: Get a member's issued award points at one hotel
effect: read
questions:
- How many award points has a member been issued at a particular property?
- What award points were issued per property for one membership?
instructions:
- text: Show the issued award points for membership {membership_id} at hotel {hotel}.
slots:
membership_id: path.membershipId
hotel: path.hotelId
- text: Get hotel {hotel} award points issued to member {membership_id}.
slots:
hotel: path.hotelId
membership_id: path.membershipId
method: generated
generated: '2026-09-26'
- target: $.paths['/issueOtherAwards'].post
update:
x-apievangelist-phrasing:
intent: Issue an OTHER-type award to a member
effect: write
questions:
- How do I issue a gift or other non-rate award to a loyalty member?
- Can I issue an OTHER award by membership type and card number instead of membership ID?
instructions:
- text: Issue an OTHER type award using {award_info}.
slots:
award_info: requestBody.issueAwardsInfo
- text: Give this member a non-rate OTHER award.
method: generated
generated: '2026-09-26'
- target: $.paths['/memberHistory'].get
update:
x-apievangelist-phrasing:
intent: View a guest's primary membership history
effect: read
questions:
- What changes have been made to a guest's primary membership over time?
- Can I filter membership history by action type, user or date range?
instructions:
- text: Show the primary membership history for membership {membership_id}.
slots:
membership_id: query.membershipId
- text: List membership history actions for {membership_id} between {from} and {to}.
slots:
membership_id: query.membershipId
from: query.fromDate
to: query.toDate
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipClaims'].get
update:
x-apievangelist-phrasing:
intent: Search membership claims across all members
effect: read
questions:
- Which missing-points claims are open across all members right now?
- Can I search membership claims by status, hotel or claim date without a membership ID?
instructions:
- text: Search all membership claims with status {status}.
slots:
status: query.claimStatus
- text: Find membership claims at hotel {hotel} filed between {start} and {end}.
slots:
hotel: query.hotelId
start: query.claimDateStart
end: query.claimDateEnd
- text: Look up the membership claim for confirmation number {confirmation}.
slots:
confirmation: query.confirmationNo
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipClaims'].post
update:
x-apievangelist-phrasing:
intent: Create a membership claim
effect: write
questions:
- How do I file a claim for loyalty points a member says they are missing?
- Can I open a new membership claim with instructions attached?
instructions:
- text: Create a membership claim with details {claim}.
slots:
claim: requestBody.membershipClaimDetails
- text: Open a new missing-points claim for this member.
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipClaims/{claimId}'].get
update:
x-apievangelist-phrasing:
intent: Get one membership claim
effect: read
questions:
- What are the details and status of a specific membership claim?
- Can I fetch a single claim by its claim ID?
instructions:
- text: Show membership claim {claim_id}.
slots:
claim_id: path.claimId
- text: Get claim {claim_id} with instructions {instructions}.
slots:
claim_id: path.claimId
instructions: query.fetchInstructions
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipClaims/{claimId}'].put
update:
x-apievangelist-phrasing:
intent: Update an existing membership claim
effect: write
questions:
- How do I change the details of a membership claim that has already been filed?
- Can I update a claim's status after reviewing it?
instructions:
- text: Update membership claim {claim_id} with {claim}.
slots:
claim_id: path.claimId
claim: requestBody.membershipClaimDetails
- text: Change the details of existing claim {claim_id}.
slots:
claim_id: path.claimId
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipPoints/calculations'].post
update:
x-apievangelist-phrasing:
intent: Start a membership points calculation
effect: write
questions:
- How do I kick off the loyalty points calculation process?
- Can I trigger points to be recalculated for stays?
instructions:
- text: Start membership points calculation with {calculation}.
slots:
calculation: requestBody.membershipPointsCalculation
- text: Run the membership points calculation process now.
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipPointsExceptions'].get
update:
x-apievangelist-phrasing:
intent: List membership points exceptions
effect: read
questions:
- Which stays failed to earn points and are sitting as points exceptions?
- Can I filter points exceptions by hotel, membership level or arrival date?
instructions:
- text: List membership points exceptions with status {status}.
slots:
status: query.exceptionStatus
- text: Show {status} points exceptions at hotel {hotel} for membership type {membership_type}.
slots:
status: query.exceptionStatus
hotel: query.hotelId
membership_type: query.membershipType
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipPointsExceptions'].put
update:
x-apievangelist-phrasing:
intent: Update membership points exceptions
effect: write
questions:
- How do I resolve or update points exceptions after reviewing them?
- Can I change several membership points exceptions in one request?
instructions:
- text: Update membership points exceptions with {exceptions}.
slots:
exceptions: requestBody.membershipPointsExceptions
- text: Mark the reviewed points exceptions as resolved.
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipReservationActivity'].get
update:
x-apievangelist-phrasing:
intent: Get today's reservation activity for members
effect: read
questions:
- How many loyalty members are arriving, departing or in-house today?
- What projected room revenue comes from members at my hotels on a given date?
instructions:
- text: Show member reservation activity for hotels {hotels}.
slots:
hotels: query.hotelIds
- text: Get {membership_type} member arrivals, departures and in-house for hotels {hotels} on {date}.
slots:
membership_type: query.membershipType
hotels: query.hotelIds
date: query.propertyDate
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipTransactions/{membershipTransactionId}'].get
update:
x-apievangelist-phrasing:
intent: Get a membership points transaction
effect: read
questions:
- What are the details of one membership transaction?
- Can I retrieve a specific loyalty transaction by its ID?
instructions:
- text: Show membership transaction {transaction_id}.
slots:
transaction_id: path.membershipTransactionId
- text: Get the full record of loyalty transaction {transaction_id}.
slots:
transaction_id: path.membershipTransactionId
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipTransactions/{membershipTransactionId}/awardPoints'].get
update:
x-apievangelist-phrasing:
intent: Get award points accrued on a transaction
effect: read
questions:
- How many award points did a points transaction earn, and under which rule?
- What cost per point was applied to the award points on a transaction?
instructions:
- text: Show the award points accrued on transaction {transaction_id}.
slots:
transaction_id: path.membershipTransactionId
- text: List the award point rules applied to transaction {transaction_id}.
slots:
transaction_id: path.membershipTransactionId
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipTransactions/{membershipTransactionId}/pointRejectionReasons'].get
update:
x-apievangelist-phrasing:
intent: See why points were not awarded on a transaction
effect: read
questions:
- Why didn't a guest earn points for their stay?
- Which rule rejected points on a transaction, such as membership level requirements not met?
instructions:
- text: Explain why points were rejected on transaction {transaction_id}.
slots:
transaction_id: path.membershipTransactionId
- text: List the points rejection reasons for transaction {transaction_id}.
slots:
transaction_id: path.membershipTransactionId
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipTransactions/{membershipTransactionId}/rates'].get
update:
x-apievangelist-phrasing:
intent: Get the stay rates behind a points transaction
effect: read
questions:
- Which rate code and rate amount were used for the stay on a points transaction?
- Can I compare the PMS rate with the central rate for a loyalty transaction?
instructions:
- text: Show the rate details for points transaction {transaction_id}.
slots:
transaction_id: path.membershipTransactionId
- text: List stay dates, rate codes and market codes for transaction {transaction_id}.
slots:
transaction_id: path.membershipTransactionId
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipTransactions/{membershipTransactionId}/revenue'].get
update:
x-apievangelist-phrasing:
intent: Get the stay revenue behind a points transaction
effect: read
questions:
- What revenue was recognized for the stay tied to a points transaction?
- Which revenue types and PMS revenue amounts count toward a member's points?
instructions:
- text: Show the revenue details for points transaction {transaction_id}.
slots:
transaction_id: path.membershipTransactionId
- text: Break down stay revenue by type for transaction {transaction_id}.
slots:
transaction_id: path.membershipTransactionId
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipTransactions/{membershipTransactionId}/tierPoints'].get
update:
x-apievangelist-phrasing:
intent: Get tier points accrued on a transaction
effect: read
questions:
- How many tier points toward status did a points transaction earn?
- Which rule generated the tier points on a loyalty transaction?
instructions:
- text: Show the tier points accrued on transaction {transaction_id}.
slots:
transaction_id: path.membershipTransactionId
- text: List tier point rules applied to transaction {transaction_id}.
slots:
transaction_id: path.membershipTransactionId
method: generated
generated: '2026-09-26'
- target: $.paths['/memberships/{membershipId}/award'].get
update:
x-apievangelist-phrasing:
intent: Export a member's award for fulfillment
effect: read
questions:
- How do I export a member's award details to a fulfillment house?
- Can I include the award number and stay dates in a fulfillment export?
instructions:
- text: Export award {award_number} for membership {membership_id} for fulfillment processing.
slots:
award_number: query.awardNumber
membership_id: path.membershipId
- text: Produce the fulfillment house export for member {membership_id}.
slots:
membership_id: path.membershipId
method: generated
generated: '2026-09-26'
- target: $.paths['/memberships/{membershipId}/awardExports'].get
update:
x-apievangelist-phrasing:
intent: Get a member's award export information
effect: read
questions:
- What award information was prepared for the fulfillment house for this member?
- Can I look up previously generated award export info by award number?
instructions:
- text: Show award export information for membership {membership_id}.
slots:
membership_id: path.membershipId
- text: Get the export info for award {award_number} on member {membership_id}.
slots:
award_number: query.awardNumber
membership_id: path.membershipId
method: generated
generated: '2026-09-26'
- target: $.paths['/memberships/{membershipId}/awards'].get
update:
x-apievangelist-phrasing:
intent: List awards issued to a member
effect: read
questions:
- Which awards has a loyalty member already been issued?
- Can I filter a member's issued awards by hotel or booking number?
instructions:
- text: List the awards issued to membership {membership_id}.
slots:
membership_id: path.membershipId
- text: Show awards issued to member {membership_id} at hotel {hotel}.
slots:
membership_id: path.membershipId
hotel: query.hotelId
method: generated
generated: '2026-09-26'
- target: $.paths['/memberships/{membershipId}/claims'].get
update:
x-apievangelist-phrasing:
intent: List claims filed for one membership
effect: read
questions:
- What missing-points claims has a specific member filed?
- Can I see only one member's claims that are still pending approval?
instructions:
- text: List claims for membership {membership_id}.
slots:
membership_id: path.membershipId
- text: Show claims for member {membership_id} with status {status}.
slots:
membership_id: path.membershipId
status: query.claimStatus
method: generated
generated: '2026-09-26'
- target: $.paths['/memberships/{membershipId}/pointsToExpire'].get
update:
x-apievangelist-phrasing:
intent: See a member's points about to expire
effect: read
questions:
- How many of a member's points are about to expire, and when?
- Which points will lapse soon for a given membership ID?
instructions:
- text: Show points to expire for membership {membership_id}.
slots:
membership_id: path.membershipId
- text: List the expiring point balances on member {membership_id}.
slots:
membership_id: path.membershipId
method: generated
generated: '2026-09-26'
- target: $.paths['/memberships/{membershipId}/pointsToExpire'].put
update:
x-apievangelist-phrasing:
intent: Extend expiring member points
effect: write
questions:
- Can I extend the expiration date on points a member is about to lose?
- How does the grace period in months apply when extending expiring points?
instructions:
- text: Extend expiring points for membership {membership_id}.
slots:
membership_id: path.membershipId
- text: Extend member {membership_id}'s expiring points to {expiration}.
slots:
membership_id: path.membershipId
expiration: requestBody.expirationDate
method: generated
generated: '2026-09-26'
- target: $.paths['/memberships/{membershipId}/promotions'].get
update:
x-apievangelist-phrasing:
intent: List a member's promotions
effect: read
questions:
- Which loyalty promotions is a member signed up for?
- Can I include inactive promotions when listing a member's promotions?
instructions:
- text: List promotions for membership {membership_id}.
slots:
membership_id: path.membershipId
- text: Show all promotions, including inactive, for member {membership_id}.
slots:
membership_id: path.membershipId
method: generated
generated: '2026-09-26'
- target: $.paths['/memberships/{membershipId}/promotions'].post
update:
x-apievangelist-phrasing:
intent: Add a promotion to a member
effect: write
questions:
- How do I register a member for a loyalty promotion?
- Can I attach a new promotion code to a guest's membership?
instructions:
- text: Add promotion {promotion} to membership {membership_id}.
slots:
promotion: requestBody.membershipPromotion
membership_id: path.membershipId
- text: Sign member {membership_id} up for a new promotion.
slots:
membership_id: path.membershipId
method: generated
generated: '2026-09-26'
- target: $.paths['/memberships/{membershipId}/promotions/{promotionCode}'].put
update:
x-apievangelist-phrasing:
intent: Change a member's existing promotion
effect: write
questions:
- How do I edit a promotion a member is already enrolled in?
- Can I update the details of promotion code on an existing membership?
instructions:
- text: Update promotion {promotion_code} on membership {membership_id}.
slots:
promotion_code: path.promotionCode
membership_id: path.membershipId
- text: Change member {membership_id}'s promotion {promotion_code} to {promotion}.
slots:
membership_id: path.membershipId
promotion_code: path.promotionCode
promotion: requestBody.membershipPromotion
method: generated
generated: '2026-09-26'
- target: $.paths['/memberships/{membershipId}/promotions/{promotionCode}'].delete
update:
x-apievangelist-phrasing:
intent: Remove a promotion from a member
effect: destructive
questions:
- How do I take a member out of a promotion they joined by mistake?
- Does deleting a membership promotion just inactivate it?
instructions:
- text: Remove promotion {promotion_code} from membership {membership_id}.
slots:
promotion_code: path.promotionCode
membership_id: path.membershipId
- text: Inactivate member {membership_id}'s promotion {promotion_code}.
slots:
membership_id: path.membershipId
promotion_code: path.promotionCode
method: generated
generated: '2026-09-26'
- target: $.paths['/memberships/{membershipId}/transactions'].get
update:
x-apievangelist-phrasing:
intent: Summarize a member's transactions by membership ID
effect: read
questions:
- What does a member's points transaction summary look like?
- Can I get a transaction summary using the membership ID?
instructions:
- text: Show the transaction summary for membership {membership_id}.
slots:
membership_id: path.membershipId
- text: Summarize loyalty transactions posted to member {membership_id}.
slots:
membership_id: path.membershipId
method: generated
generated: '2026-09-26'
- target: $.paths['/memberships/{membershipId}/transactions'].post
update:
x-apievangelist-phrasing:
intent: Post a new membership transaction
effect: write
questions:
- How do I post a points transaction to a member's account?
- Can I record a manual loyalty transaction for a member?
instructions:
- text: Post transaction {transaction} to membership {membership_id}.
slots:
transaction: requestBody.membershipTransactionDetails
membership_id: path.membershipId
- text: Record a new points transaction for member {membership_id}.
slots:
membership_id: path.membershipId
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipsCard/{membershipCardNo}/membershipType/{membershipCardType}/pointsToExpire'].get
update:
x-apievangelist-phrasing:
intent: See expiring points by membership card number
effect: read
questions:
- Which points are about to expire when I only have the guest's membership card number?
- Can a card number lookup of expiring points return more than one membership?
instructions:
- text: Show points to expire for card {card_no} of type {card_type}.
slots:
card_no: path.membershipCardNo
card_type: path.membershipCardType
- text: Look up expiring points by card number {card_no} and card type {card_type}.
slots:
card_no: path.membershipCardNo
card_type: path.membershipCardType
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipsCard/{membershipCardNo}/membershipType/{membershipCardType}/transactions'].get
update:
x-apievangelist-phrasing:
intent: Summarize member transactions by card number
effect: read
questions:
- Can I get a transaction summary using a membership card number instead of the membership ID?
- What transactions are on the membership tied to a given card number and card type?
instructions:
- text: Show the transaction summary for card {card_no} of type {card_type}.
slots:
card_no: path.membershipCardNo
card_type: path.membershipCardType
- text: Summarize transactions by membership card number {card_no}, card type {card_type}.
slots:
card_no: path.membershipCardNo
card_type: path.membershipCardType
method: generated
generated: '2026-09-26'
- target: $.paths['/profileForEnrollment'].get
update:
x-apievangelist-phrasing:
intent: Find matching profiles before enrollment
effect: read
questions:
- Does this guest already have a profile I should use before enrolling them in the loyalty program?
- Can I match enrollment candidates by name, email or phone number?
instructions:
- text: Find profiles matching {given_name} {surname} for enrollment.
slots:
given_name: query.givenName
surname: query.surname
- text: Search enrollment match profiles by email {email}.
slots:
email: query.emailAddress
method: generated
generated: '2026-09-26'
- target: $.paths['/profiles/{profileId}/awards/redeem'].put
update:
x-apievangelist-phrasing:
intent: Redeem an award on an OPERA profile
effect: write
questions:
- How do I redeem an award that sits on a guest's OPERA profile?
- Can I redeem a member award using the OPERA profile ID?
instructions:
- text: Redeem an award on OPERA profile {profile_id}.
slots:
profile_id: path.profileId
- text: Redeem award {award} for profile {profile_id}.
slots:
award: requestBody.memberAward
profile_id: path.profileId
method: generated
generated: '2026-09-26'
- target: $.paths['/profiles/{profileId}/membershipTransactionExceptions'].get
update:
x-apievangelist-phrasing:
intent: List a profile's membership transaction exceptions
effect: read
questions:
- Which of a guest's membership transactions ended up as exceptions?
- Can I filter a profile's transaction exceptions by hotel and date range?
instructions:
- text: Show membership transaction exceptions for profile {profile_id}.
slots:
profile_id: path.profileId
- text: List transaction exceptions for profile {profile_id} at hotel {hotel} from {start} to {end}.
slots:
profile_id: path.profileId
hotel: query.hotelId
start: query.start
end: query.end
method: generated
generated: '2026-09-26'
- target: $.paths['/profiles/{profileId}/memberships/history'].get
update:
x-apievangelist-phrasing:
intent: View membership card history on a profile
effect: read
questions:
- What membership cards has a guest held over time?
- Can I see the card history for a profile's memberships?
instructions:
- text: Show membership card history for profile {profile_id}.
slots:
profile_id: path.profileId
- text: List past membership cards issued to profile {profile_id}.
slots:
profile_id: path.profileId
method: generated
generated: '2026-09-26'
# --- truncated at 32 KB (33 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/oracle-hospitality/refs/heads/main/overlays/oracle-hospitality-profilemembership-api-phrasing-overlay.yaml