Skip to content

crm: OPERA Cloud Customer Relationship Management API

168 operations from Oracle’s published OHIP specifications (26.3.0.0). Each shows its HTTP method and path and the typed call on ctx.Ohip.Api. hotelId defaults to the invocation’s hotel.

This API facilitates attaching or replacing a membership to a given stayRecord.

POST /crm/v1/stayMembership · chain-level

Task<Status?> ctx.Ohip.Api.Crm.AddReplaceStayMembershipAsync(StayMembershipDetails body, CancellationToken ct = default)

Calculate Membership Points

POST /crm/v1/membershipPoints/calculations · chain-level

Task<Status?> ctx.Ohip.Api.Crm.CalculateMembershipPointsAsync(MembershipPointsToCalculate body, CancellationToken ct = default)

Change membership information on a profile

PUT /crm/v1/profiles/{profileId}/membershipType/{membershipType}/membershipId/{membershipId} · chain-level

Task<ChangedMembership?> ctx.Ohip.Api.Crm.ChangeMembershipAsync(string profileId, string membershipType, string membershipId, Membership body, CancellationToken ct = default)

Change membership Claim

PUT /crm/v1/membershipClaims/{claimId} · chain-level

Task<Status?> ctx.Ohip.Api.Crm.ChangeMembershipClaimAsync(string claimId, MembershipClaim body, CancellationToken ct = default)

Change cashiering details for a profile

PUT /crm/v1/profiles/{profileId}/cashieringDetails · chain-level

Task<Status?> ctx.Ohip.Api.Crm.ChangeProfileCashieringDetailsAsync(string profileId, ProfileCashieringDetails body, CancellationToken ct = default)

Change profile owners

PUT /crm/v1/profiles/{profileId}/owners · chain-level

Task<Status?> ctx.Ohip.Api.Crm.ChangeProfileOwnersAsync(string profileId, ProfileOwners body, CancellationToken ct = default)

Change a staged profile

PUT /crm/v1/stagedProfile/{id} · chain-level

Task<Status?> ctx.Ohip.Api.Crm.ChangeStagedProfileAsync(string id, StagedProfile body, CancellationToken ct = default)

Validate and check profiles

GET /crm/v1/profiles/action/validate · chain-level

Task<CheckedProfiles?> ctx.Ohip.Api.Crm.CheckProfileTypeAsync(GetCheckProfileInstructionQueryParameterType? checkProfileInstruction = null, string? id = null, string? idContext = null, string? idType = null, CancellationToken ct = default)

Operation to delete cache for Profile service

DELETE /crm/v1/service/profileService/cache · chain-level

Task<Status?> ctx.Ohip.Api.Crm.ClearProfileServiceCacheAsync(CancellationToken ct = default)

Consume an E-Certificate

PUT /crm/v1/ecertificates/{certificateId} · chain-level

Task<Status?> ctx.Ohip.Api.Crm.ConsumeECertificateAsync(string certificateId, ECertificateToConsume body, CancellationToken ct = default)

Copy profile commission account

PUT /crm/v1/hotels/{hotelId}/profiles/{profileId}/commissionAccount · hotel-scoped

Task<Status?> ctx.Ohip.Api.Crm.CopyProfileCommissionAccountAsync(string profileId, ProfileCommissionAccountCopy body, string? hotelId = null, CancellationToken ct = default)

Delete account forecast in a hotel by period code

DELETE /crm/v1/profiles/{profileId}/hotels/{hotelId}/forecasts/periodCodes/{periodCode} · hotel-scoped

Task<Status?> ctx.Ohip.Api.Crm.DeleteAccountForecastAsync(string profileId, string periodCode, string? hotelId = null, string[]? periodCodes = null, CancellationToken ct = default)

Delete Awards

DELETE /crm/v1/awards · chain-level

Task<Status?> ctx.Ohip.Api.Crm.DeleteAwardsAsync(double? actualCancelPoints = null, double? awardNumber = null, string? reservationCancellationNumber = null, CancellationToken ct = default)

Delete certificate

DELETE /crm/v1/certificates · chain-level · deprecated

Task<Status?> ctx.Ohip.Api.Crm.DeleteCertificateAsync(CancellationToken ct = default)

Delete e-certificate

DELETE /crm/v1/ecertificates/{certificateId} · chain-level

Task<Status?> ctx.Ohip.Api.Crm.DeleteECertificateAsync(string certificateId, CancellationToken ct = default)

Delete a global preference from a profile

DELETE /crm/v1/profiles/{profileId}/preferenceType/{preferenceType}/preferences/{preferenceCode} · chain-level

Task<Status?> ctx.Ohip.Api.Crm.DeleteGlobalPreferenceAsync(string profileId, string preferenceType, string preferenceCode, string? registeredProperty = null, CancellationToken ct = default)

Delete membership information from a profile

DELETE /crm/v1/profiles/{profileId}/membershipType/{membershipType}/membershipId/{membershipId} · chain-level

Task<Status?> ctx.Ohip.Api.Crm.DeleteMembershipAsync(string profileId, string membershipType, string membershipId, CancellationToken ct = default)

Delete membership promotion of a guest

DELETE /crm/v1/memberships/{membershipId}/promotions/{promotionCode} · chain-level

Task<Status?> ctx.Ohip.Api.Crm.DeleteMembershipPromotionAsync(string membershipId, string promotionCode, string? membershipPromotionId = null, CancellationToken ct = default)

Delete multiple account forecasts

DELETE /crm/v1/profiles/{profileId}/hotels/{hotelId}/forecasts · hotel-scoped

Task<Status?> ctx.Ohip.Api.Crm.DeleteMultipleAccountForecastsAsync(string profileId, string? hotelId = null, string[]? periodCodes = null, CancellationToken ct = default)

Delete a preference from a profile

DELETE /crm/v1/profiles/{profileId}/hotels/{hotelId}/preferenceType/{preferenceType}/preferences/{preferenceCode} · hotel-scoped

Task<Status?> ctx.Ohip.Api.Crm.DeletePreferenceAsync(string profileId, string preferenceType, string preferenceCode, string? hotelId = null, string? registeredProperty = null, CancellationToken ct = default)

Forget or delete a profile by ID

DELETE /crm/v1/profiles/{profileId} · chain-level

Task<Status?> ctx.Ohip.Api.Crm.DeleteProfileAsync(string profileId, CancellationToken ct = default)

Delete profile attachment

DELETE /crm/v1/profiles/{profileId}/attachments/{attachmentId} · chain-level

Task<Status?> ctx.Ohip.Api.Crm.DeleteProfileAttachmentAsync(string profileId, string attachmentId, string[]? idContext = null, int?[]? idExtension = null, string[]? type = null, string[]? uniqueIdIdContext = null, int?[]? uniqueIdIdExtension = null, string[]? uniqueIdType = null, CancellationToken ct = default)

Delete a commission account from a profile

DELETE /crm/v1/profiles/{profileId}/commissionAccount · chain-level

