Oracle Hospitality Profile API

The Profile APIs allow you to view, create, update, and delete profiles in OPERA Cloud. Each time a new profile in created in OPERA Cloud, a profileID is assigned. Use this profileID to retrieve and update details relating to that profile. The resource 'Companies' includes group, source, company and travel agent profile types. The resource 'Guests' includes individual and contact profile types.

Business capability
Guest Profile & Identity Management BC-4040.10

Operations 110

POST /externalSystems/{extSystemCode}/memberships/{membershipType}/membershipIDs Generate membership number #
GET /address Get city states #
DELETE /certificates Delete certificate #
POST /companies This API facilitates creation of a company/agent/group/source profile in OPERA #
GET /companies/{corporateID} Get company profile by corporate ID #
GET /duplicateExternalSubscriptions Get profiles with duplicate external subscriptions #
GET /duplicateOPERASubscriptions Get profiles with duplicate OPERA Cloud subscriptions #
GET /ecertificates Get e-certificate #
POST /ecertificates Create e-certificate #
DELETE /ecertificates/{certificateId} Delete e-certificate #
PUT /ecertificates/{certificateId} Consume an E-Certificate #
PUT /ecertificates/{certificateId}/action/validate Verify E-Certificate Number #
POST /ecertificates/{certificateId}/extensions Extend E-Certificate Expiry date #
GET /externalSystems/{extSystemCode}/profiles/{profileExternalId} Get profile by external ID #
PUT /externalSystems/{extSystemCode}/profiles/{profileExternalId} Update by external ID #
POST /guests Create a guest, contact or employee profile in OPERA #
GET /guests/{guestId} Get guest profile by guest ID #
PUT /hotels/{hotelId}/profiles/{profileId}/commissionAccount Copy profile commission account #
DELETE /hotels/{hotelId}/profiles/{profileId}/flexFieldCode/{flexFieldCode} Operation to delete a flex field #
GET /hotels/{hotelId}/profiles/{profileId}/flexFieldValues Operation to fetch flex field values #
POST /hotels/{hotelId}/profiles/{profileId}/flexFieldValues Operation to create a flex field with value for a module #
PUT /hotels/{hotelId}/profiles/{profileId}/flexFieldValues Operation to update flex field value #
PUT /hotels/{hotelId}/profiles/{profileId}/reprocess Re-Process a single Stage Record #
GET /membershipTierProjections Get Membership Tier Projection #
GET /memberships/{membershipId}/fullfillmentExportLogs Get Fulfillment Export Logs #
POST /memberships/{membershipType}/membershipNumbers Generate membership number #
PUT /processStagedProfile Process a staged profile #
GET /profileMatch Fetch the profile Id if a unique guest profile Exists #
POST /profileMatch/searches Fetch the profile Id if a unique guest profile Exists #
GET /profileTransactions/{profileId} Get Profile Transactions #
GET /profiles Search for profile(s) #
POST /profiles Create a profile #
GET /profiles/action/validate Validate and check profiles #
GET /profiles/activityLog Fetch profile activity log #
GET /profiles/profileMatches Get potential profile matches #
POST /profiles/profileMatches/searches Get potential profile matches #
POST /profiles/searches Search for profile(s) #
GET /profiles/stageProfileMatches Get potential stage profile matches #
GET /profiles/{profileId} Get profile by ID #
PUT /profiles/{profileId} Update a profile by ID #
DELETE /profiles/{profileId} Forget or delete a profile by ID #
GET /profiles/{profileId}/accounts Get profile accounts #
GET /profiles/{profileId}/attachments Get profile attachments #
DELETE /profiles/{profileId}/attachments/{attachmentId} Delete profile attachment #
GET /profiles/{profileId}/awardsAndCertificates Get Profile awards and certificates #
GET /profiles/{profileId}/cashieringDetails Get cashiering details for a profile #
PUT /profiles/{profileId}/cashieringDetails Change cashiering details for a profile #
GET /profiles/{profileId}/commissionAccount Get commission account on a profile #
DELETE /profiles/{profileId}/commissionAccount Delete a commission account from a profile #
POST /profiles/{profileId}/commissionAccount Add a commission account on a profile #
PUT /profiles/{profileId}/commissionAccount Set profile commission account #
POST /profiles/{profileId}/emails Create an Email #
GET /profiles/{profileId}/flexFieldValues Operation to fetch flex field values #
GET /profiles/{profileId}/hotels/{hotelId}/forecasts Fetch Account Forecasts by hotel #
POST /profiles/{profileId}/hotels/{hotelId}/forecasts Create account forecast in a hotel #
DELETE /profiles/{profileId}/hotels/{hotelId}/forecasts Delete multiple account forecasts #
PUT /profiles/{profileId}/hotels/{hotelId}/forecasts/periodCodes/{periodCode} Update account forecast in a hotel by period code #
DELETE /profiles/{profileId}/hotels/{hotelId}/forecasts/periodCodes/{periodCode} Delete account forecast in a hotel by period code #
DELETE /profiles/{profileId}/hotels/{hotelId}/preferenceType/{preferenceType}/preferences/{preferenceCode} Delete a preference from a profile #
DELETE /profiles/{profileId}/hotels/{hotelId}/stagedProfile Delete a staged profile #
GET /profiles/{profileId}/links Get linked profiles #
GET /profiles/{profileId}/matches Get profile matches #
PUT /profiles/{profileId}/membershipType/{membershipType}/membershipId/{membershipId} Change membership information on a profile #
DELETE /profiles/{profileId}/membershipType/{membershipType}/membershipId/{membershipId} Delete membership information from a profile #
POST /profiles/{profileId}/memberships Create membership on a profile #
GET /profiles/{profileId}/owners Get profile owners #
PUT /profiles/{profileId}/owners Change profile owners #
POST /profiles/{profileId}/owners Assign profile owners #
DELETE /profiles/{profileId}/preferenceType/{preferenceType}/preferences/{preferenceCode} Delete a global preference from a profile #
GET /profiles/{profileId}/preferences Get preferences on a profile #
PUT /profiles/{profileId}/preferences Distribute preferences on a profile #
POST /profiles/{profileId}/preferences Add preferences to a profile #
GET /profiles/{profileId}/relationships FetchProfileRelationships method provides the ability to retrieve a profile… #
PUT /profiles/{profileId}/reservations/action/validate Check future past bookings #
GET /profiles/{profileId}/stayHistory FetchStayHistory method provides stay history and future reservations of a… #
POST /profiles/{sourceProfileId}/relationships/{targetProfileId} CreateProfileRelationship method provides the ability to create profile… #
PUT /profiles/{sourceProfileId}/relationships/{targetProfileId} ChangeProfileRelationship method provides the ability to update(delete and add)… #
DELETE /profiles/{sourceProfileId}/relationships/{targetProfileId} DeleteProfileRelationship method provides the ability to delete profile… #
POST /profiles/{survivorProfileId}/merges Merge two profiles by ID #
GET /profiles/{survivorProfileId}/merges/snapshot Get merge profiles snapshot #
GET /profiles/{survivorProfileId}/stageProfiles/snapshot Get merge stage profile snapshot #
GET /profilesByIds Search for profile(s) #
PUT /profilesMatchList Updates a list of matchIds to skip or don't skip profile match #
GET /profilesMatchList/profileType/{profileType} Get profiles match list #
PUT /reProcessStageRecords Re-Process all Stage Records #
GET /reProcessStageRecords/logs Get reProcess stage records logs #
GET /recentlyAccessedProfiles Fetch recently accessed profiles #
DELETE /service/profileService/cache Operation to delete cache for Profile service #
GET /services/profile/status Operation to check the status of profile service #
GET /stagedProfile/{id} Get a staged profile #
PUT /stagedProfile/{id} Change a staged profile #
GET /stagedProfiles Get staged profiles #
POST /stagedProfiles/searches Get staged profiles #
POST /stayMembership This API facilitates attaching or replacing a membership to a given stayRecord #
POST /stayRecord This API facilitates uploading stage records to LCS #
GET /stayRecord/{stayRecordId} Get Stay Record Detail #
PUT /stayRecords/{stayRecordId} Ability to edit Orphan Stay Records #
GET /suspendedAddresses Fetch Suspended Profile Addresses #
GET /suspendedProfiles/errorsSummary Get suspended profiles errors summary details #
GET /suspendedProfiles/errorsSummary/profileType Get suspended profiles match errors summary information grouped by profile type #
GET /suspendedProfiles/errorsSummary/property Get suspended profiles match errors summary information grouped by property #
POST /suspendedProfiles/errorsSummary/property Get suspended profiles match errors summary information grouped by property #
GET /suspendedProfiles/matchStats Get suspended profile match statistics information #
GET /suspendedProfiles/matchStats/matchCriteria Get suspended profiles match statistics information grouped by match criteria #
GET /suspendedProfiles/matchStats/profileType Get suspended profiles match statistics information grouped by profile type #
GET /suspendedProfiles/matchStats/property Get suspended profiles match statistics information grouped by property #
GET /suspendedProfiles/matchStats/propertyAndProfileType Get suspended profiles match statistics information grouped by property and… #
GET /suspendedProfiles/matchStats/threshold Get suspended profiles match statistics summary information filtering by… #
PUT /synchronizeProfileSubscriptions Synchronize profile subscriptions #
PUT /validateForgetProfiles Validate forget profiles #

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-profile-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 form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.

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

OpenAPI Specification

oracle-hospitality-profile-api-openapi.yml Raw ↑
openapi: 3.2.0
info:
  title: Oracle Hospitality Profile API
  version: 26.2.0.0
  contact:
    email: hospitality_apis_ww_grp@oracle.com
  license:
    name: UPL
    url: https://opensource.org/licenses/upl
  termsOfService: https://www.oracle.com/legal/terms.html
  description: 'Operations tagged Profile across 2 of this provider''s published API definitions: oracle-hospitality-property-outbound-crmoutbound.json, oracle-hospitality-property-v1-crm.json. Each path carries the servers of the definition it was published in.'
servers:
- url: /crm/v1
tags:


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