Oracle Hospitality · OpenAPI Overlay 1.0.0
API Evangelist conversational phrasing for OPERA Cloud CRM Configuration Membership Config API
99 actions
99 updates
phrasing
extends
openapi/oracle-hospitality-membershipconfig-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 99 · first 16 shown; the file carries all of them
$.info
$.paths['/membershipAwards'].get
$.paths['/membershipAwards'].post
$.paths['/membershipAwards/{membershipAwardsId}'].put
$.paths['/membershipAwards/{membershipAwardsId}'].delete
$.paths['/upsert/membershipAwards/{membershipAwardsId}'].put
$.paths['/membershipBenefitPrograms'].get
$.paths['/membershipBenefitPrograms'].post
$.paths['/membershipBenefitPrograms/{membershipBenefitProgramsId}'].put
$.paths['/membershipBenefitPrograms/{membershipBenefitProgramsId}'].delete
$.paths['/upsert/membershipBenefitPrograms/{membershipBenefitProgramsId}'].put
$.paths['/membershipClasses'].get
$.paths['/membershipClasses'].post
$.paths['/membershipClasses/{membershipClassId}'].put
$.paths['/membershipClasses/{membershipClassId}'].delete
$.paths['/membershipEnrollmentGroups'].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 CRM Configuration Membership Config API
version: 1.0.0
extends: openapi/oracle-hospitality-membershipconfig-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: 98
- target: $.paths['/membershipAwards'].get
update:
x-apievangelist-phrasing:
intent: List loyalty membership awards
effect: read
questions:
- Which membership awards are configured for our loyalty program?
- Can I see only awards valid on a certain date, including inactive ones?
instructions:
- text: List membership awards for membership type {membershipType}.
slots:
membershipType: query.membershipType
- text: Show awards with codes {awardCodes} valid on {validForDate}.
slots:
awardCodes: query.awardCodes
validForDate: query.validForDate
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipAwards'].post
update:
x-apievangelist-phrasing:
intent: Create membership awards
effect: write
questions:
- How do I add a new reward that loyalty members can redeem?
- Can I define several new membership awards in one request?
instructions:
- text: 'Create these new membership awards: {membershipAwards}.'
slots:
membershipAwards: requestBody.membershipAwards
- text: Add a brand-new award to the loyalty award catalog.
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipAwards/{membershipAwardsId}'].put
update:
x-apievangelist-phrasing:
intent: Change an existing membership award
effect: write
questions:
- Can I edit the details of a membership award that already exists?
- What's the way to update an award's configuration after it's been created?
instructions:
- text: Update existing membership award {membershipAwardsId} with {membershipAwards}.
slots:
membershipAwardsId: path.membershipAwardsId
membershipAwards: requestBody.membershipAwards
- text: Change the settings on award {membershipAwardsId}.
slots:
membershipAwardsId: path.membershipAwardsId
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipAwards/{membershipAwardsId}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a membership award
effect: destructive
questions:
- Can I remove a loyalty award we no longer offer?
- What happens if I delete an award tied to a membership type?
instructions:
- text: Delete membership award {membershipAwardsId}.
slots:
membershipAwardsId: path.membershipAwardsId
- text: Remove award {membershipAwardsId} from membership type {membershipType}.
slots:
membershipAwardsId: path.membershipAwardsId
membershipType: query.membershipType
method: generated
generated: '2026-09-26'
- target: $.paths['/upsert/membershipAwards/{membershipAwardsId}'].put
update:
x-apievangelist-phrasing:
intent: Create or update a membership award by id
effect: write
questions:
- Is there one call that creates a membership award if missing or updates it if it exists?
- Can I upsert an award without checking first whether it's already there?
instructions:
- text: Upsert membership award {membershipAwardsId} with {membershipAwards}.
slots:
membershipAwardsId: path.membershipAwardsId
membershipAwards: requestBody.membershipAwards
- text: Create or overwrite award {membershipAwardsId}.
slots:
membershipAwardsId: path.membershipAwardsId
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipBenefitPrograms'].get
update:
x-apievangelist-phrasing:
intent: List benefit programs of a membership type
effect: read
questions:
- Which benefit programs are set up for a given membership type?
- Can I find benefit programs that start at a minimum membership level?
- What limits the date range when searching benefit programs?
instructions:
- text: List benefit programs for membership type {membershipType}.
slots:
membershipType: query.membershipType
- text: Show benefit program {code} active between {start} and {end}.
slots:
code: query.code
start: query.start
end: query.end
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipBenefitPrograms'].post
update:
x-apievangelist-phrasing:
intent: Create a membership benefit program
effect: write
questions:
- How do I set up a new benefit program for a membership type?
- Why can't I configure a benefit program on a membership type that is externally controlled?
instructions:
- text: Create benefit programs {membershipBenefitPrograms}.
slots:
membershipBenefitPrograms: requestBody.membershipBenefitPrograms
- text: Add a new benefit program to our loyalty membership type.
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipBenefitPrograms/{membershipBenefitProgramsId}'].put
update:
x-apievangelist-phrasing:
intent: Change an existing benefit program
effect: write
questions:
- Can I modify the rules of a benefit program that already exists?
- What's needed to edit an existing membership benefit program?
instructions:
- text: Update benefit program {membershipBenefitProgramsId} with {membershipBenefitPrograms}.
slots:
membershipBenefitProgramsId: path.membershipBenefitProgramsId
membershipBenefitPrograms: requestBody.membershipBenefitPrograms
- text: Change the settings of existing benefit program {membershipBenefitProgramsId}.
slots:
membershipBenefitProgramsId: path.membershipBenefitProgramsId
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipBenefitPrograms/{membershipBenefitProgramsId}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a membership benefit program
effect: destructive
questions:
- Can I remove a benefit program we've retired?
- Does deleting a benefit program need the membership type too?
instructions:
- text: Delete benefit program {membershipBenefitProgramsId}.
slots:
membershipBenefitProgramsId: path.membershipBenefitProgramsId
- text: Remove benefit program {membershipBenefitProgramsId} from membership type {membershipType}.
slots:
membershipBenefitProgramsId: path.membershipBenefitProgramsId
membershipType: query.membershipType
method: generated
generated: '2026-09-26'
- target: $.paths['/upsert/membershipBenefitPrograms/{membershipBenefitProgramsId}'].put
update:
x-apievangelist-phrasing:
intent: Create or update a benefit program by id
effect: write
questions:
- Is there an upsert for benefit programs that creates or modifies in one step?
- Can I push a benefit program definition whether or not it exists yet?
instructions:
- text: Upsert benefit program {membershipBenefitProgramsId} with {membershipBenefitPrograms}.
slots:
membershipBenefitProgramsId: path.membershipBenefitProgramsId
membershipBenefitPrograms: requestBody.membershipBenefitPrograms
- text: Create or overwrite benefit program {membershipBenefitProgramsId}.
slots:
membershipBenefitProgramsId: path.membershipBenefitProgramsId
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipClasses'].get
update:
x-apievangelist-phrasing:
intent: List membership classes
effect: read
questions:
- What membership classes are configured?
- Can I search membership classes by code or a wildcard description, including inactive ones?
instructions:
- text: List all membership classes.
- text: Find membership classes with codes {codes}.
slots:
codes: query.codes
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipClasses'].post
update:
x-apievangelist-phrasing:
intent: Create a membership class
effect: write
questions:
- How do I add a new membership class to group membership types?
- Can I create more than one membership class at once?
instructions:
- text: Create membership classes {membershipClasses}.
slots:
membershipClasses: requestBody.membershipClasses
- text: Add a new membership class.
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipClasses/{membershipClassId}'].put
update:
x-apievangelist-phrasing:
intent: Change a membership class
effect: write
questions:
- Can I rename or edit an existing membership class?
- What's involved in updating a membership class definition?
instructions:
- text: Update membership class {membershipClassId} with {membershipClasses}.
slots:
membershipClassId: path.membershipClassId
membershipClasses: requestBody.membershipClasses
- text: Change the description of membership class {membershipClassId}.
slots:
membershipClassId: path.membershipClassId
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipClasses/{membershipClassId}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a membership class
effect: destructive
questions:
- Can I delete a membership class we no longer use?
- Is removing a membership class permanent?
instructions:
- text: Delete membership class {membershipClassId}.
slots:
membershipClassId: path.membershipClassId
- text: Remove class {membershipClassId} from the membership configuration.
slots:
membershipClassId: path.membershipClassId
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipEnrollmentGroups'].get
update:
x-apievangelist-phrasing:
intent: List membership enrollment groups
effect: read
questions:
- Which enrollment groups exist for signing up members?
- Can I page through enrollment groups, and what's the maximum page size?
instructions:
- text: List membership enrollment groups, {limit} at a time.
slots:
limit: query.limit
- text: Find enrollment groups with codes {enrollmentCodes}.
slots:
enrollmentCodes: query.enrollmentCodes
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipEnrollmentGroups'].post
update:
x-apievangelist-phrasing:
intent: Create a membership enrollment group
effect: write
questions:
- How do I set up a new enrollment group for membership sign-ups?
- Can I add several enrollment groups in one call?
instructions:
- text: Create enrollment groups {membershipEnrollmentGroups}.
slots:
membershipEnrollmentGroups: requestBody.membershipEnrollmentGroups
- text: Add a new membership enrollment group.
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipEnrollmentGroups/{membershipEnrollmentGroupsId}'].put
update:
x-apievangelist-phrasing:
intent: Change a membership enrollment group
effect: write
questions:
- Can I edit an enrollment group after it's been created?
- What do I send to update an existing enrollment group?
instructions:
- text: Update enrollment group {membershipEnrollmentGroupsId} with {membershipEnrollmentGroups}.
slots:
membershipEnrollmentGroupsId: path.membershipEnrollmentGroupsId
membershipEnrollmentGroups: requestBody.membershipEnrollmentGroups
- text: Change enrollment group {membershipEnrollmentGroupsId}.
slots:
membershipEnrollmentGroupsId: path.membershipEnrollmentGroupsId
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipEnrollmentGroups/{membershipEnrollmentGroupsId}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a membership enrollment group
effect: destructive
questions:
- Can I remove an enrollment group that's obsolete?
- Is there a way to delete one membership enrollment group?
instructions:
- text: Delete enrollment group {membershipEnrollmentGroupsId}.
slots:
membershipEnrollmentGroupsId: path.membershipEnrollmentGroupsId
- text: Remove the enrollment group {membershipEnrollmentGroupsId}.
slots:
membershipEnrollmentGroupsId: path.membershipEnrollmentGroupsId
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipFolioTexts'].post
update:
x-apievangelist-phrasing:
intent: Set membership folio texts
effect: write
questions:
- How do I set the text that prints on guest folios for a membership?
- Can I configure membership folio text messages?
instructions:
- text: Set membership folio texts to {membershipFolioTexts}.
slots:
membershipFolioTexts: requestBody.membershipFolioTexts
- text: Save the folio text shown for our loyalty members.
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipLevelRules'].get
update:
x-apievangelist-phrasing:
intent: List membership level rules
effect: read
questions:
- What rules decide when a member moves between levels?
- Can I look up level rules for one membership type and level?
instructions:
- text: List level rules for membership type {membershipType} at level {membershipLevel}.
slots:
membershipType: query.membershipType
membershipLevel: query.membershipLevel
- text: Show membership level rule number {ruleNo}.
slots:
ruleNo: query.ruleNo
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipLevelRules'].post
update:
x-apievangelist-phrasing:
intent: Create membership level rules
effect: write
questions:
- How do I add a new rule for upgrading or downgrading member levels?
- Can I define level rules for a membership tier?
instructions:
- text: Create membership level rules {membershipLevelRules}.
slots:
membershipLevelRules: requestBody.membershipLevelRules
- text: Add a new tier qualification rule for a membership level.
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipLevelRules/{membershipLevelRulesID}'].put
update:
x-apievangelist-phrasing:
intent: Change membership level rules
effect: write
questions:
- Can I edit an existing membership level rule's thresholds?
- What's the process for updating a level rule that's already defined?
instructions:
- text: Update level rule {membershipLevelRulesID} with {membershipLevelRules}.
slots:
membershipLevelRulesID: path.membershipLevelRulesID
membershipLevelRules: requestBody.membershipLevelRules
- text: Change membership level rule {membershipLevelRulesID}.
slots:
membershipLevelRulesID: path.membershipLevelRulesID
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipLevels'].get
update:
x-apievangelist-phrasing:
intent: List levels of a membership type
effect: read
questions:
- What tiers like silver or gold exist for a membership type?
- Can I include folio texts and inactive levels when listing membership levels?
instructions:
- text: List membership levels for membership type {membershipTypeCode}.
slots:
membershipTypeCode: query.membershipTypeCode
- text: Show levels of {membershipTypeCode} used at hotels {hotelIds}.
slots:
membershipTypeCode: query.membershipTypeCode
hotelIds: query.hotelIds
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipLevels'].post
update:
x-apievangelist-phrasing:
intent: Create membership levels
effect: write
questions:
- How do I add a new tier to a loyalty membership type?
- Can I create several membership levels together?
instructions:
- text: Create membership levels {membershipLevels}.
slots:
membershipLevels: requestBody.membershipLevels
- text: Add a new tier level to our membership program.
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipLevels/{membershipLevelsId}'].put
update:
x-apievangelist-phrasing:
intent: Change a membership level
effect: write
questions:
- Can I edit an existing membership tier's settings?
- What's the way to update a level after it's in use?
instructions:
- text: Update membership level {membershipLevelsId} with {membershipLevels}.
slots:
membershipLevelsId: path.membershipLevelsId
membershipLevels: requestBody.membershipLevels
- text: Change tier level {membershipLevelsId}.
slots:
membershipLevelsId: path.membershipLevelsId
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipLevels/{membershipLevelsId}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a membership level
effect: destructive
questions:
- Can I remove a tier from a membership type?
- Does deleting a membership level need the membership type specified?
instructions:
- text: Delete membership level {membershipLevelsId}.
slots:
membershipLevelsId: path.membershipLevelsId
- text: Remove level {membershipLevelsId} from membership type {type}.
slots:
membershipLevelsId: path.membershipLevelsId
type: query.type
method: generated
generated: '2026-09-26'
- target: $.paths['/upsert/membershipLevels/{membershipLevelsId}'].put
update:
x-apievangelist-phrasing:
intent: Create or update a membership level by id
effect: write
questions:
- Is there an upsert for membership levels so I don't need separate create and change calls?
- Can I sync a tier level definition whether or not it exists?
instructions:
- text: Upsert membership level {membershipLevelsId} with {membershipLevels}.
slots:
membershipLevelsId: path.membershipLevelsId
membershipLevels: requestBody.membershipLevels
- text: Create or overwrite tier level {membershipLevelsId}.
slots:
membershipLevelsId: path.membershipLevelsId
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipMarketGroups'].get
update:
x-apievangelist-phrasing:
intent: List membership market groups
effect: read
questions:
- Which membership market groups are configured?
- Can I search market groups by wildcard description?
instructions:
- text: List membership market groups.
- text: Find membership market groups with codes {codes}.
slots:
codes: query.codes
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipMarketGroups'].post
update:
x-apievangelist-phrasing:
intent: Create membership market groups
effect: write
questions:
- How do I add a market group for membership point calculations?
- Can I create multiple membership market groups at once?
instructions:
- text: Create membership market groups {membershipMarketGroups}.
slots:
membershipMarketGroups: requestBody.membershipMarketGroups
- text: Add a new membership market group.
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipMarketGroups/{membershipMarketGroupId}'].put
update:
x-apievangelist-phrasing:
intent: Change a membership market group
effect: write
questions:
- Can I change which market codes belong to an existing membership market group?
- What do I send to edit a membership market group?
instructions:
- text: Update membership market group {membershipMarketGroupId} with {membershipMarketGroups}.
slots:
membershipMarketGroupId: path.membershipMarketGroupId
membershipMarketGroups: requestBody.membershipMarketGroups
- text: Change market group {membershipMarketGroupId}.
slots:
membershipMarketGroupId: path.membershipMarketGroupId
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipMarketGroups/{membershipMarketGroupId}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a membership market group
effect: destructive
questions:
- Can I delete a membership market group?
- Is it possible to remove a market group we no longer use for membership?
instructions:
- text: Delete membership market group {membershipMarketGroupId}.
slots:
membershipMarketGroupId: path.membershipMarketGroupId
- text: Remove market group {membershipMarketGroupId} from membership setup.
slots:
membershipMarketGroupId: path.membershipMarketGroupId
method: generated
generated: '2026-09-26'
- target: $.paths['/upsert/membershipMarketGroups/{membershipMarketGroupId}'].put
update:
x-apievangelist-phrasing:
intent: Create or update a membership market group
effect: write
questions:
- Is there an upsert for membership market groups?
- Can I create-or-change a market group by id in one request?
instructions:
- text: Upsert membership market group {membershipMarketGroupId} with {membershipMarketGroups}.
slots:
membershipMarketGroupId: path.membershipMarketGroupId
membershipMarketGroups: requestBody.membershipMarketGroups
- text: Create or overwrite market group {membershipMarketGroupId}.
slots:
membershipMarketGroupId: path.membershipMarketGroupId
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipOriginGroups'].get
update:
x-apievangelist-phrasing:
intent: List membership origin groups
effect: read
questions:
- What membership origin groups do we have?
- Can I filter origin groups by code or description?
instructions:
- text: List membership origin groups.
- text: Find membership origin groups with codes {codes}.
slots:
codes: query.codes
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipOriginGroups'].post
update:
x-apievangelist-phrasing:
intent: Create a membership origin group
effect: write
questions:
- How do I create a membership origin group?
- Can I group booking origin codes for membership purposes?
instructions:
- text: Create membership origin group {membershipOriginGroup}.
slots:
membershipOriginGroup: requestBody.membershipOriginGroup
- text: Add a new membership origin group.
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipOriginGroups/{membershipOriginGroupId}'].put
update:
x-apievangelist-phrasing:
intent: Change a membership origin group
effect: write
questions:
- Can I edit an existing membership origin group?
- What's needed to update the codes in an origin group?
instructions:
- text: Update membership origin group {membershipOriginGroupId} with {membershipOriginGroup}.
slots:
membershipOriginGroupId: path.membershipOriginGroupId
membershipOriginGroup: requestBody.membershipOriginGroup
- text: Change origin group {membershipOriginGroupId}.
slots:
membershipOriginGroupId: path.membershipOriginGroupId
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipOriginGroups/{membershipOriginGroupId}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a membership origin group
effect: destructive
questions:
- Can I delete a membership origin group?
- Is there a way to remove an unused origin group?
instructions:
- text: Delete membership origin group {membershipOriginGroupId}.
slots:
membershipOriginGroupId: path.membershipOriginGroupId
- text: Remove origin group {membershipOriginGroupId}.
slots:
membershipOriginGroupId: path.membershipOriginGroupId
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipPropertyGroups'].get
update:
x-apievangelist-phrasing:
intent: List membership property groups
effect: read
questions:
- Which groups of hotels are set up for membership rules?
- Can I list property groups including inactive ones?
instructions:
- text: List membership property groups.
- text: Find membership property groups with codes {codes}.
slots:
codes: query.codes
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipPropertyGroups'].post
update:
x-apievangelist-phrasing:
intent: Create membership property groups
effect: write
questions:
- How do I group several hotels together for membership purposes?
- Can I create more than one membership property group per call?
instructions:
- text: Create membership property groups {membershipPropertyGroups}.
slots:
membershipPropertyGroups: requestBody.membershipPropertyGroups
- text: Add a new group of properties for membership.
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipPropertyGroups/{membershipPropertyGroupsId}'].put
update:
x-apievangelist-phrasing:
intent: Change a membership property group
effect: write
questions:
- Can I add or remove hotels in an existing membership property group?
- What do I send to edit a property group?
instructions:
- text: Update membership property group {membershipPropertyGroupsId} with {membershipPropertyGroups}.
slots:
membershipPropertyGroupsId: path.membershipPropertyGroupsId
membershipPropertyGroups: requestBody.membershipPropertyGroups
- text: Change property group {membershipPropertyGroupsId}.
slots:
membershipPropertyGroupsId: path.membershipPropertyGroupsId
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipPropertyGroups/{membershipPropertyGroupsId}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a membership property group
effect: destructive
questions:
- Can I delete a membership property group?
- Is removing a group of hotels from membership config allowed?
instructions:
- text: Delete membership property group {membershipPropertyGroupsId}.
slots:
membershipPropertyGroupsId: path.membershipPropertyGroupsId
- text: Remove property group {membershipPropertyGroupsId}.
slots:
membershipPropertyGroupsId: path.membershipPropertyGroupsId
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipRateGroups'].get
update:
x-apievangelist-phrasing:
intent: List membership rate groups
effect: read
questions:
- Which membership rate groups are configured?
- Can I search rate groups by code with a wildcard?
instructions:
- text: List membership rate groups.
- text: Find membership rate groups with codes {codes}.
slots:
codes: query.codes
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipRateGroups'].post
update:
x-apievangelist-phrasing:
intent: Create membership rate groups
effect: write
questions:
- How do I group rate codes for membership point earning?
- Can I create several membership rate groups at once?
instructions:
- text: Create membership rate groups {membershipRateGroups}.
slots:
membershipRateGroups: requestBody.membershipRateGroups
- text: Add a new membership rate group.
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipRateGroups/{membershipRateGroupId}'].put
update:
x-apievangelist-phrasing:
intent: Change a membership rate group
effect: write
questions:
- Can I edit which rates are in an existing membership rate group?
- What's needed to update a rate group?
instructions:
- text: Update membership rate group {membershipRateGroupId} with {membershipRateGroups}.
slots:
membershipRateGroupId: path.membershipRateGroupId
membershipRateGroups: requestBody.membershipRateGroups
- text: Change rate group {membershipRateGroupId}.
slots:
membershipRateGroupId: path.membershipRateGroupId
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipRateGroups/{membershipRateGroupId}'].delete
update:
x-apievangelist-phrasing:
intent: Delete a membership rate group
effect: destructive
questions:
- Can I delete a membership rate group?
- Is there a way to remove a rate group we stopped using?
instructions:
- text: Delete membership rate group {membershipRateGroupId}.
slots:
membershipRateGroupId: path.membershipRateGroupId
- text: Remove rate group {membershipRateGroupId}.
slots:
membershipRateGroupId: path.membershipRateGroupId
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipRates'].get
update:
x-apievangelist-phrasing:
intent: List membership rates
effect: read
questions:
- Which rate plans are linked to membership types at our hotels?
- Can I filter membership rates by hotel, membership type or rate plan code?
instructions:
- text: List membership rates for hotels {hotelIds}.
slots:
hotelIds: query.hotelIds
- text: Show membership rates for rate plan codes {ratePlanCodes} and membership types {membershipTypes}.
slots:
ratePlanCodes: query.ratePlanCodes
membershipTypes: query.membershipTypes
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipRates'].post
update:
x-apievangelist-phrasing:
intent: Create membership rates
effect: write
questions:
- How do I link a rate plan to a membership type?
- Can I create multiple membership rates at once?
instructions:
- text: Create membership rates {membershipRates}.
slots:
membershipRates: requestBody.membershipRates
- text: Add a new membership rate.
method: generated
generated: '2026-09-26'
- target: $.paths['/membershipRates/{membershipRatesId}'].put
update:
x-apievangelist-phrasing:
intent: Change a membership rate
effect: write
questions:
- Can I edit an existing membership rate setup?
- What do I send to update a membership rate?
instructions:
- text: Update membership rate {membershipRatesId} with {membershipRates}.
slots:
membershipRatesId: path.membershipRatesId
membershipRates: requestBody.membershipRates
- text: Change membership rate {membershipRatesId}.
slots:
membershipRatesId: path.membershipRatesId
method: generated
generated: '2026-09-26'
# --- truncated at 32 KB (67 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/oracle-hospitality/refs/heads/main/overlays/oracle-hospitality-membershipconfig-api-phrasing-overlay.yaml