# 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 Leisure Management Leisure Management Config API version: 1.0.0 extends: openapi/oracle-hospitality-leisuremanagementconfig-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: 17 - target: $.paths['/activityLocations'].get update: x-apievangelist-phrasing: intent: Look up activity locations for hotels effect: read questions: - Where can guests do activities at my resort — which activity locations are configured? - Can I filter activity locations by location code across several properties? instructions: - text: List the activity locations configured at hotels {hotelIds}. slots: hotelIds: query.hotelIds - text: Look up activity location codes {criteriaCodes} at {hotelIds}. slots: criteriaCodes: query.criteriaCodes hotelIds: query.hotelIds method: generated generated: '2026-09-26' - target: $.paths['/activityLocations'].post update: x-apievangelist-phrasing: intent: Create an activity location effect: write questions: - How do I add a new place like the spa or tennis courts where leisure activities happen? - What's required to set up a brand-new activity location code? instructions: - text: Create activity location {activityLocations}. slots: activityLocations: requestBody.activityLocations - text: Add a new activity location for the pool deck at hotel {hotelId}. slots: hotelId: header.x-hotelid method: generated generated: '2026-09-26' - target: $.paths['/activityLocations/{activityLocationsId}'].put update: x-apievangelist-phrasing: intent: Change an existing activity location effect: write questions: - How do I rename or edit an activity location that already exists? - Can I update the details of one activity location by its id? instructions: - text: Update activity location {activityLocationsId} with the new description. slots: activityLocationsId: path.activityLocationsId - text: Change activity location {activityLocationsId} to {activityLocations}. slots: activityLocationsId: path.activityLocationsId activityLocations: requestBody.activityLocations method: generated generated: '2026-09-26' - target: $.paths['/activityLocations/{activityLocationsId}'].delete update: x-apievangelist-phrasing: intent: Remove an activity location effect: destructive questions: - How do I delete an activity location we closed? - Can I remove one activity location from specific hotels only? instructions: - text: Delete activity location {activityLocationsId} from hotels {hotelIds}. slots: activityLocationsId: path.activityLocationsId hotelIds: query.hotelIds - text: Remove the closed activity location {activityLocationsId} at {hotelIds}. slots: activityLocationsId: path.activityLocationsId hotelIds: query.hotelIds method: generated generated: '2026-09-26' - target: $.paths['/activityLocations/{activityLocationsId}/copy'].put update: x-apievangelist-phrasing: intent: Copy an activity location to other properties effect: write questions: - How do I copy an activity location from one property to my other hotels? - Can I replicate activity location setup across properties instead of re-entering it? instructions: - text: Copy activity location {activityLocationsId} to the target properties. slots: activityLocationsId: path.activityLocationsId - text: Replicate activity location {activityLocationsId} using copy instructions {copyInstructions}. slots: activityLocationsId: path.activityLocationsId copyInstructions: requestBody.copyInstructions method: generated generated: '2026-09-26' - target: $.paths['/activityStatusCodes'].get update: x-apievangelist-phrasing: intent: List activity status codes effect: read questions: - Which status codes can a leisure activity booking have at my hotel? - Can I filter activity status codes by application? instructions: - text: List the activity status codes for hotels {hotelIds}. slots: hotelIds: query.hotelIds - text: Get activity status codes for application {applicationCodes} at {hotelIds}. slots: applicationCodes: query.applicationCodes hotelIds: query.hotelIds method: generated generated: '2026-09-26' - target: $.paths['/activityStatusCodes'].post update: x-apievangelist-phrasing: intent: Create an activity status code effect: write questions: - How do I add a new status like 'waitlisted' for leisure activities? - What do I send to define a new activity status code? instructions: - text: Create activity status code {activityStatusCodes}. slots: activityStatusCodes: requestBody.activityStatusCodes - text: Add a new activity status code for no-shows at hotel {hotelId}. slots: hotelId: header.x-hotelid method: generated generated: '2026-09-26' - target: $.paths['/activityStatusCodes/{activityStatusCodesId}'].put update: x-apievangelist-phrasing: intent: Change an activity status code effect: write questions: - How do I edit the description of an existing activity status code? - Can I modify one activity status code by its id? instructions: - text: Update activity status code {activityStatusCodesId}. slots: activityStatusCodesId: path.activityStatusCodesId - text: Change activity status code {activityStatusCodesId} to {activityStatusCodes}. slots: activityStatusCodesId: path.activityStatusCodesId activityStatusCodes: requestBody.activityStatusCodes method: generated generated: '2026-09-26' - target: $.paths['/activityStatusCodes/{activityStatusCodesId}'].delete update: x-apievangelist-phrasing: intent: Remove an activity status code effect: destructive questions: - How do I delete an activity status code we don't use anymore? - Can I remove an activity status code from selected hotels? instructions: - text: Delete activity status code {activityStatusCodesId} at hotels {hotelIds}. slots: activityStatusCodesId: path.activityStatusCodesId hotelIds: query.hotelIds - text: Remove the retired activity status {activityStatusCodesId} from {hotelIds}. slots: activityStatusCodesId: path.activityStatusCodesId hotelIds: query.hotelIds method: generated generated: '2026-09-26' - target: $.paths['/activityTypes'].get update: x-apievangelist-phrasing: intent: Fetch activity types effect: read questions: - What kinds of leisure activities — golf, spa, dining — are configured as activity types? - Can I look up specific activity type codes for a property? instructions: - text: List the activity types at hotels {hotelIds}. slots: hotelIds: query.hotelIds - text: Fetch activity types {typeCodes} for {hotelIds}. slots: typeCodes: query.typeCodes hotelIds: query.hotelIds method: generated generated: '2026-09-26' - target: $.paths['/activityTypes'].post update: x-apievangelist-phrasing: intent: Create an activity type effect: write questions: - How do I add a new category of leisure activity, like yoga classes? - What's needed to create a new activity type? instructions: - text: Create activity type {activityTypes}. slots: activityTypes: requestBody.activityTypes - text: Add a new activity type for guided tours at hotel {hotelId}. slots: hotelId: header.x-hotelid method: generated generated: '2026-09-26' - target: $.paths['/activityTypes/{activityTypesId}'].put update: x-apievangelist-phrasing: intent: Change an activity type effect: write questions: - How do I edit an activity type that already exists? - Can I change the description of one activity type by id? instructions: - text: Update activity type {activityTypesId}. slots: activityTypesId: path.activityTypesId - text: Change activity type {activityTypesId} to {activityTypes}. slots: activityTypesId: path.activityTypesId activityTypes: requestBody.activityTypes method: generated generated: '2026-09-26' - target: $.paths['/activityTypes/{activityTypesId}'].delete update: x-apievangelist-phrasing: intent: Remove an activity type effect: destructive questions: - How do I delete an activity type we no longer offer? - Can I remove an activity type from only some of my properties? instructions: - text: Delete activity type {activityTypesId} at hotels {hotelIds}. slots: activityTypesId: path.activityTypesId hotelIds: query.hotelIds - text: Remove the discontinued activity type {activityTypesId} from {hotelIds}. slots: activityTypesId: path.activityTypesId hotelIds: query.hotelIds method: generated generated: '2026-09-26' - target: $.paths['/activityTypes/{activityTypesId}/copy'].put update: x-apievangelist-phrasing: intent: Copy activity types to other properties effect: write questions: - How do I copy existing activity types from a source property to target properties? - Can I roll out one hotel's activity types to the rest of the chain? instructions: - text: Copy activity type {activityTypesId} to the target properties. slots: activityTypesId: path.activityTypesId - text: Replicate activity type {activityTypesId} with copy instructions {copyInstructions}. slots: activityTypesId: path.activityTypesId copyInstructions: requestBody.copyInstructions method: generated generated: '2026-09-26' - target: $.paths['/upsert/activityLocations/{activityLocationsId}'].put update: x-apievangelist-phrasing: intent: Create or update an activity location effect: write questions: - Is there an upsert for activity locations so I don't have to check if one exists first? - Can I create-or-change an activity location in a single call? instructions: - text: Upsert activity location {activityLocationsId}, creating it if missing. slots: activityLocationsId: path.activityLocationsId - text: Create or change activity location {activityLocationsId} as {activityLocations}. slots: activityLocationsId: path.activityLocationsId activityLocations: requestBody.activityLocations method: generated generated: '2026-09-26' - target: $.paths['/upsert/activityStatusCodes/{activityStatusCodesId}'].put update: x-apievangelist-phrasing: intent: Create or update an activity status code effect: write questions: - Can I upsert an activity status code whether or not it already exists? - Is there a create-or-change call for activity status codes? instructions: - text: Upsert activity status code {activityStatusCodesId}. slots: activityStatusCodesId: path.activityStatusCodesId - text: Create or change activity status code {activityStatusCodesId} as {activityStatusCodes}. slots: activityStatusCodesId: path.activityStatusCodesId activityStatusCodes: requestBody.activityStatusCodes method: generated generated: '2026-09-26' - target: $.paths['/upsert/activityTypes/{activityTypesId}'].put update: x-apievangelist-phrasing: intent: Create or update an activity type effect: write questions: - Can I upsert an activity type so it's created if new and updated if it exists? - Is there a single create-or-change call for activity types? instructions: - text: Upsert activity type {activityTypesId}. slots: activityTypesId: path.activityTypesId - text: Create or change activity type {activityTypesId} as {activityTypes}. slots: activityTypesId: path.activityTypesId activityTypes: requestBody.activityTypes method: generated generated: '2026-09-26'