Task<Status?> ctx.Ohip.Api.Crm.DeleteProfileCommissionAccountAsync(string profileId, string? hotelId = null, Action<CommissionAccountRequestBuilderDeleteQueryParameters>? query = null, CancellationToken ct = default)

Operation to delete a flex field.

DELETE /crm/v1/hotels/{hotelId}/profiles/{profileId}/flexFieldCode/{flexFieldCode} · hotel-scoped

Task<Status?> ctx.Ohip.Api.Crm.DeleteProfileFlexFieldValueAsync(string profileId, string flexFieldCode, string? hotelId = null, CancellationToken ct = default)

Delete a staged profile

DELETE /crm/v1/profiles/{profileId}/hotels/{hotelId}/stagedProfile · hotel-scoped

Task<Status?> ctx.Ohip.Api.Crm.DeleteStagedProfileAsync(string profileId, string? hotelId = null, CancellationToken ct = default)

Delete a suspended stay by the Suspended Stay Record ID.

DELETE /crm/v1/suspendedStayRecordId/{suspendedStayRecordId} · chain-level

Task<Status?> ctx.Ohip.Api.Crm.DeleteSuspendedStayAsync(string suspendedStayRecordId, CancellationToken ct = default)

Distribute preferences on a profile

PUT /crm/v1/profiles/{profileId}/preferences · chain-level

Task<Status?> ctx.Ohip.Api.Crm.DistributePreferenceAsync(string profileId, Preference body, CancellationToken ct = default)

Export Membership Award

GET /crm/v1/memberships/{membershipId}/award · chain-level

Task<Status?> ctx.Ohip.Api.Crm.ExportMembershipAwardAsync(string membershipId, Action<AwardRequestBuilderGetQueryParameters>? query = null, CancellationToken ct = default)

Extend E-Certificate Expiry date

POST /crm/v1/ecertificates/{certificateId}/extensions · chain-level

Task<Status?> ctx.Ohip.Api.Crm.ExtendECertificateAsync(string certificateId, ECertificateToExtend body, CancellationToken ct = default)

Extend Member Points set to Expire

PUT /crm/v1/memberships/{membershipId}/pointsToExpire · chain-level

Task<Status?> ctx.Ohip.Api.Crm.ExtendMemberPointsToExpireAsync(string membershipId, ExtendMemberPointsToExpire body, CancellationToken ct = default)

Fetch Account Forecasts by hotel

GET /crm/v1/profiles/{profileId}/hotels/{hotelId}/forecasts · hotel-scoped

Task<AccountForecasts?> ctx.Ohip.Api.Crm.GetAccountForecastsAsync(string profileId, string? hotelId = null, string? fromPeriodCode = null, int? limit = null, int? offset = null, CancellationToken ct = default)

Get city states

GET /crm/v1/address · chain-level

Task<CityState?> ctx.Ohip.Api.Crm.GetAddressAsync(string? cityName = null, string? code = null, bool? excludeNoCity = null, string? postalCode = null, string? state = null, string? streetAddress = null, CancellationToken ct = default)

Get airline transactions status

GET /crm/v1/airline/transactions · chain-level · deprecated

Task<AirlineTransactionsStatus?> ctx.Ohip.Api.Crm.GetAirlineTransactionsStatusAsync(string? batchId = null, string? batchIdType = null, Date? importDate = null, int? limit = null, int? offset = null, CancellationToken ct = default)

Get membership claims

GET /crm/v1/membershipClaims · chain-level

Task<MembershipClaims?> ctx.Ohip.Api.Crm.GetAllMembershipClaimsAsync(string? hotelId = null, Action<MembershipClaimsRequestBuilderGetQueryParameters>? query = null, CancellationToken ct = default)

Operation to fetch flex field values.

GET /crm/v1/profiles/{profileId}/flexFieldValues · chain-level

Task<FlexFieldsResponse?> ctx.Ohip.Api.Crm.GetAllProfileFlexFieldValuesAsync(string profileId, string[]? flexFieldCode = null, double? flexFieldId = null, string? flexFieldValue = null, string[]? hotelIds = null, int? limit = null, int? offset = null, CancellationToken ct = default)

Get available AR Addresses

GET /crm/v1/profileListOfValues/availableARAddresses · chain-level

Task<AvailableARAddresses?> ctx.Ohip.Api.Crm.GetAvailableARAddressesAsync(string? hotelId = null, string? accountId = null, string? accountIdContext = null, string? accountNo = null, string? accountType = null, string? profileId = null, CancellationToken ct = default)

Get Available Awards

GET /crm/v1/availableAwardsBasedOnType · chain-level

Task<AvailableAwardsBasedOnType?> ctx.Ohip.Api.Crm.GetAvailableAwardsBasedOnTypeAsync(Action<AvailableAwardsBasedOnTypeRequestBuilderGetQueryParameters>? query = null, CancellationToken ct = default)

Get available preferences

GET /crm/v1/profileListOfValues/availablePreferences · chain-level

Task<AvailablePreferences?> ctx.Ohip.Api.Crm.GetAvailablePreferencesAsync(string? hotelId = null, string? id = null, int? maxFetchSize = null, CancellationToken ct = default)

Get Profile awards and certificates

GET /crm/v1/profiles/{profileId}/awardsAndCertificates · chain-level

Task<AwardDetails?> ctx.Ohip.Api.Crm.GetAwardsAsync(string profileId, string? hotelId = null, string? profileContext = null, string? profileType = null, CancellationToken ct = default)

Get Awards to Grant

GET /crm/v1/awardsToGrant · chain-level

Task<AwardsToGrant?> ctx.Ohip.Api.Crm.GetAwardsToGrantAsync(Action<AwardsToGrantRequestBuilderGetQueryParameters>? query = null, CancellationToken ct = default)

Get cashiering details for a profile

GET /crm/v1/profiles/{profileId}/cashieringDetails · chain-level

Task<ProfileCashieringDetailsInfo?> ctx.Ohip.Api.Crm.GetCashieringDetailsAsync(string profileId, bool? fetchPaymentMethod = null, bool? fetchRoutingInstruction = null, string[]? hotelIds = null, string? idContext = null, string? idType = null, CancellationToken ct = default)

Get company profile by corporate ID

GET /crm/v1/companies/{corporateID} · chain-level

Task<Company?> ctx.Ohip.Api.Crm.GetCompanyProfileAsync(string corporateID, GetFetchInstructionsQueryParameterType[]? fetchInstructions = null, CancellationToken ct = default)

Get profiles with duplicate external subscriptions

GET /crm/v1/duplicateExternalSubscriptions · chain-level

Task<DuplicateExternalSubscriptions?> ctx.Ohip.Api.Crm.GetDuplicateExternalSubscriptionsAsync(string? databaseId = null, int? limit = null, int? offset = null, string? profileContext = null, string? profileId = null, string? profileType = null, CancellationToken ct = default)

Get profiles with duplicate OPERA Cloud subscriptions

