Oracle Hospitality Leisure Management API

The Leisure Management module offers a set of APIs to manage the activities for a guest like spa, golf, tours etc. The external system can create, change, cancel activities and send these updates to OPERA Cloud; either attached the activity to the OPERA Cloud Reservation or Profile.

Operations 9

GET /hotels/{hotelId}/activityBookings Send a response to Look-up of Activity Bookings #
POST /hotels/{hotelId}/profiles/{profileId}/activityBookings Send a response to Creation of Activity Booking #
PUT /hotels/{hotelId}/profiles/{profileId}/activityBookings Send a response to Change in Activity Booking #
DELETE /hotels/{hotelId}/profiles/{profileId}/activityBookings Send a response to Cancellation of an Activity Booking #
POST /hotels/{hotelId}/reservations/{reservationId}/activityBookings Send a response to Creation of Activity Booking #
PUT /hotels/{hotelId}/reservations/{reservationId}/activityBookings Send a response to Change in Activity Booking #
DELETE /hotels/{hotelId}/reservations/{reservationId}/activityBookings Send a response to Cancellation of an Activity Booking #
POST /hotels/{hotelId}/reservations/{reservationId}/locationNotifications Send a response to Location Notification #
GET /services/leisureManagement/status Ping the Leisure Management Service #

Work with this as data

Every API here is available over the APIs.io API and to AI agents over MCP.

MCP server

One button, every client — Claude, Cursor, VS Code and the rest.

https://apis.io/mcp

Tools for apis

7 MCP tools reach this
  • find_apisBrowse and filter every API in the catalog.
  • get_api_artifactsOne API's artifacts, grouped by type.
  • get_openapiThe primary OpenAPI for this API.
  • find_similar_apisAPIs that look like this one.
  • apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.
  • resolveTurn a domain, URL or GitHub org into the provider it belongs to.
  • find_cohortsEvery scored population of providers in the catalog.
All 92 tools →

Call it yourself

curl for this page
This API
curl "https://apis.io/api/v1/apis/oracle-hospitality-leisuremanagement-api"
All apis
curl "https://apis.io/api/v1/apis?limit=25"

Discovery needs no key. Ratings and market analysis are Pro.

Get an API key

Free tier, no email required.

A second provider on the same verified email joins the account you already have.

OpenAPI Specification

