{
"swagger": "2.0",
"info": {
"title": "OPERA Cloud Customer Relationship Management Outbound API",
"description": "APIs to cater for Customer Relationship Management external (outbound) functionality with OPERA. These APIs facilitate various operations related to getting data from an external system, and inserting it into OPERA.
Compatible with OPERA Cloud release 26.2.0.0.
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.
", "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" } }, "schemes": [ "https" ], "basePath": "/crm/v1", "produces": [ "application/json" ], "paths": { "/externalSystems/{extSystemCode}/chains/{chainCode}/externalProfiles": { "get": { "summary": "Retrieve profiles from external system", "description": "Use this API when you want to search for profiles in an external system. The response will include a list of profiles that exist in the external system, based on your search criteria. For example, you want to see if the external system has a profile for Mr David Smith. The GET API will send a request to external system, and the response will include a list of any profiles that exist for Mr Davis Smith in that system. If a profile does exist, and the user would like to 'download' that profile into OPERA, you would then proceed to use the downlodExternalProfiles API.", "operationId": "getExternalProfiles", "responses": { "200": { "headers": { "Content-Language": { "type": "string", "description": "Audience language", "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*", "x-example": "en-GB" } }, "description": "Response object for fetching profiles from external CRM System. This object contains profile primary details, profile summary details, master info list containing code and description used as lookup for description.", "schema": { "$ref": "#/definitions/externalProfiles" } }, "204": { "description": "ExternalProfiles not found." }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "parameters": [ { "name": "extSystemCode", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 2000, "description": "Profiles will be fetched from this External System." }, { "name": "chainCode", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 2000, "description": "Chain code from which the External Profiles will be fetched." }, { "name": "externalDatabaseId", "in": "query", "required": false, "description": "Profile will be fetched from this External database.", "type": "string" }, { "name": "hotelId", "in": "query", "required": false, "description": "Hotel Code, It is used to filter hotel specific children to this specific hotel code.", "type": "string" }, { "name": "profileType", "in": "query", "required": false, "type": "string", "description": "The types of Profile handled by the web service.", "uniqueItems": true, "enum": [ "Guest", "Agent", "Company", "Group", "Source", "Employee", "Hotel", "Vendor", "Contact", "Purge", "BusinessHeader", "BillingAccount", "Activity", "Potential", "Account" ] }, { "name": "profileId", "in": "query", "type": "array", "collectionFormat": "multi", "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.", "items": { "type": "string" }, "required": false }, { "name": "profileIdType", "in": "query", "type": "array", "collectionFormat": "multi", "description": "A reference to the type of object defined by the UniqueID element.", "items": { "type": "string" }, "required": false }, { "name": "name", "in": "query", "required": false, "description": "Family name, last name or Company Name.", "type": "string" }, { "name": "givenName", "in": "query", "required": false, "description": "Given name, first name or names.", "type": "string" }, { "name": "city", "in": "query", "required": false, "description": "City (e.g., Dublin), town, or postal station (i.e., a postal service territory, often used in a military address).", "type": "string" }, { "name": "postalCode", "in": "query", "required": false, "description": "Post Office Code number.", "type": "string" }, { "name": "state", "in": "query", "required": false, "description": "State or Province name (e.g., Texas).", "type": "string" }, { "name": "countryCode", "in": "query", "required": false, "description": "Code for a country or a nationality.", "type": "string" }, { "name": "keyword", "in": "query", "required": false, "description": "Keyword associated to the profile.", "type": "string" }, { "name": "communication", "in": "query", "required": false, "description": "Any communication method associated to the profile such as phone, fax, eMail id.", "type": "string" }, { "name": "membershipNumber", "in": "query", "required": false, "description": "Membership number associated to the profile.", "type": "string" }, { "name": "membershipType", "in": "query", "required": false, "description": "Member Type of searching profile.", "type": "string" }, { "name": "arNumber", "in": "query", "required": false, "description": "Account Receivable associated to the profile.", "type": "string" }, { "name": "birthDate", "in": "query", "required": false, "description": "Date of birth", "type": "string", "format": "date" }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/Accept-Language" } ], "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "ProfileExternal" ] } }, "/externalSystems/{extSystemCode}/chains/{chainCode}/externalProfiles/{profileExternalId}": { "get": { "summary": "Download a Profile from external system", "description": "After searching for profiles in an external system using getExternalProfiles, proceed to use this API knowing the external profile ID in the path. The result will be a new profile created in OPERA.OperationId:downloadExternalProfile
", "operationId": "downloadExternalProfile", "parameters": [ { "name": "extSystemCode", "in": "path", "required": true, "description": "If supplied, profile will be downloaded from this External System, otherwise it will be decided automatically based on the configuration.", "type": "string" }, { "name": "chainCode", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 2000, "description": "Chain code from which the External Profiles will be downloaded." }, { "name": "profileExternalId", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 2000, "description": "Unique Identifier of the Profile on the External System." }, { "name": "externalDatabaseId", "in": "query", "required": false, "description": "Profile will be downloaded from this External database.", "type": "string" }, { "name": "hotelId", "in": "query", "required": false, "description": "Hotel Code, It is used to filter hotel specific children to this specific hotel code.", "type": "string" }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-transactionId" }, { "$ref": "#/parameters/Accept-Language" } ], "responses": { "200": { "headers": { "Content-Language": { "type": "string", "description": "Audience language", "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*", "x-example": "en-GB" } }, "description": "Response object for the OPERA profile resulted from the download.", "schema": { "$ref": "#/definitions/profile" } }, "204": { "description": "downloadExternalProfile not found." }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "ProfileExternal" ] } }, "/externalSystems/{extSystemCode}/chains/{chainCode}/enrollments": { "post": { "summary": "Create an Enrollment", "description": "Use this API when you have a guest profile and you want to enroll that guest profile into a membership program in an external system.OperationId:postEnrollment
", "operationId": "postEnrollment", "parameters": [ { "name": "extSystemCode", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 2000, "description": "Profile will be downloaded from this External System." }, { "name": "chainCode", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 2000, "description": "Chain code from which the External Profiles will be downloaded." }, { "name": "enrollment", "in": "body", "required": true, "description": "Request object to create profile enrollment.", "schema": { "allOf": [ { "$ref": "#/definitions/enrollment" } ] } }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-transactionId" }, { "$ref": "#/parameters/Accept-Language" } ], "responses": { "201": { "headers": { "Content-Language": { "type": "string", "description": "Audience language", "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*", "x-example": "en-GB" }, "Location": { "type": "string", "description": "Location of newly created resource" } }, "description": "HATEOAS links which help the consumer to navigate to resources", "schema": { "$ref": "#/definitions/enrollment" } }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "ProfileMembership" ] } }, "/externalSystems/{extSystemCode}/playerStatistics/{profileId}": { "get": { "summary": "Retrieve player statistics", "description": "Request for the fetch player statistics WS operationOperationId:getPlayerStatistics
", "operationId": "getPlayerStatistics", "parameters": [ { "name": "profileId", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 2000, "description": "Unique Identifier for profile ID" }, { "name": "extSystemCode", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 2000, "description": "External System Code" }, { "name": "playerId", "in": "query", "required": false, "description": "Unique Identifier for PlayerID.", "type": "string" }, { "name": "hotelId", "in": "query", "required": false, "description": "Code of the Hotel.", "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.", "type": "string" }, { "name": "reservationIdContext", "in": "query", "required": false, "description": "Used to identify the source of the identifier (e.g., IATA, ABTA).", "type": "string" }, { "name": "reservationIdType", "in": "query", "required": false, "description": "A reference to the type of object defined by the UniqueID element.", "type": "string" }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/Accept-Language" } ], "responses": { "200": { "headers": { "Content-Language": { "type": "string", "description": "Audience language", "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*", "x-example": "en-GB" } }, "description": "Response of the WS operation to fetch player statistics.", "schema": { "$ref": "#/definitions/fetchPlayerStatisticsRS" }, "examples": { "application/json": { "profiles": { "profileInfo": [ { "profileIdList": [ { "type": "", "idContext": "a", "id": "a" } ], "profile": { "customer": { "personName": [ { "namePrefix": "a", "givenName": "Thomas", "middleName": "B", "surname": "Smith", "nameSuffix": "a", "nameTitle": "Mr", "nameTitleSuffix": -100000000, "envelopeGreeting": "", "salutation": "", "nameType": "PRIMARY", "language": "E" } ], "anonymization": { "anonymizationStatus": "REQUESTED", "anonymizationDate": "2019-09-03T14:56:18.21Z" }, "citizenCountry": { "name": "United States of America", "code": "US" }, "identifications": { "identificationInfo": [ { "identification": { "idType": "PASSPORT", "idNumber": "C03005988", "idNumberMasked": "C030059XX", "issuedCountry": "USA", "issuedDate": "2009-11-30", "issuedPlace": "New York", "expirationDate": "2019-11-29", "registeredProperty": "", "primaryInd": false, "orderSequence": -100000000 } } ] }, "profession": "Engineer", "alienInfo": { "alienRegistrationNo": "", "immigrationStatus": "a", "visaValidityType": "a" }, "birthCountry": { "name": "United States of America", "code": "US" }, "businessTitle": "Dr", "gender": "MALE", "birthDate": "2000-01-01", "birthDateMasked": "", "language": "EN", "nationality": "US", "nationalityDescription": "a", "customerValue": "a", "creditRating": "", "vipStatus": "2", "vipDescription": "Gold", "birthPlace": "New York", "privateProfile": false, "blacklist": false }, "company": { "companyName": "Example Corporation, Ltd.", "companyName2": "a", "companyName3": "a", "alternateName": "a", "alternateLanguage": "E", "businessLocale": "a", "iATAInfo": { "iATACompany": "a", "iATAConsortia": "a" }, "businessTitle": "a", "currencyCode": "USD", "currencySymbol": "a", "decimalPlaces": -100000000, "language": "", "nationality": "US", "nationalityDescription": "United States of America", "commissionCode": "", "creditRating": "", "corporateIdType": "", "vipStatus": "2", "vipDescription": "Gold VIP", "blacklist": false }, "profileImage": { "language": "", "imageSet": "a", "sequenceId": -100000000, "imageStyle": "FULL", "imageType": "a", "hotelCode": "", "imageURL": "a", "description": "a", "imageOrder": -100000000, "website": "a" }, "addresses": { "addressInfo": [ { "uniqueId": { "type": "", "idContext": "a", "id": "a" }, "address": { "addressLine": [ "500 Oracle Parkway" ], "cityName": "Redwood Shores", "postalCode": "94065", "cityExtension": "a", "county": "a", "state": "CA", "country": { "name": "United States of America", "code": "US" }, "language": "E", "type": "", "typeDescription": "", "primaryInd": false, "barCode": "a", "createDateTime": "2019-09-03T14:56:18.227Z", "creatorId": "a", "lastModifyDateTime": "2019-09-03T14:56:18.228Z", "lastModifierId": "a" } } ] }, "telephones": { "telephoneInfo": [ { "uniqueId": { "type": "", "idContext": "a", "id": "a" }, "telephone": { "phoneTechType": "PHONE", "phoneUseType": "MOBILE", "phoneUseTypeDescription": "Mobile Phone Number", "phoneNumber": "+1 415 555 0100", "extension": "2", "primaryInd": false, "orderSequence": -100000000, "createDateTime": "2019-09-03T14:56:18.23Z", "creatorId": "1234", "lastModifyDateTime": "2019-09-03T14:56:18.231Z", "lastModifierId": "1234" } } ] }, "emails": { "emailInfo": [ { "uniqueId": { "type": "", "idContext": "a", "id": "a" }, "email": { "emailAddress": "eg@example.com", "type": "BUSINESSEMAIL", "typeDescription": "Business Email Address", "emailFormat": "HTML", "primaryInd": false, "orderSequence": -100000000, "createDateTime": "2019-09-03T14:56:18.234Z", "creatorId": "1232", "lastModifyDateTime": "2019-09-03T14:56:18.234Z", "lastModifierId": "1232" } } ] }, "comments": { "commentInfo": [ { "uniqueId": { "type": "", "idContext": "a", "id": "a" }, "comment": { "text": { "value": "", "language": "" }, "commentTitle": "a", "notificationLocation": "", "type": "", "typeDescription": "a", "internal": false, "confidential": false, "overrideInternal": false, "protectDescription": false, "hotelCode": "", "actionType": "", "actionDate": "0101-01-01", "createDateTime": "2019-09-03T14:56:18.239Z", "creatorId": "a", "lastModifyDateTime": "2019-09-03T14:56:18.239Z", "lastModifierId": "a" } } ] }, "profileMemberships": { "profileMembership": [ { "comment": { "text": { "value": "", "language": "" } }, "newMembershipId": "", "nameOnCard": "Thomas Smith", "programDescription": "Hotel Plus Membership", "membershipLevel": "Gold", "membershipLevelDescription": "Gold Level", "membershipClass": "MEM", "earningPreference": "POINTS", "inactive": false, "benefits": [ { "code": "", "message": "a", "inactive": false } ], "tierAdministration": "DISABLED", "downgrade": "GRACE", "reIssueNewCard": "PENDING", "excludeFromBatch": false, "upgradeDescription": "a", "downgradeDescription": "a", "rating": "", "membershipEnrollmentCode": "", "memberStatus": "", "currentPoints": -100000000, "pointsLabel": "a", "enrollmentSource": "", "enrollmentResort": "", "preferredCard": false, "membershipId": "", "membershipType": "", "primaryMembershipYn": "a", "membershipIdNo": -100000000, "centralSetup": false, "signupDate": "0101-01-01", "effectiveDate": "0101-01-01", "expireDate": "0101-01-01", "expireDateExclusiveIndicator": false, "orderSequence": -100000000, "createDateTime": "2019-09-03T14:56:18.247Z", "creatorId": "a", "lastModifyDateTime": "2019-09-03T14:56:18.248Z", "lastModifierId": "a" } ] }, "preferenceCollection": { "preferenceType": [ { "preference": [ {} ], "preferenceType": "", "preferenceTypeDescription": "", "sequence": "", "maxQuantity": -100000000, "availableQuantity": -100000000, "maxResortUsedQuantity": -100000000, "reservationPreference": false, "createDateTime": "2019-09-03T14:56:18.249Z", "creatorId": "a", "lastModifyDateTime": "2019-09-03T14:56:18.249Z", "lastModifierId": "a" } ] }, "keywords": { "keyword": [ { "keywordDetail": { "newKeyword": "a" }, "type": "", "keyword": "a" } ] }, "profileIndicators": [ { "indicatorName": "a", "count": -100000000 } ], "lastStayInfo": { "lastVisit": "0101-01-01", "lastRoom": "", "lastRate": { "amount": -100000000, "currencyCode": "aaa" }, "totalStay": -100000000 }, "profileAccessType": { "chainCode": "a", "croCode": "a", "hotelCode": "a", "sharedLevel": "GLOBAL" }, "profileRestrictions": { "reason": "", "reasonDescription": "a", "restricted": false }, "mailingActions": { "mailingAction": [ { "code": "", "description": "a" } ], "active": false, "totalRows": -100000000 }, "privacyInfo": { "marketResearchParticipation": false, "lastPrivacyPromptDate": "2000-01-01", "infoFromThirdParty": false, "autoEnrollLoyaltyProgram": false, "allowPhone": false, "allowSMS": false, "allowEmail": false, "optInMailingList": false, "optInMarketResearch": false, "optInThirdParty": false, "optInAutoEnrollmentMember": false, "optInPhone": false, "optInSms": false, "optInEmail": false }, "userDefinedFields": { "characterUDFs": [ { "name": "a", "value": "a", "altname": "a" } ], "numericUDFs": [ { "name": "a", "value": -100000000, "altname": "a" } ], "dateUDFs": [ { "name": "a", "value": "0101-01-01", "altname": "a" } ] }, "localizationGuestType": "a", "profileType": "GUEST", "statusCode": "ACTIVE", "registeredProperty": "", "requestForHotel": "", "protectedBy": "a", "createDateTime": "2000-09-03T14:56:18.259Z", "creatorId": "1200", "lastModifyDateTime": "2000-09-03T14:56:18.259Z", "lastModifierId": "1200", "markAsRecentlyAccessed": false, "markForHistory": false, "hasCommission": false } } ], "totalRows": -100000000 }, "links": [ { "href": "", "rel": "", "method": "GET", "operationId": "", "templated": false, "targetSchema": "", "title": "" } ] } } }, "204": { "description": "PlayerStatistics not found." }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "ProfileExternal" ] } }, "/externalSystems/{extSystemCode}/gamingOffers/{membershipNo}": { "get": { "summary": "Get offers that can be attached for a profile", "description": "Use this API when you have a guest profile and you want to get the offers available from an external system.OperationId:getGamingOffers
", "operationId": "getGamingOffers", "parameters": [ { "name": "membershipNo", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 2000, "description": "" }, { "name": "extSystemCode", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 2000, "description": "" }, { "name": "hotelId", "in": "query", "required": false, "description": "Hotel Code for which the offers will be fetched.", "type": "string" }, { "name": "startDate", "in": "query", "required": false, "type": "string", "format": "date" }, { "name": "endDate", "in": "query", "required": false, "type": "string", "format": "date" }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/Accept-Language" } ], "responses": { "200": { "headers": { "Content-Language": { "type": "string", "description": "Audience language", "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*", "x-example": "en-GB" } }, "description": "Response object for fetching offers from external system.", "schema": { "$ref": "#/definitions/gamingOffers" }, "examples": { "application/json": { "profiles": { "profileInfo": [ { "profileIdList": [ { "type": "", "idContext": "a", "id": "a" } ], "profile": { "customer": { "personName": [ { "namePrefix": "a", "givenName": "Thomas", "middleName": "B", "surname": "Smith", "nameSuffix": "a", "nameTitle": "Mr", "nameTitleSuffix": -100000000, "envelopeGreeting": "", "salutation": "", "nameType": "PRIMARY", "language": "E" } ], "anonymization": { "anonymizationStatus": "REQUESTED", "anonymizationDate": "2019-09-03T14:56:18.21Z" }, "citizenCountry": { "name": "United States of America", "code": "US" }, "identifications": { "identificationInfo": [ { "identification": { "idType": "PASSPORT", "idNumber": "C03005988", "idNumberMasked": "C030059XX", "issuedCountry": "USA", "issuedDate": "2009-11-30", "issuedPlace": "New York", "expirationDate": "2019-11-29", "registeredProperty": "", "primaryInd": false, "orderSequence": -100000000 } } ] }, "profession": "Engineer", "alienInfo": { "alienRegistrationNo": "", "immigrationStatus": "a", "visaValidityType": "a" }, "birthCountry": { "name": "United States of America", "code": "US" }, "businessTitle": "Dr", "gender": "MALE", "birthDate": "2000-01-01", "birthDateMasked": "", "language": "EN", "nationality": "US", "nationalityDescription": "a", "customerValue": "a", "creditRating": "", "vipStatus": "2", "vipDescription": "Gold", "birthPlace": "New York", "privateProfile": false, "blacklist": false }, "company": { "companyName": "Example Corporation, Ltd.", "companyName2": "a", "companyName3": "a", "alternateName": "a", "alternateLanguage": "E", "businessLocale": "a", "iATAInfo": { "iATACompany": "a", "iATAConsortia": "a" }, "businessTitle": "a", "currencyCode": "USD", "currencySymbol": "a", "decimalPlaces": -100000000, "language": "", "nationality": "US", "nationalityDescription": "United States of America", "commissionCode": "", "creditRating": "", "corporateIdType": "", "vipStatus": "2", "vipDescription": "Gold VIP", "blacklist": false }, "profileImage": { "language": "", "imageSet": "a", "sequenceId": -100000000, "imageStyle": "FULL", "imageType": "a", "hotelCode": "", "imageURL": "a", "description": "a", "imageOrder": -100000000, "website": "a" }, "addresses": { "addressInfo": [ { "uniqueId": { "type": "", "idContext": "a", "id": "a" }, "address": { "addressLine": [ "500 Oracle Parkway" ], "cityName": "Redwood Shores", "postalCode": "94065", "cityExtension": "a", "county": "a", "state": "CA", "country": { "name": "United States of America", "code": "US" }, "language": "E", "type": "", "typeDescription": "", "primaryInd": false, "barCode": "a", "createDateTime": "2019-09-03T14:56:18.227Z", "creatorId": "a", "lastModifyDateTime": "2019-09-03T14:56:18.228Z", "lastModifierId": "a" } } ] }, "telephones": { "telephoneInfo": [ { "uniqueId": { "type": "", "idContext": "a", "id": "a" }, "telephone": { "phoneTechType": "PHONE", "phoneUseType": "MOBILE", "phoneUseTypeDescription": "Mobile Phone Number", "phoneNumber": "+1 415 555 0100", "extension": "2", "primaryInd": false, "orderSequence": -100000000, "createDateTime": "2019-09-03T14:56:18.23Z", "creatorId": "1234", "lastModifyDateTime": "2019-09-03T14:56:18.231Z", "lastModifierId": "1234" } } ] }, "emails": { "emailInfo": [ { "uniqueId": { "type": "", "idContext": "a", "id": "a" }, "email": { "emailAddress": "eg@example.com", "type": "BUSINESSEMAIL", "typeDescription": "Business Email Address", "emailFormat": "HTML", "primaryInd": false, "orderSequence": -100000000, "createDateTime": "2019-09-03T14:56:18.234Z", "creatorId": "1232", "lastModifyDateTime": "2019-09-03T14:56:18.234Z", "lastModifierId": "1232" } } ] }, "comments": { "commentInfo": [ { "uniqueId": { "type": "", "idContext": "a", "id": "a" }, "comment": { "text": { "value": "", "language": "" }, "commentTitle": "a", "notificationLocation": "", "type": "", "typeDescription": "a", "internal": false, "confidential": false, "overrideInternal": false, "protectDescription": false, "hotelCode": "", "actionType": "", "actionDate": "0101-01-01", "createDateTime": "2019-09-03T14:56:18.239Z", "creatorId": "a", "lastModifyDateTime": "2019-09-03T14:56:18.239Z", "lastModifierId": "a" } } ] }, "profileMemberships": { "profileMembership": [ { "comment": { "text": { "value": "", "language": "" } }, "newMembershipId": "", "nameOnCard": "Thomas Smith", "programDescription": "Hotel Plus Membership", "membershipLevel": "Gold", "membershipLevelDescription": "Gold Level", "membershipClass": "MEM", "earningPreference": "POINTS", "inactive": false, "benefits": [ { "code": "", "message": "a", "inactive": false } ], "tierAdministration": "DISABLED", "downgrade": "GRACE", "reIssueNewCard": "PENDING", "excludeFromBatch": false, "upgradeDescription": "a", "downgradeDescription": "a", "rating": "", "membershipEnrollmentCode": "", "memberStatus": "", "currentPoints": -100000000, "pointsLabel": "a", "enrollmentSource": "", "enrollmentResort": "", "preferredCard": false, "membershipId": "", "membershipType": "", "primaryMembershipYn": "a", "membershipIdNo": -100000000, "centralSetup": false, "signupDate": "0101-01-01", "effectiveDate": "0101-01-01", "expireDate": "0101-01-01", "expireDateExclusiveIndicator": false, "orderSequence": -100000000, "createDateTime": "2019-09-03T14:56:18.247Z", "creatorId": "a", "lastModifyDateTime": "2019-09-03T14:56:18.248Z", "lastModifierId": "a" } ] }, "preferenceCollection": { "preferenceType": [ { "preference": [ {} ], "preferenceType": "", "preferenceTypeDescription": "", "sequence": "", "maxQuantity": -100000000, "availableQuantity": -100000000, "maxResortUsedQuantity": -100000000, "reservationPreference": false, "createDateTime": "2019-09-03T14:56:18.249Z", "creatorId": "a", "lastModifyDateTime": "2019-09-03T14:56:18.249Z", "lastModifierId": "a" } ] }, "keywords": { "keyword": [ { "keywordDetail": { "newKeyword": "a" }, "type": "", "keyword": "a" } ] }, "profileIndicators": [ { "indicatorName": "a", "count": -100000000 } ], "lastStayInfo": { "lastVisit": "0101-01-01", "lastRoom": "", "lastRate": { "amount": -100000000, "currencyCode": "aaa" }, "totalStay": -100000000 }, "profileAccessType": { "chainCode": "a", "croCode": "a", "hotelCode": "a", "sharedLevel": "GLOBAL" }, "profileRestrictions": { "reason": "", "reasonDescription": "a", "restricted": false }, "mailingActions": { "mailingAction": [ { "code": "", "description": "a" } ], "active": false, "totalRows": -100000000 }, "privacyInfo": { "marketResearchParticipation": false, "lastPrivacyPromptDate": "2000-01-01", "infoFromThirdParty": false, "autoEnrollLoyaltyProgram": false, "allowPhone": false, "allowSMS": false, "allowEmail": false, "optInMailingList": false, "optInMarketResearch": false, "optInThirdParty": false, "optInAutoEnrollmentMember": false, "optInPhone": false, "optInSms": false, "optInEmail": false }, "userDefinedFields": { "characterUDFs": [ { "name": "a", "value": "a", "altname": "a" } ], "numericUDFs": [ { "name": "a", "value": -100000000, "altname": "a" } ], "dateUDFs": [ { "name": "a", "value": "0101-01-01", "altname": "a" } ] }, "localizationGuestType": "a", "profileType": "GUEST", "statusCode": "ACTIVE", "registeredProperty": "", "requestForHotel": "", "protectedBy": "a", "createDateTime": "2000-09-03T14:56:18.259Z", "creatorId": "1200", "lastModifyDateTime": "2000-09-03T14:56:18.259Z", "lastModifierId": "1200", "markAsRecentlyAccessed": false, "markForHistory": false, "hasCommission": false } } ], "totalRows": -100000000 }, "links": [ { "href": "", "rel": "", "method": "GET", "operationId": "", "templated": false, "targetSchema": "", "title": "" } ] } } }, "204": { "description": "GamingOffers not found." }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "ProfileExternal" ] } }, "/hotels/{hotelId}/travelAgents/{iataNumber}": { "get": { "summary": "Validate IATA number.", "description": "This API will validate and check an IATA number.OperationId:checkIataNumber
", "operationId": "checkIataNumber", "parameters": [ { "name": "iataNumber", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 2000, "description": "IATA Number" }, { "name": "hotelId", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 2000, "description": "Hotel Id" }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-transactionId" }, { "$ref": "#/parameters/Accept-Language" } ], "responses": { "200": { "headers": { "Content-Language": { "type": "string", "description": "Audience language", "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*", "x-example": "en-GB" } }, "description": "Response object to fetch IATA Number validation for Travel Agency Profile.", "schema": { "$ref": "#/definitions/iataNumberDetails" } }, "204": { "description": "checkIataNumber not found." }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "ProfileExternal" ] } }, "/externalSystems/{extSystemCode}/profiles/{externalProfileId}/profileAwards": { "put": { "summary": "Redeem an award", "description": "Redeem an award that exists on a profile.OperationId:redeemAward
", "operationId": "redeemAward", "parameters": [ { "name": "extSystemCode", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 2000, "description": "Profile will be downloaded from this External System." }, { "name": "externalProfileId", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 2000, "description": "" }, { "name": "award", "in": "body", "required": true, "description": "Request object to redeem award.", "schema": { "allOf": [ { "$ref": "#/definitions/award" } ] } }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-transactionId" }, { "$ref": "#/parameters/Accept-Language" } ], "responses": { "200": { "headers": { "Content-Language": { "type": "string", "description": "Audience language", "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*", "x-example": "en-GB" }, "Location": { "type": "string", "description": "Location of newly created resource" } }, "description": "Response object for redeem award.", "schema": { "$ref": "#/definitions/award" } }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "ProfileMembership" ] } }, "/externalSystems/{extSystemCode}/memberships/{membershipType}/membershipIDs": { "post": { "summary": "Generate membership number", "description": "This API will generate a new membership number.OperationId:postMembershipNumber
", "operationId": "postMembershipNumber", "parameters": [ { "name": "extSystemCode", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 2000, "description": "Profile will be downloaded from this External System." }, { "name": "membershipType", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 2000, "description": "" }, { "name": "membershipNumber", "in": "body", "required": true, "description": "Request object for generating membership number.", "schema": { "allOf": [ { "$ref": "#/definitions/membershipNumber" } ] } }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-transactionId" }, { "$ref": "#/parameters/Accept-Language" } ], "responses": { "201": { "headers": { "Content-Language": { "type": "string", "description": "Audience language", "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*", "x-example": "en-GB" }, "Location": { "type": "string", "description": "Location of newly created resource" } }, "description": "HATEOAS links which help the consumer to navigate to resources", "schema": { "$ref": "#/definitions/status" } }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "Profile" ] } }, "/externalSystems/{extSystemCode}/profiles/{externalProfileId}/memberships": { "get": { "summary": "Get membership information on a profile", "description": "Use this API to retrieve membership details on a profile.OperationId:getMembershipDetails
This API allows a time span of 90 days.
", "operationId": "getMembershipDetails", "parameters": [ { "name": "extSystemCode", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 2000, "description": "Profile will be downloaded from this External System." }, { "name": "externalProfileId", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 2000, "description": "" }, { "name": "operaProfileId", "in": "query", "type": "array", "collectionFormat": "multi", "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.", "items": { "type": "string" }, "required": false }, { "name": "membershipType", "in": "query", "required": false, "description": "The type of the membership.", "type": "string" }, { "name": "membershipId", "in": "query", "required": false, "description": "The card number associated with this membership.", "type": "string" }, { "name": "hotelId", "in": "query", "required": false, "description": "Property from which the membership stay information was received.", "type": "string" }, { "name": "startDate", "in": "query", "required": false, "type": "string", "format": "date" }, { "name": "endDate", "in": "query", "required": false, "type": "string", "format": "date" }, { "name": "mode", "in": "query", "required": false, "type": "string", "description": "Whether member info search will pertain to transaction dates/ stay dates/ points credit dates.", "uniqueItems": true, "enum": [ "TransactionDate", "StayBeginDate", "StayEndDate", "PointsCreditDate" ] }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/x-transactionId" }, { "$ref": "#/parameters/Accept-Language" } ], "responses": { "200": { "headers": { "Content-Language": { "type": "string", "description": "Audience language", "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*", "x-example": "en-GB" } }, "description": "Response object for member info.", "schema": { "$ref": "#/definitions/memberInformation" } }, "204": { "description": "MembershipDetails not found." }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "ProfileMembership" ] } }, "/validatedAddresses": { "get": { "summary": "Retrive valid addresses from a third party vendor.", "description": "Use this API when you want to validate address from a third party vendor. The response will be a list of addresses with its address ID based on the search criteria.OperationId:getValidatedAddresses
", "operationId": "getValidatedAddresses", "parameters": [ { "name": "addressText", "in": "query", "required": true, "description": "The suggestion that should be presented to the user as a possible match to their input.", "type": "string" }, { "name": "country", "in": "query", "required": true, "description": "The ID of the address recieved as part of an address search validation.", "type": "string" }, { "name": "language", "in": "query", "required": false, "description": "The preferred language for results. This should be a 2 or 4 character language code.", "type": "string" }, { "name": "timeoutSeconds", "in": "query", "required": false, "description": "Maximum time you are prepared to wait for a response.", "type": "integer" }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/Accept-Language" } ], "responses": { "200": { "headers": { "Content-Language": { "type": "string", "description": "Audience language", "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*", "x-example": "en-GB" } }, "description": "Response list of address validations based on supplied criteria", "schema": { "$ref": "#/definitions/validatedAddresses" } }, "204": { "description": "ValidatedAddresses not found." }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "ProfileExternal" ] } }, "/validatedAddresses/{externalAddressId}": { "get": { "summary": "Get full Address information from third party system for a given external Address ID. The external Address ID is fetched from valdatedAddresses service.", "description": "Use this API when you want to fetch full address information for a given address Id.OperationId:getValidatedAddress
", "operationId": "getValidatedAddress", "parameters": [ { "name": "externalAddressId", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 2000, "description": "" }, { "name": "timeoutSeconds", "in": "query", "required": false, "description": "Maximum time you are prepared to wait for a response.", "type": "integer" }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/Accept-Language" } ], "responses": { "200": { "headers": { "Content-Language": { "type": "string", "description": "Audience language", "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*", "x-example": "en-GB" } }, "description": "Response address returned form the external vendor based on supplied criteria", "schema": { "$ref": "#/definitions/validatedAddress" } }, "204": { "description": "ValidatedAddress not found." }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "ProfileExternal" ] } }, "/externalSystems/{extSystemCode}/chains/{chainCode}/validateMembershipNumber": { "get": { "summary": "Validate Membership Number attached to a membership", "description": "Use this API when you want to validate membership numbers from external system.OperationId:validateMembershipNumber
", "operationId": "validateMembershipNumber", "parameters": [ { "name": "chainCode", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 2000, "description": "" }, { "name": "extSystemCode", "in": "path", "required": true, "type": "string", "minLength": 1, "maxLength": 2000, "description": "" }, { "name": "membershipNo", "in": "query", "required": true, "description": "Indicates membership number of the guest", "type": "string" }, { "name": "membershipType", "in": "query", "required": true, "description": "Membership type for which point calculation process is to be run.", "type": "string" }, { "name": "hotelId", "in": "query", "required": false, "description": "Hotel code from which the membership code belongs to", "type": "string" }, { "$ref": "#/parameters/authKey" }, { "$ref": "#/parameters/externalData" }, { "$ref": "#/parameters/x-app-key" }, { "$ref": "#/parameters/x-request-id" }, { "$ref": "#/parameters/x-originating-application" }, { "$ref": "#/parameters/Accept-Language" } ], "responses": { "200": { "headers": { "Content-Language": { "type": "string", "description": "Audience language", "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*", "x-example": "en-GB" } }, "description": "Type for response for external validation of membership number", "schema": { "$ref": "#/definitions/validateMembershipNumber" } }, "204": { "description": "validateMembershipNumber not found." }, "400": { "$ref": "#/responses/400" }, "401": { "$ref": "#/responses/401" }, "403": { "$ref": "#/responses/403" }, "404": { "$ref": "#/responses/404" }, "405": { "$ref": "#/responses/405" }, "406": { "$ref": "#/responses/406" }, "413": { "$ref": "#/responses/413" }, "414": { "$ref": "#/responses/414" }, "415": { "$ref": "#/responses/415" }, "500": { "$ref": "#/responses/500" }, "502": { "$ref": "#/responses/502" }, "503": { "$ref": "#/responses/503" } }, "consumes": [ "application/json;charset=UTF-8" ], "produces": [ "application/json;charset=UTF-8" ], "tags": [ "ProfileExternal" ] } } }, "parameters": { "externalData": { "name": "externalData", "type": "string", "description": "Pass this header as true, if payload needs DVM", "in": "header" }, "authKey": { "name": "authorization", "description": "Bearer token that needs to be passed which is generated post user authentication", "type": "string", "in": "header", "required": true }, "x-app-key": { "name": "x-app-key", "description": "Client or Partner's Application Key", "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}$", "in": "header", "required": true }, "x-request-id" : { "name" : "x-request-id", "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}", "description" : "Request Id of an incoming request", "in" : "header" }, "x-originating-application" : { "name" : "x-originating-application", "type" : "string", "description" : "Customer's Integration Application Id", "in" : "header" }, "x-transactionId": { "name": "x-transactionId", "description": "Transaction Id", "type": "string", "in": "header" }, "Accept-Language": { "name": "Accept-Language", "type": "string", "description": "Language code", "in": "header" } }, "responses": { "400": { "description": "Bad Request", "schema": { "$ref": "#/definitions/exceptionDetailType" } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Resource not found", "schema": { "$ref": "#/definitions/exceptionDetailType" } }, "405": { "description": "Method not allowed" }, "406": { "description": "Not acceptable." }, "413": { "description": "Request Entity Too Large" }, "414": { "description": "Request URI Too Large" }, "415": { "description": "Unsupported Media Type" }, "500": { "description": "System Error", "schema": { "$ref": "#/definitions/exceptionDetailType" } }, "502": { "description": "Bad Gateway" }, "503": { "description": "Service Unavailable" } }, "definitions": { "exceptionDetailType": { "title": "Error Detail", "description": "Complex type that contains error details for a REST call.", "type": "object", "properties": { "type": { "type": "string", "description": "Absolute URI [RFC3986] that identifies the problem type. When dereferenced, it SHOULD provide a human-readable summary of the problem (for example, using HTML)." }, "title": { "type": "string", "description": "Short, human-readable summary of the problem. The summary SHOULD NOT change for subsequent occurrences of the problem, except for purposes of localization." }, "status": { "type": "integer", "description": "HTTP status code for this occurrence of the problem, set by the origin server." }, "detail": { "type": "string", "description": "Human-readable description specific to this occurrence of the problem." }, "instance": { "type": "string", "description": "Absolute URI that identifies the specific occurrence of the problem. It may or may not provide additional information if dereferenced." }, "o:errorCode": { "type": "string", "description": "Application error code, which is different from HTTP error code." }, "o:errorPath": { "type": "string", "description": "Path to the problem at the resource or property level." }, "o:errorDetails": { "description": "Details of the error message, consisting of a hierarchical tree structure.", "type": "array", "items": { "$ref": "#/definitions/errorInstance" } }, "links": { "$ref": "#/definitions/links" } } }, "errorInstance": { "title": "Error Instance Details", "description": "Complex type that contains error instance details for a REST call.", "type": "object", "properties": { "type": { "type": "string", "description": "Absolute URI [RFC3986] that identifies the problem type. When dereferenced, it SHOULD provide a human-readable summary of the problem (for example, using HTML)." }, "title": { "type": "string", "description": "Short, human-readable summary of the problem. The summary SHOULD NOT change for subsequent occurrences of the problem, except for purposes of localization." }, "status": { "type": "integer", "description": "HTTP status code for this occurrence of the problem, set by the origin server." }, "detail": { "type": "string", "description": "Human-readable description specific to this occurrence of the problem." }, "instance": { "type": "string", "description": "Absolute URI that identifies the specific occurrence of the problem. It may or may not provide additional information if dereferenced." }, "o:errorCode": { "type": "string", "description": "Application error code, which is different from HTTP error code." }, "o:errorPath": { "type": "string", "description": "Path to the problem at the resource or property level." } } }, "instanceLink": { "type": "object", "description": "Metadata describing link description objects that MAY appear in the JSON instance representation.", "properties": { "href": { "description": "URI [RFC3986] or URI Template [RFC6570]. If the value is set to URI Template, then the \"templated\" property must be set to true.", "type": "string" }, "rel": { "description": "Name of the link relation that, in addition to the type property, can be used to retrieve link details. For example, href or profile.", "type": "string" }, "templated": { "description": "Boolean flag that specifies that \"href\" property is a URI or URI Template. If the property is a URI template, set this value to true. By default, this value is false.", "type": "boolean", "default": false }, "method": { "description": "HTTP method for requesting the target of the link.", "type": "string", "enum": [ "GET", "POST", "PUT", "DELETE", "PATCH", "OPTIONS", "HEAD" ] }, "targetSchema": { "description": "Link to the metadata of the resource, such as JSON-schema, that describes the resource expected when dereferencing the target resource..", "type": "string" }, "operationId": { "description": "The operationId of the path you can call to follow this link. This allows you to look up not only the path and method, but the description of that path and any parameters you need to supply.", "type": "string" }, "title": { "description": "Exact copy of the \"summary\" field on the linked operation.", "type": "string" } } }, "links": { "type": "array", "items": { "$ref": "#/definitions/instanceLink" } }, "profileType": { "type": "object", "description": "Type provides the detailed information about the profile and its children.", "properties": { "customer": { "description": "Detailed customer information for this profile.", "$ref": "#/definitions/customerType" }, "company": { "description": "Detailed company information for this profile.", "$ref": "#/definitions/companyType" }, "profileImage": { "description": "The profile image.", "$ref": "#/definitions/imageSetType" }, "addresses": { "description": "List of customer addresses.", "type": "object", "properties": { "addressInfo": { "description": "Collection of Detailed information on an address for the customer.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/addressInfoType" } }, "totalRows": { "description": "Total number of rows queried", "type": "integer" } } }, "businessSegments": { "description": "Business/Market Segment associated to the profile.", "type": "array", "maxItems": 4000, "items": { "type": "string", "minLength": 0, "maxLength": 20 } }, "territory": { "description": "Territory associated to the profile.", "type": "string", "minLength": 0, "maxLength": 40 }, "telephones": { "description": "List of Telephone Number Information", "type": "object", "properties": { "telephoneInfo": { "description": "Collection of Detailed information on telephone/fax for the customer.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/telephoneInfoType" } }, "totalRows": { "description": "Total number of rows queried", "type": "integer" } } }, "emails": { "description": "List of email address for the customer.", "type": "object", "properties": { "emailInfo": { "description": "Collection of Detailed information on an eMail address for the customer.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/emailInfoType" } }, "totalRows": { "description": "Total number of rows queried", "type": "integer" } } }, "comments": { "description": "List of Notes for the customer.", "type": "object", "properties": { "commentInfo": { "description": "Collection of Detailed information on comments for the customer.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/commentInfoType" } }, "allRowsFetched": { "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" }, "totalRows": { "description": "Total number of rows queried", "type": "integer" } } }, "profileMemberships": { "description": "List of loyalty program(s) the profile is subscribed to.", "type": "object", "properties": { "profileMembership": { "description": "Collection of Detailed information on memberships for the customer.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/profileMembershipType" } }, "totalRows": { "description": "Total number of rows queried", "type": "integer" } } }, "preferenceCollection": { "description": "List of customer preferences.", "type": "object", "properties": { "preferenceType": { "description": "Collection of Detailed information on preferences of the customer.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/preferenceTypeType" } }, "totalRows": { "description": "Total number of rows queried", "type": "integer" } } }, "keywords": { "description": "List of customer keywords.", "type": "object", "properties": { "keyword": { "description": "Collection of keywords attached to the profile.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/keywordType" } }, "allRowsFetched": { "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" }, "totalRows": { "description": "Total number of rows queried", "type": "integer" } } }, "profileIndicators": { "description": "Indicators of additional information attached to the profile", "$ref": "#/definitions/indicatorsType" }, "lastStayInfo": { "description": "Information on last stay of the profile.", "$ref": "#/definitions/lastStayInfoType" }, "profileAccessType": { "description": "Detailed information on access type associated with the profile.", "$ref": "#/definitions/profileAccessType" }, "profileRestrictions": { "description": "Detailed information on restrictions associated with the profile.", "$ref": "#/definitions/profileRestrictions" }, "mailingActions": { "description": "Contains collection of mailing action list associated with the profile", "$ref": "#/definitions/mailingActionsType" }, "privacyInfo": { "description": "Contains privacy related information associated with the profile", "$ref": "#/definitions/privacyInfoType" }, "userDefinedFields": { "description": "Collections of user defined fields.", "$ref": "#/definitions/userDefinedFieldsType" }, "localizationGuestType": { "description": "Localization Guest Type assocaited to the profile.", "type": "string", "minLength": 0, "maxLength": 20 }, "eligibleForFiscalFolio": { "description": "Eligible for Fiscal Folio/Payload generation.", "type": "string", "minLength": 0, "maxLength": 20 }, "profileType": { "description": "Type of profile such as Guest, Agent, Company, Group, Source, Employee, Hotel, Vendor or Contact.", "$ref": "#/definitions/profileTypeType" }, "statusCode": { "description": "Status of the profile. Active/Inactive", "$ref": "#/definitions/profileStatusType" }, "registeredProperty": { "description": "Hotel which this profile is registered with. This attribute is not used for configuration.", "type": "string", "minLength": 0, "maxLength": 20 }, "requestForHotel": { "description": "Hotel which this profile is to be registered. This attribute is only used during creation of profile.", "type": "string", "minLength": 0, "maxLength": 20 }, "protectedBy": { "description": "What level this profile is protected.", "type": "string", "minLength": 0, "maxLength": 40 }, "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 resposible for the creation.", "type": "string", "minLength": 0, "maxLength": 200 }, "lastModifyDateTime": { "description": "Time stamp of last modification.", "type": "string", "format": "date-time" }, "lastModifierId": { "description": "Identifies the last software system or person to modify a record.", "type": "string", "minLength": 0, "maxLength": 200 }, "markAsRecentlyAccessed": { "description": "Mark this profile as recently accessed.", "type": "boolean" }, "markForHistory": { "description": "\"true\" setting marks the profile to be kept from being purged, once the profile is marked inactive.", "type": "boolean" }, "hasCommission": { "description": "Populates true if the profile has commission configured false otherwise.", "type": "boolean" } } }, "commentInfoType": { "type": "object", "description": "Comment related to the profile/reservation.", "properties": { "comment": { "description": "Comment details for the comment. It will be empty in case of delete comment.", "$ref": "#/definitions/commentType" }, "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 resposible for the creation.", "type": "string", "minLength": 0, "maxLength": 200 }, "lastModifyDateTime": { "description": "Time stamp of last modification.", "type": "string", "format": "date-time" }, "lastModifierId": { "description": "Identifies the last software system or person to modify a record.", "type": "string", "minLength": 0, "maxLength": 200 }, "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": 20 } } }, "commentType": { "type": "object", "description": "An indication of a new paragraph for a sub-section of a formatted text message.", "properties": { "text": { "description": "Formatted text content.", "$ref": "#/definitions/formattedTextTextType" }, "commentTitle": { "description": "Specifies Comment's Title.", "type": "string", "minLength": 0, "maxLength": 4000 }, "notificationLocation": { "description": "Notification Location associated with the Note.", "type": "string", "minLength": 0, "maxLength": 20 }, "type": { "description": "Specifies type of the comment.", "type": "string", "minLength": 0, "maxLength": 20 }, "typeDescription": { "description": "Comment type Description.", "type": "string", "minLength": 0, "maxLength": 200 }, "internal": { "description": "When true, the comment may not be shown to the consumer. When false, the comment may be shown to the consumer.", "type": "boolean" }, "confidential": { "description": "When true, the comment may be confidential.", "type": "boolean" }, "overrideInternal": { "description": "When true, the note internal could be modified.", "type": "boolean" }, "hotelId": { "description": "If specified comment belongs to the Hotel, otherwise it is a global comment.", "type": "string", "minLength": 0, "maxLength": 20 }, "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 resposible for the creation.", "type": "string", "minLength": 0, "maxLength": 200 }, "lastModifyDateTime": { "description": "Time stamp of last modification.", "type": "string", "format": "date-time" }, "lastModifierId": { "description": "Identifies the last software system or person to modify a record.", "type": "string", "minLength": 0, "maxLength": 200 } } }, "formattedTextTextType": { "type": "object", "description": "Provides text and indicates whether it is formatted or not.", "properties": { "value": { "type": "string" }, "language": { "description": "Language identification.", "type": "string", "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*" } } }, "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": 20 } } }, "codeDescriptionType": { "type": "object", "description": "This contains a generic code and description information.", "properties": { "code": { "description": "Code.", "type": "string", "minLength": 0, "maxLength": 20 }, "description": { "description": "description.", "type": "string", "minLength": 0, "maxLength": 2000 } } }, "customerType": { "type": "object", "description": "Contains basic data on the customer's identity, location, relationships, finances, memberships, etc.", "properties": { "personName": { "description": "Detailed name information for the customer.", "type": "array", "maxItems": 5, "items": { "$ref": "#/definitions/personNameType" } }, "anonymization": { "description": "Provides information about the guest's anonymization status", "$ref": "#/definitions/anonymizationType" }, "citizenCountry": { "description": "Name of the (self-professed) country that is claimed for citizenship.", "$ref": "#/definitions/countryNameType" }, "identifications": { "description": "List of identification of the customer.", "type": "object", "properties": { "identificationInfo": { "description": "Collection of detailed information on the identification of the customer.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/identificationInfoType" } }, "allRowsFetched": { "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" }, "totalRows": { "description": "Total number of rows queried", "type": "integer" } } }, "profession": { "description": "Profession of a person.", "type": "string", "minLength": 0, "maxLength": 80 }, "alienInfo": { "description": "Immigration/visa information of a foreign person.", "$ref": "#/definitions/alienInfoType" }, "birthCountry": { "description": "Country of birth.", "$ref": "#/definitions/countryNameType" }, "businessTitle": { "description": "Business Title.", "type": "string", "minLength": 0, "maxLength": 80 }, "gender": { "description": "Identifies the profile gender code selected from Gender types List of values. Gender types LOV provides the values configured at gender configuration.", "type": "string", "minLength": 0, "maxLength": 20 }, "birthDate": { "description": "Indicates the date of birth as indicated in the document, in ISO 8601 prescribed format.", "type": "string", "format": "date" }, "birthDateMasked": { "description": "Indicates the date of birth as masked.", "type": "string", "maxLength": 2000 }, "language": { "description": "Language identification.", "type": "string", "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*" }, "nationality": { "description": "Nationality code identification", "type": "string", "minLength": 0, "maxLength": 20 }, "nationalityDescription": { "description": "Nationality code description", "type": "string", "minLength": 0, "maxLength": 80 }, "customerValue": { "description": "The supplier's ranking of the customer (e.g., VIP, numerical ranking).", "type": "string", "minLength": 0, "maxLength": 20 }, "creditRating": { "description": "Credit Rating of the customer.", "type": "string", "minLength": 0, "maxLength": 20 }, "vipStatus": { "description": "VIP status of the customer.", "type": "string", "minLength": 0, "maxLength": 20 }, "vipDescription": { "description": "Description of the VIP status.", "type": "string", "minLength": 0, "maxLength": 2000 }, "birthPlace": { "description": "Place of birth.", "type": "string", "minLength": 0, "maxLength": 80 }, "privateProfile": { "description": "This element tells profile is property exclusive or not.", "type": "boolean" }, "blacklist": { "description": "This element tells if profile is blacklisted or not.", "type": "boolean" } } }, "alienInfoType": { "type": "object", "description": "immigration/visa information of a foreign person.", "properties": { "alienRegistrationNo": { "description": "Alien Registration Number.", "type": "string", "maxLength": 2000 }, "immigrationStatus": { "description": "Immigration Status on an Alien.", "type": "string", "minLength": 0, "maxLength": 40 }, "visaValidityType": { "description": "Visa Type of an Alien.", "type": "string", "minLength": 0, "maxLength": 40 } } }, "anonymizationType": { "type": "object", "description": "Provides information about guest's anonymization status.", "properties": { "anonymizationStatus": { "description": "Status of anonymization such as Requested or Anonymized.", "$ref": "#/definitions/anonymizationStatusType" }, "anonymizationDate": { "description": "Date and Time when the guest was anonymized.", "type": "string", "format": "date-time" } } }, "anonymizationStatusType": { "type": "string", "description": "Guest has been anonymized.", "enum": [ "Requested", "Anonymized" ] }, "identificationInfoType": { "type": "object", "description": "Information on the identification of the customer.", "properties": { "identification": { "description": "Detailed information on the identification of the customer.", "$ref": "#/definitions/identificationType" }, "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": 20 } } }, "identificationType": { "type": "object", "description": "Identification information of the customer.", "properties": { "idType": { "description": "Identification Type. Eg Passport, Driving License etc.", "type": "string", "minLength": 0, "maxLength": 40 }, "idNumber": { "description": "Identification Number.", "type": "string", "minLength": 0, "maxLength": 80 }, "idNumberMasked": { "description": "Masked Identification Number.", "type": "string", "minLength": 0, "maxLength": 80 }, "issuedCountry": { "description": "The country where Identification was issued.", "type": "string", "minLength": 0, "maxLength": 20 }, "issuedDate": { "description": "Issued date of Identification.", "type": "string", "format": "date" }, "issuedPlace": { "description": "The place where Identification was issued.", "type": "string", "minLength": 0, "maxLength": 80 }, "expirationDate": { "description": "Expiration date of Identification.", "type": "string", "format": "date" }, "registeredProperty": { "description": "Property where the identification belongs to.", "type": "string", "minLength": 0, "maxLength": 20 }, "primaryInd": { "description": "When true, indicates a primary information.", "type": "boolean" }, "orderSequence": { "description": "Display Order sequence.", "type": "number" } } }, "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", "maxLength": 2000 }, "salutation": { "description": "Salutation of the profile", "type": "string", "maxLength": 2000 }, "nameType": { "description": "Type of name of the individual, such as former, nickname, alternate or alias name.", "$ref": "#/definitions/personNameTypeType" }, "language": { "description": "Language identification.", "type": "string", "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*" } } }, "personNameTypeType": { "type": "string", "description": "Person's name in an external system.", "enum": [ "Primary", "Alternate", "Incognito", "External", "Phonetic" ] }, "countryNameType": { "type": "object", "description": "Code for a country or a nationality.", "properties": { "value": { "type": "string", "description": "Used for Character Strings, length 0 to 200.", "minLength": 0, "maxLength": 200 }, "code": { "description": "Code for a country or a nationality.", "type": "string", "minLength": 0, "maxLength": 20 } } }, "profileMembershipType": { "type": "object", "description": "Detailed information of the memberships.", "properties": { "comment": { "description": "Additional comments regarding to the membership.", "$ref": "#/definitions/paragraphType" }, "newMembershipNumber": { "description": "Card Number of the membership.", "type": "string", "maxLength": 2000 }, "nameOnCard": { "description": "Name to be displayed on the membership card.", "type": "string", "maxLength": 2000 }, "programDescription": { "description": "Description of the membership program.", "type": "string", "maxLength": 2000 }, "membershipLevel": { "description": "Indicates the membership level.", "type": "string", "maxLength": 2000 }, "membershipLevelDescription": { "description": "Indicates the membership level description.", "type": "string", "minLength": 0, "maxLength": 200 }, "membershipClass": { "description": "Indicates the membership class.", "type": "string", "maxLength": 2000 }, "earningPreference": { "description": "Earning preference to the membership.", "$ref": "#/definitions/membershipEarningPreferenceType" }, "inactive": { "description": "Indicates whether membership is active or inactive.", "type": "boolean" }, "benefits": { "description": "benefits for the membership.", "$ref": "#/definitions/benefitsType" }, "tierAdministration": { "description": "Defines the degree of participation for this membership in the tier management portion of the program.", "$ref": "#/definitions/tierAdministrationType" }, "downgrade": { "description": "Defines how downgrading will be handled for this membership.", "$ref": "#/definitions/downgradeType" }, "reIssueNewCard": { "description": "The status of issuing new membership card to the member.", "$ref": "#/definitions/cardReIssueType" }, "excludeFromBatch": { "description": "True if you want to exclude the member from the Membership Fulfillment extract,the member's actions will not be included in the fulfillment extract until this value set to false.", "type": "boolean" }, "upgradeDescription": { "description": "Indicates Upgrade information which includes member's next tier level, requirements for the next upgrade.", "type": "string", "minLength": 0, "maxLength": 32000 }, "downgradeDescription": { "description": "Indicates information regarding the member's possible downgrades.", "type": "string", "minLength": 0, "maxLength": 32000 }, "rating": { "description": "Value Rating Type Description for this membership.", "type": "string", "maxLength": 2000 }, "membershipEnrollmentCode": { "description": "Indicates how the guest enrolled in the program.", "type": "string", "minLength": 0, "maxLength": 20 }, "memberStatus": { "description": "Indicates where the guest is in the membership enrollment process.", "type": "string", "minLength": 0, "maxLength": 20 }, "currentPoints": { "description": "Profile MemberShip Points.", "type": "number" }, "pointsLabel": { "description": "Label used to refer to points for this membership type", "type": "string", "minLength": 0, "maxLength": 20 }, "enrollmentSource": { "description": "Source from where the enrollment is done.", "type": "string", "minLength": 0, "maxLength": 20 }, "enrollmentResort": { "description": "Resort/CRO where enrollment is done.", "type": "string", "minLength": 0, "maxLength": 20 }, "preferredCard": { "description": "Preferred Card.", "type": "boolean" }, "membershipId": { "description": "Card Number of the membership.", "type": "string", "maxLength": 2000 }, "membershipType": { "description": "Type of membership.", "type": "string", "maxLength": 2000 }, "primaryMembership": { "description": "Boolean indicator set to True implies membership is a Primary Membership.", "type": "boolean" }, "membershipIdNo": { "description": "Membership ID Number.", "type": "integer" }, "playerRanking": { "description": "Ranking assigned to the Player Profile by the Gaming system.", "type": "integer" }, "centralSetup": { "description": "Indicates how the award points for this membership type will be managed.", "type": "boolean" }, "signupDate": { "description": "Indicates when the member signed up for the loyalty program.", "type": "string", "format": "date" }, "effectiveDate": { "description": "Indicates the starting date.", "type": "string", "format": "date" }, "expireDate": { "description": "Indicates the ending date.", "type": "string", "format": "date" }, "expireDateExclusiveIndicator": { "description": "When true, indicates that the ExpireDate is the first day after the applicable period (e.g. when expire date is Oct 15 the last date of the period is Oct 14).", "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 resposible for the creation.", "type": "string", "minLength": 0, "maxLength": 200 }, "lastModifyDateTime": { "description": "Time stamp of last modification.", "type": "string", "format": "date-time" }, "lastModifierId": { "description": "Identifies the last software system or person to modify a record.", "type": "string", "minLength": 0, "maxLength": 200 } } }, "paragraphType": { "type": "object", "description": "An indication of a new paragraph for a sub-section of a formatted text message.", "properties": { "text": { "description": "Formatted text content.", "$ref": "#/definitions/formattedTextTextType" } } }, "tierAdministrationType": { "type": "string", "description": "Do not upgrade membership. The membership may be downgraded.", "enum": [ "Disabled", "NoUpgrade" ] }, "downgradeType": { "type": "string", "description": "Do not downgrade membership when the next downgrade process runs. When the downgrade process runs, the membership will be automatically set to Grace.", "enum": [ "Grace", "Never", "Period" ] }, "membershipEarningPreferenceType": { "type": "string", "description": "The earning preference of a membership, it depends on the type of property. eg. when the property is a airline it should be Miles, other than Points.", "enum": [ "Points", "Miles" ] }, "cardReIssueType": { "type": "string", "description": "Request to re issue a new card.", "enum": [ "Pending", "NotApplicable", "Requested" ] }, "benefitsType": { "type": "array", "description": "Basic information about membership benefit.", "maxItems": 4000, "items": { "$ref": "#/definitions/benefitType" } }, "benefitType": { "type": "object", "description": "Basic information about membership benefit.", "properties": { "code": { "description": "Benefit code associated with a membership.", "type": "string", "minLength": 0, "maxLength": 20 }, "message": { "description": "Processing message for membership benefit.", "type": "string", "minLength": 0, "maxLength": 4000 }, "inactive": { "description": "Indicates whether membership benefit is active or inactive.", "type": "boolean" } } }, "profileRestrictions": { "type": "object", "properties": { "reason": { "description": "Restriction reason associated with the current profile.", "type": "string", "minLength": 0, "maxLength": 20 }, "reasonDescription": { "description": "Description of restriction reason.", "type": "string", "minLength": 0, "maxLength": 2000 }, "restricted": { "description": "True indicates there are restrictions associated with the current profile.", "type": "boolean" } } }, "profileStatusType": { "type": "string", "enum": [ "Active", "Inactive" ] }, "reservationIdList": { "type": "array", "description": "Unique Id that references an object uniquely in the system.", "maxItems": 4000, "items": { "$ref": "#/definitions/uniqueID_Type" } }, "housekeepingRoomStatusType": { "type": "string", "description": "Simple type for room status instructions to be used in requests for fetching housekeeping rooms. Valid status values are Clean, Dirty, Pickup, Inspected, OutOfOrder, OutOfService.", "enum": [ "Clean", "Dirty", "Pickup", "Inspected", "OutOfOrder", "OutOfService" ] }, "taxTypeType": { "type": "object", "description": "Provides information about the Tax Type.", "properties": { "hotelId": { "description": "Code of the Hotel.", "type": "string", "minLength": 0, "maxLength": 20 }, "code": { "description": "Code of the Tax Type.", "type": "string", "minLength": 0, "maxLength": 20 }, "description": { "description": "Description of the Tax Type.", "type": "string", "minLength": 0, "maxLength": 2000 }, "collectingAgentTax": { "description": "A boolean flag for Collecting Agent Tax", "type": "boolean" }, "printAutoAdjust": { "description": "Print auto adjust information for this tax type on the tax exempt report.", "type": "boolean" }, "reportExemptDays": { "description": "Number of days after which the guest will be tax exempt. Only used for tax exempt report.", "type": "integer" }, "reportTaxPerc": { "description": "Tax percentage. Only used for tax exempt report.", "type": "number", "minimum": 0, "maximum": 100 }, "minimumLengthOfStay": { "description": "Minimun Length of Stay.", "type": "integer" } } }, "resAttachedProfileListType": { "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/resAttachedProfileType" } }, "resAttachedProfileType": { "type": "object", "properties": { "name": { "description": "Attached profile name", "type": "string", "maxLength": 2000 }, "profileIdList": { "description": "Collection of unique profile identifiers", "$ref": "#/definitions/profileIdList" }, "resProfileType": { "$ref": "#/definitions/resProfileTypeType" } } }, "profileIdList": { "type": "array", "description": "Unique Id that references an object uniquely in the system.", "maxItems": 4000, "items": { "$ref": "#/definitions/uniqueID_Type" } }, "resProfileTypeType": { "type": "string", "enum": [ "Company", "Group", "TravelAgent", "Source", "ReservationContact", "BillingContact", "Addressee" ] }, "resCommunicationType": { "type": "object", "description": "Communication details for a reservation.", "properties": { "telephones": { "description": "List of Telephone Number Information", "type": "object", "properties": { "telephoneInfo": { "description": "Collection of Detailed information on telephone/fax for the customer.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/telephoneInfoType" } }, "allRowsFetched": { "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" }, "totalRows": { "description": "Total number of rows queried", "type": "integer" } } }, "emails": { "description": "List of email address for the customer.", "type": "object", "properties": { "emailInfo": { "description": "Collection of Detailed information on an eMail address for the customer.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/emailInfoType" } }, "allRowsFetched": { "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" }, "totalRows": { "description": "Total number of rows queried", "type": "integer" } } } } }, "telephoneInfoType": { "type": "object", "description": "Information on a telephone number for the customer.", "properties": { "telephone": { "description": "Phone details for the profile.", "$ref": "#/definitions/telephoneType" }, "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": 20 } } }, "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 resposible for the creation.", "type": "string", "minLength": 0, "maxLength": 200 }, "lastModifyDateTime": { "description": "Time stamp of last modification.", "type": "string", "format": "date-time" }, "lastModifierId": { "description": "Identifies the last software system or person to modify a record.", "type": "string", "minLength": 0, "maxLength": 200 } } }, "emailInfoType": { "type": "object", "description": "Information on an email for the customer.", "properties": { "email": { "description": "eMail deatils for the profile.", "$ref": "#/definitions/emailType" }, "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": 20 } } }, "emailType": { "type": "object", "description": "Information on an email for the customer.", "properties": { "emailAddress": { "description": "Defines the e-mail address.", "type": "string", "minLength": 0, "maxLength": 2000 }, "type": { "description": "Defines the purpose of the e-mail address (e.g. personal, business, listserve).", "type": "string", "minLength": 0, "maxLength": 20 }, "typeDescription": { "description": "Describes the Type code", "type": "string", "minLength": 0, "maxLength": 2000 }, "emailFormat": { "description": "Supported Email format.", "type": "string" }, "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 resposible for the creation.", "type": "string", "minLength": 0, "maxLength": 200 }, "lastModifyDateTime": { "description": "Time stamp of last modification.", "type": "string", "format": "date-time" }, "lastModifierId": { "description": "Identifies the last software system or person to modify a record.", "type": "string", "minLength": 0, "maxLength": 200 } } }, "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, whild Duration provides a measure of time to add to the StartDate to yield end date.", "type": "object", "properties": { "startDate": { "type": "string", "format": "date" }, "endDate": { "type": "string", "format": "date" }, "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": "#/definitions/queueTextInfoType" }, "priority": { "description": "The Queue Priority given to this reservation.", "type": "integer" }, "avgQueueTimeToCheckIn": { "description": "The average time, in seconds, a reservation was on queue prior to Check-In.", "type": "integer" }, "avgQueueTimeCurrentReservations": { "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" } } }, "queueTextInfoType": { "type": "object", "description": "Information regarding the message sent to guest.", "properties": { "sentTime": { "description": "Time the text was last sent to the user.", "type": "string", "format": "date-time" }, "sentBy": { "description": "User name of the user who sent message.", "type": "string", "minLength": 0, "maxLength": 40 } } }, "sourceOfSaleType": { "type": "object", "description": "Point of Sale of reservation. Identifies the entity/channel who made the reservation.", "properties": { "sourceType": { "description": "Type of entity/channel who made the reservation..", "type": "string", "minLength": 0, "maxLength": 40 }, "sourceCode": { "description": "The entity/channel who made the reservation.", "type": "string", "minLength": 0, "maxLength": 20 } } }, "resCashieringType": { "type": "object", "description": "Cashiering Information for the reservation.", "properties": { "revenuesAndBalances": { "description": "Revenues and Balances Amount summary for the reservation.", "$ref": "#/definitions/resRevenueBalanceType" }, "billingPrivileges": { "description": "Billing privileges set on the reservation.", "$ref": "#/definitions/billingPrivilegesType" }, "taxType": { "description": "This stores the code for the type of tax calculation especially with tax exemption, etc.", "$ref": "#/definitions/reservationTaxTypeInfo" }, "bedTaxReporting": { "description": "This stores the information for Bed Tax Reporting. Mainly used in Maldives.", "$ref": "#/definitions/bedTaxReportingType" }, "folioTexts": { "description": "Additional text fields to display on the folio.", "$ref": "#/definitions/folioTextsType" }, "periodicFolio": { "description": "Information regarding periodic folios set on the reservation.", "$ref": "#/definitions/resPeriodicFolioType" }, "compAccounting": { "description": "Information regarding comp accounting on the reservation.", "$ref": "#/definitions/resCompAccountingType" }, "resPreConfiguredRoutingInstruction": { "description": "Information regarding the selected preconfigured routing instruction on the reservation.", "$ref": "#/definitions/resPreConfiguredRoutingInstrType" }, "financiallyResponsible": { "description": "The guest from whom payment has to be recovered (direct guest).", "type": "boolean" }, "proratedBilling": { "description": "In case of Appartment style billing indicates whether a prorated amount should be used for an Apartment Style Billing rate.", "type": "boolean" }, "lastRoomAndTaxPostedDate": { "description": "Date of the last Room And Tax posting. Used primarily to know the date in case of Advance Billing.", "type": "string", "format": "date" }, "reverseCheckInAllowed": { "description": "This attribute is to verify if reverse check-in is allowed for the reservation.", "type": "boolean" }, "reverseAdvanceCheckInAllowed": { "description": "This attribute is to verify if reverse advance check-in is allowed for the reservation.", "type": "boolean" }, "transactionsPosted": { "description": "Specifies whether reservation has a financial transaction associated with it.", "type": "boolean" } } }, "folioTextsType": { "type": "object", "description": "This stores the information the type of tax calculation especially with tax exemption, etc.", "properties": { "folioText": { "description": "This stores the description for the type of tax calculation especially with tax exemption, etc.", "type": "array", "maxItems": 2, "items": { "type": "object", "properties": { "text": { "description": "Additional text field to display on the folio.", "type": "string", "minLength": 0, "maxLength": 50 }, "row": { "description": "Row number of the additional text.", "type": "integer" } } } } } }, "bedTaxReportingType": { "type": "object", "description": "This stores the information for Bed Tax Reporting. Mainly used in Maldives.", "properties": { "taxRegistrationNo": { "description": "Tax Registration Number for Maldives Bed Tax Reporting.", "type": "number" }, "visaNumber": { "description": "Visa number used for Maldives Bed Tax Reporting", "type": "string", "minLength": 0, "maxLength": 40 }, "visaIssueDate": { "description": "Visa Issue Date used for Maldives Bed Tax Reporting.", "type": "string", "format": "date" }, "visaExpiryDate": { "description": "Visa Expiration Date used for Maldives Bed Tax Reporting", "type": "string", "format": "date" }, "taxableDays": { "description": "Number of days for which the Maldives tax is applicable.", "type": "integer" } } }, "resPreConfiguredRoutingInstrType": { "type": "object", "description": "Instruction to attach Pre-Configured Routing Instructions to a Reservation.", "properties": { "ratePlanCode": { "description": "Rate Code with attached Routing Instruction.", "type": "string", "minLength": 0, "maxLength": 20 }, "profileType": { "description": "Profile Type with attached Routing Instruction.", "$ref": "#/definitions/resProfileTypeType" }, "promotionCode": { "description": "Promotion Code with attached Complimentary Routing.", "type": "string", "minLength": 0, "maxLength": 20 } } }, "resRevenueBalanceType": { "type": "object", "description": "Revenue and Balance Amount summary for the reservation.", "properties": { "totalFixedCharge": { "description": "Total Fixed Charges on the reservation.", "$ref": "#/definitions/currencyAmountType" }, "totalPayment": { "description": "Total payment received for the reservation.", "$ref": "#/definitions/currencyAmountType" }, "roomRevenue": { "description": "Room Revenue generated by the reservation.", "$ref": "#/definitions/currencyAmountType" }, "foodAndBevRevenue": { "description": "Food and Beverage Revenue generated by the reservation.", "$ref": "#/definitions/currencyAmountType" }, "otherRevenue": { "description": "Other Revenue generated by the reservation.", "$ref": "#/definitions/currencyAmountType" }, "nonRevenue": { "description": "Total Non Revenue posted on the reservation.", "$ref": "#/definitions/currencyAmountType" }, "totalRevenue": { "description": "Total Revenue generated by the reservation.", "$ref": "#/definitions/currencyAmountType" }, "balance": { "description": "Balance amount on the reservation.", "$ref": "#/definitions/currencyAmountType" } } }, "currencyAmountType": { "type": "object", "description": "A monetary value expressed with a currency code.", "properties": { "amount": { "description": "A monetary amount.", "type": "number" } } }, "resPeriodicFolioType": { "type": "object", "description": "Information regarding periodic folios set on the reservation.", "properties": { "lastSettlementDate": { "description": "Latest date when a direct bill settlement was automatically done using the \"Direct Bill Batch Folios\" option.", "type": "string", "format": "date" }, "lastFolioDate": { "description": "Latest date when a folio was printed using the \"Periodic Batch Folios\" option", "type": "string", "format": "date" }, "frequency": { "description": "Frequency in number of days when folios should be printed for this reservation.", "type": "integer" } } }, "resCompAccountingType": { "type": "object", "description": "Information regarding comp accounting on the reservation.", "properties": { "compType": { "description": "Code used to identify the casino comp type and ranking of a guest.", "type": "string", "minLength": 0, "maxLength": 20 }, "authorizer": { "description": "ID of the employee who will act as the host for this guest.", "type": "string", "minLength": 0, "maxLength": 40 } } }, "billingPrivilegesType": { "type": "object", "description": "This stores the information for Bed Tax Reporting. Mainly used in Maldives.", "properties": { "postingRestriction": { "description": "Flag used by interface program during check in.", "type": "boolean" }, "preStayCharging": { "description": "Indicates if the reservation has charging privileges before arrival.", "type": "boolean" }, "postStayCharging": { "description": "Indicates if the reservation has charging privileges after checkout.", "type": "boolean" }, "folioCloseDate": { "description": "Date when folio was closed. This works with PostStayCharging flag.", "type": "string", "format": "date" }, "scheduledCheckout": { "description": "Indicates if the guest is scheduled for automatic check out.", "type": "boolean" }, "scheduledCheckoutTime": { "description": "Time of automatic check out if guest is schedule for automatic check out.", "type": "string", "format": "date" }, "directBillAuthorized": { "description": "If Direct bill is authorized this will hold User ID who authorized it.", "type": "boolean" }, "videoCheckout": { "description": "Indicates if the guest can do video checkout", "type": "boolean" }, "allowAutoCheckin": { "description": "Indicated if a new reservation should be created and automatically checked in whenever the room is checked out. Available for pseudo room types only.", "type": "boolean" }, "autoSettlement": { "description": "Indicates if the is a candidate for auto folio settlement.", "type": "boolean" }, "autoSettlementType": { "description": "The folio settlement type for auto folio settlement.", "type": "string", "minLength": 0, "maxLength": 40 }, "autoSettlementFreq": { "description": "The interval of days between each auto folio settlement.", "type": "integer" }, "creditLimitAutoPay": { "description": "Indicates if the reservation will be included in the Automatic Credit Limit Overages process and also be listed in the Credit Limit Overages screen results.", "type": "boolean" } } }, "reservationTaxTypeInfo": { "type": "object", "description": "Provides information about the Tax Type.", "properties": { "hotelId": { "description": "Code of the Hotel.", "type": "string", "minLength": 0, "maxLength": 20 }, "code": { "description": "Code of the Tax Type.", "type": "string", "minLength": 0, "maxLength": 20 }, "description": { "description": "Description of the Tax Type.", "type": "string", "minLength": 0, "maxLength": 2000 }, "collectingAgentTax": { "description": "A boolean flag for Collecting Agent Tax", "type": "boolean" }, "printAutoAdjust": { "description": "Print auto adjust information for this tax type on the tax exempt report.", "type": "boolean" }, "reportExemptDays": { "description": "Number of days after which the guest will be tax exempt. Only used for tax exempt report.", "type": "integer" }, "reportTaxPerc": { "description": "Tax percentage. Only used for tax exempt report.", "type": "number", "minimum": 0, "maximum": 100 }, "minimumLengthOfStay": { "description": "Minimun Length of Stay.", "type": "integer" }, "taxExemptNo": { "description": "Tax exempt number on the profile.", "type": "string", "minLength": 0, "maxLength": 20 } } }, "reservationDepositType": { "type": "object", "description": "Reservation Deposit Type.", "properties": { "amountRequired": { "description": "Deposit Amount Required.", "type": "number" }, "amountPaid": { "description": "Deposit Amount Paid.", "type": "number" }, "amountOwed": { "description": "Deposit Amount Owed.", "type": "number" }, "dueDate": { "description": "Deposit Due Date.", "type": "string", "format": "date" }, "postingDate": { "description": "Deposit Posting Date.", "type": "string", "format": "date" }, "hasPaid": { "description": "Resolves whether reservation has paid deposit.", "type": "boolean" }, "hasOutstanding": { "description": "Resolves whether reservation has outstanding deposit.", "type": "boolean" } } }, "pMS_ResStatusType": { "type": "string", "description": "This reservation is in checked in status and the business date is past departure date. This could occur when ORS and PMS are in same environment.", "enum": [ "Reserved", "Requested", "NoShow", "Cancelled", "InHouse", "CheckedOut", "Waitlisted", "DueIn", "DueOut", "Walkin", "PendingCheckout" ] }, "reservationInterfaceStatusType": { "type": "object", "description": "Hotel Interface Type for a reservation and status of the various services", "properties": { "roomExtension": { "description": "Identifier for the room extension", "type": "string", "minLength": 0, "maxLength": 20 }, "hotelInterface": { "description": "Hotel interface information for the reservation", "$ref": "#/definitions/hotelInterfaceType" }, "interfaceRights": { "description": "Contains a list of status/rights for the various services under this interface", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/interfaceRightsStatusType" } } } }, "interfaceRightsStatusType": { "type": "object", "properties": { "right": { "description": "Internal code for each allowed right of a Hotel Interface record.", "type": "integer" }, "statusCode": { "description": "User defined code for an Interface Right.", "type": "string", "minLength": 0, "maxLength": 5 }, "description": { "description": "User defined description for an Interface Right.", "type": "string", "minLength": 0, "maxLength": 80 }, "category": { "description": "Category code of this interface right.", "type": "string", "minLength": 0, "maxLength": 1 } } }, "hotelInterfaceType": { "type": "object", "properties": { "interfaceId": { "description": "Unique DB internal number of a Hotel Interface record.", "$ref": "#/definitions/uniqueID_Type" }, "hotelId": { "description": "Hotel Code", "type": "string", "minLength": 0, "maxLength": 20 }, "interfaceName": { "description": "Name of the Hotel Interface", "type": "string", "minLength": 0, "maxLength": 40 }, "interfaceType": { "description": "Three letter code for each interface that identifies the interface.", "$ref": "#/definitions/hotelInterfaceTypeType" }, "logo": { "description": "Hotel Interface Logo. On the database, this is also referred as DBF Logo. This is a three letter code followed by an underscore(_). This tells us which DBF files and log files with the prefix that IFC7 is going to create.", "type": "string", "minLength": 0, "maxLength": 20 }, "machineName": { "description": "Unique machine name of the running IFC.", "type": "string", "minLength": 0, "maxLength": 80 }, "status": { "description": "The current status of the IFC.", "$ref": "#/definitions/hotelInterfaceStatusType" }, "activeFlag": { "description": "Indicator if the Hotel Interface is active or not. This is different from the Interface Status, which is either STOPPED or RUNNING.", "type": "boolean" } } }, "hotelInterfaceTypeType": { "type": "string", "enum": [ "Bms", "Cas", "Ccw", "Dls", "Eft", "Exp", "Mak", "Mbs", "Msc", "Pbx", "Pos", "Svs", "Tik", "Vid", "Vms", "Www", "Xml" ], "description": "XML Posting Interface" }, "hotelInterfaceStatusType": { "type": "string", "description": "Status of the Hotel Interface either STOPPED or RUNNING.", "enum": [ "Stopped", "Running", "Waiting", "StopInitiated", "StartInitiated", "RebootInitiated", "Other" ] }, "reservationPaymentMethodType": { "type": "object", "properties": { "paymentCard": { "$ref": "#/definitions/resPaymentCardType" }, "balance": { "$ref": "#/definitions/currencyAmountType" }, "authorizationRule": { "$ref": "#/definitions/authorizationRuleType" }, "emailFolioInfo": { "description": "Information on an email for the customer.", "type": "object", "properties": { "email": { "description": "eMail deatils for the profile.", "$ref": "#/definitions/emailType" }, "emailFolio": { "type": "boolean" }, "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": 20 } } }, "paymentMethod": { "type": "string", "minLength": 0, "maxLength": 20 }, "description": { "type": "string", "minLength": 0, "maxLength": 2000 }, "folioView": { "type": "integer" } } }, "resPaymentCardType": { "type": "object", "description": "Information on a credit card for the customer.", "properties": { "cardId": { "description": "credit card id", "$ref": "#/definitions/uniqueID_Type" }, "currentAuthorizedAmount": { "$ref": "#/definitions/currencyAmountType" }, "approvalAmountNeeded": { "$ref": "#/definitions/currencyAmountType" }, "cardType": { "description": "Indicates the type of credit card from a defined list", "$ref": "#/definitions/cardTypeType" }, "userDefinedCardType": { "description": "Indicates the user defined credit card type if credit card type from a defined list is not provided", "type": "string", "minLength": 0, "maxLength": 2 }, "cardNumber": { "type": "string", "minLength": 0, "maxLength": 80 }, "cardNumberMasked": { "type": "string", "minLength": 0, "maxLength": 80 }, "cardNumberLast4Digits": { "type": "string", "minLength": 0, "maxLength": 80 }, "expirationDate": { "description": "Expiration date of the credit card", "type": "string", "format": "date" }, "expirationDateMasked": { "description": "Masked Expiration date of the credit card", "type": "string", "minLength": 0, "maxLength": 20 }, "expirationDateExpired": { "type": "boolean" }, "cardHolderName": { "type": "string", "minLength": 0, "maxLength": 200 }, "attachCreditCardToProfile": { "description": "Attach the credit card to profile.", "type": "boolean" }, "processing": { "description": "This contains information on whether EFT is enabled. A value of 'C' indicates EFT is enabled and 'M' indicates manual authorization is available for this payment card type.", "$ref": "#/definitions/cardProcessingType" }, "swiped": { "type": "boolean" }, "cardNumberType": { "description": "This contains information on whether credit card is tokenized (token enabled). A value of 'Token' indicates credit card is token enabled and 'CardNumber' indicates non token environment for this payment card type.", "$ref": "#/definitions/cardNumberTypeType" } } }, "cardNumberTypeType": { "type": "string", "description": "Simple type for indicating if credit card number is tokenized.", "enum": [ "CardNumber", "Token" ] }, "cardProcessingType": { "type": "string", "enum": [ "Eft", "Manual" ] }, "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" ] }, "authorizationRuleType": { "type": "object", "description": "Configured rule for computing the amount to authorize.", "properties": { "code": { "description": "The authorization rule code.", "type": "integer" }, "amount": { "description": "The amount applicable to the authorization rule.", "$ref": "#/definitions/currencyAmountType" }, "percent": { "description": "A percentage value if the authorization rule is percentage based.", "type": "number" } } }, "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": "#/definitions/timeSpanType" }, "expectedTimes": { "description": "The expected arrival, return and departure times of the guest.", "$ref": "#/definitions/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 }, "numberOfRooms": { "description": "Room Id", "type": "integer" }, "roomNumber": { "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": "#/definitions/currencyAmountType" }, "points": { "description": "The Points contains the number of points used to book a particular room type.", "$ref": "#/definitions/pointsType" }, "rateSuppressed": { "description": "Whether this rate should be suppressed from view", "type": "boolean" }, "reservationBlock": { "description": "Key information about the block for this reservation.", "$ref": "#/definitions/reservationBlockType" }, "bookingChannelCode": { "description": "Booking channel code", "type": "string", "minLength": 0, "maxLength": 20 }, "partyCode": { "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": "#/definitions/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": "#/definitions/resGuaranteeType" }, "promotion": { "description": "Promotion Codes", "$ref": "#/definitions/promotionType" }, "marketCode": { "description": "Market code", "type": "string", "minLength": 0, "maxLength": 20 }, "sourceOfBusiness": { "description": "Source of business", "type": "string", "minLength": 0, "maxLength": 20 }, "sourceOfBusinessDescription": { "description": "Description of the source of business.", "type": "string", "minLength": 0, "maxLength": 4000 }, "balance": { "description": "Balance amount", "$ref": "#/definitions/currencyAmountType" }, "compBalance": { "description": "Comp Balance amount", "$ref": "#/definitions/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": "#/definitions/currencyAmountType" }, "guestServiceStatus": { "description": "Service Status of In House guest like DND or MUP", "$ref": "#/definitions/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" } } }, "reservationBlockType": { "type": "object", "description": "Key information about the block for a reservation.", "properties": { "blockIdList": { "description": "Collection of unique block identifiers for the reservation.", "$ref": "#/definitions/blockIdList" }, "blockName": { "description": "The Name of the block that is attached to the reservation.", "type": "string", "minLength": 0, "maxLength": 40 }, "hotelId": { "description": "This is the HotelCode of the Block.", "type": "string", "minLength": 0, "maxLength": 20 } } }, "blockIdList": { "type": "array", "description": "Unique Id that references an object uniquely in the system.", "maxItems": 4000, "items": { "$ref": "#/definitions/uniqueID_Type" } }, "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", "maxLength": 2000 }, "points": { "description": "No of points required to book this Room Stay.", "type": "integer" } } }, "guestHousekeepingServiceRequestType": { "type": "string", "description": "Possible values for the Guest Service Status.", "enum": [ "DoNotDisturb", "MakeUpRoom", "NoStatusSelected" ] }, "resExpectedTimesType": { "type": "object", "description": "Holds the Arrival and Departure Time Information", "properties": { "resExpectedArrivalTime": { "description": "Arrival Time", "type": "string", "format": "date-time" }, "resExpectedDepartureTime": { "description": "Departure Time", "type": "string", "format": "date-time" } } }, "timeSpanType": { "type": "object", "description": "Allows for a choice in description of the amount of time spanned by this type. EndDate specifies a specific date, whild Duration provides a measure of time to add to the StartDate to yield end date.", "properties": { "startDate": { "type": "string", "format": "date" }, "endDate": { "type": "string", "format": "date" }, "duration": { "type": "string" } } }, "promotionType": { "type": "object", "description": "Type to specify a rate promotion. Usually attached to a reservation to indicate a specific promotion is applied to the reservation.", "properties": { "promotionCode": { "description": "Promotion code associated with the rate plan.", "type": "string", "minLength": 0, "maxLength": 20 }, "promotionName": { "description": "Promotion code Name associated with the rate plan.", "type": "string", "minLength": 0, "maxLength": 20 }, "couponCode": { "description": "Promotion Coupon Code when promotion is setup to have a valid coupon code.", "type": "string", "minLength": 0, "maxLength": 40 } } }, "resGuaranteeType": { "type": "object", "description": "Validations type record returned after Validations are done.", "properties": { "guaranteeCode": { "description": "Guarantee Code.", "type": "string", "minLength": 0, "maxLength": 20 }, "shortDescription": { "description": "Guarantee Code.", "type": "string", "minLength": 0, "maxLength": 80 }, "onHold": { "description": "Guarantee Code.", "type": "boolean" } } }, "reservationAllowedActionsType": { "type": "array", "description": "Allowed action.", "maxItems": 11, "items": { "$ref": "#/definitions/reservationAllowedActionType" } }, "reservationAllowedActionType": { "type": "string", "description": "Flag indicating whether the Enrollment is in progress or not for the Profile associated with this Reservation.", "enum": [ "Cancel", "Move", "PreCharge", "PostCharge", "FacilitySchedule", "Upsell", "PreCheckIn", "PostToNoShowCancel", "NoShow", "NameChange", "Discount", "EnrollToPrimaryMembership", "EnrollInProgress" ] }, "resHousekeepingType": { "type": "object", "description": "Holds housekeeping turndown service information for the room.", "properties": { "instructions": { "description": "Turndown instructions for the room.", "type": "string", "maxLength": 2000 }, "facilityTaskInfo": { "description": "The facility task applicable for the current day. This will be information only and not used for any updates.", "$ref": "#/definitions/facilityTaskType" }, "linenChange": { "description": "Indicates if a linen change is necessary.", "type": "boolean" }, "turndownRequested": { "description": "Indicates whether guest wants turndown facility or not.", "type": "boolean" }, "serviceTime": { "description": "This is the Turndown room service time.", "type": "string", "format": "date" }, "expectedServiceTime": { "description": "Expected Start Time for housekeeping task(s).", "type": "string" }, "roomStatus": { "description": "Current room status. Current room status is populated only if room is assigned to the reservation and reservation is due in or in house.", "$ref": "#/definitions/housekeepingRoomStatusType" } } }, "facilityTaskType": { "type": "object", "description": "Information regarding facility task on a reservation.", "properties": { "task": { "description": "The Task Code.", "$ref": "#/definitions/housekeepingTaskCodeType" }, "supplies": { "description": "Supplies associated with the task.", "$ref": "#/definitions/facilityCodesType" }, "date": { "description": "The Date on which the task is applicable.", "type": "string", "format": "date" } } }, "facilityCodesType": { "type": "array", "description": "List of the facility codes.", "maxItems": 4000, "items": { "$ref": "#/definitions/facilityCodeType" } }, "facilityCodeType": { "type": "object", "description": "Facility Housekeeping Code, its description and quantity.", "properties": { "description": { "description": "Facility Code.", "type": "string", "minLength": 0, "maxLength": 80 }, "quantity": { "description": "Signifies the quantity.", "type": "integer" }, "code": { "description": "Facility code value.", "type": "string", "minLength": 0, "maxLength": 20 } } }, "housekeepingTaskCodeType": { "type": "object", "description": "Information related to a Task Code. Task Codes are used to generate task sheets in Rooms Management.", "properties": { "description": { "description": "Description of the Task Code.", "type": "string", "minLength": 0, "maxLength": 80 }, "instructions": { "description": "Instructions for this Task Code.", "type": "string", "minLength": 0, "maxLength": 2000 }, "facilityDepartureTask": { "description": "Indicates if this task code is the default departure task for Facility Tasks. This requires", "type": "boolean" }, "linenChange": { "description": "Indicates if a linen change is necessary.", "type": "boolean" }, "hotelId": { "description": "Property where this task code is configured.", "type": "string", "minLength": 0, "maxLength": 20 }, "code": { "description": "The Code for the task.", "type": "string", "minLength": 0, "maxLength": 20 }, "sequence": { "description": "Ordering sequence for display.", "type": "integer" } } }, "resMobileNotificationsType": { "type": "object", "description": "Contains the status of Room Ready and Key Ready messages.", "properties": { "roomReady": { "description": "Denotes the status of Room Ready message. It can have one of the values:PENDING, COMPLETED or FAILED", "$ref": "#/definitions/communicationStatusType" }, "keyReady": { "description": "Denotes the status of Key Ready message. It can have one of the values:PENDING, COMPLETED or FAILED", "$ref": "#/definitions/communicationStatusType" }, "checkoutMessageReceived": { "description": "Indicates if the Mobile checkout message is received.", "type": "boolean" }, "requiresAction": { "description": "Indicates if user action is required. The action could be for sending Room Ready or Key Ready Notification. It could also be for initiating Checkout", "type": "boolean" }, "errorMessage": { "description": "Error message when Mobile Notification has failed.", "type": "string", "maxLength": 2000 } } }, "communicationStatusType": { "type": "string", "description": "Enum to denote the Status of Readiness messages sent to Guest Devices.", "enum": [ "Pending", "Completed", "Failed", "Sent", "Received", "Cancelled", "PendingAvailability" ] }, "reservationFolioWindowsType": { "type": "array", "description": "Collection of reservation folio windows.", "maxItems": 4000, "items": { "$ref": "#/definitions/reservationFolioWindowType" } }, "reservationFolioWindowType": { "type": "object", "description": "Folio window view which holds the set of folios for a reservation.", "properties": { "payeeInfo": { "description": "The window's configured payee information.", "$ref": "#/definitions/payeeInfoType" }, "balance": { "description": "Running balance of the window.", "$ref": "#/definitions/currencyAmountType" }, "paymentMethod": { "description": "Payment Method Type", "type": "string", "minLength": 0, "maxLength": 20 }, "folioWindowNo": { "type": "integer" } } }, "payeeInfoType": { "type": "object", "description": "Payee information.", "properties": { "payeeId": { "description": "Opera name id of the payee.", "$ref": "#/definitions/uniqueID_Type" }, "payeeName": { "description": "Name of the payee.", "type": "string", "minLength": 0, "maxLength": 80 }, "payeeAddress": { "description": "Address of the payee.", "$ref": "#/definitions/addressInfoType" }, "payeeAddressCount": { "description": "Payee multiple address count.", "type": "integer" }, "payeeReferenceCurrency": { "description": "Reference currency of the payee.", "type": "string", "minLength": 0, "maxLength": 20 }, "payeeAccountInfo": { "description": "AR account short info of the payee.", "$ref": "#/definitions/aRAccountShortInfoType" }, "payeeTaxNumber": { "description": "The tax number of the payee.", "type": "string", "minLength": 0, "maxLength": 40 } } }, "addressInfoType": { "type": "object", "description": "Provides address information.", "properties": { "address": { "description": "Address details for the profile.", "$ref": "#/definitions/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": 20 } } }, "addressType": { "type": "object", "description": "Provides address information.", "properties": { "isValidated": { "description": "Indicator to define if the Address is validated by the Address Validation System.", "type": "boolean" }, "addressLine": { "description": "When the address is unformatted (FormattedInd=\"false\") these lines will contain free form address details. When the address is formatted and street number and street name must be sent independently, the street number will be sent using StreetNmbr, and the street name will be sent in the first AddressLine occurrence.", "type": "array", "maxItems": 4, "items": { "type": "string", "minLength": 0, "maxLength": 80 } }, "cityName": { "description": "City (e.g., Dublin), town, or postal station (i.e., a postal service territory, often used in a military address).", "type": "string", "minLength": 0, "maxLength": 40 }, "postalCode": { "description": "Post Office Code number.", "type": "string", "minLength": 0, "maxLength": 15 }, "cityExtension": { "description": "Post Office City Extension Code number. City Extension mainly used for UK addresses.", "type": "string", "minLength": 0, "maxLength": 20 }, "county": { "description": "County or District Name (e.g., Fairfax). This is read only.", "type": "string", "minLength": 0, "maxLength": 20 }, "state": { "description": "State or Province name (e.g., Texas).", "type": "string", "minLength": 0, "maxLength": 20 }, "country": { "description": "Country name (e.g., Ireland).", "$ref": "#/definitions/countryNameType" }, "language": { "description": "Language identification.", "type": "string", "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*" }, "type": { "description": "Defines the type of address (e.g. home, business, other).", "type": "string", "minLength": 0, "maxLength": 20 }, "typeDescription": { "description": "Describes the type code", "type": "string", "maxLength": 2000 }, "primaryInd": { "description": "When true, indicates a primary information.", "type": "boolean" }, "barCode": { "description": "The postal barcode for the address.", "type": "string", "minLength": 0, "maxLength": 100 }, "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 resposible for the creation.", "type": "string", "minLength": 0, "maxLength": 200 }, "lastModifyDateTime": { "description": "Time stamp of last modification.", "type": "string", "format": "date-time" }, "lastModifierId": { "description": "Identifies the last software system or person to modify a record.", "type": "string", "minLength": 0, "maxLength": 200 } } }, "aRAccountShortInfoType": { "type": "object", "description": "Accounts Receivabales Account details type charged for batched posting.", "properties": { "accountName": { "description": "Name of the AR Account.", "type": "string", "minLength": 0, "maxLength": 200 }, "accountId": { "description": "The unique ID for the Account.", "$ref": "#/definitions/uniqueID_Type" }, "accountNo": { "description": "The Account Number for the Account.", "type": "string", "minLength": 0, "maxLength": 20 }, "status": { "description": "The status of the account.", "$ref": "#/definitions/aRAccountStatusType" } } }, "aRAccountStatusType": { "type": "object", "description": "Type for the Account Status. Status can be restricted and a message/description added to the Account.", "properties": { "restriction": { "description": "The Restriction Code added on the Account. This is available when the functionality for adding restriction codes is ON.", "type": "string", "minLength": 0, "maxLength": 20 }, "description": { "description": "User defined status message on the Account.", "type": "string", "minLength": 0, "maxLength": 2000 }, "restricted": { "description": "Flag to indicate if the Account is restricted.", "type": "boolean" } } }, "commissionPayoutToType": { "type": "string", "enum": [ "TravelAgent", "Source", "TravelAgentSource", "None" ] }, "resAccessRestrictionType": { "type": "string", "description": "Indicates any Updates/Changes on the reservation as well as Reservation Cancellation are not allowed.", "enum": [ "Change", "Cancel", "ChangeOrCancel" ] }, "reservationTurndownInfoType": { "type": "object", "description": "Turndown information for a reservation", "properties": { "allowed": { "description": "Indicates if turndown is allowed or not", "type": "boolean" }, "status": { "description": "Indicates turndown status, values could be required, not required, completed", "$ref": "#/definitions/turndownStatusType" } } }, "turndownStatusType": { "type": "string", "description": "Simple type for turndown status instructions to be used in requests for fetching housekeeping rooms. Valid status values are Required, Not Required and Completed.", "enum": [ "Required", "NotRequired", "Compeleted" ] }, "resSharedGuestListType": { "type": "array", "description": "Collection of shared guest reservations.", "maxItems": 4000, "items": { "$ref": "#/definitions/resSharedGuestInfoType" } }, "resSharedGuestInfoType": { "type": "object", "description": "Contains information regarding the share reservation.", "properties": { "profileId": { "$ref": "#/definitions/profileId" }, "firstName": { "description": "Given name, first name or names", "type": "string", "maxLength": 2000 }, "lastName": { "description": "Family name, last name.", "type": "string", "maxLength": 2000 }, "fullName": { "description": "String representation of the full name", "type": "string", "maxLength": 2000 } } }, "profileId": { "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": { "type": { "description": "A reference to the type of object defined by the UniqueID element.", "type": "string", "minLength": 0, "maxLength": 20 }, "instance": { "description": "The identification of a record as it exists at a point in time. An instance is used in update messages where the sender must assure the server that the update sent refers to the most recent modification level of the object being updated.", "type": "string", "minLength": 0, "maxLength": 80 }, "idContext": { "description": "Used to identify the source of the identifier (e.g., IATA, ABTA).", "type": "string", "minLength": 0, "maxLength": 80 }, "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 } } }, "resGuestInfoType": { "type": "object", "description": "Specifies Company or Travel Agent profile using IATA or Corp. No.", "properties": { "membership": { "description": "The Membership object identifying the frequent customer reward program.", "$ref": "#/definitions/membershipInfoType" }, "namePrefix": { "description": "Salutation of honorific. (e.g., Mr. Mrs., Ms., Miss, Dr.)", "$ref": "#/definitions/namePrefixType" }, "givenName": { "description": "Given name, first name or names", "$ref": "#/definitions/givenNameType" }, "altGivenName": { "description": "Alternate 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 }, "surnamePrefix": { "description": "e.g \"van der\", \"von\", \"de\"", "type": "string", "minLength": 0, "maxLength": 20 }, "surname": { "description": "Family name, last name.", "$ref": "#/definitions/surnameType" }, "altSurname": { "description": "Alternate family name, last 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": 20 }, "nameTitle": { "description": "Degree or honors (e.g., Ph.D., M.D.)", "type": "string", "minLength": 0, "maxLength": 20 }, "fullName": { "description": "Full display name", "type": "string", "maxLength": 2000 }, "altFullName": { "description": "Altername full display name", "type": "string", "maxLength": 2000 }, "phoneNumber": { "description": "Phone number", "$ref": "#/definitions/phoneNumberType" }, "email": { "description": "Email address", "$ref": "#/definitions/basicEmailType" }, "birthDate": { "description": "Date of birth", "type": "string", "format": "date" }, "language": { "description": "Language identification.", "type": "string", "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*" }, "nationality": { "description": "Affiliation or ethnicity to a particular country.", "$ref": "#/definitions/countryNameType" }, "vip": { "description": "The supplier's ranking of the customer (e.g., VIP, numerical ranking).", "$ref": "#/definitions/vIPType" }, "address": { "description": "Address information that is attached to the reservation guest", "$ref": "#/definitions/addressSearchType" }, "anonymization": { "description": "Provides information about the guest's anonymization status", "$ref": "#/definitions/anonymizationType" }, "accompanyGuests": { "description": "List of guest names that are accompanying the reservation guest", "$ref": "#/definitions/resAccompanyGuestListType" }, "externalInfo": { "description": "External information about the guest associated with the reservation.", "$ref": "#/definitions/resGuestExternalInfoType" }, "guestLastStayInfo": { "description": "Contains information regarding the last stay of this guest.", "$ref": "#/definitions/guestLastStayInfoType" }, "guestRestrictedCode": { "description": "Guest profile restricted reason code", "type": "string", "maxLength": 2000 }, "guestRestrictedReasonDesc": { "description": "Guest profile restricted reason description", "type": "string", "maxLength": 2000 }, "guestRestricted": { "description": "True indicates there are restrictions associated with the current profile.", "type": "boolean" }, "registrationCardNo": { "description": "Unique identifier of the police registration card number.", "type": "string", "minLength": 0, "maxLength": 40 }, "nameType": { "$ref": "#/definitions/nameTypeType" }, "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": 20 } } }, "resAccompanyGuestListType": { "type": "array", "description": "Collection of accompany guests", "maxItems": 4000, "items": { "$ref": "#/definitions/resAccompanyGuestInfoType" } }, "resAccompanyGuestInfoType": { "type": "object", "properties": { "firstName": { "description": "Given name, first name or names", "type": "string", "maxLength": 2000 }, "lastName": { "description": "Family name, last name.", "type": "string", "maxLength": 2000 }, "fullName": { "description": "String representation of the full name", "type": "string", "maxLength": 2000 }, "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": "#/definitions/profileIdList" } } }, "givenNameType": { "type": "string", "description": "Given name, first name or names", "minLength": 0, "maxLength": 40 }, "namePrefixType": { "type": "string", "description": "Salutation of honorific. (e.g., Mr. Mrs., Ms., Miss, Dr.)", "minLength": 0, "maxLength": 40 }, "nameTypeType": { "type": "string", "enum": [ "Guest", "Company", "Agent", "Contact", "Source", "Group", "Employee", "Hotel", "Purge" ] }, "surnameType": { "type": "string", "description": "Family name, last name.", "minLength": 0, "maxLength": 40 }, "membershipInfoType": { "type": "object", "description": "The Membership object identifies the frequent customer reward program.", "properties": { "membershipId": { "description": "Membership ID (Unique ID from the memberships table).", "type": "number" }, "programCode": { "description": "The code or name of the membership program ('Hertz', 'AAdvantage', etc.).", "type": "string", "minLength": 0, "maxLength": 20 }, "bonusCode": { "description": "The code or name of the bonus program. BonusCode can be used to indicate the level of membership (Gold Club, Platinum member, etc.)", "type": "string", "minLength": 0, "maxLength": 20 }, "membershipTypeDesc": { "description": "The description of the ProgramCode.(Delta Previlige for code DP)", "type": "string", "minLength": 0, "maxLength": 2000 }, "membershipLevelDesc": { "description": "The description of the Bonus Code.(Platinum for code P)", "type": "string", "minLength": 0, "maxLength": 2000 }, "accountId": { "description": "The account identification number for this particular member in this particular program.", "type": "string", "minLength": 0, "maxLength": 50 }, "membershipLevel": { "description": "The code or name of the membership level and indicates the level of membership (Gold Club, Platinum member, etc.). This is same as the BonusCode.", "type": "string", "minLength": 0, "maxLength": 20 }, "playerRanking": { "description": "Ranking assigned to the Player Profile by the Gaming system.", "type": "integer" } } }, "addressSearchType": { "type": "object", "description": "Address Details such as city, state, country, postal code etc.", "properties": { "cityName": { "description": "City (e.g., Dublin), town, or postal station (i.e., a postal service territory, often used in a military address).", "type": "string", "minLength": 0, "maxLength": 40 }, "postalCode": { "description": "Post Office Code number.", "type": "string", "minLength": 0, "maxLength": 15 }, "state": { "description": "State or Province name (e.g., Texas).", "type": "string", "minLength": 0, "maxLength": 20 }, "country": { "description": "Country name (e.g., Ireland).", "$ref": "#/definitions/countryNameType" }, "streetAddress": { "description": "First Line of Street Address. For profile search it matches the first Address line.", "type": "string", "minLength": 0, "maxLength": 80 }, "excludeNoCity": { "description": "When true indicates that only profiles with city will be fetched.", "type": "boolean" } } }, "guestLastStayInfoType": { "type": "object", "description": "Contains last stay related details of the guest.", "properties": { "lastStayDate": { "description": "Guest's last stay date.", "type": "string", "format": "date" }, "lastStayRoom": { "description": "Room Number where the guest stayed.", "type": "string", "minLength": 0, "maxLength": 20 }, "lastStayRate": { "description": "The Rate amount of the guest's last stay.", "$ref": "#/definitions/currencyAmountType" }, "totalStay": { "description": "The total number of previous stay of the guest.", "type": "integer" } } }, "phoneNumberType": { "type": "string", "description": "Phone number", "minLength": 0, "maxLength": 40 }, "basicEmailType": { "type": "string", "description": "Email address", "minLength": 0, "maxLength": 2000 }, "vIPType": { "type": "object", "description": "The supplier's ranking of the customer.", "properties": { "vIPCode": { "description": "VIP Code.", "type": "string", "minLength": 0, "maxLength": 20 }, "vipDescription": { "description": "VIP Description.", "type": "string", "minLength": 0, "maxLength": 80 } } }, "resGuestExternalInfoType": { "type": "object", "description": "Specifies Company or Travel Agent profile using IATA or Corp. No.", "properties": { "givenName": { "description": "Given name, first name or names", "$ref": "#/definitions/givenNameType" }, "surname": { "description": "Family name, last name.", "$ref": "#/definitions/surnameType" } } }, "indicatorsType": { "type": "array", "description": "Collection of lamp indicators.", "maxItems": 4000, "items": { "$ref": "#/definitions/indicatorType" } }, "indicatorType": { "type": "object", "description": "Lamp indicator Type.", "properties": { "indicatorName": { "description": "Name of the indicator.", "type": "string", "minLength": 0, "maxLength": 80 }, "count": { "description": "Indicates number of occurrences of the indicator.", "type": "integer" } } }, "advanceCheckInType": { "type": "object", "description": "Information relating to Reservation's Advance Checked In state and Expected Time of Return", "properties": { "advanceCheckedIn": { "description": "Indicates if the reservation is marked as Advance Checked In", "type": "boolean" }, "expectedReturnTime": { "description": "Expected Return Time", "type": "string", "format": "date-time" }, "eTRComments": { "description": "ETR Comments", "type": "string", "minLength": 0, "maxLength": 2000 } } }, "waitlistResType": { "type": "object", "description": "Information regarding why reservation is being /has been waitlisted.", "properties": { "reasonDescription": { "description": "Waitlist Reason Description.", "type": "string", "minLength": 0, "maxLength": 2000 }, "priorityDescription": { "description": "Waitlist priority Description.", "type": "string", "minLength": 0, "maxLength": 2000 }, "description": { "description": "Description why the reservation is being /has been waitlisted.", "type": "string", "minLength": 0, "maxLength": 2000 }, "reasonCode": { "description": "Waitlist Reason Code.", "type": "string", "minLength": 0, "maxLength": 20 }, "priorityCode": { "description": "Waitlist Priority Code.", "type": "string", "minLength": 0, "maxLength": 20 }, "telephone": { "description": "Guest telephone number.", "type": "string", "minLength": 0, "maxLength": 40 } } }, "searchMatchesType": { "type": "array", "description": "List of Generic Name-Value-Pair Parameters used for super search matches.", "maxItems": 4000, "items": { "$ref": "#/definitions/searchMatchType" } }, "searchMatchType": { "type": "object", "description": "Search match indicating attribute and the matching value.", "properties": { "attribute": { "description": "Search match attribute.", "type": "string", "minLength": 0, "maxLength": 2000 }, "value": { "description": "Search match value.", "type": "string", "minLength": 0, "maxLength": 2000 } } }, "salesInfoType": { "type": "object", "description": "Provides sales information about the profiles of type company, travel agent, source and contact.", "properties": { "scope": { "description": "Defines the scope.", "type": "string", "minLength": 0, "maxLength": 2000 }, "scopeCity": { "description": "Defines the scope city.", "type": "string", "minLength": 0, "maxLength": 2000 }, "accountType": { "description": "Defines the account type.", "type": "string", "minLength": 0, "maxLength": 20 }, "accountSource": { "description": "Defines the account source.", "type": "string", "minLength": 0, "maxLength": 2000 }, "industryCode": { "description": "Defines the industry code.", "type": "string", "minLength": 0, "maxLength": 2000 }, "businessSegments": { "description": "Defines the Business segments.", "type": "string", "minLength": 0, "maxLength": 2000 }, "priority": { "description": "Defines the priority.", "type": "string", "minLength": 0, "maxLength": 4000 }, "roomsPotential": { "description": "Defines the rooms potential.", "type": "string", "minLength": 0, "maxLength": 4000 }, "actionCode": { "description": "Defines the action code.", "type": "string", "minLength": 0, "maxLength": 4000 }, "competitionCode": { "description": "Defines the competition code.", "type": "string", "minLength": 0, "maxLength": 4000 }, "influence": { "description": "Defines the influence for the contact profile.", "type": "string", "minLength": 0, "maxLength": 2000 }, "preferredRoom": { "description": "Defines the Preferred Room for profile.", "type": "string", "minLength": 0, "maxLength": 20 }, "hotelId": { "description": "Hotel Code used to filter the sales information.", "type": "string", "minLength": 0, "maxLength": 20 } } }, "companyType": { "type": "object", "properties": { "companyName": { "description": "Name of the company.", "type": "string", "minLength": 0, "maxLength": 40 }, "companyName2": { "description": "Second Name of the company.", "type": "string", "minLength": 0, "maxLength": 40 }, "companyName3": { "description": "Third Name of the company.", "type": "string", "minLength": 0, "maxLength": 40 }, "alternateName": { "description": "Alternate Name of the Company. Mainly, it's the name of the company written in the Alternate Language.", "type": "string", "minLength": 0, "maxLength": 40 }, "alternateLanguage": { "description": "Alternate Language of the company.", "type": "string", "minLength": 0, "maxLength": 20 }, "businessLocale": { "description": "A jurisdiction(Territory) in which a company is authorized to do business.", "type": "string", "minLength": 0, "maxLength": 40 }, "iATAInfo": { "description": "IATA Information of the profile.", "$ref": "#/definitions/iATAInfoType" }, "businessTitle": { "description": "Business Title.", "type": "string", "minLength": 0, "maxLength": 80 }, "currencyCode": { "description": "The code specifying a monetary unit. Use ISO 4217, three alpha code.", "type": "string", "minLength": 0, "maxLength": 20 }, "language": { "description": "Language identification.", "type": "string", "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*" }, "nationality": { "description": "Nationality code identification", "type": "string", "minLength": 0, "maxLength": 20 }, "nationalityDescription": { "description": "Nationality code description", "type": "string", "minLength": 0, "maxLength": 80 }, "commissionCode": { "description": "Commission code of the company.", "type": "string", "minLength": 0, "maxLength": 20 }, "creditRating": { "description": "Credit Rating of the company.", "type": "string", "minLength": 0, "maxLength": 20 }, "corporateIdType": { "description": "The type of corporate ID", "type": "string", "minLength": 0, "maxLength": 20 }, "vipStatus": { "description": "VIP status of the company.", "type": "string", "minLength": 0, "maxLength": 20 }, "vipDescription": { "description": "Description of the VIP status.", "type": "string", "minLength": 0, "maxLength": 2000 }, "blacklist": { "description": "This element tells if profile is blacklisted or not.", "type": "boolean" } } }, "iATAInfoType": { "type": "object", "description": "IATA Information of the profile.", "properties": { "iATACompany": { "description": "IATA Company Detail.", "type": "string", "minLength": 0, "maxLength": 20 }, "iATAConsortia": { "description": "IATA Consortia.", "type": "string", "minLength": 0, "maxLength": 40 }, "iATAValidationResult": { "description": "IATA Validation Result.", "type": "boolean" } } }, "uRLInfoType": { "type": "object", "description": "Web site address.", "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": 20 } } }, "ownerType": { "type": "object", "description": "Generic type for information about an owner.", "properties": { "hotel": { "description": "Hotel to which the owner belongs to.", "$ref": "#/definitions/codeDescriptionType" }, "userId": { "description": "Unique application user ID.", "$ref": "#/definitions/uniqueID_Type" }, "userName": { "description": "Unique application user name of the owner.", "type": "string", "minLength": 0, "maxLength": 40 }, "ownerCode": { "description": "Unique Code to identify the owner.", "type": "string", "minLength": 0, "maxLength": 20 }, "profileId": { "description": "Unique owner profile information.", "$ref": "#/definitions/profileId" }, "name": { "description": "Provides name information of the owner.", "$ref": "#/definitions/personNameType" }, "department": { "description": "Department to which the owner belongs to.", "$ref": "#/definitions/codeDescriptionType" }, "email": { "description": "Email information of the owner.", "$ref": "#/definitions/emailInfoType" }, "phone": { "description": "Information on the telephone number of the owner.", "$ref": "#/definitions/telephoneInfoType" }, "relationship": { "description": "Relationship of the owner within the profile or block.", "$ref": "#/definitions/codeDescriptionType" }, "primary": { "description": "When true, this is a primary owner.", "type": "boolean" } } }, "uniqueIDListType": { "type": "array", "description": "Unique Id that references an object uniquely in the system.", "maxItems": 4000, "items": { "$ref": "#/definitions/uniqueID_Type" } }, "profileTypeType": { "type": "string", "description": "The types of Profile handled by the web service.", "enum": [ "Guest", "Agent", "Company", "Group", "Source", "Employee", "Hotel", "Vendor", "Contact", "Purge", "BusinessHeader", "BillingAccount", "Activity", "Potential", "Account" ] }, "imageSetType": { "type": "object", "description": "Represents on image set record.", "properties": { "language": { "description": "Language identification.", "type": "string", "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*" }, "imageSet": { "description": "The image set name.", "type": "string", "minLength": 0, "maxLength": 800 }, "sequenceId": { "description": "The image set sequence ID.", "type": "integer" }, "imageStyle": { "description": "The image set enumerated style.", "$ref": "#/definitions/imageStyleType" }, "imageType": { "description": "The image set type.", "type": "string", "minLength": 0, "maxLength": 80 }, "hotelId": { "description": "The image set hotel code.", "type": "string", "minLength": 0, "maxLength": 20 }, "imageURL": { "description": "The image set URL.", "type": "string", "minLength": 0, "maxLength": 2000 }, "description": { "description": "The image set description.", "type": "string", "minLength": 0, "maxLength": 2000 }, "imageOrder": { "description": "The image set order.", "type": "integer" }, "website": { "description": "The image set website.", "type": "string", "minLength": 0, "maxLength": 2000 } } }, "imageStyleType": { "type": "string", "description": "An enumeration of image styles.", "enum": [ "Full", "Thumbnail", "Icon", "Square", "Banner", "Button", "Lowres", "Highres" ] }, "profileCashieringType": { "type": "object", "description": "Contains cashiering related details for the profile", "properties": { "directBillingList": { "description": "Contains the direct billing related information for the profile.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/directBillingType" } }, "autoFolioSettlementType": { "description": "Contains the auto folio settlement type for the profile.", "type": "string", "minLength": 0, "maxLength": 40 }, "paymentDueDays": { "description": "Ability to define on the account, the number of days after which the invoice should be paid.", "type": "integer" }, "taxPercent1": { "description": "Tax1 Percentage for Collecting Agent.", "type": "integer" }, "taxPercent2": { "description": "Tax2 Percentage for Collecting Agent.", "type": "integer" }, "taxPercent3": { "description": "Tax3 Percentage for Collecting Agent.", "type": "integer" }, "taxPercent4": { "description": "Tax4 Percentage for Collecting Agent.", "type": "integer" }, "taxPercent5": { "description": "Tax5 Percentage for Collecting Agent.", "type": "integer" }, "arNoCentral": { "description": "Account Receivables Central Number.", "type": "string", "minLength": 0, "maxLength": 20 }, "referenceCurrency": { "description": "Reference Currency.", "type": "string", "minLength": 0, "maxLength": 20 }, "vATOffsetYN": { "description": "VAT Offset Flag.", "type": "string", "minLength": 0, "maxLength": 1 }, "currencyCode": { "description": "The code specifying a monetary unit. Use ISO 4217, three alpha code.", "type": "string", "minLength": 0, "maxLength": 20 }, "currencySymbol": { "description": "The symbol for the currency, e.g, for currencyCode USD the symbol is $.", "type": "string", "minLength": 0, "maxLength": 10 }, "decimalPlaces": { "description": "Indicates the number of decimal places for a particular currency. This is equivalent to the ISO 4217 standard \"minor unit\". Typically used when the amount provided includes the minor unit of currency without a decimal point (e.g., USD 8500 needs DecimalPlaces=\"2\" to represent $85).", "type": "integer" } } }, "directBillingType": { "type": "object", "description": "This is the preconfigured routing instruction type.", "properties": { "hotelId": { "description": "Hotel Code for which the details of direct billing is provided for a profile.", "type": "string", "minLength": 0, "maxLength": 20 }, "aRNumber": { "description": "Hotel Code for which the details of direct billing is provided for a profile.", "type": "string", "minLength": 0, "maxLength": 20 } } }, "lastStayInfoType": { "type": "object", "description": "Contains last stay related details for the profile", "properties": { "lastVisit": { "description": "Used to hold last stay information for the profile.", "type": "string", "format": "date" }, "lastRoom": { "description": "Used to hold last room information for the profile.", "type": "string", "maxLength": 2000 }, "lastRate": { "description": "Used to hold last rate information for the profile.", "$ref": "#/definitions/currencyAmountType" }, "totalStay": { "description": "The total number of previous stay of the profile.", "type": "integer" } } }, "mailingActionsType": { "type": "object", "description": "Defines mailing action list for the profile.", "properties": { "mailingAction": { "description": "Defines mailing action code and description.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/codeDescriptionType" } }, "active": { "description": "When true indicates that profile has subscribed to the mailing list.", "type": "boolean" }, "totalRows": { "description": "Total number of rows queried", "type": "integer" } } }, "eCertificatesType": { "type": "array", "description": "List of e-certificates for the profile.", "maxItems": 4000, "items": { "$ref": "#/definitions/eCertificateType" } }, "eCertificateType": { "type": "object", "description": "E-Certificates details.", "properties": { "certificateId": { "description": "System generated unique certificate id.", "type": "integer" }, "voucherNo": { "description": "System generated unique voucher number.", "type": "string", "minLength": 0, "maxLength": 40 }, "certificateNo": { "description": "Printed certificate no. This has to be unique.", "type": "string", "minLength": 0, "maxLength": 40 }, "eCertificateInfo": { "$ref": "#/definitions/eCertificateInfoType" }, "expiryDate": { "description": "Date of expiry.", "type": "string", "format": "date" }, "newExpiryDate": { "description": "New Date of expiry to extend e-certificate.", "type": "string", "format": "date" }, "profileId": { "description": "NameId.", "$ref": "#/definitions/profileId" }, "consumptionDetail": { "$ref": "#/definitions/eCertificateConsumptionType" }, "status": { "description": "Status of the certificate.", "$ref": "#/definitions/eCertificateStatusType" }, "printed": { "description": "Print status of the certificate.", "type": "boolean" }, "inactiveDate": { "description": "Date the record was marked as inactive.", "type": "string", "format": "date" }, "awardId": { "description": "AwardID.", "$ref": "#/definitions/awardId" }, "databaseId": { "description": "External reference from which the record is created.", "type": "string", "minLength": 0, "maxLength": 20 }, "source": { "description": "Source of e-certificate.", "$ref": "#/definitions/eCertificateIssueSourceType" }, "issueType": { "description": "Process action issued the certificate. valid values are assigned (a),opt in (o) and purchased (p).", "$ref": "#/definitions/eCertificateIssueType" }, "issueDate": { "description": "Date when certificate was issued.", "type": "string", "format": "date" }, "awardPoints": { "description": "Award points if any in case of certificate use membership award.", "type": "integer" }, "generationDetail": { "$ref": "#/definitions/eCertificateGenerationType" }, "originalVoucherNo": { "description": "In case of in lieu of certificate this will contain the original voucher no.", "type": "string", "minLength": 0, "maxLength": 40 }, "originalCertificateNo": { "description": "In case of in lieu of certificate this will contain the original certificate no.", "type": "string", "minLength": 0, "maxLength": 40 }, "inLieuSeq": { "description": "Seq of the in lieu of certificate. 1..n. original certificate will be treated as null = 0.", "type": "integer" }, "cancelRequestDate": { "description": "Date on which the cancellation was requested.", "type": "string", "format": "date" }, "extensionCount": { "description": "Number of times e-certificate is already extended.", "type": "integer" } } }, "eCertificateConsumptionType": { "type": "object", "description": "E-Certificates details.", "properties": { "hotelId": { "description": "Property where certificate was consumed for.", "type": "string", "minLength": 0, "maxLength": 20 }, "source": { "description": "Source of consumption.", "$ref": "#/definitions/eCertificateConsumeSourceType" }, "surname": { "description": "Last name of the person who consumed the certificate..", "type": "string", "minLength": 0, "maxLength": 40 }, "firstName": { "description": "First name of the person who consumed the certificate.", "type": "string", "minLength": 0, "maxLength": 40 }, "middleName": { "description": "Middle name of the person who consumed the certificate.", "type": "string", "minLength": 0, "maxLength": 40 }, "email": { "description": "Email of the person who consumed the certificate.", "type": "string", "minLength": 0, "maxLength": 2000 }, "date": { "description": "Date the certificate was consumed.", "type": "string", "format": "date" }, "userName": { "description": "Application user who created the consumption.", "type": "string", "minLength": 0, "maxLength": 2000 }, "userNotes": { "description": "Any notes on the certificate entered at time of consumption.", "type": "string", "minLength": 0, "maxLength": 4000 }, "referenceId": { "description": "Any reference like reservation no etc against which the certificate was consumed.", "$ref": "#/definitions/uniqueID_Type" }, "locationType": { "description": "Consumption location type.", "type": "string", "minLength": 0, "maxLength": 20 }, "authCode": { "description": "Authorization code for consumption.", "type": "string", "minLength": 0, "maxLength": 100 }, "serviceDate": { "description": "Date on which the service is due (arrival date in case of reservation).", "type": "string", "format": "date" } } }, "eCertificateConsumeSourceType": { "type": "string", "description": "Indicates that OPERA E-Certificate is consumed by hotelPMS.", "enum": [ "Central", "Web", "Hotel" ] }, "eCertificateIssueSourceType": { "type": "string", "description": "Indicates that OPERA E-Certificate is issued by external system.", "enum": [ "Opera", "Web", "Interface" ] }, "eCertificateInfoType": { "type": "object", "description": "E-Certificates details.", "properties": { "certificateType": { "description": "User defined certificate code.", "type": "string", "minLength": 0, "maxLength": 20 }, "membershipType": { "description": "Membership type to which the certificate is linked to.", "type": "string", "minLength": 0, "maxLength": 20 }, "awardCode": { "description": "Award type to which the certificate is linked to.", "type": "string", "minLength": 0, "maxLength": 20 }, "promotionCode": { "description": "Promotion code to which certificate is attached to.", "type": "string", "minLength": 0, "maxLength": 20 }, "voucherBenefitCode": { "description": "Voucher benefit code attached to the certificate.", "type": "string", "minLength": 0, "maxLength": 40 }, "hotels": { "description": "Hotel to which certificate is attached to.", "type": "object", "properties": { "code": { "type": "array", "maxItems": 4000, "items": { "type": "string", "minLength": 0, "maxLength": 20 } }, "scope": { "description": "Scope of e-cert: global,single property or multi property.", "$ref": "#/definitions/eCertificateScopeType" } } }, "description": { "description": "Description about the certificate.", "type": "string", "minLength": 0, "maxLength": 200 }, "longDescription": { "description": "Detail description about the certificate.", "type": "string", "minLength": 0, "maxLength": 4000 }, "label": { "description": "Label for the certificate.", "type": "string", "minLength": 0, "maxLength": 40 }, "maxExtensionAllowed": { "description": "Number of times e-certificate can be extended.", "type": "integer" }, "usageCriteria": { "$ref": "#/definitions/eCertificateUsageCriteriaType" }, "value": { "description": "Value of the certificate for the guest.", "$ref": "#/definitions/currencyAmountType" }, "cost": { "description": "Cost of certificate.", "$ref": "#/definitions/currencyAmountType" }, "benefitSummary": { "description": "Summary of Benefits attached to this ECertificate.", "type": "string", "minLength": 0, "maxLength": 4000 } } }, "eCertificateScopeType": { "type": "string", "description": "Indicates that OPERA E-Certificate is available for a specific list of hotels.", "enum": [ "Global", "Hotel", "MultiHotel" ] }, "eCertificateUsageCriteriaType": { "type": "object", "description": "E-Certificates details.", "properties": { "reservation": { "description": "Indicates if certificate is to be used against reservation or not.", "type": "boolean" }, "web": { "description": "Indicates if web certificate can be consumed in OWS.", "type": "boolean" }, "webAllowed": { "description": "Indicates if certificate consumption allowable on the web.", "type": "boolean" }, "benefit": { "description": "Indicates to attach a rate code to the e-certificate as a benefit.", "type": "boolean" }, "hotel": { "description": "Indicates if web certificate can be consumed in hotel.", "type": "boolean" }, "verifyCertificateNo": { "description": "Specify if the certificate number verification is required at time of consumption or not.", "type": "boolean" }, "cancelAllowed": { "description": "Identify if cancel is allowed or not.", "type": "boolean" }, "generateInLieuCertificate": { "description": "Identify if in lieu of certificate can be generated or not.", "type": "boolean" } } }, "eCertificateGenerationType": { "type": "object", "description": "E-Certificates details.", "properties": { "ruleId": { "description": "Key to identify the generation rule id.", "$ref": "#/definitions/uniqueID_Type" }, "generationDetail": { "description": "Reason for which e-certificate was generated.", "type": "string", "minLength": 0, "maxLength": 4000 }, "referenceValue": { "description": "Type of value that is in the certificate.valid values are membership_level.", "type": "string", "minLength": 0, "maxLength": 20 } } }, "awardId": { "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": { "type": { "description": "A reference to the type of object defined by the UniqueID element.", "type": "string", "minLength": 0, "maxLength": 20 }, "instance": { "description": "The identification of a record as it exists at a point in time. An instance is used in update messages where the sender must assure the server that the update sent refers to the most recent modification level of the object being updated.", "type": "string", "minLength": 0, "maxLength": 80 }, "idContext": { "description": "Used to identify the source of the identifier (e.g., IATA, ABTA).", "type": "string", "minLength": 0, "maxLength": 80 }, "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 } } }, "eCertificateStatusType": { "type": "string", "description": "Indicates that OPERA E-Certificate is reserved.", "enum": [ "Cancelled", "Consumed", "Deleted", "Expired", "Issued", "Reserved" ] }, "eCertificateIssueType": { "type": "string", "description": "Indicates that guest purchased OPERA E-Certificate.", "enum": [ "Assigned", "OptedIn", "Purchased" ] }, "privacyInfoType": { "type": "object", "description": "Defines Privacy related information for the profile.", "properties": { "marketResearchParticipation": { "description": "Indicates if the profile participates in market research.", "type": "boolean" }, "lastPrivacyPromptDate": { "description": "Indicate the last privacy prompt date of the guest.", "type": "string", "format": "date" }, "infoFromThirdParty": { "description": "Indicates if the profile is ok getting info from third parties.", "type": "boolean" }, "autoEnrollLoyaltyProgram": { "description": "Indicates if the profile wishes to be automatically enrolled in the property's loyalty program.", "type": "boolean" }, "allowPhone": { "description": "Indicates if the profile wishes to allow phone calls.", "type": "boolean" }, "allowSMS": { "description": "Indicates if the profile wishes to allow SMS.", "type": "boolean" }, "allowEmail": { "description": "Indicates if the profile wishes to allow Email.", "type": "boolean" }, "optInMailingList": { "description": "Indicates if the profile wishes to opt in for Mailing List.", "type": "boolean" }, "optInMarketResearch": { "description": "Indicates if the profile wishes to opt in for Market Research.", "type": "boolean" }, "optInThirdParty": { "description": "Indicates if the profile wishes to opt in for Third Party.", "type": "boolean" }, "optInAutoEnrollmentMember": { "description": "Indicates if the profile wishes to opt in for Auto Enrolment Member.", "type": "boolean" }, "optInPhone": { "description": "Indicates if the profile wishes to opt in for Phone.", "type": "boolean" }, "optInSms": { "description": "Indicates if the profile wishes to opt in for SMS.", "type": "boolean" }, "optInEmail": { "description": "Indicates if the profile wishes to opt in for Email.", "type": "boolean" } } }, "profileTaxInfoType": { "type": "object", "description": "Profile information related to tax.", "properties": { "tax1No": { "description": "The tax id of this profile. Usually issued by a government agency. Used by 1099 printing.", "type": "string", "minLength": 0, "maxLength": 40 }, "tax2No": { "description": "Tax 2 id of this profile.", "type": "string", "minLength": 0, "maxLength": 40 }, "taxCategory": { "description": "Tax Category to be changed.", "type": "string", "minLength": 0, "maxLength": 20 }, "taxOffice": { "description": "Tax Office to be changed.", "type": "string", "minLength": 0, "maxLength": 30 }, "taxType": { "description": "Tax type to be changed.", "type": "string", "minLength": 0, "maxLength": 20 }, "businessId": { "description": "Business ID. The maximum length of this element should not exceed 120 characters.", "type": "string", "minLength": 0, "maxLength": 128 }, "businessRegistration": { "description": "Business Registration Code. The maximum length of this element should not exceed 120 characters.", "type": "string", "minLength": 0, "maxLength": 128 } } }, "negotiatedInfoType": { "type": "object", "description": "This provides information for a profile negotiated rate.", "properties": { "corporateAgreementId": { "description": "The master identifier for multiple offices/locations under the same company profile. This is optional", "type": "string", "minLength": 0, "maxLength": 80 }, "comissionCode": { "description": "Informational purposes only in numeric format.", "type": "string", "minLength": 0, "maxLength": 20 }, "order": { "description": "The sell order.", "type": "integer" }, "inactive": { "description": "Negotiated Rate is inactive or not", "type": "boolean" }, "start": { "description": "The starting value of the date range.", "type": "string", "format": "date" }, "end": { "description": "The ending value of the date range.", "type": "string", "format": "date" } } }, "profileAccessType": { "type": "object", "properties": { "croCode": { "description": "Indicates the CRO code where the profile was created", "type": "string", "minLength": 0, "maxLength": 200 }, "hotelId": { "description": "Indicates the Hotel code where the profile was created", "type": "string", "minLength": 0, "maxLength": 200 }, "sharedLevel": { "description": "Indicates whether the profile is shared at the following levels : global/property/CRO", "$ref": "#/definitions/profileSharedLevelType" } } }, "profileSharedLevelType": { "type": "string", "description": "Simple types for Shared level.", "enum": [ "Global", "Property", "Cro" ] }, "preferenceTypeType": { "type": "object", "description": "Preference details for the profile.", "properties": { "preference": { "description": "Collection of Preferences for the profile.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/preferenceType" } }, "preferenceType": { "description": "Preference group code.", "type": "string", "minLength": 0, "maxLength": 20 }, "preferenceTypeDescription": { "description": "Preference group description.", "type": "string", "maxLength": 2000 }, "sequence": { "description": "Preference Sequence.", "type": "string", "maxLength": 2000 }, "maxQuantity": { "description": "Maximum quantity of preferences allowed per preference group.", "type": "integer" }, "availableQuantity": { "description": "Available quantity of preferences (maximum quantity - Existing preferences)per preference group.", "type": "integer" }, "maxResortUsedQuantity": { "description": "Maximum quantity of preferences used by any resort per preference group.", "type": "integer" }, "reservationPreference": { "description": "Whether this preference is reservation preference or not.", "type": "boolean" }, "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 resposible for the creation.", "type": "string", "minLength": 0, "maxLength": 200 }, "lastModifyDateTime": { "description": "Time stamp of last modification.", "type": "string", "format": "date-time" }, "lastModifierId": { "description": "Identifies the last software system or person to modify a record.", "type": "string", "minLength": 0, "maxLength": 200 }, "links": { "$ref": "#/definitions/links" } } }, "preferenceType": { "type": "object", "description": "Guest Preference details for the profile.", "properties": { "preferenceValue": { "description": "Preference value for display purposes.", "type": "string", "minLength": 0, "maxLength": 200 }, "description": { "description": "Preference Description for display purposes.", "type": "string", "minLength": 0, "maxLength": 2000 }, "global": { "description": "Whether this preference is property specific or not.", "type": "boolean" }, "source": { "description": "Source of the preference.", "type": "string", "minLength": 0, "maxLength": 40 }, "hotels": { "description": "If specified preference belongs to the Hotels listed, otherwise it is a global preference.", "type": "array", "maxItems": 4000, "items": { "type": "string", "minLength": 0, "maxLength": 20 } }, "preferenceCode": { "type": "string", "minLength": 0, "maxLength": 20 }, "excludedPreferencesCount": { "description": "Specifies the count of preferences excluded for the attached reservation preference.", "type": "integer" } } }, "profileSubscriptionListType": { "type": "array", "description": "Details of the OPERA Profile subscription to external system", "maxItems": 4000, "items": { "$ref": "#/definitions/profileSubscriptionType" } }, "profileSubscriptionType": { "type": "object", "description": "Contains details of the profile subscription. The subscription represents the link between the OPERA profile and the external profile within a particular external system", "properties": { "profileId": { "description": "OPERA Profile ID that this subscription record corresponds to.", "$ref": "#/definitions/profileId" }, "externalProfileId": { "description": "Profile ID within the external system.", "$ref": "#/definitions/uniqueID_Type" }, "profileInfo": { "description": "This provides name information for a person.", "type": "object", "properties": { "name": { "description": "Family name, last name or Company Name.", "type": "string", "minLength": 0, "maxLength": 40 }, "fullName": { "description": "Full display Name.", "type": "string", "minLength": 0, "maxLength": 200 }, "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 }, "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 }, "nameType": { "description": "Type of name of the individual, such as former, nickname, alternate or alias name.", "$ref": "#/definitions/personNameTypeType" }, "profileType": { "description": "OPERA profile type such as Individual or Company", "$ref": "#/definitions/profileTypeType" } } }, "distributed": { "description": "Indicates if the profile was distributed to the external system.", "type": "boolean" }, "force": { "description": "Indicates if the profile information should be overwritten by the external system.", "type": "boolean" }, "subscriptionDate": { "description": "Timestamp when the profile was subscribed to.", "type": "string", "format": "date-time" }, "lastDistributionDate": { "description": "Timestamp of the most recent distribution of this profile to the external system.", "type": "string", "format": "date-time" }, "lastExternalUpdateDate": { "description": "Timestamp of the most recent update of the subscription information by the external system.", "type": "string", "format": "date-time" }, "inactive": { "description": "Indicates whether this subscription is active or inactive.", "type": "boolean" } } }, "keywordType": { "type": "object", "properties": { "keywordDetail": { "description": "The keyword new value, in case keyword value is modified.", "$ref": "#/definitions/keywordDetailType" }, "type": { "description": "The type of keyword", "type": "string", "minLength": 0, "maxLength": 20 }, "keyword": { "description": "The keyword value.", "type": "string", "minLength": 0, "maxLength": 80 } } }, "keywordDetailType": { "type": "object", "properties": { "newKeyword": { "description": "The new keyword value.", "type": "string", "minLength": 0, "maxLength": 80 } } }, "userDefinedFieldsType": { "type": "object", "description": "A common type used to hold user defined fields(UDFs). This type should be used to handle UDFs on RReservation, Profiles, etc.", "properties": { "characterUDFs": { "description": "Collection of user defined fields of Character/String Type.", "$ref": "#/definitions/characterUDFsType" }, "numericUDFs": { "description": "Collection of user defined fields of Numeric Type.", "$ref": "#/definitions/numericUDFsType" }, "dateUDFs": { "description": "Collection of user defined fields of Date Type.", "$ref": "#/definitions/dateUDFsType" } } }, "dateUDFsType": { "type": "array", "description": "Used to hold collection of user defined fields of Date Type.", "maxItems": 4000, "items": { "$ref": "#/definitions/dateUDFType" } }, "dateUDFType": { "type": "object", "description": "Used to hold user defined field of Date Type.", "properties": { "name": { "description": "Used to hold user defined field of Date Type. It is highly recommended to use UDFD01, UDFD02,...UDFN20 (Total 20) as Date UDF names(commonly used on Reservation, Profile etc.). Name is not restricted using enumeration, to provide flexibility of different name usage if required.", "type": "string", "minLength": 0, "maxLength": 20 }, "value": { "description": "Value of user defined field.", "type": "string", "format": "date" }, "altname": { "description": "Label of user defined field used by vendors or customers.", "type": "string", "minLength": 0, "maxLength": 2000 } } }, "characterUDFsType": { "type": "array", "description": "Used to hold collection of user defined fields of Character/String Type.", "maxItems": 4000, "items": { "$ref": "#/definitions/characterUDFType" } }, "characterUDFType": { "type": "object", "description": "Used to hold user defined field of Character/String Type.", "properties": { "name": { "description": "Used to hold user defined field of Character Type. It is highly recommended to use UDFC01, UDFC02,...UDFC40 (Total 40) as Character/String UDF names(commonly used on Reservation, Profile etc.). Name is not restricted using enumeration, to provide flexibility of different name usage if required.", "type": "string", "minLength": 0, "maxLength": 20 }, "value": { "description": "Value of user defined field.", "type": "string", "minLength": 0, "maxLength": 2000 }, "altname": { "description": "Label of user defined field used by vendors or customers.", "type": "string", "minLength": 0, "maxLength": 2000 } } }, "numericUDFsType": { "type": "array", "description": "Used to hold collection of user defined fields of Numeric Type.", "maxItems": 4000, "items": { "$ref": "#/definitions/numericUDFType" } }, "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" }, "altname": { "description": "Label of user defined field used by vendors or customers.", "type": "string", "minLength": 0, "maxLength": 2000 } } }, "profileAllowedActionsType": { "type": "array", "description": "Allowed actions for profile operations.", "maxItems": 2, "items": { "$ref": "#/definitions/profileAllowedActionType" } }, "profileAllowedActionType": { "type": "string", "description": "Flag indicating whether Profile is Enrolled to Primary Membership Program.", "enum": [ "NameChange", "TaxIDChange", "EnrollToPrimaryMembership" ] }, "masterInfoType": { "type": "object", "properties": { "codeInfo": { "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/codeInfoType" } }, "codeType": { "$ref": "#/definitions/masterType" } } }, "codeInfoType": { "type": "object", "description": "", "properties": { "description": { "type": "string", "minLength": 0, "maxLength": 80 }, "addtionalCodeInfo": { "$ref": "#/definitions/addtionalCodeInfoType" }, "hotelId": { "type": "string", "minLength": 0, "maxLength": 20 }, "code": { "type": "string", "minLength": 0, "maxLength": 20 } } }, "addtionalCodeInfoType": { "type": "object", "description": "Allows to supply additional information in the form of name value pairs in Code block, for a given MasterInfoType.", "properties": { "code": { "description": "Holds name of additional code information", "type": "array", "maxItems": 4000, "items": { "type": "object", "properties": { "name": { "description": "Holds name of additional code information", "$ref": "#/definitions/masterInfoCodeDetailType" }, "value": { "description": "Holds value of additional code information", "type": "string", "minLength": 0, "maxLength": 2000 } } } } } }, "masterInfoCodeDetailType": { "type": "string", "enum": [ "LongDescription", "ShortDescription" ] }, "masterType": { "type": "string", "enum": [ "Country", "State", "AddressType", "PhoneType", "RateCategory", "CalculationRule", "PostingRythym", "BillingInstruction", "TransactionCode", "DisplaySet", "MailingActions", "DistanceType", "District", "Territory", "FiscalRegion", "InventoryItem", "Package", "RoomFeaturePreference", "SpecialPreference", "Promotion", "Department", "ReservationPreference", "FacilityTask", "RoomType", "RateCode", "Block" ] }, "guestProfileType": { "type": "object", "description": "Type provides the detailed information about the profile and its children.", "properties": { "customer": { "description": "Detailed customer information for this profile.", "$ref": "#/definitions/customerType" }, "profileImage": { "description": "The profile image.", "$ref": "#/definitions/imageSetType" }, "addresses": { "description": "List of customer addresses.", "type": "object", "properties": { "addressInfo": { "description": "Collection of Detailed information on an address for the customer.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/addressInfoType" } }, "allRowsFetched": { "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" }, "totalRows": { "description": "Total number of rows queried", "type": "integer" } } }, "telephones": { "description": "List of Telephone Number Information", "type": "object", "properties": { "telephoneInfo": { "description": "Collection of Detailed information on telephone/fax for the customer.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/telephoneInfoType" } }, "totalRows": { "description": "Total number of rows queried", "type": "integer" } } }, "emails": { "description": "List of email address for the customer.", "type": "object", "properties": { "emailInfo": { "description": "Collection of Detailed information on an eMail address for the customer.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/emailInfoType" } }, "totalRows": { "description": "Total number of rows queried", "type": "integer" } } }, "comments": { "description": "List of Notes for the customer.", "type": "object", "properties": { "commentInfo": { "description": "Collection of Detailed information on comments for the customer.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/commentInfoType" } }, "allRowsFetched": { "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" }, "totalRows": { "description": "Total number of rows queried", "type": "integer" } } }, "profileMemberships": { "description": "List of loyalty program(s) the profile is subscribed to.", "type": "object", "properties": { "profileMembership": { "description": "Collection of Detailed information on memberships for the customer.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/profileMembershipType" } }, "totalRows": { "description": "Total number of rows queried", "type": "integer" } } }, "preferenceCollection": { "description": "List of customer preferences.", "type": "object", "properties": { "preferenceType": { "description": "Collection of Detailed information on preferences of the customer.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/preferenceTypeType" } }, "totalRows": { "description": "Total number of rows queried", "type": "integer" } } }, "keywords": { "description": "List of customer keywords.", "type": "object", "properties": { "keyword": { "description": "Collection of keywords attached to the profile.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/keywordType" } }, "allRowsFetched": { "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" }, "totalRows": { "description": "Total number of rows queried", "type": "integer" } } }, "profileIndicators": { "description": "Indicators of additional information attached to the profile", "$ref": "#/definitions/indicatorsType" }, "lastStayInfo": { "description": "Information on last stay of the profile.", "$ref": "#/definitions/lastStayInfoType" }, "profileAccessType": { "description": "Detailed information on access type associated with the profile.", "$ref": "#/definitions/profileAccessType" }, "profileRestrictions": { "description": "Detailed information on restrictions associated with the profile.", "$ref": "#/definitions/profileRestrictions" }, "mailingActions": { "description": "Contains collection of mailing action list associated with the profile", "$ref": "#/definitions/mailingActionsType" }, "privacyInfo": { "description": "Contains privacy related information associated with the profile", "$ref": "#/definitions/privacyInfoType" }, "userDefinedFields": { "description": "Collections of user defined fields.", "$ref": "#/definitions/userDefinedFieldsType" }, "localizationGuestType": { "description": "Localization Guest Type associated to the profile.", "type": "string", "minLength": 0, "maxLength": 20 }, "eligibleForFiscalFolio": { "description": "Eligible for Fiscal Folio/Payload generation.", "type": "string", "minLength": 0, "maxLength": 20 }, "profileType": { "description": "Type of profile such as Guest, Employee or Contact.", "$ref": "#/definitions/guestProfileTypeType" }, "statusCode": { "description": "Status of the profile. Active/Inactive", "$ref": "#/definitions/profileStatusType" }, "registeredProperty": { "description": "Hotel which this profile is registered with. This attribute is not used for configuration.", "type": "string", "minLength": 0, "maxLength": 20 }, "requestForHotel": { "description": "Hotel which this profile is to be registered. This attribute is only used during creation of profile.", "type": "string", "minLength": 0, "maxLength": 20 }, "protectedBy": { "description": "What level this profile is protected.", "type": "string", "minLength": 0, "maxLength": 40 }, "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 resposible for the creation.", "type": "string", "minLength": 0, "maxLength": 200 }, "lastModifyDateTime": { "description": "Time stamp of last modification.", "type": "string", "format": "date-time" }, "lastModifierId": { "description": "Identifies the last software system or person to modify a record.", "type": "string", "minLength": 0, "maxLength": 200 }, "markAsRecentlyAccessed": { "description": "Mark this profile as recently accessed.", "type": "boolean" }, "markForHistory": { "description": "\"true\" setting marks the profile to be kept from being purged, once the profile is marked inactive.", "type": "boolean" }, "hasCommission": { "description": "Populates true if the profile has commission configured false otherwise.", "type": "boolean" } } }, "guestProfileTypeType": { "type": "string", "description": "The types of Profile handled by the web service.", "enum": [ "Guest", "Employee", "Contact" ] }, "companyProfileType": { "type": "object", "description": "Type provides the detailed information about the profile and its children.", "properties": { "company": { "description": "Detailed company information for this profile.", "$ref": "#/definitions/companyType" }, "profileImage": { "description": "The profile image.", "$ref": "#/definitions/imageSetType" }, "addresses": { "description": "List of customer addresses.", "type": "object", "properties": { "addressInfo": { "description": "Collection of Detailed information on an address for the customer.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/addressInfoType" } }, "allRowsFetched": { "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" }, "totalRows": { "description": "Total number of rows queried", "type": "integer" } } }, "businessSegments": { "description": "Business/Market Segment associated to the profile.", "type": "array", "maxItems": 4000, "items": { "type": "string", "minLength": 0, "maxLength": 20 } }, "territory": { "description": "Territory associated to the profile.", "type": "string", "minLength": 0, "maxLength": 40 }, "telephones": { "description": "List of Telephone Number Information", "type": "object", "properties": { "telephoneInfo": { "description": "Collection of Detailed information on telephone/fax for the customer.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/telephoneInfoType" } }, "totalRows": { "description": "Total number of rows queried", "type": "integer" } } }, "emails": { "description": "List of email address for the customer.", "type": "object", "properties": { "emailInfo": { "description": "Collection of Detailed information on an eMail address for the customer.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/emailInfoType" } }, "totalRows": { "description": "Total number of rows queried", "type": "integer" } } }, "comments": { "description": "List of Notes for the customer.", "type": "object", "properties": { "commentInfo": { "description": "Collection of Detailed information on comments for the customer.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/commentInfoType" } }, "allRowsFetched": { "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" }, "totalRows": { "description": "Total number of rows queried", "type": "integer" } } }, "profileMemberships": { "description": "List of loyalty program(s) the profile is subscribed to.", "type": "object", "properties": { "profileMembership": { "description": "Collection of Detailed information on memberships for the customer.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/profileMembershipType" } }, "totalRows": { "description": "Total number of rows queried", "type": "integer" } } }, "preferenceCollection": { "description": "List of customer preferences.", "type": "object", "properties": { "preferenceType": { "description": "Collection of Detailed information on preferences of the customer.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/preferenceTypeType" } }, "totalRows": { "description": "Total number of rows queried", "type": "integer" } } }, "keywords": { "description": "List of customer keywords.", "type": "object", "properties": { "keyword": { "description": "Collection of keywords attached to the profile.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/keywordType" } }, "allRowsFetched": { "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" }, "totalRows": { "description": "Total number of rows queried", "type": "integer" } } }, "profileIndicators": { "description": "Indicators of additional information attached to the profile", "$ref": "#/definitions/indicatorsType" }, "lastStayInfo": { "description": "Information on last stay of the profile.", "$ref": "#/definitions/lastStayInfoType" }, "profileAccessType": { "description": "Detailed information on access type associated with the profile.", "$ref": "#/definitions/profileAccessType" }, "profileRestrictions": { "description": "Detailed information on restrictions associated with the profile.", "$ref": "#/definitions/profileRestrictions" }, "mailingActions": { "description": "Contains collection of mailing action list associated with the profile", "$ref": "#/definitions/mailingActionsType" }, "privacyInfo": { "description": "Contains privacy related information associated with the profile", "$ref": "#/definitions/privacyInfoType" }, "userDefinedFields": { "description": "Collections of user defined fields.", "$ref": "#/definitions/userDefinedFieldsType" }, "localizationGuestType": { "description": "Localization Guest Type associated to the profile.", "type": "string", "minLength": 0, "maxLength": 20 }, "eligibleForFiscalFolio": { "description": "Eligible for Fiscal Folio/Payload generation.", "type": "string", "minLength": 0, "maxLength": 20 }, "profileType": { "description": "Type of profile such as Agent, Company, Group and Source.", "$ref": "#/definitions/companyProfileTypeType" }, "statusCode": { "description": "Status of the profile. Active/Inactive", "$ref": "#/definitions/profileStatusType" }, "registeredProperty": { "description": "Hotel which this profile is registered with. This attribute is not used for configuration.", "type": "string", "minLength": 0, "maxLength": 20 }, "requestForHotel": { "description": "Hotel which this profile is to be registered. This attribute is only used during creation of profile.", "type": "string", "minLength": 0, "maxLength": 20 }, "protectedBy": { "description": "What level this profile is protected.", "type": "string", "minLength": 0, "maxLength": 40 }, "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 resposible for the creation.", "type": "string", "minLength": 0, "maxLength": 200 }, "lastModifyDateTime": { "description": "Time stamp of last modification.", "type": "string", "format": "date-time" }, "lastModifierId": { "description": "Identifies the last software system or person to modify a record.", "type": "string", "minLength": 0, "maxLength": 200 }, "markAsRecentlyAccessed": { "description": "Mark this profile as recently accessed.", "type": "boolean" }, "markForHistory": { "description": "\"true\" setting marks the profile to be kept from being purged, once the profile is marked inactive.", "type": "boolean" }, "hasCommission": { "description": "Populates true if the profile has commission configured false otherwise.", "type": "boolean" } } }, "companyProfileTypeType": { "type": "string", "description": "The types of Profile handled by the web service.", "enum": [ "Agent", "Company", "Group", "Source" ] }, "articleInfoType": { "type": "object", "description": "Information regarding an article.", "properties": { "description": { "description": "Description of the article.", "type": "string", "minLength": 0, "maxLength": 2000 }, "transactionCode": { "description": "Transaction code to which the article belongs.", "type": "string", "minLength": 0, "maxLength": 20 }, "price": { "description": "Default price of the article.", "$ref": "#/definitions/currencyAmountType" }, "postIt": { "description": "Post it information of the article.", "$ref": "#/definitions/articlePostItType" }, "universalProductCode": { "description": "Unique Universal product code of the article.", "type": "string", "minLength": 0, "maxLength": 20 }, "hotelId": { "description": "Hotel code to which the article belongs.", "type": "string", "minLength": 0, "maxLength": 20 }, "articleCode": { "description": "Unique code of the article.", "type": "string", "minLength": 0, "maxLength": 20 }, "inactive": { "description": "Indicates whether the article is inactive or not.", "type": "boolean" }, "orderSequence": { "description": "Display Order sequence.", "type": "number" } } }, "articlePostItType": { "type": "object", "description": "Post it information of an article.", "properties": { "availableForPostIt": { "description": "Indicates whether the article is available for post it.", "type": "boolean" }, "color": { "description": "Color indicator which is only configurable if article is available for post it.", "$ref": "#/definitions/colorType" } } }, "colorType": { "type": "string", "description": "Color configuration type. This color configuration provides a visual category of entities.", "enum": [ "Red", "DarkRed", "Green", "DarkGreen", "LightGreen", "Orange", "White", "Yellow", "DarkYellow", "Purple", "Brown", "Gray", "Aqua", "Chocolate", "Blue", "LightBlue", "DarkBlue", "Cyan", "DarkCyan", "Magenta", "DarkMagenta", "Black" ] }, "externalProfileSummaryInfoType": { "type": "object", "description": "Summary information about a external profile and the associated Unique IDs.", "properties": { "profileIdList": { "description": "Unique identifiers each of maximum length of 20 characters for the Profile for both internal and external systems.", "$ref": "#/definitions/profileIdList" }, "profile": { "description": "Provides summary information regarding profile.", "$ref": "#/definitions/externalProfileSummaryType" } } }, "externalProfileSummaryType": { "type": "object", "description": "Type provides the basic information about the external profile.", "properties": { "formerName": { "description": "This provides name information for a person.", "type": "object", "properties": { "name": { "description": "Family name, last name or Company Name.", "type": "string", "minLength": 0, "maxLength": 40 }, "fullName": { "description": "Full display Name.", "type": "string", "minLength": 0, "maxLength": 200 }, "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 }, "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 }, "nameType": { "description": "Type of name of the individual, such as former, nickname, alternate or alias name.", "$ref": "#/definitions/personNameTypeType" }, "gender": { "description": "Identifies the profile gender code selected from Gender types List of values. Gender types LOV provides the values configured at gender configuration.", "type": "string", "minLength": 0, "maxLength": 20 }, "birthDate": { "description": "Indicates the date of birth as indicated in the document, in ISO 8601 prescribed format.", "type": "string", "format": "date" }, "birthDateMasked": { "description": "Indicates the date of birth as masked.", "type": "string", "maxLength": 2000 }, "currencyCode": { "description": "The code specifying a monetary unit. Use ISO 4217, three alpha code.", "type": "string", "minLength": 0, "maxLength": 20 }, "currencySymbol": { "description": "The symbol for the currency, e.g, for currencyCode USD the symbol is $.", "type": "string", "minLength": 0, "maxLength": 10 }, "decimalPlaces": { "description": "Indicates the number of decimal places for a particular currency. This is equivalent to the ISO 4217 standard \"minor unit\". Typically used when the amount provided includes the minor unit of currency without a decimal point (e.g., USD 8500 needs DecimalPlaces=\"2\" to represent $85).", "type": "integer" }, "language": { "description": "Language identification.", "type": "string", "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*" }, "customerValue": { "description": "The supplier's ranking of the customer (e.g., VIP, numerical ranking).", "type": "string", "minLength": 0, "maxLength": 20 } } }, "addressInfo": { "description": "Detailed information on an address for the customer.", "$ref": "#/definitions/addressInfoType" }, "telephoneInfo": { "description": "Detailed information on telephone/ fax for the customer.", "$ref": "#/definitions/telephoneInfoType" }, "emailInfo": { "description": "Detailed information on an eMail address for the customer.", "$ref": "#/definitions/emailInfoType" }, "profileMembership": { "description": "Information on membership for the customer.", "$ref": "#/definitions/profileMembershipType" }, "urlInfo": { "description": "Detailed information on web url/address for the customer.", "$ref": "#/definitions/uRLInfoType" }, "owners": { "description": "Owner of the customer.", "$ref": "#/definitions/ownersType" }, "profileType": { "description": "Type of profile such as Guest, Agent, Company, Group, Source, Employee, Hotel, Vendor or Contact.", "$ref": "#/definitions/profileTypeType" }, "statusCode": { "description": "Status of the profile. Active/Inactive", "$ref": "#/definitions/profileStatusType" }, "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 resposible for the creation.", "type": "string", "minLength": 0, "maxLength": 200 }, "lastModifyDateTime": { "description": "Time stamp of last modification.", "type": "string", "format": "date-time" }, "lastModifierId": { "description": "Identifies the last software system or person to modify a record.", "type": "string", "minLength": 0, "maxLength": 200 }, "registeredProperty": { "description": "Property this profile is registered with.", "type": "string", "minLength": 0, "maxLength": 20 } } }, "ownersType": { "type": "array", "description": "Generic type for a list of owners.", "maxItems": 4000, "items": { "$ref": "#/definitions/ownerType" } }, "profileAdditionalInfoType": { "type": "object", "properties": { "primaryOwnerCode": { "description": "Primary Owner of the profile", "type": "string", "minLength": 0, "maxLength": 20 }, "territory": { "description": "Territory associated to the profile.", "type": "string", "minLength": 0, "maxLength": 40 }, "masterAccount": { "description": "Indicates if the profile is a Master Account for one or more Subsidiary Accounts.", "type": "boolean" }, "subsidiaryAccount": { "description": "Indicates if the profile is a Subsidiary Account of a Master/Parent Account.", "type": "boolean" }, "businessPosition": { "description": "Business Title or Position of the profile.", "type": "string", "minLength": 0, "maxLength": 40 } } }, "profileNameType": { "type": "object", "description": "This provides name information for a person.", "properties": { "name": { "description": "Family name, last name or Company Name.", "type": "string", "minLength": 0, "maxLength": 40 }, "fullName": { "description": "Full display Name.", "type": "string", "minLength": 0, "maxLength": 200 }, "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 }, "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 }, "nameType": { "description": "Type of name of the individual, such as former, nickname, alternate or alias name.", "$ref": "#/definitions/personNameTypeType" } } }, "vIPStatusType": { "type": "object", "description": "VIP status of the customer.", "properties": { "value": { "type": "string", "description": "Used for Character Strings, length 0 to 2000.", "minLength": 0, "maxLength": 2000 }, "code": { "description": "VIP status of the customer.", "type": "string", "minLength": 0, "maxLength": 20 } } }, "primaryProfileInfoType": { "type": "object", "description": "Contains basic information of profile.", "properties": { "profileId": { "description": "Unique Identifier for OPERA Profile.", "$ref": "#/definitions/uniqueID_Type" }, "profileType": { "description": "Type of account such as Agent, Company, and Source.", "$ref": "#/definitions/profileTypeType" }, "profileName": { "description": "Name of the account.", "type": "string", "minLength": 0, "maxLength": 40 } } }, "stagedProfileType": { "type": "object", "description": "Detailed information about the staged profile.", "properties": { "profileIdList": { "description": "List of unique identifier of staged profile.", "$ref": "#/definitions/uniqueIDListType" }, "customer": { "description": "Detailed customer information for this profile.", "$ref": "#/definitions/stagedProfileCustomerType" }, "company": { "description": "Detailed company information for this profile.", "$ref": "#/definitions/stagedProfileCompanyType" }, "addresses": { "description": "Collection of detailed information about address for the staged profile.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/stagedProfileAddressType" } }, "telephones": { "description": "Collection of detailed information about telephone/fax for the staged profile.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/stagedProfilePhoneType" } }, "emails": { "description": "Collection of detailed information about email for the staged profile.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/stagedProfileEmailType" } }, "uRLs": { "description": "Collection of detailed information about web url/address for the staged profile.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/stagedProfileURLType" } }, "memberships": { "description": "Collection of detailed information about memberships for the staged profile.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/stagedProfileMembershipType" } }, "preferences": { "description": "Collection of detailed information about preferences for the staged profile.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/stagedProfilePreferenceType" } }, "keywords": { "description": "Collection of detailed information about keyword for the staged profile.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/stagedProfileKeywordType" } }, "negotiatedRates": { "description": "Collection of detailed information about negotiated rates for the staged profile.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/stagedProfileNegotiatedRateType" } }, "identifications": { "description": "Collection of detailed information about identification for the staged profile.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/stagedProfileIdentificationsType" } }, "routingInstructions": { "description": "Collection of routing instructions for the staged profile.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/stagedProfileRoutingInstructionType" } }, "userDefinedFields": { "description": "List of user defined fields for the staged profile.", "$ref": "#/definitions/stagedProfileUserDefinedFieldsType" }, "mailingActions": { "description": "Contains collection of mailing action list associated with the profile", "$ref": "#/definitions/mailingActionsType" }, "privacyInfo": { "description": "Contains privacy related information associated with the profile", "$ref": "#/definitions/privacyInfoType" }, "comments": { "description": "List of Notes for the customer.", "$ref": "#/definitions/stagedProfileCommentInfosType" }, "hotelId": { "description": "Hotel code that the staged profile belongs to.", "type": "string", "minLength": 0, "maxLength": 20 }, "importDate": { "description": "The date on which the staged profile has been received.", "type": "string", "format": "date" }, "profileType": { "description": "Type of the staged profile.", "type": "string", "minLength": 0, "maxLength": 20 }, "stageStatus": { "description": "The status of the staged profile.", "type": "string", "minLength": 0, "maxLength": 20 } } }, "stagedProfileCustomerType": { "type": "object", "properties": { "personName": { "description": "Detailed name information for the customer.", "type": "array", "maxItems": 5, "items": { "$ref": "#/definitions/personNameType" } }, "anonymization": { "description": "Provides information about the guest's anonymization status", "$ref": "#/definitions/anonymizationType" }, "citizenCountry": { "description": "Name of the (self-professed) country that is claimed for citizenship.", "$ref": "#/definitions/countryNameType" }, "identifications": { "description": "List of identification of the customer.", "type": "object", "properties": { "identificationInfo": { "description": "Collection of detailed information on the identification of the customer.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/identificationInfoType" } }, "allRowsFetched": { "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" }, "totalRows": { "description": "Total number of rows queried", "type": "integer" } } }, "profession": { "description": "Profession of a person.", "type": "string", "minLength": 0, "maxLength": 80 }, "alienInfo": { "description": "Immigration/visa information of a foreign person.", "$ref": "#/definitions/alienInfoType" }, "birthCountry": { "description": "Country of birth.", "$ref": "#/definitions/countryNameType" }, "legalCompany": { "description": "Name Of the company the individual is associated with.", "type": "string", "minLength": 0, "maxLength": 80 }, "businessTitle": { "description": "Business Title.", "type": "string", "minLength": 0, "maxLength": 80 }, "gender": { "description": "Identifies the profile gender code selected from Gender types List of values. Gender types LOV provides the values configured at gender configuration.", "type": "string", "minLength": 0, "maxLength": 20 }, "birthDate": { "description": "Indicates the date of birth as indicated in the document, in ISO 8601 prescribed format.", "type": "string", "format": "date" }, "birthDateMasked": { "description": "Indicates the date of birth as masked.", "type": "string", "maxLength": 2000 }, "currencyCode": { "description": "The code specifying a monetary unit. Use ISO 4217, three alpha code.", "type": "string", "minLength": 0, "maxLength": 20 }, "currencySymbol": { "description": "The symbol for the currency, e.g, for currencyCode USD the symbol is $.", "type": "string", "minLength": 0, "maxLength": 10 }, "decimalPlaces": { "description": "Indicates the number of decimal places for a particular currency. This is equivalent to the ISO 4217 standard \"minor unit\". Typically used when the amount provided includes the minor unit of currency without a decimal point (e.g., USD 8500 needs DecimalPlaces=\"2\" to represent $85).", "type": "integer" }, "language": { "description": "Language identification.", "type": "string", "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*" }, "nationality": { "description": "Nationality code identification", "type": "string", "minLength": 0, "maxLength": 20 }, "nationalityDescription": { "description": "Nationality code description", "type": "string", "minLength": 0, "maxLength": 80 }, "customerValue": { "description": "The supplier's ranking of the customer (e.g., VIP, numerical ranking).", "type": "string", "minLength": 0, "maxLength": 20 }, "creditRating": { "description": "Credit Rating of the customer.", "type": "string", "minLength": 0, "maxLength": 20 }, "vipStatus": { "description": "VIP status of the customer.", "type": "string", "minLength": 0, "maxLength": 20 }, "vipDescription": { "description": "Description of the VIP status.", "type": "string", "minLength": 0, "maxLength": 2000 }, "birthPlace": { "description": "Place of birth.", "type": "string", "minLength": 0, "maxLength": 80 }, "privateProfile": { "description": "This element tells profile is property exclusive or not.", "type": "boolean" }, "blacklist": { "description": "This element tells if profile is blacklisted or not.", "type": "boolean" }, "errors": { "description": "List of errors for the staged profile.", "type": "object", "properties": { "error": { "description": "The error in stage profile.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/stagedProfileErrorType" } } } }, "alternateLanguage": { "description": "ALternate language identification.", "type": "string", "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*" } }, "description": "Contains basic data on the customer's identity, location, relationships, finances, memberships, etc." }, "stagedProfileErrorType": { "type": "object", "description": "Criteria to fetch the staged profile.", "properties": { "field": { "description": "The field that has error.", "$ref": "#/definitions/stagedProfileErrorField" }, "errorDescription": { "description": "The error description for the staged profile.", "type": "string", "minLength": 0, "maxLength": 2000 } } }, "stagedProfileErrorField": { "type": "string", "description": "Simple type for stage profile error filed to specify which filed in the stage profile has error.", "enum": [ "PrimaryLanguage", "AlternateLanguag", "Gender", "ProfileType", "Nationality", "Prefix", "VIPStatus" ] }, "stagedProfilePhoneType": { "type": "object", "properties": { "telephone": { "description": "Phone details for the profile.", "$ref": "#/definitions/telephoneType" }, "errorDescription": { "description": "The error in telephone information in a staged profile with an invalid status.", "type": "string", "minLength": 0, "maxLength": 2000 }, "inactiveDate": { "description": "Inactivation date of the record.", "type": "string", "format": "date" }, "defaultConfirmation": { "description": "Indicates whether the phone is the default confirmation method.", "type": "boolean" }, "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": 20 } }, "description": "Information on a telephone number for the customer." }, "stagedProfileIdentificationsType": { "type": "object", "properties": { "identification": { "description": "Detailed information on the identification of the customer.", "$ref": "#/definitions/identificationType" }, "errorDescription": { "description": "The error in negotiated rate information in a staged profile with an invalid status", "type": "string", "minLength": 0, "maxLength": 2000 }, "documentResort": { "description": "Hotel code to which the document belongs.", "type": "string", "minLength": 0, "maxLength": 20 }, "inactiveDate": { "description": "The date when the record was inactivated.", "type": "string", "format": "date" }, "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": 20 } }, "description": "Information on the identification of the customer." }, "stagedProfileCommentInfosType": { "type": "array", "description": "List of Notes for the customer.", "maxItems": 4000, "items": { "$ref": "#/definitions/stagedProfileCommentInfoType" } }, "stagedProfileCommentInfoType": { "type": "object", "description": "Comment related to the profile/reservation.", "properties": { "comment": { "description": "Comment details for the comment. It will be empty in case of delete comment.", "$ref": "#/definitions/commentType" }, "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 resposible for the creation.", "type": "string", "minLength": 0, "maxLength": 200 }, "lastModifyDateTime": { "description": "Time stamp of last modification.", "type": "string", "format": "date-time" }, "lastModifierId": { "description": "Identifies the last software system or person to modify a record.", "type": "string", "minLength": 0, "maxLength": 200 }, "lineNo": { "description": "The line number of the comment.", "type": "integer" }, "inActiveDate": { "description": "Indicates comment inactive date.", "type": "string", "format": "date" }, "errorDescription": { "description": "The error in a user defined field in a staged profile with an invalid status.", "type": "string", "minLength": 0, "maxLength": 2000 }, "valid": { "description": "Indicates whether the comment information is valid.", "type": "boolean" }, "allRowsFetched": { "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" }, "totalRows": { "description": "Total number of rows queried", "type": "integer" }, "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": 20 } } }, "stagedProfileCompanyType": { "type": "object", "properties": { "companyName": { "description": "Name of the company.", "type": "string", "minLength": 0, "maxLength": 40 }, "companyName2": { "description": "Second Name of the company.", "type": "string", "minLength": 0, "maxLength": 40 }, "companyName3": { "description": "Third Name of the company.", "type": "string", "minLength": 0, "maxLength": 40 }, "alternateName": { "description": "Alternate Name of the Company. Mainly, it's the name of the company written in the Alternate Language.", "type": "string", "minLength": 0, "maxLength": 40 }, "alternateLanguage": { "description": "Alternate Language of the company.", "type": "string", "minLength": 0, "maxLength": 20 }, "businessLocale": { "description": "A jurisdiction(Territory) in which a company is authorized to do business.", "type": "string", "minLength": 0, "maxLength": 40 }, "iATAInfo": { "description": "IATA Information of the profile.", "$ref": "#/definitions/iATAInfoType" }, "businessTitle": { "description": "Business Title.", "type": "string", "minLength": 0, "maxLength": 80 }, "currencyCode": { "description": "The code specifying a monetary unit. Use ISO 4217, three alpha code.", "type": "string", "minLength": 0, "maxLength": 20 }, "currencySymbol": { "description": "The symbol for the currency, e.g, for currencyCode USD the symbol is $.", "type": "string", "minLength": 0, "maxLength": 10 }, "decimalPlaces": { "description": "Indicates the number of decimal places for a particular currency. This is equivalent to the ISO 4217 standard \"minor unit\". Typically used when the amount provided includes the minor unit of currency without a decimal point (e.g., USD 8500 needs DecimalPlaces=\"2\" to represent $85).", "type": "integer" }, "language": { "description": "Language identification.", "type": "string", "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*" }, "nationality": { "description": "Nationality code identification", "type": "string", "minLength": 0, "maxLength": 20 }, "nationalityDescription": { "description": "Nationality code description", "type": "string", "minLength": 0, "maxLength": 80 }, "commissionCode": { "description": "Commission code of the company.", "type": "string", "minLength": 0, "maxLength": 20 }, "creditRating": { "description": "Credit Rating of the company.", "type": "string", "minLength": 0, "maxLength": 20 }, "corporateIdType": { "description": "The type of corporate ID", "type": "string", "minLength": 0, "maxLength": 20 }, "vipStatus": { "description": "VIP status of the company.", "type": "string", "minLength": 0, "maxLength": 20 }, "vipDescription": { "description": "Description of the VIP status.", "type": "string", "minLength": 0, "maxLength": 2000 }, "blacklist": { "description": "This element tells if profile is blacklisted or not.", "type": "boolean" }, "errors": { "description": "List of errors for the staged profile.", "type": "object", "properties": { "error": { "description": "The error in stage profile.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/stagedProfileErrorType" } } } } } }, "stagedProfileUserDefinedFieldsType": { "type": "object", "description": "Used to hold user defined fields(UDFs) for staged profile.", "properties": { "characterUDFs": { "description": "Collection of user defined fields of Character/String Type.", "$ref": "#/definitions/stagedProfileCharacterUDFsType" }, "numericUDFs": { "description": "Collection of user defined fields of Numeric Type.", "$ref": "#/definitions/stagedProfileNumericUDFsType" }, "dateUDFs": { "description": "Collection of user defined fields of Date Type.", "$ref": "#/definitions/stagedProfileDateUDFsType" } } }, "stagedProfileNumericUDFsType": { "type": "array", "description": "Used to hold collection of user defined fields of Numeric Type.", "maxItems": 4000, "items": { "$ref": "#/definitions/stagedProfileNumericUDFType" } }, "stagedProfileNumericUDFType": { "type": "object", "properties": { "name": { "description": "Name of user defined field.", "type": "string", "minLength": 0, "maxLength": 20 }, "value": { "description": "Value of user defined field.", "type": "number" }, "altname": { "description": "Label of user defined field used by vendors or customers.", "type": "string", "minLength": 0, "maxLength": 2000 }, "errorDescription": { "description": "The error in a user defined field in a staged profile with an invalid status", "type": "string", "minLength": 0, "maxLength": 2000 }, "tableName": { "description": "PMS table name.", "type": "string", "minLength": 0, "maxLength": 40 }, "valid": { "description": "Indicates whether the UDF information is valid.", "type": "boolean" }, "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": 20 } }, "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." }, "stagedProfileCharacterUDFsType": { "type": "array", "description": "Used to hold collection of user defined fields of Character/String Type.", "maxItems": 4000, "items": { "$ref": "#/definitions/stagedProfileCharacterUDFType" } }, "stagedProfileCharacterUDFType": { "type": "object", "properties": { "name": { "description": "Used to hold user defined field of Character Type. It is highly recommended to use UDFC01, UDFC02,...UDFC40 (Total 40) as Character/String UDF names(commonly used on Reservation, Profile etc.). Name is not restricted using enumeration, to provide flexibility of different name usage if required.", "type": "string", "minLength": 0, "maxLength": 20 }, "value": { "description": "Value of user defined field.", "type": "string", "minLength": 0, "maxLength": 2000 }, "altname": { "description": "Label of user defined field used by vendors or customers.", "type": "string", "minLength": 0, "maxLength": 2000 }, "errorDescription": { "description": "The error in a user defined field in a staged profile with an invalid status", "type": "string", "minLength": 0, "maxLength": 2000 }, "tableName": { "description": "PMS table name.", "type": "string", "minLength": 0, "maxLength": 40 }, "valid": { "description": "Indicates whether the UDF information is valid.", "type": "boolean" }, "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": 20 } }, "description": "Used to hold user defined field of Character/String Type." }, "stagedProfileDateUDFsType": { "type": "array", "description": "Used to hold collection of user defined fields of Date Type.", "maxItems": 4000, "items": { "$ref": "#/definitions/stagedProfileDateUDFType" } }, "stagedProfileDateUDFType": { "type": "object", "properties": { "name": { "description": "Used to hold user defined field of Date Type. It is highly recommended to use UDFD01, UDFD02,...UDFN20 (Total 20) as Date UDF names(commonly used on Reservation, Profile etc.). Name is not restricted using enumeration, to provide flexibility of different name usage if required.", "type": "string", "minLength": 0, "maxLength": 20 }, "value": { "description": "Value of user defined field.", "type": "string", "format": "date" }, "altname": { "description": "Label of user defined field used by vendors or customers.", "type": "string", "minLength": 0, "maxLength": 2000 }, "errorDescription": { "description": "The error in a user defined field in a staged profile with an invalid status", "type": "string", "minLength": 0, "maxLength": 2000 }, "tableName": { "description": "PMS table name.", "type": "string", "minLength": 0, "maxLength": 40 }, "valid": { "description": "Indicates whether the UDF information is valid.", "type": "boolean" }, "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": 20 } }, "description": "Used to hold user defined field of Date Type." }, "stagedProfileEmailType": { "type": "object", "properties": { "email": { "description": "eMail deatils for the profile.", "$ref": "#/definitions/emailType" }, "errorDescription": { "description": "The error in email information in a staged profile with an invalid status", "type": "string", "minLength": 0, "maxLength": 2000 }, "inactiveDate": { "description": "Inactivation date of the record.", "type": "string", "format": "date" }, "defaultConfirmation": { "description": "Indicates whether the email is the default confirmation method.", "type": "boolean" }, "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": 20 } }, "description": "Information on an email for the customer." }, "stagedProfileURLType": { "type": "object", "properties": { "errorDescription": { "description": "The error in URL in a staged profile with an invalid status", "type": "string", "minLength": 0, "maxLength": 2000 }, "inactiveDate": { "description": "Inactivation date of the record.", "type": "string", "format": "date" }, "defaultConfirmation": { "description": "Indicates whether the phone is the default confirmation method.", "type": "boolean" }, "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": 20 } }, "description": "Web site address." }, "stagedProfileKeywordType": { "type": "object", "properties": { "keywordDetail": { "description": "The keyword new value, in case keyword value is modified.", "$ref": "#/definitions/keywordDetailType" }, "type": { "description": "A reference to the type of object defined by the UniqueID element.", "type": "string", "minLength": 0, "maxLength": 20 }, "keyword": { "description": "The keyword value.", "type": "string", "minLength": 0, "maxLength": 80 }, "errorDescription": { "description": "The error in keyword information in a staged profile with an invalid status", "type": "string", "minLength": 0, "maxLength": 2000 }, "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 } } }, "stagedProfileRoutingInstructionType": { "type": "object", "properties": { "transactionInfo": { "description": "Transaction code information in a staged profile with an invalid status", "$ref": "#/definitions/stagedProfileTrxInfoType" }, "billingInstruction": { "description": "Configured Billing Instruction in a staged profile with an invalid status", "$ref": "#/definitions/stagedProfileBillingInstructionType" } } }, "stagedProfileTrxInfoType": { "type": "object", "properties": { "description": { "description": "Transaction codes info.", "type": "string", "minLength": 0, "maxLength": 2000 }, "trxGroup": { "description": "Category of the transaction code.", "type": "string", "minLength": 0, "maxLength": 20 }, "trxSubGroup": { "description": "Sub category of the transaction code.", "type": "string", "minLength": 0, "maxLength": 20 }, "universalProductCode": { "description": "Unique Universal product code of the transaction code.", "type": "string", "minLength": 0, "maxLength": 20 }, "routingInstructionsId": { "description": "This is the Routing Instruction Id attached with Reservation. It is only used for internal purpose. It should not be used by external vendor or consumer.", "type": "number" }, "articles": { "description": "The List of Articles defined for this transaction code, when using the Articles functionality.", "type": "object", "properties": { "article": { "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/articleInfoType" } } } }, "trxCode": { "description": "Unique identifier for the Transaction code.", "type": "string", "minLength": 0, "maxLength": 20 }, "hotelId": { "description": "Hotel context of the Transaction code.", "type": "string", "minLength": 0, "maxLength": 20 }, "printTrxReceipt": { "description": "Print receipt flag that tells whether the transaction receipt is to be printed or not. This is based on the transaction code.", "type": "boolean" }, "errorDescription": { "description": "The error in transaction code information in a staged profile with an invalid status", "type": "string", "minLength": 0, "maxLength": 2000 }, "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": 20 } }, "description": "Transaction codes info." }, "stagedProfileBillingInstructionType": { "type": "object", "properties": { "desc": { "description": "Billing Instruction code description.", "type": "string", "minLength": 0, "maxLength": 2000 }, "routingInstructionsId": { "description": "This is the Routing Instruction Id attached with Reservation. It is only used for internal purpose. It should not be used by external vendor or consumer.", "type": "number" }, "billingCode": { "description": "Unique identifier for the Billing Instruction.", "type": "string", "minLength": 0, "maxLength": 20 }, "hotelId": { "description": "Hotel context of the Billing Instruction.", "type": "string", "minLength": 0, "maxLength": 20 }, "errorDescription": { "description": "The error in billing instruction information in a staged profile with an invalid status", "type": "string", "minLength": 0, "maxLength": 2000 }, "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": 20 } }, "description": "Configured Billing Instruction which represents a set of Transaction Codes." }, "stagedProfileMembershipType": { "type": "object", "properties": { "comment": { "description": "Additional comments regarding to the membership.", "$ref": "#/definitions/paragraphType" }, "newMembershipNumber": { "description": "Card Number of the membership.", "type": "string", "maxLength": 2000 }, "nameOnCard": { "description": "Name to be displayed on the membership card.", "type": "string", "maxLength": 2000 }, "programDescription": { "description": "Description of the membership program.", "type": "string", "maxLength": 2000 }, "membershipLevel": { "description": "Indicates the membership level.", "type": "string", "maxLength": 2000 }, "membershipLevelDescription": { "description": "Indicates the membership level description.", "type": "string", "minLength": 0, "maxLength": 200 }, "membershipClass": { "description": "Indicates the membership class.", "type": "string", "maxLength": 2000 }, "earningPreference": { "description": "Earning preference to the membership.", "$ref": "#/definitions/membershipEarningPreferenceType" }, "inactive": { "description": "Indicates whether membership is active or inactive.", "type": "boolean" }, "benefits": { "description": "benefits for the membership.", "$ref": "#/definitions/benefitsType" }, "tierAdministration": { "description": "Defines the degree of participation for this membership in the tier management portion of the program.", "$ref": "#/definitions/tierAdministrationType" }, "downgrade": { "description": "Defines how downgrading will be handled for this membership.", "$ref": "#/definitions/downgradeType" }, "reIssueNewCard": { "description": "The status of issuing new membership card to the member.", "$ref": "#/definitions/cardReIssueType" }, "excludeFromBatch": { "description": "True if you want to exclude the member from the Membership Fulfillment extract,the member's actions will not be included in the fulfillment extract until this value set to false.", "type": "boolean" }, "upgradeDescription": { "description": "Indicates Upgrade information which includes member's next tier level, requirements for the next upgrade.", "type": "string", "minLength": 0, "maxLength": 32000 }, "downgradeDescription": { "description": "Indicates information regarding the member's possible downgrades.", "type": "string", "minLength": 0, "maxLength": 32000 }, "rating": { "description": "Value Rating Type Description for this membership.", "type": "string", "maxLength": 2000 }, "membershipEnrollmentCode": { "description": "Indicates how the guest enrolled in the program.", "type": "string", "minLength": 0, "maxLength": 20 }, "memberStatus": { "description": "Indicates where the guest is in the membership enrollment process.", "type": "string", "minLength": 0, "maxLength": 20 }, "currentPoints": { "description": "Profile MemberShip Points.", "type": "number" }, "pointsLabel": { "description": "Label used to refer to points for this membership type", "type": "string", "minLength": 0, "maxLength": 20 }, "enrollmentSource": { "description": "Source from where the enrollment is done.", "type": "string", "minLength": 0, "maxLength": 20 }, "enrollmentResort": { "description": "Resort/CRO where enrollment is done.", "type": "string", "minLength": 0, "maxLength": 20 }, "preferredCard": { "description": "Preferred Card.", "type": "boolean" }, "membershipId": { "description": "Card Number of the membership.", "type": "string", "maxLength": 2000 }, "membershipType": { "description": "Type of membership.", "type": "string", "maxLength": 2000 }, "primaryMembership": { "description": "Boolean indicator set to True implies membership is a Primary Membership.", "type": "boolean" }, "membershipIdNo": { "description": "Membership ID Number.", "type": "integer" }, "playerRanking": { "description": "Ranking assigned to the Player Profile by the Gaming system.", "type": "integer" }, "centralSetup": { "description": "Indicates how the award points for this membership type will be managed.", "type": "boolean" }, "signupDate": { "description": "Indicates when the member signed up for the loyalty program.", "type": "string", "format": "date" }, "effectiveDate": { "description": "Indicates the starting date.", "type": "string", "format": "date" }, "expireDate": { "description": "Indicates the ending date.", "type": "string", "format": "date" }, "expireDateExclusiveIndicator": { "description": "When true, indicates that the ExpireDate is the first day after the applicable period (e.g. when expire date is Oct 15 the last date of the period is Oct 14).", "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 resposible for the creation.", "type": "string", "minLength": 0, "maxLength": 200 }, "lastModifyDateTime": { "description": "Time stamp of last modification.", "type": "string", "format": "date-time" }, "lastModifierId": { "description": "Identifies the last software system or person to modify a record.", "type": "string", "minLength": 0, "maxLength": 200 }, "errorDescription": { "description": "The error in membership information in a staged profile with an invalid status.", "type": "string", "minLength": 0, "maxLength": 2000 }, "registrationResort": { "description": "Registration resort.", "type": "string", "minLength": 0, "maxLength": 20 }, "enrollmentCode": { "description": "Enrollment code.", "type": "string", "minLength": 0, "maxLength": 20 }, "membershipStatus": { "description": "Membership status.", "type": "string", "minLength": 0, "maxLength": 20 }, "inactiveDate": { "description": "Inactivation date of the record.", "type": "string", "format": "date" }, "deviceCode": { "description": "Device encoded string.", "type": "string", "minLength": 0, "maxLength": 200 }, "deviceDisabledDate": { "description": "Device disabled date.", "type": "string", "format": "date" }, "updateExistingMembership": { "description": "Indicates if existing information for primary membership should be overwritten.", "type": "boolean" }, "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": 20 } }, "description": "Detailed information of the memberships." }, "stagedProfilePreferenceType": { "type": "object", "properties": { "preferenceValue": { "description": "Preference value for display purposes.", "type": "string", "minLength": 0, "maxLength": 200 }, "description": { "description": "Preference Description for display purposes.", "type": "string", "minLength": 0, "maxLength": 2000 }, "global": { "description": "Whether this preference is property specific or not.", "type": "boolean" }, "source": { "description": "Source of the preference.", "type": "string", "minLength": 0, "maxLength": 40 }, "hotels": { "description": "If specified preference belongs to the Hotels listed, otherwise it is a global preference.", "type": "array", "maxItems": 4000, "items": { "type": "string", "minLength": 0, "maxLength": 20 } }, "preferenceCode": { "type": "string", "minLength": 0, "maxLength": 20 }, "excludedPreferencesCount": { "description": "Specifies the count of preferences excluded for the attached reservation preference.", "type": "integer" }, "errorDescription": { "description": "The error in Preference information in a staged profile with an invalid status", "type": "string", "minLength": 0, "maxLength": 2000 }, "inactiveDate": { "description": "Inactivation date of the record.", "type": "string", "format": "date" }, "resortPrefernce": { "description": "Prefernce resort.", "type": "string", "minLength": 0, "maxLength": 20 }, "valid": { "description": "Indicated whether the preference information is valid.", "type": "boolean" }, "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": 20 } }, "description": "Guest Preference details for the profile." }, "stagedProfileAddressType": { "type": "object", "properties": { "address": { "description": "Address details for the profile.", "$ref": "#/definitions/addressType" }, "errorDescription": { "description": "The error in address information in a staged profile with an invalid status", "type": "string", "minLength": 0, "maxLength": 2000 }, "inactiveDate": { "description": "Inactivation date of the record.", "type": "string", "format": "date" }, "postalCodeExtension": { "description": "Postal code extension.", "type": "string", "minLength": 0, "maxLength": 15 }, "barCode": { "description": "The postal barcode for the address.", "type": "string", "minLength": 0, "maxLength": 100 }, "cleansStatus": { "description": "Status of Address Cleansing.", "$ref": "#/definitions/stagedAddressCleansStatus" }, "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": 20 } }, "description": "Provides address information." }, "stagedAddressCleansStatus": { "type": "string", "description": "Simple type for status of staged address cleansing.", "enum": [ "NotCleansed", "Cleansed", "Failure" ] }, "stagedProfileNegotiatedRateType": { "type": "object", "properties": { "negotiatedInfoList": { "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/negotiatedInfoType" } }, "hotelId": { "description": "Hotel code for the negotiated rate.", "type": "string", "minLength": 0, "maxLength": 20 }, "rateCode": { "description": "Rate plan code for the negotiated rate.", "type": "string", "minLength": 0, "maxLength": 20 }, "errorDescription": { "description": "The error in negotiated rate information in a staged profile with an invalid status", "type": "string", "minLength": 0, "maxLength": 2000 }, "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": 20 } }, "description": "This holds a list of NegotiatedInfoType." }, "stagedProfileChangeInstructionsType": { "type": "object", "description": "Information about instructions to change the staged profile.", "properties": { "fullyOverlay": { "description": "If true then delete and recreat the staged profile details.", "type": "boolean" } } }, "stagedProfileId": { "type": "object", "description": "Unique identifier for a staged profile.", "properties": { "hotelId": { "description": "Hotel code for the staged profile to be reprocessed.", "type": "string", "minLength": 0, "maxLength": 20 }, "profileId": { "description": "External profile ID to be reprocessed.", "$ref": "#/definitions/profileId" } } }, "reservationId": { "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": { "url": { "description": "URL that identifies the location associated with the record identified by the UniqueID.", "type": "string", "maxLength": 2000 }, "type": { "description": "A reference to the type of object defined by the UniqueID element.", "type": "string", "minLength": 0, "maxLength": 20 }, "instance": { "description": "The identification of a record as it exists at a point in time. An instance is used in update messages where the sender must assure the server that the update sent refers to the most recent modification level of the object being updated.", "type": "string", "minLength": 0, "maxLength": 80 }, "idContext": { "description": "Used to identify the source of the identifier (e.g., IATA, ABTA).", "type": "string", "minLength": 0, "maxLength": 80 }, "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 }, "idExtension": { "description": "Additional identifying value assigned by the creating system.", "type": "integer" } } }, "dateRangeType": { "type": "object", "description": "Date Range with Start and End dates.", "properties": { "start": { "description": "The starting value of the date range.", "type": "string", "format": "date" }, "end": { "description": "The ending value of the date range.", "type": "string", "format": "date" } } }, "profileCommissionAccountInfoListType": { "type": "array", "description": "Profile commission info which contains bank account and commission code details.", "maxItems": 4000, "items": { "$ref": "#/definitions/profileCommissionAccountInfoType" } }, "profileCommissionAccountInfoType": { "type": "object", "description": "Profile commission info which contains bank account and commission code details", "properties": { "profileId": { "description": "Unique profile identifier.", "$ref": "#/definitions/profileId" }, "bankAccount": { "description": "Bank account details", "$ref": "#/definitions/bankAccountType" }, "commissionCode": { "description": "Commission code details", "$ref": "#/definitions/codeDescriptionType" } } }, "bankAccountType": { "type": "object", "description": "Bank account information like Account ID, Bank Name, Currency, etc.", "properties": { "hotelId": { "description": "Property of the bank account.", "type": "string", "minLength": 0, "maxLength": 20 }, "bankAccountId": { "description": "Bank account ID.", "$ref": "#/definitions/uniqueID_Type" }, "bankAccountNo": { "description": "Account number at the bank.", "type": "string", "minLength": 0, "maxLength": 80 }, "bankCode": { "description": "Unique code of the bank account.", "type": "string", "minLength": 0, "maxLength": 20 }, "branchCode": { "description": "Code for the branch of the bank.", "type": "string", "minLength": 0, "maxLength": 20 }, "bankName": { "description": "Name of the bank account.", "type": "string", "minLength": 0, "maxLength": 2000 }, "paymentMethod": { "description": "Type of payment associated with the bank account.", "$ref": "#/definitions/commissionPaymentMethodType" }, "checkFormat": { "description": "Type of format for Payment Method.", "type": "string", "minLength": 0, "maxLength": 80 }, "currency": { "description": "Currency associated with the bank account.", "$ref": "#/definitions/codeDescriptionType" }, "currentCheckNo": { "description": "Current check no of the bank account.", "type": "number" }, "hotelName": { "description": "Property name of the bank account.", "type": "string", "minLength": 0, "maxLength": 80 }, "default": { "description": "Whether this bank account is to be the default in case no bank account is associated with the travel agent or source.", "type": "boolean" }, "linkedToProfile": { "description": "Whether this bank account is associated with the travel agent or source.", "type": "boolean" } } }, "commissionPaymentMethodType": { "type": "object", "description": "This contains a generic code and description information.", "properties": { "code": { "description": "Code.", "type": "string", "minLength": 0, "maxLength": 20 }, "description": { "description": "description.", "type": "string", "minLength": 0, "maxLength": 2000 }, "format": { "description": "Payment format if the payment method is EFT.", "type": "string", "minLength": 0, "maxLength": 3 } } }, "profileCommissionAccountCriteriaType": { "type": "object", "description": "Contains base info to determine profile commission bank account and code.", "properties": { "hotelId": { "description": "Hotel code from which the profile bank account and code belongs to", "type": "string", "minLength": 0, "maxLength": 20 }, "profileId": { "description": "Unique profile identifier.", "$ref": "#/definitions/profileId" }, "bankAccountId": { "description": "Bank account ID.", "$ref": "#/definitions/uniqueID_Type" }, "commissionCode": { "description": "Profile commission code", "$ref": "#/definitions/codeDescriptionType" }, "validatePending": { "description": "Used in CRUD operations. When set to true, proceed validating pending commissions", "type": "boolean" } } }, "codeListType": { "type": "array", "maxItems": 4000, "items": { "type": "string", "minLength": 0, "maxLength": 20 } }, "operaVersionNumberType": { "type": "string", "description": "Current Opera Version Number", "minLength": 0, "maxLength": 40 }, "duplicateExternalSubscriptionsListType": { "type": "array", "description": "Details of the OPERA Profile subscription to external system", "maxItems": 4000, "items": { "$ref": "#/definitions/duplicateExternalSubscriptionsType" } }, "duplicateExternalSubscriptionsType": { "type": "object", "description": "Contains subscription details about an OPERA Profile that is linked to multiple external profiles within the same external system.", "properties": { "profileId": { "description": "OPERA Profile ID", "$ref": "#/definitions/profileId" }, "databaseId": { "description": "Code identifying the external database record which is linked to external systems.", "type": "string", "minLength": 0, "maxLength": 20 }, "profileSubscriptions": { "description": "List of subscriptions where this OPERA profile is linked to multiple external profiles within the same external system", "$ref": "#/definitions/profileSubscriptionListType" } } }, "duplicateOPERASubscriptionsListType": { "type": "array", "description": "Details of the OPERA Profile subscription to external system", "maxItems": 4000, "items": { "$ref": "#/definitions/duplicateOPERASubscriptionsType" } }, "duplicateOPERASubscriptionsType": { "type": "object", "description": "Contains subscription details about an external profile within a particular external system that is linked to multiple OPERA profiles.", "properties": { "externalProfileId": { "description": "Profile ID within the external system", "$ref": "#/definitions/uniqueID_Type" }, "profileSubscriptions": { "description": "List of profile subscriptions to external system that are linked to the same OPERA Profile", "$ref": "#/definitions/profileSubscriptionListType" } } }, "forgetProfilesCriteriaType": { "type": "object", "description": "Criteria to identify the profiles to be forgotten.", "properties": { "profiles": { "description": "Collection of Unique Identifiers of profiles to be forgotten.", "$ref": "#/definitions/profiles" } } }, "profiles": { "type": "array", "description": "Unique identifier for a profile.", "maxItems": 4000, "items": { "$ref": "#/definitions/profileId" } }, "eCertificateGenerationDetailsType": { "type": "object", "description": "E-Certificates issue API call details.", "properties": { "profileId": { "description": "NameId.", "$ref": "#/definitions/profileId" }, "certificateType": { "description": "User defined certificate code.", "type": "string", "minLength": 0, "maxLength": 20 }, "source": { "description": "Source of e-certificate.", "$ref": "#/definitions/eCertificateIssueSourceType" }, "issueType": { "description": "Process action issued the certificate. valid values are assigned (a),opt in (o) and purchased (p).", "$ref": "#/definitions/eCertificateIssueType" }, "hotels": { "description": "Hotel to which certificate is attached to.", "type": "array", "maxItems": 4000, "items": { "type": "string", "minLength": 0, "maxLength": 20 } } } }, "suspendedProfileMatchStatsType": { "type": "array", "description": "Collection of suspended profile match statistics.", "maxItems": 4000, "items": { "$ref": "#/definitions/suspendedProfileMatchStatType" } }, "suspendedProfileMatchStatType": { "type": "object", "description": "Type which represents suspended profile match statistics information.", "properties": { "matchCriteria": { "description": "Suspended profile which associated with a Hotel code.", "type": "string", "minLength": 0, "maxLength": 80 }, "thresholdPoints": { "description": "Indicates number of profiles that have met the threshold limit (eg: Upper, Middle and lower)", "type": "number" }, "threshold": { "description": "Indicates threshold level(eg: Upper, Middle and lower)", "type": "string", "minLength": 0, "maxLength": 30 }, "profileType": { "description": "Type of the suspended profile.", "$ref": "#/definitions/profileTypeType" } } }, "profileDistributionFiltersType": { "type": "array", "description": "Profile Distribution Filter details.", "maxItems": 4000, "items": { "$ref": "#/definitions/profileDistributionFilterType" } }, "profileDistributionFilterType": { "type": "object", "description": "Profile Distribution Filter details.", "properties": { "queryId": { "description": "Unique ID of the Query.", "$ref": "#/definitions/profileDistributionFilterIDType" }, "code": { "description": "Name or code for the query.", "type": "string", "minLength": 0, "maxLength": 40 }, "description": { "description": "Short description for the query.", "type": "string", "minLength": 0, "maxLength": 200 }, "toDatabases": { "description": "Databases to which profile is to be subscribed to.", "$ref": "#/definitions/codeListType" }, "fromDatabases": { "description": "Databases for which profile is subscribed to.", "$ref": "#/definitions/codeListType" }, "fromCountry": { "description": "Country of the property profiles is subscribed to.", "$ref": "#/definitions/codeListType" }, "fromTerritory": { "description": "Territory of the property to which profile is subscribed to.", "$ref": "#/definitions/codeListType" }, "profileType": { "description": "Profile Type.", "type": "string", "minLength": 0, "maxLength": 20 }, "membershipType": { "description": "Membership Type.", "type": "string", "minLength": 0, "maxLength": 20 }, "membershipLevels": { "description": "List of membership levels for the membership type.", "type": "string", "minLength": 0, "maxLength": 200 }, "nationalities": { "description": "List of nationalities to which profile could belong to.", "type": "string", "minLength": 0, "maxLength": 4000 }, "vIPStatuses": { "description": "VIP status list.", "type": "string", "minLength": 0, "maxLength": 4000 }, "restricted": { "description": "Restricted profiles. Restricted/Unrestricted/All", "type": "boolean" }, "keywordType": { "description": "Name keyword type.", "type": "string", "minLength": 0, "maxLength": 20 }, "keyword": { "description": "Name keyword.", "type": "string", "minLength": 0, "maxLength": 80 }, "guestLanguages": { "description": "List of guest Languages.", "type": "string", "minLength": 0, "maxLength": 200 }, "fromStayDate": { "description": "From date range from for arrival or departure date on stay record.", "type": "string", "format": "date" }, "toStayDate": { "description": "To date range from for arrival or departure date on stay record.", "type": "string", "format": "date" }, "roomLabels": { "description": "List of room labels on stay records.", "$ref": "#/definitions/codeListType" }, "stayResorts": { "description": "List of properties on stay record.", "$ref": "#/definitions/codeListType" }, "stayChains": { "description": "List of chain code which will determine properties on stay record.", "$ref": "#/definitions/codeListType" }, "totalRevenue": { "description": "Sum of total revenue on stay records for the time period.", "type": "number" }, "totalRoomRevenue": { "description": "Sum of room revenue on stay records for the time period.", "type": "number" }, "totalNights": { "description": "Sum of nights on stay records for the time period.", "type": "number" }, "totalStays": { "description": "Sum of total number of stays on stay records for the time period.", "type": "number" }, "minimumStayResorts": { "description": "Minimum number of different resorts profile has stayed for the time period.", "type": "number" }, "lastRunDate": { "description": "Last server date time when the query was run.", "type": "string", "format": "date" }, "includeInactiveProfile": { "description": "Include inactive profiles also. Inactive profiles are profiles which are marked as N on active_yn flag.", "type": "boolean" }, "creditRating": { "description": "Profile credit rating.", "type": "string", "minLength": 0, "maxLength": 20 }, "topNumber": { "description": "Number of top records (for the Top filter).", "type": "number" }, "topBasedOn": { "description": "What is the top filter based on (e.g. total revenue, or number of nights).", "type": "string", "minLength": 0, "maxLength": 40 }, "excludeStay": { "description": "Exclude the from and to stay period.", "type": "boolean" }, "revenueType": { "description": "Membership Revenue Type.", "$ref": "#/definitions/codeListType" }, "totalRevenueTypeAmount": { "description": "Total amount of Membership Revenue Type.", "type": "number" }, "customFilter": { "description": "User defined custom sql filter. It is to be used by users who know SQL. Basic purpose is that user who know sql should not have to come to development for small changes in the filter.", "type": "string", "minLength": 0, "maxLength": 4000 }, "reportId": { "description": "Membership TSC Report Id.", "type": "number" } } }, "profileDistributionFilterIDType": { "type": "object", "description": "Unique identifier of a Profile Distribution Filter.", "properties": { "queryId": { "description": "Unique ID of the Query.", "type": "number" } } }, "profileEnrollmentType": { "type": "object", "description": "Type provides the detailed information about the profile and its children.", "properties": { "customer": { "description": "Detailed customer information for this profile.", "$ref": "#/definitions/customerType" }, "addresses": { "description": "List of customer addresses.", "type": "object", "properties": { "addressInfo": { "description": "Collection of Detailed information on an address for the customer.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/addressInfoType" } }, "allRowsFetched": { "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" }, "totalRows": { "description": "Total number of rows queried", "type": "integer" } } }, "telephones": { "description": "List of Telephone Number Information", "type": "object", "properties": { "telephoneInfo": { "description": "Collection of Detailed information on telephone/fax for the customer.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/telephoneInfoType" } }, "allRowsFetched": { "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" }, "totalRows": { "description": "Total number of rows queried", "type": "integer" } } }, "emails": { "description": "List of email address for the customer.", "type": "object", "properties": { "emailInfo": { "description": "Collection of Detailed information on an eMail address for the customer.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/emailInfoType" } }, "allRowsFetched": { "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" }, "totalRows": { "description": "Total number of rows queried", "type": "integer" } } }, "urls": { "description": "List of Information on a URL for the customer.", "type": "object", "properties": { "urlInfo": { "description": "Collection of Detailed information on web url/address for the customer.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/uRLInfoType" } }, "allRowsFetched": { "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" }, "totalRows": { "description": "Total number of rows queried", "type": "integer" } } }, "profileMemberships": { "description": "List of loyalty program(s) the profile is subscribed to.", "type": "object", "properties": { "profileMembership": { "description": "Collection of Detailed information on memberships for the customer.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/profileMembershipType" } }, "allRowsFetched": { "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" }, "totalRows": { "description": "Total number of rows queried", "type": "integer" } } }, "keywords": { "description": "List of customer keywords.", "type": "object", "properties": { "keyword": { "description": "Collection of keywords attached to the profile.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/keywordType" } }, "allRowsFetched": { "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" }, "totalRows": { "description": "Total number of rows queried", "type": "integer" } } }, "profileType": { "description": "Type of profile such as Guest, Agent, Company, Group, Source, Employee, Hotel, Vendor or Contact.", "$ref": "#/definitions/profileTypeType" }, "statusCode": { "description": "Status of the profile. Active/Inactive", "$ref": "#/definitions/profileStatusType" }, "registeredProperty": { "description": "Hotel which this profile is registered with. This attribute is not used for configuration.", "type": "string", "minLength": 0, "maxLength": 20 }, "requestForHotel": { "description": "Hotel which this profile is to be registered. This attribute is only used during creation of profile.", "type": "string", "minLength": 0, "maxLength": 20 }, "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 resposible for the creation.", "type": "string", "minLength": 0, "maxLength": 200 }, "lastModifyDateTime": { "description": "Time stamp of last modification.", "type": "string", "format": "date-time" }, "lastModifierId": { "description": "Identifies the last software system or person to modify a record.", "type": "string", "minLength": 0, "maxLength": 200 }, "profileId": { "description": "Unique id of the profile.", "$ref": "#/definitions/uniqueID_Type" }, "reservationId": { "description": "Unique identifier of the reservation.", "$ref": "#/definitions/uniqueID_Type" }, "enrollmentCode": { "description": "Membership enrollment code and description.", "$ref": "#/definitions/codeDescriptionType" }, "externalDatabaseID": { "description": "Enrollment details will be fetched from this External database.", "type": "string", "minLength": 0, "maxLength": 20 }, "hotelId": { "description": "Hotel Code, It is used to filter hotel specific children to this specific hotel code.", "type": "string", "minLength": 0, "maxLength": 20 }, "userId": { "description": "UserID/LoginID of the user who is enrolling the Guest.", "type": "string", "minLength": 0, "maxLength": 200 }, "employeeId": { "description": "EmployeeID of the user who is enrolling the Guest.", "type": "string", "minLength": 0, "maxLength": 20 } } }, "externalProfileSummariesType": { "type": "object", "description": "A complex type containing the collection of Profile objects or Unique IDs of Profiles.", "properties": { "profileInfo": { "description": "A collection of Profiles or Unique IDs of Profiles.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/externalProfileSummaryInfoType" } }, "totalRows": { "description": "Total number of rows queried", "type": "integer" }, "status": { "description": "Status of external Profile operation.", "$ref": "#/definitions/externalStatusType" }, "haltOperation": { "description": "Hold/Continue external Profile operation.", "type": "boolean" } } }, "externalStatusType": { "type": "string", "description": "Success return when there is no error and operation is successful.", "enum": [ "NotEnoughCriteria", "IgnoredUnsupportedCriteria", "ExternalError", "CommunicationError", "Success" ] }, "externalProfileType": { "type": "object", "description": "Type provides the detailed information about the profile.", "properties": { "profileIdList": { "description": "Unique identifiers for the Profile for both internal and external systems.", "$ref": "#/definitions/profileIdList" }, "profile": { "description": "Detailed customer information for this profile.", "$ref": "#/definitions/profileType" }, "incidents": { "description": "Detailed information of incidents related to the profile", "$ref": "#/definitions/incidentsType" }, "guestStatus": { "description": "Guest Status for the Profile.", "type": "string", "minLength": 0, "maxLength": 40 } } }, "incidentsType": { "type": "array", "description": "Collection of Incidents for the profile.", "maxItems": 4000, "items": { "$ref": "#/definitions/incidentType" } }, "incidentType": { "type": "object", "description": "Guest Incident details for the profile.", "properties": { "hotelId": { "description": "If specified Incident belongs to the Hotel listed, otherwise it is a global Incident.", "type": "string", "minLength": 0, "maxLength": 20 }, "incidentCode": { "description": "Code for the Incident.", "type": "string", "minLength": 0, "maxLength": 20 }, "description": { "description": "Incident Description for display purposes.", "type": "string", "minLength": 0, "maxLength": 2000 }, "incidentOn": { "description": "Date and Time the Incident was raised.", "type": "string", "format": "date-time" }, "status": { "description": "Status of the Incident.", "type": "string", "minLength": 0, "maxLength": 80 }, "priority": { "description": "Incident Priority.", "type": "string", "maxLength": 2000 }, "source": { "description": "Source of the incident.", "type": "string", "minLength": 0, "maxLength": 20 }, "note": { "description": "Holds Note for the Incident.", "type": "string", "minLength": 0, "maxLength": 2000 } } }, "enrollmentMatchProfilesType": { "type": "array", "description": "Provide match profile details for enrollment.", "maxItems": 4000, "items": { "$ref": "#/definitions/profileEnrollmentType" } }, "claimSourceType": { "type": "string", "description": "Source of the membership claim.", "enum": [ "Ocis", "Opms", "Web" ] }, "claimActivityLogListType": { "type": "array", "description": "Summary of claim activity log information.", "maxItems": 4000, "items": { "$ref": "#/definitions/claimActivityLogType" } }, "claimActivityLogType": { "type": "object", "description": "Summary of claim activity log information.", "properties": { "sequence": { "description": "Sequence number for claim activity.", "type": "integer" }, "type": { "description": "Claim activity type such as Reply, Call Property for Verification, Caller Called Back, and Remarks.", "type": "string", "minLength": 0, "maxLength": 20 }, "comments": { "description": "Name of the application user who created the activity record.", "type": "string", "minLength": 0, "maxLength": 2000 }, "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 resposible for the creation.", "type": "string", "minLength": 0, "maxLength": 200 }, "lastModifyDateTime": { "description": "Time stamp of last modification.", "type": "string", "format": "date-time" }, "lastModifierId": { "description": "Identifies the last software system or person to modify a record.", "type": "string", "minLength": 0, "maxLength": 200 } } }, "claimRecordType": { "type": "string", "description": "Record Type associated with a claim.", "enum": [ "Stay", "Other", "LimitedAdjustment" ] }, "claimApprovalStatusType": { "type": "string", "description": "Claim approve or reject status.", "enum": [ "Approved", "Rejected", "Pending" ] }, "membershipClaimDetailsType": { "type": "object", "description": "Detailed information of a claim.", "properties": { "claimNo": { "description": "Unique ID Number assigned to the claim when the claim was created.", "$ref": "#/definitions/uniqueID_Type" }, "claimDate": { "description": "Date the claim was made.", "type": "string", "format": "date" }, "closeDate": { "description": "If the status is closed, the date the claim was closed.", "type": "string", "format": "date" }, "source": { "description": "Source of the claim. This will be either OCIS, OPMS or WEB.", "$ref": "#/definitions/claimSourceType" }, "callerName": { "description": "Name of the person placing the claim. This name may be different from the name on the membership card.", "type": "string", "minLength": 0, "maxLength": 100 }, "owner": { "description": "User who is assigned to handle this claim.", "type": "string", "minLength": 0, "maxLength": 50 }, "claimStatus": { "description": "Status of the claim.(Open, Closed, Pending Review, Waiting for Manager, etc.)", "type": "string", "minLength": 0, "maxLength": 20 }, "claimType": { "description": "Type of user-definable claim such as New Card, Stay, etc.", "type": "string", "minLength": 0, "maxLength": 20 }, "origin": { "description": "Origin of the membership claim. User definable values like Email, Fax, Phone Call, etc.", "type": "string", "minLength": 0, "maxLength": 20 }, "callerInformation": { "description": "More information related to call that help to resolve the claim..", "type": "string", "minLength": 0, "maxLength": 2000 }, "replyBy": { "description": "The date, if any, by which a response to the caller was promised.", "type": "string", "format": "date" }, "comments": { "description": "Additional comments or steps taken to resolve the claim..", "type": "string", "minLength": 0, "maxLength": 2000 }, "approvalStatus": { "description": "Filter claims by approved or rejected status.", "$ref": "#/definitions/claimApprovalStatusType" }, "recordType": { "description": "Record type of the claim.", "$ref": "#/definitions/claimRecordType" }, "profileId": { "description": "Profile ID of the membership holder.", "$ref": "#/definitions/profileId" }, "membership": { "description": "Membership Type details.", "$ref": "#/definitions/claimMembershipType" }, "reservation": { "description": "Reservation or Stay information for the claim.", "$ref": "#/definitions/claimReservationInfoType" }, "claimPoints": { "description": "Membership claims award points and tier points.", "$ref": "#/definitions/claimAdjustmentPointsType" }, "activityLog": { "description": "Contains summary information of the claim.", "$ref": "#/definitions/claimActivityLogListType" }, "submitter": { "description": "User who entered this claim.", "type": "string", "minLength": 0, "maxLength": 50 } } }, "claimMembershipType": { "type": "object", "description": "Summary of claim activity log information.", "properties": { "nameOnCard": { "description": "Name to be displayed on the membership card.", "type": "string", "maxLength": 2000 }, "membershipClass": { "description": "Indicates the membership class.", "type": "string", "maxLength": 2000 }, "membershipId": { "description": "Card Number of the membership.", "type": "string", "maxLength": 2000 }, "membershipIdNo": { "description": "Membership ID Number.", "type": "number" }, "membershipType": { "description": "Membership Type code.", "type": "string", "minLength": 0, "maxLength": 20 }, "membershipLevel": { "description": "The current level of the membership.", "type": "string", "minLength": 0, "maxLength": 20 }, "effectiveDate": { "description": "Indicates the starting date.", "type": "string", "format": "date" }, "expireDate": { "description": "Indicates the ending date.", "type": "string", "format": "date" }, "expireDateExclusiveIndicator": { "description": "When true, indicates that the ExpireDate is the first day after the applicable period (e.g. when expire date is Oct 15 the last date of the period is Oct 14).", "type": "boolean" } } }, "claimAdjustmentPointsType": { "type": "object", "description": "Summary of membership claim award points and tier points.", "properties": { "adjustmentCode": { "description": "The selected adjustment code's Award, Stay, Nights, and Revenue thresholds will display.", "type": "string", "minLength": 0, "maxLength": 20 }, "totalBasePointsLimits": { "description": "Total base points limits for adjustment.", "type": "string", "maxLength": 2000 }, "baseStayLimits": { "description": "Base stay limits for adjustment.", "type": "string", "maxLength": 2000 }, "baseNightsLimits": { "description": "Base nights limits for adjustment.", "type": "string", "maxLength": 2000 }, "baseRevenueLimits": { "description": "Base revenue limits for adjustment.", "type": "string", "maxLength": 2000 }, "awardBasePoints": { "description": "Base award points for adjustment.", "type": "integer" }, "awardBonusPoints": { "description": "Bonus award points for adjustment.", "type": "integer" }, "awardMiscPoints": { "description": "Miscellaneous award points for adjustment.", "type": "integer" }, "awardTotalPoints": { "description": "Total award points for adjustment.", "type": "integer" }, "tierBaseStayPoints": { "description": "Tier base stay points for adjustment.", "type": "integer" }, "tierBonusStayPoints": { "description": "Tier bonus stay points for adjustment.", "type": "integer" }, "tierTotalStayPoints": { "description": "Tier total stay points for adjustment.", "type": "integer" }, "tierBaseNightsPoints": { "description": "Tier base nights points for adjustment.", "type": "integer" }, "tierBonusNightsPoints": { "description": "Tier bonus nights points for adjustment.", "type": "integer" }, "tierTotalNightsPoints": { "description": "Tier total nights points for adjustment.", "type": "integer" }, "tierBaseRevenuePoints": { "description": "Tier Base revenue points for adjustment.", "type": "integer" }, "tierBonusRevenuePoints": { "description": "Tier Bonus revenue points for adjustment.", "type": "integer" }, "tierTotalRevenuePoints": { "description": "Tier Total tier revenue points for adjustment.", "type": "integer" } } }, "claimReservationInfoType": { "type": "object", "description": "Summary of claim activity log information.", "properties": { "hotelId": { "description": "Property where the stay associated with this claim.", "type": "string", "minLength": 0, "maxLength": 20 }, "confirmationNo": { "description": "List of reservation confirmation or reference numbers associated with this claim. Like PMS reservation number, Central(ORS) booking number.", "$ref": "#/definitions/uniqueIDListType" }, "arrival": { "description": "Arrival date for the stay associated with this claim.", "type": "string", "format": "date" }, "departure": { "description": "Departure date for the stay associated with this claim.", "type": "string", "format": "date" } } }, "membershipAwardPointsByHotelType": { "type": "array", "description": "List of available award points information by Hotel.", "maxItems": 4000, "items": { "$ref": "#/definitions/membershipAwardPointByHotelType" } }, "membershipAwardPointByHotelType": { "type": "object", "description": "Award points information group by Hotel.", "properties": { "hotelId": { "description": "Award points issued at Property level.", "type": "string", "minLength": 0, "maxLength": 20 }, "totalPoints": { "description": "Sum of total positive and negative points.", "type": "number" } } }, "memberAwardType": { "type": "object", "properties": { "profileIdList": { "description": "Unique identifiers for the Profile for both internal and external systems.", "$ref": "#/definitions/profileIdList" }, "membershipType": { "description": "The type of the membership.", "type": "string", "minLength": 0, "maxLength": 20 }, "membershipCardNo": { "description": "The card number associated with this membership.", "type": "string", "minLength": 0, "maxLength": 50 }, "membershipLevel": { "description": "The current level of the membership.", "type": "string", "minLength": 0, "maxLength": 20 }, "reservationIdList": { "description": "Unique identifiers for the Reservation like Confirmation Number.", "$ref": "#/definitions/reservationIdList" }, "adults": { "description": "Number of adults associated with the reservation.", "type": "integer" }, "reservationTimeSpan": { "description": "Arrival and Departure dates of the reservation.", "$ref": "#/definitions/timeSpanType" }, "memberPointsBefore": { "description": "Member points before award transaction.", "type": "integer" }, "memberPointsAfter": { "description": "Member points after award transaction.", "type": "integer" }, "awardPoints": { "description": "Points associated with the award.", "type": "integer" }, "cancelPointsReturn": { "description": "Number of cancel points returned.", "type": "integer" }, "actualCancelPoints": { "description": "Actual number of cancel points.", "type": "integer" }, "expiryPoints": { "description": "Points that will expire.", "type": "integer" }, "awardProcessType": { "description": "Processing type of the award like Actual , Projected or Inactive.", "$ref": "#/definitions/memberAwardProcessType" }, "memberAwardDetails": { "description": "Details related to member award per stay date.", "$ref": "#/definitions/memberAwardDetailsType" }, "hotelId": { "description": "Property associated with the reservation.", "type": "string", "minLength": 0, "maxLength": 20 } } }, "memberAwardDetailsType": { "type": "array", "description": "Details related to member award per stay date.", "maxItems": 4000, "items": { "$ref": "#/definitions/memberAwardDetailType" } }, "memberAwardDetailType": { "type": "object", "description": "Details related to member award like award type, stay date, rate code, etc.", "properties": { "awardType": { "description": "The award type or code.", "type": "string", "minLength": 0, "maxLength": 40 }, "awardBasedOn": { "description": "Indicates if award is a Stay, Package Element or other.", "type": "string", "minLength": 0, "maxLength": 20 }, "cancelPenaltyDays": { "description": "Number days before arrival to apply penalty for cancellation.", "type": "integer" }, "cancelPenaltyCharge": { "description": "Number points deducted if award is cancelled.", "type": "integer" }, "cancelPenaltyType": { "description": "Type of cancel penalty like Points, etc.", "type": "string", "minLength": 0, "maxLength": 20 }, "cancelPenaltyPoints": { "description": "Number of penalty points if cancelled.", "type": "integer" }, "stayDate": { "description": "Date of stay.", "type": "string", "format": "date" }, "rateCode": { "description": "Rate code associated with the reservation.", "type": "string", "minLength": 0, "maxLength": 20 }, "roomType": { "description": "Room type label associated with the reservation.", "type": "string", "minLength": 0, "maxLength": 20 }, "product": { "description": "Product code for which the award was issued, in case of a product award.", "type": "string", "minLength": 0, "maxLength": 80 }, "fromRoomType": { "description": "Room type label before the upgrade in case of an upgrade award.", "type": "string", "minLength": 0, "maxLength": 20 }, "toRoomType": { "description": "Room type label after the upgrade for an upgrade award.", "type": "string", "minLength": 0, "maxLength": 20 }, "totalLocalAmount": { "description": "Total Local Amount on bill in Hotel Currency.", "type": "number" }, "redeemedLocalAmount": { "description": "Redeemed Local Amount on bill in Hotel Currency.", "type": "number" }, "totalCentralAmount": { "description": "Total Central Amount on bill in External System Currency.", "type": "number" }, "redeemedCentralAmount": { "description": "Redeemed Central Amount on bill in External System Currency.", "type": "number" }, "transactionCode": { "description": "The Payment Transaction Code for which the Surcharge Applies.", "type": "string", "minLength": 0, "maxLength": 20 }, "transactionNo": { "description": "Unique Transaction Identifier.", "type": "number" }, "exchangeRateType": { "description": "Exchange Rate Type for the Currency Exchange.", "type": "string", "minLength": 0, "maxLength": 20 }, "awardVoucherNo": { "description": "Award Voucher Number.", "type": "string", "minLength": 0, "maxLength": 40 }, "awardCancellationNo": { "description": "Unique ID for the award cancellation if cancelled.", "$ref": "#/definitions/uniqueID_Type" }, "inactive": { "description": "If the award detail is inactive.", "type": "boolean" }, "pointsRequired": { "description": "Points required for the stay date.", "type": "integer" } } }, "memberAwardProcessType": { "type": "string", "description": "Processing type of the award like Actual , Projected or Inactive.", "enum": [ "Actual", "Projected", "Inactive" ] }, "membershipTransactionType": { "type": "object", "description": "Detailed transaction information related to a membership.", "properties": { "membershipDetails": { "description": "Membership details for the requested membership transaction ID.", "$ref": "#/definitions/membershipDetailsType" }, "membershipTransactionDetails": { "description": "Membership transaction details for the requested membership transaction ID.", "$ref": "#/definitions/membershipTransactionDetailsType" } } }, "membershipTransactionDetailsType": { "type": "object", "description": "Detailed information related to a membership transaction.", "properties": { "membershipTransactionId": { "description": "Unique identifier associated with the membership transaction.", "$ref": "#/definitions/membershipTransactionId" }, "hotelId": { "description": "Property from which the membership stay information was received.", "type": "string", "minLength": 0, "maxLength": 20 }, "transactionType": { "description": "The type of membership points transaction.", "type": "string", "minLength": 0, "maxLength": 20 }, "transactionDate": { "description": "The date when the points were calculated.", "type": "string", "format": "date" }, "reservationIdList": { "description": "Unique reservation identifiers associated with this transaction like PMS Confirmation Number and CRS Booking Number.", "$ref": "#/definitions/reservationIdList" }, "currency": { "description": "The property currency at the originating PMS.", "type": "string", "minLength": 0, "maxLength": 20 }, "stayTimeSpan": { "description": "Arrival and Departure date for the stay.", "$ref": "#/definitions/timeSpanType" }, "ratePromotion": { "description": "Promotion code assigned on reservation.", "type": "string", "minLength": 0, "maxLength": 20 }, "profilePromotions": { "description": "Promotion code assigned on reservation.", "$ref": "#/definitions/codeListType" }, "pointsCreditDate": { "description": "For adjustments, the date when the points are to be credited.", "type": "string", "format": "date" }, "averageRateAmount": { "description": "The average cost of the room per night.", "type": "number" }, "adjustment": { "description": "Indicates if the transaction was created as an adjustment.", "type": "boolean" }, "pointsCalculated": { "description": "Indicates if the points have been calculated on this transaction.", "type": "boolean" }, "exception": { "description": "Indicates if the transaction was flagged as an exception.", "type": "boolean" }, "roomLabel": { "description": "The room type for this transaction.", "type": "string", "minLength": 0, "maxLength": 50 }, "bookedRoomLabel": { "description": "The booked room type for this transaction.", "type": "string", "minLength": 0, "maxLength": 50 }, "notes": { "description": "Notes associated with this transaction.", "type": "string", "minLength": 0, "maxLength": 4000 }, "statementId": { "description": "Statement batch ID.", "$ref": "#/definitions/uniqueID_Type" }, "memberStatementId": { "description": "Member statement batch ID.", "$ref": "#/definitions/uniqueID_Type" }, "billingGroup": { "description": "Billing group the points belong to.", "type": "string", "minLength": 0, "maxLength": 20 }, "baseBillingGroup": { "description": "Base billing group the points belong to.", "type": "string", "minLength": 0, "maxLength": 20 }, "bonusBillingGroup": { "description": "Bonus billing group the points belong to.", "type": "string", "minLength": 0, "maxLength": 20 }, "pointsCost": { "description": "The total cost associated with points earned by this transaction.", "type": "integer" }, "processingMessages": { "description": "Messages generated by the system during points calculation.", "type": "string", "minLength": 0, "maxLength": 2000 }, "awardPoints": { "description": "Details if this transaction is associated with award points.", "$ref": "#/definitions/membershipAwardPointsType" }, "tierPoints": { "description": "Details if this transaction is associated with tier points.", "$ref": "#/definitions/membershipTransactionTierPointsType" } } }, "membershipTransactionId": { "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": { "url": { "description": "URL that identifies the location associated with the record identified by the UniqueID.", "type": "string", "maxLength": 2000 }, "type": { "description": "A reference to the type of object defined by the UniqueID element.", "type": "string", "minLength": 0, "maxLength": 20 }, "instance": { "description": "The identification of a record as it exists at a point in time. An instance is used in update messages where the sender must assure the server that the update sent refers to the most recent modification level of the object being updated.", "type": "string", "minLength": 0, "maxLength": 80 }, "idContext": { "description": "Used to identify the source of the identifier (e.g., IATA, ABTA).", "type": "string", "minLength": 0, "maxLength": 80 }, "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 }, "idExtension": { "description": "Additional identifying value assigned by the creating system.", "type": "integer" } } }, "membershipAwardPointsType": { "type": "object", "description": "Details associated with award points.", "properties": { "basePoints": { "description": "Total number of base award points for a membership points transaction.", "type": "integer" }, "bonusPoints": { "description": "If a membership points transaction involves bonus points, the total number of bonus points.", "type": "integer" }, "miscPoints": { "description": "If a membership points transaction involves points imported into ORS from a third-party system, the total number of points.", "type": "integer" }, "totalPoints": { "description": "The total number of award points.", "type": "integer" }, "pointsExpiryDate": { "description": "The date until points are eligible for redemption based on membership type configuration.", "type": "string", "format": "date" }, "ruleCode": { "description": "Rule Code for award points.", "type": "string", "minLength": 0, "maxLength": 20 } } }, "membershipTransactionTierPointsType": { "type": "object", "description": "Details associated with tier points.", "properties": { "baseStay": { "description": "Total number of base stay tier points for a membership points transaction.", "type": "integer" }, "baseNights": { "description": "Total number of base nights tier points for a membership points transaction.", "type": "integer" }, "baseRevenue": { "description": "Total number of base revenue tier points for a membership points transaction.", "type": "integer" }, "bonusStay": { "description": "The total number of bonus stay tier points.", "type": "integer" }, "bonusNights": { "description": "The total number of bonus nights tier points.", "type": "integer" }, "bonusRevenue": { "description": "The total number of bonus revenue tier points.", "type": "integer" } } }, "membershipDetailsType": { "type": "object", "description": "Details about a membership like ProfileID, Card Number, Type, Level, etc.", "properties": { "profileId": { "description": "The profile to which this membership is associated with.", "$ref": "#/definitions/profileId" }, "name": { "description": "The profile name associated with this membership.", "type": "string", "minLength": 0, "maxLength": 128 }, "membershipId": { "description": "Unique identifier of this membership.", "$ref": "#/definitions/uniqueID_Type" }, "membershipCardNo": { "description": "The card number associated with this membership.", "type": "string", "minLength": 0, "maxLength": 50 }, "membershipType": { "description": "The type of the membership.", "$ref": "#/definitions/codeDescriptionType" }, "membershipLevel": { "description": "The current level of the membership.", "type": "string", "minLength": 0, "maxLength": 20 }, "joinedDate": { "description": "Date when the member enrolled for the membership.", "type": "string", "format": "date" }, "cardExpirationDate": { "description": "Membership card expiration date.", "type": "string", "format": "date" } } }, "memberPointsToExpireListType": { "type": "array", "description": "List of of member points to expire.", "maxItems": 4000, "items": { "$ref": "#/definitions/memberPointToExpireType" } }, "memberPointToExpireType": { "type": "object", "description": "Information related to a member point to expire.", "properties": { "pointsExpiryDate": { "description": "The date when the member future award points will expire.", "type": "string", "format": "date" }, "pointsToExpire": { "description": "Displays the total number of points that will expire on the expiration date.", "type": "integer" }, "previousPointsToExpire": { "description": "Displays the number of points that are relevant for extension. Points that were already extended from the previous year are not considered for extension.", "type": "integer" }, "extend": { "description": "Indicates if the points is extendable.", "type": "boolean" }, "awardGenerationMethod": { "description": "The method of award generation.", "type": "string", "minLength": 0, "maxLength": 20 } } }, "membershipTransactionExceptionsType": { "type": "array", "description": "Contains Membership transaction exception information.", "maxItems": 4000, "items": { "$ref": "#/definitions/membershipTransactionExceptionType" } }, "membershipTransactionExceptionType": { "type": "object", "description": "Details about a membership like ProfileID, Card Number, Type, Level, etc.", "properties": { "profileId": { "description": "The profile to which this membership is associated with.", "$ref": "#/definitions/profileId" }, "name": { "description": "The profile name associated with this membership.", "type": "string", "minLength": 0, "maxLength": 128 }, "membershipId": { "description": "Unique identifier of this membership.", "$ref": "#/definitions/uniqueID_Type" }, "membershipCardNo": { "description": "The card number associated with this membership.", "type": "string", "minLength": 0, "maxLength": 50 }, "membershipType": { "description": "The type of the membership.", "$ref": "#/definitions/codeDescriptionType" }, "membershipLevel": { "description": "The current level of the membership.", "type": "string", "minLength": 0, "maxLength": 20 }, "joinedDate": { "description": "Date when the member enrolled for the membership.", "type": "string", "format": "date" }, "cardExpirationDate": { "description": "Membership card expiration date.", "type": "string", "format": "date" }, "membershipTransactionId": { "description": "Unique identifier associated with the membership transaction.", "$ref": "#/definitions/membershipTransactionId" }, "hotelId": { "description": "Hotel code of the membership transaction exceptions.", "type": "string", "minLength": 0, "maxLength": 20 }, "fromToRangeDate": { "description": "Arrival and Departure date of stay for which you are displaying membership transaction exceptions.", "$ref": "#/definitions/dateRangeType" }, "reservationNumber": { "description": "Any reference like reservation no etc against which the certificate was consumed.", "type": "string", "minLength": 0, "maxLength": 50 }, "roomsBooked": { "description": "If multiple room membership transaction exceptions occurred, the number of rooms booked.(MR)", "type": "integer" }, "backToBack": { "description": "Indicates if back to back membership transaction exceptions have occurred or not.", "type": "string", "minLength": 0, "maxLength": 2 }, "averageRate": { "description": "The average rate of the stay.", "type": "number" }, "tierStays": { "description": "Tier stay points associated with this membership points transaction.", "type": "number" }, "totalAwardPoints": { "description": "Award points associated with this membership points transaction.", "type": "number" }, "totalNights": { "description": "Tier night points associated with this membership points transaction.", "type": "number" }, "totalRevenue": { "description": "Tier revenue points associated with this membership points transaction.", "type": "number" }, "pointsCalculate": { "description": "Points Calculated value(Y/N) for the selected transaction.", "type": "boolean" }, "userNotes": { "description": "Notes regarding the resolution of the membership transaction exception or for any other reason.", "type": "string", "minLength": 0, "maxLength": 4000 }, "processingMessages": { "description": "The systems records and notes identifying the exception criteria.", "type": "string", "minLength": 0, "maxLength": 2000 }, "totalPoints": { "description": "The total number of award points associated with this transaction.", "type": "number" }, "awardBasePoints": { "description": "The total number of base award points for this membership points transaction.", "type": "number" }, "awardBonusPoints": { "description": "Indicates if this transaction involves bonus points, The total number of bonus points.", "type": "number" }, "tierPoints": { "description": "Details if this transaction is associated with tier points.", "$ref": "#/definitions/membershipTransactionTierPointsType" }, "computedPoints": { "description": "Information to compute award and tier points for membership transaction exception.", "$ref": "#/definitions/membershipTransactionExceptionComputePointsType" }, "exceptionType": { "description": "Indicates the type of Exception like Exception not resolved,Points Rejected on Exception etc.,", "type": "integer" } } }, "membershipTransactionExceptionComputePointsType": { "type": "object", "description": "Options to compute award and tier points for membership transaction exception.", "properties": { "awardBasePoints": { "description": "Indicates if membership transaction exception should be created for base award points.", "type": "boolean" }, "awardBonusPoints": { "description": "Indicates if membership transaction exception should be created for bonus award points.", "type": "boolean" }, "tierPointsBaseStay": { "description": "Indicates if membership transaction exception should be created for base tier points for the stay.", "type": "boolean" }, "tierPointsBonusStay": { "description": "Indicates if membership transaction exception should be created for tier bonus points for the stay.", "type": "boolean" }, "tierPointsBaseNights": { "description": "Indicates if membership transaction exception should be created for base tier points for the night.", "type": "boolean" }, "tierPointsBonusNights": { "description": "Indicates if membership transaction exception should be created for tier bonus points for the night.", "type": "boolean" }, "tierPointsBaseRevenue": { "description": "Indicates if membership transaction exception should be created for base tier points for the revenue.", "type": "boolean" }, "tierPointsBonusRevenue": { "description": "Indicates if membership transaction exception should be created for tier bonus points for the revenue.", "type": "boolean" } } }, "profileStatisticsType": { "type": "object", "description": "Contains summary/detail/Revenue statistics information for Profile.", "properties": { "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": "#/definitions/profileIdList" }, "stayStatisticsSummaryList": { "description": "List of summary profile stay statistics.", "$ref": "#/definitions/statisticsSummaryListType" }, "stayStatisticsDetailList": { "description": "List of detailed profile stay statistics.", "$ref": "#/definitions/stayStatisticsDetailListType" }, "revenueStatisticsSummaryList": { "description": "List of summary profile revenue statistics.", "$ref": "#/definitions/revenueStatisticsSummaryListType" }, "reportType": { "description": "Contains the statistical report(Reservation, Revenue, Stay Records) type.", "$ref": "#/definitions/statisticsReportType" } } }, "stayStatisticsDetailListType": { "type": "array", "description": "Collection of stay statistics detail information", "maxItems": 4000, "items": { "$ref": "#/definitions/stayStatisticsDetailType" } }, "stayStatisticsDetailType": { "type": "object", "description": "Contains stay statistics detail information", "properties": { "stayDetail": { "$ref": "#/definitions/stayDetailType" }, "revenue": { "$ref": "#/definitions/stayStatisticsRevenueType" }, "year": { "type": "string", "maxLength": 2000 }, "hotelId": { "type": "string", "minLength": 0, "maxLength": 20 } } }, "stayDetailType": { "type": "object", "description": "The Reservation class contains the current reservation being created or altered.", "properties": { "reservationIdList": { "description": "Unique identifiers for the reservation for both internal and external systems", "$ref": "#/definitions/reservationIdList" }, "roomStay": { "description": "Collection of room stays.", "$ref": "#/definitions/stayInfoType" }, "resGuest": { "description": "Collection of guests associated with the reservation.", "$ref": "#/definitions/resGuestInfoType" }, "sharedGuests": { "description": "Collection of guests who share this reservation.", "$ref": "#/definitions/resSharedGuestListType" }, "attachedProfiles": { "description": "List of attached profiles", "$ref": "#/definitions/resAttachedProfileListType" }, "reservationPaymentMethod": { "description": "Payment method used for this reservation", "$ref": "#/definitions/reservationPaymentMethodType" }, "reservationFolioWindows": { "description": "Collection of reservation folio windows.", "$ref": "#/definitions/reservationFolioWindowsType" }, "specials": { "description": "Set of reservation preferences which belongs to the Specials group.", "type": "string", "minLength": 0, "maxLength": 4000 }, "lastPrivacyPromptDate": { "description": "Last Privacy Prompt Date", "type": "string", "format": "date" }, "displayColor": { "description": "Color setting of the reservation.", "type": "string", "minLength": 0, "maxLength": 20 }, "reservationIndicators": { "description": "Indicators of additional information attached to the reservation", "$ref": "#/definitions/indicatorsType" }, "roomStatus": { "description": "Current room status", "$ref": "#/definitions/housekeepingRoomStatusType" }, "searchMatches": { "description": "Super Search matching terms.", "$ref": "#/definitions/searchMatchesType" }, "sourceOfSale": { "description": "Point of Sale of reservation. Identifies the entity/channel who made the reservation.", "$ref": "#/definitions/sourceOfSaleType" }, "waitlist": { "description": "Information regarding why reservation has been/was waitlisted. This could hold information as history even if reservation is not in Waitlist status anymore.", "$ref": "#/definitions/waitlistResType" }, "queue": { "description": "Information about the time and duration this reservation was on Queue for Checkin.", "$ref": "#/definitions/reservationQueueInformationType" }, "housekeeping": { "description": "Information regarding housekeeping for this reservation.", "$ref": "#/definitions/resHousekeepingType" }, "cashiering": { "description": "Holds cashiering related information for the reservation.", "$ref": "#/definitions/resCashieringType" }, "taxType": { "description": "This stores the code for the type of tax calculation especially with tax exemption, etc.", "$ref": "#/definitions/taxTypeType" }, "deposit": { "description": "Holds reservation deposit information.", "$ref": "#/definitions/reservationDepositType" }, "allowedActions": { "description": "Collection of reservation allowed actions.", "$ref": "#/definitions/reservationAllowedActionsType" }, "revenuesAndBalances": { "description": "Revenues and Balances Amount summary for the reservation.", "$ref": "#/definitions/resRevenueBalanceType" }, "hotelInterfaceStatusList": { "description": "Collection of Hotel Interfaces and rights, this is populated only when fetching interface status for rooms.", "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/reservationInterfaceStatusType" } }, "guestPreferredCurrency": { "description": "Currency code preferred by guest.", "type": "string", "minLength": 0, "maxLength": 20 }, "turndownInfo": { "description": "Currency code preferred by guest.", "$ref": "#/definitions/reservationTurndownInfoType" }, "mobileNotifications": { "description": "Denotes the status of Room Ready, Key Ready messages.", "$ref": "#/definitions/resMobileNotificationsType" }, "resCommunication": { "description": "Collection of reservation communication details.", "$ref": "#/definitions/resCommunicationType" }, "advanceCheckIn": { "description": "Information relating to Reservation's Advance Checked In state and Expected Time of Return", "$ref": "#/definitions/advanceCheckInType" }, "welcomeOffer": { "description": "This flag will determine wheather the reservation is eligible for Welcome Offer or not.", "type": "boolean" }, "cancellationInfo": { "description": "Information regarding why reservation has been/was cancelled.", "type": "object", "properties": { "description": { "type": "string", "minLength": 0, "maxLength": 2000 }, "code": { "type": "string", "minLength": 0, "maxLength": 20 }, "date": { "description": "Date when reservation was last cancelled.", "type": "string", "format": "date" } } }, "keyCount": { "description": "Number of keys created for the reservation.", "type": "integer" }, "hotelId": { "type": "string", "minLength": 0, "maxLength": 20 }, "hotelName": { "type": "string", "minLength": 0, "maxLength": 80 }, "expectedServiceTime": { "type": "string", "minLength": 0, "maxLength": 20 }, "roomStayReservation": { "description": "Boolean True if this reservation is reserving rooms. False if it is only reserving services.", "type": "boolean" }, "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 resposible for the creation.", "type": "string", "minLength": 0, "maxLength": 200 }, "lastModifyDateTime": { "description": "Time stamp of last modification.", "type": "string", "format": "date-time" }, "lastModifierId": { "description": "Identifies the last software system or person to modify a record.", "type": "string", "minLength": 0, "maxLength": 200 }, "purgeDate": { "description": "Date an item will be purged from a database (e.g., from a live database to an archive).", "type": "string", "format": "date" }, "resStatus": { "description": "Indicates the status of the reservation.", "$ref": "#/definitions/pMS_ResStatusType" }, "computedResStatus": { "description": "Indicates the status of the reservation.", "$ref": "#/definitions/pMS_ResStatusType" }, "walkInIndicator": { "description": "When true, indicates the reservation is for a guest that walks-in without a reservation. When false, the reservation is not a walk-in.", "type": "boolean" }, "accessRestriction": { "description": "Indicates user restriction on the reservation based on the Access exclusion functionality such as Restriction on Changes, Cancellation or both.", "$ref": "#/definitions/resAccessRestrictionType" }, "commissionPayoutTo": { "description": "If not null, reservation is considered to pay out commission to either Travel Agent, Source or both.", "$ref": "#/definitions/commissionPayoutToType" }, "paymentMethod": { "description": "Payment Method.", "type": "string", "minLength": 0, "maxLength": 20 }, "preRegistered": { "description": "Defines if the reservation is pre-registered or not.", "type": "boolean" }, "openFolio": { "description": "Returns true when reservation has an open folio.", "type": "boolean" }, "allowMobileCheckout": { "description": "Flag containing true or false value for reservation to be eligible for self-checkout by guest using mobile device . Pass the 'true' or 'false' values when creating / modifying reservation to indicate whether a reservation is eligible for mobile checkout yes / no. Upon fetch, the current state of the flag will show true or false.", "type": "boolean" }, "allowMobileViewFolio": { "description": "Attribute AllowMobileViewFolio is set to true when the reservation is eligible for viewing folio using mobile device.", "type": "boolean" }, "optedForCommunication": { "description": "Attribute OptedForCommunication is set to true when the guest has opted for receiving communicationsl related to the reservation.", "type": "boolean" }, "complimentaray": { "description": "Indicates the profile stay record is complimentaray.", "type": "boolean" }, "reservationSourceCode": { "description": "Indicates the profile stay record reservation source code.", "type": "string", "minLength": 0, "maxLength": 20 }, "reservationSourceType": { "description": "Indicates the profile stay record reservation source Type.", "type": "string", "minLength": 0, "maxLength": 50 }, "shareNumber": { "description": "Indicates the share Number for Stay if reservation was a share.", "type": "string", "minLength": 0, "maxLength": 20 }, "bookingDate": { "description": "Booking date of the stay record.", "type": "string", "format": "date" }, "bookedArrivalDate": { "description": "Booked arrival date of the stay record.", "type": "string", "format": "date" }, "bookedDepartureDate": { "description": "Booked departure date of the stay record.", "type": "string", "format": "date" }, "cancellationDate": { "description": "Cancellation date of the stay record.", "type": "string", "format": "date" }, "cancelledRoomNights": { "description": "Number of cancelled room nights.", "type": "integer" }, "noShowRoomNights": { "description": "Number of no show room nights.", "type": "integer" }, "travelAgentReferenceId": { "description": "Travel Agent reference number for stay record.", "type": "string", "minLength": 0, "maxLength": 60 }, "allotmentCode": { "description": "Allotment Code for stay record.", "type": "string", "minLength": 0, "maxLength": 20 }, "primarySharer": { "description": "Indicates whether the guest was the primary sharer or not.", "type": "boolean" }, "exchangeRate": { "description": "Exchange Rate.", "type": "number" }, "promotionCode": { "description": "Promotion code associated with the stay.", "type": "string", "minLength": 0, "maxLength": 20 }, "bookedRoomType": { "description": "Indicate the category of room originally booked.", "type": "string", "minLength": 0, "maxLength": 20 }, "channelCode": { "description": "Indicate channel for stay.", "type": "string", "minLength": 0, "maxLength": 20 }, "stayRecordId": { "description": "Stay Record identifier.", "$ref": "#/definitions/uniqueID_Type" } } }, "stayStatisticsRevenueType": { "type": "object", "description": "Contains different list of stay statistics revenue information", "properties": { "averageDailyRate": { "$ref": "#/definitions/statisticsRevenueTypeType" }, "totalRevenue": { "$ref": "#/definitions/statisticsRevenueTypeType" }, "roomRevenue": { "$ref": "#/definitions/statisticsRevenueTypeType" }, "fBRevenue": { "$ref": "#/definitions/statisticsRevenueTypeType" }, "extraRevenue": { "$ref": "#/definitions/statisticsRevenueTypeType" }, "nonRevenue": { "$ref": "#/definitions/statisticsRevenueTypeType" }, "currency": { "type": "string", "maxLength": 2000 }, "stayReservation": { "$ref": "#/definitions/stayReservationType" } } }, "statisticsRevenueTypeType": { "type": "object", "description": "Contains Revenue information", "properties": { "revenueAmount": { "type": "number" }, "revenueLabel": { "type": "string", "minLength": 0, "maxLength": 20 } } }, "stayReservationType": { "type": "string", "description": "Enumeration for stay types.", "enum": [ "Transient", "Block" ] }, "revenueStatisticsSummaryListType": { "type": "array", "description": "List of the detailed and yearly summarized information about the profile revenue.", "maxItems": 4000, "items": { "$ref": "#/definitions/revenueStatisticsSummaryType" } }, "revenueStatisticsSummaryType": { "type": "object", "description": "Summary of the revenue for a year", "properties": { "revenueDetails": { "description": "Details regarding the profile revenue belonging to the specified year.", "$ref": "#/definitions/revenueStatisticsDetailListType" }, "year": { "description": "Year of the revenue.", "type": "string", "minLength": 4, "maxLength": 4 } } }, "revenueStatisticsDetailListType": { "type": "array", "description": "The collection of profile revenue statistics.", "maxItems": 4000, "items": { "$ref": "#/definitions/revenueStatisticsDetailType" } }, "revenueStatisticsDetailType": { "type": "object", "description": "The different statistics from the revenue of a profile.", "properties": { "stayTimeSpan": { "description": "The stay time span of the reservation.", "$ref": "#/definitions/timeSpanType" }, "guestName": { "description": "Name Of The Guest.", "type": "string", "minLength": 0, "maxLength": 200 }, "profileIdList": { "description": "Id of the guest profile in the reservation.", "$ref": "#/definitions/profileIdList" }, "reservationIdList": { "description": "Id of the reservation.", "$ref": "#/definitions/reservationIdList" }, "revenueType": { "description": "Revenue Type for Stay.", "type": "string", "minLength": 0, "maxLength": 20 }, "centralRevenue": { "description": "Central Revenue Type for Stay.", "type": "number" }, "localRevenue": { "description": "Local Revenue Type for Stay.", "type": "number" }, "hotelId": { "description": "Hotel of the reservation.", "type": "string", "minLength": 0, "maxLength": 20 } } }, "statisticsReportType": { "type": "string", "enum": [ "Reservation", "Revenue", "ProfileStayRecords", "DetailStayRecordsRevenue" ], "description": "Indicate to get revenue of Stay Records." }, "statisticsSummaryListType": { "type": "object", "description": "Collection of Profile statistics summary information", "properties": { "profileHotelStatisticsbyYearSummary": { "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/profileHotelStatisticsbyYearSummaryType" } }, "profileStatisticsbyYearSummary": { "type": "array", "maxItems": 4000, "items": { "$ref": "#/definitions/profileStatisticsbyYearSummaryType" } } } }, "profileStatisticsbyYearSummaryType": { "type": "object", "description": "Contains stay statistics summary information by year", "properties": { "stayDetail": { "type": "array", "maxItems": 2, "items": { "$ref": "#/definitions/stayDetailSummaryType" } }, "netRevenue": { "type": "array", "maxItems": 2, "items": { "$ref": "#/definitions/stayStatisticsRevenueType" } }, "year": { "type": "string", "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": "#/definitions/stayReservationType" } } }, "profileHotelStatisticsbyYearSummaryType": { "type": "object", "description": "Contains stay statistics summary information by year", "properties": { "stayDetail": { "type": "array", "maxItems": 2, "items": { "$ref": "#/definitions/stayDetailSummaryType" } }, "netRevenue": { "type": "array", "maxItems": 2, "items": { "$ref": "#/definitions/stayStatisticsRevenueType" } }, "year": { "type": "string", "maxLength": 2000 }, "hotelId": { "type": "string", "minLength": 0, "maxLength": 20 } } }, "operaVersion": { "type": "object", "description": "Response for Ping operation.", "properties": { "operaVersion": { "description": "Opera version number.", "$ref": "#/definitions/operaVersionNumberType" }, "links": { "$ref": "#/definitions/links" } } }, "profile": { "type": "object", "description": "Object for creation of profiles. This object contains profile details with unique identifiers for each profile.", "properties": { "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": "#/definitions/profileIdList" }, "profileDetails": { "description": "Provides detailed information regarding either a company or a customer profile.", "$ref": "#/definitions/profileType" }, "links": { "$ref": "#/definitions/links" } } }, "guest": { "type": "object", "description": "Request object for creation of guest/contact/employee profile. This object contains profile details with unique identifiers of a profile. The standard optional Opera Context element is also included.", "properties": { "guestIdList": { "description": "Unique identifiers of Profile for both internal and external systems.", "$ref": "#/definitions/profileIdList" }, "guestDetails": { "description": "Provides detailed information of a customer profile.", "$ref": "#/definitions/guestProfileType" }, "links": { "$ref": "#/definitions/links" } } }, "company": { "type": "object", "description": "Request object for creation of company/agent/group/source profile. This object contains profile details with unique identifiers of a profile. The standard optional Opera Context element is also included.", "properties": { "companyIdList": { "description": "Unique identifiers of 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": "#/definitions/profileIdList" }, "companyDetails": { "description": "Provides detailed information of a company profile.", "$ref": "#/definitions/companyProfileType" }, "links": { "$ref": "#/definitions/links" } } }, "enrollment": { "type": "object", "description": "Response object for fetching profile enrollment from external system.", "properties": { "enrollmentInfo": { "description": "Type contains profile enrollment information.", "$ref": "#/definitions/profileEnrollmentType" }, "links": { "$ref": "#/definitions/links" } } }, "externalProfiles": { "type": "object", "description": "Response object for fetching profiles from external CRM System. This object contains profile primary details, profile summary details, master info list containing code and description used as lookup for description.", "properties": { "externalProfileSummaries": { "description": "Type contains Profile's summary information.", "$ref": "#/definitions/externalProfileSummariesType" }, "links": { "$ref": "#/definitions/links" } } }, "externalProfile": { "type": "object", "description": "Response object for fetching profile from external CRM System. This object contains profile details, preferences and incidents.", "properties": { "profileInfo": { "description": "Type provides the detailed information about the profile.", "$ref": "#/definitions/externalProfileType" }, "links": { "$ref": "#/definitions/links" } } }, "enrollmentMatchProfiles": { "type": "object", "description": "Response object to fetch match profiles for enrollment.", "properties": { "enrollmentMatchProfilesDetail": { "description": "Type contains detail information regarding match profiles.", "$ref": "#/definitions/enrollmentMatchProfilesType" }, "links": { "$ref": "#/definitions/links" } } }, "membershipClaim": { "type": "object", "description": "Request object for creating membership claim.", "properties": { "membershipClaimDetails": { "$ref": "#/definitions/membershipClaimDetailsType" }, "links": { "$ref": "#/definitions/links" } } }, "membershipAwardPointsByHotel": { "type": "object", "description": "Response object for fetching member award points by Hotel.", "properties": { "membershipAwardPoints": { "description": "Collection of member award points list.", "$ref": "#/definitions/membershipAwardPointsByHotelType" }, "links": { "$ref": "#/definitions/links" } } }, "membershipTransaction": { "type": "object", "description": "Response object for fetching a membership transaction.", "properties": { "membershipTransactionDetails": { "description": "Membership transaction details for the requested membership transaction ID.", "$ref": "#/definitions/membershipTransactionType" }, "links": { "$ref": "#/definitions/links" } } }, "memberPointsToExpire": { "type": "object", "description": "Response object for fetching member points to expire information.", "properties": { "memberPointsToExpireList": { "description": "Collection of member points to expire.", "$ref": "#/definitions/memberPointsToExpireListType" }, "links": { "$ref": "#/definitions/links" } } }, "membershipTransactionExceptions": { "type": "object", "description": "Response object for fetching membership transaction exceptions.", "properties": { "memberTransactionExceptions": { "description": "A collection of membership transaction exceptions.", "$ref": "#/definitions/membershipTransactionExceptionsType" }, "links": { "$ref": "#/definitions/links" } } }, "award": { "type": "object", "description": "Request object to redeem award.", "properties": { "memberAward": { "$ref": "#/definitions/memberAwardType" }, "links": { "$ref": "#/definitions/links" } } }, "stagedProfile": { "type": "object", "description": "Request object for changing the staged profile.", "properties": { "stagedProfile": { "$ref": "#/definitions/stagedProfileType" }, "changeInstructions": { "$ref": "#/definitions/stagedProfileChangeInstructionsType" }, "links": { "$ref": "#/definitions/links" } } }, "preference": { "type": "object", "description": "Response object for fetch preference. This object contains collection of preferences,Success,Warnings and Errors related to this operation.", "properties": { "preferenceCollections": { "description": "Detailed information of preferences related to the profile", "type": "array", "items": { "$ref": "#/definitions/preferenceTypeType" } }, "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": "#/definitions/profileIdList" }, "links": { "$ref": "#/definitions/links" } } }, "membership": { "type": "object", "description": "Request object for create membership. This object contains unique identifiers for each profile and list of membership details to be created. The standard optional Opera Context element is also included.", "properties": { "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": "#/definitions/profileIdList" }, "profileMemberships": { "description": "Detailed information of membership related to the profile", "type": "array", "items": { "$ref": "#/definitions/profileMembershipType" } }, "links": { "$ref": "#/definitions/links" } } }, "profileCommissionAccountInfo": { "type": "object", "description": "Response object for fetching profile commission detail.", "properties": { "profileCommissionAccountInfoList": { "$ref": "#/definitions/profileCommissionAccountInfoListType" }, "links": { "$ref": "#/definitions/links" } } }, "profileCommissionAccount": { "type": "object", "description": "Request object for creating profile commission detail.", "properties": { "criteria": { "$ref": "#/definitions/profileCommissionAccountCriteriaType" }, "links": { "$ref": "#/definitions/links" } } }, "duplicateExternalSubscriptions": { "type": "object", "description": "Response object for fetching subscriptions where the same OPERA profile is linked to multiple external profiles within the same external system.", "properties": { "duplicateExternalSubscriptionsList": { "description": "A collection of subscriptions where the same OPERA profile is linked to multiple external profiles within the same external system.", "$ref": "#/definitions/duplicateExternalSubscriptionsListType" }, "totalPages": { "description": "Evaluated total page count based on the requested max fetch count.", "type": "integer" }, "pageNumber": { "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" }, "maxFetchCount": { "description": "Indicates maximum number of records a Web Service should return.", "type": "integer" }, "allRowsFetched": { "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" }, "totalRows": { "description": "Total number of rows queried", "type": "integer" }, "links": { "$ref": "#/definitions/links" } } }, "duplicateOPERASubscriptions": { "type": "object", "description": "Response object for fetching subscriptions where an external profile within a particular external system is linked to multiple OPERA profiles.", "properties": { "duplicateOPERASubscriptionsList": { "description": "A collection of subscriptions where an external profile within a particular external system is linked to multiple OPERA profiles.", "$ref": "#/definitions/duplicateOPERASubscriptionsListType" }, "totalPages": { "description": "Evaluated total page count based on the requested max fetch count.", "type": "integer" }, "pageNumber": { "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" }, "maxFetchCount": { "description": "Indicates maximum number of records a Web Service should return.", "type": "integer" }, "allRowsFetched": { "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" }, "totalRows": { "description": "Total number of rows queried", "type": "integer" }, "links": { "$ref": "#/definitions/links" } } }, "forgetProfilesCriteria": { "type": "object", "description": "Operation to validate profiles for forgetting.", "properties": { "validateForgetProfilesCriteria": { "description": "Criteria to identify the profiles to be validated for forgetting.", "$ref": "#/definitions/forgetProfilesCriteriaType" }, "links": { "$ref": "#/definitions/links" } } }, "eCertificates": { "type": "object", "description": "Response object for fetch ECertificates. This object contains collection of ECertificates,Success,Warnings and Errors related to this operation.", "properties": { "eCertificatesDetail": { "description": "E-Certificate assosiated with the profile.", "$ref": "#/definitions/eCertificatesType" }, "links": { "$ref": "#/definitions/links" } } }, "eCertificateGeneration": { "type": "object", "description": "Request object to issue E-Certificate.", "properties": { "eCertificateGenerationDetails": { "description": "Details to issue E-Certificate.", "$ref": "#/definitions/eCertificateGenerationDetailsType" }, "links": { "$ref": "#/definitions/links" } } }, "suspendedProfileMatchStats": { "type": "object", "description": "Response object for fetch suspended profile match statistics. This object contains collection of MatchCriteria,Threshold points,profile type.", "properties": { "suspendedProfileMatchStat": { "description": "Indicates response of the match statistics details.", "$ref": "#/definitions/suspendedProfileMatchStatsType" }, "links": { "$ref": "#/definitions/links" } } }, "profileDistributionFilters": { "type": "object", "description": "Response object for fetching Profile Distribution Filters.", "properties": { "profileDistributionFiltersDetail": { "description": "Profile Distribution Filters matching the search criteria.", "$ref": "#/definitions/profileDistributionFiltersType" }, "links": { "$ref": "#/definitions/links" } } }, "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": "#/definitions/profileStatisticsType" }, "links": { "$ref": "#/definitions/links" } } }, "fetchPlayerStatisticsRS": { "type": "object", "description": "Response of the WS operation to fetch player statistics.", "properties": { "playerStatistics": { "description": "The player statistics details for the given profile.", "$ref": "#/definitions/playerStatisticsType" }, "links": { "$ref": "#/definitions/links" } } }, "playerStatisticsType": { "type": "object", "description": "Contains Player Statistics information", "properties": { "enrollmentDate": { "type": "string", "maxLength": 2000 }, "compDollars": { "type": "string", "maxLength": 2000 }, "actualTableWins": { "type": "string", "maxLength": 2000 }, "actualOtherWins": { "type": "string", "maxLength": 2000 }, "tableTimePlayed": { "type": "string", "maxLength": 2000 }, "otherTimePlayed": { "type": "string", "maxLength": 2000 }, "averageSlotBet": { "type": "string", "maxLength": 2000 }, "skillRating": { "type": "string", "maxLength": 2000 }, "playerTableWins": { "type": "string", "maxLength": 2000 }, "playerOtherWins": { "type": "string", "maxLength": 2000 }, "theoriticalTableWins": { "type": "string", "maxLength": 2000 }, "theoriticalOtherWins": { "type": "string", "maxLength": 2000 }, "expectedProfit": { "type": "string", "maxLength": 2000 }, "grossMarkers": { "type": "string", "maxLength": 2000 }, "compPoints": { "type": "string", "maxLength": 2000 }, "totalComps": { "type": "string", "maxLength": 2000 }, "actualSlotWins": { "type": "string", "maxLength": 2000 }, "creditLimit": { "type": "string", "maxLength": 2000 }, "slotTimePlayed": { "type": "string", "maxLength": 2000 }, "avgTableBet": { "type": "string", "maxLength": 2000 }, "avgOtherBet": { "type": "string", "maxLength": 2000 }, "preferredGame": { "type": "string", "maxLength": 2000 }, "playerSlotWins": { "type": "string", "maxLength": 2000 }, "noOfRatings": { "type": "string", "maxLength": 2000 }, "theoSlotWins": { "type": "string", "maxLength": 2000 }, "theoProfit": { "type": "string", "maxLength": 2000 }, "bettingLimit": { "type": "string", "maxLength": 2000 }, "netMarkers": { "type": "string", "maxLength": 2000 }, "notes": { "type": "string", "maxLength": 2000 } } }, "gamingOffers": { "type": "object", "description": "Response object for fetching offers from external system.", "properties": { "gamingOffersInfo": { "description": "Type contains offers information.", "$ref": "#/definitions/gamingOffersType" }, "links": { "$ref": "#/definitions/links" } } }, "gamingOffersType": { "type": "array", "description": "Offers that are availabl to be attached", "maxItems": 4000, "items": { "$ref": "#/definitions/codeDescriptionType" } }, "iataNumberDetails": { "type": "object", "description": "Response object to fetch IATA Number validation for Travel Agency Profile.", "properties": { "checkIataNumberInfo": { "description": "Type contains profile enrollment information.", "$ref": "#/definitions/checkIataNumberType" }, "links": { "$ref": "#/definitions/links" }, "warnings": { "$ref": "#/definitions/warningsType" } } }, "checkIataNumberType": { "type": "object", "description": "Type provides the IATA Validation information.", "properties": { "code": { "description": "IATA Number.", "type": "string", "minLength": 0, "maxLength": 20 }, "lastRefreshDate": { "description": "Last Refresh Date.", "type": "string", "minLength": 0, "maxLength": 20 }, "reason": { "description": "Reason.", "type": "string", "minLength": 0, "maxLength": 40 }, "agencyName": { "description": "Agency Name.", "type": "string", "minLength": 0, "maxLength": 100 }, "approvalDate": { "description": "Approval Date.", "type": "string", "minLength": 0, "maxLength": 100 }, "agencyClass": { "description": "Agency Class.", "type": "string", "minLength": 0, "maxLength": 100 }, "siteType": { "description": "Site Type.", "type": "string", "minLength": 0, "maxLength": 100 }, "address": { "description": "Address.", "type": "string", "minLength": 0, "maxLength": 1000 }, "city": { "description": "City.", "type": "string", "minLength": 0, "maxLength": 100 }, "postalCode": { "description": "Postal Code.", "type": "string", "minLength": 0, "maxLength": 100 }, "state": { "description": "State.", "type": "string", "minLength": 0, "maxLength": 40 }, "country": { "description": "Country.", "type": "string", "minLength": 0, "maxLength": 40 }, "phoneNumber": { "description": "Phone Number.", "type": "string", "minLength": 0, "maxLength": 40 }, "message": { "description": "Message.", "type": "string", "minLength": 0, "maxLength": 100 } } }, "membershipNumber": { "type": "object", "description": "Request object for generating membership number.", "properties": { "generateMembershipNumberCriteria": { "description": "Generate Membership Number criteria.", "$ref": "#/definitions/generateMembershipNumberCriteriaType" }, "links": { "$ref": "#/definitions/links" }, "warnings": { "$ref": "#/definitions/warningsType" } } }, "generateMembershipNumberCriteriaType": { "type": "object", "description": "Auto generate membership number criteria.", "properties": { "membershipType": { "description": "Indicates the Membership Type where membership number to be generated will be based on.", "type": "string", "minLength": 0, "maxLength": 20 }, "hotelId": { "description": "External Hotel Id to generate membership number.", "type": "string", "minLength": 0, "maxLength": 20 } } }, "status": { "type": "object", "description": "Response Body.", "properties": { "warnings": { "$ref": "#/definitions/warningsType" }, "links": { "$ref": "#/definitions/links" } } }, "memberInformation": { "type": "object", "description": "Response object for member info.", "properties": { "memberInfo": { "$ref": "#/definitions/memberInfoRSType" }, "links": { "$ref": "#/definitions/links" }, "warnings": { "$ref": "#/definitions/warningsType" } } }, "memberInfoRSType": { "type": "object", "properties": { "memberInfoDetails": { "description": "Points and stay details of the membership.", "$ref": "#/definitions/memberInfoDetailsType" }, "memberInfoRangeDetails": { "description": "Points and stay details for the membership range.", "$ref": "#/definitions/memberInfoDetailsType" }, "nextTierPoints": { "description": "Points required for next tier of membership.", "type": "integer" }, "pointsAvailable": { "description": "Points available for the member.", "type": "integer" } } }, "memberInfoDetailsType": { "type": "object", "properties": { "guestTotalNights": { "description": "Total nights of the guest.", "type": "integer" }, "guestTotalStay": { "description": "STotal stays of the guest.", "type": "integer" }, "tierBaseNights": { "description": "Tier Base Nights Points.", "type": "integer" }, "tierBaseRevenue": { "description": "Tier Base Revenue Points.", "type": "number" }, "tierBaseStay": { "description": "Tier Base Stay Points.", "type": "integer" }, "tierBonusNights": { "description": "Tier Bonus Nights Points.", "type": "integer" }, "tierBonusRevenue": { "description": "Tier Bonus Revenue Points.", "type": "number" }, "tierBonusStay": { "description": "Tier Bonus Stay Points.", "type": "integer" }, "membershipTotalNights": { "description": "Total Nights of the membership.", "type": "integer" }, "membershipTotalStay": { "description": "Total Stay of the membership.", "type": "integer" }, "awardBasePoints": { "description": "Total base points of the award.", "type": "integer" }, "awardBonusPoints": { "description": "Total bonus points of the award.", "type": "integer" }, "awardMiscPoints": { "description": "Total miscellaneous points of the award.", "type": "integer" }, "totalAwardPoints": { "description": "Total points of the award.", "type": "integer" } } }, "warningsType": { "type": "array", "description": "Used in conjunction with the Success element to define a business error.", "maxItems": 4000, "items": { "$ref": "#/definitions/warningType" } }, "warningType": { "type": "object", "description": "Used when a message has been successfully processed to report any warnings or business errors that occurred.", "properties": { "value": { "type": "string", "description": "Property Value" }, "shortText": { "description": "An abbreviated version of the error in textual format.", "type": "string", "maxLength": 2000 }, "code": { "description": "If present, this refers to a table of coded values exchanged between applications to identify errors or warnings.", "type": "string", "minLength": 0, "maxLength": 20 }, "docURL": { "description": "If present, this URL refers to an online description of the error that occurred.", "type": "string", "maxLength": 2000 }, "status": { "description": "If present, recommended values are those enumerated in the ErrorRS, (NotProcessed Incomplete Complete Unknown) however, the data type is designated as string data, recognizing that trading partners may identify additional status conditions not included in the enumeration.", "type": "string", "maxLength": 2000 }, "tag": { "description": "If present, this attribute may identify an unknown or misspelled tag that caused an error in processing. It is recommended that the Tag attribute use XPath notation to identify the location of a tag in the event that more than one tag of the same name is present in the document. Alternatively, the tag name alone can be used to identify missing data [Type=ReqFieldMissing].", "type": "string", "maxLength": 2000 }, "recordId": { "description": "If present, this attribute allows for batch processing and the identification of the record that failed amongst a group of records. This value may contain a concatenation of a unique failed transaction ID with specific record(s) associated with that transaction.", "type": "string", "maxLength": 2000 }, "type": { "description": "The Warning element MUST contain the Type attribute that uses a recommended set of values to indicate the warning type. The validating XSD can expect to accept values that it has NOT been explicitly coded for and process them by using Type =\"Unknown\".", "type": "string", "minLength": 0, "maxLength": 20 }, "language": { "description": "Language identification.", "type": "string", "pattern": "[a-zA-Z]{1,8}(-[a-zA-Z0-9]{1,8})*" }, "rph": { "description": "Reference Place Holder used as an index for this warning.", "type": "string", "minLength": 1, "maxLength": 8 } } }, "addressValidationsType": { "type": "array", "description": "A collection of validated Addresses.", "maxItems": 4000, "items": { "$ref": "#/definitions/addressValidationInfoType" } }, "addressValidationInfoType": { "type": "object", "properties": { "addressText": { "description": "The suggestion that should be presented to the user as a possible match to their input.", "type": "string", "minLength": 0, "maxLength": 2000 }, "externalAddressId": { "description": "The ID of the address recieved as part of an address search validation.", "type": "string", "minLength": 0, "maxLength": 2000 }, "addressType": { "description": "If the Type is 'Address' then the Id can be passed to the Retrieve service. Any other Id should be passed as the Container to a further Find request to get more results.", "type": "string", "minLength": 0, "maxLength": 20 } } }, "validateMembershipNumber": { "type": "object", "description": "Response object for fetching offers from external system.", "properties": { "links": { "$ref": "#/definitions/links" }, "warnings": { "$ref": "#/definitions/warningsType" } } }, "validatedAddresses": { "type": "object", "description": "Response object for fetching Addresses from external system.", "properties": { "addressValidationsInfo": { "description": "Type contains Address information.", "$ref": "#/definitions/addressValidationsType" }, "links": { "$ref": "#/definitions/links" }, "warnings": { "$ref": "#/definitions/warningsType" } } }, "validatedAddress": { "type": "object", "description": "Response object for fetching full address based on ID from external system.", "properties": { "addressValidationInfo": { "description": "Type contains Address information.", "$ref": "#/definitions/addressType" }, "links": { "$ref": "#/definitions/links" }, "warnings": { "$ref": "#/definitions/warningsType" } } } }, "tags": [ { "name": "Profile", "description": "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." }, { "name": "ProfileExternal", "description": "The Profile External module allows you to retrieve and manage profiles from an external system." }, { "name": "ProfileMembership", "description": "This will allow you to create a guest profile enrollment in OPERA Cloud. Enrollment relates to a membership program, so as an example you can enrol the guest Mr Tom Smith into a Membership / loyalty program." } ], "externalDocs": { "description": "Find out more about Oracle Hospitality", "url": "https://docs.oracle.com/en/industries/hospitality/integration_platforms.html" } }