GET /crm/v1/duplicateOPERASubscriptions · chain-level

Task<DuplicateOPERASubscriptions?> ctx.Ohip.Api.Crm.GetDuplicateOPERASubscriptionsAsync(string? databaseId = null, int? limit = null, int? offset = null, string? profileContext = null, string? profileId = null, string? profileType = null, CancellationToken ct = default)

Get e-certificate

GET /crm/v1/ecertificates · chain-level

Task<ECertificates?> ctx.Ohip.Api.Crm.GetECertificatesAsync(string? hotelId = null, Action<EcertificatesRequestBuilderGetQueryParameters>? query = null, CancellationToken ct = default)

Get Profiles for Enrollment

GET /crm/v1/profileForEnrollment · chain-level

Task<EnrollmentMatchProfiles?> ctx.Ohip.Api.Crm.GetEnrollmentMatchProfilesAsync(Action<ProfileForEnrollmentRequestBuilderGetQueryParameters>? query = null, CancellationToken ct = default)

Get Fulfillment Export Logs

GET /crm/v1/memberships/{membershipId}/fullfillmentExportLogs · chain-level · deprecated

Task<FulfillmentExportedLogs?> ctx.Ohip.Api.Crm.GetFulfillmentExportLogsAsync(string membershipId, string? id = null, string? idContext = null, string? idType = null, string? membershipType = null, CancellationToken ct = default)

Get guest profile by guest ID

GET /crm/v1/guests/{guestId} · chain-level

Task<Guest?> ctx.Ohip.Api.Crm.GetGuestProfileAsync(string guestId, string? hotelId = null, GetFetchInstructionsQueryParameterType[]? fetchInstructions = null, CancellationToken ct = default)

Get linked profiles

GET /crm/v1/profiles/{profileId}/links · chain-level

Task<LinkedProfiles?> ctx.Ohip.Api.Crm.GetLinkedProfilesAsync(string profileId, Action<LinksRequestBuilderGetQueryParameters>? query = null, CancellationToken ct = default)

Get profile matches

GET /crm/v1/profiles/{profileId}/matches · chain-level

Task<MatchedProfiles?> ctx.Ohip.Api.Crm.GetMatchProfilesAsync(string profileId, string? hotelId = null, string? idContext = null, string? idType = null, CancellationToken ct = default)

Get primary membership history details of a guest.

GET /crm/v1/memberHistory · chain-level

Task<MemberHistoryList?> ctx.Ohip.Api.Crm.GetMemberHistoryAsync(string? actionType = null, Date? fromDate = null, int? limit = null, string? membershipId = null, int? offset = null, Date? toDate = null, string? user = null, CancellationToken ct = default)

Get membership points to expire

GET /crm/v1/memberships/{membershipId}/pointsToExpire · chain-level

Task<MemberPointsToExpire?> ctx.Ohip.Api.Crm.GetMemberPointsToExpireAsync(string membershipId, int? limit = null, int? offset = null, CancellationToken ct = default)

Get membership points to expire

GET /crm/v1/membershipsCard/{membershipCardNo}/membershipType/{membershipCardType}/pointsToExpire · chain-level

Task<MemberPointsToExpireCollection?> ctx.Ohip.Api.Crm.GetMemberPointsToExpireByCardNoAsync(string membershipCardNo, string membershipCardType, CancellationToken ct = default)

Get Membership Award Export Information

GET /crm/v1/memberships/{membershipId}/awardExports · chain-level

Task<MembershipAwardExportInfo?> ctx.Ohip.Api.Crm.GetMembershipAwardExportInfoAsync(string membershipId, double? awardNumber = null, CancellationToken ct = default)

Get Membership Issued awards points

GET /crm/v1/hotels/{hotelId}/memberships/{membershipId} · hotel-scoped · deprecated

Task<MembershipAwardPointsByHotel?> ctx.Ohip.Api.Crm.GetMembershipAwardPointsByHotelAsync(string membershipId, string? hotelId = null, CancellationToken ct = default)

Get membership badges

GET /crm/v1/memberships/{membershipId}/badges · chain-level

Task<MembershipBadges?> ctx.Ohip.Api.Crm.GetMembershipBadgesAsync(string membershipId, int? limit = null, int? offset = null, CancellationToken ct = default)

Get membership card history information on a profile

GET /crm/v1/profiles/{profileId}/memberships/history · chain-level

Task<MemberCardHistoryList?> ctx.Ohip.Api.Crm.GetMembershipCardHistoryAsync(string profileId, int? limit = null, int? offset = null, CancellationToken ct = default)

Get membership claim

GET /crm/v1/membershipClaims/{claimId} · chain-level

Task<MembershipClaim?> ctx.Ohip.Api.Crm.GetMembershipClaimAsync(string claimId, GetFetchInstructionsQueryParameterType[]? fetchInstructions = null, string? id = null, string? idContext = null, string? type = null, CancellationToken ct = default)

Get membership claims

GET /crm/v1/memberships/{membershipId}/claims · chain-level

Task<MembershipClaims?> ctx.Ohip.Api.Crm.GetMembershipClaimsAsync(string membershipId, string? hotelId = null, Action<ClaimsRequestBuilderGetQueryParameters>? query = null, CancellationToken ct = default)

Get membership information on a profile

GET /crm/v1/profiles/{profileId}/memberships/info · chain-level

Task<MemberInformation?> ctx.Ohip.Api.Crm.GetMembershipDetailsAsync(string profileId, string? hotelId = null, Action<InfoRequestBuilderGetQueryParameters>? query = null, CancellationToken ct = default)

Get Membership Award list

GET /crm/v1/memberships/{membershipId}/awards · chain-level

Task<MembershipIssueAwards?> ctx.Ohip.Api.Crm.GetMembershipIssueAwardsListAsync(string membershipId, string? hotelId = null, string? awardBasedOn = null, string[]? awardCode = null, double? awardNumber = null, string? hotelBookingNumber = null, int? limit = null, string? membershipType = null, int? offset = null, CancellationToken ct = default)

Get membership points exception details

GET /crm/v1/membershipPointsExceptions · chain-level

Task<MemberPointsExceptions?> ctx.Ohip.Api.Crm.GetMembershipPointsExceptionsAsync(string? hotelId = null, Action<MembershipPointsExceptionsRequestBuilderGetQueryParameters>? query = null, CancellationToken ct = default)

Fetch membership promotions of a guest

GET /crm/v1/memberships/{membershipId}/promotions · chain-level

Task<MembershipPromotionsDetails?> ctx.Ohip.Api.Crm.GetMembershipPromotionsAsync(string membershipId, bool? includeInactive = null, CancellationToken ct = default)

Get Membership Reservation Activity

GET /crm/v1/membershipReservationActivity · chain-level

Task<MembershipReservationDetails?> ctx.Ohip.Api.Crm.GetMembershipReservationActivityAsync(string[]? hotelIds = null, string? membershipType = null, Date? propertyDate = null, string[]? roomClasses = null, CancellationToken ct = default)

