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-profilestatistics-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: 3.2.0
info:
title: OPERA Cloud Customer Relationship Management Profile Statistics API
description: APIs to cater for Customer Relationship Management (profile) functionality in OPERA Cloud.<br /><br /> There are different types of profiles in OPERA Cloud, including Guest, Company, Travel Agent, Source, Group, and Contact profile types. A profile can store and display a wide range of information about the guest, company, travel agent etc., depending upon the type of profile. For example, a guest profile can store the guest name, address, contact information, details on billing, membership benefits, preferences and much more. All profiles in OPERA when created are assigned a ProfileID. This ID will be used throughout the CRM APIs.<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: /crm/v1
tags:
- name: ProfileStatistics
description: These APIs will allow you to retrieve statistical data for a specified profile.
paths:
/profileMembershipStatistics:
get:
summary: 'Get Membership statistics '
description: Retrieve the summary statistics and/or the details of each of the membership transactions and its points. You can filter by membership Type, or Membership Number. <p><strong>OperationId:</strong>getProfileMembershipStatistics</p> <p>This API allows a time span of <strong>90</strong> days.</p>
operationId: getProfileMembershipStatistics
parameters:
- name: profileId
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: membershipCardNo
in: query
required: true
description: Number of the membership card.
schema:
type: string
- name: membershipType
in: query
required: true
description: Type of membership.
schema:
type: string
- name: startDate
in: query
required: false
schema:
type: string
format: date
- name: endDate
in: query
required: false
schema:
type: string
format: date
- name: transactionDate
in: query
required: false
schema:
type: string
format: date
- name: hotelId
in: query
required: false
description: Membership transaction belongs to which Hotel.
schema:
type: string
- name: confirmationNumber
in: query
required: false
description: Confirmation Number of the membership transaction.
schema:
type: string
- name: limit
in: query
required: false
description: Indicates maximum number of records a Web Service should return.
schema:
type: integer
default: 20
- name: offset
in: query
required: false
description: Index or initial index of the set(page) being requested. If the index goes out of the bounds of the total set count then no data will be returned.
schema:
type: integer
default: 1
- name: duration
in: query
required: false
schema:
type: string
- name: transactionDetail
in: query
required: false
description: Flag indicating whether to fetch detailed membership points information or just a summary of the total of the points.
schema:
type: boolean
default: false
- name: reference
in: query
required: false
description: User-defined reference field for the Membership Transaction Adjustment.
schema:
type: string
maxLength: 20
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 of the WS operation FetchProfileMembershipPoints. It contains the summary statistics and/or the details of each of the membership transactions and its points.
content:
application/json;charset=UTF-8:
schema:
$ref: '#/components/schemas/profileMembershipStatistics'
'204':
description: ProfileMembershipStatistics 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:
- ProfileStatistics
/profileStatistics:
get:
summary: Get Profile Statistics
description: This API provides summary/detail/revenue statistics information <p><strong>OperationId:</strong>getProfileStatistics</p> <p>This API allows a time span of <strong>90</strong> days.</p>
operationId: getProfileStatistics
parameters:
- name: profileId
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: hotelIds
in: query
description: Hotel code.
required: true
style: form
explode: true
schema:
type: array
items:
type: string
maxItems: 4000
- name: reportType
in: query
required: true
description: Indicate to get revenue of Stay Records.
schema:
type: string
enum:
- Reservation
- Revenue
- ProfileStayRecords
- DetailStayRecordsRevenue
uniqueItems: true
- name: stayFrom
in: query
required: false
description: Stay from date for report
schema:
type: string
format: date
- name: stayTo
in: query
required: false
description: Stay to date for report
schema:
type: string
format: date
- name: summary
in: query
required: false
description: Flag to indicate whether summary/detail report is requested.
schema:
type: boolean
- name: passerBy
in: query
required: false
description: Flag to include passerBy records.
schema:
type: boolean
- name: contactProfileRoleType
in: query
required: false
description: Profile Role Type All.
schema:
type: string
enum:
- AccountContact
- AgentContact
- ReservationContact
- ReservationBillingContact
- All
uniqueItems: true
- name: stayRecordId
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: stayRecordIdContext
in: query
required: false
description: Used to identify the source of the identifier (e.g., IATA, ABTA).
schema:
type: string
- name: stayRecordIdType
in: query
required: false
description: A reference to the type of object defined by the UniqueID element.
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: currencyCode
in: query
required: false
description: Indicates currency in which the stay revenue must be rendered.
schema:
type: string
- name: limit
in: query
required: false
description: Indicates maximum number of records a Web Service should return.
schema:
type: integer
default: 20
- name: offset
in: query
required: false
description: Index or initial index of the set(page) being requested. If the index goes out of the bounds of the total set count then no data will be returned.
schema:
type: integer
default: 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 for fetching profile stay/reservation/revenue statistics. This object contains collection of summary or detail,Success,Warnings and Errors related to this operation.
content:
application/json;charset=UTF-8:
schema:
$ref: '#/components/schemas/profileStatistics'
'204':
description: ProfileStatistics 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:
- ProfileStatistics
/services/profileStats/status:
get:
summary: Operation to check the status of ProfileStats service
description: ' <p><strong>OperationId:</strong>pingProfileStatsService</p>'
operationId: pingProfileStatsService
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: pingProfileStatsService 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:
- ProfileStatistics
components:
schemas:
profileStatistics:
type: object
description: Response object for fetching profile stay/reservation/revenue statistics. This object contains collection of summary or detail,Success,Warnings and Errors related to this operation.
properties:
profileStatistic:
description: Contains summary/detail/revenue statistics information.
$ref: '#/components/schemas/profileStatisticsType'
totalPages:
description: Evaluated total page count based on the requested max fetch count.
type: integer
offset:
description: Index or initial index of the set(page) being requested. If the index goes out of the bounds of the total set count then no data will be returned.
type: integer
limit:
description: Indicates maximum number of records a Web Service should return.
type: integer
hasMore:
description: Indicates whether all the records are included in the response or not. Absence of the attribute values should be consider as all rows fetched in the response.
type: boolean
totalResults:
description: Total number of rows queried
type: integer
count:
description: Total number of rows returned
type: integer
links:
$ref: '#/components/schemas/links'
warnings:
$ref: '#/components/schemas/warningsType'
reservationQueueInformationType:
type: object
description: Information regarding the Date, Duration and Priority of the reservation on Queue for Check in.
properties:
timeSpan:
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.
type: object
properties:
startDate:
type: string
format: date
maxLength: 8
endDate:
type: string
format: date
maxLength: 8
duration:
type: string
durationInSeconds:
description: The total duration, in seconds, the reservation is on Queue.
type: integer
guestTextInfo:
description: Information for the message sent to the user
$ref: '#/components/schemas/queueTextInfoType'
priority:
description: The Queue Priority given to this reservation.
type: integer
averageQueueTimeToCheckIn:
description: The average time, in seconds, a reservation was on queue prior to Check-In.
type: integer
averageQueueTimeCurrentReservations:
description: The average time, in seconds, of the reservations currently in queue.
type: integer
queueDate:
description: The Business date on which the reservation was due to arrive and is currently placed on Queue for Check In.
type: string
format: date
maxLength: 8
guestHousekeepingServiceRequestType:
type: string
description: Possible values for the Guest Service Status.
enum:
- DoNotDisturb
- MakeUpRoom
- NoStatusSelected
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'
stayInfoType:
type: object
description: Details on the Room Stay including Guest Counts, Time Span of this Room Stay, pointers to Res Guests, guest Memberships, Comments and Special Requests pertaining to this particular Room Stay and finally financial information related to the Room Stay, including Guarantee, Deposit and Payment and Cancellation Penalties.
properties:
arrivalDate:
type: string
format: date
departureDate:
type: string
format: date
originalTimeSpan:
description: The Original Time Span covers the Room Stay dates of the original reservation.
$ref: '#/components/schemas/timeSpanType'
expectedTimes:
description: The expected arrival, return and departure times of the guest.
$ref: '#/components/schemas/resExpectedTimesType'
adultCount:
description: A collection of Guest Counts associated with Room Stay.
type: integer
childCount:
description: A collection of Child Counts associated with Room Stay.
type: integer
roomClass:
description: Room class code
type: string
minLength: 0
maxLength: 20
roomType:
description: Room type code
type: string
minLength: 0
maxLength: 20
componentRoomType:
description: True indicates room type is a component type.
type: boolean
numberOfRooms:
description: Room Id
type: integer
roomId:
description: Room Id
type: string
minLength: 0
maxLength: 20
ratePlanCode:
description: Rate plan code
type: string
minLength: 0
maxLength: 20
rateAmount:
description: Rate amount
$ref: '#/components/schemas/currencyAmountType'
points:
description: The Points contains the number of points used to book a particular room type.
$ref: '#/components/schemas/pointsType'
rateSuppressed:
description: Whether this rate should be suppressed from view
type: boolean
reservationBlock:
description: Key information about the block for this reservation.
$ref: '#/components/schemas/reservationBlockType'
bookingChannelCode:
description: Booking channel code
type: string
minLength: 0
maxLength: 20
linkCode:
description: Party code
type: string
maxLength: 2000
fixedRate:
description: True if the rate is a fixed rate, otherwise false
type: boolean
totalAmount:
description: The total amount charged for the Room Stay including additional occupant amounts and fees. If TaxInclusive is set to True, then taxes are included in the total amount.
$ref: '#/components/schemas/currencyAmountType'
guarantee:
description: The guarantee information associated to the Room Stay. A maximum of 5 occurances are available for use depending on the context.
$ref: '#/components/schemas/resGuaranteeType'
promotion:
description: Promotion Codes
$ref: '#/components/schemas/promotionType'
marketCode:
description: Market code
type: string
minLength: 0
maxLength: 20
marketDescription:
description: Description of Market code
type: string
minLength: 0
maxLength: 4000
sourceCode:
description: Source of business
type: string
minLength: 0
maxLength: 20
sourceCodeDescription:
description: Description of the source of business.
type: string
minLength: 0
maxLength: 4000
balance:
description: Balance amount
$ref: '#/components/schemas/currencyAmountType'
compBalance:
description: Comp Balance amount
$ref: '#/components/schemas/currencyAmountType'
roomTypeCharged:
description: Room type code that was charged
type: string
minLength: 0
maxLength: 20
depositPayments:
description: A collection of deposit and/or payments for the Room Stay.
$ref: '#/components/schemas/currencyAmountType'
guestServiceStatus:
description: Service Status of In House guest like DND or MUP
$ref: '#/components/schemas/guestHousekeepingServiceRequestType'
scheduledCheckoutTime:
description: Indicates that this reservation is scheduled for automated check out.
type: string
format: date
roomNumberLocked:
description: When true, indicates a room number cannot be changed. When false, indicates a room number may be changed.
type: boolean
pseudoRoom:
description: True indicates as pseudo room type. This is usually used for a posting master reservation.
type: boolean
assignedByAI:
description: Represents the room was assigned by AI Room Assignment.
type: boolean
upgradedByAI:
description: Represents the room was assigned by AI Room Assignment.
type: boolean
resSharedGuestInfoType:
type: object
description: Contains information regarding the share reservation.
properties:
profileId:
$ref: '#/components/schemas/profileId'
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
cardTypeType:
type: string
description: This is required for Credit Card Payment Methods. This indicates the type of Credit Card associated with this payment method.
enum:
- Ab
- Am
- Ax
- Cb
- Dc
- Ds
- Dt
- Ec
- Er
- Jc
- Jl
- Mc
- Nb
- So
- St
- Sw
- Va
- Xy
- Zz
- Cp
- Cu
statisticsRevenueTypeType:
type: object
description: Contains Revenue information
properties:
revenueAmount:
type: number
revenueLabel:
type: string
minLength: 0
maxLength: 20
numericUDFType:
type: object
description: Used to hold user defined field of Numeric Type. It is highly recommended to use UDFN01, UDFN02,...UDFN40 (Total 40) as Numeric UDF names(commonly used on Reservation, Profile etc.). Name is not restricted using enumeration, to provide flexibility of different name usage if required.
properties:
name:
description: Name of user defined field.
type: string
minLength: 0
maxLength: 20
value:
description: Value of user defined field.
type: number
alternateName:
description: Label of user defined field used by vendors or customers.
type: string
minLength: 0
maxLength: 2000
stayDetailSummaryType:
type: object
description: Contains stay related information such as reservation nights,room nights,arrival rooms,cancel rooms,etc.
properties:
roomNights:
type: integer
arrivalRooms:
type: integer
cancelRooms:
type: integer
noShowRooms:
type: integer
dayUseRooms:
type: integer
totalBooked:
description: Total Booked Stays/Reservations for Profile
type: integer
totalStays:
description: Total Stayed Reservations for Profile
type: integer
stayReservation:
$ref: '#/components/schemas/stayReservationType'
stayReservationType:
type: string
description: Enumeration for stay types.
enum:
- Transient
- Block
reservationFolioWindowsType:
type: array
description: Collection of reservation folio windows.
maxItems: 4000
items:
$ref: '#/components/schemas/reservationFolioWindowType'
namePrefixType:
type: string
description: Salutation of honorific (e.g. Mr., Mrs., Ms., Miss, Dr.). Currently this attribute is not used for PUT and POST operations.
minLength: 0
maxLength: 40
membershipTierPointsType:
type: object
description: Collection of the tier points.
properties:
revenuePoints:
description: Sum of the base revenue and bonus revenue points.
type: integer
nightPoints:
description: Sum of the base night and bonus night points.
type: integer
stayPoints:
description: Sum of the base stay and bonus stay points.
type: integer
pointsCost:
description: Points Cost.
type: integer
pointsCreditDate:
description: Date when points were created.
type: string
format: date
maxLength: 8
membershipTransactionInfoType:
type: object
description: Specific details regarding the transaction.
properties:
transactionDate:
description: Membership Transaction Date.
type: string
format: date
maxLength: 8
transactionType:
description: Membership Transaction Type.
type: string
minLength: 0
maxLength: 20
stayTimeSpan:
description: Begin and end dates of the reservation.
$ref: '#/components/schemas/timeSpanType'
reservationIdList:
description: The different reservation related ids. e.g. ResvNameId, ConfirmationNo or from an unknown PMS system.
$ref: '#/components/schemas/reservationIdList'
stay:
description: Total stay.
type: integer
nights:
description: Total nights.
type: integer
hotelId:
description: Resort of the transaction.
type: string
minLength: 0
maxLength: 20
currencyCode:
description: Code type of the type of currency.
type: string
minLength: 0
maxLength: 20
reference:
description: User-defined reference field for the Membership Transaction Adjustment.
type: string
minLength: 1
maxLength: 20
membershipCardNo:
description: The card number associated with this membership transaction.
type: string
minLength: 0
maxLength: 50
membershipLevel:
description: The membership level associated with the membership transaction.
type: string
minLength: 0
maxLength: 20
userName:
description: User who inserted or updated the membership transaction.
type: string
minLength: 0
maxLength: 256
referredMemNameId:
description: Name ID of the profile referred.
type: integer
referredDisplayName:
description: Display Name of the profile that is going to be referred.
type: string
resAccessRestrictionType:
type: string
description: Indicates any Updates/Changes on the reservation as well as Reservation Cancellation are not allowed.
enum:
- Change
- Cancel
- ChangeOrCancel
pointsType:
type: object
description: The Redeem Points contains the number of points required to book a room type.
properties:
awardsType:
description: Awards type for the award type rate code.
type: string
points:
description: No of points required to book this Room Stay.
type: integer
reservationIdList:
type: array
description: Unique Id that references an object uniquely in the system.
maxItems: 4000
items:
$ref: '#/components/schemas/uniqueID_Type'
communicationStatusType:
type: string
description: Enum to denote the Status of Readiness messages sent to Guest Devices.
enum:
- Pending
- Completed
- Failed
- Sent
- Received
- Cancelled
- PendingAvailability
resCashieringType:
type: object
description: Cashiering Information for the reservation.
properties:
revenuesAndBalances:
description: Revenues and Balances Amount summary for the reservation.
$ref: '#/components/schemas/resRevenueBalanceType'
billingPrivileges:
description: Billing privileges set on the reservation.
$ref: '#/components/schemas/billingPrivilegesType'
taxType:
description: This stores the code for the type of tax calculation especially with tax exemption, etc.
$ref: '#/components/schemas/reservationTaxTypeInfo'
bedTaxReporting:
description: This stores the information for Bed Tax Reporting. Mainly used in Maldives.
$ref: '#/components/schemas/bedTaxReportingType'
folioTexts:
description: Additional text fields to display on the folio.
$ref: '#/components/schemas/folioTextsType'
periodicFolio:
description: Information regarding periodic folios set on the reservation.
$ref: '#/components/schemas/resPeriodicFolioType'
compAccounting:
description: Information regarding comp accounting on the reservation.
$ref: '#/components/schemas/resCompAccountingType'
reservationPreConfiguredRoutingInstruction:
description: Information regarding the selected preconfigured routing instruction on the reservation
# --- truncated at 32 KB (132 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/oracle-hospitality/refs/heads/main/openapi/oracle-hospitality-profilestatistics-api-openapi.yml