diff --git a/src/api-explorer/v4-0/HotelService.swagger2.json b/src/api-explorer/v4-0/HotelService.swagger2.json index 3c8b0beb5e..77bbb06aa2 100644 --- a/src/api-explorer/v4-0/HotelService.swagger2.json +++ b/src/api-explorer/v4-0/HotelService.swagger2.json @@ -2019,7 +2019,10 @@ "BOOKED_PREVIOUSLY_BY_OTHER_EMPLOYEES", "PERSONA_BASED_RECOMMENDATION", "LOYALTY_MEMBER", - "CLOSEST_TO_COMPANY_LOCATION" + "CLOSEST_TO_COMPANY_LOCATION", + "MOST_BOOKED_HOTEL", + "MOST_BOOKED_BY_YOUR_COMPANY", + "SIMILAR_HOTEL_TYPE_AND_LOCATION_TO_THE_MOST_BOOKED_PROPERTY" ], "example": "MOST_BOOKED_BY_COMPANY", "type": "string" diff --git a/src/api-reference/direct-connects/hotel-service-4/v4.schemas-new.markdown b/src/api-reference/direct-connects/hotel-service-4/v4.schemas-new.markdown new file mode 100644 index 0000000000..b52c6a762a --- /dev/null +++ b/src/api-reference/direct-connects/hotel-service-4/v4.schemas-new.markdown @@ -0,0 +1,909 @@ +--- +title: Direct Connect - Hotel Service v4 - Schemas +layout: reference +--- + +# Direct Connect - Hotel Service v4 - Schemas + +## SearchCriteria + +Search by either location or exact property reference, if available. + +|Name|Type|Format|Description| +|---|---|---|---| +`requestorInfo`|[`RequestorInfo`](#schemarequestorinfo)|-|**Required** Information about Point of Sale (POS), traveler, and user associated with this request.| +`numGuests`|`integer`|`int32`|Number of guests for accommodation as entered by traveler.| +`guestCountryCode`|`string`|`ISO ALPHA-2`|Two-character ISO code for country.| +`locationSearch`|[`LocationSearch`](#schemalocationsearch)|-|Reference to location details for search.| +`hotelPropertyRefs`|[`HotelPropertyRef`](#schemahotelpropertyref)|-|**Deprecated** - Reference IDs to hotel properties, if available. When provided, `locationSearch` will not be used and may not be set.| +`checkin`|`string`|`date`|**Required** Check in date as entered by traveler.| +`checkout`|`string`|`date`|**Required** Check out date as entered by traveler.| +`customFields`|[`CustomField`](#schemacustomfield)|-|Custom fields that are supported by vendor. Example: `CostCenter`| +`includeDepositRequired`|`boolean`|`true` \ `false`|**Required** If `true`, properties where deposits are required are displayed.| +`rateCategories`|[`RateCategory`](#schemaratecategory)|-|Special rate categories requested, if applicable.| +`maxSearchResults`|`integer`|-|Maximum number of properties allowed to be included in search results.| +`accessViaMobile`|`boolean`|`true` \ `false`| Indicates if the request is coming from mobile device.| + +## LocationSearch + +Reference to location details for search. + +|Name|Type|Format|Description| +|---|---|---|---| +`location`|[`Location`](#schemalocation)|-|**Required** Defines geographic location for search.| +`radius`|[`Radius`](#schemaradius)|-|**Required** Radius to restrict the search for hotels.| +`maxRadius`|[`Radius`](#schemaradius)|-|**Required** Allows extended search radius for preferred hotel properties and can be more than radius defined by traveler.| + +## RatesCriteria + +|Name|Type|Format|Description| +|---|---|---|---| +`requestorInfo`|[`RequestorInfo`](#schemarequestorinfo)|-|**Required** Information about POS (Point Of Sale), traveler, and user associated with this request.| +`hotelPropertyRefs`|[`HotelPropertyRef`](#schemahotelpropertyref)|-|**Required** Reference IDs for hotel properties where the rate is requested.| +`checkin`|`string`|`date`|**Required** Check in date as entered by traveler.| +`checkout`|`string`|`date`|**Required** Check out date as entered by traveler.| +`rateCategories`|[`RateCategory`](#schemaratecategory)|-|Special rate categories requested, if applicable.| +`numGuests`|`integer`|`int32`|Number of guests for accommodation.| +`guestCountryCode`|`string`|`ISO ALPHA-2`|Two-character ISO code for country.| +`searchSessionToken`|[`SearchSessionToken`](#schemasearchsessiontoken)|-|Session token to be generated and provided by server on initial search call that can be referenced back for future calls on the same session.| +`accessViaMobile`|`boolean`|`true` \ `false`| Indicates if the request is coming from mobile device.| + +## RateDetailsCriteria + +|Name|Type|Format|Description| +|---|---|---|---| +`requestorInfo`|[`RequestorInfo`](#schemarequestorinfo)|-|**Required** Information about POS (Point Of Sale), traveler, and user associated with this request.| +`hotelPropertyRefs`|[`HotelPropertyRef`](#schemahotelpropertyref)|-|**Required** Reference IDs for hotel properties where the rate is requested.| +`ratePlanIds`|`string`|-|**Required** Rate product IDs for which detail rates are requested.| +`checkin`|`string`|`date`|**Required** Check in date as entered by traveler.| +`checkout`|`string`|`date`|**Required** Check out date as entered by traveler.| +`rateCategories`|[`RateCategory`](#schemaratecategory)|-|Special rate categories requested, if applicable| +`numGuests`|`integer`|`int32`|Number of guests for accommodation.| +`guestCountryCode`|`string`|`ISO ALPHA-2`|Two-character ISO code for country.| +`searchSessionToken`|[`SearchSessionToken`](#schemasearchsessiontoken)|-|Session token to be generated and provided by server on initial search call that can be referenced back for future calls on the same session.| +`reshopInfo`|[`ReshopInfo`](#schemareshopinfo)|-|Information related to reshopping, only available during modify (and not shopping) flow| +`accessViaMobile`|`boolean`|`true` \ `false`| Indicates if the request is coming from mobile device.| + +## HotelDetailsCriteria + +|Name|Type|Format|Description| +|---|---|---|---| +`requestorInfo`|[`RequestorInfo`](#schemarequestorinfo)|-|**Required** Information about POS (Point Of Sale), traveler, and user associated with this request.| +`hotelCodes`|[`HotelPropertyRef`](#schemahotelpropertyref)|-|**Required** Reference IDs for hotel properties where the rate is requested.| +`searchSessionToken`|[`SearchSessionToken`](#schemasearchsessiontoken)|-|Session token to be generated and provided by server on initial search call that can be referenced back for future calls on the same session.| + +## CustomField + +Vendor supported custom field. + +|Name|Type|Format|Description| +|---|---|---|---| +`name`|`string`|-|**Required** Name of the custom field.| +`value`|`string`|-|**Required** Value of the custom field.| + +**Note: `SinglePnrEnabled` in `customFields`** + +The `SinglePnrEnabled` field reflects the Single PNR configuration for the supplier: +- If `SinglePnrEnabled` configuration exists in connector settings on the Travel Config page and is enabled, the value in `customFields` will be `"true"`. +- If `SinglePnrEnabled` configuration exists in connector settings on the Travel Config page but not enabled, the value in `customFields` will be `"false"`. +- If `SinglePnrEnabled` configuration doesn't exist in connector settings on the Travel Config page, it will not appear in `customFields`. + +> **Important:** If this is the first time the connector is being configured for a company in Company Travel Configuration, you must save or change the value of the field for it to be reflected in `customFields`. + +## HotelPropertyRef + +Reference to hotel property using provider specific property code. + +|Name|Type|Format|Description| +|---|---|---|---| +`chainCode`|`string`|-|Chain code associated with hotel, if available.| +`propertyCode`|`string`|-|**Required** Provider's property code as given in search response.| + +## HotelProperty + +Hotel property object returned by hotel search. + +|Name|Type|Format|Description| +|---|---|---|---| +`propertyCode`|[`PropertyCode`](#schemapropertycode)|-|**Required** | +`altPropertyCode`|`object`|-|Alternate property code.| +» `catalogCode`|[`PropertyCode`](#schemapropertycode)|-|**Required** Catalog code of property.| +» `catalogName`|[`CatalogName`](#schemacatalogname)|-|**Required** `NORTHSTAR`, `GIATA`, and `GDS` (`SABRE`, `AMADEUS`, `GALILEO`) are preferred. Supported values: `NORTHSTAR`, `GIATA`, `LEONARDO`, `AMADEUS`, `SABRE`, `GALILEO`, `CWT`, `EXPEDIA`, `HRS`, `BOOKING.COM`, `OMNIBEES`| +`chainCode`|`string`|-|Chain code associated with hotel, if available.| +`superChainCode`|`string`|-|Super chain code for property.| +`hotelName`|`string`|-|**Required** Name of hotel.| +`contactInfo`|[`ContactInfo`](#schemacontactinfo)|-|**Required** Contact information for property.| +`position`|[`Geolocation`](#schemageolocation)|-|Geolocation of property.| +`address`|[`Address`](#schemaaddress)|-|**Required** Address of property.| +`leadRate`|[`LeadRate`](#schemaleadrate)|-|**Required** The lowest nightly rate averaged over the stay. Not required if `availabilityStatus` is `CLOSED_OUT` or `UNKNOWN`.| +`totalPrice`|[`TotalPriceHotel`](#schematotalpricehotel)|-|Details about the total pricing associated with stay. +`onRequest`|`boolean`|`true` / `false`|Indicates that the hotel can only be confirmed on request.| +`availabilityStatus`|[`AvailabilityStatus`](#schemaavailabilitystatus)|-|**Required** Supported values: `AVAILABLE_FOR_SALE`, `CLOSED_OUT`, `UNKNOWN` | +`preferenceRank`|[`PreferenceRank`](#schemapreferencerank)|-|Supported values: `PREFERRED`, `MORE_PREFERRED`, `MOST_PREFERRED`. This value will override any preferences set by company admins.| +`preferenceLevel`|[`preferenceLevel`](#schemapreferencelevel)|-|Supported values: `CHAIN`, `PROPERTY`. Note that value can be set to `CHAIN` for hotels preferred at both chain or superchain level and this is what is displayed to user as UI as `Preferred Chain`.| +`amenities`|[`HotelAmenity`](#schemahotelamenity)|-|**Required** Hotel amenity containing code as described in OTA code list Hotel Amenity Code (HAC).| +`leadImageURI`|`string`|`URI`| **Required** Contains an HTTPS URL pointing to a .png or .jpg hotel image file. The image will be used as a thumbnail and should be limited to 70x70 pixels to prevent image artifacts by scaling.| +`rating`|[`HotelRating`](#schemahotelrating)|-|Hotel rating details along with source.| +`sustainabilityAwards`|[`SustainabilityAward`](#schemasustainabilityaward)|-|Award/Certification related to sustainability awarded to the hotel.| +`emissionInfo`|[`EmissionInfo`](#schemasustainabilityaward)|-|Hotel Sustainability Index information.| +`exactMatch`|`boolean`|`true` / `false`|Flag if true indicates that this hotel is an exact match for what was asked in search request.| +`safetyScore`|[`SafetyScore`](#schemasafetyscore)|-|Hotel Safety Score information.| +`acceptedPayments`|[`AcceptedPayments`](#schemaacceptedpayments)|-|Supported values: `AMERICAN_AIRLINES`, `ALASKA_BARTER`, `AMEX`, `AWARD_CREDIT`, `CANADIAN`, `CARTE_BLANCHE`, `CHINA_UNION_PAY`, `CONFERMA`, `DELTA`, `DINERS_CLUB`, `DISCOVER`, `ENROUTE`, `EURO_CARD`, `JCB`, `MC`, `NORTHWEST`, `TWA`, `UATP`, `UNITED_TRAVEL`, `UNITED_CREDIT`, `VENDOR_PROVIDED`,`VISA`| +`propertyTypeCode`|`integer`|-|Code identifying the type of property (hotel, apartment, etc.) using OTA Property Class Type (PCT)| +`recommendationReasons`|`Array of recommendationReasons`|-|Optional array of enum values indicating why this hotel is recommended. Hotel connectors can populate this field with up to three values representing the reasons why a specific property is recommended. These values can be applied to a maximum of three properties. Supported values: `MOST_BOOKED_BY_TRAVELER`, `MOST_BOOKED_BY_COMPANY`, `MOST_BOOKED_OVERALL`, `EQUIVALENT_PROPERTY`, `BOOKED_PREVIOUSLY_BY_TRAVELER`, `BOOKED_PREVIOUSLY_BY_OTHER_EMPLOYEES`, `PERSONA_BASED_RECOMMENDATION`, `LOYALTY_MEMBER`, `CLOSEST_TO_COMPANY_LOCATION`, `MOST_BOOKED_HOTEL`, `MOST_BOOKED_BY_YOUR_COMPANY`, `SIMILAR_HOTEL_TYPE_AND_LOCATION_TO_THE_MOST_BOOKED_PROPERTY`| + +## HotelRating + +Hotel rating details along with source. If source is not one of the supported values, it is possible to use `OTHER` as `source` and provide it's name in additional `name` attribute. + +|Name|Type|Format|Description| +|---|---|---|---| +`value`|`integer`|-|**Required** Hotel rating value should be an integer number from `1` to `5`, representing the star rating.| +`source`|`string`|-|**Required** Source of rating. Supported values: `NORTHSTAR`, `AAA_DIAMONDS`, `HOTELSTAR`, `STAR_RATING_AUSTRALIA`,`HRS_STAR_RATING`,`OTHER`| +`name`|`string`|-| Name of the rating provider in case when above `source` is set as `OTHER`.| + +## BasicHotelProperty + +|Name|Type|Format|Description| +|---|---|---|---| +`propertyCode`|[`PropertyCode`](#schemapropertycode)|-|**Required**| +`chainCode`|`string`|-|Chain code associated with hotel, if available.| +`hotelName`|`string`|-|**Required** Name of hotel.| +`contactInfo`|[`ContactInfo`](#schemacontactinfo)|-|**Required** Contact information for property.| +`position`|[`Geolocation`](#schemageolocation)|-|Geolocation property.| +`address`|[`Address`](#schemaaddress)|-|Address of property.| +`cityCode`|`string`|`IATA 3-character city code`|**Required for adding passing segments** City code for the property.| + +## HotelMedia + +|Name|Type|Format|Description| +|---|---|---|---| +`url`|`string`|`uri`|**Required** URL of hotel property.| +`category`|`integer`|`int32`|OTA code describing the image as defined in OTA Picture Category Code (PIC) list.| +`description`|`string`|-|Description of the hotel media.| +`type`|[`MediaType`](#schemamediatype)|-|**Required** Type of media. Supported values: `IMAGE`| + +## Location + +Defines geolocation for search. + +|Name|Type|Format|Description| +|---|---|---|---| +`geoLocation`|[`Geolocation`](#schemageolocation)|-|**Required** Geolocation of property.| +`locationType`|[`LocationType`](#schemalocationtype)|-|**Required** Type of location associated with this search. Supported values: `COMPANY_LOCATION`, `HOTEL`, `ADDRESS`, `PLACE`, `AIRPORT`| +`name`|`string`|-|**Required**| +`address`|[`Address`](#schemaaddress)|-|| +`iataCode`|`string`|-|IATA code of airport, if location type searched is `AIRPORT`.| +`giataCode`|`string`|-|GIATA code of hotel catalog if location type searched is `HOTEL`.| + +## Geolocation + +|Name|Type|Format|Description| +|---|---|---|---| +`latitude`|`number`|-|**Required**| +`longitude`|`number`|-|**Required**| + +## Address + +|Name|Type|Format|Description| +|---|---|---|---| +`addressLines`|`string`|-|**Required** Street address lines.| +`city`|`string`|-|**Required** City name.| +`state`|`string`|-|**Deprecated - Use `stateName` instead** 2-character state code - will continue to be supported when state code is available.| +`stateName`|`string`|-|Name or code of the state, province or administrative region.| +`countryCode`|`string`|`ISO ALPHA-2`|**Required** ISO code for country.| +`postalCode`|`string`|-|Postal or zip code of the property.| + +## HotelRates + +|Name|Type|Format|Description| +|---|---|---|---| +`propertyCode`|[`PropertyCode`](#schemapropertycode)|-|**Required** Property code of the hotel.| +`rates`|[`HotelRate`](#schemahotelrate)|-|**Required** Applicable rates for the property.| + +## HotelRate + +|Name|Type|Format|Description +|---|---|---|---| +`bedding`|[`Bedding`](#schemabedding)|-|Details about bedding associated with the room.| +`mealsIncluded`|`integer`|-|Code based on [OTA Meal Plan Type (MPT)](./v4.supported-ota-codes.html#meal-plans).| +`roomDescription`|`string`|-| Room description information.| +`roomAmenities`|[`RoomAmenity`](#schemaroomamenity)|-|Room amenity containing code as described in OTA code list Room Amenity Type (RMA).| +`roomType`|`integer`|`int32`|[OTA code of GRI (Guest Room Info)](./v4.supported-ota-codes.html#room-type-gri-codes) type providing guest room type details.| +`roomRate`|[`RoomRate`](#schemaroomrate)|-|**Required**| +`source`|`object`|-|Details about the source attributed to this rate. **NOTE:** `name` must also be provided along with `logo`. `logo` - if provided is displayed as source while name is used as title/label. Nothing is displayed as `source` if `suppress` is `true`.| +» `name`|`string`|-| Name of the supplier for the source that can be shown in user interface.| +» `logo`|`string`|`uri`| URI to logo image of the supplier for the source that can be shown in user interface. Size should be at-least 84x16.| +» `suppress`|`boolean`|`true` / `false`| If `true`, all source attributions for this rate will be suppressed.| + +## RateCategory + +|Name|Type|Format|Description| +|---|---|---|---| +`otaCode`|`integer`|`int32`|**Required** Code based on [OTA Rate Plan Type (RPT)](./v4.supported-ota-codes.html#rate-plans).| +`value`|`string`|-|The given rate plan type code.| + +## TotalPrice + +Details about the total pricing associated with stay. + +|Name|Type|Format|Description| +|---|---|---|---| +`totalBeforeTax`|`number`|-|**Required** Total price before tax.| +`taxes`|`number`|-|Additional taxes to be added to rate.| +`taxesBreakdown`|[`FeeTaxType`](#schemafeetaxtype)|-|Tax breakdown by FTT Code associated with rate. Can be either included or excluded from total rate as marked with `inclusive` field.| +`fees`|`number`|-|Additional fees to be added to rate.| +`feesBreakdown`|[`FeeTaxType`](#schemafeetaxtype)|-|Fee breakdown by FTT Code associated with rate. Can be either included or excluded from total rate as marked with `inclusive` field.| +`totalAfterTax`|`number`|-|Total price after tax is included.| +`currencyCode`|[`CurrencyCode`](#schemacurrencycode)|`ISO 4217`|**Required** Currency code.| +`isTotalBeforeTaxDisplayEligible`|`boolean`|`true` / `false`|Controls what value is shown on property details page for rates. Displays `totalBeforeTax` if set to true otherwise display `totalAftertax`. Note that `totalAfterTax` will be required if this is set false.| + +## Price + +|Name|Type|Format|Description| +|---|---|---|---| +`amount`|`number`|-|**Required**| +`currencyCode`|[`CurrencyCode`](#schemacurrencycode)|`ISO 4217`|**Required** Currency code.| + +## RoomRate + +|Name|Type|Format|Description| +|---|---|---|---| +`rateDescription`|`string`|-|Description of the rate.| +`rateCategory`|[`RateCategory`](#schemaratecategory)|-|| +`rateCustomText`|`string`|-|Informational text for rate.| +`rateChangesOverStay`|`boolean`|`true` / `false`|**Required**| +`loyaltyMembershipRequired`|`boolean`|`true` / `false`|Indicates if a loyalty card/program is required to book this rate.| +`roomId`|`string`|-|| +`ratePlanId`|`string`|-|**Required**| +`guarantee`|`object`|-|Required to be part of `rate` call for applying travel policies.| +» `guaranteeType`|[`GuaranteeType`](#schemaguaranteetype)|-|**Required** Supported values: `DEPOSIT_REQUIRED`, `GUARANTEE_REQUIRED`, `NONE`| +» `acceptedPayments`|[`AcceptedPayments`](#schemaacceptedpayments)|-|Supported values: `AMERICAN_AIRLINES`, `ALASKA_BARTER`, `AMEX`, `AWARD_CREDIT`, `CANADIAN`, `CARTE_BLANCHE`, `CHINA_UNION_PAY`, `CONFERMA`, `DELTA`, `DINERS_CLUB`, `DISCOVER`, `ENROUTE`, `EURO_CARD`, `JCB`, `MC`, `NORTHWEST`, `TWA`, `UATP`, `UNITED_TRAVEL`, `UNITED_CREDIT`, `VENDOR_PROVIDED`,`VISA`| +» `cvvRequired`|`boolean`|`true` / `false`|| +» `amountPercent`|[`AmountPercent`](#schemaamountpercent)|-|| +`prepayRequired`|`boolean`|`true` / `false`|If `true`, prepayment is required for booking this rate.| +`refundable`|`boolean`|`true` / `false`|If `true`, this rate is refundable (based on all cancel penalties).| +`totalPrice`|[`TotalPrice`](#schematotalprice)|-|**Required** Details about total pricing associated with the stay.| +`nightlyPrices`|[`NightlyPrice`](#schemanightlyprice)|-|Details about nightly price for a given date range.| +`cancelPenalties`|[`CancelPenalties`](#schemacancelpenalties)|-|Information about cancellation penalties.| +`highlightedRateText`|`string`|-|Informational text for highlighted rate| +`rateDetailsCallRequired`|`boolean`|`true` / `false`|If `true`, this rate requires a call to [`RateDetails`](#rate-details-) before being booked. Default: false| + +## RoomRateDetails + +|Name|Type|Format|Description| +|---|---|---|---| +`rateDescription`|`string`|-|Description of the rate.| +`rateCategory`|[`RateCategory`](#schemaratecategory)|-|| +`rateChangesOverStay`|`boolean`|`true` / `false`|**Required**| +`roomId`|`string`|-|| +`ratePlanId`|`string`|-|**Required**| +`guarantee`|`object`|-|**Required**| +» `guaranteeType`|[`GuaranteeType`](#schemaguaranteetype)|-|**Required** Supported values: `DEPOSIT_REQUIRED`, `GUARANTEE_REQUIRED`, `NONE`| +» `acceptedPayments`|[`AcceptedPayments`](#schemaacceptedpayments)|-|Supported values: `AMERICAN_AIRLINES`, `ALASKA_BARTER`, `AMEX`, `AWARD_CREDIT`, `CANADIAN`, `CARTE_BLANCHE`, `CHINA_UNION_PAY`, `CONFERMA`, `DELTA`, `DINERS_CLUB`, `DISCOVER`, `ENROUTE`, `EURO_CARD`, `JCB`, `MC`, `NORTHWEST`, `TWA`, `UATP`, `UNITED_TRAVEL`, `UNITED_CREDIT`, `VENDOR_PROVIDED`, `VISA`| +» `cvvRequired`|`boolean`|`true` / `false`|| +» `amountPercent`|[`AmountPercent`](#schemaamountpercent)|-|| +`prepayRequired`|`boolean`|`true` / `false`|If `true`, prepayment is required for booking this rate.| +`refundable`|`boolean`|`true` / `false`|If `true`, this rate is refundable (based on all cancel penalties).| +`totalPrice`|[`TotalPrice`](#schematotalprice)|-|**Required** Details about total pricing associated with the stay.| +`nightlyPrices`|[`NightlyPrice`](#schemanightlyprice)|-| Details about nightly price for a given date range.| +`cancelPenalties`|[`CancelPenalties`](#schemacancelpenalties)|-|**Required** Information about cancellation penalties.| + +## CancelPenalties + +|Name|Type|Format|Description| +|---|---|---|---| +`description`|`string`|-|Common description applicable to all the penalties.| +`penalties`|[`CancelPenalty`](#schemacancelpenalty)|-|**Required** Cancellation penalties associated with rate. Should be empty array for non-refundable rate.| + +## NightlyPrice + +Details about nightly price for a given date range. + +|Name|Type|Format|Description| +|---|---|---|---| +`basePrice`|`number`|-|**Required** | +`taxes`|[`Taxes`](#schemataxes)|-| Representation of nightly tax amount associated with a rate along with optional breakdown.| +`fees`|[`Fees`](#schemafees)|-| Representation of nightly fees associated with a rate for given dates along with optional breakdown.| +`totalPrice`|`number`|-| Total price including taxes and fees per night.| +`startDate`|`string`|`date`|**Required** | +`endDate`|`string`|`date`|**Required** | +`currencyCode`|[`CurrencyCode`](#schemacurrencycode)|`ISO 4217`|**Required** Currency code.| + +## CancelPenalty + +|Name|Type|Format|Description| +|---|---|---|---| +`cancelDeadline`|`string`|`YYYY-MM-DDThh:mm:ssZhh:mm` or `YYYY-MM-DDThh:mm:ss` or `YYYY-MM-DD hh:mm:ss`| Date string in date-time notation as defined by RFC 3339 with time representing local time at property and corresponding timezone. Timezone can be skipped if not available and just provide date-time in local time. | +`description`|`string`|-|-| +`refundableStatus`|[`RefundableStatus`](#schemarefundablestatus)|-|**Required** Supported values: `UNKNOWN`, `FULLY_REFUNDABLE`, `PARTIALLY_REFUNDABLE`, `NON_REFUNDABLE` (previously `NON-REFUNDABLE` - which will be supported as well).| +`amountPercent`|[`AmountPercent`](#schemaamountpercent)|-|| + +## AmountPercent + +|Name|Type|Format|Description| +|---|---|---|---| +`taxInclusive`|`boolean`|`true` / `false`|If `true`, all taxes are included in the returned rate.| +`feesInclusive`|`boolean`|`true` / `false`|If `true`, all fees are included in the returned rate.| +`numberOfNights`|`integer`|-|The number of nights that are to be spent on the property.| +`basisType`|[`AmountPercentBasisType`](#schemaamountpercentbasistype)|-|Supported values: `FULL_STAY`, `NIGHTS`, `FIRST_LAST`| +`applyAs`|[`AmountPercentApplyAs`](#schemaamountpercentapplyas)|-|Supported values: `FIRST_NIGHT_DEPOSIT`, `LAST_NIGHT_DEPOSIT`, `FIRST_AND_LAST_NIGHT_DEPOSIT`| +`percent`|`number`|-|The percentage used to calculate the amount of the cancellation fee.| +`amount`|[`Price`](#schemaprice)|-|| + +## RequestorInfo + +Information about Point of Sale (POS), traveler, and user associated with the request. + +|Name|Type|Format|Description| +|---|---|---|---| +`posRequestorId`|`string`|-|**Required** The identifier of the entity making the request (e.g. ATA/IATA/ID number).| +`travelerUuid`|`string`|-|**Required** UUID that identifies the traveler within SAP Concur systems.| +`loginId`|`string`|-|Login ID of traveler within SAP Concur systems, if available.| +`bookingForSelf`|`boolean`|`true` / `false`|If `true`, the person logged in is making a booking for themselves.| +`gdsName`|`string`|-|Name of the GDS (Global Distribution System) to be used for this booking (active or passive segment). Supported values: `SABRE`, `AMADEUS`, `TRAVELPORT`| +`pcc`|`string`|-|Pseudo City Code or Office ID (OID) for the GDS account to be used for this booking (active or passive segment).| + +## Arranger + +Information about the travel arranger who made the reservation on behalf of the traveler. + +|Name|Type|Format|Description| +|---|---|---|---| +`firstname`|`string`|-|**Optional** First name of the travel arranger.| +`lastname`|`string`|-|**Optional** Last name of the travel arranger.| +`contactInfo`|[`ContactInfo`](#schemacontactinfo)|-|**Optional** Contact information.| + +## Radius + +|Name|Type|Format|Description| +|---|---|---|---| +`value`|`integer`|`int32`|**Required**| +`unit`|[`DistanceUnit`](#schemadistanceunit)|-|**Required** Unit of distance. Supported values: `MILE`, `KM`| + +## HotelDetails + +|Name|Type|Format|Description| +|---|---|---|---| +`propertyRef`|[`HotelPropertyRef`](#schemahotelpropertyref)|-|**Required** Reference to hotel property using provider specific property code.| +`hotelDescriptiveInfo`|`object`|-|| +» `propertyDescription`|`string`|-|**Required**| +» `descriptiveInfos`|[`HotelDescriptiveInfo`](#schemahoteldescriptiveinfo)|-|**Required**| +`mediaItems`|[`HotelMedia`](#schemahotelmedia)|-|**Required** Hotel media items.| +`checkInTime`|`string`|`HH:MM`|Check-in time in HH:MM 24 hour format eg. 11:00.| +`checkOutTime`|`string`|`HH:MM`|Check-out time in HH:MM 24 hour format eg. 16:00.| + +## HotelDescriptiveInfo + +|Name|Type|Format| Description| +|---|---|---|---| +`otaCode`|`integer`|`int32`| **Required** Code based on [OTA Additional Detail Type (ADT)](./v4.supported-ota-codes.html#additional-details).| +`contents`|`string`|-| **Required**| +`startDate`|`string`|`date`|Start date for descriptive info, if applicable. Only for specific dates (e.g. for alerts or special events).| +`endDate`|`string`|`date`| End date for descriptive info, if applicable. Only for specific dates (e.g. for alerts or special events).| + +## ReservationCriteria + +|Name|Type|Format|Description| +|---|---|---|---| +`bookingUuid`|`string`|-|**Required** UUID that identifies the booking within the SAP Concur system.| +`hotelPropertyRef`|[`HotelPropertyRef`](#schemahotelpropertyref)|-|**Required** Reference to hotel property using provider specific property code.| +`arranger`|[`Arranger`](#schemaarranger)|-| Information about the travel arranger who made the reservation on behalf of the traveler.| +`requestorInfo`|[`RequestorInfo`](#schemarequestorinfo)|-|**Required** Information about POS, traveler, and user associated with this request.| +`ratePlanId`|`string`|-|**Required**| +`guests`|[`Guest`](#schemaguest)|-|**Required** Number of guests the reservation is for.| +`paymentModeIndicator`|[`PaymentModeIndicator`](#schemapaymentmodeindicator)|-|Supported values: `PERSONAL_CARD`, `CORPORATE_CARD`, `CONCUR_VIRTUAL_CARD`, `VENDOR_VIRTUAL_CARD`| +`guarantee`|`object`|-|| +» `cardType`|[`PaymentCardType`](#schemapaymentcardtype)|-|**Required** Supported values: `AMERICAN_AIRLINES`, `ALASKA_BARTER`, `AMEX`, `AWARD_CREDIT`, `CANADIAN`, `CARTE_BLANCHE`, `CHINA_UNION_PAY`, `CONFERMA`, `DELTA`, `DINERS_CLUB`, `DISCOVER`, `ENROUTE`, `EURO_CARD`, `JCB`, `MC`, `NORTHWEST`, `TWA`, `UATP`, `UNITED_TRAVEL`, `UNITED_CREDIT`, `VISA`| +» `cardNumber`|`string`|-|**Required**| +» `cardExpiryMonth`|`integer`|-|Expiration month for payment card.| +» `cardExpiryYear`|`integer`|-|4 digit expiration year for payment card.| +» `cvv`|`string`|-|Card verification value. The three or four-digit number on the credit card for security.| +» `cardHolderName`|`string`|-|Name of the payment card holder.| +» `cardHolderAddress`|[`Address`](#schemaaddress)|-|Address of the payment card holder.| +» `virtualCardDeploymentId`|`string`|-|ID for virtual card deployment| +`loyalty`|`object`|-|| +» `programCode`|`string`|-|**Required** Loyalty program code.| +» `accountId`|`string`|-|**Required** Loyalty program ID.| +`checkin`|`string`|`date`|**Required** Check in date as entered by traveler.| +`checkout`|`string`|`date`|**Required** Check out date as entered by traveler.| +`comments`|`string`|-|Comments with special requests or preferences from the user for this booking.| +`customFields`|[`CustomField`](#schemacustomfield)|-|**Required** Vendor specific fields, if set up for vendor integration.| +`searchSessionToken`|[`SearchSessionToken`](#schemasearchsessiontoken)|-|Session token to be generated and provided by server on initial search call. Can be referenced back for future calls in the same session.| +`legalEntity`|[`LegalEntity`](#schemalegalentity)|-|Provides details about the legal entity associated with this booking, if available.| +`threeDSecure`|[`ThreeDSecure`](#schemathreedsecure)|-|3D Secure Strong Customer Authentication payment verification parameters.| +`tripUuid`|`string`|-|**Required** UUID that identifies the trip within the SAP Concur system.| +`gdsRecordLocator`|[`GDSRecordLocator`](#schemagdsrecordlocator)|-|SAP Concur GDS record locator pointing to a PNR to use for this booking, either as an active segment or a passive segment. This will be only populated if using [Single PNR Solution](./v4.single-pnr-solution.html)| +`hrefs`|`object`|-|Map of reference URLs. Each key represents a specific functionality (e.g., `changeNotificationV4`, `authV0`).The base URI varies depending on the datacenter where the service is running.
**Base URI:** `https://{DATACENTER}.api.concursolutions.com` +» `changeNotificationV4`|`string`|`url`|**Required** Callback URL for the Change Notification API. | +» `authV0`|`string`|`url`|**Required** Authentication URL for the booking.| + +## ReservationDetails + +|Name|Type|Format|Description| +|---|---|---|---| +`confirmationCodes`|[`ConfirmationCode`](#schemaconfirmationcode)|-|**Required**| +`status`|[`ReservationStatus`](#schemareservationstatus)|-|**Required** Supported values: `RESERVED`, `CANCELLED`,`PENDING_CONFIRMATION`| +`basicHotelProperty`|[`BasicHotelProperty`](#schemabasichotelproperty)|-|**Required**| +`roomRate`|[`RoomRateDetails`](#schemaroomratedetails)|-|**Required** If status is `CANCELLED`, optional| +`checkin`|`string`|`date`|**Required** Check in date as entered by traveler.| +`checkout`|`string`|`date`|**Required** Check out date as entered by traveler.| +`guests`|[`Guest`](#schemaguest)|-|**Required**| +`roomDescription`|`string`|-|Room description information.| +`comments`|`string`|-| Additional information from the supplier for the traveler (e.g., whether loyalty points are applicable to the booking).| +`isModifiable`|`boolean`|`true` / `false`|Whether or not this reservation can be modified.| +`voucherUrl`|`string`|-|The URL to the voucher for this booking.| +`activeSegmentInConcurPNR`|`boolean`|`true` / `false`|Whether or not this reservation was added to Concur PNR as active segment (true) or not. Required if using [Single PNR Solution](./v4.single-pnr-solution.html)| + +## ConfirmationCode + +|Name|Type|Format|Description| +|---|---|---|---| +`codeType`|[`ConfirmationCodeType`](#schemaconfirmationcodetype)|-|**Required** Confirmation code type that maps to OTA codes for unique ID types. Supported values: `RESERVATION`, `SUPPLIER_CONFIRMATION`, `CANCELLATION`, `HOTEL_CONFIRMATION`, `CONCUR_GDS_REFERENCE`, `PASSIVE_CONFIRMATION`, `PIN`| +`code`|`string`|-|**Required**| + +For details on usage of confirmation codes, please refer to [Confirmation Codes](./v4.getting-started.html#confirmation-codes-) section of the documentation. + +## Guest + +|Name|Type|Format|Description| +|---|---|---|---| +`firstname`|`string`|-|**Required** | +`lastname`|`string`|-|**Required** | +`address`|[`Address`](#schemaaddress)|-|- +`companyName`|`string`|-|| +`contactInfo`|[`ContactInfo`](#schemacontactinfo)|-|| +`birthdate`|`string`|`date`|| + +## ReadCriteria + +|Name|Type|Format|Description| +|---|---|---|---| +`requestorInfo`|[`RequestorInfo`](#schemarequestorinfo)|-|**Required** Information about POS, traveler, and user associated with this request.| +`confirmationCodes`|[`ConfirmationCode`](#schemaconfirmationcode)|-|**Required** | + +## ModifyCriteria + +|Name|Type|Format|Description| +|---|---|---|---| +`reservationCriteria`|[`ReservationCriteria`](#schemareservationcriteria)|-|**Required** | +`confirmationCodes`|[`ConfirmationCode`](#schemaconfirmationcode)|-|**Required** | + +## CancelCriteria + +|Name|Type|Format|Description| +|---|---|---|---| +`requestorInfo`|[`RequestorInfo`](#schemarequestorinfo)|-|**Required** Information about POS, traveler, and user associated with this request.| +`confirmationCodes`|[`ConfirmationCode`](#schemaconfirmationcode)|-|**Required** | + +## CancelDetails + +|Name|Type|Format|Description| +|---|---|---|---| +`confirmationCodes`|[`ConfirmationCode`](#schemaconfirmationcode)|-|**Required** | +`cancellationRemarks`|`string`|-|| + +## ContactInfo + +|Name|Type|Format|Description| +|---|---|---|---| +`phoneNumbers`|`string`|-|**Required** | +`faxNumber`|`string`|-|| +`emails`|`string`|-|**Required** | + +## LeadRate + +The lowest nightly rate averaged over the stay. + +|Name|Type|Format|Description| +|---|---|---|---| +`avgNightlyRate`|[`Price`](#schemaprice)|-|**Required** | +`isTaxAndFeesInclusive`|`boolean`|`true` / `false`|Whether or not tax and fees are included.| + +## TotalPriceHotel + +Details about the total pricing associated with stay. + +|Name|Type|Format|Description| +|---|---|---|---| +`totalOverStay`|[`Price`](#schemaPrice)|-|**Required** | +`isTaxInclusive`|`boolean`|`true` / `false`|Whether or not taxes are included.| +`isFeesInclusive`|`boolean`|`true` / `false`|Whether or not fees are included.| + +## HotelAmenity + +Hotel amenity containing code as described in OTA code list [Hotel Amenity Code](./v4.supported-ota-codes.html#hotel-amenities). + +|Name|Type|Format|Description| +|---|---|---|---| +`amenityCode`|`integer`|`int32`|**Required** | +`cost`|[`Price`](#schemaprice)|-|Cost associated with the amenity.| + +## RoomAmenity + +Room amenity containing code as described in OTA code list [Room Amenity Type](./v4.supported-ota-codes.html#room-amenities). + +|Name|Type|Format|Description| +|---|---|---|---| +`amenityCode`|`integer`|`int32`|**Required** | +`cost`|[`Price`](#schemaprice)|-|Cost associated with the amenity.| + +## Error + +Error with OTA code and description. + +|Name|Type|Format|Description| +|---|---|---|---| +`otaCode`|`integer`|`int32`|Code based on [OTA Error Codes list](./v4.supported-error-codes.html).| +`message`|`string`|-|**Required** | + +## SearchResponse + +|Name|Type|Format|Description| +|---|---|---|---| +`hotelProperties`|[`HotelProperty`](#schemahotelproperty)|-|**Required** Hotel property object returned by hotel search.| +`searchSessionToken`|[`SearchSessionToken`](#schemasearchsessiontoken)|-|Session token to be generated and provided by server on initial search call that can be referenced back for future calls on the same session.| + +## RatesResponse + +|Name|Type|Format|Description| +|---|---|---|---| +`checkin`|`string`|`date`|**Required** Check in date as entered by traveler.| +`checkout`|`string`|`date`|**Required** Check out date as entered by traveler.| +`hotelRates`|[`HotelRates`](#schemahotelrates)|`date`|**Required** | + +## RateDetailsResponse + +|Name|Type|Format|Description| +|---|---|---|---| +`checkin`|`string`|`date`|**Required** Check in date as entered by traveler.| +`checkout`|`string`|`date`|**Required** Check out date as entered by traveler.| +`roomRates`|[`RoomRateDetails`](#schemaroomratedetails)|-|**Required** | + +## HotelDetailsResponse + +|Name|Type|Format|Description| +|---|---|---|---| +`hotelDetailsList`|[`HotelDetails`](#schemahoteldetails)|-|**Required** | + +## Bedding + +Details about bedding associated with the room. + +|Name|Type|Format| Description| +|---|---|---|---| +`quantity`|`integer`|-| **Required** Number of beds.| +`bedTypeCode`|`integer`|`int32`| Code based on [OTA Bed Type (BED) list](./v4.supported-ota-codes.html#bed-types).| + +## Taxes + +Representation of nightly tax amount associated with a rate along with optional breakdown. + +|Name|Type|Format|Description| +|---|---|---|---| +`amount`|`number`|-|**Required** Amount of the taxes.| +`taxBreakdown`|[`FeeTaxType`](#schemafeetaxtype)|-|Fee or tax associated with rate. Can be either included or excluded from total rate as marked with `inclusive` field.| + +## Fees + +Representation of nightly fees associated with a rate for given dates along with optional breakdown. + +|Name|Type|Format|Description| +|---|---|---|---| +`amount`|`number`|-|**Required** Amount of the fees.| +`taxBreakdown`|[`FeeTaxType`](#schemafeetaxtype)|-|Fee or tax associated with rate. Can be either included or excluded from total rate as marked with `inclusive` field.| + +## FeeTaxType + +|Name|Type|Format|Description| +|---|---|---|---| +`amount`|`number`|-|**Required** | +`fttCode`|`integer`|`int32`|**Required** Code based on [OTA's Fee Tax Type (FTT) list](https://www.opentraveldevelopersnetwork.com/code-list).| +`inclusive`|`boolean`|`true` / `false`|**Required** If `true`, this tax/fee is included in `totalAmountAfterTax` amount.| + +## SustainabilityAward + +Award or certification related to sustainability awarded to the hotel. If certification name is not known, it is possible to use `OTHER` as `label` and provide additional `name` attribute. + +|Name|Type|Format|Description| +|---|---|---|---| +`label`|[`SustainabilityProvider`](#schemasustainabilityprovider)|-|**Required** Name or label of the award/certification. Supported values: `GSTC`,`EARTH_CHECK`,`GREEN_GLOBE`,`GREEN_KEY`,`TRAVELIFE`,`GREEN_LEAF`,`LEED`,`GREEN_GROWTH_2050`,`GREEN_SEAL`,`HILTON_LIGHTSTAY`,`IHG_GREEN_ENGAGE`,`NORDIC_SWAN`,`ACTIVITY_GREEN`,`ADVENTURE_GREEN_ALASKA`,`ECO_CERTIFICATION_MALTA`,`GLOBAL_ECOSPHERE_RETREATS`,`GREAT_GREEN_DEAL`,`SEYCHELLES_SUSTAINABLE_TOURISM`,`GREEN_STAY`,`OTHER`| +`level`|`string`|-|Optional level of certification.| +`name` |`string`|-|Name of certification in case when not possible to map to currently supported labels (`OTHER` is used).| + + +## EmissionInfo + +The EmissionInfo provides a way to compare the environmental impact of different hotels. It can be used by travelers to make informed decisions about their hotel stays. + +|Name|Type|Format|Description| +|---|---|---|---| +`emissions`|`number`|-|Represents the total value of emissions produced by the hotel.| +`sustainabilityScore`|`integer`|-|Rates the hotel's overall sustainability efforts. It's on a scale of 0-100.| +`measure` |[`Measure`](#schemameasure)|-|Specifies the type of emissions that are measured. Supported values: `CO2E`, `CO2`| +`unitOfMeasure` |[`UnitOfMeasure`](#schemaunitofmeasure)|-|Specifies the units in which the emissions are measured. Supported values: `TONNES`, `KILOGRAMS`| + +## SafetyScore + +The Safety Score is composed of scores for various safety features of the hotel, such as nighttime safety, physical safes, etc. + +|Name|Type|Format|Description| +|---|---|---|---| +`score`|`number`|-|**Required** Total safety score.| +`detailsUrl`|`string`|-|URL with more details about the safety score.| +`categories`|`array` of [`SafetyScoreCategory`](#schemasafetyscorecategory)|-|**Required** List of safety score categories along with their corresponding score values.| + + +## SafetyScoreCategory + +Safety Score category is used to associate each type of safety score with its corresponding value. + +|Name|Type|Format|Description| +|---|---|---|---| +`score`|`number`|-|**Required** Safety score for a specific category.| +`type`|`string`|-|**Required** Identifies safety score category type. Supported values: `NIGHTTIME_SAFETY`,`PHYSICAL_SAFETY`,`BASIC_FREEDOMS`,`WOMENS_SAFETY`,`THEFT`,`HEALTH_AND_MEDICAL`,`LGBTQ_PLUS_SAFETY`.| + +## LegalEntity + +Provides details about the legal entity associated with this booking, if available. + +|Name|Type|Format|Description| +|---|---|---|---| +`name`|`string`|-|**Required** Name of the legal entity.| +`taxId`|`string`|-|**Required** Tax identity of the legal entity.| +`address`|[`Address`](#schemaaddress)|-|Address of legal entity.| + +## ThreeDSecure + +3D Secure strong customer authentication payment verification parameters. + +|Name|Type|Format|Description| +|---|---|---|---| +`avv`|`string`|-|**Required** For 3DS1, this is the `CAVV`. For 3DS2, this is the `AVV`.| +`cavvAlgorithm`|`string`|-|Identifies the algorithm used to generate the CAVV for 3DS1.| +`messageVersion`|`string`|-|**Required** 3D Secure version.| +`transactionId`|`string`|-|Unique transaction identifier assigned by the 3DS Server to identify a single transaction.| +`threeDSServerTransactionId`|`string`|-|For 3DS1, this identifies the `XID`. For 3DS2, this identifies the `dsTransactionId`.| +`eci`|`string`|-|**Required** Electronic Commerce Indicator.| +`exemptionCode`|`string`|-| Identifies SCA exemption type.| + + +## HotelChangeNotificationRQ + +|Name|Type|Format|Description| +|---|---|---|---| +`changeTypeCode`|[`HotelChangeTypeCode`](#schemaHotelChangeTypeCode)|-|**Required**| +`changeId`|`string`|-|**Required** Uniquely identifies this change.| +`changeTimestamp`|`string`|-|**Required** | +`changeSource`|[`HotelChangeSource`](#schemaHotelChangeSource)|-|| +`changeDescription`|`string`|-|Brief description associated with the change.| +`changeReasonCode`|[`HotelChangeReasonCode`](#schemaHotelChangeReasonCode)|-|| +`oldBooking`|[`HotelBooking`](#schemaHotelBooking)|-|Previous state of the booking that is modified (before modification).| +`updatedBookings`|`array` of [`HotelBooking`](#schemaHotelBooking)|-|New state of the bookings that are modified or added (after modification).| + +## HotelChangeNotificationRS + +|Name|Type|Format|Description| +|---|---|---|---| +`correlationId`|`string`|-|Unique SAP Concur system correlation ID for tracing purposes.| +`impactedBookings`|`array` of [`HotelBookingRef`](#schemaHotelBookingRef)|-|List of booking references that are impacted by this change (old and new). Note that this will allow suppliers to get SAP Concur system booking ids of any newly added booking and match to their confirmation number.| + +## HotelChangeTypeCode + +|Name|Type|Format|Description| +|---|---|---|---| +|`HotelChangeTypeCode`|`string`|-|Code describing type of change. Supported values:`UPDATE``ADD`, `UPDATE`, `CANCEL`, `REPLACE`| + +## HotelChangeSource + +|Name|Type|Format|Description| +|---|---|---|---| +|`HotelChangeSource`|`string`|-|Original source of this change. Supported values: `TMC`, `CHSSupplier`, `GDS`, `HOTEL`| + +## HotelChangeReasonCode + +|Name|Type|Format|Description| +|---|---|---|---| +|`HotelChangeReasonCode`|`string`|-|Code specifying reason for the change. Supported values:`AGENT_UPDATED`,`USER_REQUESTED`, `AGENT_UPDATED`, `HOTEL_UPDATED`, `SUPPLIER_UPDATED`| + +## HotelBooking + +|Name|Type|Format|Description| +|---|---|---|---| +`bookingId`|`string`|-|SAP Concur system id of an existing booking that needs to be updated, as obtained during a reservation request using the `bookingUuid`, see [`ReservationCriteria`](#schemareservationcriteria).(Required for `oldBookings`)| +`confirmationCodes`|`array` of [`ConfirmationCode`](#schemaConfirmationCode)|-|**Required**| +`status`|[`ReservationStatus`](#schemaReservationStatus)|-|**Required**| +`basicHotelProperty`|[`BasicHotelProperty`](#schemaBasicHotelProperty)|-|| +`roomRate`|[`RoomRateDetails`](#schemaRoomRateDetails)|-|| +`checkin`|`string`|-|| +`checkout`|`string`|-|| +`guests`|`array` of [`Guest`](#schemaGuest)|-|| +`roomDescription`|`array` of `string`|-|| +`comments`|`array` of `string`|-|Comments about special requests for this booking.| +`isModifiable`|`boolean`|`true` / `false`|**Required** Whether or not this reservation can be modified. + +## HotelBookingRef + +|Name|Type|Format|Description| +|---|---|---|---| +`bookingId`|`string`|-|**Required** SAP Concur system id of booking that is impacted with this change (existing or new).| +`confirmationCodes`|`array` of [`ConfirmationCode`](#schemaConfirmationCode)|-|**Required**| + +## BasicHotelProperty + +|Name|Type|Format|Description| +|---|---|---|---| +`propertyCode`|[`PropertyCode`](#schemaPropertyCode)|-|**Required**| +`chainCode`|`string`|-|Example:`HH`| +`hotelName`|`string`|-|Example: JW Marriott Parq| +`contactInfo`|[`ContactInfo`](#schemaContactInfo)|-|**Required**| +`position`|[`Geolocation`](#schemaGeolocation)|-|| +`address`|[`Address`](#schemaAddress)|-|| +`cityCode`|`string`|-|**Required** IATA 3 char city code for this property (required for adding passive segments).| + +## Geolocation + +|Name|Type|Format|Description| +|---|---|---|---| +`latitude`|`number`|-|**Required**| +`longitude`|`number`|-|**Required**| + +## Address + +|Name|Type|Format|Description| +|---|---|---|---| +`addressLines`|`array`|-|**Required**| +`city`|`string`|-|**Required** City name.| +`state`|`string`|-|Two-character state code.| +`stateName`|`string`|-|Name or code of the State/Province/Administrative region.| +`countryCode`|`string`|-|**Required** Two-character ISO code (ISO ALPHA-2) for country.| +`postalCode`|`string`|-|| + +## TotalPrice + +|Name|Type|Format|Description| +|---|---|---|---| +`isTotalBeforeTaxDisplayEligible`|`boolean`|`true` / `false`|Controls what value is shown on property details page for rates. Displays `totalBeforeTax` if set to true otherwise display `totalAftertax`.| +`totalBeforeTax`|`number`|-|**Required**| +`taxes`|`number`|-|| +`fees`|`number`|-|| +`totalAfterTax`|`number`|-|**Required**| +`currencyCode`|[`CurrencyCode`](#schemacurrencycode)|`ISO 4217`|**Required**| + +## Price + +|Name|Type|Format|Description| +|---|---|---|---| +`amount`|`number`|-|**Required**| +`currencyCode`|[`CurrencyCode`](#schemacurrencycode)|`ISO 4217`|**Required** Currency code.| + +## CancelPenalties + +|Name|Type|Format|Description| +|---|---|---|---| +`penaltyDescription`|`string`|-|Penalty information applicable to all the penalties.| +`penalties`|`array`|-|**Required** Cancel penalties associated with the rate.| + +## RoomRateDetails + +|Name|Type|Format|Description| +|---|---|---|---| +`rateDescription`|`array`|-|| +`rateCategory`|[`RateCategory`](#schemaratecategory)|-|| +`rateDetailsCallRequired`|`boolean`|`true` / `false`|If `true`, this rate requires a call to RateDetails before being booked.| +`rateChangesOverStay`|`boolean`|`true` / `false`|| +`roomId`|`string`|-|| +`ratePlanId`|`string`|-|| +`guarantee`|[`Guarantee`](#schemaguarantee)|-|**Required**| +`prepayRequired`|`boolean`|`true` / `false`|Whether or not prepayment is required for booking this rate.| +`refundable`|`boolean`|`true` / `false`|Is this rate refundable or not (based on all cancel penalties).| +`totalPrice`|[`TotalPrice`](#schematotalprice)|-|**Required**| +`nightlyPrices`|`array`|-|**Required**| +`cancelPenalties`|[`CancelPenalties`](#schemacancelpenalties)|-|| + +## NightlyPrice + +|Name|Type|Format|Description| +|---|---|---|---| +`basePrice`|`number`|-|**Required**| +`taxes`|[`Taxes`](#schemataxes)|-|| +`fees`|[`Fees`](#schemafees)|-|| +`totalPrice`|`number`|-|**Required**| +`startDate`|`string`|`date`|| +`endDate`|`string`|`date`|| +`currencyCode`|[`CurrencyCode`](#schemacurrencycode)|`ISO 4217`|**Required**| + +## CurrencyCode + +|Name|Type|Format|Description| +|---|---|---|---| +||`string`|-|ISO 4217 currency code.| + +## CancelPenalty + +|Name|Type|Format|Description| +|---|---|---|---| +`cancelDeadline`|`string`|-|**Required** Date string in the date-time notation as defined by RFC 3339 with or without timezone, section 5.6. If there is no timezone it is assumed to be local timezone of the hotel.| +`description`|`string`|-|| +`refundableStatus`|[`RefundableStatus`](#schemarefundablestatus)|-|**Required**| +`amountPercent`|[`AmountPercent`](#schemaamountpercent)|-|| + +## RefundableStatus + +|Name|Type|Format|Description| +|---|---|---|---| +`RefundableStatus`|`string`|-|Supported values: `UNKNOWN`, `FULLY_REFUNDABLE`, `PARTIALLY_REFUNDABLE`, `NON_REFUNDABLE`| + +## AmountPercent + +|Name|Type|Format|Description| +|---|---|---|---| +`taxInclusive`|`boolean`|`true` / `false`|If `true`, all taxes are included in the returned rate.| +`feesInclusive`|`boolean`|`true` / `false`|If `true`, all fees are included in the returned rate.| +`numberOfNights`|`integer`|-|The number of nights that are to be spent in the property.| +`basisType`|[`AmountPercentBasisType`](#schemaamountpercentbasistype)|-|| +`applyAs`|[`AmountPercentApplyAs`](#schemaamountpercentapplyas)|-|| +`percent`|`number`|-|The percentage used to calculate the amount of the cancel fee.| +`amount`|[`Price`](#schemaprice)|-|| + +## AmountPercentBasisType + +|Name|Type|Format|Description| +|---|---|---|---| +`AmountPercentBasisType`|`string`|-|Supported values: `FULL_STAY`, `NIGHTS`, `FIRST_LAST`| + +## AmountPercentApplyAs + +|Name|Type|Format|Description| +|---|---|---|---| +`AmountPercentApplyAs`|`string`|-|Supported values: `FIRST_NIGHT_DEPOSIT`, `LAST_NIGHT_DEPOSIT`, `FIRST_AND_LAST_NIGHT_DEPOSIT`, `FIRST_NIGHT_PAYMENT`, `LAST_NIGHT_PAYMENT`, `FIRST_AND_LAST_NIGHT_PAYMENT`| + +## RateCategory + +|Name|Type|Format|Description| +|---|---|---|---| +`RateCategory`|`string`|-| Supported values: `AAA`, `CONCIERGE`, `CONVENTION`, `CORPORATE_DISCOUNT`, `GOVERNMENT`, `MILITARY`, `SENIOR`, `TRAVEL_INDUSTRY`, `NEGOTIATED`, `PROMOTIONAL`, `CONSORTIA`, `CONTRACT`, `FEDROOM`| + +## GuaranteeType + +|Name|Type|Format|Description| +|---|---|---|---| +`GuaranteeType`|`string`|-|Supported values: `DEPOSIT_REQUIRED`, `GUARANTEE_REQUIRED`, `NONE`|-| + +## AcceptedPayments + +|Name|Type|Format|Description| +|---|---|---|---| +`AcceptedPayments`|`array`|-|[`PaymentCardType`](#schemapaymentcardtype)| + +## PaymentCardType + +|Name|Type|Format|Description| +|---|---|---|---| +`PaymentCardType`|`string`|-|Supported values: `AMERICAN_AIRLINES`, `ALASKA_BARTER`, `AMEX`, `AWARD_CREDIT`, `CANADIAN`, `CARTE_BLANCHE`, `CHINA_UNION_PAY`, `CONFERMA`, `DELTA`, `DINERS_CLUB`, `DISCOVER`, `ENROUTE`, `EURO_CARD`, `JCB`, `MC`, `NORTHWEST`, `TWA`, `UATP`, `UNITED_TRAVEL`, `UNITED_CREDIT`, `VENDOR_PROVIDED`, `VISA`| + +## PropertyCode + +|Name|Type|Format|Description| +|---|---|---|---| +`PropertyCode`|`string`|-|Example: 'HH498949'| + +## ReservationStatus + +|Name|Type|Format|Description| +|---|---|---|---| +`ReservationStatus`|`string`|-|Supported values" `RESERVED`, `CANCELLED`, `PENDING_CONFIRMATION`| + +## ConfirmationCodeType + +|Name|Type|Format|Description| +|---|---|---|---| +`ConfirmationCodeType`|`string`|-|Confirmation Code Types that maps to OTA codes for Unique Id Types list RESERVATION(Record Locator)=14, SUPPLIER_CONFIRMATION=40, CANCELLATION=50, HOTEL_CONFIRMATION(Property Confirmation No.)=10, CONCUR_GDS_REFERENCE -> Concur Booking Record Locator for Passives. Supported values: `RESERVATION`, `SUPPLIER_CONFIRMATION`, `CANCELLATION`, `HOTEL_CONFIRMATION`, `CONCUR_GDS_REFERENCE`, `PASSIVE_CONFIRMATION`| + +## GDSRecordLocator + +|Name|Type|Format|Description| +|---|---|---|---| +`gdsName`|`string`|-|**Required** Name of the GDS (Global Distribution System) to be used for this booking (active or passive segment). Supported values: `SABRE`, `AMADEUS`, `TRAVELPORT`| +`pcc`|`string`|-|**Required** Pseudo City Code or Office ID (OID) for the GDS account to be used for this booking (active or passive segment).| +`recordLocator`|`string`|-|**Required** Record locator of the PNR where this booking should be created (active or passvie)| diff --git a/src/api-reference/direct-connects/hotel-service-4/v4.schemas.markdown b/src/api-reference/direct-connects/hotel-service-4/v4.schemas.markdown index 91b1e8f079..622b7d4816 100644 --- a/src/api-reference/direct-connects/hotel-service-4/v4.schemas.markdown +++ b/src/api-reference/direct-connects/hotel-service-4/v4.schemas.markdown @@ -906,4 +906,4 @@ Provides details about the legal entity associated with this booking, if availab |---|---|---|---| `gdsName`|`string`|-|**Required** Name of the GDS (Global Distribution System) to be used for this booking (active or passive segment). Supported values: `SABRE`, `AMADEUS`, `TRAVELPORT`| `pcc`|`string`|-|**Required** Pseudo City Code or Office ID (OID) for the GDS account to be used for this booking (active or passive segment).| -`recordLocator`|`string`|-|**Required** Record locator of the PNR where this booking should be created (active or passvie)| +`recordLocator`|`string`|-|**Required** Record locator of the PNR where this booking should be created (active or passvie)| \ No newline at end of file