Get membership segments

GET /crm/v1/memberships/{membershipId}/segments · chain-level

Task<MembershipSegmentsDetails?> ctx.Ohip.Api.Crm.GetMembershipSegmentsAsync(string membershipId, CancellationToken ct = default)

Get Membership Tier Projection

GET /crm/v1/membershipTierProjections · chain-level

Task<MembershipTierProjections?> ctx.Ohip.Api.Crm.GetMembershipTierProjectionsAsync(string? id = null, string? idContext = null, string? membershipId = null, string? membershipType = null, Date? projectionDate = null, GetProjectionTypeQueryParameterType? projectionType = null, string? type = null, CancellationToken ct = default)

Get a membership transaction

GET /crm/v1/membershipTransactions/{membershipTransactionId} · chain-level

Task<MembershipTransaction?> ctx.Ohip.Api.Crm.GetMembershipTransactionAsync(string membershipTransactionId, string? id = null, string? idContext = null, string? type = null, CancellationToken ct = default)

Fetch the Award Points Accrued for the current points transaction.

GET /crm/v1/membershipTransactions/{membershipTransactionId}/awardPoints · chain-level

Task<CalculatedPoints?> ctx.Ohip.Api.Crm.GetMembershipTransactionAwardPointsAsync(string membershipTransactionId, int? limit = null, int? offset = null, CancellationToken ct = default)

Get membership transaction exception details

GET /crm/v1/profiles/{profileId}/membershipTransactionExceptions · chain-level · deprecated

Task<MembershipTransactionExceptions?> ctx.Ohip.Api.Crm.GetMembershipTransactionExceptionsAsync(string profileId, string? hotelId = null, Action<MembershipTransactionExceptionsRequestBuilderGetQueryParameters>? query = null, CancellationToken ct = default)

getMembershipTransactionPointsRejectionReasons

Section titled “getMembershipTransactionPointsRejectionReasons”

Fetch the reason points were not awarded for a given points transaction.

GET /crm/v1/membershipTransactions/{membershipTransactionId}/pointRejectionReasons · chain-level

Task<PointsRejectionReasons?> ctx.Ohip.Api.Crm.GetMembershipTransactionPointsRejectionReasonsAsync(string membershipTransactionId, int? limit = null, int? offset = null, CancellationToken ct = default)

Fetch the rate details associated to current points transaction.

GET /crm/v1/membershipTransactions/{membershipTransactionId}/rates · chain-level

Task<Rates?> ctx.Ohip.Api.Crm.GetMembershipTransactionRatesAsync(string membershipTransactionId, int? limit = null, int? offset = null, CancellationToken ct = default)

Fetch the revenue details for the stay associated with current point transaction.

GET /crm/v1/membershipTransactions/{membershipTransactionId}/revenue · chain-level

Task<Revenues?> ctx.Ohip.Api.Crm.GetMembershipTransactionRevenueAsync(string membershipTransactionId, int? limit = null, int? offset = null, CancellationToken ct = default)

Get membership transactions

GET /crm/v1/memberships/{membershipId}/transactions · chain-level

Task<MembershipTransactionsSummary?> ctx.Ohip.Api.Crm.GetMembershipTransactionsSummaryAsync(string membershipId, CancellationToken ct = default)

Get membership transactions

GET /crm/v1/membershipsCard/{membershipCardNo}/membershipType/{membershipCardType}/transactions · chain-level

Task<MembershipTransactionsSummaryCollection?> ctx.Ohip.Api.Crm.GetMembershipTransactionsSummaryByCardNoAsync(string membershipCardNo, string membershipCardType, CancellationToken ct = default)

Fetch the Tier Points Accrued for the current points transaction

GET /crm/v1/membershipTransactions/{membershipTransactionId}/tierPoints · chain-level

Task<CalculatedPoints?> ctx.Ohip.Api.Crm.GetMembershipTransactionTierPointsAsync(string membershipTransactionId, int? limit = null, int? offset = null, CancellationToken ct = default)

Get membership usable coupons

GET /crm/v1/memberships/{membershipId}/usableCoupons · chain-level

Task<MembershipUsableCoupons?> ctx.Ohip.Api.Crm.GetMembershipUsableCouponsAsync(string membershipId, bool? expired = null, CancellationToken ct = default)

Get merge profiles snapshot

GET /crm/v1/profiles/{survivorProfileId}/merges/snapshot · chain-level

Task<MergedProfilesSnapshotDetails?> ctx.Ohip.Api.Crm.GetMergeProfilesSnapshotAsync(string survivorProfileId, Action<SnapshotRequestBuilderGetQueryParameters>? query = null, CancellationToken ct = default)

Get merge stage profile snapshot

GET /crm/v1/profiles/{survivorProfileId}/stageProfiles/snapshot · chain-level

Task<MergedStageProfileSnapshot?> ctx.Ohip.Api.Crm.GetMergeStageProfileSnapshotAsync(string survivorProfileId, string? hotelId = null, string? profileIdContext = null, string? profileIdType = null, string? resortProfileId = null, string? resortProfileIdContext = null, string? resortProfileIdType = null, CancellationToken ct = default)

Get preferences on a profile

GET /crm/v1/profiles/{profileId}/preferences · chain-level

Task<Preference?> ctx.Ohip.Api.Crm.GetPreferenceForProfileAsync(string profileId, string? hotelId = null, string[]? codes = null, string[]? id = null, string[]? idContext = null, string[]? type = null, CancellationToken ct = default)

Get profile by ID

GET /crm/v1/profiles/{profileId} · chain-level

Task<Profile?> ctx.Ohip.Api.Crm.GetProfileAsync(string profileId, string? hotelId = null, GetAllowedActionQueryParameterType[]? allowedAction = null, GetFetchInstructionsQueryParameterType[]? fetchInstructions = null, GetInstructionParameterTypeQueryParameterType[]? instructionParameterType = null, bool? logViewProfile = null, bool? markAsRecentlyAccessed = null, bool? showInactiveRoomOwners = null, string? systemCode = null, string[]? value = null, CancellationToken ct = default)

Get profile accounts

GET /crm/v1/profiles/{profileId}/accounts · chain-level

Task<ProfileAccounts?> ctx.Ohip.Api.Crm.GetProfileAccountsAsync(string profileId, string[]? hotelIds = null, string[]? idContext = null, string[]? type = null, CancellationToken ct = default)

Fetch profile activity log

GET /crm/v1/profiles/activityLog · chain-level

Task<ProfileActivityLog?> ctx.Ohip.Api.Crm.GetProfileActivityLogAsync(Action<ActivityLogRequestBuilderGetQueryParameters>? query = null, CancellationToken ct = default)

Get profile attachments

GET /crm/v1/profiles/{profileId}/attachments · chain-level

Task<ProfileAttachments?> ctx.Ohip.Api.Crm.GetProfileAttachmentsAsync(string profileId, string? attachedFileName = null, string? description = null, string? idContext = null, string? type = null, CancellationToken ct = default)