oracle-hospitality-leisuremanagement-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: OPERA Cloud Leisure Management API
  description: APIs to cater for external Leisure Management functionality integrated with OPERA Cloud.<br /><br /> Compatible with OPERA Cloud release 26.2.0.0.<br /><br /><p> This document and all content within is available under the Universal Permissive License v 1.0 (https://oss.oracle.com/licenses/upl). Copyright (c) 2020, 2026 Oracle and/or its affiliates.</p>
  version: 26.2.0.0
  termsOfService: https://www.oracle.com/legal/terms.html
  contact:
    email: hospitality_apis_ww_grp@oracle.com
  license:
    name: UPL
    url: https://opensource.org/licenses/upl
servers:
- url: /lms/v1
tags:
- name: LeisureManagement
  description: The Leisure Management module offers a set of APIs to manage the activities for a guest like spa, golf, tours etc. The external system can create, change, cancel activities and send these updates to OPERA Cloud; either attached the activity to the OPERA Cloud Reservation or Profile.
paths:
  /hotels/{hotelId}/activityBookings:
    get:
      summary: Send a response to Look-up of Activity Bookings
      description: This API will send a response to Look-up of Activity Bookings. <p><strong>OperationId:</strong>getActivityBookings</p>
      operationId: getActivityBookings
      parameters:
      - name: hotelId
        in: path
        required: true
        description: Unique OPERA Hotel code
        schema:
          type: string
          maxLength: 2000
          minLength: 1
      - name: profileIds
        in: query
        description: A unique identifying value assigned by the creating system. The ID attribute may be used to reference a primary-key value within a database or in a particular implementation.
        required: true
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: profileIdContext
        in: query
        description: Used to identify the source of the identifier (e.g., IATA, ABTA).
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
          default:
          - Opera
      - name: profileIdsType
        in: query
        description: A reference to the type of object defined by the UniqueID element.
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
          default:
          - Profile
      - name: reservationIds
        in: query
        description: A unique identifying value assigned by the creating system. The ID attribute may be used to reference a primary-key value within a database or in a particular implementation.
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: reservationIdContext
        in: query
        description: Used to identify the source of the identifier (e.g., IATA, ABTA).
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
          default:
          - Opera
      - name: reservationIdsType
        in: query
        description: A reference to the type of object defined by the UniqueID element.
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
          default:
          - Reservation
      - name: activityIds
        in: query
        description: A unique identifying value assigned by the creating system. The ID attribute may be used to reference a primary-key value within a database or in a particular implementation.
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: activityIdContext
        in: query
        description: Used to identify the source of the identifier (e.g., IATA, ABTA).
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
      - name: activityIdsType
        in: query
        description: A reference to the type of object defined by the UniqueID element.
        required: false
        style: form
        explode: true
        schema:
          type: array
          items:
            type: string
      - $ref: '#/components/parameters/authKey'
      - $ref: '#/components/parameters/externalData'
      - $ref: '#/components/parameters/x-app-key'
      - $ref: '#/components/parameters/x-request-id'
      - $ref: '#/components/parameters/x-originating-application'
      - $ref: '#/components/parameters/x-hotelid'
      - $ref: '#/components/parameters/x-externalsystemreq'
      - $ref: '#/components/parameters/Accept-Language'
      responses:
        '200':
          headers:
            Content-Language:
              description: Audience language
              x-example: en-GB
              schema:
                type: string
                pattern: '[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*'
          description: Message received on an Activity Lookup.
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/activityBookingsDetails'
        '204':
          description: ActivityBookings not found.
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '405':
          $ref: '#/components/responses/405'
        '406':
          $ref: '#/components/responses/406'
        '413':
          $ref: '#/components/responses/413'
        '414':
          $ref: '#/components/responses/414'
        '415':
          $ref: '#/components/responses/415'
        '500':
          $ref: '#/components/responses/500'
        '502':
          $ref: '#/components/responses/502'
        '503':
          $ref: '#/components/responses/503'
      tags:
      - LeisureManagement
  /hotels/{hotelId}/profiles/{profileId}/activityBookings:
    post:
      summary: Send a response to Creation of Activity Booking
      description: This API will send a response to Creation of Activity Booking. <p><strong>OperationId:</strong>postActivityBooking</p>
      operationId: postActivityBookingForProfile
      parameters:
      - name: profileId
        in: path
        required: true
        description: Unique OPERA Profile ID which is used to find any profile in OPERA.
        schema:
          type: string
          maxLength: 2000
          minLength: 1
      - name: hotelId
        in: path
        required: true
        description: Unique OPERA Hotel code
        schema:
          type: string
          maxLength: 2000
          minLength: 1
      - $ref: '#/components/parameters/authKey'
      - $ref: '#/components/parameters/externalData'
      - $ref: '#/components/parameters/x-app-key'
      - $ref: '#/components/parameters/x-request-id'
      - $ref: '#/components/parameters/x-originating-application'
      - $ref: '#/components/parameters/x-hotelid'
      - $ref: '#/components/parameters/x-externalsystemreq'
      - $ref: '#/components/parameters/Accept-Language'
      responses:
        '201':
          headers:
            Content-Language:
              description: Audience language
              x-example: en-GB
              schema:
                type: string
                pattern: '[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*'
            Location:
              description: Location of newly created resource
              schema:
                type: string
          description: HATEOAS links which help the consumer to navigate to resources
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/status'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '405':
          $ref: '#/components/responses/405'
        '406':
          $ref: '#/components/responses/406'
        '413':
          $ref: '#/components/responses/413'
        '414':
          $ref: '#/components/responses/414'
        '415':
          $ref: '#/components/responses/415'
        '500':
          $ref: '#/components/responses/500'
        '502':
          $ref: '#/components/responses/502'
        '503':
          $ref: '#/components/responses/503'
      tags:
      - LeisureManagement
      requestBody:
        content:
          application/json;charset=UTF-8:
            schema:
              allOf:
              - $ref: '#/components/schemas/createActivityBooking'
        description: Self-contained Request object that is used when Creating activities.
        required: true
    put:
      summary: Send a response to Change in Activity Booking
      description: This API will send a response to a  Change in Activity Booking request from external Activity Scheduler system. <p><strong>OperationId:</strong>putActivityBookingForProfile</p>
      operationId: putActivityBookingForProfile
      parameters:
      - name: profileId
        in: path
        required: true
        description: Unique OPERA Profile ID which is used to find any profile in OPERA.
        schema:
          type: string
          maxLength: 2000
          minLength: 1
      - name: hotelId
        in: path
        required: true
        description: Unique OPERA Hotel code
        schema:
          type: string
          maxLength: 2000
          minLength: 1
      - $ref: '#/components/parameters/authKey'
      - $ref: '#/components/parameters/externalData'
      - $ref: '#/components/parameters/x-app-key'
      - $ref: '#/components/parameters/x-request-id'
      - $ref: '#/components/parameters/x-originating-application'
      - $ref: '#/components/parameters/x-hotelid'
      - $ref: '#/components/parameters/x-externalsystemreq'
      - $ref: '#/components/parameters/Accept-Language'
      responses:
        '200':
          headers:
            Content-Language:
              description: Audience language
              x-example: en-GB
              schema:
                type: string
                pattern: '[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*'
            Location:
              description: Location of newly created resource
              schema:
                type: string
          description: Self-contained response object that is used when Updating activities.
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/activityBookingModified'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '405':
          $ref: '#/components/responses/405'
        '406':
          $ref: '#/components/responses/406'
        '413':
          $ref: '#/components/responses/413'
        '414':
          $ref: '#/components/responses/414'
        '415':
          $ref: '#/components/responses/415'
        '500':
          $ref: '#/components/responses/500'
        '502':
          $ref: '#/components/responses/502'
        '503':
          $ref: '#/components/responses/503'
      tags:
      - LeisureManagement
      requestBody:
        content:
          application/json;charset=UTF-8:
            schema:
              allOf:
              - $ref: '#/components/schemas/changeActivityBooking'
        description: Self-contained Request object that is used when Updating activities.
        required: true
    delete:
      summary: Send a response to Cancellation of an Activity Booking
      description: This API will send a response to Cancellation of an Activity Booking. <p><strong>OperationId:</strong>deleteActivityBooking</p>
      operationId: deleteActivityBookingForProfile
      parameters:
      - name: profileId
        in: path
        required: true
        description: Unique OPERA Profile ID which is used to find any profile in OPERA.
        schema:
          type: string
          maxLength: 2000
          minLength: 1
      - name: hotelId
        in: path
        required: true
        description: Unique OPERA Hotel code
        schema:
          type: string
          maxLength: 2000
          minLength: 1
      - name: activityId
        in: query
        required: true
        description: A unique identifying value assigned by the creating system. The ID attribute may be used to reference a primary-key value within a database or in a particular implementation.
        schema:
          type: string
      - name: activityIdType
        in: query
        x-example: EXTERNALSYSTEMCODE
        required: true
        description: A reference to the type of object defined by the UniqueID element.
        schema:
          type: string
      - $ref: '#/components/parameters/authKey'
      - $ref: '#/components/parameters/externalData'
      - $ref: '#/components/parameters/x-app-key'
      - $ref: '#/components/parameters/x-request-id'
      - $ref: '#/components/parameters/x-originating-application'
      - $ref: '#/components/parameters/x-hotelid'
      - $ref: '#/components/parameters/x-externalsystemreq'
      - $ref: '#/components/parameters/Accept-Language'
      responses:
        '200':
          headers:
            Content-Language:
              description: Audience language
              x-example: en-GB
              schema:
                type: string
                pattern: '[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*'
            Location:
              description: Location of newly created resource
              schema:
                type: string
          description: HATEOAS links which help the consumer to navigate to resources
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/status'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '405':
          $ref: '#/components/responses/405'
        '406':
          $ref: '#/components/responses/406'
        '413':
          $ref: '#/components/responses/413'
        '414':
          $ref: '#/components/responses/414'
        '415':
          $ref: '#/components/responses/415'
        '500':
          $ref: '#/components/responses/500'
        '502':
          $ref: '#/components/responses/502'
        '503':
          $ref: '#/components/responses/503'
      tags:
      - LeisureManagement
  /hotels/{hotelId}/reservations/{reservationId}/activityBookings:
    post:
      summary: Send a response to Creation of Activity Booking
      description: This API will send a response to Creation of Activity Booking. <p><strong>OperationId:</strong>postActivityBooking</p>
      operationId: postActivityBooking
      parameters:
      - name: reservationId
        in: path
        required: true
        description: Unique OPERA internal Reservation ID which is used to find any reservation in OPERA. This ID is a primary identification of a reservation in OPERA.
        schema:
          type: string
          maxLength: 2000
          minLength: 1
      - name: hotelId
        in: path
        required: true
        description: Unique OPERA Hotel code
        schema:
          type: string
          maxLength: 2000
          minLength: 1
      - $ref: '#/components/parameters/authKey'
      - $ref: '#/components/parameters/externalData'
      - $ref: '#/components/parameters/x-app-key'
      - $ref: '#/components/parameters/x-request-id'
      - $ref: '#/components/parameters/x-originating-application'
      - $ref: '#/components/parameters/x-hotelid'
      - $ref: '#/components/parameters/x-externalsystemreq'
      - $ref: '#/components/parameters/Accept-Language'
      responses:
        '201':
          headers:
            Content-Language:
              description: Audience language
              x-example: en-GB
              schema:
                type: string
                pattern: '[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*'
            Location:
              description: Location of newly created resource
              schema:
                type: string
          description: HATEOAS links which help the consumer to navigate to resources
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/status'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '405':
          $ref: '#/components/responses/405'
        '406':
          $ref: '#/components/responses/406'
        '413':
          $ref: '#/components/responses/413'
        '414':
          $ref: '#/components/responses/414'
        '415':
          $ref: '#/components/responses/415'
        '500':
          $ref: '#/components/responses/500'
        '502':
          $ref: '#/components/responses/502'
        '503':
          $ref: '#/components/responses/503'
      tags:
      - LeisureManagement
      requestBody:
        content:
          application/json;charset=UTF-8:
            schema:
              allOf:
              - $ref: '#/components/schemas/createActivityBooking'
        description: Self-contained Request object that is used when Creating activities.
        required: true
    put:
      summary: Send a response to Change in Activity Booking
      description: This API will send a response to a  Change in Activity Booking request from external Activity Scheduler system. <p><strong>OperationId:</strong>putActivityBooking</p>
      operationId: putActivityBooking
      parameters:
      - name: reservationId
        in: path
        required: true
        description: Unique OPERA internal Reservation ID which is used to find any reservation in OPERA. This ID is a primary identification of a reservation in OPERA.
        schema:
          type: string
          maxLength: 2000
          minLength: 1
      - name: hotelId
        in: path
        required: true
        description: Unique OPERA Hotel code
        schema:
          type: string
          maxLength: 2000
          minLength: 1
      - $ref: '#/components/parameters/authKey'
      - $ref: '#/components/parameters/externalData'
      - $ref: '#/components/parameters/x-app-key'
      - $ref: '#/components/parameters/x-request-id'
      - $ref: '#/components/parameters/x-originating-application'
      - $ref: '#/components/parameters/x-hotelid'
      - $ref: '#/components/parameters/x-externalsystemreq'
      - $ref: '#/components/parameters/Accept-Language'
      responses:
        '200':
          headers:
            Content-Language:
              description: Audience language
              x-example: en-GB
              schema:
                type: string
                pattern: '[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*'
            Location:
              description: Location of newly created resource
              schema:
                type: string
          description: Self-contained response object that is used when Updating activities.
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/activityBookingModified'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '405':
          $ref: '#/components/responses/405'
        '406':
          $ref: '#/components/responses/406'
        '413':
          $ref: '#/components/responses/413'
        '414':
          $ref: '#/components/responses/414'
        '415':
          $ref: '#/components/responses/415'
        '500':
          $ref: '#/components/responses/500'
        '502':
          $ref: '#/components/responses/502'
        '503':
          $ref: '#/components/responses/503'
      tags:
      - LeisureManagement
      requestBody:
        content:
          application/json;charset=UTF-8:
            schema:
              allOf:
              - $ref: '#/components/schemas/changeActivityBooking'
        description: Self-contained Request object that is used when Updating activities.
        required: true
    delete:
      summary: Send a response to Cancellation of an Activity Booking
      description: This API will send a response to Cancellation of an Activity Booking. <p><strong>OperationId:</strong>deleteActivityBooking</p>
      operationId: deleteActivityBooking
      parameters:
      - name: reservationId
        in: path
        required: true
        description: Unique OPERA internal Reservation ID which is used to find any reservation in OPERA. This ID is a primary identification of a reservation in OPERA.
        schema:
          type: string
          maxLength: 2000
          minLength: 1
      - name: hotelId
        in: path
        required: true
        description: Unique OPERA Hotel code
        schema:
          type: string
          maxLength: 2000
          minLength: 1
      - name: activityId
        in: query
        required: true
        description: A unique identifying value assigned by the creating system. The ID attribute may be used to reference a primary-key value within a database or in a particular implementation.
        schema:
          type: string
      - name: activityIdType
        in: query
        x-example: EXTERNALSYSTEMCODE
        required: true
        description: A reference to the type of object defined by the UniqueID element.
        schema:
          type: string
      - $ref: '#/components/parameters/authKey'
      - $ref: '#/components/parameters/externalData'
      - $ref: '#/components/parameters/x-app-key'
      - $ref: '#/components/parameters/x-request-id'
      - $ref: '#/components/parameters/x-originating-application'
      - $ref: '#/components/parameters/x-hotelid'
      - $ref: '#/components/parameters/x-externalsystemreq'
      - $ref: '#/components/parameters/Accept-Language'
      responses:
        '200':
          headers:
            Content-Language:
              description: Audience language
              x-example: en-GB
              schema:
                type: string
                pattern: '[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*'
            Location:
              description: Location of newly created resource
              schema:
                type: string
          description: HATEOAS links which help the consumer to navigate to resources
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/status'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '405':
          $ref: '#/components/responses/405'
        '406':
          $ref: '#/components/responses/406'
        '413':
          $ref: '#/components/responses/413'
        '414':
          $ref: '#/components/responses/414'
        '415':
          $ref: '#/components/responses/415'
        '500':
          $ref: '#/components/responses/500'
        '502':
          $ref: '#/components/responses/502'
        '503':
          $ref: '#/components/responses/503'
      tags:
      - LeisureManagement
  /hotels/{hotelId}/reservations/{reservationId}/locationNotifications:
    post:
      summary: Send a response to Location Notification
      description: This API will send a response to a Location Notification. <p><strong>OperationId:</strong>postLocationNotification</p>
      operationId: postLocationNotification
      parameters:
      - name: reservationId
        in: path
        required: true
        description: Unique OPERA internal Reservation ID which is used to find any reservation in OPERA. This ID is a primary identification of a reservation in OPERA.
        schema:
          type: string
          maxLength: 2000
          minLength: 1
      - name: hotelId
        in: path
        required: true
        description: Unique OPERA Hotel code
        schema:
          type: string
          maxLength: 2000
          minLength: 1
      - $ref: '#/components/parameters/authKey'
      - $ref: '#/components/parameters/externalData'
      - $ref: '#/components/parameters/x-app-key'
      - $ref: '#/components/parameters/x-request-id'
      - $ref: '#/components/parameters/x-originating-application'
      - $ref: '#/components/parameters/x-hotelid'
      - $ref: '#/components/parameters/x-externalsystem'
      - $ref: '#/components/parameters/Accept-Language'
      responses:
        '201':
          headers:
            Content-Language:
              description: Audience language
              x-example: en-GB
              schema:
                type: string
                pattern: '[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*'
            Location:
              description: Location of newly created resource
              schema:
                type: string
          description: HATEOAS links which help the consumer to navigate to resources
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/status'
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '405':
          $ref: '#/components/responses/405'
        '406':
          $ref: '#/components/responses/406'
        '413':
          $ref: '#/components/responses/413'
        '414':
          $ref: '#/components/responses/414'
        '415':
          $ref: '#/components/responses/415'
        '500':
          $ref: '#/components/responses/500'
        '502':
          $ref: '#/components/responses/502'
        '503':
          $ref: '#/components/responses/503'
      tags:
      - LeisureManagement
      requestBody:
        content:
          application/json;charset=UTF-8:
            schema:
              allOf:
              - $ref: '#/components/schemas/locationNotificationToBeCreated'
        description: Generic self-contained request object that is used for Location Notification
        required: true
  /services/leisureManagement/status:
    get:
      summary: Ping the Leisure Management Service
      description: Service ping the Leisure Management Service. <p><strong>OperationId:</strong>pingLeisureManagementService</p>
      operationId: pingLeisureManagementService
      parameters:
      - $ref: '#/components/parameters/authKey'
      - $ref: '#/components/parameters/externalData'
      - $ref: '#/components/parameters/x-app-key'
      - $ref: '#/components/parameters/x-request-id'
      - $ref: '#/components/parameters/x-originating-application'
      - $ref: '#/components/parameters/x-hotelid'
      - $ref: '#/components/parameters/x-externalsystem'
      - $ref: '#/components/parameters/Accept-Language'
      responses:
        '200':
          headers:
            Content-Language:
              description: Audience language
              x-example: en-GB
              schema:
                type: string
                pattern: '[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*'
          description: Response for Ping operation.
          content:
            application/json;charset=UTF-8:
              schema:
                $ref: '#/components/schemas/operaVersion'
        '204':
          description: pingLeisureManagementService not found.
        '400':
          $ref: '#/components/responses/400'
        '401':
          $ref: '#/components/responses/401'
        '403':
          $ref: '#/components/responses/403'
        '404':
          $ref: '#/components/responses/404'
        '405':
          $ref: '#/components/responses/405'
        '406':
          $ref: '#/components/responses/406'
        '413':
          $ref: '#/components/responses/413'
        '414':
          $ref: '#/components/responses/414'
        '415':
          $ref: '#/components/responses/415'
        '500':
          $ref: '#/components/responses/500'
        '502':
          $ref: '#/components/responses/502'
        '503':
          $ref: '#/components/responses/503'
      tags:
      - LeisureManagement
components:
  schemas:
    changeActivityBooking:
      type: object
      properties:
        activityBooking:
          description: Information related to activity booking to be modified.
          $ref: '#/components/schemas/activityBookingRQType'
        links:
          $ref: '#/components/schemas/links'
        warnings:
          $ref: '#/components/schemas/warningsType'
    activityBookingRQType:
      type: object
      description: The choice between a reservation header or a profile ID. One or the other is required.
      properties:
        hotelId:
          description: This is not required if a Reservation Id is provided
          type: string
          minLength: 0
          maxLength: 20
        reservationId:
          description: Required unique identifier of the reservation
          $ref: '#/components/schemas/uniqueID_Type'
        profileId:
          description: ProfileID associated with the Activity.
          $ref: '#/components/schemas/uniqueID_Type'
        activities:
          description: A collection of activities
          $ref: '#/components/schemas/activityList'
    activityBookingModified:
      type: object
      properties:
        activityBooking:
          description: Information related to modified activity booking.
          $ref: '#/components/schemas/activityBookingRSType'
        links:
          $ref: '#/components/schemas/links'
        warnings:
          $ref: '#/components/schemas/warningsType'
    createActivityBooking:
      type: object
      properties:
        activityBooking:
          description: Information related to activity booking to be created.
          $ref: '#/components/schemas/activityBookingRQType'
        links:
          $ref: '#/components/schemas/links'
        warnings:
          $ref: '#/components/schemas/warningsType'
    countryNameType:
      type: object
      description: Code for a country or a nationality.
      properties:
        value:
          type: string
          description: Used for Character Strings, length 0 to 200.
          minLength: 0
          maxLength: 200
        code:
          description: Code for a country or a nationality.
          type: string
          minLength: 0
          maxLength: 20
    instanceLink:
      type: object
      description: Metadata describing link description objects that MAY appear in the JSON instance representation.
      properties:
        href:
          description: URI [RFC3986] or URI Template [RFC6570]. If the value is set to URI Template, then the "templated" property must be set to true.
          type: string
        rel:
          description: Name of the link relation that, in addition to the type property, can be used to retrieve link details. For example, href or profile.
          type: string
        templated:
          description: Boolean flag that specifies that "href" property is a URI or URI Template. If the property is a URI template, set this value to true. By default, this value is false.
          type: boolean
          default: false
        method:
          description: HTTP method for requesting the target of the link.
          type: string
          enum:
          - GET
          - POST
          - PUT
          - DELETE
          - PATCH
          - OPTIONS
          - HEAD
        targetSchema:
          description: Link to the metadata of the resource, such as JSON-schema, that describes the resource expected when dereferencing the targe

# --- truncated at 32 KB (56 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/oracle-hospitality/refs/heads/main/openapi/oracle-hospitality-leisuremanagement-api-openapi.yml