Every API here is available over the APIs.io API and to AI agents over MCP.
openapi: 3.2.0
info:
title: OPERA Cloud API for Service Customer Management API
description: This API deals with the different aspect of the CustomerManagement.<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: /cms/v1
tags:
- name: CustomerManagement
description: Customer Management web service caters operations for Customer Management activities.
paths:
/hotels/{hotelId}/trackItems:
post:
summary: Creates track it items
description: Create a new Track It Item. Track It manages storage and delivery of guest luggage, parcels, vehicles (valet), and lost items. They can optionally be linked to a reservation if related or an arrival, in-house or departure reservation. <p><strong>OperationId:</strong>postTrackItItems</p>
operationId: postTrackItItems
parameters:
- name: hotelId
in: path
required: true
description: ''
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:
- CustomerManagement
requestBody:
content:
application/json;charset=UTF-8:
schema:
allOf:
- $ref: '#/components/schemas/trackItItems'
description: Request object to create Track It items.
required: true
put:
summary: Updates track it items
description: Update the details of a Track It Item for a property. <p><strong>OperationId:</strong>putTrackItItems</p>
operationId: putTrackItItems
parameters:
- name: hotelId
in: path
required: true
description: ''
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:
'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: Response object for updating Track It items.
content:
application/json;charset=UTF-8:
schema:
$ref: '#/components/schemas/trackItItems'
'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:
- CustomerManagement
requestBody:
content:
application/json;charset=UTF-8:
schema:
allOf:
- $ref: '#/components/schemas/trackItItems'
description: Request object to update Track It items.
required: true
delete:
summary: Deletes track it items
description: Delete a Track It Item for a property. <p><strong>OperationId:</strong>deleteTrackItItems</p>
operationId: deleteTrackItItems
parameters:
- name: hotelId
in: path
required: true
description: ''
schema:
type: string
maxLength: 2000
minLength: 1
- name: trackItId
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: trackItIdContext
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: trackItIdType
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-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})*'
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:
- CustomerManagement
get:
summary: Fetches track it items
description: Retrieve a list of all Track It Items for a property. <p><strong>OperationId:</strong>getTrackItItems</p>
operationId: getTrackItItems
deprecated: true
parameters:
- name: hotelId
in: path
required: true
description: ''
schema:
type: string
maxLength: 2000
minLength: 1
- name: ticketId
in: query
required: false
description: Complete ticket number of the Track It item.
schema:
type: string
- name: reservationId
in: query
required: false
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: reservationIdContext
in: query
required: false
description: Used to identify the source of the identifier (e.g., IATA, ABTA).
schema:
type: string
- name: reservationIdType
in: query
required: false
description: A reference to the type of object defined by the UniqueID element.
schema:
type: string
- name: givenName
in: query
required: false
description: Given name, first name or names.
schema:
type: string
- name: surname
in: query
required: false
description: Family name, last name. May also be used for full name if the sending system does not have the ability to separate a full name into its parts, e.g. the surname element may be used to pass the full name.
schema:
type: string
- name: trackItGroups
in: query
description: Group to which the Track It items belong.
required: false
style: form
explode: true
schema:
type: array
items:
type: string
enum:
- Parcel
- Valet
- Baggage
- Lost
uniqueItems: true
- name: types
in: query
description: Track It types based on the Track It group.
required: false
style: form
explode: true
schema:
type: array
items:
type: string
maxItems: 4000
- name: locations
in: query
description: Locations for Track It location.
required: false
style: form
explode: true
schema:
type: array
items:
type: string
maxItems: 4000
- name: actions
in: query
description: Track It actions based on Track It groups.
required: false
style: form
explode: true
schema:
type: array
items:
type: string
maxItems: 4000
- name: actionStatuses
in: query
description: Action status of the Track It item(Open, Closed).
required: false
style: form
explode: true
schema:
type: array
items:
type: string
enum:
- Open
- Closed
uniqueItems: true
- name: appUserId
in: query
required: false
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: appUserIdContext
in: query
required: false
description: Used to identify the source of the identifier (e.g., IATA, ABTA).
schema:
type: string
- name: appUserIdType
in: query
required: false
description: A reference to the type of object defined by the UniqueID element.
schema:
type: string
- name: assignedStatuses
in: query
description: Assignment status of the Track It item(Assigned, Unassigned).
required: false
style: form
explode: true
schema:
type: array
items:
type: string
enum:
- Assigned
- Unassigned
uniqueItems: true
- name: room
in: query
required: false
description: Guest's room number if ticket associated with a reservation.
schema:
type: string
- name: followUpDate
in: query
required: false
description: Follow up date for the ticket.
schema:
type: string
format: date
- name: createdOn
in: query
required: false
description: Date when the ticket was created.
schema:
type: string
format: date
- name: createdByUserId
in: query
required: false
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: createdByUserIdContext
in: query
required: false
description: Used to identify the source of the identifier (e.g., IATA, ABTA).
schema:
type: string
- name: createdByUserIdType
in: query
required: false
description: A reference to the type of object defined by the UniqueID element.
schema:
type: string
- name: description
in: query
required: false
description: Description associated with the Track It item.
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-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 object that retrieves Track It items.
content:
application/json;charset=UTF-8:
schema:
$ref: '#/components/schemas/trackItItems'
'204':
description: TrackItItems 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:
- CustomerManagement
/hotels/{hotelId}/trackItems/searches:
post:
summary: Fetches track it items
description: Retrieve a list of all Track It Items for a property. <p><strong>OperationId:</strong>searchTrackItItems</p>
operationId: searchTrackItItems
parameters:
- name: hotelId
in: path
required: true
description: ''
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:
'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 object that retrieves Track It items.
content:
application/json;charset=UTF-8:
schema:
$ref: '#/components/schemas/trackItItems'
'204':
description: TrackItItems 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:
- CustomerManagement
requestBody:
content:
application/json;charset=UTF-8:
schema:
$ref: '#/components/schemas/searchTrackItItemsRequest'
/services/customerManagement/status:
get:
summary: Operation to ping the customer management service
description: ' <p><strong>OperationId:</strong>pingCustomerManagementService</p>'
operationId: pingCustomerManagementService
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: pingCustomerManagementService 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:
- CustomerManagement
components:
responses:
'406':
description: Not acceptable.
'414':
description: Request URI Too Large
'503':
description: Service Unavailable
'413':
description: Request Entity Too Large
'500':
description: System Error
content:
application/json:
schema:
$ref: '#/components/schemas/exceptionDetailType'
'400':
description: Bad Request
content:
application/json:
schema:
$ref: '#/components/schemas/exceptionDetailType'
'502':
description: Bad Gateway
'403':
description: Forbidden
'415':
description: Unsupported Media Type
'404':
description: Resource not found
content:
application/json:
schema:
$ref: '#/components/schemas/exceptionDetailType'
'401':
description: Unauthorized
'405':
description: Method not allowed
parameters:
x-hotelid:
name: x-hotelid
description: Mandatory parameter to identify the hotel code where the end user is logged in
in: header
required: true
schema:
type: string
authKey:
name: authorization
description: Bearer token that needs to be passed which is generated post user authentication
in: header
required: true
schema:
type: string
externalData:
name: externalData
description: Pass this header as true, if payload needs DVM
in: header
schema:
type: string
Accept-Language:
name: Accept-Language
description: Language code
in: header
schema:
type: string
x-app-key:
name: x-app-key
description: Client or Partner's Application Key
in: header
required: true
schema:
type: string
pattern: ^[a-f0-9]{8}-[a-f0-9]{4}-4[a-f0-9]{3}-[89aAbB][a-f0-9]{3}-[a-f0-9]{12}$
x-externalsystem:
name: x-externalsystem
description: External system code.
in: header
x-example: EXTERNALSYSTEMCODE
schema:
type: string
maxLength: 40
x-originating-application:
name: x-originating-application
description: Customer's Integration Application Id
in: header
schema:
type: string
x-request-id:
name: x-request-id
description: Request Id of an incoming request
in: header
schema:
type: string
pattern: ~*[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}
schemas:
trackItType:
type: object
description: Identifies the kind of Parcel, Baggage, or Lost items or Valet-managed vehicles or services.
properties:
type:
$ref: '#/components/schemas/codeDescriptionType'
url:
$ref: '#/components/schemas/uRLType'
resAccompanyGuestInfoType:
type: object
properties:
firstName:
description: Given name, first name or names
type: string
lastName:
description: Family name, last name.
type: string
fullName:
description: String representation of the full name
type: string
registrationCardNo:
description: Unique identifier of the police registration card number.
type: string
minLength: 0
maxLength: 40
profileIdList:
description: Unique identifiers for the Profile for both internal and external systems. In case of Travel Agent the IATA code and in case of Company can be any form of identifier as id.
$ref: '#/components/schemas/profileIdList'
trackItItems:
type: object
description: Response object that retrieves Track It items.
properties:
trackItItemsInfo:
$ref: '#/components/schemas/trackItItemsType'
hotelId:
$ref: '#/components/schemas/codeType'
links:
$ref: '#/components/schemas/links'
warnings:
$ref: '#/components/schemas/warningsType'
namePrefixType:
type: string
description: Salutation of honorific. (e.g., Mr. Mrs., Ms., Miss, Dr.)
minLength: 0
maxLength: 40
personNameType:
type: object
description: This provides name information for a person.
properties:
namePrefix:
description: Salutation of honorific (e.g. Mr., Mrs., Ms., Miss, Dr.)
type: string
minLength: 0
maxLength: 40
givenName:
description: Given name, first name or names.
type: string
minLength: 0
maxLength: 40
middleName:
description: The middle name of the person name.
type: string
minLength: 0
maxLength: 40
surname:
description: Family name, last name. May also be used for full name if the sending system does not have the ability to separate a full name into its parts, e.g. the surname element may be used to pass the full name.
type: string
minLength: 0
maxLength: 40
nameSuffix:
description: Hold various name suffixes and letters (e.g. Jr., Sr., III, Ret., Esq.)
type: string
minLength: 0
maxLength: 40
nameTitle:
description: Degree or honors (e.g., Ph.D., M.D.)
type: string
minLength: 0
maxLength: 80
nameTitleSuffix:
description: Title Suffix. Must be populated if ADVANCED_TITLE is on.
type: integer
envelopeGreeting:
description: Envelope Greeting of the profile
type: string
salutation:
description: Salutation of the profile
type: string
nameType:
description: Type of name of the individual, such as former, nickname, alternate or alias name.
$ref: '#/components/schemas/personNameTypeType'
language:
description: Language identification.
type: string
pattern: '[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*'
externalSystem:
description: When name type is external, indicates the external system the name belongs to.
type: string
minLength: 0
maxLength: 40
reservationIdList:
type: array
description: Unique Id that references an object uniquely in the system.
maxItems: 4000
items:
$ref: '#/components/schemas/uniqueID_Type'
actionStatusType:
type: string
description: Action status of the Track It item(Open, Closed).
enum:
- Open
- Closed
timeSpanType:
type: object
description: Allows for a choice in description of the amount of time spanned by this type. EndDate specifies a specific date, while Duration provides a measure of time to add to the StartDate to yield end date.
properties:
startDate:
type: string
format: date
maxLength: 8
endDate:
type: string
format: date
maxLength: 8
duration:
type: string
trackItItemType:
type: object
description: Detailed information of a Track It item.
properties:
hotelId:
type: string
minLength: 0
maxLength: 20
trackItId:
$ref: '#/components/schemas/trackItId'
group:
$ref: '#/components/schemas/trackItGroup'
ticketNumber:
type: string
minLength: 0
maxLength: 80
referenceNumber:
type: string
minLength: 0
maxLength: 20
type:
$ref: '#/components/schemas/trackItType'
action:
$ref: '#/components/schemas/trackItActionType'
location:
$ref: '#/components/schemas/codeDescriptionType'
quantity:
type: integer
followUpDate:
type: string
format: date
maxLength: 8
description:
type: string
minLength: 0
maxLength: 2000
assignedTo:
$ref: '#/components/schemas/applicationUserType'
reservationInfo:
$ref: '#/components/schemas/trackItReservationInfoType'
trackItLogList:
$ref: '#/components/schemas/trackItLogListType'
addressInfoType:
type: object
description: Provides address information.
properties:
address:
description: Address details for the profile.
$ref: '#/components/schemas/addressType'
id:
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.
type: string
minLength: 0
maxLength: 80
type:
description: A reference to the type of object defined by the UniqueID element.
type: string
minLength: 0
maxLength: 40
warningsType:
type: array
description: Used in conjunction with the Success element to define a business error.
maxItems: 4000
items:
$ref: '#/components/schemas/warningType'
uniqueID_Type:
type: object
description: An identifier used to uniquely reference an object in a system (e.g. an airline reservation reference, customer profile reference, booking confirmation number, or a reference to a previous availability quote).
properties:
id:
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.
type: string
minLength: 0
maxLength: 80
type:
description: A reference to the type of object defined by the UniqueID element.
type: string
minLength: 0
maxLength: 40
telephoneType:
type: object
description: Information on a telephone number for the customer.
properties:
phoneTechType:
description: Indicates type of technology associated with this telephone number, such as Voice, Data, Fax, Pager, Mobile, TTY, etc.
type: string
minLength: 0
maxLength: 20
phoneUseType:
description: Describes the type of telephone number, in the context of its general use (e.g. Home, Business, Emergency Contact, Travel Arranger, Day, Evening).
type: string
minLength: 0
maxLength: 20
phoneUseTypeDescription:
description: Description of the PhoneUseType code
type: string
minLength: 0
maxLength: 2000
phoneNumber:
description: Telephone number assigned to a single location.
type: string
minLength: 0
maxLength: 40
extension:
description: Extension to reach a specific party at the phone number.
type: string
minLength: 0
maxLength: 20
primaryInd:
description: When true, indicates a primary information.
type: boolean
orderSequence:
description: Display Order sequence.
type: number
createDateTime:
description: Time stamp of the creation.
type: string
format: date-time
creatorId:
description: ID of creator. The creator could be a software system identifier or an identifier of an employee responsible for the creation.
type: string
minLength: 0
maxLength: 200
lastModifyD
# --- truncated at 32 KB (73 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/oracle-hospitality/refs/heads/main/openapi/oracle-hospitality-customermanagement-api-openapi.yml