Get profile by external ID

GET /crm/v1/externalSystems/{extSystemCode}/profiles/{profileExternalId} · chain-level

Task<Profile?> ctx.Ohip.Api.Crm.GetProfileByExtIdAsync(string extSystemCode, string profileExternalId, string? hotelId = null, GetAllowedActionQueryParameterType[]? allowedAction = null, GetFetchInstructionsQueryParameterType[]? fetchInstructions = null, GetInstructionParameterTypeQueryParameterType[]? instructionParameterType = null, bool? logViewProfile = null, bool? showInactiveRoomOwners = null, string[]? value = null, CancellationToken ct = default)

Get commission account on a profile

GET /crm/v1/profiles/{profileId}/commissionAccount · chain-level

Task<ProfileCommissionAccountInfo?> ctx.Ohip.Api.Crm.GetProfileCommissionAccountAsync(string profileId, string[]? hotelIds = null, CancellationToken ct = default)

Operation to fetch flex field values.

GET /crm/v1/hotels/{hotelId}/profiles/{profileId}/flexFieldValues · hotel-scoped

Task<FlexFieldsResponse?> ctx.Ohip.Api.Crm.GetProfileFlexFieldValueAsync(string profileId, string? hotelId = null, string? flexFieldCode = null, double? flexFieldId = null, string? flexFieldValue = null, int? limit = null, int? offset = null, CancellationToken ct = default)

Fetch the profile Id if a unique guest profile Exists

GET /crm/v1/profileMatch · chain-level · deprecated

Task<ProfileMatch?> ctx.Ohip.Api.Crm.GetProfileMatchAsync(Action<ProfileMatchRequestBuilderGetQueryParameters>? query = null, CancellationToken ct = default)

Get potential profile matches

GET /crm/v1/profiles/profileMatches · chain-level · deprecated

Task<ProfileMatchType?> ctx.Ohip.Api.Crm.GetProfileMatchesAsync(Action<ProfileMatchesRequestBuilderGetQueryParameters>? query = null, CancellationToken ct = default)

Get Membership statistics

GET /crm/v1/profileMembershipStatistics · chain-level

Task<ProfileMembershipStatistics?> ctx.Ohip.Api.Crm.GetProfileMembershipStatisticsAsync(string? hotelId = null, Action<ProfileMembershipStatisticsRequestBuilderGetQueryParameters>? query = null, CancellationToken ct = default)

Get profile owners

GET /crm/v1/profiles/{profileId}/owners · chain-level

Task<ProfileOwnersDetail?> ctx.Ohip.Api.Crm.GetProfileOwnersAsync(string profileId, string[]? id = null, string[]? idContext = null, string[]? type = null, CancellationToken ct = default)

FetchProfileRelationships method provides the ability to retrieve a profile relationships for a profile based on the unique internal profile ID specified.

GET /crm/v1/profiles/{profileId}/relationships · chain-level

Task<ProfileRelationships?> ctx.Ohip.Api.Crm.GetProfileRelationshipsAsync(string profileId, bool? relationshipPrimaryProfile = null, CancellationToken ct = default)

Search for profile(s)

GET /crm/v1/profiles · chain-level · deprecated

Task<ProfileSummaries?> ctx.Ohip.Api.Crm.GetProfilesAsync(string? hotelId = null, Action<ProfilesRequestBuilderGetQueryParameters>? query = null, CancellationToken ct = default)

Search for profile(s)

GET /crm/v1/profilesByIds · chain-level

Task<ProfileDetails?> ctx.Ohip.Api.Crm.GetProfilesByIdsAsync(string? hotelId = null, string[]? corporateIds = null, string[]? externalReferenceIds = null, string[]? externalSystemCodes = null, GetFetchInstructionsQueryParameterType[]? fetchInstructions = null, GetInstructionParameterTypeQueryParameterType[]? instructionParameterType = null, string[]? instructionParameterValue = null, int?[]? limit = null, string[]? profileIds = null, CancellationToken ct = default)

Get profiles match list.

GET /crm/v1/profilesMatchList/profileType/{profileType} · chain-level

Task<ProfilesMatch?> ctx.Ohip.Api.Crm.GetProfilesMatchListAsync(string profileType, Action<WithProfileTypeItemRequestBuilderGetQueryParameters>? query = null, CancellationToken ct = default)

Get Profile Statistics

GET /crm/v1/profileStatistics · chain-level

Task<ProfileStatistics?> ctx.Ohip.Api.Crm.GetProfileStatisticsAsync(Action<ProfileStatisticsRequestBuilderGetQueryParameters>? query = null, CancellationToken ct = default)

Get Profile Transactions

GET /crm/v1/profileTransactions/{profileId} · chain-level

Task<ProfileTransactions?> ctx.Ohip.Api.Crm.GetProfileTransactionsAsync(string profileId, string? hotelId = null, string? confirmationNumber = null, Date? endDate = null, int? limit = null, int? offset = null, string? reference = null, Date? startDate = null, Date? transactionDate = null, CancellationToken ct = default)

Fetch recently accessed profiles

GET /crm/v1/recentlyAccessedProfiles · chain-level

Task<RecentlyAccessedProfiles?> ctx.Ohip.Api.Crm.GetRecentlyAccessedProfilesAsync(Date? accessDate = null, int? limit = null, CancellationToken ct = default)

Get reProcess stage records logs.

GET /crm/v1/reProcessStageRecords/logs · chain-level

Task<ReProcessStageRecordsLogInfo?> ctx.Ohip.Api.Crm.GetReProcessStageRecordsLogsAsync(Date? fromDate = null, string? jobId = null, int? limit = null, int? offset = null, int?[]? users = null, CancellationToken ct = default)

Get a staged profile

GET /crm/v1/stagedProfile/{id} · chain-level

Task<StagedProfileDetails?> ctx.Ohip.Api.Crm.GetStagedProfileAsync(string id, string? hotelId = null, GetFetchInstructionsQueryParameterType[]? fetchInstructions = null, string[]? idContext = null, string[]? type = null, CancellationToken ct = default)

Get potential stage profile matches

GET /crm/v1/profiles/stageProfileMatches · chain-level

Task<StageProfileMatchesType?> ctx.Ohip.Api.Crm.GetStagedProfileMatchesAsync(string? hotelId = null, string? resortNameId = null, CancellationToken ct = default)

Get staged profiles

GET /crm/v1/stagedProfiles · chain-level · deprecated

Task<StagedProfiles?> ctx.Ohip.Api.Crm.GetStagedProfilesAsync(Action<StagedProfilesRequestBuilderGetQueryParameters>? query = null, CancellationToken ct = default)

FetchStayHistory method provides stay history and future reservations of a profile based on the unique internal ID specified.

GET /crm/v1/profiles/{profileId}/stayHistory · chain-level

