Oracle Hospitality · OpenAPI Overlay 1.0.0

API Evangelist conversational phrasing for OPERA Cloud Leisure Management Leisure Management Config API

18 actions 18 updates phrasing extends openapi/oracle-hospitality-leisuremanagementconfig-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.
View Overlay File View on GitHub Overlay Specification

What the actions change

x-apievangelist-phrasing

Targets 18 · first 16 shown; the file carries all of them

$.info
$.paths['/activityLocations'].get
$.paths['/activityLocations'].post
$.paths['/activityLocations/{activityLocationsId}'].put
$.paths['/activityLocations/{activityLocationsId}'].delete
$.paths['/activityLocations/{activityLocationsId}/copy'].put
$.paths['/activityStatusCodes'].get
$.paths['/activityStatusCodes'].post
$.paths['/activityStatusCodes/{activityStatusCodesId}'].put
$.paths['/activityStatusCodes/{activityStatusCodesId}'].delete
$.paths['/activityTypes'].get
$.paths['/activityTypes'].post
$.paths['/activityTypes/{activityTypesId}'].put
$.paths['/activityTypes/{activityTypesId}'].delete
$.paths['/activityTypes/{activityTypesId}/copy'].put
$.paths['/upsert/activityLocations/{activityLocationsId}'].put

OpenAPI Overlay

Raw ↑
# 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'