# 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 API version: 1.0.0 extends: openapi/oracle-hospitality-leisuremanagement-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: 9 - target: $.paths['/hotels/{hotelId}/activityBookings'].get update: x-apievangelist-phrasing: intent: Look up a guest's activity bookings effect: read questions: - How do I see which spa, golf or leisure activities a guest has booked at the hotel? - Can I look up activity bookings by reservation or activity ID as well as by profile? instructions: - text: Look up activity bookings for profile {profile} at hotel {hotel}. slots: profile: query.profileIds hotel: path.hotelId - text: Find activity bookings for profile {profile} on reservation {reservation} at hotel {hotel}. slots: profile: query.profileIds reservation: query.reservationIds hotel: path.hotelId method: generated generated: '2026-09-26' - target: $.paths['/hotels/{hotelId}/profiles/{profileId}/activityBookings'].put update: x-apievangelist-phrasing: intent: Change a profile's activity booking effect: write questions: - How does an external activity scheduler update a booking held against a guest profile rather than a reservation? - Can I change a leisure activity booking for someone who has no reservation? instructions: - text: Update the activity booking for profile {profile} at hotel {hotel}. slots: profile: path.profileId hotel: path.hotelId - text: Change profile {profile}'s activity booking at hotel {hotel} to {booking}. slots: profile: path.profileId hotel: path.hotelId booking: requestBody.activityBooking method: generated generated: '2026-09-26' - target: $.paths['/hotels/{hotelId}/profiles/{profileId}/activityBookings'].post update: x-apievangelist-phrasing: intent: Create an activity booking for a profile effect: write questions: - How do I record a new leisure activity booking against a guest profile with no reservation? - Can an activity scheduler create bookings for non-staying guests by profile? instructions: - text: Create activity booking {booking} for profile {profile} at hotel {hotel}. slots: booking: requestBody.activityBooking profile: path.profileId hotel: path.hotelId - text: Book a new activity for profile {profile} at hotel {hotel}. slots: profile: path.profileId hotel: path.hotelId method: generated generated: '2026-09-26' - target: $.paths['/hotels/{hotelId}/profiles/{profileId}/activityBookings'].delete update: x-apievangelist-phrasing: intent: Cancel a profile's activity booking effect: destructive questions: - How do I cancel a leisure activity booked against a guest profile? - What activity ID and type do I need to cancel a profile-level activity booking? instructions: - text: Cancel activity {activity} of type {activity_type} for profile {profile} at hotel {hotel}. slots: activity: query.activityId activity_type: query.activityIdType profile: path.profileId hotel: path.hotelId - text: Remove profile {profile}'s booking for activity {activity} ({activity_type}) at hotel {hotel}. slots: profile: path.profileId activity: query.activityId activity_type: query.activityIdType hotel: path.hotelId method: generated generated: '2026-09-26' - target: $.paths['/hotels/{hotelId}/reservations/{reservationId}/activityBookings'].put update: x-apievangelist-phrasing: intent: Change an activity booking on a reservation effect: write questions: - How does an external activity scheduler update an activity booked on a hotel reservation? - Can I change the time of a spa booking attached to a guest's stay? instructions: - text: Update the activity booking on reservation {reservation} at hotel {hotel}. slots: reservation: path.reservationId hotel: path.hotelId - text: Change reservation {reservation}'s activity booking at hotel {hotel} to {booking}. slots: reservation: path.reservationId hotel: path.hotelId booking: requestBody.activityBooking method: generated generated: '2026-09-26' - target: $.paths['/hotels/{hotelId}/reservations/{reservationId}/activityBookings'].post update: x-apievangelist-phrasing: intent: Create an activity booking on a reservation effect: write questions: - How do I add a leisure activity booking to an in-house guest's reservation? - Can an activity scheduler push a new booking onto a stay in OPERA Cloud? instructions: - text: Create activity booking {booking} on reservation {reservation} at hotel {hotel}. slots: booking: requestBody.activityBooking reservation: path.reservationId hotel: path.hotelId - text: Book an activity for reservation {reservation} at hotel {hotel}. slots: reservation: path.reservationId hotel: path.hotelId method: generated generated: '2026-09-26' - target: $.paths['/hotels/{hotelId}/reservations/{reservationId}/activityBookings'].delete update: x-apievangelist-phrasing: intent: Cancel an activity booking on a reservation effect: destructive questions: - How do I cancel an activity booked on a guest's reservation? - Which identifiers are required to cancel a reservation's activity booking? instructions: - text: Cancel activity {activity} of type {activity_type} on reservation {reservation} at hotel {hotel}. slots: activity: query.activityId activity_type: query.activityIdType reservation: path.reservationId hotel: path.hotelId - text: Drop reservation {reservation}'s booking for activity {activity} ({activity_type}) at hotel {hotel}. slots: reservation: path.reservationId activity: query.activityId activity_type: query.activityIdType hotel: path.hotelId method: generated generated: '2026-09-26' - target: $.paths['/hotels/{hotelId}/reservations/{reservationId}/locationNotifications'].post update: x-apievangelist-phrasing: intent: Set or clear a guest location notification effect: write questions: - How do I tell the front desk where a guest can be found, for example at the spa? - Can I set or clear a location notification on a reservation? instructions: - text: Set a location notification on reservation {reservation} at hotel {hotel} saying {location}. slots: reservation: path.reservationId hotel: path.hotelId location: requestBody.locationText - text: Mark the location notification on reservation {reservation} at hotel {hotel} as {status}. slots: reservation: path.reservationId hotel: path.hotelId status: requestBody.locationNotificationStatus method: generated generated: '2026-09-26' - target: $.paths['/services/leisureManagement/status'].get update: x-apievangelist-phrasing: intent: Check the leisure management service status effect: read questions: - Is the OPERA Cloud leisure management service available? - How do I health-check the activity booking service? instructions: - text: Ping the leisure management service. - text: Check leisure management availability for hotel {hotel}. slots: hotel: header.x-hotelid method: generated generated: '2026-09-26'