Task<ProfileStayHistory?> ctx.Ohip.Api.Crm.GetStayHistoryAsync(string profileId, string? hotelId = null, GetFetchInstructionsQueryParameterType[]? fetchInstructions = null, bool? includePurgeProfiles = null, int?[]? limit = null, bool? markAsRecentlyAccessed = null, CancellationToken ct = default)

Get Stay Record Detail.

GET /crm/v1/stayRecord/{stayRecordId} · chain-level

Task<StayRecordDetail?> ctx.Ohip.Api.Crm.GetStayRecordDetailAsync(string stayRecordId, GetFetchInstructionsQueryParameterType[]? fetchInstructions = null, CancellationToken ct = default)

Fetch Suspended Profile Addresses

GET /crm/v1/suspendedAddresses · chain-level · deprecated

Task<SuspendedAddresses?> ctx.Ohip.Api.Crm.GetSuspendedAddressesAsync(string? hotelId = null, string? countryCode = null, string? firstName = null, string? matchCode = null, string? name = null, string? profileType = null, Date? validateDate = null, CancellationToken ct = default)

Get suspended profiles match errors summary information grouped by property.

GET /crm/v1/suspendedProfiles/errorsSummary/property · chain-level

Task<SuspendedProfilesErrorsSummaryByPropertyInfo?> ctx.Ohip.Api.Crm.GetSuspendedProfilesErrorsStatByPropertyAsync(Date? insertDate = null, int? limit = null, int? offset = null, CancellationToken ct = default)

Get suspended profiles errors summary details

GET /crm/v1/suspendedProfiles/errorsSummary · chain-level

Task<SuspendedProfilesErrorsSummaryInfo?> ctx.Ohip.Api.Crm.GetSuspendedProfilesErrorsSummaryAsync(string[]? hotelIds = null, Date? insertDate = null, int? limit = null, int? offset = null, CancellationToken ct = default)

getSuspendedProfilesErrorsSummaryByProfileType

Section titled “getSuspendedProfilesErrorsSummaryByProfileType”

Get suspended profiles match errors summary information grouped by profile type.

GET /crm/v1/suspendedProfiles/errorsSummary/profileType · chain-level

Task<SuspendedProfilesErrorsSummaryByProfileTypeInfo?> ctx.Ohip.Api.Crm.GetSuspendedProfilesErrorsSummaryByProfileTypeAsync(Date? insertDate = null, int? limit = null, int? offset = null, CancellationToken ct = default)

getSuspendedProfilesErrorsSummaryByProperty

Section titled “getSuspendedProfilesErrorsSummaryByProperty”

Get suspended profiles match errors summary information grouped by property.

POST /crm/v1/suspendedProfiles/errorsSummary/property · chain-level

Task<SuspendedProfilesErrorsSummaryByPropertyInfo?> ctx.Ohip.Api.Crm.GetSuspendedProfilesErrorsSummaryByPropertyAsync(ErrorDescType body, CancellationToken ct = default)

Get suspended profile match statistics information.

GET /crm/v1/suspendedProfiles/matchStats · chain-level

Task<SuspendedProfilesMatchStats?> ctx.Ohip.Api.Crm.GetSuspendedProfilesMatchStatsAsync(string? hotelId = null, Date? insertDateFrom = null, Date? insertDateTo = null, int? limit = null, int? offset = null, GetProfileTypeQueryParameterType? profileType = null, CancellationToken ct = default)

getSuspendedProfilesMatchStatsByMatchCriteria

Section titled “getSuspendedProfilesMatchStatsByMatchCriteria”

Get suspended profiles match statistics information grouped by match criteria.

GET /crm/v1/suspendedProfiles/matchStats/matchCriteria · chain-level

Task<SuspendedProfilesMatchStatsByMatchCriteria?> ctx.Ohip.Api.Crm.GetSuspendedProfilesMatchStatsByMatchCriteriaAsync(int? limit = null, int? offset = null, CancellationToken ct = default)

getSuspendedProfilesMatchStatsByProfileType

Section titled “getSuspendedProfilesMatchStatsByProfileType”

Get suspended profiles match statistics information grouped by profile type.

GET /crm/v1/suspendedProfiles/matchStats/profileType · chain-level

Task<SuspendedProfilesMatchStatsByProfileType?> ctx.Ohip.Api.Crm.GetSuspendedProfilesMatchStatsByProfileTypeAsync(Date? insertDate = null, int? limit = null, int? offset = null, CancellationToken ct = default)

Get suspended profiles match statistics information grouped by property.

GET /crm/v1/suspendedProfiles/matchStats/property · chain-level

Task<SuspendedProfilesMatchStatsByProperty?> ctx.Ohip.Api.Crm.GetSuspendedProfilesMatchStatsByPropertyAsync(Date? insertDate = null, int? limit = null, int? offset = null, CancellationToken ct = default)

getSuspendedProfilesMatchStatsByPropertyAndProfileType

Section titled “getSuspendedProfilesMatchStatsByPropertyAndProfileType”

Get suspended profiles match statistics information grouped by property and profile type.

GET /crm/v1/suspendedProfiles/matchStats/propertyAndProfileType · chain-level

Task<SuspendedProfilesMatchStatsByPropertyAndProfileType?> ctx.Ohip.Api.Crm.GetSuspendedProfilesMatchStatsByPropertyAndProfileTypeAsync(Date? insertDate = null, int? limit = null, int? offset = null, CancellationToken ct = default)

Get suspended profiles match statistics summary information filtering by threshold type.

GET /crm/v1/suspendedProfiles/matchStats/threshold · chain-level

Task<SuspendedProfilesMatchStatsByThreshold?> ctx.Ohip.Api.Crm.GetSuspendedProfilesMatchStatsByThresholdAsync(string? hotelId = null, int? limit = null, int? offset = null, GetProfileTypeQueryParameterType? profileType = null, string? regionCode = null, GetThresholdQueryParameterType? threshold = null, CancellationToken ct = default)

Get a Suspended Stay by the Suspended Stay Record ID.

GET /crm/v1/suspendedStayRecordId/{suspendedStayRecordId} · chain-level

Task<SuspendedStayType?> ctx.Ohip.Api.Crm.GetSuspendedStayAsync(string suspendedStayRecordId, CancellationToken ct = default)

Get Suspended Stays

GET /crm/v1/suspendedStays · chain-level

Task<SuspendedStaySummariesType?> ctx.Ohip.Api.Crm.GetSuspendedStaysAsync(string? hotelId = null, Action<SuspendedStaysRequestBuilderGetQueryParameters>? query = null, CancellationToken ct = default)

Get suspended stays errors summary

GET /crm/v1/suspendedStaysErrorsSummary · chain-level

Task<SuspendedStaysErrorsSummaryResponse?> ctx.Ohip.Api.Crm.GetSuspendedStaysErrorsSummaryAsync(string? hotelId = null, bool? getByProperty = null, int? limit = null, int? offset = null, CancellationToken ct = default)

Issue an OTHER type award

POST /crm/v1/issueOtherAwards · chain-level

Task<IssuedAward?> ctx.Ohip.Api.Crm.IssueOtherAwardsAsync(OtherAwardsIssueCriteria body, CancellationToken ct = default)

Merge two profiles by ID

POST /crm/v1/profiles/{survivorProfileId}/merges · chain-level

Task<Status?> ctx.Ohip.Api.Crm.MergeProfilesAsync(string survivorProfileId, ProfileToBeMerged body, CancellationToken ct = default)

Operation to check status of ProfileMembership service

GET /crm/v1/services/profileMembership/status · chain-level

Task<OperaVersion?> ctx.Ohip.Api.Crm.PingMembershipServiceAsync(CancellationToken ct = default)

Operation to check status of ProfileExternal service

GET /crm/v1/services/profileExternal/status · chain-level

Task<OperaVersion?> ctx.Ohip.Api.Crm.PingProfileExternalServiceAsync(CancellationToken ct = default)

Operation to check the status of profile service

GET /crm/v1/services/profile/status · chain-level

Task<OperaVersion?> ctx.Ohip.Api.Crm.PingProfileServiceAsync(CancellationToken ct = default)

Operation to check the status of ProfileStats service

GET /crm/v1/services/profileStats/status · chain-level

Task<OperaVersion?> ctx.Ohip.Api.Crm.PingProfileStatsServiceAsync(CancellationToken ct = default)

Create account forecast in a hotel

POST /crm/v1/profiles/{profileId}/hotels/{hotelId}/forecasts · hotel-scoped

Task<Status?> ctx.Ohip.Api.Crm.PostAccountForecastAsync(string profileId, ForecastsInformation body, string? hotelId = null, CancellationToken ct = default)

This API facilitates creation of a company/agent/group/source profile in OPERA.

POST /crm/v1/companies · chain-level

Task<Status?> ctx.Ohip.Api.Crm.PostCompanyProfileAsync(Company body, CancellationToken ct = default)

Create e-certificate

POST /crm/v1/ecertificates · chain-level

Task<Status?> ctx.Ohip.Api.Crm.PostECertificateAsync(ECertificateGeneration body, CancellationToken ct = default)

Create an Enrollment

POST /crm/v1/enrollments · chain-level

Task<Status?> ctx.Ohip.Api.Crm.PostEnrollmentAsync(Enrollment body, CancellationToken ct = default)

Create a guest, contact or employee profile in OPERA

POST /crm/v1/guests · chain-level

Task<Status?> ctx.Ohip.Api.Crm.PostGuestProfileAsync(Guest body, CancellationToken ct = default)

Create membership on a profile

POST /crm/v1/profiles/{profileId}/memberships · chain-level

Task<Status?> ctx.Ohip.Api.Crm.PostMembershipAsync(string profileId, Membership body, CancellationToken ct = default)

Create membership Claim

POST /crm/v1/membershipClaims · chain-level

Task<Status?> ctx.Ohip.Api.Crm.PostMembershipClaimAsync(MembershipClaim body, CancellationToken ct = default)

Generate membership number

POST /crm/v1/memberships/{membershipType}/membershipNumbers · chain-level

Task<Status?> ctx.Ohip.Api.Crm.PostMembershipNumberAsync(string membershipType, MembershipNumber body, CancellationToken ct = default)

Create membership promotion of a guest

POST /crm/v1/memberships/{membershipId}/promotions · chain-level

Task<Status?> ctx.Ohip.Api.Crm.PostMembershipPromotionAsync(string membershipId, MembershipPromotionDetails body, CancellationToken ct = default)

Post a membership transaction

POST /crm/v1/memberships/{membershipId}/transactions · chain-level

Task<Status?> ctx.Ohip.Api.Crm.PostMembershipTransactionAsync(string membershipId, MembershipTransaction body, CancellationToken ct = default)

Add preferences to a profile

POST /crm/v1/profiles/{profileId}/preferences · chain-level

Task<Status?> ctx.Ohip.Api.Crm.PostPreferenceAsync(string profileId, Preference body, CancellationToken ct = default)

Create a profile

POST /crm/v1/profiles · chain-level

Task<Status?> ctx.Ohip.Api.Crm.PostProfileAsync(Profile body, CancellationToken ct = default)

Add a commission account on a profile

POST /crm/v1/profiles/{profileId}/commissionAccount · chain-level

Task<Status?> ctx.Ohip.Api.Crm.PostProfileCommissionAccountAsync(string profileId, ProfileCommissionAccount body, CancellationToken ct = default)

Operation to create a flex field with value for a module.

POST /crm/v1/hotels/{hotelId}/profiles/{profileId}/flexFieldValues · hotel-scoped

Task<Status?> ctx.Ohip.Api.Crm.PostProfileFlexFieldValueAsync(string profileId, FlexFieldValues body, string? hotelId = null, CancellationToken ct = default)

Assign profile owners

POST /crm/v1/profiles/{profileId}/owners · chain-level

Task<Status?> ctx.Ohip.Api.Crm.PostProfileOwnersAsync(string profileId, ProfileOwners body, CancellationToken ct = default)

CreateProfileRelationship method provides the ability to create profile relationship based on the request criteria of SourceProfileID,TargetProfileID and SourceRelationType specified.

POST /crm/v1/profiles/{sourceProfileId}/relationships/{targetProfileId} · chain-level

Task<Status?> ctx.Ohip.Api.Crm.PostProfileRelationshipAsync(string sourceProfileId, string targetProfileId, ProfileRelationship body, CancellationToken ct = default)

This API facilitates uploading stage records to LCS.

POST /crm/v1/stayRecord · chain-level

Task<List<InstanceLink>?> ctx.Ohip.Api.Crm.PostStayRecordAsync(StayRecordDetails body, CancellationToken ct = default)

Process a staged profile

PUT /crm/v1/processStagedProfile · chain-level

Task<ProcessedStagedProfile?> ctx.Ohip.Api.Crm.ProcessStagedProfileAsync(StagedProfileCriteria body, CancellationToken ct = default)

Update account forecast in a hotel by period code

PUT /crm/v1/profiles/{profileId}/hotels/{hotelId}/forecasts/periodCodes/{periodCode} · hotel-scoped

Task<ChangeAccountForecastsRS?> ctx.Ohip.Api.Crm.PutAccountForecastAsync(string profileId, string periodCode, ForecastsInformation body, string? hotelId = null, CancellationToken ct = default)

Update membership points exceptions

PUT /crm/v1/membershipPointsExceptions · chain-level

Task<Status?> ctx.Ohip.Api.Crm.PutMembershipPointsExceptionsAsync(MembershipPointsExceptions body, CancellationToken ct = default)

Change membership promotion of a guest

PUT /crm/v1/memberships/{membershipId}/promotions/{promotionCode} · chain-level

Task<Status?> ctx.Ohip.Api.Crm.PutMembershipPromotionAsync(string membershipId, string promotionCode, MembershipPromotionDetails body, CancellationToken ct = default)

Ability to edit Orphan Stay Records

PUT /crm/v1/stayRecords/{stayRecordId} · chain-level

Task<Status?> ctx.Ohip.Api.Crm.PutOrphanStayRecordsAsync(double stayRecordId, OrphanStayRecord body, CancellationToken ct = default)

Process Suspended Stays

PUT /crm/v1/processSuspendedStays · chain-level

Task<SuspendedStayErrorsType?> ctx.Ohip.Api.Crm.PutProcessSuspendedStaysAsync(SuspendedStayDetails body, CancellationToken ct = default)

Update a profile by ID

PUT /crm/v1/profiles/{profileId} · chain-level

Task<Profile?> ctx.Ohip.Api.Crm.PutProfileAsync(string profileId, Profile body, CancellationToken ct = default)

Update by external ID

PUT /crm/v1/externalSystems/{extSystemCode}/profiles/{profileExternalId} · chain-level

Task<Profile?> ctx.Ohip.Api.Crm.PutProfileByExtIdAsync(string extSystemCode, string profileExternalId, Profile body, CancellationToken ct = default)

Operation to update flex field value.

PUT /crm/v1/hotels/{hotelId}/profiles/{profileId}/flexFieldValues · hotel-scoped

Task<Status?> ctx.Ohip.Api.Crm.PutProfileFlexFieldValueAsync(string profileId, FlexFieldValues body, string? hotelId = null, CancellationToken ct = default)

ChangeProfileRelationship method provides the ability to update(delete and add) profile relationship based on the request criteria of SourceProfileID , TargetProfileID, To Be ChangedProfileID and S…

PUT /crm/v1/profiles/{sourceProfileId}/relationships/{targetProfileId} · chain-level

Task<Status?> ctx.Ohip.Api.Crm.PutProfileRelationshipAsync(string sourceProfileId, string targetProfileId, ProfileRelationshipToBeChanged body, CancellationToken ct = default)

Updates a list of matchIds to skip or don’t skip profile match.

PUT /crm/v1/profilesMatchList · chain-level

Task<Status?> ctx.Ohip.Api.Crm.PutProfilesMatchListAsync(MatchListType body, CancellationToken ct = default)

Update a Suspended Stay by the Suspended Stay Record ID.

PUT /crm/v1/suspendedStayRecordId/{suspendedStayRecordId} · chain-level

Task<Status?> ctx.Ohip.Api.Crm.PutSuspendedStayAsync(string suspendedStayRecordId, SuspendedStayType body, CancellationToken ct = default)

Redeem an award

PUT /crm/v1/profiles/{profileId}/awards/redeem · chain-level

Task<Award?> ctx.Ohip.Api.Crm.RedeemAwardAsync(string profileId, Award body, CancellationToken ct = default)

DeleteProfileRelationship method provides the ability to delete profile relationship based on the request criteria of SourceProfileID,TargetProfileID and SourceRelationType specified.

DELETE /crm/v1/profiles/{sourceProfileId}/relationships/{targetProfileId} · chain-level

Task<Status?> ctx.Ohip.Api.Crm.RemoveProfileRelationshipAsync(string sourceProfileId, string targetProfileId, bool? primary = null, string? sourceRelation = null, string? sourceRelationDescription = null, string? targetRelation = null, string? targetRelationDescription = null, CancellationToken ct = default)

Re-Process a single Stage Record

PUT /crm/v1/hotels/{hotelId}/profiles/{profileId}/reprocess · hotel-scoped

Task<ReProcessStageRecord?> ctx.Ohip.Api.Crm.ReProcessStageRecordAsync(string profileId, string? hotelId = null, CancellationToken ct = default)

Re-Process all Stage Records

PUT /crm/v1/reProcessStageRecords · chain-level

Task<ReProcessStageRecords?> ctx.Ohip.Api.Crm.ReProcessStageRecordsAsync(ReProcessStageRecordsCriteria body, CancellationToken ct = default)

Fetch the profile Id if a unique guest profile Exists

POST /crm/v1/profileMatch/searches · chain-level

Task<ProfileMatch?> ctx.Ohip.Api.Crm.SearchProfileMatchAsync(SearchProfileMatchRequest body, CancellationToken ct = default)

Get potential profile matches

POST /crm/v1/profiles/profileMatches/searches · chain-level

Task<ProfileMatchType?> ctx.Ohip.Api.Crm.SearchProfileMatchesAsync(SearchProfileMatchesRequest body, CancellationToken ct = default)

Search for profile(s)

POST /crm/v1/profiles/searches · chain-level

Task<ProfileSummaries?> ctx.Ohip.Api.Crm.SearchProfilesAsync(SearchProfilesRequest body, CancellationToken ct = default)

Get staged profiles

POST /crm/v1/stagedProfiles/searches · chain-level

Task<StagedProfiles?> ctx.Ohip.Api.Crm.SearchStagedProfilesAsync(SearchStagedProfilesRequest body, CancellationToken ct = default)

Set profile commission account

PUT /crm/v1/profiles/{profileId}/commissionAccount · chain-level

Task<Status?> ctx.Ohip.Api.Crm.SetProfileCommissionAccountAsync(string profileId, ProfileCommissionAccount body, CancellationToken ct = default)

Create an Email.

POST /crm/v1/profiles/{profileId}/emails · chain-level

Task<Status?> ctx.Ohip.Api.Crm.StoreEmailAsync(string profileId, EmailMessageType body, CancellationToken ct = default)

Synchronize profile subscriptions

PUT /crm/v1/synchronizeProfileSubscriptions · chain-level

Task<Status?> ctx.Ohip.Api.Crm.SynchronizeProfileSubscriptionsAsync(ProfileSubscriptionsToSynchronize body, CancellationToken ct = default)

Validate email Id from a third party vendor.

POST /crm/v1/validateEmail · chain-level

Task<ValidateEmailStatus?> ctx.Ohip.Api.Crm.ValidateEmailAsync(ValidateEmail body, CancellationToken ct = default)

Validate forget profiles

PUT /crm/v1/validateForgetProfiles · chain-level

Task<ValidatedForgetProfiles?> ctx.Ohip.Api.Crm.ValidateForgetProfilesAsync(ForgetProfilesCriteria body, CancellationToken ct = default)

Validate phone number from a third party vendor.

POST /crm/v1/validatePhone · chain-level

Task<ValidatePhoneStatus?> ctx.Ohip.Api.Crm.ValidatePhoneAsync(ValidatePhone body, CancellationToken ct = default)

Check future past bookings

PUT /crm/v1/profiles/{profileId}/reservations/action/validate · chain-level

Task<FuturePastBookings?> ctx.Ohip.Api.Crm.ValidateReservationsForProfileAsync(string profileId, FuturePastBookingsCriteria body, CancellationToken ct = default)

Verify E-Certificate Number

PUT /crm/v1/ecertificates/{certificateId}/action/validate · chain-level

Task<VerifiedECertificate?> ctx.Ohip.Api.Crm.VerifyECertificateAsync(string certificateId, ECertificateToVerify body, CancellationToken ct = default)